300 likes | 439 Views
Chapter 16: Multiagent Systems. Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005. Highlights of this Chapter. Applicability in Service-Based Systems Multiagent Architecture Agent Types Lifecycle Management
E N D
Chapter 16:Multiagent Systems Service-Oriented Computing: Semantics, Processes, Agents– Munindar P. Singh and Michael N. Huhns, Wiley, 2005
Highlights of this Chapter • Applicability in Service-Based Systems • Multiagent Architecture • Agent Types • Lifecycle Management • Consistency Maintenance • Modeling Other Agents • Cognitive Concepts Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Attributes of Multiagent Systems Apply MAS when some of the following features show up in a problem • Decentralization • Complex components, often best described at the knowledge level • Adaptive behavior • Complex interactions • Coordination • Emergent, aggregate behaviors Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Dimensions of MAS: Agent Adaptivity (the ability of an agent to learn): Autonomy: Interactions: Sociability (awareness): Fixed Teachable Autodidactic Controlled Interdependent Independent Simple Complex Autistic Committing Collaborative Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Dimensions of MAS: System Scale (the number of agents): Interactions: Coordination (self interest): Agent Heterogeneity: Communication Paradigm: Individual Committee Society Reactive Planned Competitive Cooperative Benevolent Antagonistic Collaborative Altruistic Identical Unique Point-to-Point Multi-by-name/role Broadcast Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Challenges in Developing MAS • Description, decomposition, and distribution of tasks among agents • Interaction and communication among agents • Distribution of control among agents • Representation of goals, problem-solving states, and other agents • Rationality, consistency maintenance, and reconciliation of conflicts among agents Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Principles of Agent Systems Understand the principles to engineer agent-based systems • System architecture • Low-level interoperation • Information systems • Protocols and compliance • Underlying frameworks and implementations Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
(de facto) Standard Agent Types Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Name Service • A multiagent architecture requires scalable, symbolic name resolution • Alternative naming protocols • FIPA • LDAP • Jini • CORBA Naming Service • JNDI Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Directory Service • Simple yellow-page service; like UDDI • Registered agents advertise their services by providing their name, address, and service description • Agents request recommendations for available services (provided by other registered agents or services) • Passive; doesn’t provide advanced services such as • Brokerage • Recruitment • Mediation Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Agent Framework Services (CoABS) • DARPA CoABS architecture: analogous to service-oriented computing • Suggests that traditionally work on MAS and services has a lot in common • Don’t need duplication: use Web services for low-level work; use agents for high-level aspects Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Brokerage Service Beyond UDDI • Builds on top of a directory service • An agent requests the brokerage service to recruit one or more agents who can provide a service • Brokerage Service uses knowledge about the requirements and capabilities of registered agents to • Determine the appropriate agents to which to forward a request for a service • Negotiates with the agents to determine a suitable, compatible set of service providers • Potentially learn about the properties of the responses • Example: Brokerage agent determines that advertised results from agent X are incomplete and seeks a substitute for X Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
FIPA • FIPA was the Foundation for Intelligent Physical Agents (www.fipa.org) • Now an IEEE standards group • Specifies standards for heterogeneous, interoperating agent-based systems. • Concerned with agency as it relates to • Autonomy (goal-driven) • Communal integration; mostly communication, but also cooperation. Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Agent Management System: 1 Legacy software Other agents Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Agent Management System: 2 Handles the life cycle of agents (creation, registration, location, communication, migration, and retirement). Provides the following services: • White pages, such as agent location, naming and control access services, which are provided by the Agent Management System (AMS). Agent names are represented by a flexible and extensible structure called an agent identifier, which can support social names, transport addresses, name resolution services, … • Yellow pages, such as service location and registration services, which are provided by the Directory Facilitator (DF) • Agent message transport services Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
FIPA-Compliant Agent Frameworks • Some of the popular, FIPA-compliant agent frameworks used for designing multiagent systems: • JADE, http://sharon.cselt.it/projects/jade/ • This is most popular and well-developed of the FIPA frameworks • FIPA-OS, http://fipa-os.sourceforge.net/ • Zeus, http://zeus.enhydra.org/ Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Consistency Maintenance across Services A truth maintenance system (TMS) • Maintains justifications and explains the results of its deductions • Updates KB (knowledge base) incrementally when data are added or removed • Performs a form of propositional deduction TMSs are important because they • deal with atomicity: all required changes are made to the KB before anyone can read it • deal with the frame problem: the parts of the KB that are not affected by a revision are not modified • lead to efficient search: by using justifications to perform dependency-directed backtracking Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
justifications Problem Solver TMS beliefs Architecture of TMS-Based Agent • The problem solver represents domain knowledge in the form of rules, procedures, etc. and chooses what to focus on next • The TMS keeps track of the current state of the search for a solution. It uses constraint satisfaction to maintain consistency in the inferences made by the problem solver Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Knowledge Base Integrity • Stability: believe everything justified validly; disbelieve everything justified invalidly • Well-Foundedness: beliefs are not circular • Logical consistency: logical contradictions do not exist • Completeness: a system will find a consistent state if it exists, or report failure Problems arise when knowledge is distributed Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Degrees of Logical Consistency • Inconsistency: one or more agents are inconsistent • Can’t allow this • Local Consistency: agents are locally consistent • Still too weak • Local-and-Shared Consistency: agents are locally consistent and all agents agree about shared data • What they talk about, which presumably is relevant • Global Consistency: agents are globally consistent • Too strong to be practical: violates autonomy The DTMS maintains local-and-shared consistency and well foundedness Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Distributed TMS • Each agent has a justification-based TMS • Each datum has a status reflected in one of the following labels • IN (valid local justification) • OUT (no valid justification) • EXTERNAL (justification maintained by someone else). A shared datum must be IN to one of the agents that shares it • When a problem solver adds or removes a justification, the DTMS • Unlabels data based on the changed justification • Labels all unlabeled shared data • Chooses labels for remaining unlabeled data; if this fails, it backtracks by unlabeling additional data and iterating Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Cooperative Service: 1 Each agent maintains facts and rules Client f3: afford(xcorp) IN r3: buy(X) :- query(Broker recommend(X)), afford(X) IN ? recommend(?X) Broker f1: afford(xcorp) OUT f2: cash-rich(xcorp) IN r2: recommend(X) :- takeover-bid(X) IN r1: takeover-bid(X) :- cash-rich(X) IN Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Cooperative Service: 2 Client f3: afford(xcorp) IN r3: buy(X) :- query(Broker recommend(X)), afford(X) IN recommend(XCorp) Broker The broker remembers what it said, on what basis, and to whom (see f3) f1: afford(xcorp) OUT f2: cash-rich(xcorp) IN r1: recommend(X) :- takeover-bid(X) IN r2: takeover-bid(X) :- cash-rich(X) IN f3: recommend(xcorp) IN Shared with: Client; Justification: (f2 r1 r2) Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Cooperative Service: 3 Client f3: afford(xcorp) IN r3: buy(X) :- query(Broker recommend(X)), afford(X) IN f4: recommend(xcorp) EXTERNAL Shared with: Broker; Justification: ( ) f5: buy(xcorp) IN Justification: (f3 f4 r3) Broker f1: afford(xcorp) OUT f2: cash-rich(xcorp) IN r1: recommend(X) :- takeover-bid(X) IN r2: takeover-bid(X) :- cash-rich(X) IN f3: recommend(xcorp) IN Shared with: Client; Justification: (f2 r1 r2) Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Cooperative Service: 4 Client f3: afford(xcorp) IN r3: buy(X) :- query(Broker recommend(X)), afford(X) IN f4: recommend(xcorp) EXTERNAL Shared with: Broker; Justification: ( ) f5: buy(xcorp) IN Justification: (f3 f4 r3) Relabel = a correction or a revision relabel recommend(XCorp) Broker f1: afford(xcorp) OUT f2: cash-rich(xcorp) IN --> OUT r1: recommend(X) :- takeover-bid(X) IN r2: takeover-bid(X) :- cash-rich(X) IN f3: recommend(xcorp) IN --> OUT Shared with: Client; Justification: (f2 r1 r2) Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Cooperative Service: 5 Client f3: afford(xcorp) IN r3: buy(X) :- query(Broker recommend(X)), afford(X) IN f4: recommend(xcorp) OUT Shared with: Broker; Justification: ( ) f5: buy(xcorp) OUT Justification: (f3 f4 r3) Broker f1: afford(xcorp) OUT f2: cash-rich(xcorp) OUT r1: recommend(X) :- takeover-bid(X) IN r2: takeover-bid(X) :- cash-rich(X) IN f3: recommend(xcorp) OUT Shared with: Client; Justification: (f2 r1 r2) Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Cognitive Economy • Prefer the simpler (more economical) explanation ("but not too simple" - Einstein) • Essential because agents have limited reasoning capacities • Agents must finitely represent • their environment • themselves and others • themselves and others representing them and others, ad infinitum • Zero-order model: others are similar to oneself • See discussions on Kant’s universalizable principles, under ethics Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
“Practical” Economy • In simple terms, cognitive economy has two consequences on how agents act • Agents should act predictably • Agents should act the way they want others to act • These are examples of universalizable principles as advocated by Kant, and provide a rational basis for ethical and social behavior Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Challenges • Doing the "right" thing • Autonomy • Conventions: emergence and maintenance for social interactions • Coordination • Collaboration • Communication: semantics and pragmatics • Interaction-oriented programming Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Chapter 16 Summary Study multiagent systems because interactions among agents make them interesting • Communication among agents is key, although markets (later chapter) only support implicit communication through prices • Programming environments such as JADE support agent interactions • Consistency maintenance is a major challenge • Agents must model agents; simple techniques are often adequate; more subtle techniques can require extensive reasoning power Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns