Presentation is loading. Please wait.

Presentation is loading. Please wait.

Service-Oriented Computing: Semantics, Processes, Agents

Similar presentations


Presentation on theme: "Service-Oriented Computing: Semantics, Processes, Agents"— Presentation transcript:

1 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Chapter 18: Communication Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005 © Singh & Huhns

2 Highlights of this Chapter
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Highlights of this Chapter Agent Communication Languages Speech Act Theory Semantics Interaction Patterns Combining ACLs with Web Services Contract Net Protocol Business Protocols Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

3 Interaction and Communication
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Interaction and Communication Interactions occur when agents exist and act in close proximity: resource contention, e.g., bumping into each other Communications are the interactions that preserve autonomy of all participants, but maybe realized through physical actions that don’t: Communications are inevitable when composing services. Communications can be realized in several ways, e.g., through shared memory because of shared conventions by messaging passing Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

4 A Classification of Message Classifications
Service-Oriented Computing: Semantics, Processes, Agents August 2004 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 prohibitive is different from directive, despite syntactic similarity Use-based (pragmatic) distinguish messages based on their roles in specific classes of protocols assertion is different from acknowledgment Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

5 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Speech Act Theory Speech act theory, developed for natural language, views communication as action It considers three aspects of a message: Locution, or how it is phrased, e.g., "It is hot here" or "Turn on the air conditioner" 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 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 Here is an interesting example of speech act theory Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

6 Speech Act Theory Applied
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Speech Act Theory Applied Classifications of illocutions motivate message types, but are typically designed for natural language rely on NL syntax, e.g., they conflate directives and prohibitives Most research in speech act theory is about determining the agents’ beliefs and intentions, e.g., how locutions map to illocutions For Web Services, determining the message type is trivial, because it is explicitly encoded determining the agents’ beliefs and intentions is impossible, because the internal details of the agents are not known Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

7 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 ACL Semantics What is the semantics of queries, requests, promises? Mentalist: each agent has a knowledge base that its messages refer to. An agent promises something if it intended to make that promise Public: semantics depends on laws, protocols, and observable behavior Evaluation: For open systems, public semantics is appropriate, because a semantics without compliance doesn’t make sense Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

8 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Informing How can one agent tell another agent something? Send the information in a message (message passing) Write the information in a location where the other agent is likely to look (shared memory) Show or demonstrate to the other agent (teaching) Insert or program the information directly into the other agent (master --> slave; controller --> controllee; "brain surgery") Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

9 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Querying How can one agent get information from another agent? Ask the other agent a question (message passing) Read a location where the other agent is likely to write something (shared memory) Observe the other agent (learning) Access the information directly from the other agent ("brain surgery") Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

10 Syntax, Semantics, Pragmatics
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Syntax, Semantics, Pragmatics For message passing Syntax: requires a common language to represent information and queries, or languages that are intertranslatable Semantics: requires a structured vocabulary and a shared framework of knowledge-a shared ontology Pragmatics: 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 Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

11 Agent Communication Languages (ACL)
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Agent Communication Languages (ACL) KQML: Knowledge Query and Manipulation Language FIPA ACL ACL ACL Application Program Agent Agent Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

12 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 FIPA FIPA is the Foundation for Intelligent Physical Agents, with website at Specifies standards for heterogeneous, interoperating agent-based systems. Concerned with agency as it relates to Autonomy (goal-driven) Communal integration; mostly communication, but also cooperation. Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

13 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 FIPA (contd.) Mission Statement: The promotion of technologies and interoperability specifications that facilitate the end-to-end interworking of intelligent agent systems in modern commercial and industrial settings. Goal: through a combination of speech acts, predicate logic and public ontologies, FIPA can offer standard ways of interpreting communication between agents in a way that respects the intended meaning of the communication. This is much more ambitious than, for example, XML, which only aims to standardize the syntactic structure of documents. Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

14 Structure of Specifications
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Structure of Specifications Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

15 Agent Message Transport
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Agent Message Transport Agent Message Transport (AMT) defines a message as an envelope plus a body. Together they handle Guidelines for various transport protocols (e.g., IIOP, HTTP, WAP) Message envelope representation (e.g., XML for HTTP, bit-efficient for WAP). FIPA ACL representions (e.g., string encoding, XML encoding, bit-efficient encoding). Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

16 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Interaction Patterns Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

17 Combining Agents with Traditional Web Services
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Combining Agents with Traditional Web Services Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

18 Planning and Control Needed
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Planning and Control Needed How to maintain global coherence without explicit global control? Important aspects include how to Determine shared goals Determine common tasks across services Avoid unnecessary conflicts Pool knowledge and evidence Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

19 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Coordination A property of interaction among a set of agents performing some activity in a shared state. The degree of coordination is the extent to which they Avoid extraneous activity reduce resource contention avoid livelock Avoid deadlock Maintain safety conditions Cooperation is coordination among nonantagonistic agents. Typically, Each agent must maintain a model of the other agents Each agent must develop a model of future interactions Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

20 Goals for Multiagent Control
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Goals for Multiagent Control Develop techniques for Locating and allocating capabilities and resources that are dispersed in the environment Predicting, avoiding, or resolving contentions over capabilities and resources Mediating among more agents, with more heterogeneity and more complex interactions Maintaining stability, coherence, and effectiveness Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

21 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Control Challenges The difficulty of control depends on some major characteristics of the overall system, including: agents comprising the system problems being solved by the agents individually and/or collectively critical solution characteristics Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

22 Control Challenges: Agents
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Control Challenges: Agents Control gets harder as agents become more: numerous complex individually (e.g., more versatile) heterogeneous (in capabilities, representations, languages) quantity complexity heterogeneity Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

23 Control Challenges: Problems
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Control Challenges: Problems Control gets harder as the problems agents solve become more interrelated rapidly changing, or pursued in an uncertain and changing world unforgiving of control failures (e.g., involving irreversible actions) degree of interaction volatility severity of failure Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

24 Control Challenges: Solutions
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Control Challenges: Solutions Control gets harder as solutions to agent problems are required to be more efficient robust to changing circumstances cheaper or faster to develop individually and in concert quality / efficiency robustness low overhead Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

25 Technologies for Agent Control
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Technologies for Agent Control Broker-based Matchmaker-based Market-based; auctions BDI and commitment based Decision theoretic Workflow (procedural) based Standard operating procedures Learning / adaptive Coordinated planning Conventions / protocols Stochastic or physics-based Organizations: teams and coalitions Constraint satisfaction/ optimization Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

26 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Dimensions of Control Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

27 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

28 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

29 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Task Decomposition Divide-and-conquer to reduce complexity: smaller subtasks require less capable agents and fewer resources Task decomposition must consider the resources and capabilities of the agents, and potential conflicts among tasks and agents The designer decides what operators to decompose over The system decides among alternative decompositions, if available Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

30 Task Decomposition Methods
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Task Decomposition Methods Inherent (free!): the representation of the problem contains its decomposition, as in an AND-OR graph Composition designer (human does it): decomposition is programmed during implementation. (There are few principles for automatically decomposing tasks) Hierarchical planning (agents implementing the services do it): decomposition again depends heavily on task and operator representation Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

31 Task Decomposition Examples
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Task Decomposition Examples Spatial decomposition: service is info source or decision point: Functional decomposition: service offers specialized expertise: Agent 1 Agent 3 Agent 2 Pediatrician Neurologist Internist Cardiologist Psychologist Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

32 Task Distribution Criteria
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Task Distribution Criteria Avoid overloading critical resources Engage services on tasks where expertise matches Make an agent with a wide view assign tasks to other agents Assign overlapping responsibilities to agents to achieve coherence Assign highly interdependent tasks to agents in spatial or semantic proximity. This minimizes communication and synchronization costs Reassign tasks if necessary for completing urgent tasks Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

33 Task Distribution Mechanisms
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Task Distribution Mechanisms Market mechanisms: tasks are matched to agents by generalized agreement or mutual selection (analogous to pricing commodities) Contract net: announce, bid, and award cycles Multiagent planning: planning agents have the responsibility for task assignment Organizational structure: agents have fixed responsibilities for particular tasks Recursive allocation: responsible agent may further decompose task and allocate the resultant subtasks Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

34 The Contract Net Protocol
Service-Oriented Computing: Semantics, Processes, Agents August 2004 The Contract Net Protocol 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 agent Manager and contractor communicate privately as necessary Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

35 Task Announcement Message
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Task Announcement Message Eligibility specification: criteria that a node 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 Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

36 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Bid and Award Messages A bid consists of a node abstraction—a brief specification of the agent’s capabilities that are relevant to the task An award consists of a task specification—the complete specification of the task Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

37 Applicability of Contract Net
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Applicability of Contract Net The Contract Net is a high-level communication protocol a way of distributing tasks a means of self-organization for a group of agents Best used when the application has a well-defined hierarchy of tasks the problem has a coarse-grained decomposition the subtasks minimally interact with each other, but cooperate when they do Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

38 JADE Behavior for CNP Initiator Role
Service-Oriented Computing: Semantics, Processes, Agents August 2004 JADE Behavior for CNP Initiator Role Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

39 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 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 request-response PIPs) Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

40 Example: NetBill Protocol
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Example: NetBill Protocol Some variations: 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 These variations are not allowed by the FSM FSM Representation Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

41 NetBill Enhanced by CMs
Service-Oriented Computing: Semantics, Processes, Agents August 2004 NetBill Enhanced by CMs Meanings: 1. true 2. request 3. offer 4. Cmgoods  accept  promiseReceipt 5. goods  Ccpay  promiseReceipt 6. goods  pay  Cmreceipt 7. goods  pay  receipt 8. goods  promiseReceipt 9. accept Final state: No open commitments remain Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

42 Message Patterns for Commitment Operations
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Message Patterns for Commitment Operations Ensure that information about commitment operations flows to the right parties, to enable local decisions Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

43 Compliance with Protocols
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Compliance with Protocols In an open environment, agents are contributed by different vendors and serve different interests How can an application check if the agents comply with specified protocols? Coordination aspects: traditional techniques Commitment aspects: representations of the agents’ commitments in temporal logic Commitment protocols are specified in terms of Main roles and sphere of commitment Roles essential for coordination Domain-specific propositions and actions Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

44 Verifying Compliance with Commitment Protocols
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Verifying Compliance with Commitment Protocols Specification models based on potential causality commitments based on branching-time TL Run-time Verification respects design autonomy uses TL model-checking local verification based on observed messages Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

45 Run-Time Compliance Checking
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Run-Time Compliance Checking An agent can keep track of its pending commitments commitments made by others that are not satisfied It uses this local model to see if a commitment has been violated An agent who benefits from a commitment can always determine if it was violated Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

46 Fish-Market Sample Execution
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Fish-Market Sample Execution Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

47 Fish-Market Local Observations
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Fish-Market Local Observations Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

48 Fish-Market Compliance
Service-Oriented Computing: Semantics, Processes, Agents August 2004 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 Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns

49 Policies and Structure
Service-Oriented Computing: Semantics, Processes, Agents August 2004 Policies and Structure Spheres of commitment (SoComs) abstract specifications of societies made concrete prior to execution Policies apply on performing social actions Policies relate to the nesting of SoComs Role conflicts can occur when agents play multiple roles, e.g., because of nonunique nesting - Munindar Singh and Michael Huhns © Singh & Huhns

50 Service-Oriented Computing: Semantics, Processes, Agents
August 2004 Chapter 18 Summary Chapter 18 Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns © Singh & Huhns


Download ppt "Service-Oriented Computing: Semantics, Processes, Agents"

Similar presentations


Ads by Google