270 likes | 453 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 Speech Act Theory Semantics Interaction Patterns Combining ACLs with Web Services
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 • Speech Act Theory • Semantics • Interaction Patterns • Combining ACLs with Web Services • 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 • Communications offer loose coupling: essential for services • A message is a unit of communication 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 Called speech act theory (but 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 • In natural language understanding: determining how locutions map to illocutions (inferring agents’ beliefs and intentions) • For services and agents, 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 knowledge (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 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 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 Standards Ways of interpreting communications in a way that respects their intended meanings • Communicative acts • Public ontologies • Transport and infrastructure • Superseded by Web services and messaging standards • Programming model and container • Compatible with containers in application servers Compared to existing approaches • XML Schema standardizes grammar, not meaning • OWL standardizes ontology description, not communication Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Low-Level Patterns Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Combining Agents with Traditional Web Services ACL is the FIPA ACL standard Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Contract Net Protocol: 1 An important generic protocol • Manager announces tasks via a (possibly selective) multicast • Agents evaluate the announcement; some submit bids • Manager awards a contract to the most appropriate bidder • Manager and contractor communicate privately as necessary Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Contract Net: 2 • Applies best when problem has a well-defined hierarchy of tasks • With coarse-grained decomposition • No interference with each other • Lacks support for specifying service agreements and contracts • Yields robustness: failure can be treated as a manifestation of autonomy 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 brief description of the task to be executed • Bid specification: a description of the expected format of the bid • Expiration time: a statement of the time interval during which the task announcement is valid 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
Commitment Protocols • Protocols enable open systems to be constructed • Interaction 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 (107 mostly request-response Partner Interface Processes or PIPs) 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 start the protocol by sending a quote • The customer may send an accept prior to offer • The merchant may send the goods prior to accept 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,mpay promiseReceipt 6. goods pay Cm,creceipt 7. goods pay receipt 8. goods promiseReceipt 9. accept Final state: No open commitments remain 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 • How can an agent check if others comply with specified protocols? • 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 • Models based on potential causality • Commitments based on branching-time TL • Run-time Verification • Respects design autonomy • Uses TL model-checking • 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 of 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 • An individual bidder cannot verify if the auctioneer complies • 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