ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM]

Slides:



Advertisements
Similar presentations
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Advertisements

Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Lecture # 2 : Process Models
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Object-Oriented Analysis and Design
Specifying Agent Interaction Protocols with AUML and OCL COSC 6341 Project Presentation Alexei Lapouchnian November 29, 2000.
Developing MAS The GAIA Methodology A Brief Summary by António Castro and Prof. Eugénio Oliveira.
7M701 1 Software Engineering Object-oriented Design Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 12 )
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
1 Objectives To introduces the concept of software Design. To introduce the concept of Object- Oriented Design (OOD). To Define various aspects about object.
Unified Modeling (Part I) Overview of UML & Modeling
April 15, 2005Department of Computer Science, BYU Agent-Oriented Software Engineering Muhammed Al-Muhammed Brigham Young University Supported in part by.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
©Ian Sommerville 2006Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
© Copyright Eliyahu Brutman Programming Techniques Course.
Course Instructor: Aisha Azeem
Chapter 10: Architectural Design
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
Introduction To System Analysis and design
Chapter 10 Architectural Design
Why Analysis Process Refer to earlier chapters Models what the system will do makes it easier for understanding no environment considered (hence, system.
UML - Development Process 1 Software Development Process Using UML (2)
Multi-Agent Systems University “Politehnica” of Bucarest Spring 2003 Adina Magda Florea
TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)
An Introduction to Software Architecture
Unified Modeling Language, Version 2.0
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
SOFTWARE DESIGN.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Systems Analysis and Design in a Changing World, 3rd Edition
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Information Systems Engineering. Lecture Outline Information Systems Architecture Information System Architecture components Information Engineering Phases.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 05. Review Software design methods Design Paradigms Typical Design Trade-offs.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
ARCHITECTURAL DESIGN. Why is Architecture Important? Representations of software architecture are an enabler for communication between all parties (stakeholders)
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Software Design Process
OBJECT ORIENTED AND FUNCTION ORIENTED DESIGN 1 Chapter 6.
1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Process: A Generic View Software Engineering: A Practitioner’s Approach, 7/e Chapter 2.
OMT Modeling 1. Object Model : presented by the object model and the data dictionary. 2. Dynamic Model: presented by the state diagrams and event flow.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
 Building Block Building Block  Things in the UML Things in the UML  Structural Things Structural Things  Behavioral Things Behavioral Things  Grouping.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Analysis Yaodong Bi. Introduction to Analysis Purposes of Analysis – Resolve issues related to interference, concurrency, and conflicts among use cases.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
OOD OO Design. OOD-2 OO Development Requirements Use case analysis OO Analysis –Models from the domain and application OO Design –Mapping of model.
Basic Characteristics of Object-Oriented Systems
Systems Architectures System Integration & Architecture.
Statistical process model Workshop in Ukraine October 2015 Karin Blix Quality coordinator
SECURE TROPOS Michalis Pavlidis 8 May Seminar Agenda  Secure Tropos  History and Foundation  Tropos  Basics  Secure Tropos  Concepts / Modelling.
CHAPTER
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
Systems Analysis and Design With UML 2
Object-Oriented Design
An Introduction to Software Architecture
Design Yaodong Bi.
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Presentation transcript:

ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] METHODOLOGIES OF MULTI-AGENT-BASED SYSTEMS DESIGN Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information Technology Institute of Applied Computer Systems Department of Systems Theory and Design E-mail: Janis.Grundspenkis@rtu.lv

AGENT DESIGN CRITERIA Autonomy Social ability Reactivity Pro-activeness Flexibility Purpose Ability to learn

AGENT DESIGN METHODOLOGIES (1) Belief, Design and Intention (BDI) Approach External viewpoint Agents are modelled as complex objects characterized by their external interaction, the information they require and maintain, the services they perform, and their responsibilities. As a result two models are developed: Agent Model and Interaction Model Internal viewpoint It is captured in three models which are developed: Belief Model, Goal Model, and Plan Model

AGENT DESIGN METHODOLOGIES (2) Belief, Design and Intention (BDI) Approach Agent Model identifies hierarchical relationships between abstract and concrete agent classes and the agent instances Interaction Model specifies responsibilities of an agent class, the services it provides, its interactions and relationships between agent classes

AGENT DESIGN METHODOLOGIES (3) Belief, Design and Intention (BDI) Approach Belief Model describes the information about agent environment, its internal states and the actions it may perform Goal Model describes the events to which an agent can respond and the goals that an agent may adopt Plan Model describes the plans that an agent may employ to achieve its goals

AGENT DESIGN METHODOLOGIES (4) Gaia Abstract entities They are used during the analysis phase to conceptualize the system (these entities do not necessarily have any direct realization within the system) Concrete entities They are used during the design process and have direct counterparts in the run-time system

AGENT DESIGN METHODOLOGIES (5) Gaia The methodology puts the emphasis on the analogy between agent-based systems and an organization, and views them as a collection of roles A role is defined by four characteristics: Responsibilities determine functionality of a role and are further divided into 2 types: liveness and safety properties Permission identify the resources available to that role (tend to be information) Activities are the computations that are specific to that role and are carried out by the agent without interacting with other agents Protocols define the way in which the role interacts with other roles

AGENT DESIGN METHODOLOGIES (6) Agent UML AUML is a set of UML idioms and extensions that can be used to model multi-agent systems AUML adopts a three layer representation: Agent interaction protocols Interaction among agents Internal agent processing

AGENT DESIGN METHODOLOGIES (7) Agent UML The agent interaction protocols that provide reusable solutions are found in the first layer of AUML The two UML techniques used to express protocol solutions that can be reused are packages and templates where the modelling elements are conceptually grouped and aggregated in accordance with its purpose. The AUML protocol solutions can be reused in various situations and allow various kinds os message sequencing between agents

AGENT DESIGN METHODOLOGIES (8) Agent UML The interaction diagrams are used in the second AUML layer to capture the structural patterns of agents’ interactions. They are the following: The sequence diagramm represents the chronological sequence of the processes that need to be carried out within the multi-agent system The collaboration diagramm represents the associations between different agents during these processes The flow of processing in the agent community is captured by activity diagramms and state charts

AGENT DESIGN METHODOLOGIES (9) Agent UML The interaction diagrams are also used in the third AUML layer to specify the detailed processing that takes place within an agent. Sequence diagramms, collaborative diagramms, state charts and activity diagramms can all be used to specify the internal processing of agents

AGENT DESIGN METHODOLOGIES (10) Agents in Z In agents in Z methodology, the standard properties of Z specification language and the four-tiered hierarchy approach that comprises entities, objects, agents and autonomous agents, is used to specify the computational models

AGENT DESIGN METHODOLOGIES (11) Agents in Z Entities are viewed as being distinct from the reminder of the environment. They can organize perception and serve as a useful abstraction mechanism. The various attributes are grouped together through entities without the need to add a layer of functionality on top

AGENT DESIGN METHODOLOGIES (12) Agents in Z An object has abilities and attributes but has no further defining characteristics An agent is an object associated with a set of goals. Different instatiations of the agent, together with agents created in response to another agent, may result from one object Autonomous agents are agents that can generate their own goals from motivation

AGENT DESIGN METHODOLOGIES (13) Agents in Z An entity is identified if the attributes are grouped without capabilities If an entity is characterized by attributes and abilities but there are no goals, then it is an object If an object has goals but no motivation , then it is an agent If an agent is under motivation, then it is an autonomous agent

AGENT DESIGN METHODOLOGIES (14) Agents in Z The implementation of the system reflects this structural framework and is inspired by object-oriented method in C++ The container data structure contains entities of the simulation environment Objects and agents are uniformly situated within this environment and are linked together in the container class

AGENT DESIGN METHODOLOGIES (15) Agents in Z The user specifies the number of iterations within the simulation run The granularity of the iterations determines the simulation time Each object or agent, together with internal level of motivation, is updated on each iteration An individual world view for each agent is obtained through the perception functions The initial conditions are checked and active behaviours performed The agent itself is responsible for the maintenance of its current state and configuration

AGENT DESIGN METHODOLOGIES (16) DESIRE It is the framework for Design and Specification of Interacting components which was originally designed for formal specification of complex reasoning systems and was extended to enable formal specification of multi-agent systems The specific feature of DESIRE is that it specifies the dynamics of reasoning and acting behaviour

AGENT DESIGN METHODOLOGIES (17) DESIRE Complex reasoning systems are designed as hierarchically structured components These components can be: Reasoning components Subsystems capable of performing calculation, information retrieval and optimization tasks The components interact with each other, with the external world, and with the user. These task based interactions are formally specified The formal semantics are defined using temporal logic

AGENT DESIGN METHODOLOGIES (18) DESIRE DESIRE extension is the formal specification framework for definition of multi-agent systems The extended framework enables: Formal specification of both static and dynamic aspects of the interactions within the system behaviour Definition of the semantics of task performance DESIRE extension allows: Parallel activation of agents Directly control their communication Different agent states - active or idle and awake (capable of processing incoming information as it arrives) or asleep Duplication of tasks accross agents

AGENT DESIGN METHODOLOGIES (19) Cassiopeia The method focuses on the collective behaviour within a set of agents. It provides a methodological framework for better understanding of a computational organization and supports agents’design A multi-agent system is characterized by three levels of agent behaviours: Elementary behaviours Relational behaviours Organizational behaviours

AGENT DESIGN METHODOLOGIES (20) Cassiopeia Elementary behaviours are required for the achievement of the collective tasks needs listed A functional or object-oriented analysis steps are used to identify these behaviours Based on the elementary behaviours different agents are defined

AGENT DESIGN METHODOLOGIES (21) Cassiopeia Dependences between the elementary behaviours determine the coupling graph underlying the collective task The coupling graph is projected onto the different types of agents (the inconsistent dependences are removed) The dependences between the different types of agents are called influences, and the refined projected graph is called the influence graph The designer needs to specify the relational behaviours that enable the agents to identify and handle the influences The paths and the elementary circuits of the influence graph determine the global representation of the organization structure

AGENT DESIGN METHODOLOGIES (22) Cassiopeia The organizational behaviours adresses the dynamics of organization The organizational behaviours that will enable the agents to manage the formation, durability and dissolution of groups are specified When the agent needs to form a group, it produces the relevant influence signs This trigger agent needs to evaluate all potential groups in order to deside which one is the most appropriate in the currrent context

AGENT DESIGN METHODOLOGIES (23) Cassiopeia The designer should: Identify the trigger agents (for this purpose the grouping potentialities identified in the influence graph are used) For each of the identified trigger agents, determine the selection methods to introduce control over the formation of groups. The techniques (such as task announcement, agent consensus and negotiation, agent priorities, use of supervisor or a hierarchy etc.) define the group formation behaviours which are the first type of the organizational behaviour

AGENT DESIGN METHODOLOGIES (24) Cassiopeia The designer should: 3) Specify the commitment signs which are produced by the trigger agents to inform other agents that a group has be formed to meet their need. These signs enable agents that are not members of the formed groups to control their relational behaviours. The joining behaviours, which are the second type of organizational behaviour, are defined for each type of agent 4) Revise an already-formed group if it must be replaced with more efficient group. For each type of agent the designer needs to define the group dissolution behaviour which is the third type of organizational behaviour

AGENT DESIGN METHODOLOGIES (25) Multi-Agent system Engineering (MaSE) MaSE is a methodology for developing heterogeneous multi-agent systems In the MaSE process, system goals, behaviours, agent types and agent communication interfaces, and internal agent structure, are defined through graphically-based models The set of these abstract models is transformed into more concrete representations that specify and describe the system in greater detail

AGENT DESIGN METHODOLOGIES (26) Multi-Agent system Engineering (MaSE) MaSE consists of two phases: Analysis phase which consists of three steps: Capturing Goals, Applying Use Cases and Sequencial Diagrams, and Refining Roles Design phase, during which the roles and tasks defined at the Analysis phase are transformed into agent types and conversations, has four steps: Creating Agent Classes, Constructing Conversations, Assembling Agent Classes, and System Design

AGENT DESIGN METHODOLOGIES (27) Multi-Agent system Engineering (MaSE) MaSE Analysis phase: Capturing goals is concerned with abstracting the functional requirements of the system into a set of system goals Use Cases and Sequential Diagrams are used to validate the system goals, identify an initial set of roles (seen as entity responsible for achieving specific system sub-goals) and communications paths In Refining Roles step, goals are transformed into a set of roles. Role Model that captures roles and their associated tasks, and/or Concurrent Task Model that defines role behaviour for each task, are created

AGENT DESIGN METHODOLOGIES (28) Multi-Agent system Engineering (MaSE) MaSE Design phase In the Creating Agent Classes step, the designer assigns roles to the specific agent classes and identifies required conversations In the Constructing Conversation step the actual conversations between agent classes are defined. For each communication path, the messages and states are extracted and added In the Assembling Agent Classes step the internal architecture and reasoning processes of the agent classes are designed. Components and connectors are used to define the architecture of each agent In the System Design step, the final system structure including the actual number and location of agents in the system is defined using Deployment Diagrams

AGENT DESIGN METHODOLOGIES (29) TROPOS The TROPOS methodology has five main development phases: Early Requirements Late Requirements Architectural Design Detailed Design Implementation

AGENT DESIGN METHODOLOGIES (30) TROPOS Early Requirements analysis identifies and analyses the actors (they depend on one another for goals, plans and resources) and their goals. A goal-oriented analysis is used to decompose the overall goal into finer sub-goals Late Requirements analysis examines the functions and qualities of the proposed subsystems. The interdependences between subsystems determine the system’s functional and non-functional requirements

AGENT DESIGN METHODOLOGIES (31) TROPOS In the Detailed Design phase the agents are specified at the micro level. The focus is on agent’s goals, beliefs, capabilities and communication. Development platforms and features of agent progarmming language determine the practical implementation of these specifications In the Implementation phase is used JACK Intelligent Agents (an agent-oriented development environment that is built on top and is fully integrated with Java) to design agents as autonomous software components capable to achieve their goals. The agents in JACK are usually programmed with a set of plans

AGENT DESIGN METHODOLOGIES (32) Prometheus The Prometheus methodology consists of three phases: System specification phase Architectural design phase Detailed design phase

AGENT DESIGN METHODOLOGIES (33) Prometheus During the System Specification phase the basic functionalities of the system are identified. The resulting functionality descriptor contains a name, a short natural language description, a list of actions, a list of relevant perceptions, data used and produced (inputs and outputs), and a brief description of interactions with other functionalities

AGENT DESIGN METHODOLOGIES (34) Prometheus During the Architectural Design phase the defined functionalities are used to determine necessary agents and their interactions. The traditional software engineering criteria of coherence and coupling are used to evaluate assigments of functionalities of agents.The design of agents with strong coherence and loose coupling is recomended During the Detailed Design phase the internal structure of each agent is explored in great detail.The designer focuses specifically on an agent’s abilities to accomplish its individual tasks and the integration of these tasks with others into an overall task