940 likes | 1.25k Views
Multiagent Systems. Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005. Highlights of this Section. Applicability in Service-Based Systems Multiagent Architecture Agent Types Lifecycle Management Consistency Maintenance
E N D
Multiagent Systems Service-Oriented Computing: Semantics, Processes, Agents– Munindar P. Singh and Michael N. Huhns, Wiley, 2005
Highlights of this Section • 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 • Decentralization: agents are autonomous • Complex constituents (business partners modeled as agents), 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
Basic Problems of MAS • Distribution of control among agents • Description, decomposition, and distribution of tasks among agents • Interaction and communication 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 Multiagent Systems • System architecture • Low-level interoperation • Information systems • Description: ontologies • Engagement: transactions • Protocols and compliance • Frameworks that support the necessary abstractions 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 approaches • FIPA • LDAP • Jini • CORBA Naming Service • JNDI Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Directory Service • Simple yellow-page service • 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) • A simple database-like mechanism that allows agents to • Insert descriptions of the services they offer • Query for services offered by other agents. • 1..n Directory Service Agents on a LAN • Brokerage, recruitment and mediation services are not provided by Directory Service Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Agent Framework Services (CoABS) Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Brokerage Service Beyond UDDI • Cooperates with 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 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 Agent Management System Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Platform Services Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Agent Management System: 2 • Handles the creation, registration, location, communication, migration and retirement of agents. 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, amongst other things • 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
Standard Components of the FIPA Communication Model Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Java Agent Development Framework JADE, the most popular, FIPA-compliant agent framework for multiagent systems: • http://jade.tilab.com/ • The most established of the publicly available agent frameworks • FIPA-OS and Zeus having died Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Consistency Maintenance across Services A truth maintenance system (TMS) supports maintaining consistency • performs a form of propositional deduction • maintains justifications and explains the results of its deductions • updates beliefs incrementally when data are added or removed • uses its justifications to perform dependency-directed backtracking TMSs are important because they • deal with atomicity • deal with the frame problem • lead to efficient search 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: an agent is individually inconsistent • Local Consistency: all agents are individually consistent • Local-and-Shared Consistency: agents are locally consistent and agree about any data they might share • Global Consistency: agents are globally consistent (union of KBs is consistent) 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 can have status OUT, IN (valid local justification), or EXTERNAL. 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 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 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 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 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 • Coordination • Collaboration • Communication: semantics and pragmatics • Interaction-oriented programming Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Section 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 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
Organizations Service-Oriented Computing: Semantics, Processes, Agents– Munindar P. Singh and Michael N. Huhns, Wiley, 2005
Highlights of this Section • Contracts • Spheres of Commitment • Achieving Collaboration via Conventions • Policies • Negotiation Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Why Organizations? Serious applications of services require interactions structured in subtle ways • Organizations consist of agents (business partners) providing or using services • Organizations • Relate well to human organizations • Promote coherence in service interactions • Offer a conceptually natural, high-level basis for understanding and designing service interactions Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Organizations • Organizations are naturally nested (not necessarily as trees) • All organizations are agents • Some agents are organizations • Organizations help overcome the limitations of individuals in • Reasoning • Capabilities • Perception • Lifetime and persistence Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Three Kinds of Organizations • Concrete: organizations consist of agents playing roles • Configured, run-time concept • Abstract (templates): organizations consist of roles and relationships among roles • Design-time concept • Institutions: part abstract and part concrete • Run-time concept, but the membership can change • Example: eBay, where buyers and sellers can change but eBay itself is a fixed participant Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Legal Abstractions • Contracts • Directed obligations • Hohfeldian concepts • Compliance Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Contracts • Much of the law is about the creation and manipulation of contracts among legal entities • People • Corporations • Governmental agencies Key questions: how to create, modify, perform, or monitor contracts Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Motivation for Contracts • Provide a basis for service agreements • Crucial in open environments • Constrain behavior: limit autonomy to some extent • Emphasize behavior: observable by others • Mostly disregard internal implementations, thus facilitating heterogeneity Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Legal Concepts Rich in multiagent concepts • Inherently about interactions among autonomous parties • Directed obligations • One party being obliged to another party • Multiagent flavor • Contrast with traditional deontic logic • Zero-agent: it is obliged that … • One-agent: you are obliged to do … Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Rights • The rights or claims a party has on another party • Not the right (ethical) thing to do • The claims of one party are the duties of another: claim is a correlate of duty Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Hohfeldian Concepts: 1 • The term “right” is used ambiguously • Sixteen concepts distinguish the main situations: • Four main concepts • Their correlates • Their negations • Their negations’ correlates Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Hohfeldian Concepts: 2 • Claim-duty: as above • Privilege-exposure: freedom from the claims of another agent • Power-liability: when an agent can change the claim-duty relationship of another agent • Immunity-disability: freedom from the power of another agent Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Commitments • Commitments are a three-party concept • An agent’s commitment to another agent occurs within a context (usually organizational) • Is unidirectional • Arises within a well-defined scope or context • May be manipulated • Enables coordination through the ordering and occurrence of actions by the agents • Commitments are public (unlike beliefs) • Commitments provide a basis for compliance Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Manipulating Commitments • Operations on commitments: • Create • Discharge (satisfy) • Cancel • Release (eliminate) • Delegate (change debtor) • Assign (change creditor) • Metacommitments constrain the manipulation of commitments Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Commitments for Contracts • A contract is a set of related commitments • Provides context to the commitments • Applies between specified parties, in a context (e.g., UCC, real-estate, Internet commerce) • In contrast to commitments, other approaches: • Single-agent focused, e.g., deontic logic • Don’t handle organizational aspects of contracts • Don’t accommodate manipulation of contracts Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
SoCom: Sphere of Commitment • A computational abstraction based on organizations • An organization that provides the context or scope of commitments • Involves roles (abstract) or agents (concrete) • Serves as a witness for the commitment, i.e., knows that the commitment exists • Serves as a place to test for compliance • Serves as a locus for policies on enforcement and compensation Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
SoComs and Structure • SoCom inherit policies from surrounding (contextual) SoCom • UCC applies to commercial interactions • Inherited policies can conflict because of • Nonunique nesting • When agents play multiple roles - Munindar Singh and Michael Huhns
Virtual Enterprises (VE) A VE offers additional commitments beyond what its members individually offer • Sellers come together with a new proxy agent called VE • Example of VE agent commitments: • Notify on change • Update orders • Guarantee the price • Guarantee delivery date Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
A Selling VE (Composition Example) Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns