ecole de musique toulon, cours de piano
     
 
 
 
 
 
menu
 
 

Apprentissage profond : le supercerveau du Net

 

Apprentissage profond : le super cerveau du Net
Gautier Cariou dans mensuel 498
daté avril 2015 -


L'intelligence artificielle s'apprête à bouleverser les réseaux sociaux. Comment ? Grâce à l'apprentissage profond, une discipline émergente qui a franchi récemment un cap décisif.
L'intelligence artificielle (IA) est devenue le nouveau pari de Facebook, Google et Baidu. Depuis deux ans, ces géants du Net y investissent des milliards de dollars et débauchent parmi les meilleurs chercheurs du domaine. Il faut dire que les performances actuelles de l'IA laissent entrevoir des applications aussi inédites que séduisantes pour ces grands groupes. « Les algorithmes d'apprentissage profond, une discipline émergente de l'intelligence artificielle, permettent d'identifier automatiquement et de façon très efficace les images et les vidéos, explique ainsi Yann LeCun, pionnier de l'apprentissage profond et directeur du laboratoire d'intelligence artificielle de Facebook (FAIR). Depuis deux ans, les résultats dans le domaine de la compréhension par la machine du langage naturel, parlé, sont également très prometteurs. De quoi analyser les goûts des utilisateurs de façon plus fine et leur recommander des contenus plus pertinents. »

Si l'intérêt pour l'apprentissage profond (ou deep learning) est relativement récent, la recherche dans ce domaine a débuté dès la fin des années 1980. En 1994, le Français Yann LeCun met au point un algorithme qui permet à un ordinateur de reconnaître automatiquement des mots écrits à la main [1]. Ses travaux sont rapidement exploités à grande échelle dans les lecteurs automatiques de chèques de nombreuses banques américaines. Malgré ce succès, la recherche tombe en désuétude à la fin des années 1990 : la puissance de calcul des ordinateurs est bien trop faible pour améliorer de façon notable les performances des algorithmes d'apprentissage profond.

Il faut attendre une dizaine d'années et le franchissement de cette barrière technologique (lire « L'accélération de la vitesse de calcul », p. 32) pour que l'apprentissage profond remporte l'adhésion de la plupart des spécialistes de la reconnaissance visuelle. Nous sommes en 2012. « L'équipe de Geoffrey Hinton, professeur à l'université de Toronto, au Canada (et engagé depuis par Google dans le groupe de recherche « Google Brain », NDLR), remporte alors haut la main une compétition - ImageNet Large Scale Visual Recognition Challenge - qui permet chaque année à de nombreux laboratoires de confronter leurs algorithmes de reconnaissance d'image et de mesurer leur efficacité sur des milliers d'images », raconte Yann LeCun.

Neurones artificiels
Lorsqu'on présente des images issues d'une banque de données [2] au système de l'équipe canadienne - le seul de la compétition fondé sur l'apprentissage profond-, il parvient à les identifier avec 15 % d'erreurs seulement. Du jamais vu. Le meilleur système concurrent affiche un taux d'erreurs de 26 %. « Ce résultat a impressionné la communauté de la vision informatique. Si bien que, deux ans plus tard, tous les participants utilisaient des algorithmes d'apprentissage profond pour analyser les images. Aujourd'hui, cette technologie égale voire surpasse l'homme dans certaines tâches, comme la reconnaissance des visages. » C'est ainsi qu'en 2014, Facebook présente DeepFace, un programme capable de reconnaître automatiquement un individu sur deux photos différentes avec un taux de réussite de 97,35 % contre 97,53 % en moyenne lorsqu'un homme se prête à l'exercice. Une amélioration de 27 % par rapport à l'état de l'art.

Ce succès dans le domaine de la reconnaissance visuelle s'explique par l'utilisation de ce que l'on appelle des « réseaux de neurones convolutifs », une classe d'algorithmes imaginée par Yann LeCun à la fin des années 1980 [3]. Comme le suggère leur nom, ces réseaux s'inspirent de l'organisation des cellules nerveuses du cerveau, et en particulier du cortex visuel. Lorsque l'oeil observe une scène, une image s'imprime sur la rétine. Des impulsions électriques sont alors transmises vers le cortex visuel qui traite cette information. Des millions de neurones interconnectés échangent des messages, travaillent de concert pour identifier le contenu de la scène.

Les neurones artificiels utilisés en apprentissage profond sont des entités informatiques qui reproduisent de façon très simplifiée l'action de leur analogue biologique. « Concrètement, ce sont des blocs de code informatique qui exécutent des calculs élémentaires : des additions et des multiplications », explique Yoshua Bengio, directeur de l'Institut de Montréal pour les algorithmes d'apprentissage, à l'université de Montréal. Ces neurones artificiels se comptent par millions et sont organisés en plusieurs « couches » successives. Chaque neurone est doté de plusieurs entrées et d'une sortie par lesquelles transite l'information. Les entrées des neurones de la première couche reçoivent les informations élémentaires : des triplets de nombres réels qui correspondent aux couleurs rouge, vert et bleu des pixels de l'image. Leur sortie est quant à elle connectée aux entrées des neurones de la deuxième couche, eux-mêmes connectés aux entrées des neurones de la troisième couche et ainsi de suite.

Le lien entre deux neurones de couches successives (un neurone source et un neurone destinataire) est défini par un « poids synaptique », un nombre réel qui quantifie la force de ce lien. Selon la valeur de ce poids, les signaux envoyés par un neurone source vers un neurone destinataire sont soit amplifiés, soit atténués. Ces signaux sont ensuite additionnés. Si cette somme dépasse un certain seuil fixé au préalable par l'ordinateur, le neurone destinataire envoie alors un signal vers les neurones de la couche suivante. En revanche, si cette valeur est inférieure à ce seuil, le neurone est inhibé : il ne transmet aucun signal. Le cheminement de l'information à travers un réseau de neurones et l'interprétation de cette information par le réseau dépendent donc de la valeur de ces poids synaptiques.

Entraînement à l'identification
Pour identifier un objet dans une image, l'ordinateur utilise un programme informatique qui envoie vers la première couche de neurones des informations élémentaires sur la nature de l'image : la couleur ou le niveau de gris des pixels. « Pris séparément, ces pixels ne contiennent pas d'information pertinente sur la nature de l'image, précise Yann LeCun. Or, dans une image naturelle, la probabilité que des pixels proches possèdent la même couleur est très élevée. La première couche de neurones est donc configurée pour tirer parti de cette particularité statistique et parvient à détecter automatiquement des configurations particulières de pixels, par exemple des contours orientés selon la même direction. »

En sortie de la première couche, ces configurations sont codées sous la forme de vecteurs qui contiennent des informations spécifiques sur la nature de l'objet à identifier. « Ces vecteurs dits "caractéristiques" sont ensuite envoyés vers une seconde couche de neurones qui les combinent et en extraient des motifs plus abstraits : arrangements de contours, parties d'objets, etc. Les neurones des couches suivantes réalisent le même type d'opération et produisent des vecteurs caractéristiques de plus haut niveau, qui contiennent des informations telles que l'identité des objets. »

Cette identification n'est toutefois possible que si le réseau de neurones a été entraîné au préalable à reconnaître une image. Cette tâche nécessite de disposer d'une quantité colossale d'images étiquetées, classées dans différentes catégories (races de chiens, marques de voitures ou de sacs, etc.). Chez Google et Facebook, qui disposent de milliards d'images, des équipes entières sont chargées de ce travail fastidieux. Mais les laboratoires plus modestes peuvent aussi utiliser les millions d'images étiquetées contenues dans la base ImageNet, créée en 2012 par des universitaires de Stanford, aux États-Unis.

Pour que l'ordinateur apprenne à reconnaître une image à coup sûr (ou presque), par exemple un chien, les chercheurs utilisent un algorithme « d'optimisation par gradient stochastique ». À chaque nouvel exemple qu'on soumet à l'ordinateur, cet algorithme modifie la valeur des poids synaptiques du réseau de neurones. « Après des centaines de millions d'exemples présentés à l'ordinateur, la distribution des poids synaptiques ne varie plus ou presque, explique Yoshua Bengio. Quand vient ce moment, le réseau de neurones a terminé son apprentissage, et il peut alors associer à n'importe quelle image une représentation apprise, c'est-à-dire un vecteur de caractéristiques, qui permet de prédire la catégorie à laquelle l'objet appartient. »

De cette façon, un réseau de neurones entraîné pourra reconnaître avec une grande probabilité n'importe quel chien, sous n'importe quel angle de prise de vue, sans l'avoir jamais vu auparavant. Simplement parce que sa représentation mathématique associée à la catégorie « chien » est suffisamment générale. Avec cette technologie, Facebook compte améliorer l'analyse des goûts des utilisateurs en identifiant automatiquement le contenu des images et des vidéos qu'ils postent ou qu'ils « like » (lire « Facebook réinvente Facebook » p. 28).

Des mots transformés en vecteurs
Après la reconnaissance des images, l'apprentissage profond est sur le point de révolutionner la compréhension automatique du langage naturel. Avec des applications très concrètes en préparation dans les laboratoires de Facebook telles que l'analyse des sentiments dans les textes (lire « L'ordinateur qui comprend l'ironie », p. 34), la traduction instantanée ou la mise en place de boîtes de dialogue entre l'homme et la machine. Des tâches que les algorithmes actuellement utilisés pour analyser les phrases sont incapables d'accomplir. Ces derniers permettent uniquement de compter la « co-occurrence » de mots, c'est-à-dire leur fréquence d'apparition dans un texte et le nombre de mots qui les séparent d'autres mots. De cette manière, un ordinateur calcule la probabilité que tel mot apparaisse à tel endroit dans une phrase, sans vraiment en comprendre le sens.

Or, en 2000, Yoshua Bengio démontre pour la première fois que les machines sont capables d'apprendre par elles-mêmes le langage naturel grâce à des algorithmes d'apprentissage profond [4]. Parmi ces algorithmes, se distinguent les réseaux de neurones dits « récurrents », dont le principe général est analogue à celui des réseaux de neurones convolutifs. Avec ces algorithmes, un ordinateur comprend mieux le sens des mots et les liens qui les unissent. « Autrement dit, il développe une compréhension sémantique de la langue, explique Yoshua Bengio. À la manière des algorithmes de reconnaissance des images, ceux utilisés pour la compréhension du langage naturel apprennent automatiquement à représenter des séquences de mots sous la forme de vecteurs de caractéristiques à partir de milliards d'exemples. »

Pour chaque mot que l'ordinateur repère dans un texte, par exemple « stylo », l'algorithme génère automatiquement un ensemble de nombres, des attributs sémantiques. Ensemble, ces attributs forment un vecteur correspondant au mot « stylo ». Ce vecteur est construit de telle façon que les mots de signification proche ou apparaissant dans des contextes voisins possèdent des attributs sémantiques en commun. Le mot « crayon » partagera ainsi de nombreux attributs avec « stylo » ou « pinceau ».

Ces vecteurs constituent le premier niveau de représentation. Dans un second temps, ils sont combinés par les couches suivantes du réseau de neurones qui génèrent des vecteurs de plus haut niveau encore. Ces derniers résument le sens de séquences entières de mots, puis celui de phrases complètes. « Cette technique qui consiste à représenter des textes par des vecteurs a été popularisée en 2008, à la suite d'une publication de Ronan Collobert et James Weston [5], aujourd'hui chercheurs dans le laboratoire FAIR, précise Yann LeCun. Ce sont leurs travaux en particulier qui ont réveillé l'intérêt de la communauté pour ces techniques. »

La représentation des mots par des vecteurs permet également aux ordinateurs d'appréhender le langage en raisonnant par analogie. En 2013, Tomas Mikolov, jeune chercheur au laboratoire d'intelligence artificielle chez Google (et actuellement chez Facebook), montre qu'en réalisant des opérations élémentaires entre plusieurs vecteurs, un ordinateur découvre des analogies entre les mots [6]. En réalisant le calcul suivant : vecteur « Madrid » moins vecteur « Espagne » plus vecteur « France », il remarque que le résultat obtenu est un vecteur très proche de celui de « Paris ». À sa manière, la machine a donc compris par elle-même le concept de capitale. « Ce résultat peut paraître anodin mais pour la communauté de chercheurs en intelligence artificielle, c'est extraordinaire, explique Yoshua Bengio. D'autant plus que le réseau de neurones n'a pas été entraîné pour cela : c'est un effet secondaire de l'apprentissage, une heureuse surprise ! »

Sens commun intégré
Cette technologie est aussi très prometteuse pour la traduction [7,8]. Pour cette application, les chercheurs en intelligence artificielle utilisent deux réseaux de neurones qui sont entraînés ensemble avec des centaines de millions de phrases étiquetées, c'est-à-dire traduites au préalable. « Les exemples choisis pour l'étape d'entraînement sont des textes multilingues provenant des parlements canadiens ou européens, ou des traductions d'ouvrages disponibles sur Internet. » Le premier réseau reçoit une phrase dans la langue source et produit une représentation sémantique de cette phrase, sous la forme de vecteurs.

Le second réseau de neurones reçoit ces vecteurs en entrée et est entraîné à produire une séquence de mots dans la langue désirée. Pour une même phrase source, l'ordinateur peut donc générer un grand nombre de traductions différentes, mais de signification semblable, en mobilisant différents vecteurs dont les attributs sont proches. Cette technologie sera bientôt utilisée par Facebook pour traduire les textes de façon plus naturelle.

L'un des objectifs de l'apprentissage profond est de permettre à l'usager de dialoguer avec son ordinateur en langage naturel en lui demandant par exemple de répondre à la question « mes amis ont-ils aimé le concert du lycée ? » à partir de l'analyse des messages postés par ces derniers. Pour cela, il est indispensable d'instiller à la machine une forme de sens commun. Ce qui lui fait pour l'instant défaut ! En effet, lorsqu'une machine analyse un texte évoquant des actions exécutées dans un ordre donné, il lui est difficile de répondre à des questions simples sur les conséquences de ces actions. Ainsi, dans le texte « Joe est allé dans la cuisine. Joe a pris du lait. Il est allé dans le bureau. Il a laissé le lait. Il est ensuite allé dans la salle de bains », la machine aura du mal à répondre correctement aux questions : « où se trouve le lait maintenant ? » ou « où était Joe avant d'aller dans son bureau ? »

Dans le laboratoire FAIR, Jason Weston, Antoine Bordes et Sumit Chopra ont proposé de pallier cette difficulté en dotant un réseau de neurones récurrents d'une mémoire à court terme [9]. Pour cela, ils ont utilisé un type particulier de réseau de neurones récurrents, baptisé « Memory Network ». Cet algorithme comporte un module « mémoire » séparé du réseau de neurones qui le rend capable d'analyser de longues séquences de mots. Cela a permis à l'ordinateur de créer des représentations qui, non seulement captent le sens des phrases, mais intègrent l'enchaînement temporel des actions. Résultat : la machine a répondu juste, sur le fond comme sur la forme.
L'ESSENTIEL
- FACEBOOK, GOOGLE ET BAIDU ont investi massivement dans l'apprentissage profond, une branche de l'intelligence artificielle en plein essor.

- LES ALGORITHMES d'apprentissage profond s'inspirent du fonctionnement du cortex cérébral pour analyser les données.

- CETTE TECHNOLOGIE est à l'origine des progrès spectaculaires déjà réalisés dans les domaines de la reconnaissance automatique des images et de la compréhension du langage naturel.
L'ACCÉLÉRATION DE LA VITESSE DE CALCUL
Identifier le contenu d'une image n'est pas de tout repos pour un ordinateur : cette tâche mobilise plusieurs millions de neurones artificiels, des blocs de code informatique, qui exécutent des calculs élémentaires. À chaque fois qu'une image apparaît, le système exécute donc des millions d'additions ou de multiplications. Or, pour exercer un programme à reconnaître une image, il faut l'entraîner au préalable sur des millions d'exemples. Au total, il doit donc exécuter des milliards de calculs dans un délai respectable. Il y a encore un an, cette phase d'entraînement prenait deux semaines. Aujourd'hui, elle ne prend que deux jours. Une nette amélioration due à l'utilisation de cartes graphiques toujours plus puissantes. Pour entraîner son système, Yann LeCun, directeur du laboratoire d'intelligence artificielle de Facebook, en a branché quatre en parallèle dans un seul et même ordinateur. Ces cartes graphiques, utilisées par les passionnés de jeux vidéo, calculent à la vitesse de cinq téraflops, soit cinq milliers de milliards d'opérations chaque seconde ! À terme, les chercheurs aimeraient encore améliorer ces performances, en branchant plusieurs ordinateurs en parallèle.
L'ORDINATEUR QUI COMPREND L'IRONIE
Les algorithmes utilisés par les publicitaires pour analyser les sentiments des internautes ont du mal à percevoir le second degré ou le sarcasme. Cela provient en grande partie du fait qu'ils ne s'attachent pas à l'ordre des mots. De fait, les algorithmes en question fonctionnent avec des « sacs de mots », autrement dit, des vecteurs contenant des centaines de milliers de mots-clés, chacun associé à un sentiment positif ou négatif. Chaque coordonnée de ce vecteur est un nombre qui correspond à la fréquence d'apparition d'un mot dans un texte. Plus la fréquence d'un mot positif est élevée, plus le texte sera considéré comme tel, indépendamment de l'ordre des mots. Or les internautes anglo-saxons, par exemple, expriment souvent l'ironie en écrivant le contraire de ce qu'ils pensent suivi de « not ». Une phrase peut donc être associée à un contenu positif alors qu'elle exprime le contraire. De la même façon, une phrase contenant de nombreuses négations, comme « il n'est pas possible de ne pas détester cette image », brouille les pistes, et l'ordinateur peinera à classer cette phrase dans la bonne catégorie (positif ou négatif). Avec des technologies d'apprentissage profond, l'ordinateur prend en considération l'ordre des mots, leur rôle sémantique, le contexte dans lequel ils apparaissent. Il détecte ainsi mieux la teneur des commentaires et leurs nuances.

 

 DOCUMENT       larecherche.fr       LIEN

 
 
 
 

DES ROBOTS HUMANOÏDES

 

Paris, 12 février 2016
Des robots humanoïdes dans les usines aéronautiques de demain

Développer des technologies de robotique humanoïde pour effectuer des tâches difficiles dans les usines aéronautiques, c'est le programme de recherche commun, d'une durée de quatre ans, du Joint Robotics Laboratory (CNRS/AIST)1 et d'Airbus Group. Il sera officiellement lancé le 12 février 2016 à l'ambassade de France à Tokyo2. L'introduction d'humanoïdes sur les lignes d'assemblage aéronautiques permettra de décharger les opérateurs humains des tâches les plus laborieuses ou dangereuses. Ils pourront ainsi se concentrer sur des tâches à plus forte valeur ajoutée. La principale difficulté pour ces robots sera de travailler dans un environnement exigu : comment réaliser certains mouvements sans entrer en collision avec les nombreux objets alentours ? C'est la première question à laquelle devront répondre les chercheurs, en développant de nouveaux algorithmes de planification et contrôle des mouvements précis.
Du fait de la taille des appareils aéronautiques (par exemple des avions de ligne) et du très grand nombre de tâches à effectuer sur peu d'unités, l'utilisation de robots spécialisés à base fixe, déjà utilisés dans l'industrie automobile, est impossible dans l'industrie aéronautique. D'autres difficultés s'ajoutent : même si des robots constitués d'une base mobile et d'un bras manipulateur peuvent être utilisés par l'industrie (comme chez Airbus Group par exemple), ceux-ci sont limités dans leurs déplacements. Ils n'ont, en effet, pas la possibilité de monter des escaliers ou des échelles, de passer des obstacles au sol, etc. De son côté, le Joint Robotics Laboratory (JRL, CNRS/AIST) développe, à partir des modèles de robots HRP-2 et HRP-43, des nouvelles technologies de locomotion dites multi-contacts : en s'aidant de tout son corps pour prendre contact avec son environnement, et non seulement avec ses pieds, ce type de robot peut monter des échelles et entrer dans des endroits exigus. La possibilité d'avoir des contacts multiples permet aussi d'accroître la stabilité du robot et la force qu'il peut appliquer lorsqu'il effectue une tâche. De plus, la forme anthropomorphique de ces robots offre une polyvalence utile pour effectuer un grand nombre de tâches différentes dans des environnements variés.

La collaboration entre les chercheurs du JRL et Airbus Group a donc pour but de permettre aux robots humanoïdes d'effectuer des tâches de manipulation dans un environnement contraint et limité, les lignes d'assemblage, où ils devront faire un usage coordonné de leur corps pour mener à bien leur mission. Les espaces exigus requièrent en effet des postures particulières. Le calcul de telles postures s'avérant mathématiquement complexe, les chercheurs devront tout d'abord développer de nouveaux algorithmes, bien plus puissants que ceux existants actuellement, tout en gardant ces calculs suffisamment rapides pour que les mouvements des robots restent efficaces. Les tâches typiques que les robots auront à effectuer seront, par exemple, de serrer un écrou, de nettoyer une zone de ses poussières métalliques ou d'insérer des pièces dans la structure de l'appareil. Ils pourront également vérifier le bon fonctionnement des systèmes une fois la fabrication terminée.

Ces algorithmes seront testés sur un ensemble de scénarios tirés des besoins des différentes branches d'Airbus Group (Aviation Civile, Hélicoptères, et Spatial), et dont le réalisme ira croissant au fil des années. Du côté de la recherche en robotique, en plus de l'apport des nouveaux algorithmes, cette collaboration mettra peut-être en lumière des insuffisances des robots actuels (design, précision ou puissance, par exemple). Elle pourrait également permettre de spécifier le cahier des charges de la première génération de robots humanoïdes dédiés à la manufacture de grandes structures, d'ici 10 à 15 ans.

 

 DOCUMENT         cnrs        LIEN

 
 
 
 

ROBOTS : COMMENT S'ORIENTER

 

S'orienter dans un monde inconnu


spécial robots - par Simon Lacroix, Raja Chatila dans mensuel n°350 daté février 2002 à la page 48 (2329 mots)
Passer d'une pièce à l'autre semble élémentaire. Mais, pour un robot autonome, la tâche est plus ardue qu'il n'y paraît : il doit tout d'abord savoir où il se trouve, puis s'assurer qu'il pourra passer la porte et qu'il ne rencontrera pas une chaise sur son chemin. Et encore doit-il être en mesure de définir ce qu'est une porte ou une chaise.

Qu'il soit conçu pour explorer une planète inconnue, distribuer le courrier dans des bureaux ou passer l'aspirateur dans le salon, un robot autonome est confronté au même problème : il doit, sans compter sur notre assistance, faire face à un environnement dont il ne connaît pratiquement rien. Le robot est dans la situation d'un explorateur face à une contrée inconnue : afin d'accomplir sa mission se déplacer, saisir un objet, etc., il doit décider de stratégies de navigation, planifier ses trajectoires et passer à l'acte. A cette fin, il doit être capable de remplir deux fonctions essentielles : cartographier son environnement et s'y localiser. Pour la cartographie, il doit percevoir le lieu où il se trouve, et en construire une représentation qui soit intelligible pour lui. Pour la localisation, ainsi que pour contrôler les trajectoires qu'il emprunte, il doit connaître en permanence sa position.

Bien entendu, si le robot dispose d'une carte, sa situation ressemble davantage à celle d'un piéton muni d'un plan de la ville dans laquelle il se dirige. On pourrait alors penser qu'il n'a pas à modéliser son environnement et qu'il lui suffit de se localiser. Mais encore faut-il qu'il mette en relation ce qu'il perçoit et son plan : le problème de la modélisation reste entier. En outre, la carte dont il dispose n'est pas forcément précise, complète ou à jour, et il lui faut donc l'amender. Modélisation de l'environnement et localisation sont intimement liées : s'il est nécessaire de représenter des éléments d'un lieu pour s'y localiser, il est aussi indispensable de se localiser pour représenter cet endroit.

De même que l'Homme se fie à ses cinq sens, un robot autonome exploite les données fournies par ses capteurs1. Les capteurs proprioceptifs * accéléromètres, compas, gyromètres et odomètres* par exemple le renseignent sur ses mouvements ; les capteurs extéroceptifs* , l'informent sur son environnement. Ces derniers se regroupent en deux catégories : les télémètres* , qui fournissent au robot des indications sur la distance des objets qui l'entourent et, bien sûr, les caméras, qui lui permettent d'en appréhender l'aspect visuel lire l'article de Thierry Viéville et d'Olivier Faugeras, p. 42.

De même que nous pouvons être trompés par nos sens, les robots sont confrontés à l'imprécision des données enregistrées par leurs capteurs : tout processus physique de mesure comporte une part d'imprécision et peut conduire à des informations erronées au point de ne correspondre à aucune réalité. Enfin, de même que nous ne pouvons percevoir la totalité de notre environnement, les robots traitent des données incomplètes ou partielles, et doivent pouvoir prendre en compte des éléments éventuellement occultés.

Modéliser l'environnement. Trois types d'informations renseignent un robot sur son environnement : des informations géométriques la forme des lieux et des objets ; topologiques les relations spatiales entre différents lieux et objets ; et sémantiques la nature - le sens, la fonction - des lieux et objets. Planifier une trajectoire dans une pièce impose uniquement de déterminer l'espace accessible à partir de la position occupée : une information exclusivement géométrique est suffisante. En revanche, pour déterminer des stratégies de déplacement, une connaissance plus abstraite de l'environnement devient indispensable : le robot doit expliciter la topologie des lieux. Il pourra éventuellement y inclure des informations sémantiques pour, par exemple, planifier une séquence de déplacements décrits à la manière d'un itinéraire « emprunter le couloir A, pénétrer dans la pièce B par la porte C... ».

Comment un robot procède-t-il pour modéliser son environnement ? L'approche classique, développée dès le début des années 1980, repose sur une analyse géométrique. Prenons l'exemple simple, en deux dimensions, d'un robot qui, avant de se déplacer, acquiert des données télémétriques dans un appartement fig. 2. La modélisation consiste à représenter les données par des formes géométriques analytiques segments de droites, faces planes, volumes, définis par leurs équations que l'on appelle les primitives . Cette approche relève d'un processus de structuration des informations dont l'abstraction est faible : on passe simplement de données géométriques « brutes » à des données plus structurées. Il s'agit cependant d'une opération délicate car les mesures fournies par les capteurs sont imprécises et les primitives héritent de ces imprécisions2. Il devient donc crucial pour les algorithmes qui vont exploiter le modèle d'estimer ces imprécisions que l'on peut déduire de modèles de fonctionnement des capteurs : le logiciel qui planifie les trajectoires ne devra donner l'ordre au robot de passer entre deux segments que s'il est certain que la distance qui les sépare permet effectivement le passage ! L'évaluation des imprécisions est également nécessaire d'une part pour analyser le modèle, et d'autre part pour le compléter avec de nouvelles données au cours des déplacements. De récents progrès en matière de capteurs, de calculateurs et d'algorithmes ont permis d'adopter ce type de démarches pour construire des représentations tridimensionnelles de l'environnement3 fig. 1.

Représentations sémantiques. Une fois son modèle géométrique construit, le robot peut en extraire facilement des informations topologiques. Par exemple, si l'environnement est défini à l'aide de polygones, il suffit au robot de construire un graphe avec la définition des régions connexes, à partir duquel il pourra déterminer des chemins. Le robot connaît ainsi l'espace qui lui est accessible et peut générer des trajectoires et des chemins. Il n'en reste pas moins incapable de planifier des itinéraires ou d'interpréter ses missions. Pour cela, il a encore besoin de quelques notions sémantiques. Et les capteurs ne sont alors d'aucune aide directe : le robot doit interpréter ces notions en analysant les formes préalablement modélisées. On peut ainsi lui apprendre que deux segments parallèles et distants d'un mètre définissent une porte. Le processus relève cette fois de l'abstraction et de l'interprétation. Les informations numériques deviennent symboliques, tandis que les imprécisions sur les paramètres des segments sont traduites en une incertitude sur la nature de l'objet ici, la porte.

La construction de représentations sémantiques repose sur le succès de la modélisation géométrique. Aussi, les informations perçues à partir d'une seule position peuvent se révéler insuffisantes incomplètes, même pour reconnaître un objet tel qu'une porte. Afin d'affiner sa connaissance des lieux, le robot devra donc acquérir des données supplémentaires à partir d'autres positions qu'il aura lui-même à déterminer. Ce n'est que depuis le début des années 1990 que les chercheurs en robotique ont ainsi envisagé la modélisation comme un processus actif 4 , dont la portée dépasse l'interprétation d'une accumulation progressive de données : le robot doit décider des données à acquérir, et va pour cela planifier ses déplacements.

Affiner les représentations. Reste que la définition d'une porte de façon exclusivement géométrique est une approche très pauvre - notamment lorsque la modélisation est faite en deux dimensions : deux meubles parallèles et distants d'un mètre peuvent être interprétés comme une porte, tandis que les portes fermées ne seront pas détectées. Comment affiner les interprétations ? Outre la prise en compte de la troisième dimension, on peut inclure dans le modèle des caractéristiques telles qu'une poignée. Une démarche qui imposera l'intégration de nouveaux capteurs afin de prendre en considération dans un même modèle des attributs de natures diverses : géométrie, couleur, etc. On parle alors de fusion multisensorielle.

Mais, si multiplier les capteurs permet d'affiner l'interprétation, cela ne permet pas de s'affranchir des limites d'une approche qui ne définit la sémantique des éléments de l'environnement que par rapport à ce que le robot peut percevoir. En effet, suivant une telle approche, le concepteur est obligé de fournir au robot une description détaillée de la totalité des objets qu'il est susceptible de rencontrer. Or, décrire une chaise comme « un plateau horizontal posé sur quatre pieds, auquel est attaché un plateau vertical » ne permettra au robot d'identifier que les chaises de ce type, et non les milliers de modèles de chaises que nous utilisons couramment. Par contre, si l'on décide de définir une chaise conceptuellement, par sa fonction, comme « un objet sur lequel un bipède peut s'asseoir en faisant reposer son dos » , le robot est en passe de reconnaître une infinité d'objets qui lui sont inconnus. Les chercheurs en robotique commencent seulement à exploiter cette voie plus complexe : la « porte » devient une « frontière franchissable entre deux lieux », et un « lieu » une « zone dans laquelle le robot peut évoluer aisément » . Nous sommes ici confrontés à la problématique bien connue du lien très fort entre la perception du monde et l'action ou la capacité d'action dans ce monde.

Quelles qu'elles soient, les modélisations qui reposent exclusivement sur la géométrie de l'environnement - que l'on peut qualifier de « reconstruction- nistes » - se heurtent rapidement à un obstacle que nous n'avons pas évoqué jusqu'à présent : les limites des calculateurs peu adaptés au calcul géométrique. Les chercheurs n'ont jamais abandonné, depuis les débuts de la robotique, la quête de méthodes moins gourmandes en calcul. Ainsi, un moyen aujourd'hui devenu courant de représenter l'espace accessible est de décrire l'environnement par un ensemble de petites cellules analogues aux pavés d'un carrelage5. Pour chacune d'entre elles, on détermine la probabilité qu'elle corresponde à un obstacle fig. 2. L'intérêt d'une telle représentation est qu'elle explicite la notion « obstacle » directement à partir des mesures et non de constructions intermédiaires. Autre avantage : les relations de voisinage entre les cellules contiennent des informations topologiques, et il est possible de « regrouper » les cellules similaires pour réduire la quantité d'informations à stocker.

Aisé à construire et à manipuler, ce type de représentations donne par ailleurs au robot une estimation précise de la quantité d'informations dont il dispose sur une zone donnée. Il pourra ainsi affiner ses stratégies d'exploration et s'orienter de façon à percevoir les cellules pour lesquelles l'incertitude reste grande. La sémantique de ce type de représentations est cependant restreinte à la notion d'obstacle : une porte demeure toujours aussi difficile à discerner. Une piste aujourd'hui explorée pour extraire des informations sémantiques est la conception de méthodes qui, sans structurer les données en primitives, en comparent certains attributs à des exemples préalablement appris. Elles permettront à terme de reconnaître les lieux ou les objets par la vision.

Lorsqu'il se déplace, le robot accumule les informations. A chaque « pas », il doit affiner la représentation globale de l'environnement qu'il se crée à partir de représentations locales. Outre les imprécisions sur les données brutes et les primitives, et les incertitudes sur les notions sémantiques avec lesquelles il devait composer en observant à partir d'un point donné, le robot doit désormais prendre en compte les incertitudes liées à son déplacement et à sa nouvelle position.

Pour cela, il exploite cette fois les informations que lui fournissent ses capteurs proprioceptifs. Il peut également analyser, par exemple, le mouvement des éléments des images que lui transmettent ses caméras lire l'article de Thierry Viéville et d'Olivier Faugeras, p. 42. Ces capteurs permettent au robot de naviguer « à l'estime », à la manière d'un marin qui mesure ses déplacements à partir de son cap et de sa vitesse, mais sans se référer à son environnement. Inconvénient majeur : la position ne s'obtient que par intégration des déplacements élémentaires, avec pour conséquence d'accroître l'erreur sur l'estimation. On dit que la méthode « dérive ». C'est par une seconde analogie avec la navigation maritime, les amers * , que les chercheurs ont désigné les éléments de l'environnement qui permettront à des algorithmes de corriger cette dérive6 fig. 3. Les algorithmes, dits de cartographie et localisation simultanées, qui permettent ce « recalage » raisonnent explicitement sur les imprécisions des capteurs et font appel à des théories de l'estimation* fig. 4. Ils nécessitent la construction et la mise à jour d'une description des amers de l'environnement7.

Mettre en relation les amers mémorisés et perçus exige un raisonnement probabiliste qui peut se révéler complexe. En effet, si, entre deux positions proches occupées par le robot, la seule connaissance de la position des amers peut permettre de les associer, en revanche, à l'issue d'un long déplacement, l'imprécision sur la position du robot peut devenir telle que cette association devient impossible. La seule solution est alors, en plus de la position, de définir les amers avec d'autres attributs identifiables par les techniques de reconnaissance d'objets ou par les relations topologiques entre les amers. Intégrer et gérer de très nombreux amers peut alors nécessiter des calculs lourds, sans pour autant offrir l'assurance d'aboutir à un modèle spatialement cohérent...

Multiplier les approches. Récemment, des méthodes de localisation plus robustes, ne reposant plus uniquement sur des considérations géométriques ont été proposées. Citons les techniques de reconnaissance d'images panoramiques, qui permettent d'identifier des lieux préalablement traversés8. D'autres approches exploitent la représentation topologique de l'environnement pour se localiser à long terme : on ne cherche plus à estimer précisément la position d'amers, mais on identifie un lieu qualitativement, en vérifiant que les relations spatiales entre les objets correspondent à un endroit déjà modélisé.

Enfin, une façon de garantir la cohérence spatiale des représentations et la qualité de la position estimée est d'exploiter une carte initialement fournie au robot. Les cartes sont le plus souvent conçues avec d'autres outils que ceux dont dispose le robot : images satellites, plan d'architecte, etc. Pour mettre en relation les éléments de la carte et ce qu'il perçoit, le robot doit construire une nouvelle carte qui intègre des informations géométriques, topologiques et sémantiques compatibles avec les informations dont il dispose.

Existe-t-il une solution idéale parmi toutes les approches que nous avons brièvement présentées ? Toutes ont leurs limites et leurs imperfections et, après une vingtaine d'années de recherches sur la cartographie et la localisation, il semble clair maintenant que seule la multiplicité des approches permet de concevoir un robot au fonctionnement cohérent et robuste.

Par ailleurs, ces travaux ne peuvent être considérés en dehors des autres tâches effectuées par le robot : la cartographie et la localisation sont des processus actifs qui vont influencer l'ensemble de ses décisions.

Par Simon Lacroix, Raja Chatila

 

DOCUMENT       larecherche.fr       LIEN

 
 
 
 

ROBOTS : COMMENT S'ORIENTER

 

S'orienter dans un monde inconnu


spécial robots - par Simon Lacroix, Raja Chatila dans mensuel n°350 daté février 2002 à la page 48 (2329 mots)
Passer d'une pièce à l'autre semble élémentaire. Mais, pour un robot autonome, la tâche est plus ardue qu'il n'y paraît : il doit tout d'abord savoir où il se trouve, puis s'assurer qu'il pourra passer la porte et qu'il ne rencontrera pas une chaise sur son chemin. Et encore doit-il être en mesure de définir ce qu'est une porte ou une chaise.

Qu'il soit conçu pour explorer une planète inconnue, distribuer le courrier dans des bureaux ou passer l'aspirateur dans le salon, un robot autonome est confronté au même problème : il doit, sans compter sur notre assistance, faire face à un environnement dont il ne connaît pratiquement rien. Le robot est dans la situation d'un explorateur face à une contrée inconnue : afin d'accomplir sa mission se déplacer, saisir un objet, etc., il doit décider de stratégies de navigation, planifier ses trajectoires et passer à l'acte. A cette fin, il doit être capable de remplir deux fonctions essentielles : cartographier son environnement et s'y localiser. Pour la cartographie, il doit percevoir le lieu où il se trouve, et en construire une représentation qui soit intelligible pour lui. Pour la localisation, ainsi que pour contrôler les trajectoires qu'il emprunte, il doit connaître en permanence sa position.

Bien entendu, si le robot dispose d'une carte, sa situation ressemble davantage à celle d'un piéton muni d'un plan de la ville dans laquelle il se dirige. On pourrait alors penser qu'il n'a pas à modéliser son environnement et qu'il lui suffit de se localiser. Mais encore faut-il qu'il mette en relation ce qu'il perçoit et son plan : le problème de la modélisation reste entier. En outre, la carte dont il dispose n'est pas forcément précise, complète ou à jour, et il lui faut donc l'amender. Modélisation de l'environnement et localisation sont intimement liées : s'il est nécessaire de représenter des éléments d'un lieu pour s'y localiser, il est aussi indispensable de se localiser pour représenter cet endroit.

De même que l'Homme se fie à ses cinq sens, un robot autonome exploite les données fournies par ses capteurs1. Les capteurs proprioceptifs * accéléromètres, compas, gyromètres et odomètres* par exemple le renseignent sur ses mouvements ; les capteurs extéroceptifs* , l'informent sur son environnement. Ces derniers se regroupent en deux catégories : les télémètres* , qui fournissent au robot des indications sur la distance des objets qui l'entourent et, bien sûr, les caméras, qui lui permettent d'en appréhender l'aspect visuel lire l'article de Thierry Viéville et d'Olivier Faugeras, p. 42.

De même que nous pouvons être trompés par nos sens, les robots sont confrontés à l'imprécision des données enregistrées par leurs capteurs : tout processus physique de mesure comporte une part d'imprécision et peut conduire à des informations erronées au point de ne correspondre à aucune réalité. Enfin, de même que nous ne pouvons percevoir la totalité de notre environnement, les robots traitent des données incomplètes ou partielles, et doivent pouvoir prendre en compte des éléments éventuellement occultés.

Modéliser l'environnement. Trois types d'informations renseignent un robot sur son environnement : des informations géométriques la forme des lieux et des objets ; topologiques les relations spatiales entre différents lieux et objets ; et sémantiques la nature - le sens, la fonction - des lieux et objets. Planifier une trajectoire dans une pièce impose uniquement de déterminer l'espace accessible à partir de la position occupée : une information exclusivement géométrique est suffisante. En revanche, pour déterminer des stratégies de déplacement, une connaissance plus abstraite de l'environnement devient indispensable : le robot doit expliciter la topologie des lieux. Il pourra éventuellement y inclure des informations sémantiques pour, par exemple, planifier une séquence de déplacements décrits à la manière d'un itinéraire « emprunter le couloir A, pénétrer dans la pièce B par la porte C... ».

Comment un robot procède-t-il pour modéliser son environnement ? L'approche classique, développée dès le début des années 1980, repose sur une analyse géométrique. Prenons l'exemple simple, en deux dimensions, d'un robot qui, avant de se déplacer, acquiert des données télémétriques dans un appartement fig. 2. La modélisation consiste à représenter les données par des formes géométriques analytiques segments de droites, faces planes, volumes, définis par leurs équations que l'on appelle les primitives . Cette approche relève d'un processus de structuration des informations dont l'abstraction est faible : on passe simplement de données géométriques « brutes » à des données plus structurées. Il s'agit cependant d'une opération délicate car les mesures fournies par les capteurs sont imprécises et les primitives héritent de ces imprécisions2. Il devient donc crucial pour les algorithmes qui vont exploiter le modèle d'estimer ces imprécisions que l'on peut déduire de modèles de fonctionnement des capteurs : le logiciel qui planifie les trajectoires ne devra donner l'ordre au robot de passer entre deux segments que s'il est certain que la distance qui les sépare permet effectivement le passage ! L'évaluation des imprécisions est également nécessaire d'une part pour analyser le modèle, et d'autre part pour le compléter avec de nouvelles données au cours des déplacements. De récents progrès en matière de capteurs, de calculateurs et d'algorithmes ont permis d'adopter ce type de démarches pour construire des représentations tridimensionnelles de l'environnement3 fig. 1.

Représentations sémantiques. Une fois son modèle géométrique construit, le robot peut en extraire facilement des informations topologiques. Par exemple, si l'environnement est défini à l'aide de polygones, il suffit au robot de construire un graphe avec la définition des régions connexes, à partir duquel il pourra déterminer des chemins. Le robot connaît ainsi l'espace qui lui est accessible et peut générer des trajectoires et des chemins. Il n'en reste pas moins incapable de planifier des itinéraires ou d'interpréter ses missions. Pour cela, il a encore besoin de quelques notions sémantiques. Et les capteurs ne sont alors d'aucune aide directe : le robot doit interpréter ces notions en analysant les formes préalablement modélisées. On peut ainsi lui apprendre que deux segments parallèles et distants d'un mètre définissent une porte. Le processus relève cette fois de l'abstraction et de l'interprétation. Les informations numériques deviennent symboliques, tandis que les imprécisions sur les paramètres des segments sont traduites en une incertitude sur la nature de l'objet ici, la porte.

La construction de représentations sémantiques repose sur le succès de la modélisation géométrique. Aussi, les informations perçues à partir d'une seule position peuvent se révéler insuffisantes incomplètes, même pour reconnaître un objet tel qu'une porte. Afin d'affiner sa connaissance des lieux, le robot devra donc acquérir des données supplémentaires à partir d'autres positions qu'il aura lui-même à déterminer. Ce n'est que depuis le début des années 1990 que les chercheurs en robotique ont ainsi envisagé la modélisation comme un processus actif 4 , dont la portée dépasse l'interprétation d'une accumulation progressive de données : le robot doit décider des données à acquérir, et va pour cela planifier ses déplacements.

Affiner les représentations. Reste que la définition d'une porte de façon exclusivement géométrique est une approche très pauvre - notamment lorsque la modélisation est faite en deux dimensions : deux meubles parallèles et distants d'un mètre peuvent être interprétés comme une porte, tandis que les portes fermées ne seront pas détectées. Comment affiner les interprétations ? Outre la prise en compte de la troisième dimension, on peut inclure dans le modèle des caractéristiques telles qu'une poignée. Une démarche qui imposera l'intégration de nouveaux capteurs afin de prendre en considération dans un même modèle des attributs de natures diverses : géométrie, couleur, etc. On parle alors de fusion multisensorielle.

Mais, si multiplier les capteurs permet d'affiner l'interprétation, cela ne permet pas de s'affranchir des limites d'une approche qui ne définit la sémantique des éléments de l'environnement que par rapport à ce que le robot peut percevoir. En effet, suivant une telle approche, le concepteur est obligé de fournir au robot une description détaillée de la totalité des objets qu'il est susceptible de rencontrer. Or, décrire une chaise comme « un plateau horizontal posé sur quatre pieds, auquel est attaché un plateau vertical » ne permettra au robot d'identifier que les chaises de ce type, et non les milliers de modèles de chaises que nous utilisons couramment. Par contre, si l'on décide de définir une chaise conceptuellement, par sa fonction, comme « un objet sur lequel un bipède peut s'asseoir en faisant reposer son dos » , le robot est en passe de reconnaître une infinité d'objets qui lui sont inconnus. Les chercheurs en robotique commencent seulement à exploiter cette voie plus complexe : la « porte » devient une « frontière franchissable entre deux lieux », et un « lieu » une « zone dans laquelle le robot peut évoluer aisément » . Nous sommes ici confrontés à la problématique bien connue du lien très fort entre la perception du monde et l'action ou la capacité d'action dans ce monde.

Quelles qu'elles soient, les modélisations qui reposent exclusivement sur la géométrie de l'environnement - que l'on peut qualifier de « reconstruction- nistes » - se heurtent rapidement à un obstacle que nous n'avons pas évoqué jusqu'à présent : les limites des calculateurs peu adaptés au calcul géométrique. Les chercheurs n'ont jamais abandonné, depuis les débuts de la robotique, la quête de méthodes moins gourmandes en calcul. Ainsi, un moyen aujourd'hui devenu courant de représenter l'espace accessible est de décrire l'environnement par un ensemble de petites cellules analogues aux pavés d'un carrelage5. Pour chacune d'entre elles, on détermine la probabilité qu'elle corresponde à un obstacle fig. 2. L'intérêt d'une telle représentation est qu'elle explicite la notion « obstacle » directement à partir des mesures et non de constructions intermédiaires. Autre avantage : les relations de voisinage entre les cellules contiennent des informations topologiques, et il est possible de « regrouper » les cellules similaires pour réduire la quantité d'informations à stocker.

Aisé à construire et à manipuler, ce type de représentations donne par ailleurs au robot une estimation précise de la quantité d'informations dont il dispose sur une zone donnée. Il pourra ainsi affiner ses stratégies d'exploration et s'orienter de façon à percevoir les cellules pour lesquelles l'incertitude reste grande. La sémantique de ce type de représentations est cependant restreinte à la notion d'obstacle : une porte demeure toujours aussi difficile à discerner. Une piste aujourd'hui explorée pour extraire des informations sémantiques est la conception de méthodes qui, sans structurer les données en primitives, en comparent certains attributs à des exemples préalablement appris. Elles permettront à terme de reconnaître les lieux ou les objets par la vision.

Lorsqu'il se déplace, le robot accumule les informations. A chaque « pas », il doit affiner la représentation globale de l'environnement qu'il se crée à partir de représentations locales. Outre les imprécisions sur les données brutes et les primitives, et les incertitudes sur les notions sémantiques avec lesquelles il devait composer en observant à partir d'un point donné, le robot doit désormais prendre en compte les incertitudes liées à son déplacement et à sa nouvelle position.

Pour cela, il exploite cette fois les informations que lui fournissent ses capteurs proprioceptifs. Il peut également analyser, par exemple, le mouvement des éléments des images que lui transmettent ses caméras lire l'article de Thierry Viéville et d'Olivier Faugeras, p. 42. Ces capteurs permettent au robot de naviguer « à l'estime », à la manière d'un marin qui mesure ses déplacements à partir de son cap et de sa vitesse, mais sans se référer à son environnement. Inconvénient majeur : la position ne s'obtient que par intégration des déplacements élémentaires, avec pour conséquence d'accroître l'erreur sur l'estimation. On dit que la méthode « dérive ». C'est par une seconde analogie avec la navigation maritime, les amers * , que les chercheurs ont désigné les éléments de l'environnement qui permettront à des algorithmes de corriger cette dérive6 fig. 3. Les algorithmes, dits de cartographie et localisation simultanées, qui permettent ce « recalage » raisonnent explicitement sur les imprécisions des capteurs et font appel à des théories de l'estimation* fig. 4. Ils nécessitent la construction et la mise à jour d'une description des amers de l'environnement7.

Mettre en relation les amers mémorisés et perçus exige un raisonnement probabiliste qui peut se révéler complexe. En effet, si, entre deux positions proches occupées par le robot, la seule connaissance de la position des amers peut permettre de les associer, en revanche, à l'issue d'un long déplacement, l'imprécision sur la position du robot peut devenir telle que cette association devient impossible. La seule solution est alors, en plus de la position, de définir les amers avec d'autres attributs identifiables par les techniques de reconnaissance d'objets ou par les relations topologiques entre les amers. Intégrer et gérer de très nombreux amers peut alors nécessiter des calculs lourds, sans pour autant offrir l'assurance d'aboutir à un modèle spatialement cohérent...

Multiplier les approches. Récemment, des méthodes de localisation plus robustes, ne reposant plus uniquement sur des considérations géométriques ont été proposées. Citons les techniques de reconnaissance d'images panoramiques, qui permettent d'identifier des lieux préalablement traversés8. D'autres approches exploitent la représentation topologique de l'environnement pour se localiser à long terme : on ne cherche plus à estimer précisément la position d'amers, mais on identifie un lieu qualitativement, en vérifiant que les relations spatiales entre les objets correspondent à un endroit déjà modélisé.

Enfin, une façon de garantir la cohérence spatiale des représentations et la qualité de la position estimée est d'exploiter une carte initialement fournie au robot. Les cartes sont le plus souvent conçues avec d'autres outils que ceux dont dispose le robot : images satellites, plan d'architecte, etc. Pour mettre en relation les éléments de la carte et ce qu'il perçoit, le robot doit construire une nouvelle carte qui intègre des informations géométriques, topologiques et sémantiques compatibles avec les informations dont il dispose.

Existe-t-il une solution idéale parmi toutes les approches que nous avons brièvement présentées ? Toutes ont leurs limites et leurs imperfections et, après une vingtaine d'années de recherches sur la cartographie et la localisation, il semble clair maintenant que seule la multiplicité des approches permet de concevoir un robot au fonctionnement cohérent et robuste.

Par ailleurs, ces travaux ne peuvent être considérés en dehors des autres tâches effectuées par le robot : la cartographie et la localisation sont des processus actifs qui vont influencer l'ensemble de ses décisions.

Par Simon Lacroix, Raja Chatila

 

DOCUMENT       larecherche.fr       LIEN

 
 
 
Page : [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 ] Précédente - Suivante
 
 
 


Accueil - Initiation musicale - Instruments - Solf�ge - Harmonie - Instruments - Vidéos - Nous contacter - Liens - Mentions légales /confidentialit�

Initiation musicale Toulon

-

Cours de guitare Toulon

-

Initiation à la musique Toulon

-

Cours de musique Toulon

-

initiation piano Toulon

-

initiation saxophone Toulon

-
initiation flute Toulon
-

initiation guitare Toulon

Google