240 likes | 261 Vues
Software Agent. Chun Tang chuntang@cse.buffalo.edu. Outline. Software Agents What is a software agent? Attributes/properties Multiagent Systems Homogeneous Non-Communicating MAS Heterogeneous Non-Communicating MAS Heterogeneous Communicating MAS Software Agent Technologies & KQML
E N D
Software Agent • Chun Tang • chuntang@cse.buffalo.edu
Outline • Software Agents • What is a software agent? • Attributes/properties • Multiagent Systems • Homogeneous Non-Communicating MAS • Heterogeneous Non-Communicating MAS • Heterogeneous Communicating MAS • Software Agent Technologies & KQML • Research in E-Commerce
What is an agent? • The American Heritage Dictionary — “an agent is one that acts or has the power or authority to act or represent another” or the “means by which something is done or caused, instrument.” • The AIMA Agent — "An agent is anything that can be viewed as perceiving its environment through sensors and acting upon that environment through effectors." • The SodaBot Agent — "Software agents are programs that engage in dialogs and negotiate and coordinate transfer of information."
What is an agent? • More than 10 different definitions are available at http://www.msci.memphis.edu/~franklin/AgentProg.html • — Workers involved in agent research have offered a variety of definitions, each hoping to explicate his or her use of the word "agent." These definitions range from the simple to the lengthy and demanding...
Attributes/Properties • Reactive(Sensing and acting): responds in a timely fashion to changes in the environment • Autonomous: goal-directedness, pro-active and self-starting behavior • Collaborative: can work in concert with other agentsto achieve a common goal • Knowledge-level communication ability: the ability to communicate with persons and other agents with language more resembling human-like speech acts than typical symbol-level program-to-program protocols
Attributes/Properties • Inferential capability: can act on abstract task specification using prior knowledge of general goals and preferred methods to achieve flexibility; goes beyond the information given, and may have explicit models of self, user, situation, and/or other agents • Temporal continuity: persistence of identity and state over long periods of time • Personality/Character: the capability of manifesting the attributes of a believable character such as emotion • Adaptive/Learning: being able to learn and improve with experience • Mobility: being able to migrate in a self-directed way from one host plat-form to another
Multiagent Systems • Multiagent Systems (MAS) aims to provide both principles for construction of complex systems involving multiple agents and mechanisms for coordination of independent agents' behaviors. • Here we consider an agent to be an entity with goals, actions, and domain knowledge, situated in an environment. The way it acts is called its ``behavior.'’
Homogeneous Non-Communicating MAS • There are several different agents with identical structure (sensors, effectors, domain knowledge, and decision functions), but they have different sensor input and effector output.
Homogeneous Non-Communicating MAS • Reactive agents simply retrieve pre-set behaviors . Deliberative agents behave more like they are thinking, by searching through a space of behaviors, maintaining internal state and predicting the effects of actions. • local views will be be more effective than global perspective , otherwise all agent act the same way • model the internal state of another agent in order to predict its actions • agent alters the environment so as to affect the sensory input of another agent • an agent may try to learn to take actions that will not directly help it in its current situation, but that may allow other similar agents to be more effective in the future.
Heterogeneous Non-Communicating MAS • the agents have different goals, actions, domain knowledge and are situated differently in the environment having different sensory inputs and necessitates their taking different actions.(assumption no communication)
Heterogeneous Non-Communicating MAS An agents is benevolent if they are willing to help each other achieve their respective goals . On the other hand, the agents may be selfish and only consider their own goals when acting. Evolving agents can be useful in dynamic environments, but particularly when using competitive agents, allowing them to evolve can lead to complications. Goals, actions, and domain knowledge of the other heterogeneous agents may also be unknown and thus need modeling.Without communication, agents are forced to model each other strictly through observation. Designers of multiagent systems with limited resources must decide how the agents will share the resources.
Heterogeneous Non-Communicating MAS • Although the current multiagent scenario does not allow for communication, they can somehow reach ``agreements,'' or makecoinciding choices using features that have been seen or used before. • When agents have similar goals, they can be organized into a team. Each agent then plays a separate role within the team. With such a benevolent team of agents, one must provide some method for assigning different agents to different roles.
Heterogeneous Communicating MAS In all communicating multiagent systems, and particularly in domains that include agents built by different designers, there must be some set language and protocol for the agents to use when interacting Consider communication capability as an ``action'' no different from any other. Thus within a planning framework, one can define reconditions and effects for communicative acts. Committing to another agent involves agreeing to pursue a given goal, possibly in a given manner, regardless of how much it serves one's own interests. Commitments can make systems run much more smoothly by providing a way for agents to ``trust'' each other
KQML performatives defined in KQML that allow "speech acts" that agents may use, and which provide the substrate for constructing more complex co-ordination and negotiation strategies
KQML • The KQML language can be viewed as consisting of three layers: the content, message and communication layers, • (tell • : content "cost(bt, service-4, £5677)" • : language standard prolog • : ontology bt-services-domain • : in-reply-to quote service-4 • : receiver customer-2 • : sender bt-customer-services)
Agent as Mediators in Electronic Commerce • CBB(Consumer Buying Behavior) modal • six fundamental stages guiding consumer buying behavior • 1.Need Identification --- awareness of consumer's needs. • 2.Product Brokering --- help determine what to buy, evaluation of product based on consumer's criteria • 3.Merchant Brokering --- determine who buy from , evaluation of Merchant • 4.Negotiation --- how to determine the terms of the transaction (exp. price) • 5.Purchase and Delivery • 6.Product service and Evaluation
Agent as Mediators in Electronic Commerce • Recommender System use content-based filtering , collaborative-based filtering , constrained-based filtering methods • User Interface Approaches deal with all kinds of consumer, need remember consumer’s shopping habits , “trust” issue • Negotiation Mechanism game theory research ; distributive / integrative Negotiation; • Infrastructure, Languages , Protocols XML(extensible markup language ) is a data meta-language allowing for the semantic tagging of data