29
Chapitre 5 : Introduction aux architectures des Systèmes Multi-Agents Pr. Imade Benelallam www.benelallam.org 1

Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Chapitre5:IntroductionauxarchitecturesdesSystèmes

Multi-AgentsPr.ImadeBenelallamwww.benelallam.org

1

Page 2: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Objectifs

• Comprendre:• Lesconceptsdéfinissantleparadigmeagent;• L’utilitédecetteapprochepourledéveloppementdecertainesapplicationsinformatiques;• LapositiondecettetechnologieparrapportàlaProgrammationObjet;• Laformalisationdesagentsetdeleursinteractionsl’aidedelatechnologiedeprogrammationparcontraintes.

2

Page 3: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Plusd’information ?

• JacquesFerber,lessystmesmulti-agents,InterEditions,1995.• J.P.Briot etY.Demazeau (Editeurs)Principesetarchitecture des Systmesmulti-agents,Hermes,2001.• MichaelWooldridge,AnIntroduction toMultiagent Systems,JohnWiley&SonsEditor,2002.ISBN047149691X

• fipa.org :http://www.fipa.org• agentlink.org :http://www.agentlink.org• multiagent.com :http://www.multiagent.com• Outils:www.agentbuilder.com/AgentTools/

3

Page 4: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Introductionintuitive

4

Page 5: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Unagent

• « Onappelleagentunsystèmemécanique,biologique oulogiciel quiinteragitavecsonenvironnement» .AnneNicole.• Parexemple:

• Uneimprimantepeutêtrevuecommeunagentmécaniquequiréagitàdescommandesetproduitdesactionsenretour;• Lesplantes,lesanimaux,leshumainssontdesagentsbiologiquesayantplusd’autonomie,quisetransformentetquitransformentleurenvironnement;• LesCrawlers sontdesagentslogicielsetdesprogrammesautonomes,misenroutesurdesréseauxetdesmachinespourréaliserdestachesd’unemanièreautonome.

5

Page 6: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Unsystèmemulti-agents

• « UnSystèmeMulti-Agents(SMA)comporteplusieursagentsquiinteragissententreeuxdansunenvironnementcommun.Certainsdecesagentspeuventêtredespersonnesouleursreprésentants(avatars),oumêmedesmachinesmécaniques.S’ilyamoinsdetroisagents,onparleplutôtd’interactionhomme/machine,oumachine/machinequedesystèmesmulti-agents.»AnneNicole.

6

Page 7: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

PourconcevoirunSMA,ilfautdéfinir

• unmodèledeSMA• lemodèledechacundesagentsquivontentrerenaction(niveaumicroscopique);• définirleurenvironnementetleursinteractions(niveaumacroscopique);• définirlesorganisationssociales(niveaumacro)quilesstructurent.

• unmodèleconcretdeSMA• quicrée,initialiselesagents,• installeleurorganisationet• lancelesagentsquidoiventintervenirpouruneexécutionparticulière.

7

Page 8: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

RôlesdesSMA

• Résoudreunproblèmedemanièredistribuée:systèmesmulti-experts.• Lesactionsdesagentssontdestransformationsd’objetsliéesàladescriptiond’unproblème.

• agentsplutôtrationnels• Simulationdephénomènescomplexes.

• Lesagentssimulentdesactionsphysiques,biologiquesousocialesquiproduisentdesmodificationsdumondereprésenté.Ex:simulationdelapêchedansledeltaduNiger,desépidémies,écosystèmes(proies/prédateurs).

• Agentsplutôtréactifs.• Géreretmaintenirunenvironnementdetravail.

• Lesactionsphysiquesousocialesréaliséesparlesagentssontdesactionsréelles,ellesévoluentdansletempsetmodifientlemonde:robotsfootballeurs,agentsnégociantunrendez-vousauprofildel’utilisateur.

• Agentsplutôtcognitifsetsociaux.

8

Page 9: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

CaractéristiquesdesSMA

• Chaqueagentadesinformationsoudescapacitésderésolutiondeproblèmeslimitées,ainsichaqueagentaunpointdevuepartiel;• Lesdonnéessontdécentralisées;• Lecalculestasynchrone.

9

Page 10: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

PropriétésclésdesAgents

• Autonomie• Réactivité• Communication• Aptitudesociale• AgentIntelligent• Pro-activité• Apprentissage• Mobilité

10

Page 11: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

DisciplinesdeRechercheContribuantauxSMA

11

Page 12: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

IAetArchitecturedesSystèmesExperts

12

Page 13: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Rappelssurl’IntelligenceArtificielle?

• BUTDEL’IA:doterlesmachinesdecapacitéshabituellementattribuéesàl’intelligencehumaine:• jouerauxéchecs,• parler,• traduireuntexte,• conduireunvélo,• amenerlepetit-déjeuneraulit,• reconnaîtreunamisurunephoto.

13

Page 14: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Qu’est-cequ’unemachineintelligente?

14

Page 15: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Caractéristiquesdel’IA

• Manipulationd’informationssymboliques(concepts,règles,objets)identiquesà ceuxhabituellementprisencompteparunêtrehumainlorsqu’ilraisonne.• Baséesurdesméthodesheuristiquesqui:

• guidentlarésolutionverslessolutionslesplusvraisemblables,économisentletempsdecalculcarélaguentl’ensembledescheminsderésolutionpossibles,• peuventêtreremisesencause.• permettentd’envisagerdesproblèmescomplexes.

• Baséesurunegrandequantitédeconnaissances

15

Page 16: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Domainesd’applicationdel’IA

• Démonstrationautomatiquedethéorèmes• Traitementdulangagenaturelécrit• Traitementautomatiquedelaparole:compréhension,synthèse• Interprétationd’imagesetvisionparordinateur• Robotique• Jeux• SystèmesExperts• Apprentissage

16

Page 17: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Qu’est-cequ’unsystèmeexpert?

• « Lessystèmesexpertssontdeslogiciels,bientôtaussidesmatériels,destinésàremplacerouassisterl’hommedansdesdomainesreconnuesparuneexpertisehumaine»

17

Page 18: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Architectured’unsystèmeexpert

18

Page 19: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

ExempledeSEenProlog

19

Page 20: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

ExempledeSEenProlog

• /*Traductiond'enonces*/• aime(marie,vin).• aime(pierre,X):- aime(X,vin).• vole(X,Y):- voleur(X),aime(X,Y).• voleur(pierre).• /*vole(X,Y)donneX=pierreetY=marie*/

20

Page 21: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

ArchitecturedesSMAenProgrammationparContraintes

21

Page 22: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

DéfinitiondelaPPC(ProgrammationParContraintes)

22

Page 23: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Définitiond’unecontraintes

23

Page 24: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

DéfinitiondeCSP

24

Page 25: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

ExempledeCSP

25

Page 26: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

Définitiond’unDisCSP

26

Page 27: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

ApprocheSynchrone:SBT

27

Page 28: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

ApprocheAsynchrone :ABT[Yokoo etal.1992]

28

Page 29: Chapitre 5 : Introduction aux architectures des Systèmes ... · Pour concevoir un SMA, il faut définir • un modèle de SMA • le modèle de chacun des agents qui vont entrer

ApprocheAsynchrone :ABT[Yokoo etal.1992]

29