Introduction aux systèmes multi-agents : Du paradigme à la technologie pour la

Introduction aux systèmes multi-agents : Du paradigme à la technologie pour la conception de systèmes intelligents Amal El Fallah Seghrouchni Amal.Elfallah@lip6.fr Plan de la présentation Introduction Exemple Agents et SMA Fondements du paradigme multi-agents Positionnement scientifique des SMA Interaction et protocoles d’interaction I.A. & A.I. Intelligence artificielle = I.A. L’I.A. est la science et l’ingénierie de la construction de machines intelligentes →comportements calculables proches de ceux des humains et intelligents ⇒Concept d’agent intelligent à la base de l’I.A. une machine est dite intelligente si elle arrive à se faire passer pour un humain auprès d’un autre humain (test de Turing 1950) Qu’est-ce qu’un agent intelligent ? Agent Objet et Processus L’agent intelligent est un penseur isolé L’approche I.A. versus approche traditionnelle Pour commencer …. Un exemple de mission aérienne Une Mission d’Interception Ordre décollage Données d ’interception Décollage CAP Navigation guidée Tir Triangulation Localisation Retour à la Base Réorganisation Detection Détection Besoin de réorganisation et/ou de re- planification quand de nouveaux événements se produisent Ce transparent est la propriété intellectuelle de la société Dassault Aviation. Il ne peut être utilisé, modifié, reproduit ou communiqué sans son autorisation. Dassault Aviation proprietary data. Entités autonomes possédant une vision partielle de leur environnement Entités partageant un but global soumis à des contraintes fonctionnelles et de ressources Entités poursuivant des objectifs individuels et collectifs Comportements assurant Gestion des ressources du système Ressources continues et discrètes Prise en compte de nouveaux événements (selon priorités) Coordination (actions, plans, décisions) Agents autonomes Contrôle Gestion distribuée de ressources Planification réactive Décision multi-agent Apport des agents  Approche méthodologique pour la conception  Modélisation intuitive qui prend en compte les différents acteurs dans leur aspect statique et dynamique  Modélisation multi niveaux (macro et microscopique, individu- groupe-foule)  Intégration des opérateurs humains : interaction et outil d’aide à la décision  Conception modulaire et incrémentale  Outils de conception et/ou simulation  Agents stationnaires ou mobiles  Protocoles d’interaction avec l’humain : haut niveau, explication et argumentation  Langages de programmation  Plateformes de simulation, de développement ou de déploiement Drones Smart Cockpit Smart * Robot Teams Réseaux intelligents Réseaux de Satellites SoftBots De nombreux domaines d’applications Jeux vidéo Jeux sérieux Web Simulation … Une définition de l’agent  [Ferber 95] :  Un agent est une entité réelle ou virtuelle, évoluant dans un environnement, capable de le percevoir et d'agir dessus, qui peut communiquer avec d'autres agents, qui exhibe un comportement autonome, lequel peut être vu comme la conséquence de ses connaissances, de ses interactions avec d'autres agents et des buts qu'il poursuit.  Un système multi-agents (SMA) et une organisation d’agents (société) Propriétés de l’agent  Réactivité  Percevoir l’environnement et répondre, en temps réel, aux changements  Proactivité  Capacité de prendre l’initiative / comportement orienté but  Sociabilité  Capacité d’interagir avec d’autres agents ou utilisateurs  Autonomie Autonomie : notion relative mais centrale  Pourquoi l’autonomie ?  Une réponse au besoin de la robustesse  Vision partielle du monde  Partage de l’environnement avec d’autres  Coopération ou compétition  Besoins ?  Capacité d’agir sans l’intervention humaine directe  Auto-Contrôle de son état et actions Quelques conséquences de l’autonomie  Un agent peut décider de ne pas traiter un message  En raison de sa charge de travail  Parce que des buts plus importants doivent être satisfaits  Les engagements ne sont que des promesses  Les agents doivent anticiper le non respect des engagements Un agent autonome Prendre ses décisions « soi-même » Avoir le pouvoir de dire non ! Ne pas dépendre des autres (au moins pour ses décisions)  Un concept très « humain » Mais comment programmer l’autonomie ? Cycle de base d’un agent Perçoit l’environnement Peut agir sur l’environnement Agents réactifs  Pas de représentation explicite  architectures simples  stimulus -> réponse  Organisation implicite/induite  auto-organisation, ex : colonie de fourmis  Communication via l’environnement  ex : perception/actions sur l’environnement, phéromones de fourmis  Grand ou très grand nombre d’agents  redondance  robustesse  Emergence  Validation expérimentale Cycle de contrôle d’un agent réactif Exemple implementé sous forme d’en ensemble de règles de type condition/action condition-action rules set of percepts do { percepts := see(); state := interpret_input(percepts); rule := match(state,rules); execute(rule[action]); } while (1); Ex. Proies-Prédateurs  Le modèle proie-prédateur permet d’étudier l’évolution de populations entre groupes d'agents concurrents.  Chaque agent possède un niveau d’énergie.  Energie nulle => mort de l'agent  A-Chasser : Un prédateur se déplace à la recherche d'une proie.  coût de mouvement : l’énergie est décrémentée  A-Se nourrir : Si un prédateur rencontre une proie, il la consomme.  bonus : l’énergie est augmentée en fonction de la proie  A-Se reproduire : Un agent peut se reproduire si le niveau d’énergie est suffisant (seuil de reproduction).  L’énergie de l'agent est divisée par 2 entre lui et son/ses clones  De la nourriture (source d’énergie) non agent peut être consommée et se régénérer Agents cognitifs  Représentation explicite  Soi  Connaissances (knowledge) ou croyances (beliefs)  Buts (intentions)  Tâches, plans  Engagements, intentions  Compétences  Environnement  Autres agents  Architectures complexes, souvent modèle logique (ex : BDI, Agent0)  Organisation explicite  allocation et dépendances tâches  partage des ressources  protocoles de coordination/négociation  Communication explicite, point à point, élaborée (ex : KQML)  Petit/moyen nombre d’agents  Certaines validations formelles possibles Cycle d’un agent délibératif (minimal)  Exemple s : state, eq : event queue s := initialize(); do { options := option_generator(eq,s); selected := deliberate(options, s); s := update_state(selected,s); execute(s); eq := see(); } while(1); Agent rationnel délibératif  Perception  Analyse  Décision  Action Agent intentionnel BDI (Belief, Desire, Intentions) Agent Humain Croyances – Perception et connaissances du monde Buts (ou désirs) Expérience et comportements accumulés Rationalité pratique Plusieurs architectures, langages de programmation et plateformes commercialisées action action action action perception perception perception perception Environnement Environnement Environnement Environnement Agent Agent Agent Agent Queue des événements Intentions Interpréteur Interpréteur Interpréteur Interpréteur plans intentions Intention à exécuter actions externes actions externes actions externes actions externes actions internes événements Perception Perception Perception Perception Croyances Bibliothèque de plans Structure Procédure Agent Cycle de contrôle d’un agent BDI  b : beliefs, g : desires, i : intentions, eq : event queue (b,g,i) := initialize(); repeat options := option_generator(eq,b,g,i); selected := deliberate(options, b,g,i); i := selected ∪ i; execute(i); eq := see(); b := update_beliefs(b,eq); (g,i) := drop_successful_attitudes(b,g,i); (g,i) := drop_impossible_attitudes(b,g,i); forever Equipe SMA – 25/4/06 Un continuum …  Représentation du monde  Symbolique  Comportement  Orienté but  Fondements  I.A.  Denett, Bratman..  Représentation du monde  Sub-symbolique (perceptions)  Comportement  Réflexe  Fondements  Inspiration éthologique, biologique ,..  Brooks Agent cognitif réactif intentionnel rationnel normé coopératif compétitif Cognition - + Architectures multi-agents  Agents réactifs  agents : parties du problème lui-même  décomposition structurelle  approche ascendante  comportement collectif émergent  Agents cognitifs (dits aussi délibératifs)  agents : experts, solveurs  multi-expert  décomposition fonctionnelle  approche descendante  coordination explicite  Architectures hybrides SMA cognitifs Ensemble d'agents cognitifs Autonomes en interaction De l’individuel au collectif I.A. vers I.A.D. SMA Cognitifs : accent mis sur l'action, la décision et l'interaction dans un contexte collectif (inspiration socio-mimétique) Capacités d’apprentissage et d’adaptation à l’environnement SMA cognitif Agent cognitif Définition : Entité autonome, physique ou virtuelle, capable d'agir, située dans un environnement avec une certaine persistance temporelle, pour satisfaire ses buts ou objectifs en fonction de ses ressources et compétences. Systèmes multi agents  Un SMA : collection organisée d’agents A: agents, E: Environnement, I: interaction et O: organisation  Propriétés :  Chaque agent a des informations et des capacités limitées pour résoudre un problème;  Pas de système central de contrôle  Données décentralisées  Calcul asynchrone  Besoin d’interaction Positionnement scientifique des SMA Origine - I.A.  Concept d’agent à la base de l’Intelligence Artificielle  [Wiener 48] : Approche cybernétique  Le contrôle de la machine ou le contrôle par la machine ?  [Turing 56] : « Can a machine think ? »  Connaissance de la machine ou connaissance par la machine ?  Deux points de vue sur la machine : L’approche traditionnelle et l’approche I.A. Agent (?) Objet et Processus L’I.A.D.  Paradigme I.A. = « le penseur isolé »  Exemple type : un système expert  Deux limitations de l’I.A. classique :  L’ancrage des symboles I.A.S. : Intelligence Artificielle Située  Relation agent / environnement  Adaptation, apprentissage  La distribution des problèmes I.A.D. : Intelligence Artificielle Distribuée  « La société de l’esprit » [Minsky 88]  Coopération entre agents, SMA I.A. I.A.S. I.A.D. Agent et SMA Limites de l’I.A. I.A.D. – Pourquoi distribuer ?  La plupart des applications ou problèmes réels font intervenir des systèmes physiquement et fonctionnellement distribués.  Exemple : I.A.D. – Pourquoi distribuer ?  Distribution fonctionnelle dans les activités humaines (comme la uploads/Ingenierie_Lourd/ f1-pdf.pdf

  • 13
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager