Agent Communication
Amit K. Chopra and Munindar P. Singh
University of Trento North Carolina State University
May 23, 2012
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 1 / 57
Agent Communication Amit K. Chopra and Munindar P. Singh University - - PowerPoint PPT Presentation
Agent Communication Amit K. Chopra and Munindar P. Singh University of Trento North Carolina State University May 23, 2012 c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 1 / 57 MAS as Distributed Systems
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 1 / 57
◮ Autonomous: independently acting ◮ Heterogeneous: independently designed
◮ Protocols define how the agents ought to communicate with one
◮ A protocol is a modular, potentially reusable specification of the
◮ Defining a protocol helps ensure interoperability, i.e., being able to
◮ Communities of practice define appropriate protocols ◮ RosettaNet: manufacturing ◮ Foreign exchange transactions: TWIST ◮ Health care: HL7 c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 2 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 3 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 4 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 5 / 57
◮ We must design protocols so that they do not over-constrain an
◮ Intelligence is irrelevant in a protocol: must design a protocol whose
◮ Physical distribution is based on considerations such as geographical
◮ Cannot treat two or more agents as a single operating system process,
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 6 / 57
◮ Schemas of the messages exchanged ◮ Legal flows, that is, their ordering and occurrence
◮ Logically, agents interoperate on the basis of meanings of their
◮ Since the meanings determine their social state, i.e., state of their
◮ Becomes the standard to which agents are implemented ◮ Defines the level of heterogeneity: the agents can be heterogeneous
◮ Giving prominence to low-level concerns (such as ordering and
◮ Even though such concerns are appropriate for lower levels of the
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 7 / 57
◮ Specify legal message flows c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 8 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 9 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 10 / 57
◮ Goes beyond traditional logic, which deals with assertions (true or false)
◮ Does not merely report on some privately or publicly known fact ◮ Brings the fact into existence ◮ Assumption: the judge has suitable powers and acts autonomously
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 11 / 57
◮ “the shipment will arrive on Wednesday” maps to ◮ “I inform you that the shipment will arrive on Wednesday”
◮ “send me the goods” maps to ◮ “I request that you send me the goods”
◮ “I’ll pay you $5” maps to ◮ “I promise that I’ll pay you $5” c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 12 / 57
◮ May not control the real world ◮ But controls when it informs, requests, promises, . . .
◮ “I inform that” + “the door is open” ◮ “I request that” + “the door is open” ◮ “I promise that” + “the door is open”
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 13 / 57
◮ KQML, FIPA ACL, and the lesser known languages do so (with small
◮ Give a unique meaning for the types (sometimes only informally)
◮ MAS applications are diverse ◮ The standard, broad-brush meaning is rarely adequate ◮ Developers build in additional layers of meaning but leave it
◮ Define application-specific primitives ◮ Provide suitable meaning based on social state primitives such as
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 14 / 57
◮ Leave open the formulation of the message syntax (good) ◮ Disregard the meanings of the messages (bad)
◮ Finite state machines (procedural) ◮ Petri nets (procedural) ◮ State diagrams or statecharts (procedural) ◮ Pi-calculus (procedural) ◮ Temporal logic (declarative) c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 15 / 57
◮ Formal tools for verification ◮ Natural to implement agents who satisfy protocol requirements ◮ Easy to check compliance
◮ No account of meaning ◮ No application-centric standard of correctness ◮ No support for flexibility based on meanings c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 16 / 57
◮ Decentralized nature agrees with the MAS way of thinking
◮ No encoding of the meaning ◮ Focus on ordering and occurrence ◮ Makes private actions of agents visible ◮ No support for composition of choreographies c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 17 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 18 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 19 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 20 / 57
◮ Clear roles ◮ Decouples agents from one another
◮ FIPA offers a semantics for the message types that we review below c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 21 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 22 / 57
◮ The customer rejects the merchant’s offer ◮ The customer accepts the merchant’s offer, following which the
◮ Syntactic notion of correctness ◮ Omits additional paths (next picture) that are equally reasonable c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 23 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 24 / 57
◮ Complicates the agent implementation ◮ Does not support runtime flexibility ◮ Presupposes an arbitrary selection of paths: which path is reasonable,
◮ For example, those specified using temporal logic c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 25 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 26 / 57
◮ Human-computer interaction ◮ Natural language understanding for helping users
◮ Seek to infer what the user wants ◮ Assume the user wants to be helped
◮ Model the user’s cognitive state ◮ Project a cognitive state to the user c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 27 / 57
◮ Cooperative ◮ Not quite autonomous ◮ Largely homogeneous, although potentially with different reasoning
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 28 / 57
◮ Each agent maintains a knowledge (belief) base or KB ◮ The agents are cooperative, sincere, credulous ◮ Beliefs provide an abstraction over the implementation details of agents
◮ An agent cannot query the knowledge of another ◮ Much less manipulate it
◮ tell: sender takes some beliefs from its KB and tells another; receiver
◮ query: receiver responds with a tell of the query result
◮ KQML doesn’t provide a basis for choosing among the message types ◮ Most times, developers would use tell and encode (in an ad hoc way)
◮ The above led to reduced interoperability because the semantics
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 29 / 57
◮ In terms of the beliefs and intentions of the participants ◮ Including their beliefs and intentions about each other’s beliefs and
◮ That is, incorporating assumptions of sincerity and cooperation c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 30 / 57
◮ Good way to capture stakeholder wishes ◮ High-level way of describing agent reasoning independent of low-level
◮ Internally focused ◮ One designer cannot determine the beliefs or intentions of another
◮ Without making unrealistic assumptions, e.g., one designer controls all
◮ One agent cannot determine another agent’s beliefs or intentions ◮ Without making unrealistic assumptions, e.g., abolishing autonomy and
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 31 / 57
◮ Discussion of multiagent architecture and interoperations ◮ Implementation of powerful systems, such as JADE ◮ Description (though limited in style and scope) of useful interaction
◮ Misguided, cognitive approach to formal semantics ◮ Irrelevant assumptions ◮ Never used (fortunately)
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 32 / 57
◮ High-level abstractions are a positive ◮ Mentalism in the abstractions is a negative
◮ In FIPA, to inform another agent the sender must believe the receiver
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 33 / 57
◮ Creation of the commitments among the participants ◮ Manipulation of commitments ◮ Changes to parts of the state relevant to commitments
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 34 / 57
◮ Active and detached (or unconditional or base) ◮ C(Buyer, Seller, T, pay)
◮ If pay Then Satisfied ◮ If never pay Then Violated
◮ If pay Then Satisfied ◮ If never pay and never goods Then Expired
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 35 / 57
◮ By acting on a commitment explicitly ◮ By bringing about a social fact via Declare that may cause
◮ Raises the challenge of commitment alignment in distributed systems c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 36 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 37 / 57
◮ Support loose coupling among agents ◮ Accommodate the autonomy of each participant c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 38 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 39 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 40 / 57
◮ Not trivial when a protocol involves more than two roles ◮ The protocol must be such that such skeletons are derivable from it
◮ Map each skeleton to a set of incoming and outgoing messages and the
◮ Implement methods to process each incoming message ◮ Send messages allowed by the protocol c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 41 / 57
◮ Define the handlers for any incoming methods c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 42 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 43 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 44 / 57
◮ Not hidden within implementations ◮ Not hidden within offline agreements between designers c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 45 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 46 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 47 / 57
◮ Flips debtor and creditor and antecedent and consequent ◮ Antecedent is stronger than original consequent ◮ Consequent is weaker than original antecedent
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 48 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 49 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 50 / 57
◮ customer, merchant, shipper, and banker
◮ The purchase protocol shown earlier
◮ Compose the Ordering, Payment, and Shipping protocols
◮ Identify the communications among the roles ◮ Messages for ordering items and messages for payment
◮ Offer could create a commitment, as shown earlier ◮ A delivery by the shipper would discharge the merchant’s commitment
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 51 / 57
◮ Operational details interfere with reasoning about meaning
◮ Occurrence of a message: requiring an agent to send a message violates
◮ Nonoccurrence of a message: where it is necessary for integrity, we
◮ Ordering messages for conventions: reasonable and should be encoded
◮ Ordering messages otherwise: almost never useful and merely included
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 52 / 57
◮ Design specification languages that promote the verification of
◮ Develop algorithms by which one or more cooperating agents could
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 53 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 54 / 57
◮ A challenge is to determine sufficient constraints on messages an agent
◮ We can then publish role skeletons along with the protocol specification
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 55 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 56 / 57
c Chopra and Singh (Trento and NCSU) Agent Communication May 23, 2012 57 / 57