1 / 34

Chapter 15: Agents

Chapter 15: Agents. Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005. Highlights of this Chapter. Agents Introduced Agent Descriptions Abstractions for Composition Describing Compositions Service Composition as Planning Rules.

amity
Télécharger la présentation

Chapter 15: Agents

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 15:Agents Service-Oriented Computing: Semantics, Processes, Agents– Munindar P. Singh and Michael N. Huhns, Wiley, 2005

  2. Highlights of this Chapter • Agents Introduced • Agent Descriptions • Abstractions for Composition • Describing Compositions • Service Composition as Planning • Rules Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  3. What is an Agent? Wide range of behavior and functionality in computing • An agent is an active computational entity • With a persistent identity • Can carry out a long-lived conversation • Perceives, reasons about, and initiates activities in its environment • Deals with services • Communicates (with other agents) and changes its behavior based on others • Loosely coupled • Business partners map to agents Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  4. Agents and Multiagent Systems for SOC • Unlike objects, agents • Are proactive and autonomous • Support loose coupling • In addition, agents may • Cooperate or compete • Model users, themselves, and others • Dynamically use and reconcile ontologies Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  5. Modeling Agents: AI Emphasize mental concepts Beliefs: agent’s representation of the world Knowledge: (usually) true beliefs Desires: preferred states of the world Goals: consistent desires Intentions: goals adopted for action Resources allocated Sometimes incorporate persistence Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  6. Modeling Agents: MAS Emphasize interaction (autonomy and communication) • Social: about collections of agents • Organizational: about teams and groups • Legal: about contracts and compliance • Ethical: about right and wrong actions Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  7. Mapping SOC to Agents Agents apply well in an open system • Autonomy  ability to enter into and enact contracts; compliance • How can we check or enforce compliance? • Heterogeneity ontologies • Loose coupling  communication • Trustworthiness  contracts, ethics, learning, incentives • Dynamism  combination of the above Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  8. Two Ways to Apply Agents • As modeling constructs • Standing in for stakeholders • To help capturing their requirements • Especially their goals • As run time constructs • Representing stakeholders • Acting on their behalves • Reflecting a stakeholder’s autonomous decision making to other parties Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  9. Goal Modeling Concepts • Actors: stakeholder or software “system” • Goals • “Hard” by default: required functionality • Soft goals: support partial fulfillment • Decomposition: AND or OR • Beliefs; Plans; Resources • Dependencies between actors • In terms of their goals, plans, or resources • Contributions of any goal or plan to a soft goal • Makes (++); Helps (+); Hurts (-); Breaks (--) Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  10. Simplified Goal Modeling • Identify actors: stakeholders plus one or more “system” actors—both “as is” and “to be” (placeholders) • Elicit goals of each stakeholder actor • Decompose such goals based on domain knowledge • Available services for traditional SOC • Applicable context abstractions (beliefs) for context-aware apps • Beliefs about context abstractions affect choice of goal at run time • Identify contribution links to soft goals • Identify dependencies between actors • Incrementally, assign some goals of system actors • When all stakeholders goals are supported by system actors’ goals, design and implement system actors Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  11. A Reactive AgentThe Sense-Decide-Act Loop Environment e; RuleSet r; while (true) { state = senseEnvironment(e); a = chooseAction(state, r); e.applyAction(a); } Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  12. Economic Rationality • Three elements • A performance measure, e.g., expected utility • An agent’s prior knowledge and perceptions • The available actions • Ideal: for each possible percept sequence, • Acts to maximize its expected utility • On the basis of its knowledge and evidence from the percept sequence Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  13. Logic-Based Agents(Another form of rationality) • An agent is a knowledge-based system • Represents a symbolic model of the world • Declarative (hence, inspectable) • Reasons symbolically via logical deduction • Challenges: • Representing information symbolically • Easier in information environments than in general • Maintaining adequate model of the world Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  14. Cognitive Architecture for an Agent For SOC, sensors and effectors map to services; the communication infrastructure is messaging middleware Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  15. Exercise • Create an instance of the preceding diagram where the two agents are Amazon and a manufacturer • When is it beneficial to employ agents in this setting? • What is an illustration of loose coupling in this setting? Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  16. Sensor input brf beliefs Generate options desires filter intentions action Generic BDI Architecture • Addresses how beliefs, desires and intentions are represented, updated, and acted upon • Somewhat richer than sense-decide-act: decisions directly affect future decisions • Consider goal-oriented requirements engineering Action output Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  17. Architecture of BDI-Based Agent Execution Cycle: the agent • Receive new information • Update beliefs and goals • Reason about actions • Intend an action • Select an intended action • Activate selected intention • Perform an action • Update beliefs, goals, intentions Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  18. Web Ontology Language for Services (OWL-S) An OWL-S service description provides • Declarative ads for properties and capabilities • Used for discovery • Declarative APIs • Used for execution • A declarative description via inputs, outputs, preconditions, effects (IOPE) • Used for composition and interoperation • Extended to IOPR: a result combines an output and associated effects Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  19. OWL-S Service Ontology Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  20. OWL-S Mapped to UDDI Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  21. OWL-S Service Model Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  22. OWL-S Example: Processing Book Orders Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  23. OWL-S IOPEs for Bookstore Example Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  24. Composition as Planning • Represent current and goal states • Represent each service as an action • Based on its IOPE • Represent a composed service as a plan that invokes the constituent services constraining the control and data flow to achieve the goal state Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  25. Rules: Logical Representations • Rules are desirable because they are • Modular: easy to read and maintain • Inspectable: easy to understand • Executable: no further translation needed • Expressive: (commonly) Turing complete and can capture knowledge that would otherwise not be captured declaratively • Compare with relational calculus (classical SQL) or description logics (OWL) • Declarative, although imperfectly so Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  26. Kinds of Rules • ECA or Reaction • On event if condition then perform action • Derivation rules: special case of above • Integrity constraints: derive false if error • Inference rules • If antecedent then consequent • Support multiple computational strategies • Forward chaining; backward chaining Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  27. Applying ECA Rules • Capture protocols, policies, and heuristics as ECA rules • Examples? • Often, combine ECA with inference rules (to check if a condition holds) • Modeling challenge • What is an event? • How to capture composite events by pushing event detection to lower layers Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  28. Example: ECA IF request (?x ?y ?z)  event AND like (?x ?y)  condition THEN do(fulfill(?x ?z))  action • Watch out for relevant events • If one occurs, check condition • If condition holds, perform action Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  29. Example: Inference • Typical syntax indicating forward chaining IF parent(?x ?y) AND parent (?y ?z)  Antecedent THEN grandparent (?x ?z)  Consequent • Typical syntax indicating backward chaining INFER grandparent (?x ?z)  Consequent FROM parent(?x ?y)  Antecedent AND parent (?y ?z) Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  30. Example: Communication IF incoming-message(?x ?y ?z) AND policy(?x ?y ?w) AND policy(?x ?z ?v) THEN send message(?x ?v ?w) AND assert internal-fact(?x ?v ?w) • Here the policy stands for any internal decision making, usually defined as INFER policy(?x ?y ?w) FROM … Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  31. Exercise • State the customer’s rules to capture how it might interact with a merchant in a purchase protocol • RFQ: request for quotes • (Price) quote • Accept or Reject • Goods • Payment • Receipt Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  32. Applying Inference Rules • Capture general requirements • Elaboration tolerance requires defeasibility • Conclusions are not firm in the face of new information • Formulate general rules • Override rules to specialize them as needed • Leads to logical nonmonotonicity • Easy enough operationally but difficult to characterize mathematically • Details get into logic programming with negation Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  33. Free and Bound Variables • General rules involve free variables • For ECA rules: in event and condition • Free variable in action indicates perform action for each binding • For inference rules: in antecedent • Free variable in consequent means assert it for each binding • Therefore, to ensure safety, use only bound variables in action or consequent Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

  34. Chapter 15 Summary • Agents are natural fit with open environments • Agent abstractions support expressing requirements in a natural manner • Agents go beyond objects and procedural programming Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns

More Related