Designing Agents’ Behaviors and Interactions within ADELFE

Slides:



Advertisements
Similar presentations
Approaches, Tools, and Applications Islam A. El-Shaarawy Shoubra Faculty of Eng.
Advertisements

Pat Langley Computational Learning Laboratory Center for the Study of Language and Information Stanford University, Stanford, California USA
The 20th International Conference on Software Engineering and Knowledge Engineering (SEKE2008) Department of Electrical and Computer Engineering
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Intelligent Architectures for Electronic Commerce Part 1.5: Symbolic Reasoning Agents.
Formal Modelling of Reactive Agents as an aggregation of Simple Behaviours P.Kefalas Dept. of Computer Science 13 Tsimiski Str Thessaloniki Greece.
Some questions o What are the appropriate control philosophies for Complex Manufacturing systems? Why????Holonic Manufacturing system o Is Object -Oriented.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
1 The ADELFE Methodology Concepts and Definition using SPEM Marie-Pierre Gleizes, Frédéric Migeon, Sylvain Roug le, Carole Bernon, Thierry Millan,
Developing MAS The GAIA Methodology A Brief Summary by António Castro and Prof. Eugénio Oliveira.
A Summary of the Article “Intelligence Without Representation” by Rodney A. Brooks (1987) Presented by Dain Finn.
Agent Mediated Grid Services in e-Learning Chun Yan, Miao School of Computer Engineering Nanyang Technological University (NTU) Singapore April,
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
Knowledge Acquisitioning. Definition The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter Chapter 7: Expert Systems and Artificial Intelligence Decision Support.
HAS. Patterns The use of patterns is essentially the reuse of well established good ideas. A pattern is a named well understood good solution to a common.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 15 Slide 1 Real-time Systems 1.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Knowledge representation
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
© 2007 Tom Beckman Features:  Are autonomous software entities that act as a user’s assistant to perform discrete tasks, simplifying or completely automating.
Travis Steel. Objectives What is the Agent Paradigm? What is Agent-Oriented Design and how is it different than OO? When to apply AOD techniques? When.
Introduction To System Analysis and Design
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
1 Introduction to Software Engineering Lecture 1.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
September 2008ESAW 081 SMAC - IRIT – UPS Sylvain Roug le, TOULOUSEJean-Paul Arcangeli, FRANCE Marie-Pierre Gleizes, Frédéric Migeon 1 ADELFE Design,
Object-Oriented Software Engineering using Java, Patterns &UML. Presented by: E.S. Mbokane Department of System Development Faculty of ICT Tshwane University.
AOT Lab Dipartimento di Ingegneria dell’Informazione Università degli Studi di Parma Unifying MAS Meta-Models ADELFE, Gaia & PASSI Carole Bernon, Massimo.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Winter 2011SEG Chapter 11 Chapter 1 (Part 1) Review from previous courses Subject 1: The Software Development Process.
RULES Patty Nordstrom Hien Nguyen. "Cognitive Skills are Realized by Production Rules"
Artificial Intelligence
FROM THE ESSENCE OF AN ENTERPRISE TOWARDS ENTERPRISE SUPPORTING INFORMATION SYSTEMS Tanja Poletaeva Tutors: Habib Abdulrab Eduard Babkin.
Design Engineering 1. Analysis  Design 2 Characteristics of good design 3 The design must implement all of the explicit requirements contained in the.
Done by Fazlun Satya Saradhi. INTRODUCTION The main concept is to use different types of agent models which would help create a better dynamic and adaptive.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini XVIII. Software Testing.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
Advanced Software Engineering Dr. Cheng
Object Oriented Systems Design
Embedded Systems Software Engineering
Object-Oriented Analysis and Design with the Unified Process
A Normative and Intentional Agent Model for Organisation Modelling
Unit - 3 OBJECT ORIENTED DESIGN PROCESS AND AXIOMS
Cmpe 589 Spring 2006.
Chapter 1: Introduction to Systems Analysis and Design
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
TIM 58: Systems Analysis and Design Winter Quarter 2017 Tuesday/Thursday 1:30 – 3:05 pm, Classroom Unit 1.
Object-Oriented Software Engineering Using UML, Patterns, and Java,
The Systems Engineering Context
Iterative design and prototyping
Architecture Components
Abstract descriptions of systems whose requirements are being analysed
Intelligent Agents Chapter 2.
IT Systems Analysis & Design
Introduction Artificial Intelligent.
Internet of Things A Process Calculus Approach
Object oriented analysis and design
Need for the subject.
Chapter 1: Introduction to Systems Analysis and Design
Semantic Web Towards a Web of Knowledge - Projects
Dept. of Computation, UMIST
Agenda Software development (SD) & Software development methodologies (SDM) Orthogonal views of the software OOSD Methodology Why an Object Orientation?
PASSI (Process for Agent Societies Specification and Implementation)
Chapter 1: Introduction to Systems Analysis and Design
UML Design for an Automated Registration System
Presentation transcript:

Designing Agents’ Behaviors and Interactions within ADELFE Gauthier Picard picard@irit.fr SMAC Team – IRIT, France http://www.irit.fr/SMAC Good afternoon, I’m Gauthier Picard. I’m coming from Toulouse France and working in the Cooperative MAS team of the IRIT. My talk will deal with Designing Agents’ Behaviors and Interactions in the framework of ADELFE.

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Contents Motivations and Research Positioning A Multi-Agent Theory An Agent Model Conclusion First, some concepts will be raised such as our view of self-organization and its use in the adaptive multi-agent system engineering. Second, I will expose our way to work with MAS paradigm. Then, I will present an Agent Model, the Cooperative Agent, that we use to design self-organizing societies. Finally I will conclude with some perspectives. 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Some keywords Self-organization A system which changes its basic structure as a function of its experience and environment (Farley, Clark, 1954) Organism Level: The Morphogenesis of an Embryo Social Level: Ants, Termite, Flock Behavior, Democracy Emergence The global function of the system is emerging Its implementation does not depend on the knowledge of the collective function and must allow adaptation The self-organization of the components follows rules which are independent of the global function (georgé, 2003) The two main keywords we keep in mind when designing agents are Self-organization and emergence. A Self-organizing system is a system which changes its basic structure in terms of its environment and its own experience. Some good example are found in Biology or Ethologic. Emergence means the appearance of a new coherent function at the macro level. The implementation does not depend on the knowledge of the collective function  adaptation Emergence is possible by self-organization of the components that follow rules that are independent from the global function. 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

Why Self-Organization? Why Emergence? Manageable systems  Organized by someone Self-organizing systems  Order comes from within and the function emerges from interactions It is more simple to design an agent than the global system when Complex: many components Open systems Dynamic environment No predefined global goal Not well specified… So, why focusing on self-organization or emergence? Typically, and in a near-past, engineers were faced to manageable systems where organization can be specified by someone. But, by now, engineers are faced to more complex problems and often need to use self-organizing systems where order and organization comes from within. Organization cannot be specified by someone and then has to emerge from self-organization. Moreover, it is more simple to design part of the system when this last one is complex, open, when the environment which it is in interaction with is dynamic, when there is no predefined global goal, and more generally when it is not well specified. Autonomic Computing, where the system has to maintain its own integrity and has to self-repair is a good example of too complex system to be specified. Ubiquitous Computing or Ambient Intelligence shows the difficulty to specify a global goal : how to satisfy the user who is plunged into an ubiquitous system? Human beings are a good example of dynamic environment too. Examples Autonomic Computing Ubiquitous Computing / Ambient Intelligence 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Contents Motivations and Research Positioning A Multi-Agent Theory An Agent Model Conclusion So, now I will expound our view on designing self-organizing systems in which a coherent global function emerges from local interactions. 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

Adaptive Multi-Agent System Theory Self-organizing multi-agent systems Engine of self-organization = agents’ cooperative attitude  cooperation failures detection and processing Emergence of a coherent global function Many applications : flood forecast, timetabling, on-line brokerage… ADELFE Method Process Notations Tools This theory deals with self-organizing systems where agents’ cooperative attitude is the engine of self-organization. This local criteria is a mean to ease exploring the search space. Cooperative attitude means that agents are able to detect local cooperation failures and to process them to reach back a cooperative state. As no global task is specified, only agents’ cooperative behaviors, the global coherent function of the system emerges from the organization of the MAS. Many applications in many domains were developped by using this principle such as flood forecast systems, timetabling problem or on-line brokerage. But, currently, our main topic of interest is to provide tools and notations to design such systems. This is why we have developped the ADELFE method, described by its process, notations and tools. 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Adaptation The system has to compute the adequate function System adaptation MAS self-organization Agent Adaptation SYSTEM MAS AGENT  Beliefs/skills 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

Principle of Self-Organization System Need for a criterion independent of the global function local to the agents Environment   Perception   Time t+1 : f*s + Action Time t : fs 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

Cooperation : Engine of Self-Organization Cooperative attitude of an agent Definition of Cooperation All perceived signals must be understood without ambiguity (c1) The received information is useful for the agent’s reasoning (c2) Reasoning leads to useful actions towards other agents (c3) Proscriptive definition of cooperation Non Cooperative Situations (NCS) : ¬ c1 v ¬ c2 v ¬ c3 If an agent is in a NCS, it acts to reach a cooperative state Treatment : exception / cooperation failure 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

Functional Adequacy Theorem Functionally Adequate Systems For any functionally adequate system in a given environment, there is a system having a cooperative internal medium which realizes an equivalent function Cooperative Systems Cooperative Internal Medium Systems 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC And So What? Functional Adequacy Theorem consequences To design a system, designers only have to ensure agents’ behaviors are cooperative to ensure the system provides a coherent function The behavior of the system will have to emerge from the cooperative interactions between agents  How can we design agents to obtain coherent societies? 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Contents Motivations and Research Positioning A Multi-Agent Theory An Agent Model Cooperative agents’ modules Interaction aspects Fast prototyping Conclusion 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Cooperative Agent Follows a three-step life-cycle perceive – decide – act Is composed of different modules Is cooperative (avoiding NCSs) 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Cooperative Agent Interaction Perception Actions Sensor Actuator Representations Aptitudes Sensor Actuator Sensor Actuator Sensor Actuator Skills Sensor Actuator Sensor Actuator Sensor Cooperation Actuator Sensor Actuator Sensor Actuator 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Interaction Module Interface between the agent and its environment Physical  sensors, actuators Social  mailbox and mail services Sub-modules Perception Action Interaction languages to communicate with other agents Triggered during perception and action phases 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

Representation Module Partial knowledge on the environment the other agents itself Example of implementation Classical or fuzzy knowledge base Multi-agent system (like semantic organization) Learning capabilities Triggered during the decision phase 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Skill Module Common knowledge on a particular field Example of implementation Classical or fuzzy knowledge base Multi-agent system (like semantic organization) Learning capabilities Triggered during the decision phase 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Aptitude Module Capabilities to reason on representations skills perceptions Example : inference engine Returns an action to do Triggered during the decision phase 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Cooperation Module Represents the agent’s cooperative attitude Rules set Conditions in terms of representations, perceptions, skills Actions : actions, representation modification Chosen cooperative actions are top priority Triggered during the decision phase 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Functioning Perception Actions Sensor Actuators Representations Aptitudes Sensor Actuators Sensor Actuators Sensor Actuators Skills Stimuli Sensor Actuators Actions Sensor Actuators Sensor Actuators Cooperation Sensor Actuators Sensor Actuators Interaction 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

How to use this model? (an example) Use of UML Definition of “cooperative agent” specific stereotypes Coherency rules to ensure the right use of modules 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Interaction aspects A-UML interaction diagrams used to specify interaction languages and protocols As cooperative interactions lead the system to the right function : NCS treatment at the interaction level is needed 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

NCS Rules Definition Problem Defining problems at the local level is easier than defining them at the global level BUT how can we ensure the NCS rule set is exhaustive? No formal solution, only hints and guidances Following the ADELFE methodology and AMAS definitions Fast prototyping 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Fast Prototyping By using appropriate designing and simulation tool (e.g. OpenTool) By simply defining agents’ behaviors Pre-code the modules Dynamical aspects (state machines or protocols) By simulating behaviors Especially state machines Transforming non state machine models into state machines automatically Transforming protocol diagrams into state machines 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

Transformation into Finite State Machines Procedure For each protocol, a concurrent state machine is associated A state is associated with each role involved in the protocol A sub-state of the role state is associated with each message reception and emission A transition between two states is created when a message is received or sent A-UML specific branches an aptitude is associated with the decision-making process of a OR or a XOR branch If the XOR node has n branches, it generates n transitions A state is created for each AND nodes 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

Example: Buyer/Seller Protocol 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

Seller’s Concurrent Machines 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

Seller Role Sub-State Machine 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Contents Motivations and Research Positioning A Multi-Agent Theory An Agent Model Conclusion 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC Conclusion To design more adaptive systems Multi-agent systems Self-organization led by cooperation The function emerges from the interactions within a society of cooperative agents To design such systems, we propose the ADELFE Method (http://www.irit.fr/ADELFE) Process (inspired from RUP) Notations (UML / A-UML) Tools (e.g. OpenTool, AdelfeToolkit, AMAS Adequacy…) To design agents of such systems, ADELFE proposes UML stereotypes AIP protocols Simulation of dynamical behaviors 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC

ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC THANK YOU 29/10/2003 ESAW'03 - Gauthier PICARD - http://www.irit.fr/SMAC