Title: Intelligent Agents - Lecture 3
1Intelligent Agents - Lecture 3
- Katia Sycara
- The Robotics Institute
- katia_at_cs.cmu.edu
- www.cs.cmu.edu/softagents
2Course 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)
3Example ProjectsA. 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.
4B. 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)
5Agent Architectures
- Reactive architectures
- Deliberative architectures
- Layered architectures
- Belief, Desire, Intention (BDI)
- Concurrent architecture (RETSINA)
6Concurrent 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
7Example RETSINA Agent Architecture
8Functional 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
9Knowledge Components
- Objective DB holds the agents objectives
- Task DB holds the agents 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
10Architecture 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
11Planning
- 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
12Planning by Reduction
13Task decomposition
14RETSINA Agent Functionality
- Interact with humans and each other
- Anticipate and satisfy human information and
problem solving needs - Acquire and disseminate timely and relevant
information - Provide decision support
- Adapt to user, task and situation
- Integrate information management and decision
support
10
15Multi-Agent Organization
- Centrally designed/closed organization
- Open organization RETSINA
- Flat
- Modular
- Hierarchical
- Heterarchical
- Subsumed/compositional
16RETSINA - 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
17RETSINA 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
18Agent Types
- Interface Agents
- Task Agents
- Information Agents
- Middle Agents
- All share same basic architecture
8
19The 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.
20RETSINA 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
21Locating 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
22Middle 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
23Service Brokering vs. Matchmaking in
Multi-Agent Systems
Request-for-Service
Requester
Broker
Reply-Result-of-Service
Request-for-Service
Provider
Advertise/Unadvertise-Services
Request-for-Service
Requester
Matchmaker
Reply-Provider-Agents-Names
Reply-Result-of-Service
Provider
Advertise/Unadvertise-Services
Request-for-Service
24Locating 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
25Advertisement
- Agent contact information
- Service/capability description
- Ontology
- Service availability
- Cost
- Advertisement
- agents interface to the society
- expresses agent commitment
26Some 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
27Joint Tactical Mission Scenario
28(No Transcript)
29Air-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)
30RETSINA-based solution
To mechanic
Form 202A
Form 202A
Sent by mechanic
Engineer As workstation
Sent to mechanic
Sent by mechanic
Engineer Bs 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 2 Hangar computer
Aircraft-service Air-Force base 1 Hangar computer
Aircraft-service Air-Force base 3 Hangar computer
History agent
History agent
Manuals agent
Manuals agent
History agent
Manuals agent
202 DB
202 DB
202 DB
Manuals
Manuals
Manuals
31(No Transcript)
32Warren
- Agent Collaboration in
- Information Gathering
- Information integration
- Information filtering
- One shot Persistent queries
- Decision Support
- a rapidly changing environment
33Warren (cont)
- Services to user
- Decision support
- Evaluation
- Suggestion
- Intelligent anticipation
- Models suggests based on allocation
- Monitors for news/events
34Warren 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
35(No Transcript)
36(No Transcript)
37Coalitions 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
38The Virtual Market
Monitor
buyer 2
buyer 1
Coalition
Coalition Matcher
buyer 3
Negotiation Matcher
seller 1
seller 2
Catalog
39De-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?
40Open 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
41A 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
42The 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)
43NEO Scenario
- Ambassador, JFC discuss evacuation via RETSINA UI
Messenger (UIM) and OAA MMM - JFCs UIM monitors content, requests relevant
info - WebMate provides text news, Maestro - video
- RETSINA flights agent begins providing schedules
- OAA flights agent takes over when RETSINAs fails
- UIM receives flights schedule and displays
- OAA weather agent begins providing weather
- RETSINA weather agent takes over when OAAs fails
- RETSINA route planner plans evacuation to KWI
44NEO 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
45DemoDisplay Visualization Agent
46NEO 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)
47Scientific 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. Collaborationhuman-human, human-agent, MAS
48Lessons 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
49Characteristics of RETSINA
- Open system / Organization robust adaptive
- Service-based collaboration
- Agents are honest
- Agents passively volunteer
- Matchmaking preserves privacy
50RETSINA - 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