Transcript Agent Tech

An Introduction to Agent
Technologies
Peter Wurman, NCSU
Yelena Yesha, UMBC
Olga Streltchenko, UMBC
1
Presentation Overview
Working definition of an agent
Agent characteristics and properties
Agent societies
Examples
2
Working definition of an
agent
“Agents are active, persistent (software)
components that perceive, reason, act, and
communicate”
Huhns and Singh, 1998
“An agent is an entity whose state is viewed as
consisting of mental components such as
beliefs, capabilities, choices, and commitments.
[sic] In this view, therefore, agenthood is in the
mind of the programmer.”
Shoham, 1993
3
Agent Program
Inputs = observations
Observations: states of the agent’s domain or
environment
Outputs = actions
Actions: Speak, Search, Move, Bid
( o1, o2, … )
( a 1 , a2 , … )
Agent
4
Agents Environments
An agent must have a model of its domain
and a model of other agents that it
communicates with.
Properties of agents’ environment:
Observable
Dynamic
Discrete
5
Basic Characteristics
Delegation abilities: The owner or user of
an agent delegates a task to the agent
and the agent autonomously performs the
task on behalf of the user.
An agent can decompose and/or delegate
the task to other agents;
Once the task is complete the agent may
need to report to the user/agent issuing the
task.
6
Basic Characteristics
(cont’d)
 Agent communication languages and protocols:
information exchange with other agents
establishes a need for expressive communication
and negotiation language.
KQML (Knowledge Query and Manipulation
Language);
Used to allow information agents to assert interests in
information services, advertise their own services, and
explicitly delegate tasks and requests for assistance from
other agents.
Can be used for developing a variety of inter-agent
communication protocols that enable information agents to
collectively cooperate.
7
Basic Characteristics
(cont’d)
Self-representation abilities: the ability to
express business and system aspects of
its functionality, combine them into an
application or implementation.
Self-describing, dynamic reconfigurable
agents;
Facilitate composition (specification and
implementation) of large-scale (distributed)
applications.
8
Agent Mental State (BDI)
Beliefs–knowledge about the world and
the effects the agent’s actions have on the
world.
Desires–preferences over possible states
of the world (goals).
Intentions–internal commitments made to
achieve certain world states.
9
Example: Trading Agent
Market
Info
User preferences
Auction
rules
Model of
other market
participants
Strategy
synthesizer
Bidding
strategy
Bids
10
Example: Trading Agent
Beliefs: auction rules, model of market
Desires: user preferences
Intentions: objects it has decided to
buy/sell
Capabilities: place new bids
Observations: market information
11
Reactive Agent
Lookup table maps each observation, or
series of observations, to an action
an = f(on), or
an = f(o1,…, on)
Fast
Inflexible
Intractable for nontrivial domains
12
Rational Agents
Decision theoretic (economic)
Agent makes optimal decisions given its
beliefs, goals, and intentions.
Logical
Agent makes decisions that are consistent
with its beliefs, goals, and intention.
13
Boundedly Rational Agents
Agent makes optimal decisions given its
beliefs, goals, intentions, and the limits of
its computational abilities.
14
Learning Agent
An agent that updates its beliefs based on
its observations
What can we learn?
Model of the world
New capabilities
Effects of our actions
15
Learning Agent
Learning task:
Learn w, where sn+1 = w(sn, an)
Types of learning
Supervised
Reinforcement
Unsupervised
16
Autonomy
Agent autonomy, with respect to
User = execution autonomy
Other agents = social autonomy
Designer autonomy, with respect to
Communication = interface autonomy
Architecture = design autonomy
Utility function = preference autonomy
17
Belief Representation
Knowledge level
The Wolfline runs from HC to CC
Logical level (declarative)
Connects(Wolfline,HC,CC)
Implementation level (procedural)
public class Bus{
public string start = “HC”;
public string end = “CC”;
}
18
Benefits of Declaritivism
Modularity
Semantics
Inspectability
Learnability
Programmability
19
Other Properties of Agents
Lifespan: transient to long-lived
Modeling: of itself, the world, and other
agents
Mobility: stationary or mobile
Memory: non to perfect recall
20
Agent Societies
Software infrastructure
Social organization
21
Software Infrastructure
Communication Channels
Common Ontologies
Service agents (i.e. directory agent)
22
Communication
ACL = agent communication language
Example: KQML
Content messages: tell, query, reply,
etc.
Flow control: next, etc.
Generally do not prescribe semantics
23
Ontologies
Define the semantics of communication
Notoriously difficult
Employee = everyone on payroll
Employee = everyone receiving benefits
24
Social Organization
Homogeneous or heterogeneous
Self-interest v.s. cooperative
Social control structure
System evaluation
25
Emergent Behavior
Agents act
With limited, local knowledge
In self interest
System behaves
In globally desirable manner
Without central control
Adam Smith’s “invisible hand”
26
E-commerce example
Trading agents, again
Heterogeneous
Self-interested
Mediated
Game-theoretic evaluations
27
Legacy System Example
User
Agent
Agent
DB1
Agent
DB2
Agent
DB3
28
Personal Assistants
Agents that support a user’s task
Example (weak)
Dialogue based
Anthropoid
Cooperative ?
But has no goals of its own
29
Personal Assistants
Example: smart calendar/datebook that
could
Negotiate appointments for me
Actively keep track of my contacts by
searching the web
Learn priorities for my mail
30
Conclusion
Agenthood is a convenient description
Agents are described by beliefs, desires, and
intentions
Agents select actions based on observations
Cooperating agents are a form of distributed
computation
Self-interested agents can generate desirable
emergent behavior
31