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
Documents similaires
-
13
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Mar 24, 2022
- Catégorie Heavy Engineering/...
- Langue French
- Taille du fichier 2.1969MB