490 likes | 605 Views
Intelligent Agents - Lecture 3. Katia Sycara The Robotics Institute katia@cs.cmu.edu www.cs.cmu.edu/~softagents. Course Policies. The course is based on lectures, lecture notes, and additional materials provided either electronically or in hard copy There will be no exams. Instead:
E N D
Intelligent Agents - Lecture 3 Katia Sycara The Robotics Institute katia@cs.cmu.edu www.cs.cmu.edu/~softagents
Course Policies • The course is based on lectures, lecture notes, and additional materials provided either electronically or in hard copy • There will be no exams. Instead: • Grading will be based on two projects • mid-term project (40%): • a survey on a class-related topic • development of an agent • business case for agent technology in an area • bigger final project (60%)
Example Projects:A. Projects involving programming • Write part of a Retsina information agent. The other, standard parts will be provided.NOTE: requires moderate knowledge and programming experience in PERL, or Webl or JAVA) • Implement agents that participate in an auction (e.g. sealed bid first price auction)NOTE: requires advanced programming skills in JAVA or C++ • Given the Retsina matchmaker code, implement other types of middle agents.NOTE: requires advanced programming skills in JAVA.
B. Example Midterm Projects not involving programming • Comparative review of auctions (pros and cons) • Comparative survey of advanced e-commerce sites (i.e. not just simply listing a product or set of products) • Comparative survey of software tools for building agents, and what is missing. • Value added uses of agents in e-commerce. • Comparative survey of shopbots, issues raised by shopbots. • How would commerce change if everyone had personal agents available? Which types of personal agents would be useful? • Models of marketing on the Web, and use of agents in this endeavor. • Identify and document uses of agent technology in at least 25 top sites. Discuss trends. File sharing programs (e.g. gnutella)
Agent Architectures • Reactive architectures • Deliberative architectures • Layered architectures • Belief, Desire, Intention (BDI) • Concurrent architecture (RETSINA)
Concurrent Architectures(RETSINA: Sycara & al.) • Include multiple functional and knowledge modules that work concurrently • Coherence between the functional modules is achieved via shared databases • Typical functional separation: • communication and collaboration • planning and reasoning • action scheduling • execution and monitoring
Functional Components • Communicator: handles incoming and outgoing messages in an ACL. Converts requests into goals/objectives • Planner: takes objectives and devises detailed plans to achieve them. Creates tasks, actions and new objectives. Uses plan fragments from libraries • Scheduler: schedules actions for execution • Execution monitor: executes actions and monitors • Coordination/collaboration: reasons for such activities, may be internal to planner or to communicator • Self-awareness: maintains self model: load, state, etc
Knowledge Components • Objective DB: holds the agent’s objectives • Task DB: holds the agent’s tasks and actions, before they are scheduled for execution • Schedule: holds scheduled actions • Task reduction library: includes a set of possible task decompositions • Task schema library: includes plan fragments, each provides details on how to perform a task • Beliefs DB: holds the beliefs of the agent regarding information relevant to its activity
Architecture Attributes • Functional components do not directly interface or synchronize with each other • Knowledge components do not directly interface or synchronize with each other • Functional components work concurrently • These provide: • reusability and substitutability of components • efficient utilization of computational resources • timely task performance • reduced development effort
Planning • By incremental instantiation of plan fragments • Conditional planning mechanisms • Interleaving planning, information gathering, and execution • Declarative description of information flow and control flow requirements 11
T Reduce T1 Reduce T2 A T1 T2 T A T2 T1 A1 A2 Planning by Reduction
Multi-Agent Organization • Centrally designed/closed organization • Open organization: RETSINA • Flat • Modular • Hierarchical • Heterarchical • Subsumed/compositional
RETSINA - REusable Task-based System of Intelligent Network Agents • An adaptive, self-organizing collection of autonomous agents that interact with humans and each other: • integrate decision support and information management • anticipate and satisfy human information processing and problem solving needs • perform real-time synchronization of domain activities • notify users and each other about significant changes in the environment • adapt to user, task and situation
RETSINA: System Attributes • A distributed collection of intelligent agents • Agents collaborative and asynchronous • Dynamic, open organization • agents may enter and leave at any time • heterogeneous agent capabilities • alternating user goals and preferences • dynamic information environment
Agent Types: • Interface Agents • Task Agents • Information Agents • Middle Agents • All share same basic architecture 8
User 1 User 2 User u Goal and Task Specifications Results Interface Agent 1 Interface Agent 2 Interface Agent i Tasks Solutions Task Agent 1 Task Agent 2 Task Agent t Info & Service Requests Information Integration Conflict Resolution Replies MiddleAgent 2 Info Agent n Advertisements Info Agent 1 Answers Info Source m Info Source 1 Queries Info Source 2 The RETSINA Multi-Agent Organization distributed adaptive collections of information agents that coordinate to retrieve, filter and fuse information relevant to the user, task and situation, as well as anticipate user's information needs.
RETSINA: Design Goals • The agents and the system should: • gather information from distributed, multi-modal sources, provide decision support • access, filter, integrate info. and make decisions • run across different machines • use models of users, tasks, agents to deal with tasks (decompose, pass, etc) • allow code reusability and modularity • be flexible and robust
Locating Other Agents • Open, dynamic MAS - agents appear and disappear • Agents must be able to locate others • Broadcast on WWW - inappropriate • Solution - middle agents - advertising • Remaining problem - whom to choose to maximize system performance
Middle Agents • Specialize in making connection between agents • Store, maintain and provide connection information • Provide translation and interoperation services • Some middle agent types: • Matchmakers match advertised capabilities • Blackboard agents collect requests • Broker agents process both
Service Brokering vs. Matchmaking in Multi-Agent Systems • Brokering: Request-for-Service Requester Broker Reply-Result-of-Service Request-for-Service Provider Advertise/Unadvertise-Services • Matchmaking: Request-for-Service Requester Matchmaker Reply-Provider-Agents-Names Reply-Result-of-Service Provider Advertise/Unadvertise-Services Request-for-Service
Locating Agents • Agents advertise capabilities to middle agents • Use functionally-specific vocabulary • Agents ask middle agents for services • Middle agents finds providers, notify requesting agents (or broker the service) • Requesting agents contact providers when contact info. is given
Advertisement • Agent contact information • Service/capability description • Ontology • Service availability • Cost • Advertisement • agent’s interface to the society • expresses agent commitment
Some RETSINA Applications • Team aiding in joint tactical planning (using a simulated battlefield) • Agent-aided aircraft maintenance • E-commerce in wholesale markets • Robot teams for de-mining • Team Rescue Scenario (NEO) • Warren system for financial portfolio management
Air-Force Aircraft Maintenance • Aircraft (e.g. F-15) arrive at maintenance airbase • Periodic maintenance must be completed in 60 days (varies for different aircraft types) • Mechanics inspect aircraft. For a discrepancy: • if unknown to mechanic: • consults: experienced mechanics, manuals. • for all discrepancy: • a 202A form is filled (by hand). Sent to expert engineers • reply (202B) includes repair instructions, approval • mechanic repairs and files a report (and the 202)
To mechanic Form 202A Form 202A RETSINA-based solution Sent by mechanic Engineer A’s workstation Sent to mechanic Sent by mechanic Engineer B’s workstation Form 202B Form 202B Form agent Request relevant historical repairs Form agent Request relevant historical repairs Request relevant manual pages Aircraft-service Air-Force base 1 Hangar computer Aircraft-service Air-Force base 2 Hangar computer History agent Manuals agent History agent Manuals agent Aircraft-service Air-Force base 3 Hangar computer History agent Manuals agent 202 DB 202 DB 202 DB Manuals Manuals Manuals
Warren • Agent Collaboration in • Information Gathering • Information integration • Information filtering • One shot & Persistent queries • Decision Support • a rapidly changing environment
Warren (cont) Services to user • Decision support • Evaluation • Suggestion • Intelligent anticipation • Models & suggests based on allocation • Monitors for news/events
Warren Demo • Each user has a portfolio • When user wants to buy (or sell) a stock • Stock price agent is invoked • When a new stock is added to portfolio • Risk allocation critic is invoked • User can • Monitor a stock • Retrieve information about finances of company
Coalitions for E-Commerce • In wholesale markets, purchasing more of the same product reduces price per unit • Sellers benefit from selling more and spending less on marketing/distribution • Buyers usually do not need large quantities • Can form coalitions of buyers, but: • difficult to find other buyers • need agreement on profit and product distribution • Solution is simpler via buyers’ agents: • find others, form coalitions, negotiate with sellers
The Virtual Market Monitor buyer 1 buyer 2 Coalition Coalition Matcher buyer 3 Negotiation Matcher seller 1 seller 2 Catalog
De-mining Teams of Robots • Multiple robots for de-mining: • sophisticated searchers find mines • inexpensive exploders detonate mines • coordinators support team behavior and interaction with human operator • Requires coordination, team behavior • how to form and maintain a team? • when a team member fails, what to do? • how to translate human requests to team activity?
Open MAS Demonstration • A MAS comprised of RETSINA agents, OAA agents and agentified application are presented • We demonstrate: • human/agent, agent/agent interaction • agents collaborate to solve a real-world problem • perform information gathering and filtering • MAS interoperability via middle agents • robustness/fault-tolerance of the system via service/agent substitutability • automation of information-rich and time-critical planning, decision making and execution monitoring
A NEO TIE • Non-combatant Evacuation Operation: • requires information from multiple, multi-modal sources, may change dynamically, be unreliable • requires time-critical (re-) planning under uncertainty • collaboration among distributed humans, machines • plan execution monitoring • Agent Technology Integration Experiment: • demonstrating agent support for NEO activity by • exploiting agent technology for information gathering, user interfacing and collaboration • automating and speeding up critical planning and monitoring • interoperation with legacy components (e.g. air lift planner such as CAMPS) for NEO
The NEO Problem Domain • Location: Kuwait city. Time: 2005 • Iraq not a threat, reduced military presence in mideast • Congress in Kuwait city on ecology & oil conservation • Unrest: • night explosion at the conference center - no casualties • terrorist group issues threat against attendees, American, etc. • US activity: • ambassador orders evacuations (smaller numbers) • Air Mobility Commander plans large evacuation • Joint Force Commander involved (plan, secure evacuation routes)
NEO Scenario • Ambassador, JFC discuss evacuation via RETSINA UI Messenger (UIM) and OAA MMM • JFC’s UIM monitors content, requests relevant info • WebMate provides text news, Maestro - video • RETSINA flights agent begins providing schedules • OAA flights agent takes over when RETSINA’s fails • UIM receives flights’ schedule and displays • OAA weather agent begins providing weather • RETSINA weather agent takes over when OAA’s fails • RETSINA route planner plans evacuation to KWI
NEO Scenario (continued) • OAA phone agent provides info. about roadblocks • Route planner re-plans to KWI airport • AMC rep. uses a UIM to request CAMPS to provide airlift plan from KWI • RETSINA Visual Sensor Agent (VSA) reports an explosion near KWI, displays it on MMM • JFC designates alternative abandoned airfield • Route planner re-plans to new destination • AMC via UIM requests a new plan from CAMPS • CAMPS returns a plan, presented by UIM
NEO TIE: the contribution • The NEO TIE • uses existing agents, MAS, services, legacy systems • makes them inter-operate: resolve conflicts, build interoperability agents • enhance human/MAS collaboration/interfacing • integrate agent and legacy (re-) planning • demonstrate robustness via agent substitutability • The agents in the NEO TIE do not • take the critical decisions (but may advise) • evacuate (but may plan for, monitor and display it)
Scientific and Technical Contribution 1. Coherent communication of meaningful content between two heterogeneous MAS 2. Functional substitutability of agents 3. “Agentification” of legacy systems 4. Adaptation at different levels: interfaces, MAS organization, single agent 5. Collaboration:human-human, human-agent, MAS
Lessons Learned? • Agents and MAS may be a promising technology when: • the amount of information and pace of change are overwhelming • users, information and resources are distributed • expertise and activity are distributed • there is no central control • there is a need for flexibility and robustness in face of uncertainty and partial failures • incorporation of pre-existing systems is advantageous
Characteristics of RETSINA • Open system / Organization robust & adaptive • Service-based collaboration • Agents are honest • Agents “passively” volunteer • Matchmaking preserves privacy
RETSINA - Conclusion • The RETSINA multi-agent approach: • highly dynamic, open, robust • agents actively seek out information • specialized agents collaborate • interleaving planning and execution • reusable infrastructure and architecture • several domain specific implementations