An Introduction to Agent Technologies Peter Wurman, NCSU Yelena Yesha, UMBC Olga Streltchenko, UMBC 1 Presentation Overview Working definition of an agent Classification of agents Agent characteristics and properties Agent fundamental theories Knowledge representation Problem solving and decision making Learning Multi-agent communication Agent Building Tools and Platforms IBM’s Aglet Toolkit Case Study Simple Trading Agent Auctionbot --Agent-mediated auction (U of Michigan) Boeing KAoS System 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 Classification of agents classify by mobility: stationary mobile classify by attributes: collaborative agents interface agents learning agents classify by architecture: classify by roles: deliberative match maker reactive information gathering tutorial agents, etc social 4 Characteristics of agents Proactive: goal-oriented Autonomy: bounded rationality Social: communication, cooperation, team/coalition formation Adaptive: learning from environment and other agents Mobility: interoperability, navigation, persistent 5 Agent fundamental theories Knowledge representation Problem solving and decision making Learning Cognitive states and emotion Multi-agent communication, coordination and negotiation Mobility Delegation and trust Security and privacy Mechanism design and agent platform 6 Agent knowledge representation Data structure: databases, lists, queues, trees, graphs Knowledge structure: rules, first order logics and modal logics, frames, scripts, semantic/belief networks, etc. World/Environmental models Models of other agents: who, where, capabilities 7 Agent knowledge representation representing and maintaining belief desire intention goal plan commitment convention representing and maintaining group belief; etc reasoning about other agents beliefs, etc influencing the intentions and beliefs of other agents 8 Belief Desire Intention 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 Agent Learning Personalization/user profile Performance improvement/adaptation Learning environment Learning other agents Learning to communicate and negotiation 10 Agent learning techniques Reinforcement learning Supervised learning Unsupervised learning Bayesian learning Etc. 11 Agent Communication Language Standards of agent communication protocol Low level: WAP (wireless), TPC/IP(internet), XML/HTTP (web) High level: KQML (Knowledge Query Manipulation Language) FIPA--ACL 12 KQML @ UMBC Knowledge Query and Manipulation Language It describes the “speech act” of the message using a set of performatives. Each performative has required and optional arguments. The content language of the message is not part of KQML, but can be specified by KQML performatives. 13 An KQML Example (stream-all :content “(PRICE ?my-profolio ?price)” :receiver stock-server :language LPROLOG :ontology NYSE) The stream-all performative asks a set of answers to be turned into a stream of replies. 14 Categories of Performatives Basic Query: Evaluate, ask-if, ask-about, ask-one, ask-all Multi-response Query: stream-about, stream-all, eos Response: reply, sorry Generic information: tell, achieve, cancel, untell, unachieve 15 Agent Building Tools and Platforms Agent Builders (Reticular Systems) JADE (University of Parma, Italy) Mobile agent platform Aglet (IBM) 16 IBM’s Aglet Toolkit An Applet-like programming model for mobile agents Java (as many mobile agent toolkits are! ) Aglet = Agent + Applet Aglet’s API facilitates mobile technology Aglet: mobile java object that visits aglet enabled hosts in a computer network An Aglet = Instance of a Java class extending the Aglet Class 17 IBM’s Aglet Toolkit An Aglet = Aglet state (values in variables) + Aglet code (class implementation) Autonomous – runs its own thread after arriving at a host Reactive – responds to incoming messages Weak Mobility 18 IBM’s Aglet Mobile Agent System user proxy aglet proxy aglet context proxy aglet context proxy aglet engine host 19 IBM’s Aglet Mobile Agent System System elements: host, engine, context, proxy, aglet Aglet Transfer Protocol e.g. “atp://hostname:port/context/” AgletID: system-given globally unique identifier for life 20 IBM’s Aglet System Proxy: representative of an aglet. Shields and protects an aglet from direct access to its public methods Provides location transparency for the object Context: an aglet’s work place. A server can have several contexts. Message: objects exchanged between aglets Synchronous and Asynchronous messaging (using FUTURE REPLY) 21 Example: Abstract Trading Agent Market Info User preferences Auction rules Model of other market participants Strategy synthesizer Bidding strategy Bids 22 Abstract 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 23 Auctionbot --Agent-mediated auction (U of Michigan) An experimental E-auction server AuctionBot allows setting different types of auction Provides API for users to create their own software agents to autonomously compete in the auction market The user can encode their bidding strategies 24 Auctionbot The AuctionBot’s basic design is shown in Figure 2. The interface consists of two distinct portions- the web interface for humans and the TCP/IP interface for software agents. The right side of the diagram shows the auctioneer processes and scheduler. The interface and the auctioneer programs update information in a common database. 25 AuctionBot Architecture A human user specify a bid via a sequence of Web forms. The final form hands off the data to a bid-submission program which inserts the bid into the database and marks as unprocessed. The bid-submission program then returns to the user a confirmation that the bid has been submitted. The scheduler is a daemon process that continually monitors the database for auctions that have events to process or bids to verify. When it finds such an auction, it forks the appropriate auctioneer program. The auctioneer loads parameters and the set of current bids from the database.The auctioneer validates bids as necessary, and may do one clear and/or one price quote each time it is run. 26 Boeing KAoS System Adaptive Virtual Document Component integration framework Database Component T SGML/XML Component Multimedia Component Agents Object Request Broker CORBA Local and remote databases and services Web and other Internet services Component tools and services Fine-grained 27 data objects Link Servers KAoS Structure and Dynamics Birth Agent Structure Life Update Structure Formulate/Act on Intentions Death • Knowledge • Facts • Beliefs • Desires • Intentions • Capabilities Cryogenic State 28 KAoS Extension and Generic Agent Agent Extension Specific to Particular Agents Shared by All Agents Optional Planner Conversation Support Various Capabilities Transport-Level Communication Security Generic Agent 29 Agent-to-Agent Communication Within an Agent Domain Agent Domain Generic Agent Instance Agent A Agent B Agent-toAgent Protocol Generic Agent Instance 30 Anatomy of a KAoS Domain External Resource Telesthetic Extension Proxy to Another KAoS Domain Mediation Extension GA GA Proxy Extension KAoS Agent Domain Domain Mgr. Extension GA Matchmaker Extension GA GA Ext. from Foreign Domain Adapter GA GA = Generic Agent 31 References Software Agents, Edited by Jeff. Brawdshaw, MIT/AAAI press, 1997. Stuart Russell, Artificial Intelligence: A Mordern Approach, Morgan Kaufmann Publisher, 2001 Readings in Agents, edited by Michael Huhns and Munindar Singh, Morgan Kaufmann Publisher, 1998 http://auction2.eecs.umich.edu/ http://agents.umbc.edu/ 32
© Copyright 2026 Paperzz