1 / 98

Extending UML for Agents and Goals: A Tutorial on Multi-Agent Systems

Extending UML for Agents and Goals: A Tutorial on Multi-Agent Systems Manuel Kolp University of Louvain Why Agent-Oriented Software?

Télécharger la présentation

Extending UML for Agents and Goals: A Tutorial on Multi-Agent Systems

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.


Presentation Transcript

  1. Extending UML for Agents and Goals: A Tutorial on Multi-Agent Systems Manuel Kolp University of Louvain

  2. Why Agent-Oriented Software? • Next generation software engineering will have to support open, dynamic architectures where components can accomplish tasks in a variety of operating environments. • Consider application areas such as eBusiness, application service provision, pervasive or P2P computing. • These all call for software components that find and compose services dynamically, establish/drop partnerships with other components and operate under a broad range of conditions. • Learning, planning, communication and negotiation become essential features for such software components. ...agents! Manuel Kolp

  3. What is an Agent? • A person, an organization, certain kinds of software. • Autonomous, pro-active, goal, knowledge oriented, adaptative • with/in its environment Intelligence • An agent has beliefs, goals (desires), intentions. • Agents are situated, autonomous, flexible, and social. • Human/organizational agents can’t be prescribed, they can only be partiallydescribed. Manuel Kolp

  4. Why Worry About Human/Organizational Agents? • Because their goals lead to software requirements, and these influence the design of a software system. • Note the role of human/organizational agents in OOA, e.g., use cases. • Also note the role of agents in up-and-coming requirements engineering techniques such as KAOS [Dardenne93]. • In KAOS, requirements analysis begins with a set of goals; these are analysed/decomposed to simpler goals which either lead to software requirements, or are delegated to external agents. Manuel Kolp

  5. A Social Computing Paradigm • Software Agent • Implemented with/in software technologies • Environment : humans, machines, other agents, platforms. • To be completely specified during implementation. • Beliefs correspond to (object) state, intentions constitute a run-time concept. For design-time, the interesting new concept agents have that objects don’t have is... ...goals! Multi-agent system: societies of individuals to achieve particular, possible common goals. Manuel Kolp

  6. Agent: Individual Characteristics • Autonomous • Without direct external intervention. • Mobile • To transport itself from one environment to another. • Unpredictable • To act in not predictableways, even if the initial conditions are known • Rugged • To deal with errors and incomplete data robustly. Manuel Kolp

  7. Agent: Social Characteristics • Interactive • To communicate with the environment and other agents. • Adaptive • capable of responding to other agents and/or its environment. • Sociable • To act in as a representative of some entity. • Proactive • goal-oriented, purposeful. Does not simply react to the environment. Manuel Kolp

  8. Agent: Social Characteristics • Coordinative • To perform activities in a shared environment with other agents. • Cooperative • To coordinate with other agents to achieve a common purpose; succeed or fail together. • Competitive • Antisocial Agent : maximizes his absolute profit; eliminates conccurrents at a minimal cost Manuel Kolp

  9. Agent: Rationale Characteristics • Intelligence for Agent • Knowledge (B.R.I.D.G. : beliefs, resources, intentions, desires, goals) • Communicate with symbolic language • The Belief-Desire-Intention (BDI) agent model from philosophy and cognitive science. • An agent has beliefs about the world and desires to satisfy, driving it to form intentions to act. • Mental states of an agent. Manuel Kolp

  10. Agent - Belief, Desire, Intentions Beliefs - database of perceived world knowledge Goals or Desires Execution Engine Intentions -executing plans Pre-compiled plans Inside the BDI Model Human Beliefs - perceived understanding of the world Goals or desires Accumulated behaviours Manuel Kolp

  11. Goal/Desire/Need New Beliefs/Facts Contextual Beliefs Running Plan/Intention Example: Agents at Work Manuel Kolp

  12. Scenario for Office Supplying • A company that needs to order paper supplies enlist agents to monitorthe quantity and usage patterns of paper in thecompany, launching buying agents when supplies arelow. • Buying agents automatically collect informationon vendors and products that may fit the needs of thecompany, evaluate the offerings, make a decisionon which merchants and products to investigate,negotiate the transactions with themerchants,and finally place orders and make automatedpayments. In Pattie Maes, Robert H. Guttman, andAlexandros G. Moukas, Agents that buy and sell, Communications ACM, March 1999/Vol. 42, No. 3 Manuel Kolp

  13. Agents @ Microsoft (.NET project) • Après vingt ans, les ordinateurs personnels ont été rejoints par une myriade d'engins - les ordinateurs de poche, les téléphones portables, les messagers sans fil... - que Microsoft se fait fort d'interconnecter. • L'idée force : ramener cette galaxie de gadgets sous un seul contrôle - celui du consommateur individuel, qui pourra décliner à sa guise ses « rôles » (vie privée, vie professionnelle) en un seul système. Les premiers exemples : passer d'avance sa commande type à sa chaîne de restauration rapide favorite pour éviter la file, conjuguer les fichiers du calendrier personnel et du carnet d'adresses téléphoniques pour faire suivre, selon un ordre de priorité à choisir, certains appels téléphoniques quand on n'est pas à son poste habituel. • Chaque individu contrôlera souverainement l'usage de ses données personnelles, promet Dan'l Lewin(chargé du projet « .NET », la plate-forme d'interconnexion universelle de Microsoft). Le Soir 11/08/2001 and Bill Gates, Keynotes Address, 17th International Joint Conference on Artificial Intelligence August 2001, Seattle, USA Manuel Kolp

  14. Mobile Agent on the Internet Manuel Kolp

  15. User Assistance • The animated help characters in Microsoft Office products. • Use bayesean networks to analyze and predict possible topics that the user may need helpwith. • Bill Gates, Keynotes Address, 17th International Joint Conference on Artificial Intelligence August 2001, Seattle, USA Manuel Kolp

  16. Foreign Exchange Market L'euro a également succombé aux programmes de vente automatiques des institutions financières: les grands acteurs du marché des changes (banques, fonds, etc.) utilisent en effet des programmes dits “agents intelligents” qui déclenchent automatiquement un ordre de vente dans certaines conditions. Il semble que ces programmes se soient déclenchés ce mercredi matin à Londres après que l'euro a touché plusieurs fois le seuil des 88,51 cents , explique un cambiste allemand. • from Le Soir 09/07/2000 Manuel Kolp

  17. Searching the Web : bots, engines, crawler The original Lycos spiders have evolved into a multiagent system of cooperating components that can visit and analyze more than 10,000,000 Web pages each day. • In Richard Green and Sangam Pant,Multiagent Data Collection in Lycos, Communication of the ACM, March 1999/Vol. 42, No. 3 • Alltheweb, Altavista, Yahoo, Hotbot, Google Manuel Kolp

  18. Searching the Web : bots, engines, crawler Manuel Kolp

  19. Technical E-Support Date:  Sat, 17 Feb 2001 23:32:27 -0500 From:  dellmobile@dell.com To:   mkolp@cs.toronto.edu Subject: #3OT##01# Case #: 200121712300 - Monitor #APTX#X-Mailer: Aptex Software SelectResponse X-MIME-Autoconverted: from 8bit to quoted-printable by smtp6.us.dell.com                Thank you for contacting Dell US eSupport Services,This first response to your request will be conducted by an artificial intelligence tool designed to provide you with the fastest possible quality support. If the Automated Response does not answer your question, please look at the bottom of this email for further instructions on how to contact us about this issue. ((SRMACSR video:VideoCards_Mob01042001 SRMACSR))     ((SRCATSR D_M.Bad.Pixel SRCATSR)) --- Dell Automated Technical Assistant response --- Manuel Kolp

  20. Pricebots • Dynamically set prices of products in a dynamic environment • Intention: Maximize long term profit • Desires: Optimize local price • Beliefs: • Competitor prices • Buyer behavior model • Competitor behavior model • Barnesandnoble.com, Chapters.com, Borders.com BDI Model Manuel Kolp

  21. Pricebots Manuel Kolp

  22. Bargain Finders Capture shoppers’ preferences for price and a limited set of products Returns a list of productofferings differentiated by price. Jango.exite.com Manuel Kolp

  23. Recommendations/Notifications (E-mail) Manuel Kolp

  24. E-mail Notifications Match Profile with Catalog to offer personalized experience Predictions on profile & «business intelligence», (data-mining, CRM) OR Match Extract Information from multiple sites about products user wants Key Concepts for E-commerce Agents Customer Agent Business User Profile Catalog Zip, age, gender, purchase history, preferences, interests, needs, … Item 1 Item 2 Item 3 … Profile Manager Manuel Kolp

  25. Other Agents for Organizations Management • Nomadic Computing (SUN, Lotus, Oracle) • Datawarehouse, Data Mining, CRM (Oracle, Informix) • Call Centers, Internet Routing (Bell, AT&T, CISCO, Juniper) • Knowledge Management (Ernst & Young) • Information Management (Digital) • Groupware, Workflow (Lotus, IBM) • Personal schedule management (Qualcomm) • E-trading (Bank of Montreal) • E-Brokering (Amazon, Barnes & Noble, Ebay, Andersen Consulting) • Role and personnel management (PeopleSoft) • Enterprise Resource Planning (Baan) • Peer 2 Peer (Napster, Gnutella Protocols) • … Manuel Kolp

  26. Life Cycle • 1. Early requirements: understanding a problem by studying an organizationalsetting; output : organizational model with relevant actors, their goals and inter-dependencies • 2. Late requirements: system-to-be described within its operationalenvironment, with relevant functions and qualities • 3. Architectural design: global architecture defined in terms of interconnected subsystems • 4. Detailed design: behavior of each architectural component defined in detail • 5. Implementation: system implementation carried out consistently with detailed design Manuel Kolp

  27. The Tropos Project Agent-oriented programming i* TROPOS GAIA KAOS Z AUML UML, Catalysis & Co. !! The GAP !! Detailed design Architectural design Early requirements Late requirements Implementation Manuel Kolp

  28. The TROPOS Ontologies • (Formal) Specification of a conceptualization (= conceptual model) • Social -- the actors, their needs, obligations, capabilities • Intentional -- the relevant goals, how do they interrelate? How are they being met, and by whom? • Communicational -- how the actors dialogue with each other? • Process-oriented -- the relevant business processes • Structural -- the actors structuredwith their inter-relationships Manuel Kolp

  29. Example: A User 2 On-line Buying System • Media taxonomy • on-line catalog • DBMS • E-Shopping Cart • Check In • Buying • Check Out • Search Engine • catalog browser • Keywords • full-text • Billing Processor • $ transactions • orders • Multimedia • description • samples Manuel Kolp

  30. 1. Early Requirements Analysis with TROPOS • Understanding the problem by studying an organizationalsetting; • Organizational model with relevant actors and respective goals. • i*[Yu95] • Running Example: A Business to Consumer System Goals are relative, fulfillment is collaborative !! Manuel Kolp

  31. Insurance Company Maximize profits Insurance Company Customer Settle claim Car repaired Customer happy Manuel Kolp

  32. The Strategic Dependency Model • Focus on social dependencies among actors rather than only actor goals, actions etc. • Actors have goals, need tasks be carried out and resources to be made available; • Dependencies define social & intentional relationships among actors, where one actor depends on another to satisfy a goal or satisfice a softgoal, execute a process or furnish a resource; • Dependencies can be goal dependencies, task dependencies, resource dependencies or soft goal dependencies • Softgoals are distinguished from goals because they do not have a formal definition, and are amenable to a different (more qualitative) kind of analysis (not well-defined). Manuel Kolp

  33. Four Kinds of Social Dependencies … Goal Resource Social Dependency Task Softgoal Manuel Kolp

  34. An Insurance Example Claims payout D Car repaired D D D Premium payment D D Pay repairs Insurance Company D D Repairs covered D Body Shop D Owner D Maximize estimate D D D D Customer happy D D Appraise damages D D Minimize repairs D Continue business D Fair repair appraisal Secure employment D D D Goal Resource Appraiser Task Softgoal Manuel Kolp

  35. Tasks vs Goals • Tasks are processes actors perform to fulfill goals. • In general, there will be many alternative tasks (possibly by different actors) for fulfilling a goal. • When actors are assigned goals, they are (or, ought to be) able to fulfil them by carrying out one or more tasks, and/or through delegation to other actors. • A delegated goal may not be achievable by the dependee actor (who is supposed to achieve it); in this case, the depender actor has to look for an alternative solution. Manuel Kolp

  36. Softgoals • Functional goals, such as “Handle Customers Orders” : well defined goals in the sense that they admit a formal definition. • Not all goals are functional. • “Increase Market Share”, “Happy Customers” or “Easily Adaptable System” : qualities that the software system should adhere to. • Non functional Goals: softgoals, “fuzzy goals” (clouds) with no clearcut criteria for satisfaction; • Hence softgoals are satisficed, not satisfied. • How well the system accomplishes its functions Manuel Kolp

  37. Extending UML using Stereotypes <<softgoal dependency>> Increase Market Share <<resource dependency>> Media Items <<task dependency>> <<i* actor>> Consult Catalogue <<i* actor>> <<i* actor>> <<i* actor>> <<goal dependency>> <<goal dependency>> <<softgoal dependency>> Buy Media Items Continuous Supply Quality Packages Customer Media Shop Media Supplier Media Producer <<softgoal dependency>> <<softgoal dependency>> Happy Customers Long Term Business Manuel Kolp

  38. Formal Analysis and Model-Checking Entity MediaItem Attribute constantitemType : ItemType, price : Amount, InStock : Boolean Dependency BuyMediaItems Type goal Mode achieve Depender Customer Dependee MediaRetailer Attribute constant item : MediaItem Fulfillment condition for depender media : MediaItem(self.item.type  media.type item.price media.price) [the customer expects to get the best price for the type of item] Dependency ContinuousSupply Type goal Mode maintain Depender MediaRetailer Dependee MediaSupplier Attributeconstant item : MediaItem Fulfillment condition for depender buy : BuyItem(JustCreated(buy) buy.item.inStock) [the media retailer expects to get items in stock as soon as someone is interested to buy them] Manuel Kolp

  39. Dynamics Specification ProccheckOutCatalogueConsultation(catalogue) < catalogue : failed(catalogue) closeCatalogue(catalogue) >  ( < cancelConsultation reinitializeCatalogue(catalogue) > || < timeout 90 reinitializeCatalogue(catalogue) > )  < catalogue : InProcessConsultation  StopConsultation  closeCatalogue(catalogue) > EndProc Manuel Kolp

  40. Strategic Rationale Model • Graph with four main types of nodes -- goal, task, resource, and softgoal -- and two main types of links -- means-ends links and process decomposition links. • Describes the criteria in terms of which each actor selects among alternative dependency configurations. • Means-endsrelategoalstotasksthatcansatisfythese goals: “Given goal (end) G, how can Idecomposeit(means) in order to find a way tofulfillit”. • Task decompositionlinks relatetasksto other componenttasks • Tasks can also be decomposed to goals. Manuel Kolp

  41. Functional Alternatives: Insurance Example Claim be settled alternative one alternative three Handle claim centrally Verify policy Body Shop handles claim alternative two Agent handles claim Prepare offer Manuel Kolp

  42. Strategic Rationale Model: Insurance Handle claim Verify policy Claims Handling Settle claim Prepare offer Whose fault? Settlement cost? Insurance Company Determine fault Get accident info Actor boundary Determine cost to settle D D Minimal repairs D Accident info Sufficient treatment D D Injury info D Police D D D D D Appraise damage Doctor Appraiser Witness Manuel Kolp

  43. Rationale View: E-business example Manuel Kolp

  44. 2. Late Requirements (Strategic Relationships) ”Organizational Map” Functions and qualities for the system within its environment

  45. Late Requirements - System Rationale Model ”Rationale Map” Medi@

  46. Goal-Oriented Analysis • Goal-oriented analysis focuses on early requirements analysis phases, when alternatives are being explored and evaluated. • During goal-oriented analysis, we start with initial goals such as “Higher profits”, “Faster time-to-market”, “Schedule meeting”, “Easily maintainable system”, “Good performance” etc. and keep decomposing them until we have reduced them to alternative collections of design decisions each satisfying the initial goals. • Initial goals may be organization oriented; they may also be conflicting, so the analysis must facilitate the discovery of tradeoffs and the search of the full space of alternatives, rather than a subset. Manuel Kolp

  47. The NFR framework : Building Goals Models • To arrive at a morequalitativeframework for modeling goals, we also need to extend the set of relationships between goals beyond means-ends links: • • + (++): one goal contributespositively(very positively) towards the fulfillment of another goal; • • - (--) one goal contributesnegatively(very negatively) towards the fulfillment of another goal; • sub: one goalsubsumesanother, I.e., if the first goal isfulfilled, so is the second; • With these enhancements, we can buildgoal modelswhich might be useful for strategic decisionanalysis Manuel Kolp

  48. … ++ Minimal effort Rapidity of Order - Minimal Interaction + Minimal conflicts - Collection effort + - Matching effort Handle Customer Order Availability - + Collect orders ++ Selected Items By person By system Manually Automatically By phone By Fax With Shopping Cart Have updated invoices Goal Analysis Manuel Kolp

  49. Leaving Goals Dependencies is a Novelty • Goals and Softgoals generally operationalized/metricized during Late Requirements (e.g. KAOS – van Lamsweerde 93) • Ex. : Security operationalized by interfaces which minimize input/output or access restriction to sensitive information. • Steps through which goals are to be fulfilled are frozen in the requirements • Systems fragile and less reusable. • Whenever there is a need for flexibility, reusability, modularity Manuel Kolp

  50. From i* to Agent Concepts

More Related