340 likes | 581 Views
Topic 5: Communication and Negotiation Protocols. Communication and ACLs direct vs. indirect communication speech act theory ACLs - KQML / FIPA-ACL Negotiation protocols contract-net protocol auction protocols Notation - AUML. Indirect communication information available for all
E N D
Topic 5: Communication and Negotiation Protocols Communication and ACLs direct vs. indirect communication speech act theory ACLs - KQML / FIPA-ACL Negotiation protocols contract-net protocol auction protocols Notation - AUML
Indirect communication • information available for all • no direct communication • simple architecture Message passing • direct exchange • common language • conversation - sequences of messages Agent Agent Blackboard Agent A (Sender) Message Agent B (Receiver) Agent Agent Agent Agent 1. Communication and ACLs • communication • the basis for any interaction • “effected through signals”
Direct communication • message passing • some of the challenges • distributed systems • brokering, naming services, discovery, … • “infrastructure” for sending messages • heterogeneous entities • language, developer, execution environment, … • multi-agent systems objects messages agents speech acts why something different?
an example • MAS with cognitive of practical reasoning agents • focus on mental states • “messages must have a meaning to other agents” • e.g. “agent 1 sends message to agent 2: doSomething(x)” • what does this mean to agent 2 ? how should/could he respond ? • agent 1 asks agent 2 to do x ? – part of negotiation protocol … ? • agent 1 tells agent 2 to do x ? – assuming a commitment … ? • agent 1 relies on the fact that agent 2 will do x ? – part of task allocation … ? • agent 1 will do x ? • does agent 2 think agent 1 is waiting for a reply ? • what is x ? a task ? a question ? the name of an agent ? • does agent 1 asks agent 2 to perform task itself, or just make sure the result is achieved • what must agent 2 do with the result ? • must be semantically clear • heterogeneity, openness, … • consequence • agents must be endowed with capabilities to understand and reason upon the meaning and content of messages”
Agent Communication • ability to exchange information requires 1. ability to “physically” exchange information 2. common understanding 3. common language 4. interaction strategies / protocols
high-level communication low-level communication (tcp-ip, http, smtp, …) Agent Communication • ability to exchange information requires 1. ability to “physically” exchange information 2. common understanding 3. common language 4. interaction strategies / protocols
Agent Communication • ability to exchange information requires 1. ability to “physically” exchange information 2. common understanding • exchanging knowledge requires mutual understanding 2 keys • translation between languages • sharing semantic content - each agent has implicit assumptions on its own semantics - translation must preserve semantics! • to share knowledge, we must have a common semantics • can be shared via “common ontologies” 3. common language 4. interaction strategies / protocols
Agent Communication • ability to exchange information requires 1. ability to “physically” exchange information 2. common understanding 3. common language incorporates two types of languages • content language • communication language Agent Communication Language 4. interaction strategies / protocols
Agent Communication Languages (ACL) Agents are typically defined at a “high” level • an ACL should support intentional communication the intentional descriptions use concepts such as: beliefs, goals, intentions, commitment • the language should not define protocols such as • transport protocols • high level coordination protocols • constraints on valid exchanges
Speech Act Theory • speech act theory views human speech actions (John Austin, 1962) • as in “an attempt to influence …” • three parts of speech • locution physical utterance • illocution the intended meaning • perlocution the action that results from the locution • use performatives to identify illocutionary force example: “Please be quiet!” • locution – the actual performance of the act • illocution – the purpose of the utterance • perlocution – the consequences of the utterance
ACLs: FIPA ACL • Foundation for Intelligent Physical Agents - http://www.fipa.org/ • o 1995 • since 2005: IEEE Computer Society standards organization • “promotes agent-based technology and the interoperability of its standards with other technologies” • standardisation of agent-related issues • FIPA-OS • FIPA infrastructure architecture • ... • FIPA-ACL • similar to KQML • consists of a set of message types and the description of their pragmatics — that is, the effects on the mental attitudes of the sender and receiver agents. • describes every communicative act with both a narrative form and a formal semantics based on modal logic. • separates the outer language (the intended meaning of the message) from the inner language (content language).
inform ( :sender agent1 :receiver hpl-auction-server :content performative (price (bid good02) 150) :in-reply-to round-4 content :reply-with bid04 :language sl :ontology hpl-auction ) comm.information ACL Message
FIPA ACL: semantics in SL“the Semantic Language” • SL (Semantic Language) • can represent propositions, objects, and actions • formal semantics < message ; precondition ; rational effect > • message the content of the message • precondition on the “situation” (mental state) of the sender • rational effect intended effect on mental state of receiver
FIPA - Communicative Acts (1) • inform • the sender informs the receiver that a given proposition is true. • confirm • the sender informs the receiver that a given proposition is true, where the receiver is known to be uncertain about the proposition. • disconfirm • the sender informs the receiver that a given proposition is false, where the receiver is known to believe, or believe it likely that, the proposition is true. • failure • the action of telling another agent that an action was attempted but the attempt failed • accept-proposal • the action of accepting a previously submitted proposal to perform an action • agree • the action of agreeing to perform some action, possibly in the future • cancel • the action of cancelling some previously request'ed action which has temporal extent (i.e. is not instantaneous) • cfp • the action of calling for proposals to perform a given action.
FIPA - Communicative Acts (2) • inform-if • a macro action for the agent of the action to inform the recipient whether or not a proposition is true. • inform-ref • a macro action for sender to inform the receiver that an object corresponds to a definite descriptor (e.g. a name). • not-understood • the sender of the act (e.g. i) informs the receiver (e.g. j) that it perceived that j performed some action, but that i did not understand what j just did. • propose • the action of submitting a proposal to perform a certain action, given certain preconditions. • query-if • the action of asking another agent whether or not a given proposition is true. • query-ref • the action of asking another agent for the object referred to by an expression. • refuse • the action of refusing to perform a given action, and explaining the reason for the refusal.
FIPA - Communicative Acts (3) • reject-proposal • the action of rejecting a proposal to perform some action during a negotiation. • request • the sender requests the receiver to perform some action. One important class of uses of the request act is to request the receiver to perform another communicative act. • request-when • the sender wants the receiver to perform some action when some given proposition becomes true. • request-whenever • the sender wants the receiver to perform some action as soon as some proposition becomes true and thereafter each time the proposition becomes true again. • request-whomever • the sender wants an action performed by some agent other than itself. The receiving agent should either perform the action or pass it on to some other agent. • subscribe • the act of requesting a persistent intention to notify the sender of the value of a reference, and to notify again whenever the object identified by the reference changes.
ACLs: KQML • Knowledge Query Manipulation Language (KQML) • KQML has 3 layers • content - ignored by KQML messages • message • determines interaction types • supplies performative & content • may describe ontology, etc. • communication • low level communication parameters • sender, receiver, unique message ID
1. Communication – ACLs2. Negotiation protocols Basic protocols • contract-net protocol • auction protocols
Negotiation protocols /Market-based Mechanisms • … iterative communication among a group of agents in order to reach a mutually accepted agreement on something….. • every day approach in resolving conflicts • needed: • a set of options • a utility function • every option has a price and benefit • this function evaluates the worth of an option to an agent. • a negotiation protocol • multiple stages or steps in the negotiation process • eventually the process must either terminate or converge to a solution
The Contract Net Protocol • introduced by R.G.Smith in 1980 • studied extensively with several variations in subsequent years. • how it works • a manager • breaks the problem into several interacting sub-problems • looks for a contractor • selects the suitable contractor • assigns a sub-problem • monitors the progress of the overall solution • a contractor • ‘bids’ for work • accepts a task • it has a binding agreement to complete the task according to the agreed terms and completes the task undertaken. • recursively, the contractor can be a manager for the task it has undertaken. • Basic assumptions: • the problem has a well defined structure for decomposing • coarse-grain decomposition is possible • there are enough contractors waiting to do the announced tasks
The Contract Net Protocol I have a problem! manager Potential contrators announcement (b) Task Announcement (a) Recognising the problem manager manager Potential contrator Award task bids (c) Bidding (d) Award Contract
The Contract Net Protocol ACL messages
Applicability of Contract Net The Contract Net is • a high-level communication protocol • a way of distributing tasks dynamically • decentralized / situated • a means of self-organization for a group of agents but • limited (mostly for well-defined hierarchies of tasks) • not scalable • re-allocation ?
Auctions • an auction takes place between • an agent known as the auctioneer • a collection of agents known as the bidders • goal: • for the auctioneer to allocate the goodto one of the bidders • typically • the auctioneer desires to maximize the price • bidders desire to minimize price
Auction Parameters • goods can have • private value • public / common value • correlated value • winner determination may be • first price • second price • bids may be • open cry • sealed bid • bidding may be • one shot • ascending • descending
Example Auction protocols • English auction • parameter values • first price • open cry • ascending • Dutch auction • parameter values • open-cry • descending • (first price) • First-Price Sealed-Bid Auctions • parameter values • sealed bid • one-shot auction • first price • …
4. Notation - Agent UML • a proposal for an agent-oriented modeling language • Pros: • Likely standardization on UML 2.0 • Accepted by FIPA • Contras: • UML dialect, not necessarily compatible • AUML • AUML class diagram • AUML interaction diagrams • esp. AUML sequence diagrams http://www.fipa.org/repository/ips.php3
FIPA TC C 2000Specifies 11 Protocol Specifications • http://www.fipa.org/repository/ips.php3 • FIPA Request Interaction Protocol Specification • FIPA Query Interaction Protocol Specification • FIPA Request When Interaction Protocol Specification • FIPA Contract Net Interaction Protocol Specification • FIPA Iterated Contract Net Interaction Protocol Specification • FIPA English Auction Interaction Protocol Specification • FIPA Dutch Auction Interaction Protocol Specification • FIPA Brokering Interaction Protocol Specification • FIPA Recruiting Interaction Protocol Specification • FIPA Subscribe Interaction Protocol Specification • FIPA Propose Interaction Protocol Specification
Summary • communication • indirect (later) vs. direct communication • message-based communication • ACLs --> speech act theory • Negotation protocols • Notation - AUML