260 likes | 452 Views
Chapter 18: Communication. Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005. Highlights of this Chapter. Agent Communication Languages Communicative Act Theory Semantics Interaction Patterns Contract Net Protocol
E N D
Chapter 18:Communication Service-Oriented Computing: Semantics, Processes, Agents– Munindar P. Singh and Michael N. Huhns, Wiley, 2005
Highlights of this Chapter • Agent Communication Languages • Communicative Act Theory • Semantics • Interaction Patterns • Contract Net Protocol • Business Protocols Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Interaction and Communication • Interactions occur whenever agents share an environment • Resource contention, e.g., bumping into each other • Communications are interactions understood to preserve the participants’ autonomy • Realized by physical actions (e.g., shared memory or messaging middleware) that may not preserve autonomy • Meaning based on shared conventions • Offer loose coupling: essential for services • A message is a unit of communication • A protocol structures communications • What kind of structure is appropriate? Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Syntax, Semantics, Pragmatics • Syntax: structure of a (communication) language • Semantics: meaning based solely on the terms used • Requires a structured vocabulary and a shared framework of knowledge, e.g., an ontology • Pragmatics: meaning based on the context (“here”) • Knowing whom to communicate with and how to find them • Knowing how to initiate and maintain an exchange • Knowing the effect of the communication on the recipient Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
A Classification of Message Classifications • Structure-based (syntactic) • Distinguish messages based on grammatical forms in natural language • Meaning-based (semantic) • Distinguish messages based on a notion of intrinsic meaning • E.g., prohibitive is different from directive, despite syntactic similarity • Use-based (pragmatic) • Distinguish messages based on their functions in specific classes of protocols • E.g., assertion is different from acknowledgment Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Communicative Act Theory Also called speech act theory (though not specific to speech) • Developed for human language • Views communication as action • Contrasts with traditional logic, which is about true or false assertions • Considers three aspects of a message: • Locution, or how it is phrased, e.g., “It is hot here” or “Turn on the air conditioner”: strings or XML documents • Illocution, or how it is meant by the sender or understood by the receiver, e.g., a request to turn on the air conditioner or an assertion about the temperature: message type plus proposition • Perlocution, or how it influences the recipient, e.g., turns on the air conditioner, opens the window, ignores the speaker Illocution is the core aspect Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Applying the Theory • Classifications of illocutions motivate message types, but are typically designed for natural language • Rely on NL syntax, e.g., conflate directives and prohibitives • Address subtleties in natural language understanding: infer agents’ beliefs and intentions to determine which illocution • For networked services and multiagent systems, determining the • Message type is trivial, because it is explicitly encoded • Agents’ beliefs and intentions is impossible, because the internal details of the agents are not known Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
ACL Semantics What does a inform, promise, request, query mean? • Mentalist: a state of solo or mutual beliefs or intentions (under assumption of sincerity) • Inform: speaker believes true • Promise: speaker intends to make true • Request: speaker intends listener to make true • Query: speaker intends listener to inform if true • Public: conventions based on laws and observations • Inform: speaker’s commitment to the veracity of • Promise: speaker’s commitment to bring about Evaluation: For open systems, public semantics is essential because it underlies compliance Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
FIPA FIPA is the Foundation for Intelligent Physical Agents • Incorporated as an IEEE standards body • Specifies standards for heterogeneous, interoperating agent-based systems • Concerned with agency as it relates to • Autonomous behavior • Communication with other agents Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
FIPA StandardsSupport interoperability, but at a low level Ways of interpreting communications in a way that respects their intended meanings • Message types (called communicative acts): inform, request, … • Public ontologies • Transport and infrastructure • Superseded by Web services and messaging standards • Programming model and container • Compatible with containers in application servers Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
FIPA Standards Provide … • An architecture for interoperability • A few fixed primitives (message types) • Formal semantics based on mental notions • A few interaction protocols, but extensible • No formal semantics • Over-specified via low-level details Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Contract Net Protocol An important generic protocol • Manager announces tasks via a (selective) multicast • Agents evaluate the announcement; some bid • Manager awards a contract to a bidder • Manager and contractor communicate privately as necessary Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
RFQ: Task Announcement • Eligibility specification: criteria that an agent must meet to be eligible to submit a bid • Task abstraction: a description of the task to be executed • Bid specification: a description of the expected format of the bid • Expiration time Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Bid and Award Messages • A bid specified the provider’s capabilities • An award consists of a task specification • A complete specification of the task Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Contract Net Evaluated • Applies best when problem has a well-defined hierarchy of tasks • With coarse-grained decomposition • No interference with each other • Yields robustness: failure can be treated as a manifestation of autonomy • Lacks support for specifying service agreements and contracts • Purely operational • Hard-coded into the domain • Combines agent reasoning with interaction Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Commitment Protocols • Protocols expressed in terms of • Participants’ commitments • Actions for performing operations on commitments (to create and manipulate them) • Constraints on the above, e.g., captured in temporal logic • Examples: escrow, payment, RosettaNet (over 100 mostly request-response Partner Interface Processes or PIPs) • Traditionally, specified in operational terms • Can be expressed via commitments Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
NetBill Payment Protocol • Checking compliance is easy but the representation is rigid • Some obvious variations are not allowed by the FSM: • The merchant may initiate the protocol by sending an offer • The customer may send an accept prior to offer • The merchant may send the goods prior to accept • How do we design a new FSM? • Verify it? FSM Representation Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
NetBill using Commitments Meanings: 1. true 2. request 3. offer 4. Cm,cgoods accept promiseReceipt 5. goods Cc,mpaypromiseReceipt 6. goods pay Cm,creceipt 7. goods pay receipt 8. goods promiseReceipt 9. accept Final states: all detached commitments are discharged Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Patterns for Commitment Operations • Ensure that information about commitment operations flows to the right parties • To enable local decisions Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Complying with Commitment Protocols • Compliance means commitments are discharged • Directly or indirectly after delegates and assigns • How can an agent check if others comply with specified protocols? • Agent x has grounds of complaint against agent y if and only if Cy,x(True, p), for some p • Commitment protocols are specified in terms of • Main roles and sphere of commitment • Roles essential for coordination • Domain-specific propositions and actions Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Verifying Compliance • Specification • Execution models based on potential causality • Commitments • Run-time verification (no access to implementations) • Respects heterogeneity • Local verification from observed messages: each party checks the others’ behavior Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Run-Time Compliance Checking • An agent maintains • Pending commitments of which it is debtor or creditor • A local model: the messages sent or received • It uses this local model to verify that each commitment is discharged – or replaced by a commitment that is • Invariant: a creditor of a commitment can determine if it is violated – if the commitment doesn’t refer to a third party’s actions Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Fish-Market Sample Execution Based on a vector clock Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Fish-Market Local Observations The discharge of a commitment must be reachable from its create Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Fish-Market Compliance • Auctioneer can verify if the bidders comply • Sees each message as sender or receiver • An individual bidder cannot verify if the auctioneer complies • Doesn’t see each message • If bidders pool their observations, then they can verify if the auctioneer complies • Asymmetry indicates need for third party Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Chapter 18 Summary • Communication enables loose coupling • Communications are actions – thus outside the purview of traditional logic • Protocols capture important patterns of communications • Business protocols can be understood using commitments • Model message meanings, not just syntax • Check compliance with respect to commitments Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns