LA VIE ARTIFICIELLE: L´APPROCHE ANIMAT

Les animats
Les robots de Brooks
Intelligence en essaim
Apprentissage
Génération des animats

















































Les animats

       Un animat [Meyer 98] est un agent virtuel (simulé sur ordinateur) ou réel (robot) dont les comportements sont inspirés de ceux des animaux naturels, en particulier en ce qui concerne leurs capacités d´autonomie et d´adaptation.
         La structure d´un animat comprend:
         1) Des capteurs par lesquels il reçoit de l´information du monde extérieur.
         2) Des actuateurs par lesquels il agit sur le monde extérieur.
         3) Une architecture de contrôle organisant les relations entre ces "entrées-sorties".
         Cette organisation lui permet de réaliser, ou d´apprendre à réaliser, certaines tâches, tout en cherchant à survivre le plus longtemps possible.
         Les capteurs et les actuateurs constituent une interface entre l´animat et le monde, correspondant à la notion de membrane.
         L´architecture d´un animat peut être innée (c´est à dire construite initialement) ou acquise (c´est à dire résultant d´un apprentissage au cours de la vie de l´animat ou cours des générations successives d´une population d´animats). En général elle participe de ces deux éventualités, son architecture évoluant à partir de données initialement cablées.
         On étudie usuellement des populations d´animats dont l´évolution est modélisée au moyen d´algorithmes génétiques ou de programmation génétiques.

Les robots de Brooks

         Rodney Brooks [Brooks 91] a conçu des robots adaptatifs au M.I.T. (Massachusetts Institute of Technology) dont l´architecture, qui est constituée de couches parallèles, chacune, spécialisée dans un traitement particulier (construction de cartes, locomotion, ...), est composée de réseaux d´automates comprenant des dispositifs de temporisation et de mémorisation. Ces couches relient les capteurs et les actuateurs. La cohérence de l´ensemble est un comportement émergent résultant des interactions entre les comportements élémentaires des couches individuellement. Chaque couche a la possibilité d´inhiber provisoirement les ordres moteurs issus des couches inférieures sans cependant perturber leur fonctionnement interne. Une telle organisation permet d´empiler des couches de compétences variées, et peut-être même contradictoires, sans que des conflits ne viennent bloquer le système.
         Dans une architecture robotique traditionnelle une chaîne séquentielle de couches relient les capteurs aux actuateurs, une panne survenant dans l´une des couches bloque tout le traitement. L´architecture parallèle d´un animat assure, au contraire, une grande robustesse (tolérance aux pannes).

         Architecture robotique traditionnelle et architecture d´un animat
         D´après [Meyer 98].

         Le robot à pattes Genghis de Brooks est capable de suivre tous les déplacements d´un humain (ou d´un autre robot) quelque soit l´environnement. Le petit robot Squirt (30 cm3) se cache lorsqu´un bruit se produit, puis explore l´environnement à la recherche de la cause de ce bruit. Le robot Herbert fait du garbage collecting.

Intelligence en essaim

         Une colonie d´animats, chacun étant muni d´un comportement très simple, peut constituer un système adaptatif dont le comportement global, émergeant des interactions inter-individuelles, est complexe et adaptatif. Dans le cas des sociétés d´insectes, on parte d´ intelligence en essaim. Un tel système est très robuste et continue de fonctionner, même lorsque plusieurs individus disfonctionnent ou meurent.
         Craig W. Reynolds [Reynolds 87] a été le premier à concevoir de tels systèmes dans le domanie de la Synthèse d´Images. La gestion de populations d´individus (bancs de poissons, vols d´oiseaux, colonies d´insectes, ...) n´est plus confiée à un algorithme déterministe et séquentiel, mais est le résultat des nombreuses interactione entre les individus, chacun doté de capacités perceptives locales et limitées, mais dont le comportement global exhibe une complexité et une apparente motivation que l´on ne trouve que dans les sociétés naturelles. Pratiquement, Reynolds a défini trois règles très simples gouvernant le comportement des individus:
         1) Maintenir une distance minimale par rapport aux individus voisins.
         2) Ajuster la vitesse aux individus du voisinage immédiat.
         3) Ajuster les déplacements dans la direction de la zone contenant le plus d´individus.
         Bien qu´aucun individu n´ait de vision globale ni des obstacles, ni des positions de tous les autres individus, l´ensemble évolue de façon cohérente, évite les obstacles (pouvant même se partager pour se regrouper ensuite) et reste compact (aucun individu ne s´éloigne notablement du groupe).
         Cette approche a été utilisée pour résoudre le célèbre problème dit du voyageur de commerce en prenant la métaphore des fourmis qui déposent des traces de phéromone pour guider leurs congénères.

Apprentissage

         À l´image des animaux qui évoluent au cours de leur vie et apprennent à se comporter afin de survivre, on munit généralement les animats de capacités d´apprentissage se traduisant par une modification de leur structure, et donc de leur fonctionnement, à mesure qu´ils interagissent avec leur environnement.
         Avec un apprentissage par renforcement, un animat se modifie de façon à ce que ses actions soient récompensées, c´est ce que l´on pourrait appeler un dressage. Avec un apprentissage associatif, plus évolué, l´animat apprend, mémorise et reconstitue un ensemble de stimuli en les associant les uns aux autres, c´est à dire se construit une représentation de son environnement.


       Apprentissage associatif

       Les systèmes motivationnels

Apprentissage associatif

         Les animaux, en se déplaçant dans leur environnement, se construisent des cartes cognitives en mémorisant des informations, tant métriques que topologiques, quant aux particularités du terrain qui pourraient leur permettre de le reconnaitre. Chez certains rongeurs il existe même des neurones, dits de lieux, qui ne déchargent que pour une certaine position de l´animal dans l´espace.
         Ces observations ont été mises à profit par Maja Mataric [Mataric 92] pour construire des robots fonctionnant sur ce principe. Ils sont équipés de capteurs (sonars, gyroscopes), d´actuateurs (moteurs) et d´une architecture de contrôle de Brooks comprenant trois niveaux de compétence: Un niveau élémentaire, de type réflexe, consistant à suivre les obstacles (sol, murs). Un deuxième niveau analyse et repère les particularités du terrain (amers). Enfin le troisième niveau construit la carte cognitive, à partir de ces informations, sous la forme d´un graphe connectant des modules de calcul correspondant aux amers. Ces modules s´activent lorsque le robot se trouve physiquement à l´endroit ainsi codé (qu´il reconnait), et jouent donc le rôle de neurones de lieux.
         Ces cartes cognitives peuvent être utilisées par l´animat, non seulement pour apprendre son environnement, mais encore pour y développer des stratégies: Par exemple, pour optimiser un parcours, c´est à dire trouver le plus court chemin entre la position actuelle et un but: Il suffit d´activer le neurone de lieux correspondant au but, une action se diffuse alors au sein de la carte et, si la métrique de celle-ci représente assez fidèlement la réalité, la vitesse de diffusion sera fonction de la distance réelle; la suite des neurones activés est alors, en sens inverse, l´image du chemin cherché.



Les systèmes motivationnels

         L´étude du comportement des animaux a été utilisée par Lashon Booker [Booker 88] pour construire des animats capables, par essais et erreurs, de poursuivre plusieurs buts (ce que l´éthologie appelle un système motivationnel). Par exemple l´animat est pourvu de comportements instinctifs de locomotion (pour explorer son environnement), de recherche de nourriture (pour se regénérer) et de fuite (pour éviter les dangers); ces trois comportements correspondent à trois niveaux de l´architecture de contrôle qui manipule des objets, des buts et des relations, son rôle étant de classer les objets au moyen de représentations internes , c´est à dire de donner à ces objets une signification affective (alors que les animats de base ne fonctionnent que sur une boucle stimuli-réponses). L´animat de Booker, poussé par son instinct motionnel, explore son environnement. Lorsqu´il tombe sur un objet comestible, ou dangereux, le niveau correspondant est activé, et les autres sont desactivés, jusqu´à résolution de l´événement (absorption ou mise à l´écart du danger), et l´animat reprend alors sa déambulation.

Génération des animats

         L´organisation du système nerveux des êtres vivants est le résultat d´une évolution et d´une sélection naturelle au cours desquelles des générations successives se transforment en transmettant le matériel génétique le mieux adapté aux conditions rencontrées.
         De même l´architecture de contrôle des animats ne doit pas être définie arbitrairement par des humains mais doit résulter d´une sélection artificielle: Il s´agit de faire évoluer des populations d´animats dans un environnement donné, avec un certain patrimoine génétique initial, en les laissant se reproduire par sélection, croisements et mutation ce qui a pour effet de propager les combinaisons de gènes qui réussissent le mieux (c´est à dire celles qui sont le mieux adaptées).
         Ainsi Karl Sims [Sims 94] a conçu des créatures virtuelles en faisant évoluer, aussi bien leur architecture de contrôle que leur morphologie, au moyen de la sélection artificielle. Pour cela il a codé la morphologie sous forme d´un graphe (constituant le patrimoine génétique) décrivant l´assemblage des éléments de l´animat linéairement, répétitivement ou récursivement. Chaque noeud de ce graphe pointe vers un autre graphe qui décrit le contrôleur attaché à l´élément correspondant, sorte de réseau neuronal muni de capteurs (internes ou externes), d´actuateurs (exerçant des forces musculaires sur les éléments de l´animat), capteurs et actuateurs étant reliés par un réseau de neurones complexes (certains délivrant une information traitée de ses entrées, comme somme, produit, seuillage, fonctions mathématiques, ...).


Génotypes                       Phénotypes


         Sims fait "vivre" une population d´animats dont les patrimoines génétiques ont été générés aléatoirement: Chaque individu se construit à partir de ses gènes et se comporte au sein d´un environnement simulé en cherchant à optimiser une certaine fonction d´adaptation. Ceux qui sont le mieux adaptés sont autorisés à se reproduire en combinant leurs gènes par des mécanismes de croisements et de mutations. À partir de ces nouveux gènes une nouvelle génération est créée, et ainsi de suite. Au bout d´un certain nombre de générations, il peut apparaitre des individus qui répondent le mieux possible à la fonction d´adaptation. Par exemple pour créer des animats sachant nager, l´environnement simule un liquide visqueux sans pesanteur, la fonction d´adaptation est une mesure de la distance parcourue: On voit rapidement émerger des individus munis de nageoires dont le comportement n´est pas sans rappeler celui de certains animaux marins, mais ont voit aussi apparaitre des êtres étranges ayant inventé des stratégies de nage que l´on ne trouve pas dans la nature (du moins pas dans celle que nous connaissons), mais qui réussissent.
         Ces processus de sélection artificielle sont utilisés en robotique évolutionniste [Husbands 98] pour construire physiquement des populations de machines capables de se reproduire et d´évoluer. Ils servent aussi à mieux comprendre comment l´intelligence humaine s´explique à partir des comportements adaptatifs les plus simples hérités de l´animal.