310 likes | 469 Views
An Introduction to Agent Technologies. Peter Wurman, NCSU Yelena Yesha, UMBC Olga Streltchenko, UMBC. Presentation Overview. Working definition of an agent Agent characteristics and properties Agent societies Examples. Working definition of an agent.
E N D
An Introduction to Agent Technologies Peter Wurman, NCSU Yelena Yesha, UMBC Olga Streltchenko, UMBC
Presentation Overview • Working definition of an agent • Agent characteristics and properties • Agent societies • Examples
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
Agent Program • Inputs = observations • Observations: states of the agent’s domain or environment • Outputs = actions • Actions: Speak, Search, Move, Bid ( o1, o2, … ) ( a1, a2, … ) Agent
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
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.
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.
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.
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.
Example: Trading Agent Market Info User preferences Strategy synthesizer Auction rules Bidding strategy Model of other market participants Bids
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
Reactive Agent • Lookup table maps each observation, or series of observations, to an actionan = f(on), oran = f(o1,…, on) • Fast • Inflexible • Intractable for nontrivial domains
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.
Boundedly Rational Agents • Agent makes optimal decisions given its beliefs, goals, intentions, and the limits of its computational abilities.
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
Learning Agent • Learning task: • Learn w, where sn+1 = w(sn, an) • Types of learning • Supervised • Reinforcement • Unsupervised
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
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”; }
Benefits of Declaritivism • Modularity • Semantics • Inspectability • Learnability • Programmability
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
Agent Societies • Software infrastructure • Social organization
Software Infrastructure • Communication Channels • Common Ontologies • Service agents (i.e. directory agent)
Communication • ACL = agent communication language • Example: KQML • Content messages: tell, query, reply, etc. • Flow control: next, etc. • Generally do not prescribe semantics
Ontologies • Define the semantics of communication • Notoriously difficult • Employee = everyone on payroll • Employee = everyone receiving benefits
Social Organization • Homogeneous or heterogeneous • Self-interest v.s. cooperative • Social control structure • System evaluation
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”
E-commerce example • Trading agents, again • Heterogeneous • Self-interested • Mediated • Game-theoretic evaluations
Legacy System Example User Agent Agent Agent Agent DB1 DB2 DB3
Personal Assistants • Agents that support a user’s task • Example (weak) • Dialogue based • Anthropoid • Cooperative ? • But has no goals of its own
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
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