Title: Intelligent Agents
1Intelligent Agents
- Katia Sycara
- The E-Commerce Institute
- katia_at_cs.cmu.edu
- www.cs.cmu.edu/softagents
- Teaching assistant Joe Giampapa
- garof_at_cs.cmu.edu
2Course Topics
- What are agents?
- What are multi-agent systems?
- Agent design and architecture
- Agents on the Desktop
- Agents in web-based info. management
- Agent interaction
- communication languages
- coordination protocols
- -agent interoperability
3Course Topics (ctd)
- Infrastructure for finding Agent-based Services
- -Agent names servers
- - Middle Agents
- Agents in the marketplace
- -strategic behavior
- -mechanisms, negotiation, markets, auctions
4Course 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)
5Preface
- Agents are found in multiple applications
- information agents collect info. on behalf of
users - financial agents monitor assets, perform
transactions, help users negotiate - shopbots help finding best prices and deals
- recommenders help with selecting
shows/entertainment - multiple agents provide support in time-critical
mission planning - multi-agent systems allow integration of
previously stand-alone legacy applications
6Example Electronic Calendar
7Is Electronic Calendar an Agent?
- It serves a user, it works on its behalf
- It is proactive when a meeting is approaching,
it alerts the user - Is it autonomous? No. Its decisions on actions
are user programmed, it does not reason and plan - To be an intelligent agent, it needs to
- anticipate when the user does not need/want its
action - e.g., lookup vacation file, ask secretary
- communicate with calendars to workout meetings
- adapt to/learn user preferences
8What Promotes Agent Proliferation
- Networked computing
- Distribution of expertise/resources
- Need for inter-operation between pre-existing
isolated systems - Need for personalization and customization
- The Internet
- enormous amount of available information
- multiple service providers
- e-commerce
9What is Still Necessary?
- Support for secure transactions
- Micro-payments
- Standardized communication languages
- Ontologies
- Agreed-upon interaction protocols for trading,
negotiation, etc - For mobility standard agent docking
10But,What are Agents?
- A controversial issue.
- In this course we present several approaches
-
11What is an Agent?
- A computational entity - but any program running
on a machine is, too - Intelligent - how exactly do we measure that?
- is a program that can solve complex equations
intelligent? - is a program that can find a good deal
intelligent? - Autonomous - the most agreed-upon attribute of
agents, but not enough - means decides for itself what it needs to do
- Collaborative - interacts with humans and others
- Adaptive
12Calendar Example
- Your calendar will become an agent when
- it will collaborate with other acquire relevant
information from them, negotiate your meetings
with them, etc - it will learn your preference and adapt to them
e.g., avoid meeting with Joe in the morning - change its action subject to info. on events
e.g., cancel outdoor class on a rainy day - notify you of selected events it finds on bboards
13So, an Agent is
- An autonomous, (preferably) intelligent,
collaborative and adaptive computational entity - Given some objectives/goals, an agent attempts to
achieve them, without explicit instruction - Here, intelligence is expressed in the ability to
infer and execute the needed actions, and seek
and incorporate relevant information, given the
goals
14Agents vs. Objects
- Objects, too, are autonomous computational
entities. What is the difference? - agents are
- usually persistent
- reactive, like objects, but also proactive
- may be self-aware
- have sole control over their actions
- an object
- has no say regarding the use and execution of its
public methods. An agent may refuse or ask for
compensation - is not intelligent
15Agents vs. Expert Systems
- Expert systems, common in the 80s
- provide advice to professionals in information
intensive environments, e.g. - advice for physicians in analyzing symptoms
- advice for car mechanics in repair
- are intelligent, somewhat similar to agents,
but - are reactive and not proactive
- not autonomous - need instructions and
intervention - do not interact with the environment or with
other entities except for the user - usually not adaptive
16Agent Attributes
- Delegation--performs tasks on users behalf
- Communication-- with user or other agents
- Autonomy--operates without direct user
intervention - Monitoring--environment so agent can act
autonomously - Actuation--affecting the environment
- Intelligence--interpret monitored events, reason
17Evolution of Agents
80 Expert Systems intelligence,
expertise, server-like
80-90 Objects some autonomy re-use,
interaction
90 Agents personalization autonomy,
intelligence, expertise, re-use, interaction,
adaptation, persistence, proactivity
Machine learning, human- computer interaction ad
aptation, personalization
Artificial intelligence, software engineering
?
18Generic Agent Model
- Task Level Skills-e.g., information retrieval,
filtering - Knowledge
- (a) a priori--developer, user or system
specified - (b) learned--dialog-based, case-based etc
19Generic Agent Model
- Communication skills
- with user--through interface
- with other agents--through agent communication
languages
20Definition
- An agent is an autonomous computational entity,
which - is reactive and proactive
- is goal driven
- is intelligent
- able to reason, plan and sometimes learn
- has domain specific intelligence
- interacts with humans, other agents, and the
environment via sensors and effectors in a high
level language/protocol - anticipates user needs and reacts based on them
- wish list friendly, understands natural lang.,etc
21End User Taxonomy of Agents
- Environment--e.g. desktop, Internet
- Task-Information gathering, negotiation
- Architecture--learning vs non-learning
22Environment-based taxonomy
- Desktop agents
- operating system agents
- application agents
- application suite agents
- Internet Agents
- search agents
- information agents
- notification agents
23Environment-based taxonomy
- Intranet Agents
- collaborative customization agents/workflow
- business process automation agents
- database agents
24Features, Advantages and Benefits of Agents
25Multi-Agent Systems (MAS)
- An agent is more useful in the context of others
- can concentrate on tasks of its expertise
- can delegate other tasks to other experts
- can take advantage of its ability to
intelligently communicate, coordinate, negotiate - But, a MAS is not just a collection of agents
- it needs meaningful ways for agents to interact
- it needs some system design and performance
evaluation
26Example Calendar
- Multiple calendars interact with each other
- off load scheduling responsibility
- interact with information agents that monitor for
and filter information about events of interest - negotiate with other calendars
27MAS - Two Approaches
1. Centralized design
- Build a system that is comprised of agents -
should provide good performance - Advantages may arise from
- possibility to develop each agent as an expert
- incorporation of non-local expertise
- rather simple to have multiple developers working
concurrently - Example a system within an organization
28MAS - Two Approaches
2. Open MAS
- Usually, the system has no prior static design,
only single agents within - Agents seek others to provide services, without
knowing in advance who they are - There is a need for agent finding mechanism
- Other agent may be non-cooperative or untrusted
or malicious - Example markets, Internet