Version classiqueVersion mobile
OpenEdition Books

Complexité-Simplexité

 | 
Alain Berthoz
, 
Jean-Luc Petit

IV. Une robotique biomimétique

Robotique et simplexité : modèles, architecture, décision et conscience

Raja Chatila

Texte intégral

1Un robot est une machine matérielle qui, sous différentes formes, est essentiellement munie d’actionneurs lui permettant de se mouvoir, ou de déplacer une partie de son corps dans l’espace, de capteurs qui acquièrent des données sur son environnement (par exemple des caméras) ou sur elle-même (par exemple des codeurs mesurant les rotations des moteurs), ainsi que de processeurs, des calculateurs qui sont des moyens de traitement de l’information. Cette machine peut être aussi dotée de moyens matériels de communication (microphone, haut-parleur, transmission radio, …). Et, bien sûr, d’une source d’énergie. Cette définition posée, on peut introduire les cinq grandes capacités qui font de cette machine un robot et non une voiture conduite par un humain, ou un engin téléguidé par exemple. Trois capacités principales : l’action, la perception et la décision, et deux autres qui ne sont pas exactement de même nature : la communication qui n’a de sens que pour un robot interagissant avec d’autres entités actives et communicantes (autres machines ou humains) et l’apprentissage, qui est plutôt une capacité transversale aux autres.

2Selon la conception du robot, certaines de ces fonctions peuvent être développées à divers degrés, voire être absentes. Dans la mesure où il s’agit d’un artefact, le concepteur a en effet tout loisir de complexifier ou de simplifier telle ou telle fonction à souhait – ou plutôt à la mesure de ses propres connaissances et de son savoir-faire. Ainsi, les robots développés dans les laboratoires et décrits dans les publications scientifiques aujourd’hui n’exhibent-ils en général qu’une fraction relativement partielle et restreinte de ces fonctions, et ceux mis en œuvre dans les applications sont encore plus limités.

3Par exemple, la décision peut exister uniquement sous la forme de réactions réflexes préétablies et pré-codées, permettant de produire des actions simples : accélérer/décélérer une ou deux roues, et ce à partir d’une perception réduite seulement à la détection de lumière. On obtient alors un « robot » dans sa plus simple expression, ce qui ne l’empêchera pas d’avoir des comportements qui peuvent paraître élaborés à l’observateur, par exemple en faisant varier l’éclairage dans son espace. À l’autre extrême, ce robot peut être muni de capteurs multiples (caméras, télémètres, …) fournissant une information riche permettant une perception de l’environnement résultant de la fusion de plusieurs modalités sensorielles. Sa prise de décision – à la fois délibérative et réactive – peut s’appuyer sur des mécanismes bouclés, mais aussi sur des algorithmes pour la planification du mouvement et des raisonnements basés sur la logique des prédicats, ou sur le raisonnement probabiliste bayésien, permettant une anticipation des actions et de leurs conséquences pour une sélection appropriée. Enfin, cette action peut mettre en jeu, de manière coordonnée, des dizaines d’actionneurs et de degrés de liberté, par exemple pour la saisie et la manipulation d’objets.

4Dans tous les cas, le fonctionnement du robot sera le produit de programmes informatiques exécutés par ses processeurs pour extraire et traiter les informations à partir des données issues de ses capteurs, effectuer des calculs et des transformations, et commander ses actionneurs.

5Mais une question devient alors prégnante : comment organiser toutes les capacités du robot, toutes les fonctions entrant dans la perception, la décision, l’action, l’apprentissage et la communication, pour obtenir un système exhibant un comportement global cohérent, rationnel, en rapport avec ses objectifs, son environnement et l’évolution de ce dernier. Quels sont les principes sous-jacents à cette structuration ? Et comment fonctionnent les processus mettant en œuvre dynamiquement ces différentes fonctions ?

6Ainsi sommes-nous face à une complexité similaire à celle du vivant. Ces questions sont bien les mêmes que celles posées par les neurosciences à propos de l’organisation du système nerveux central des êtres vivants – et de celui de l’homme en particulier.

  • 1 A. Berthoz, La simplexité, Odile Jacob, 2009.

7Serions-nous en mesure de retrouver les mêmes règles et principes de « simplexité » énoncées par Alain Berthoz1 pour le vivant pour faire face à la complexité, principes qui seraient alors universels ?

Autonomie et décision

  • 2 R. Chatila, « Evaluer l'autonomie, mais comment ? », La Recherche, n° 350, février 2002.

8Dans un premier temps, examinons la notion d’autonomie, définie comme la capacité du robot à s’autogouverner, c’est à dire à décider et agir sans l’intervention extérieure de l’homme. Ce concept d’autonomie ne se traduit pas par des mesures rigoureuses, même si l’on peut parler de degrés d’autonomie2, et c’est une notion relative, en lien avec l’environnement de la machine et avec les tâches qu’elle peut y effectuer. Ceci exprime une sorte d’équilibre entre trois complexités : celle des capacités décisionnelles du robot, celle de l’environnement et celle de la tâche.

Figure 1.

L’autonomie exprime un équilibre entre trois complexités : celle des mécanismes décisionnels, celle de l’environnement et celle de la tâche. La complexité de l’environnement et de la tâche réduisent l’autonomie du robot.

9Ainsi un robot sur Mars (environnement complexe, car le terrain est accidenté et de consistance variable) peut prendre les décisions nécessaires pour effectuer une tâche simple (déplacement de quelques dizaines de mètres) de manière totalement autonome. Une voiture sur autoroute (environnement simple et linéaire) peut effectuer des centaines de kilomètres de manière totalement autonome. En revanche dans une ville, avec d’autres véhicules, des piétons, etc., la capacité de décision autonome du véhicule devient limitée avec le nombre d’événements et de paramètres dont il faut tenir compte, ainsi que leur évolution rapide dans le temps.

10Si nous recherchons idéalement à maximiser à la fois l’autonomie du robot ainsi que les complexités des tâches et de l’environnement, nous aboutissons à des mécanismes de prise de décision complexes. Imaginez par exemple la tâche d’assembler un meuble dans une pièce encombrée, sans le plan spécifiant les différentes étapes. La complexité des processus de planification est dans ce cas exponentielle, c’est à dire que le temps nécessaire à la prise de décision croît de manière exponentielle avec le nombre de paramètres définissant le problème. Ceci devient incompatible avec une action en temps réel ou limité. La question de la réduction de cette complexité, pour que le robot soit plus autonome, plus adapté à la dynamique de son environnement et capable de tâches complexes, trouve des réponses similaires aux principes de simplexité. Passons-les en revue.

« Inhibition des stratégies primitives »

11Ce premier principe relève de la décomposition de la décision en des niveaux différents dans une architecture de contrôle robotique. Celle-ci présente schématiquement trois niveaux. En premier, et en lien direct avec la perception et l’action, des boucles sensori-motrices permettant une réactivité aux changements de l’environnement et un asservissement des actionneurs sur les données perceptuelles issues des capteurs pour éviter un obstacle, suivre un objet, etc. Ces boucles (ces comportements ou stratégies primitives) ne permettent pas, à elles seules, d’accomplir une tâche, de rejoindre un objectif, dès lors que l’environnement devient complexe dans ses structures géométrique ou topologique. Le second niveau introduit un contrôle pour lancer ou arrêter (inhiber) telle ou telle boucle en fonction de connaissances plus globales sur l’état de l’environnement, du robot et de ses objectifs. Ce qui exige aussi une certaine réactivité, incompatible avec une capacité de prise de décision élaborée. Le dernier niveau, celui de la planification, avec une anticipation et une prise en compte des conséquences possibles des actions potentielles, produit une séquence d’actions permettant d’accomplir un but (par exemple, l’assemblage du meuble, ou l’atteinte d’une destination). Cette planification, qui met jeu des représentations symboliques et des méthodes de raisonnement logiques et probabilistes incompatibles avec la rapidité du monde réel, ne peut être en lien avec lui qu’à travers les niveaux précédents.

« Anticipation probabiliste »

12La prise de décision basée sur des seuls raisonnements logiques trouve rapidement ses limites dans la confrontation avec la réalité. Le monde est effectivement partiellement connu (« partiellement observable »), et son évolution généralement non déterministe. On le représente par des états décrits par les connaissances partielles et incertaines. D’autre part, les actions du robot ne produisent pas toujours les effets prévus : les roues peuvent glisser, les objets, imparfaitement modélisés, être mal saisis et tomber. La transition entre les états par l’action est donc tout aussi incertaine.

13Très tôt confrontés à ce problème, les roboticiens et les chercheurs en Intelligence Artificielle ont cherché des solutions pour rendre l’action plus robuste. La réponse fut trouvée dans les méthodes de représentation et de raisonnement sur l’incertain, en premier lieu la théorie des probabilités, et, surtout, le raisonnement bayésien qui permet de modifier l’état de croyance dans une hypothèse H, représenté par sa probabilité P(H), compte tenu de nouveaux indices ou d’une nouvelle observation O, et ceci par une formule d’une simplicité élégante établie par Thomas Bayes au xviiie siècle :

P(H|O) = P(O|H)P(H)/P(O)

qui exprime la nouvelle probabilité de H sachant O, en tenant compte de l’ancienne croyance P(H) et de la vraisemblance de l’observation P(O|H).

  • 3 R.E. Bellman, Dynamic Programming, Princeton University Press, 1957.
  • 4 Andreï Markov, mathématicien russe (1856-1922).

14La planification probabiliste permet d’anticiper des situations et d’explorer des hypothèses pour prendre les décisions les plus appropriées en combinant le raisonnement bayésien avec des méthodes d’optimisation, basées en particulier sur le principe de l’optimum établi en 1957 par Richard Bellman3, qui, schématiquement, décompose une décision en une séquence d’étapes elles-mêmes à optimiser. Le processus mis en œuvre est dit « processus décisionnel markovien4 », qui maximise la somme des récompenses associées aux actions et aux états du monde. Ces récompenses sont définies a priori de manière simple en lien avec la satisfaction ou non d’un objectif par une action donnée. Par exemple, heurter un obstacle amène à une récompense négative, approcher du but à une récompense positive. La combinaison par le processus décisionnel de toutes ces informations de manière récursive permet de sélectionner la séquence d’actions atteignant l’objectif tout en maximisant la récompense.

15Cette notion de récompense nous amène naturellement à nous demander comment le robot peut connaître l’effet de ses actions. Cette connaissance peut être introduite – programmée – a priori. Mais elle peut surtout être apprise par le robot à travers ses propres expérimentations. Nous aboutissons à la notion d’apprentissage par renforcement, lui aussi s’appuyant sur le même formalisme mathématique probabiliste et sur l’optimisation. Au passage, observons que l’introduction de ces mécanismes complexes représente un détour par une complexité accessoire, au sens de l’un des principes de simplexité, permettant au final de simplifier la prise de décision et de la rendre plus adaptée à l’évolution imprévisible du monde réel, au prix de la mise en œuvre de méthodes mathématiques élaborées.

« La spécialisation de la sélection (l’Umwelt) »

16L’un des problèmes fondamentaux en robotique est celui de la navigation : comment faire en sorte que la machine puisse atteindre une destination donnée dans l’espace, qui peut être arbitrairement éloignée, alors même que l’environnement dans lequel elle se déplace est a priori inconnu, découvert par les capteurs du robot au fur et à mesure de ses déplacements ? La difficulté est plus profonde qu’il n’y paraît. Car pour atteindre sa destination lointaine, il est à la fois nécessaire de la situer dans l’espace, et de se situer dans ce même espace. Il faut donc se localiser.

  • 5 Nous excluons a priori des aides externes comme le GPS ou tout autre système artificiel conçu spéci (...)
  • 6 S. Lacroix & R. Chatila, « S’orienter dans un monde inconnu », La Recherche, n°350, février 2002.
  • 7 R.E. Kalman, « A New Approach to Linear Filtering and Prediction Problems », Transactions of the AS (...)

17Mais pour se localiser, le robot ne possède que deux informations en général5 : d’une part, une estimation de sa position calculée à partir de ses déplacements précédents, en « comptant ses pas », en intégrant par exemple les rotations élémentaires de ses roues (l’odométrie) ou les indications de ses capteurs inertiels ; et, d’autre part, sa position locale calculée relativement à ce qu’il perçoit de son environnement (« je suis à 2 m de ce sapin, à 50 cm de ce chêne et à 1m de ce rocher »). Ces deux données sont approximatives et la première information a la fâcheuse tendance à devenir de plus en plus inexacte en cumulant les petites erreurs de chaque déplacement. La seconde reste par définition locale et ne peut donner une idée sur la position dans l’ensemble de l’espace. La seule manière de se localiser globalement est de posséder une carte, qui serve de référence, comme une carte IGN pendant une randonnée en montagne, et de reconnaître sur cette carte des éléments remarquables perçus dans l’entourage du robot. Mais le robot ne possède pas de carte IGN. Il faut donc qu’il se transforme en arpenteur pour la construire lui-même, et ceci en mettant en rapport et en conformité ses perceptions locales, au fur et à mesure de son déplacement. Or pour cela il a besoin de connaître sa position. En clair, pour se localiser, il faut posséder une carte et pour construire cette carte, il faut connaître sa position ! Le problème est exactement le même que celui posé aux topographes en Europe au xve siècle, ou aux navigateurs au moment des grandes découvertes pour établir les cartes du Nouveau Monde. La question de la primauté entre la localisation et la cartographie ne peut être résolue qu’en les traitant simultanément6 dans une méthodologie intégrée, et l’outil théorique provient de la théorie de l’estimation : le filtre de Kalman7 qui s’appuie d’ailleurs sur la théorie de Bayes.

18Se pose alors la question du choix des représentations pertinentes pour établir la carte et les éléments permettant la localisation – les amers – à partir des données des capteurs. C’est là que le concept d’Umwelt trouve sa première manifestation. Les amers seront fonction de ce qui est invariant et suffisamment saillant pour être reconnu d’une perception à l’autre de manière efficace. Et, selon le type d’environnement et les capteurs disponibles, cela peut être de simples pixels ayant des propriétés photométriques d’invariance locale, des formes simples, des structures géométriques particulières. En d’autres termes, ce qui porte le sens ici est ce qui est identifiable pour permettre la construction de la carte et la localisation.

19Mais si la carte doit servir à la navigation, elle doit aussi exprimer la navigabilité, c’est à dire distinguer les régions franchissables de l’espace et celles qui obstruent le passage. Il va s’agir ici de représentations différentes, mais aussi diverses en fonction de la nature de l’environnement et des capacités de locomotion du robot. Ainsi un pré relativement plat, présentant quelques obstacles épars, ou un terrain incliné, rocailleux, avec des éboulis, ne sont-ils pas de la même exigence. Le robot va donc les représenter différemment, en tenant compte naturellement de ses propres capacités de franchissement : représentations simples dans un modèle qualitatif en régions franchissables (probablement libres) ou non franchissables (probablement occupées) pour le sol plat peu encombré qui permet un déplacement sur une trajectoire rapide ; ou carte numérique plus précise, plus complexe à élaborer, mais permettant de calculer l’inclinaison et la stabilité et de sélectionner de manière précise la prochaine action. D’autre part, une zone plane peut être du sol dur ou de l’eau. Si les capteurs du robot lui permettent de détecter cette différence, la zone liquide sera représentée par une étiquette particulière, un symbole, pour en tenir compte et l’éviter dans le calcul de la trajectoire.

20Les représentations du monde pour le robot sont donc multiples, allant du pixel au symbole, selon ce qui est pertinent et efficace pour son action.

« Coopération et redondance »

21Nous retrouvons ce principe à plusieurs reprises dans les éléments discutés précédemment. La multiplicité et la redondance des modèles et des représentations pour la navigation, les diverses manières de mener une action donnée par des boucles sensori-motrices différentes, sélectionnées en fonction de la situation réelle. Les différentes composantes fonctionnelles de l’architecture de contrôle du robot, organisée en modules, coopèrent entre elles pour permettre la réalisation de l’action. Leur mise en œuvre simultanée augmente la robustesse du système à travers la redondance des méthodes de résolution.

Le principe du sens

22Des progrès majeurs ont été accomplis dans divers domaines de la robotique : en perception, navigation, localisation et cartographie de l’environnement, planification et contrôle des déplacements, locomotion, manipulation, interaction humain–robot. Cependant, ces résultats, aussi significatifs soient-ils, restent le plus souvent applicables dans des contextes restreints et bien définis, et insuffisants pour permettre une décision et une action complexes. Les différentes représentations issues de la perception, même celles qui incluent les relations sensori-motrices, c’est à dire les liens entre la perception d’un objet et l’action que le robot peut exercer sur lui, ne sont pas porteuses de sens.

23La prise de décision reste limitée à des problèmes relativement simples et bien modélisés, et se traduit par des automatismes. Des questions fondamentales restent posées sur les possibilités pour un robot, pour la machine de Turing qu’il incarne, d'interpréter son environnement, de comprendre ses propres actions et leurs effets, de prendre des initiatives, d'exhiber des comportements exploratoires de curiosité, et d'acquérir de nouvelles connaissances et de nouvelles capacités, bref de posséder des fonctions cognitives, sans que tout cela résulte d’une programmation précise.

24Le sens du monde et de l’action peut-il être dissocié de l’observateur, de l’acteur ? N’y a-t-il pas une nécessité d’une autoréférence par rapport à l’extérieur ? En d’autres termes, la conscience de soi n’est-elle pas une solution simplexe nécessaire à l’émergence du sens du monde, à la production d’une intention orientant la sélection des actions ? La robotique n’a pas encore vraiment osé traiter cette problématique de conscience artificielle, mais la simplexité peut l’y encourager.

Notes

1 A. Berthoz, La simplexité, Odile Jacob, 2009.

2 R. Chatila, « Evaluer l'autonomie, mais comment ? », La Recherche, n° 350, février 2002.

3 R.E. Bellman, Dynamic Programming, Princeton University Press, 1957.

4 Andreï Markov, mathématicien russe (1856-1922).

5 Nous excluons a priori des aides externes comme le GPS ou tout autre système artificiel conçu spécifiquement pour aider la localisation. De tels systèmes ne sont par définition pas universels.

6 S. Lacroix & R. Chatila, « S’orienter dans un monde inconnu », La Recherche, n°350, février 2002.

7 R.E. Kalman, « A New Approach to Linear Filtering and Prediction Problems », Transactions of the ASME Journal of Basic Engineering, 82, Series D, 1960.

Table des illustrations

URL http://books.openedition.org/cdf/docannexe/image/3386/img-1.png
Fichier image/png, 36k

Auteur

Institut des Systèmes Intelligents et de Robotique, Université Pierre et Marie Curie & CNRS

© Collège de France, 2014

Conditions d’utilisation : http://www.openedition.org/6540

Acheter

Volume papier

Chargement

Unavailable