ics 806-Week 3

download ics 806-Week 3

of 45

Transcript of ics 806-Week 3

  • 8/14/2019 ics 806-Week 3

    1/45

    September 2009 School of Computing andInformatics University of Nairobi

    MSC COMPUTER SCIENCE

    AGENT METHODOLOGIESSession Topics1. Defining Agent Methodology2. Where agent solutions are appropriate3. Why agent oriented approach?4. Features of agent oriented approach5. Australian AI Institute (AAII) Methodology6. Agent Oriented Analysis

    7. Agent Genealogies8. The TROPOS Methodology9. MAS-CommonKADS Methodogy10. The PASSI Methodology11. The PROMETHEUS Methodology

    12. The GAIA Methodology13. The ADELFE Methodology14. The MESSAGE Methodology15. The INGENIAS Methodology16. The Radical Agent Oriented Software Engineering

    17. The Multi-Agent Systems Engineering

  • 8/14/2019 ics 806-Week 3

    2/45

    September 2009 School of Computing andInformatics University of Nairobi

    AGENT METHODOLOGIES

    Source: Brian Henderson-Sellers, Paolo Girogini (2005) (Editors). Agent oriented methodologies. Idea Group Publishing).

    Defining agent methodology ( James J. Odell (2005). Foreword in Brian

    Henderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies.Idea Group Publishing).

    A methodology is a body of methods employed by a discipline.A method is a procedure for attaining something.

    Issues:1. Few agent-based systems developers have a methodology;2. Most agent-based systems developers use an ad hoc approach;

  • 8/14/2019 ics 806-Week 3

    3/45

    September 2009 School of Computing andInformatics University of Nairobi

    ICS 806 - MULTI-AGENT SYSTEMS

    Agent methodologiesCases where agent solution is appropriate:1. Open, dynamic, uncertain or complex environment.

    2. Agents are natural metaphors- such as inorganizations with distributed functions, intelligentinterfaces.

    3. Data, control or expertise is distributed- such asdatabase systems with different autonomousownership.

    4. Legacy systems - where interfaces to old systems

    are important.

  • 8/14/2019 ics 806-Week 3

    4/45

    September 2009 School of Computing andInformatics University of Nairobi

    ICS 806 - MULTI-AGENT SYSTEMS

    Why agent oriented approach? ( FRANCO ZAMBONELLI, ANDREA OMICINI (2004).Challenges and Research Directions in Agent-Oriented Software Engineering, Autonomous Agents and Multi-Agent Sytems , 9, 253283, 2004 , Kluwer Academic Publishers.)

    Limitations of OO modelling approach1. An object, unlike an agent, is neither autonomous nor proactive;

    2. OO-applications do not give explicit model of external environment:since everything is modelled in terms of objects

    3. Object-based computing promotes a perspective on software systemsin which components are functional or service oriented entities.

    4. Object based computing leads to global system architecture that isconceived as a static functional decomposition, where interactionsbetween components/objects are simply an expression of inter-dependencies and where concepts such as society or roles simply donot make any sense.Object-oriented and the agent-oriented perspective on modelling andbuilding a software system are sharply different.Agent-based computing represents a brand new software engineeringparadigm calling for a new discipline of agent-oriented software

    engineering (AOSE for short)

  • 8/14/2019 ics 806-Week 3

    5/45

    September 2009 School of Computing andInformatics University of Nairobi

    ICS 806 - MULTI-AGENT SYSTEMS

    Features of agent methodology (BrianHenderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea GroupPublishing)):

    Provide sufficient abstractions to fully model andsupport agents and MASsarguably;

    Should focus on an organized society of agentsplaying roles within an environment;

    Support MAS, where agents interact according toprotocols determined by the agents roles;

    Should be agent-oriented in that it is geared

    towards the creation of agent-based software

  • 8/14/2019 ics 806-Week 3

    6/45

    September 2009 School of Computing andInformatics University of Nairobi

    An agent methodology: Austrialian AI Institute(AAII) agent development

    methodology

    Internal and external models are used. External model identifies the agentsand Their interactions. Internal models represent the implementations.The development process is as given below:

    1. Identify relevant agent roles and use these roles to develop agenthierarchies.

    2. Identify responsibilities associated with each role, services required orprovided by each role, and goals related to each service.

    3. For every goal work out the plans used to achieve it and the contexts

    when that plans can be applied.4. Formulate the belief structure for the system, which consists of

    information required for each plan and goal. For example speed(x)means current speed is x.

  • 8/14/2019 ics 806-Week 3

    7/45

    September 2009 School of Computing andInformatics University of Nairobi

    Agent Oriented analysis model (Burmeister-1996)

    Agent model- actual agentsOrganizational model- static relationships between agentsCooperation model- interaction and cooperation between agents

  • 8/14/2019 ics 806-Week 3

    8/45

    September 2009 School of Computing andInformatics University of Nairobi

    Agent Genealogies - (James Odell (2005))

  • 8/14/2019 ics 806-Week 3

    9/45

    September 2009 School of Computing andInformatics University of Nairobi

    The Tropos methodology (Italy, Belgium,Canada, Brazil)- requirement driven methodology

    Has four major development phases:Early requirements - understanding of a problem by studying an

    organizational setting.

    Late requirements - describe the system-to-be is by its operationalenvironment, along with relevant functions and qualities.

    Architectural design - define the systems global architecture interms of subsystems, interconnected through data, control, andother dependencies.

    Detailed design - refine each architectural component further

    Importance: Places an emphasis on modeling goals and theirrelationship with the systems actors, tasks, and resources.

  • 8/14/2019 ics 806-Week 3

    10/45

    September 2009 School of Computing andInformatics University of Nairobi

    Sample Tropos architectural design for Media shop (From: Paolo Giorgini, Manuel Kolp, John Mylopoulos, Jaelson Castro (2005). Tropos: A

    Requirements-Driven Methodology for Agent-Oriented Software, in Brian Henderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea Group Publishing, p. 50)

  • 8/14/2019 ics 806-Week 3

    11/45

    September 2009 School of Computing andInformatics University of Nairobi

    MAS-CommonKADS methodology(Spain)

    MAS-CommonKADS is based on both CommonKADS and object-oriented(OO)-based methodologies.

    MAS-CommonKADS is an agent-oriented software engineering methodology

    that guides the process of analyzing and designing multi-agent systems.

    MASCommonKADS distinguishes several development phases: conceptualisation , where the system is conceived as a multi-agent

    system and where agent properties of the system are identified; analysis , where different models are developed in order to analyse the

    system from different points of view; design , where the different models are operationally focussed; development and testing , which are not addressed explicitly in the

    methodology.

    Importance: This methodology enables the developer to build agent-basedsystems while applying the experiences of pre-agent methodologies and

    employing familiar techniques and diagrams.

  • 8/14/2019 ics 806-Week 3

    12/45

    September 2009 School of Computing andInformatics University of Nairobi

    Models of MAS CommonKADS (From: Carlos A. Iglesias, Mercedes Garijo (2005).The Agent-Oriented Methodology MAS-CommonKADS, in Brian Henderson-Sellers et al. p.64)

  • 8/14/2019 ics 806-Week 3

    13/45

    September 2009 School of Computing andInformatics University of Nairobi

    Example: Message sequence chart (From: Carlos A. Iglesias, Mercedes Garijo(2005). The Agent-Oriented Methodology MAS-CommonKADS, in Brian Henderson-Sellers &Paolo Girogini. p.88)

  • 8/14/2019 ics 806-Week 3

    14/45

    September 2009 School of Computing andInformatics University of Nairobi

    The PASSI methodology (Italy)Process for Agent Societies Specification andImplementation (PASSI) is a step-by-step requirement-to-code methodology for: designing and developingmulti-agent societies integrating design models and

    concepts from both object-oriented (OO) softwareengineering and MAS, using the Unified ModelingLanguage (UML) notation.

    PASSI evolved out of theoretical studies andexperiments in the development of embedded roboticsapplications.Importance: The PASSI methodology brings aparticularly rich development lifecycle that spans initialrequirements though deployment and, in addition,emphasizes the social model of agent-based systems.

  • 8/14/2019 ics 806-Week 3

    15/45

    September 2009 School of Computing andInformatics University of Nairobi

    Phases of PASSI methodology (From : Massimo Cossentino (2005).From Requirements to Code with the PASSI Methodology, in Brian Henderson-Sellers, Paolo Girogini(2005). Agent oriented methodologies. Idea Group Publishing, p. 96)

  • 8/14/2019 ics 806-Week 3

    16/45

    September 2009 School of Computing andInformatics University of Nairobi

    The Prometheus methodology (Australia)

    The Prometheus methodology consists of three phases :1. System Specification: where the system is specified using goals and use

    case scenarios; the systems interface to its environment is described interms of actions, percepts, and external data; and functionalities aredefined.

    2. Architectural design: where agent types are identified; the systems overallstructure is captured in a system overview diagram; and use casescenarios are developed into interaction protocols.

    3. Detailed design: where the details of each agents internals are developedand defined in terms of capabilities, data, events, and plans; processdiagrams are used as a stepping stone between interaction protocols andplans.

    Importance: From an AI planning-execution perspective, Prometheus providesan especially rich goal-driven approach for its BDI-like agents. Itsmethodology is used today to develop systems on commercial BDI-basedagent platforms, such as JACK or Agentis.

  • 8/14/2019 ics 806-Week 3

    17/45

    September 2009 School of Computing andInformatics University of Nairobi

    Phases of Prometheus Methodology (From : Lin Padgham, Michael Winikoff(2005). Prometheus: A Practical Agent-Oriented Methodology, in Brian Henderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea Group Publishing, p. 126)

  • 8/14/2019 ics 806-Week 3

    18/45

    September 2009 School of Computing andInformatics University of Nairobi

    The Gaia Methodology (UK)Gaia methodology uses the analogy of human-based

    organizations.

    Importance: Gaia is one of the earliest agent

    methodologies and now is in Version Two of its approach.Gaia provides an approach that both a developer and anon-technical domain expert can understandfacilitatingtheir interaction.

  • 8/14/2019 ics 806-Week 3

    19/45

    September 2009 School of Computing andInformatics University of Nairobi

    The Gaia methodology (From: Franco Zambonelli, Nicholas R. Jennings, MichaelWooldridge(2005). Multi-Agent Systems as Computational Organizations: The Gaia Methodology, in BrianHenderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea Group Publishing, p. 162)

  • 8/14/2019 ics 806-Week 3

    20/45

  • 8/14/2019 ics 806-Week 3

    21/45

    September 2009 School of Computing andInformatics University of Nairobi

    ADELFE steps (From: Carole Bernon, Valrie Camps, Marie-Pierre Gleizes, Gauthier Picard (2005).Engineering adaptive Multi-Agent Systems: The ADELFE Methodology , in Brian Henderson-Sellers, PaoloGirogini (2005). Agent oriented methodologies. Idea Group Publishing, pp. 198, 202, 205)

    WD1: Preliminary requirementsA1: Define user requirementsA2: Validate userrequirementsA3: Define consensualrequirementsA4: Establish keywords setA5: Extract limits andconstraintsWD2: Final requirements

    A6: Characterize environmentS1 : Determine entitiesS2 : Define contextS3 : Characterize environmentA7: Determine use casesS1: Draw an inventory of usecasesS2: Identify cooperationfailuresS3: Elaborate sequencediagramsA8: Elaborate UI prototypesA9: Validate UI prototypes

  • 8/14/2019 ics 806-Week 3

    22/45

    September 2009 School of Computing andInformatics University of Nairobi

    A10: Analyze the domainS1: Identify classesS2: Study interclassrelationshipsS3: Construct preliminary classdiagramsA11: Verify the AMASadequacyS1 : Verify it at the global levelS2 : Verify it at the local level

    A12: Identify agentsS1 : Study entities in the domaincontextS2 : Identify potentiallycooperative entitiesS3 : Determine agentsA13: Study interactionsbetween entitiesS1: Study active/passiveentities relationshipsS2: Study active entitiesrelationshipsS3: Study agent relationships

    ADELFE steps

  • 8/14/2019 ics 806-Week 3

    23/45

    September 2009 School of Computing andInformatics University of Nairobi

    A14: Study detailedarchitecture and multi-agent model

    S1: Determine packagesS2: Determine classesS3: Use design-patternsS4: Elaborate component and

    class diagramsA15: Study interactionlanguages

    A16: Design agentsS1: Define skillsS2: Define aptitudes

    S3: Define interactionlanguagesS4: Define worldrepresentations

    S5: Define Non CooperativeSituationsA17: Fast prototypingA18: Complete design diagrams

    S1: Enhance design diagramsS2: Design dynamic behaviours

    ADELFE steps

    Id if i i f il

  • 8/14/2019 ics 806-Week 3

    24/45

    September 2009 School of Computing andInformatics University of Nairobi

    Identifying cooperative failures (From: Carole Bernon, Valrie Camps, Marie-Pierre Gleizes,Gauthier Picard (2005). Engineering adaptive Multi-Agent Systems: The ADELFE Methodology , in BrianHenderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea Group Publishing, p. 200)

  • 8/14/2019 ics 806-Week 3

    25/45

    September 2009 School of Computing andInformatics University of Nairobi

    THE MESSAGE METHODOLOGY( Spain,Belgium)

    MESSAGE analysis and design process is based on the Rational UnifiedProcess (RUP).

    The methodology distinguishes high-level from detailed design.

    An organization-driven approach influences a detailed design, where theglobal architecture of the MAS is derived from the structure and behaviourof the organizations that interact.

    The methodology supports the analysis and design of multi-agentsystems that are flexible and can adapt to specific kind of changes in aheterogeneous and dynamic environment.

    Importance: MESSAGE extends existing object-oriented methodologiesfor agent-oriented applications. Originally intended to addresstelecommunications applications, its resulting RUP-based approach also

    supports more general applications.

    M t t

  • 8/14/2019 ics 806-Week 3

    26/45

    September 2009 School of Computing andInformatics University of Nairobi

    Message meta concepts (From: Francisco J. Garijo, Jorge J. Gmez-Sanz, Philippe Massonet(2005).The MESSAGE Methodology for Agent-Oriented Analysis and Design, in Brian Henderson-Sellers, Paolo Girogini(2005). Agent oriented methodologies . Idea Group Publishing, p. 222)

  • 8/14/2019 ics 806-Week 3

    27/45

    September 2009 School of Computing andInformatics University of Nairobi

    Message process modeling (From: Francisco J. Garijo, Jorge J. Gmez-Sanz,Philippe Massonet (2005).The MESSAGE Methodology for Agent-Oriented Analysis and Design, in BrianHenderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies . Idea Group Publishing, p. 222)

  • 8/14/2019 ics 806-Week 3

    28/45

    September 2009 School of Computing andInformatics University of Nairobi

    Message: Notations (From: Francisco J. Garijo, Jorge J. Gmez-Sanz, Philippe Massonet(2005).The MESSAGE Methodology for Agent-Oriented Analysis and Design, in Brian Henderson-Sellers, Paolo Girogini(2005). Agent oriented methodologies . Idea Group Publishing, p. 224)

  • 8/14/2019 ics 806-Week 3

    29/45

    I g i O g i ti l i i t

  • 8/14/2019 ics 806-Week 3

    30/45

    September 2009 School of Computing andInformatics University of Nairobi

    Ingenias Organizational viewpoint (From: Juan Pavn, Jorge J. Gmez-Sanz, Rubn Fuentes(2005). The INGENIAS Methodology and Tools, in Brian Henderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea Group Publishing, p.256)

  • 8/14/2019 ics 806-Week 3

    31/45

    Ingenias GRACIA interaction specification (From: Juan Pavn, Jorge J. Gmez-Sanz, Rubn

  • 8/14/2019 ics 806-Week 3

    32/45

    September 2009 School of Computing andInformatics University of Nairobi

    Fuentes (2005). The INGENIAS Methodology and Tools, in Brian Henderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea Group Publishing, p.261)

    THE Radical Agent Oriented Software Engineering

  • 8/14/2019 ics 806-Week 3

    33/45

    September 2009 School of Computing andInformatics University of Nairobi

    THE Radical Agent Oriented Software EngineeringProcesses (RAP) METHODOLOGY (Australia, Germany)

    The RAP/AOR methodology is an agent-oriented refinement of the Unified Software Development Process.

    The Rational Unified Process (RUP ) aims at achieving more agility using simulationfor early testing of analysis and design models.

    Agile methodologies, emphasize the value of lightweight ad hoc processes based ontest-case-based development and rapid prototyping and de-emphasize the value of

    detailed modelling on which they blame the heavy weight and inflexibility oftraditional methodologies and the RUP.

    The RAP/AOR methodology emphasizes the importance of precise modelling of theproblem domain at hand for achieving an agent-based information system with therequired functionality.

    The preciseness of domain modelling is ensured by the ontological foundation of theRAP/AOR methodology.

    http://rup-from%20oreiley.bmp/http://rup-from%20oreiley.bmp/
  • 8/14/2019 ics 806-Week 3

    34/45

    RAP model categories (From: Kuldar Taveter, Gerd Wagner (2005). Towards Radical Agent-Oriented

  • 8/14/2019 ics 806-Week 3

    35/45

    September 2009 School of Computing andInformatics University of Nairobi

    gSoftware Engineering Processes Based on AOR Modelling, Brian Henderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea Group Publishing, p.298)

    RAP- Mental state agent diagram (From: Kuldar Taveter, Gerd Wagner (2005). Towards Radical

  • 8/14/2019 ics 806-Week 3

    36/45

    September 2009 School of Computing andInformatics University of Nairobi

    RAP Mental state agent diagram (From: Kuldar Taveter, Gerd Wagner (2005). Towards RadicalAgent-Oriented Software Engineering Processes Based on AOR Modelling, Brian Henderson-Sellers, Paolo Girogini(2005). Agent oriented methodologies. Idea Group Publishing, p.299)

    RAP: example of interaction pattern (From: Kuldar Taveter, Gerd Wagner (2005). TowardsRadical Agent Oriented Software Engineering Processes Based on AOR Modelling Brian Henderson Sellers Paolo

  • 8/14/2019 ics 806-Week 3

    37/45

    September 2009 School of Computing andInformatics University of Nairobi

    Radical Agent-Oriented Software Engineering Processes Based on AOR Modelling, Brian Henderson-Sellers, PaoloGirogini (2005). Agent oriented methodologies. Idea Group Publishing, p.303)

    RAP/AOR modeling framework (From: Kuldar Taveter, Gerd Wagner (2005). Towards Radical Agent-O i t d S ft E gi i g P B d AOR M d lli g B i H d S ll P l Gi gi i (2005) Ag t

  • 8/14/2019 ics 806-Week 3

    38/45

    September 2009 School of Computing andInformatics University of Nairobi

    Oriented Software Engineering Processes Based on AOR Modelling, Brian Henderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea Group Publishing, p.304)

    Viewpoint models Viewpoint aspect

    Abstraction level Interaction Information Behaviour

    Conceptual Domain Modelling

    AOR Agent Diagrams,UML UseCase Diagrams, AOR

    InteractionFrame Diagrams, AORInteractionSequence Diagrams

    AOR AgentDiagrams

    AOR Interaction PatternDiagrams, Goal-BasedUse Case Models,

    AOR Activity Diagrams

    Platform- Independent Computational

    Design

    UML Use Case Diagrams,

    AORReaction FrameDiagrams, UserInterface Design Models,SecurityModels, UML Class

    Diagrams,UML InteractionDiagrams

    AOR Agent

    Diagrams

    AOR Reaction Pattern

    Diagrams, AOR InternalActivity Diagrams, UMLState Machine Diagrams

    Platform-Specific Implementation

    UML DeploymentDiagrams UML Class

    DiagramsUML Class Diagrams

    DiagramsUML Class Diagrams

    The Multi-agent systems Engineering (MaSE) methodology(USA)

  • 8/14/2019 ics 806-Week 3

    39/45

    September 2009 School of Computing andInformatics University of Nairobi

    MaSE builds on object-oriented techniques and uses defined in the Unified

    Modeling Language.

    The semantics of the models are specialized for the multi-agent setting.

    MaSE was designed to be used to analyze, design, and implement multi-agentsystems by proceeding in an orderly fashion through the development lifecycle.

    MaSE is automated via an analysis and design environment called agentTool;AgentTool guides the system designer through a series of models, from highlevelgoal definition to automatic verification, semi-automated design generation, andfinally to code generation.The MaSE methodology consists of two main phases that result in the creation of aset of complementary models. These are the analysis phase and the design phase .

    Importance: MaSE is a comprehensive methodology that has been used todevelop systems ranging from heterogeneous database integration applications tobiologically based, computer-virus immune systems and cooperative roboticssystems. Its hybrid approach can be applied to multi-agent systems that involve implementations, such as distributed human and machine planning.

    MaSE phases (From: Scott A. DeLoach, Madhukar Kumar (2005). Multi-Agent Systems Engineering: An Overview andCase, in Brian Henderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea Group Publishing, p.334)

  • 8/14/2019 ics 806-Week 3

    40/45

    September 2009 School of Computing andInformatics University of Nairobi

    MaSE interaction diagram example (From: Scott A. DeLoach, Madhukar Kumar (2005). Multi-Agent Systems Engineering: An Overview and Case in Brian Henderson Sellers Paolo Girogini (2005) Agent oriented

  • 8/14/2019 ics 806-Week 3

    41/45

    September 2009 School of Computing andInformatics University of Nairobi

    Agent Systems Engineering: An Overview and Case, in Brian Henderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea Group Publishing, p.343)

  • 8/14/2019 ics 806-Week 3

    42/45

    September 2009 School of Computing andInformatics University of Nairobi

    Some comparisons of the methodologies (Australians)

    It is impossible (and not recommended) to determine whichmethodology is the best among the 10 given. (Quynh-Nhu Numi Tran & GrahamC. Low (2005)).

    The decision should depend on the target application.

    Each application entails a different set of requirements that indicatewhich evaluation criteria are the most important and should be

    supported by the chosen AOSE methodology.

    When considering which methodology to adopt for a particularapplication, ranking should be done on the required features that the

    methodology should support.(Quynh-Nhu Numi Tran, Graham C. Low (2005). Comparison of Ten Agent-OrientedMethodologies, in Brian Henderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies.Idea Group Publishing, pp. 357-)

    A comparison framework (from Quynh-Nhu Numi Tran, Graham C. Low (2005). Comparison ofTen Agent Oriented Methodologies in Brian Henderson Sellers Paolo Girogini (2005) Agent oriented

  • 8/14/2019 ics 806-Week 3

    43/45

    September 2009 School of Computing andInformatics University of Nairobi

    Ten Agent-Oriented Methodologies, in Brian Henderson-Sellers, Paolo Girogini (2005). Agent oriented methodologies. Idea Group Publishing, pp. 359)

  • 8/14/2019 ics 806-Week 3

    44/45

  • 8/14/2019 ics 806-Week 3

    45/45