Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems...

36
Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References Self-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École Nationale Supérieure des Mines de Saint-Étienne (ENSM.SE) [email protected] November 6, 2008 Self-* and multi-agent systems 1

Transcript of Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems...

Page 1: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Self-* and multi-agent systemsApplications to collective robotics and problem solving

Gauthier Picard

SMA / G2I / École Nationale Supérieure des Mines de Saint-Étienne (ENSM.SE)

[email protected]

November 6, 2008

Self-* and multi-agent systems 1

Page 2: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Contents

1 Introduction

2 Autonomic and Self-*

3 Collective Robotics

4 Problem Solving

5 Mechanical Design

6 Conclusions

Self-* and multi-agent systems 2

Page 3: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Motivations

I Technical motivationsI More powerful computers (Moore’s law)I Systems become more open (Internet, Ambient, etc.)I Interdependencies, non linearities between them

I Theoretical consequences and limitationsI Incompleteness theorems of GödelI Law of requisite variety of AshbyI “No free lunch theorems” of Wolpert and Mac Ready

⇒ Designing and manipulate Complex Systems

Self-* and multi-agent systems 3

Page 4: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Motivations

I Technical motivationsI More powerful computers (Moore’s law)I Systems become more open (Internet, Ambient, etc.)I Interdependencies, non linearities between them

I Theoretical consequences and limitationsI Incompleteness theorems of GödelI Law of requisite variety of AshbyI “No free lunch theorems” of Wolpert and Mac Ready

⇒ Designing and manipulate Complex Systems

Self-* and multi-agent systems 3

Page 5: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Emergence technologies for CS

7 We cannot formally prove that sufficiently “complex” software aresafe

7 Systems openness goes against their a priori checking

⇒ Standard design is today inappropriate⇒ New systems must be self-* (self-control, self-repair, self-healing,

self-organisation, etc.)

⇒ New theories and methods for designing emergent functionalitysystems

Self-* and multi-agent systems 4

Page 6: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Emergence technologies for CS

7 We cannot formally prove that sufficiently “complex” software aresafe

7 Systems openness goes against their a priori checking

⇒ Standard design is today inappropriate⇒ New systems must be self-* (self-control, self-repair, self-healing,

self-organisation, etc.)

⇒ New theories and methods for designing emergent functionalitysystems

Self-* and multi-agent systems 4

Page 7: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Contents

1 Introduction

2 Autonomic and Self-*

3 Collective Robotics

4 Problem Solving

5 Mechanical Design

6 Conclusions

Self-* and multi-agent systems 5

Page 8: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Autonomic and Self-*Illustration

http://ants.gsfc.nasa.gov/

Self-* and multi-agent systems 6

Page 9: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Autonomic and Self-*Demonstration

http://ants.gsfc.nasa.gov/

Self-* and multi-agent systems 7

Page 10: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Autonomic Computing

I Initiative started by IBM in 2001I Autonomy-oriented computation, Emergent computationI Aims at developing self-managed systemsI Inspired from social and natural systems

I Ant, termite colonies, bees, wasps, etc.I Human societiesI etc.

⇒ Collective actions of the sub-parts (agents) lead to the wholesystem adaptation

Self-* and multi-agent systems 8

Page 11: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Autonomic Computing (cont.)

Self-* Properties

I Self-tuning: Automatic adjustment of internal parametersI Self-configuration: Automatic configuration of componentsI Self-healing: Automatic discovery, and correction of faultsI Self-optimization: Automatic monitoring and control of resources

to ensure the optimal functioning with respect to the definedrequirements

I Self-protection: Proactive identification and protection fromarbitrary attacks

I ...

Self-* and multi-agent systems 9

Page 12: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

From Self-* to Self-Organisation

I Topology of an organisation determines the functionality of thesystem at a given time

I Changing the organisation→ changing the function⇒ A self-organising system is a system able to change its internal

organisation as to reach an equilibrium (adaptation)I This environment is the engine for stability and convergence (ex:

stigmergy)

Self-* and multi-agent systems 10

Page 13: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

From Self-* to Self-Organisation

I Topology of an organisation determines the functionality of thesystem at a given time

I Changing the organisation→ changing the function⇒ A self-organising system is a system able to change its internal

organisation as to reach an equilibrium (adaptation)I This environment is the engine for stability and convergence (ex:

stigmergy)

Self-* and multi-agent systems 10

Page 14: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

From Self-* to Self-Organisation

I Topology of an organisation determines the functionality of thesystem at a given time

I Changing the organisation→ changing the function⇒ A self-organising system is a system able to change its internal

organisation as to reach an equilibrium (adaptation)I This environment is the engine for stability and convergence (ex:

stigmergy)

Self-* and multi-agent systems 10

Page 15: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Contents

1 Introduction

2 Autonomic and Self-*

3 Collective Robotics

4 Problem Solving

5 Mechanical Design

6 Conclusions

Self-* and multi-agent systems 11

Page 16: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Collective Robotics

[Picard and Gleizes, 2005]

Self-* and multi-agent systems 12

Page 17: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Virtual Pheromones

Virtual markers positions for all robots and 2 goals

Self-* and multi-agent systems 13

Page 18: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Virtual Pheromones (cont.)

Virtual markers positions for all robots and for the goal reach the drop zone

Self-* and multi-agent systems 14

Page 19: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Virtual Pheromones (cont.)

Virtual markers positions for all robots in a dynamical environment

Self-* and multi-agent systems 15

Page 20: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Contents

1 Introduction

2 Autonomic and Self-*

3 Collective Robotics

4 Problem Solving

5 Mechanical Design

6 Conclusions

Self-* and multi-agent systems 16

Page 21: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Problem Solving

I Self-organisation is also a way to solve problemsI distributionI decentralisationI dynamics⇒ Distributed Constraint Satisfaction/Optimisation

I Examples:I Ant colony optimisation [Bonabeau et al., 1999]I Particle swarm optimisationI ...

I ApplicationsI Scheduling:

I Course scheduling [Picard et al., 2005]I Manufacturing control [Clair et al., 2008]

I Frequency assignment [Picard et al., 2007]I ...

Self-* and multi-agent systems 17

Page 22: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Problem Solving

I Self-organisation is also a way to solve problemsI distributionI decentralisationI dynamics⇒ Distributed Constraint Satisfaction/Optimisation

I Examples:I Ant colony optimisation [Bonabeau et al., 1999]I Particle swarm optimisationI ...

I ApplicationsI Scheduling:

I Course scheduling [Picard et al., 2005]I Manufacturing control [Clair et al., 2008]

I Frequency assignment [Picard et al., 2007]I ...

Self-* and multi-agent systems 17

Page 23: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Problem Solving

I Self-organisation is also a way to solve problemsI distributionI decentralisationI dynamics⇒ Distributed Constraint Satisfaction/Optimisation

I Examples:I Ant colony optimisation [Bonabeau et al., 1999]I Particle swarm optimisationI ...

I ApplicationsI Scheduling:

I Course scheduling [Picard et al., 2005]I Manufacturing control [Clair et al., 2008]

I Frequency assignment [Picard et al., 2007]I ...

Self-* and multi-agent systems 17

Page 24: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Idea

[Picard and Glize, 2006]

Self-* and multi-agent systems 18

Page 25: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Course Scheduling [Picard et al., 2005]

I Dynamic solver for university scheduleI Constraints can be updated at run-timeI Schedules are iteratively built

Self-* and multi-agent systems 19

Page 26: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Course Scheduling [Picard et al., 2005]

I Dynamic solver for university scheduleI Constraints can be updated at run-timeI Schedules are iteratively built

Self-* and multi-agent systems 19

Page 27: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Manufacturing Control [Clair et al., 2008]

I Increasing decentralisation to decrease the impact ofperturbations

I Machines are agentified are cooperate to find an optimal taskassignment and to respond to commands

I Benchmark of the Colline group to compare self-organisingapproaches

Self-* and multi-agent systems 20

Page 28: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Manufacturing Control [Clair et al., 2008] (cont.)

[Clair et al., 2008]

3 cooperative behaviour leads to better results for unknowncommands

7 more messages than classical distributed approaches (ABT,AWCS)

0

20

40

60

80

100

0 20 40 60 80 100 120 140 160 180

Proc

esse

d co

ntai

ners

Fabrication cyclesAmasCOP

ABTAWCS

ABTCOPAWCSCOPETTO4MC

DAmasCOP

Self-* and multi-agent systems 21

Page 29: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Contents

1 Introduction

2 Autonomic and Self-*

3 Collective Robotics

4 Problem Solving

5 Mechanical Design

6 Conclusions

Self-* and multi-agent systems 22

Page 30: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Mechanical DesignFP5 European Project SYNAMEC

Self-* and multi-agent systems 23

Page 31: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Mechanical Design [Capera et al., 2004, 2005]FP5 European Project SYNAMEC

Example of self-assembly and self-tuning

Self-* and multi-agent systems 24

Page 32: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Contents

1 Introduction

2 Autonomic and Self-*

3 Collective Robotics

4 Problem Solving

5 Mechanical Design

6 Conclusions

Self-* and multi-agent systems 25

Page 33: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Conclusions

I Variety of inspirationsI Multi-agent based methodologies to design adaptive systems

I Bottom-up approachI Environment modellingI Agent designI Self-* rules specification

I Distributed solving/optimisation3 Adaptation to dynamics3 Problem trace3 Anytime

I Simulation / ModellingI Numerous application fieldsI Projects

I Ambient intelligence (ex: crisis management)I Multi-disciplinary optimisationI Adaptive manufacturing and coordinationI ...

Self-* and multi-agent systems 26

Page 34: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Conclusions (cont.)

Opening-up to Health DomainI Scheduling and resource allocation for medical staff

I Adaptation to dynamicsI Encapsulation of data and locality principle→ privacy

I Simulation of complex systemsI Hospital viewed as an ecosystemI Computational Biology

I e.g. microMega projectI e.g. Paul Bourgine’s works

I Molecule (Un)foldingI Collective robotics

I e.g. as in iWARD projectI Ambient Intelligence

I Infrastructure to help medical staff in crisis managementI e.g. AmICriM project

I ...

Self-* and multi-agent systems 27

Page 35: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

Questions ?

Self-* and multi-agent systems 28

Page 36: Self-* and multi-agent systemspicard/files/emse08autonomic.pdfSelf-* and multi-agent systems Applications to collective robotics and problem solving Gauthier Picard SMA / G2I / École

Introduction Autonomic and Self-* Collective Robotics Problem Solving Mechanical Design Conclusions References

References

E. Bonabeau, M. Dorigo, and G. Theraulaz. "Swarm Intelligence: From Natural to Artificial Systems". Oxford University Press, 1999.

D. Capera, M.-P. Gleizes, and P. Glize. Mechanism Type Synthesis based on Self-Assembling Agents. Journal of Applied ArtificialIntelligence, 18(9-10):921–936, 2004.

D. Capera, G. Picard, M.-P. Gleizes, and P. Glize. A Sample Application of ADELFE Focusing on Analysis and Design : The MechanismDesign Problem. In M.-P. Gleizes, A. Omicini, and F. Zambonelli, editors, Fifth International Workshop on Engineering Societies in theAgents World (ESAW’04), 20-22 October 2004, Toulouse, France, volume 3451 of Lecture Notes in Artificial Intellignece (LNAI), pages231–244. Springer-Verlag, 2005.

G. Clair, M.-P. Gleizes, E. Kaddoum, and G. Picard. Self-Regulation in Self-Organising Multi-Agent Systems for Adaptive and IntelligentManufacturing Control. In Second IEEE International Conference on Self-Adaption and Self-Organization (SASO 2008), Venice, Italy,20-24 October 2008. IEEE Computer Society, 2008.

G. Picard and M.-P. Gleizes. Cooperative Self-Organization to Design Robust and Adaptive Collectives. In Second InternationalConference on Informatics in Control, Automation and Robotics (ICINCO’05), 14-17 September 2005, Barcelona, Spain, Volume I,pages 236–241. INSTICC Press, 2005.

G. Picard and P. Glize. Model and Analysis of Local Decision Based on Cooperative Self-Organization for Problem Solving. Multiagent andGrid Systems – An International Journal (MAGS), 2(3):253–265, 2006.

G. Picard, C. Bernon, and M.-P. Gleizes. Emergent Timetabling Organization. In Multi-Agent Systems and Applications IV - 4th

International Central and Eastern European Conference on Multi-Agent Systems (CEEMAS’05), 15-17 September 2005, Budapest,Hungary, volume 3690 of Lecture Notes in Artificial Intelligence (LNAI), pages 440–449. Springer-Verlag, 2005.

G. Picard, M.-P. Gleizes, and P. Glize. Distributed Frequency Assignment Using Cooperative Self-Organization. In First IEEE InternationalConference on Self-Adaptive and Self-Organizing Systems (SASO’07), Boston, Mass., USA, July 9-11, 2007, pages 183–192. IEEEComputer Society, 2007.

Self-* and multi-agent systems 29