1.sma

1 041 vues

Publié le

0 commentaire
2 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 041
Sur SlideShare
0
Issues des intégrations
0
Intégrations
4
Actions
Partages
0
Téléchargements
74
Commentaires
0
J’aime
2
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

1.sma

  1. 1. Jean‐Paul Sansonnet LIMSI‐CNRS – jps@limsi.Fr Concepts d’agents Introduction aux concepts et aux  architectures des Systèmes multi‐agents
  2. 2. Plan de l’exposé Influences historiques ― Les deux Intelligences Artificielles ― Les problématiques Multi‐agents ― Domaines d’application des SMA Concepts fondamentaux des agents ― Entité située ― Entité autonome ― Le monde est ouvert ― Population d’agents ― Modèles d’interaction ― Manifestation de l’Intention Architectures d’agents ― Pourquoi distribuer l’intelligence ? ― Les deux classes d’architectures parallèles ― Architectures à contrôle centralisé ― Architectures à contrôle distribué ― Agents réactifs et cognitifs ― Exemple d’agent réactif et cognitif ― Architectures de subsomption ― Architectures dynamiques de contrôleurs ― Les Véhicules de Braitenberg ― Architectures à Règles de Production ― Architectures à Blackboards ― Agents Epistémiques ― Conclusion Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 2
  3. 3. Influences historiques Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 3 Informatique Sciences Cognitives « Vers le Parallélisme » « Vers l’Humain » Algorithmique Distribuée Intelligence  Artificielle Sciences de l’Homme et de  la Société (SHS) Biologie et  Physique SIMD MIMD Numérique Symbolique Psychologie Linguistique Neurobio Biosphère IAD :  Intelligence Artificielle Distribuée SMA : Systèmes Multi‐Agents Sociologie  1985
  4. 4. Les deux Intelligences Artificielles Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 4 81/2 Vienner : Processus, Feedback Hebb : Neurones formels Von Neumann : Automates Perceptron, Holland : Algos génétiques Minsky, Papert :Réfutation du Perceptron Conway : Jeu de la Vie Hewitt : Acteurs 1950 1960 1970 1980 1990 2000 Langton : Automate autoreproducteur MLP: Perceptron multi‐couches Wolfram :Automates cellulaires Hillis : Connection‐Machine Minsky : Société de l’esprit Hewitt : Monde ouvert Langton : Artificial Life Brooks : Animats Hopfield, McClelland, Rumelhart : PDP : Renouveau perceptron McCarthy : Lisp GPS Winograd : SCHRDLU Colmerauer : Prolog Sussman : Machine‐Lisp (MIT) Fahlman : Réseaux sémantiques Smalltalk Sowa : Graphes Conceptuels Machines 5ème Génération Prolog,Lisp,…  Minsky : Frames PLC Hearsay II : Blackboards Kickpatrick : Recuit Simulé Turing : Test d’Intelligence Weizenbaum : ELIZA Searle : Chambre Chinoise Lorentz : Chaos InterViews M3L MAIA MEGA DAFT WEBAMBIANT IA  Symbolique  Séquentielle (GOFAI) IA Distribuée
  5. 5. Les problématiques Multi‐agents Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 5 Résolution de  problèmes Modélisation  et Simulation Interaction  Homme/Machine Génie Logiciel  Distribué Algos d’IAD (Intelligence Artificielle  Distribuée) Agents Assistants Mondes  d’agents Plateformes  multi‐agents Grain fin Grain fort Outils Applis
  6. 6. Domaines d’application des SMA Résolution distribuée de problèmes algorithmiques Problématique : Distribuer les algorithmes d’IA (RO, Planification, Contraintes, …) ― Introduction de la spatialité dans les heuristiques (Algos génétiques, …) ― Introduction de l’ adaptativité dans les heuristiques (Algos fourmi, …) Modélisation, Simulation et Analyse d’entités distribuées Problématique : Emergence, Morphogenèse, Apprentissage de Formes, Structures, Comportements ― Agents automates (à état corporel ― sans représentations) : agents situés (environnement médiateur), Artificial Life ― Agents informationnels (à KB du monde ― à représentations) : Modèles BDI, Simulation sociologique ― Agents humains (Collectifs humains médiés) : traces d’interactions formelles et/ou langagières, extraction de pratiques Applications Logicielles Distribuées Problématique : Déployer des services dans l’infospace ― Architecture dynamiques : plateformes agents, agents mobiles ― Agent Communication Languages (ACL), au dessus des protocoles objets‐distribués (RMI, CORBA) ― Travail coopératif : coopération (planification distribuée), négociation (répartition de ressources: brokers) Interaction et Communication avec des Humains Problématique : Ordinary People dans l’infospace ― Délégation de tâche (« Do it for me ») et/ou de rôle (« Act on my behalf ») ― Médiation : agents assistants d’interface (Help) agents avatars conversationnels agents ubiquistes : Ambiant. Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 6
  7. 7. Concepts fondamentaux des agents BODY : Dimension physicaliste  « Un agent est une entité autonome située dans un  environnement ouvert » Situation Autonomie Ouverture MIND : Dimension épistémique « Un agent est une entité en interaction avec d’autres agents  dans un champ social »  Population Interaction Intention Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 7 AGENT = BODY + MIND
  8. 8. Fonction = calcul décontextualisé Une fonction est une entité passive qui n’a pas de «  dehors » [il faut l’appeler pour qu’elle agisse] : ― Elle ne perçoit pas d’extérieur (normalement elle n’affecte pas  de variables globales), ― Elle n’a pas d’histoire (chaque exécution est indépendante des  précédentes) ― Elle n’agit pas sur les choses. Il n’y pas d’effet de bord ni sur les  arguments x, y (calculer z ne modifie pas x et y) ni sur les  variables globales BAD ! F[x_]:= (CPT++; x+CPT) CPT=1; Print[f[1]] ; Print[f[2]] 3 5 La variable globale CPT peut être vue comme un  environnement minimaliste pour F qui n’est plus une  pure fonction. Entité située Agent = agir in situ Un agent A0 est situé en (x,y) dans un espace et il possède  un voisinage : ― Il peut le percevoir localement et non globalement ― Il peut se le représenter ― Il peut agir sur cet environnement : Relativement : par exemple en se déplaçant Absolument : par modification de l’état physique ou mental des choses  du voisinage (choses = des objets, d’autres agents, des humains) Il existe une dimension temporelle (t) : Chaque  changement d’état de l’agent et/ou des choses modifie  l’environnement et fait progresser le temps. Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 8 F xi yi Zi temps y x Voisinage local de A0 A0 … espace
  9. 9. Un objet est réactif Un objet est une entité passive (ou réactive). Si personne  ne demande la valeur d’un attribut ou n’active une  méthode de l’objet, alors il ne se passe rien. Un agent est Proactif Un agent possède, en plus des attributs et méthodes, des  processus internes qui fonctionnent même en l’absence  de sollicitations externes. Un agent peut donc agir même  si personne ne lui demande rien. Entité autonome Un agent est persistant   Si un agent est proactif c’est d’abord parce qu’il est muni  d’au moins un but qu’il cherche à satisfaire de manière  persistante tant que : Il pense que c’est encore possible (pré condition logique) Il possède les ressources pour le faire (pré condition  physique) Un agent est adaptatif Face à un environnement perpétuellement changeant (Cf.  Ouverture), un agent doit constamment modifier le plan  qu’il poursuit pour atteindre un but. Pour cela : Il doit, de manière continue, percevoir et évaluer la  situation (contexte) de son action, Construire des représentations en cours même de  fonctionnement (c’est‐à‐dire être capable  d’apprentissage). Élaborer des plans dynamiques qui lancent des processus  internes ou au contraire les stoppent. Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 9 Agent X Objet X A=1 B=2 Sq(x) := x2 Div[x,y) := x/y Attributs Méthodes Get/Set Call Processus internes Proactivité Get/Set Call {7,7} Goal(7,7)
  10. 10. Le monde est ouvert La programmation classique est fermée Dans l'espace : le programmeur a une connaissance globale du logiciel à construire. Le principe même de l'analyse descendante  d'application ou de la spécification d'application est de partir du haut (où on voit tout) puis de décomposer en parties à  programmer. Dans le temps : bien que la notion de cycle de vie d'un logiciel introduise une dose de dynamique, il s'agit plutôt de corriger et de  maintenir un logiciel spécifié une fois pour toutes. Dans la modalité : il existe une volonté de développer les applications de manière la plus homogène possible : mêmes personnes,  mêmes logiciels de développement. Dans la sémantique : Les applications ont une sémantique globale et  statique. Dans la complexité : Les applications sont bien délimitées et conçues de manière analytique. Ceci facilite le découpage en parties  pour leur mise au point et l'étude de leur comportement qui est considéré comme devant être totalement prédictible. A l'opposé, la nouvelle programmation est ouverte (Hewitt 86 « Offices are open systems ») L'ouverture est une propriété inhérente des systèmes d'information actuels. Elle n'est voulue par personne mais c'est un état des  choses que l'on ne peut plus se permettre d'ignorer. Plutôt que d'essayer de l'enrayer, il vaut mieux essayer de la maîtriser voire en  tirer avantage. Cette ouverture s'exprime : Dans l'espace : les systèmes d'information actuels sont intrinsèquement distribués (vision locale obligatoire) et se développent de  manière agrégative. Dans la modalité : les deux points précédents ont pour conséquence directe que les systèmes d'information actuels sont de plus en  plus hétérogènes : environnements de programmation ; points de vues adoptés sur un même sujet : fonctionnel, matériel, structurel  etc. ; applications hybrides. Dans la sémantique : les multiples points de vue engendrent autant de mondes sémantiques hétérogènes les uns aux autres. Dans la complexité : les systèmes actuels présentent des interactions très intriquées ce qui les rend difficiles à prédire et  à analyser ― dans l'espace : il est difficile de décomposer le système en parties déboguables indépendamment ; si on coupe un système en deux on le “tue”. ― dans le temps : il est difficile d'analyser des systèmes en fonctionnement en continu ; si on arrête un système pour l'observer on le “tue”. Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 10
  11. 11. Population d’agents Variables globales et locales En programmation classique les variable globales sont  accessibles à tous et les variables locales ne sont  accessibles à personne. Global X, Y Func foo Local a,b … a … … X … Func bar Local u,v,w … u,v … … X … Dans un SMA rien n’est complètement global L’environnement étant vaste (sans compter le problème de  la représentation récursive – je sais que je sais que je sais...  ―) et ouvert, il n’est pas possible en un lieu donné (par  exemple, dans un agent) de stocker toute la représentation  du monde. Par contre, un agent peut se déplacer ou  encore interagir avec d’autres agents qui sont dans son  voisinage pour explorer l’environnement. Dans un SMA rien n’est complètement local Pour un agent donné, toutes ses entités (informations,  processus, buts, …) sont locales mais elles restent  accessibles à l’introspection par d’autres agents. Le moyen  d’accéder à cette information passe par les interactions  entre les agents. Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 11 Champ Social Ouvert Agent  omniscient  (Alta Vista) Voisinage  d’ordre 1 Voisinage  d’ordre 2 Diamètre social X,Y a, b u,v,w
  12. 12. Modèles d’interaction 1. Interaction Agent ↔ Agent Niveau communication ― Transactions : Agent Communication Languages (ACL) ― Conversation Policies Niveau connaissance (Knowledge Level) ― Echange de connaissances : KIF, XML, DAML ― Hétérogénéité sémantique 2. Interaction Humain ↔ Agent ― Interactions langagières : Analyse de requêtes en LN ― Raisonnement sur le structure et le fonctionnement ― Traitement de la référence (Dérive cognitive, CommonSense) 3. Interaction Multi‐agents ― Résolution distribuée de problèmes (IAD) : coopération, conflits,  négociation, … ― Extraction de comportements sur les flots d’interaction 4. Interaction Multi‐humains ― Modalité langagière : chat, mail, forums, formulaires, … ― Médiation par les objets informationnels ― Suivi de conversations ― Extraction de pratiques sociales Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 12 Collectifs médiatisésCoopération / compétition Dialogue Homme‐MachineACL Agent Humain 1‐1 N‐N
  13. 13. Typologie des interactions Interaction Directe Action directe (interdite) Un agent peut agir directement sur l’état physique d’une chose de  son environnement (objet, autre agent, humain). Cela sera interdit  dans un SMA : Requête (formelle ou langagière) L’agent envoie une requête à un interlocuteur qui est un autre  agent ou à un humain de son environnement (pas à un objet !).  L’interlocuteur interprète cette requête et la satisfait ou non en  fonction de sa propre subjectivité (état physique et mental) : Interaction Indirecte Blackboard (base de connaissances) Plusieurs agents déposent et recueillent des objets ou des  informations dans une partie de l’environnement prévue à cet effet.  Cette partie commune est appelée « Blackboard » Partage de ressources (Stygmergie) Les modèles de population animales par exemple sont fondés sur  une compétition pour une quantité de ressources à partager qui est  fixée : la ressource sert alors de médiateur entre les agents. Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 13 A=1 B=2 C=3 Agent X Agent Y Requête « Could you rise your BLOB  please? » BLOB ? Ah …  B. No I won’t A=1 B=2 C=3 Agent X Agent Y Y[B]++ 3 Blackboard P[x] Q[y] R[u] Q[u] Zone de conflit de ressources Agent X Agent Y
  14. 14. Manifestation de l’Intention L’Intention dans la Communication Les agents interagissent au moyen de Langages de Communication Agent (ACL) qui reflètent certaines des  propriétés de la langue humaine : La notion de Speech Act (Austin‐Searle‐Bratman‐Vanderveken) permet à un agent A de communiquer à un agent  B non seulement une proposition P mais aussi l’Intention que A prend au sujet de P et de B : Soit P = « Il pleut »  INFORMA,B [ BELA(P) ] = « Je crois‐sincèrement, et je t’informe que il pleut »  Conséquences :  1. B sait que A croît‐sincèrement P (formellement INFORM impose la sincérité) 2. B sait que A a voulu informer B au sujet de P (coopération ? menace ? …) 3. B choisit ou non d’adopter la croyance de P (il croît à son tour P) ou non (P = « Les martiens sont des êtres verts ») 4. B réagit à l’impact que 1‐3 peut avoir sur ses propres stratégies. Raisonnement sur les traces d’interactions Les agents réifient les interactions dans la mesure où ils sont capables de les traiter comme des données qu’ils  enregistrent et sur lesquelles ils sont capables d’effectuer des traitements : 1. Stockage des flux d’interaction = construction de traces ; 2. Extraction de comportements à partir de la détection de régularités dans les traces ; 3. Réaction aux comportements perçus, vus comme des « Intentions‐de ». Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 14
  15. 15. Architectures d’agents Architecture informatique parallèle Parallélisme : modèles à contrôle centralisé (SIMD) à grain fin Distribution : modèles à contrôle décentralisé (MIMD) à grain fort Architectures réactives Fondées sur le physicalisme (embodiment) Modèles à base d’équations différentielles, continues ou discrètes (automates cellulaires) Approches ascendantes des concepts (émergence, subsomption, …) Parallélisme à grain fin Architectures cognitives Fondées sur les représentations symboliques (épistémique) Modèles à bases de règles symboliques et de logique Approches normatives des concepts (échange de connaissances) Distribution à grain fort Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 15
  16. 16. Pourquoi distribuer l’intelligence ? Les problèmes sont intrinsèquement physiquement distribués Nature intrinsèquement parallèle de la biologie et de la physique Nature intrinsèquement concurrente de la sociologie et de la psychologie Les problèmes sont intrinsèquement fonctionnellement distribués Ingénierie : satellite = multi savoir‐faire  / multi expertises Hétérogénéité des savoirs Les réseaux de communication imposent une vision distribuée Internet, Bases de données mondiales, Web Sémantique « Penser global agir local » La complexité impose une vision locale Notion d’espace informationnel   Topologie : local ≠ global Méthodologie Global  Local (répartir) et Local  Global (Apprendre) Nécessité d’adaptation (locale) Changer un central téléphonique ne met pas en péril le réseau mondial Pas « d’effet papillon ». Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 16
  17. 17. Les deux classes d’architectures parallèles Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 17 Dans le modèle SIMD, les agents ont tous la même structure : comme les  instances d'une même classe, ils possèdent les mêmes variables d'état  (slots) et le même comportement (mêmes méthodes). Au niveau de  l'interaction avec les autres agents, on retrouve cette uniformité : le réseau  interactif est régulier, homogène, symétrique et le protocole d'interaction  est unique. Au cours du fonctionnement, seules les valeurs d'état des  agents sont différentes et ce sont elles qui dessinent la forme du résultat  attendu. On parle alors d'Emergence ou d'Intelligence Collective. Dans le modèle MIMD, les agents ont tous une structure différente :  ils ont des variables d'états différentes et ils exécutent des  programmes différents. Au niveau de l'interaction, il en est de même  ;les échanges sont hétérogènes : en temps, en vitesse, en quantité, en  topologie ... Chaque agent possède en quelque sorte sa propre  personnalité : il a sa propre spécialité, il peut résoudre un type de  problème particulier. On parle alors de Sociétés d'Experts ou de  Système Multi Agents (SMA). SIMD MIMD Contrôlecentralisé Contrôle Décentralisé Algorithmique  ParallèleSystèmes  Concurrents
  18. 18. Architectures à contrôle centralisé Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 18 NEST [f,  S0 , n] Scalaire Multiple Newton Recuit May, … Topologie : Array Voisinage Interactions statiques Contrôle synchrone ACs, ALife, RNs … ¬ Topologie : Set ¬ Voisinage (Ether)  Interactions random Contrôle asynchrone Ags, Cham, Gamma 0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1 Point de depart λ = 2.9 Situation S0 Domaine : Modélisation et simulation de Processus Dynamiques Discrets. Principe : Algorithme itératif (Nest) exécuté sur une seule machine.
  19. 19. Architectures à contrôle distribué Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 19 Knowledge Level Software Level Hardware Level Collection dynamique  d’agents Graphe statique de tâches Réseau matériel de  machines T1 T4 T3 T2 T.. M1 M2 M3 M… M… Réseaux intranet Internet global (Web) Multitâches Communication Protocoles Routage Pratiques CSP de Hoare RMI CORBA … Transactions Polices n n 2
  20. 20. Agents réactifs et cognitifs Agents Réactifs Les agents réactifs sont issus de la modélisation  physicaliste du monde : ils sont assimilés à des  fonctions de transition : Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 20 St T St+1 = T(St) Fonction de  transition Situation • Modèle de type ‘blackbox’ (fonctions) • Comportements réflexes simples • Représentations purement sensorimotrices • Pas d’anticipation. • Comportements téléonomiques (liés à des buts) • Représentations symboliques • Planification  Raisonnement sur les représentations Représentations ‐ du monde ‐ de soi (buts) Actions sur  le monde Retours d’effort sur les actions Agents Cognitifs Les agents cognitifs sont issus de la modélisation  mentaliste du monde : ils sont assimilés à des systèmes  experts :
  21. 21. Exemple d’agent réactif et cognitif Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 21 Rob réactif La fonction de transition T est un ensemble non ordonné de règles de type Si condition alors action qui sont exécutées dans une boucle infinie et non déterministe  : Si DP ∧ PO Alors SORTIR Si DP ∧ PF Alors OUVRIR Si DP ∧ PFC ∧ C Alors DEVEROUILLER Si DP ∧ PFC Alors RANDOM-WALK Si DC ∧ C Alors RANDOM-WALK Si DC ∧ ¬ C Alors PRENDRE-CLE Question :  prouver que le système {règles + CI} où CI = conditions initiales quelconques,   converge c’est‐à‐dire que Rob finit bien par sortir au bout d’un « certain temps ». Rob cognitif L’agent possède un plan P pour sortir qu’il exécute de manière séquentielle et  déterministe quelle que soit sa position de départ et quel que soit l’état initial du  monde : ALLER-A DP ― appel du sous‐plan ALLER‐A(x,y) Si PO Alors SORTIR Sinon Si PF Alors OUVRIR;SORTIR Sinon Si PFC Alors Si C Alors DEVEROUILLER;OUVRIR;SORTIR Sinon ALLER-A DC PRENDRE-CLE ALLER-A DP DEVEROUILLER;OUVRIR;SORTIR Porte Serrure DP DC Porte ouverte : PO Porte Fermée : PF Porte Fermée à clé : PFC Rob Rob possède la clé : C Rob ne possède pas la clé : ¬ C Problème :  « Rob le robot  doit sortir  de la pièce ». Position DP = Devant la Porte Position DC = Devant la Clé
  22. 22. Architectures de subsomption Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 22 L’architecture de Subsomption de Rodney Brooks (1986) a été  proposée pour construire une nouvelle génération de Robots  non cognitifs comme c’était le cas dans les années précédentes  mais fondés sur des couches organisées de bas en haut, à  partir des organes sensorimoteurs, en une hiérarchie de  modules à comportement limité. Chaque niveau a un rapport  de dominance sur le module de niveau inférieur : Behavior N Behavior N‐1 S R inhibition S R N‐2 Eviter les objets Récupérer de l’énergie Optimiser les chemins Construire une carte Explorer Prendre et déposer des objets Avancer de manière aléatoireCapteurs Effecteurs Agent hyper réactif : un  robot explorateur en  géologie Environnement Environnement
  23. 23. Architectures dynamiques de contrôleurs Architectures Connexionnistes L’influence des réseaux de neurones a été très vive dans les années  80‐90 et des architectures d’agents ont été proposés qui possèdent  un contrôleur basé sur un réseau de neurones formels : Architectures Evolutionnistes De même, les Algorithme Génétiques ont apporté des techniques  qui ont été utilisées pour « élever » (sélectionner par évolution  génétique) les meilleurs contrôleurs possibles pour un agent  donné. Attention, dans ce cas, on n’a pas un système multi agent  mais une population d’agents : à la fin, on choisit un seul agent : le  meilleur individu. Dans ce modèle : ― Les faits sont des chaînes binaires, ― Les règles intègrent en plus des jokers « # » qui représentent aussi  bien un 0 que un 1. Une règle prend en partie gauche un pattern qui matche les faits et  en partie droite « ce en quoi le fait doit être réécrit ». Plusieurs  règles peuvent matcher un même fait : c’est pourquoi on associe à  chaque règle un poids qui permet d’effectuer un choix aléatoire  biaisé entre les règles concurrentes : Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 23 Base de règles : 0.4 : 1#10 → 1001 0.8 : 01## → 0000 0.6 : 011# → 0110 Base de faits : 1101 0101 0011 … Algorithme génétique (Reproduction différentielle des règles) Perception Exécution Poids wi à déterminer ].[∑= ii xwFy Réseau de Hopfield Réseaux totalement Connectés Multi Layer Perceptron (MLP) Réseaux à couches 1 -1 F = Sigmoïde xi … Entrées Sortie y
  24. 24. Les Véhicules de Braitenberg En 1985, Valentino Braitenberg a écrit un livre intitulé « Vehicles – Experiments in Synthetic Psychology » qui propose un modèle  d’agent totalement réactif. Ce modèle a influence Brooks et fut  implémentée par Luc Steels en 1994. l’architecture de l’agent est  fondée sur la notion de système dynamique : les capteurs en  entrées sont directement reliés aux effecteurs de sortie par des  équations différentielles. Contrairement à l’architecture de subsomption de Brooks, où les  behaviors sont exclusifs et hiérarchisés (le niveau N inhibe les  niveaux <N). On a un paquet d’équations imbriquées d’où des  possibilités de développer des comportements chaotiques (au sens  des systèmes dynamiques). Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 24 Capteur Moteur gauche Moteur droit Câblage Inhibition « Peur » « Attirance » Capteurs  d’intensité  lumineuse a b c S R x y y dx/dt = F1 (a, b, c, x, y, z) dy/dt = F2 (a, b, c, x, y, z) dz/dt = F3 (a, b, c, x, y, z) ⎪ ⎪ ⎩ ⎪⎪ ⎨ ⎧ − −=+ − −=+ = 10 )()1( 10 )()1( : defaultGG GG defaultDD DD VV tVtV VV tVtV Avancer Moteur droit Moteur gauche Condition Initiale EffecteursCapteurs
  25. 25. Architectures à Règles de Production Agent = Système‐Expert Dans les architectures à base de Règles, on assigne un  système expert (ou système de règles) à un seul agent.  Un système expert est composé de trois parties  essentielles : ― Une base de faits (BF) qui contient la description des états  physiques et mentaux du monde, ― Une base de règles (BR) qui permet de déduire des faits à partir  d’autres faits, ― Un moteur d’inférence : ensemble d’heuristiques de  planification qui utilisent BF et BR pour effectuer une tâche  donnée. Base de faits (BF) : ∃ T en 1 ∃ C en 2 ∃ GC en 3 ∃ B en 3 ∃ T en 1 upon[B,GC] Base de règles (BR) : Les règles sont de  la forme :   If <condition‐list> Then <action‐list> Exemple : un plan en trois règles pour Poser T sur GC. If free(T) ∧ free(GC) then PUTON(T,GC) If ¬ free(T) Then MOVETO(X⏐upon(T,X), Y⏐free(Y)) If ¬ free(GC) Then MOVETO(X⏐upon(GC,X), Y⏐free(Y)) On a les conventions suivantes : ― X,Y sont des variables sur {T,C,GC,B} ― MOVETO et  PUTON sont d’autres plans ― free et upon sont des fonctions Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 25 Le monde de cubes Terry Winograd (1972) 1 2 3 T GCC B Rob : agent expert
  26. 26. Architectures à Blackboards Le système expert Hearsay II L’origine des architectures de systèmes multi agents à base de tableaux noirs (blackboard) vient du projet HEARSAY II  (Erman et al 1980) qui était un système multi‐experts pour la reconnaissance de la parole. Chaque expert de HEARSAY II  était un module d’IA classique spécialisé dans un des domaines de la reconnaissance de la parole. Une architecture à tableau noir comprend trois sous‐systèmes (Hayes Roth 1985)  1. Un ensemble de Knowledge Sources (KSi), 2. Une base de connaissances partagée ou Blackboard, 3. Un dispositif de contrôle d’accès de KSi au Blackboard. Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 26 KS1 KS2 KS3 KS.. KSn Contrôle d’accès Blackboard (connaissances partagées)
  27. 27. Agents Epistémiques La Société de L’esprit En 1985, Marvin Minsky du MIT a présenté son livre  fondateur « La Société de l’esprit » où il bat en brèche  l’approche séquentielle de l’Intelligence Artificielle au  profit d’une approche complètement distribuée. Il  propose de décrire non pas une population mais un  sujet unique comme une société d’agents en  interaction. Le problème est alors inversé : ― Système Multi‐agents = Population ‐ Simulation sociale, ‐ Organisation de comportements collectifs, ‐ Compétence Distribuée. ― Système Multi‐agent = Un agent unique ‐ Individuation (synthèse du sujet comme émergent) ‐ Modélisation parallèle de la cognition humaine ‐Subjectivité (awareness, ..). Homonculus Fallacy Cela a débouché sur des modèles de programmation agent de  type récursif où tout ou partie de l’agent est lui‐même  implémentée sous forme d’une des architectures précédentes.  Ces modules récursifs ont été critiqués par D. C. Dennett  comme « l’homonculus fallacy » dans son livre  « Consciousness explained » (1991) où le concepteur enfouit  toujours plus loin l’implémentation des concepts agents. Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 27 Système Multi‐agents La Société de l’esprit Homonculus fallacy 1 agent = 1 SMA
  28. 28. Conclusion La notion d’agent est intégrative Concepts issus des Sciences Cognitives et des Sciences du Vivant Architectures issues de l’Informatique Distribuée Réalisations informatiques extrêmement variées Champ applicatif La Simulation de systèmes complexes (micro‐ ou macroscopiques) L’algorithmique intrinsèquement distribuée L’interaction Homme(s) /Machines(s) La Socio‐informatique. Deux livres de référence Les Systèmes Multi‐agents, J. Ferber, 1995 Multi‐agent Systems, M. Wooldridge, 2002 Jean‐Paul Sansonnet ‐‐ LIMSI‐CNRS 28

×