La diversité et l'efficacité des être vivants démontrent la puissance de l'évolution en tant que processus d'adaptation. Le but général du projet Creadapt est de s'inspirer de ce processus pour créer de nouveaux algorithmes qui permettront à des robots autonomes de s'adapter de manière créative aux imprévus.
Dans le scénario typique, un robot mobile rencontre une situation qui nécessite une adaptation (e.g. une patte est cassée ou le type de sol a changé). Le robot est autorisé à lancer quelques expériences pour évaluer la situation; après quelques minutes, il devrait être capable de poursuivre sa mission (par exemple en boitant) jusqu'à ce qu'une nouvelle adaptation soit nécessaire.<br /><br />Le principal défi du projet Creadapt est de faire en sorte que le robot puisse être à la fois créatif (car les situations peuvent être très diverses) et capable de s'adapter rapidement.
Les algorithmes évolutionnistes sont des bons candidats pour permettre une adaptation car ce sont des mécanismes de recherche ouverts et très polyvalents. Néanmoins, les algorithmes actuels nécessitent plusieurs centaines de milliers de tests pour obtenir des solutions intéressantes. Pour réduire le nombre de tests, le robot embarque dans le robot un «modèle de soi« -- une simulation -- qui permet d'exécuter une grande part de la recherche de la simulation; pour restreindre cette recherche aux comportements qui fonctionnent aussi sur le vrai robot, nous utiliserons l'approche par transférabilité, que nous avons proposée dans nos travaux précédents.
Nos algorithmes sont testés sur un robot hybride roue-pattes hexapode (6 pattes, avec des roues au bout des pattes) car ce type de robot peut utiliser un très grand nombres de méthodes de locomotion : rouler, marcher à 6 pattes, marcher à 4 pattes, ramper... Les scénarios d'évaluation sont différents types de pannes mécanique et électronique (perte d'une patte, patte débranchée, patte coupée en deux, roue perdue, etc.) ainsi que des changements de terrain (sable, herbe, bitume, etc.).
Les résultats attendus sont :
- de nouveaux algorithmes d'adaptation et d'apprentissage, créatifs et rapides ;
- de nouvelles méthodes pour utiliser l'évolution artificielle pour la locomotion en robotique ;
- des avancées fondamentales sur la compréhension du processus d'évolution dans la nature et notamment sur ce qui permet d'améliorer lla capacité d'adaptation des espèces (ce qui nous permettra ensuite de «porter« ces avancées vers nos algorithmes d'adaptation).
Ce projet vise à rendre les robots plus adaptatifs et plus robuste. Les résultats développés pourraient être appliqués dans les situations de « robotique de secours » : lorsqu'un robot doit se déplacer dans un environnement transformé par une catastrophe naturelle, il est impossible de prévoir les situations qu'il va rencontrer. De plus, il est probable qu'il soit rapidement abimé, par exemple par une chute de pierre. Dans une telle situation, il est critique de faire en sorte que le robot puisse continuer sa mission sans l'intervention d'un humain.
Plusieurs publications sont soumises.
La diversité et l'efficacité globale des être vivants démontrent la puissance de l'évolution en tant que processus d'optimisation et d'innovation. Les algorithmes évolutionnistes (AEs) s'inspirent de ce succès: ce sont maintenant des algorithmes matures d'optimisation "boite noire" et des méthodes efficaces pour la conception automatique et créatives.
L'évolution naturelle est cependant plus qu'un processus d'optimisation créative, c'est aussi un mécanisme efficace pour adapter les êtres vivants à de nouveaux environnements et à de nouvelles contraintes. Une telle adaptation à de nouvelles situations est aussi l'un des principaux défis ouverts en robotique car les robots autonomes doivent gérer de nombreuses situations non prévues par leurs créateurs. Cependant, les chercheurs en robotique évolutionniste (ER) ont presque exclusivement concentré leurs efforts sur les capacités d'optimisation des AEs et seuls de rares et disparates travaux ont abordé l'utilisation des capacités d'adaptation de l'évolution pour la robotique.
Le but général de ce projet est de combler ce vide en employant les capacités créatives mais aussi adaptatives des algorithmes évolutionnistes pour concevoir des logiciels capables d'adapter de manière autonome le comportement de robots dans des situations imprévues. Dans le scénario typique, un robot mobile rencontre une situation qui nécessite une adaptation (e.g. une patte est cassée ou le type de sol a changé). Le robot est autorisé à lancer quelques expériences pour évaluer la situation; après quelques minutes, il devrait être capable de poursuivre sa mission jusqu'à ce qu'une nouvelle adaptation soit nécessaire.
Au lieu d'essayer de simuler l'évolution d'un écosystème de robots (i.e. de copier directement l'évolution naturelle), nous nous inspirerons des algorithmes de "recherche directe de politique" qui ont été conçus pour les scénarios d'apprentissage par renforcement en robotique. Pour étendre l'espace des comportements possibles et ainsi permettre une adaptation créative, nous substituerons les algorithmes d'optimisation locale sur lesquels se fondent ces algorithmes par des algorithmes évolutionnistes; ces derniers sont en particulier capables d'optimiser à la fois la structure et les paramètres de contrôleurs.
Le principal défi pour employer l'évolution de cette manière est de réduire au maximum le nombre d'essais sur le robot tout en permettant un très grand nombre (si possible un nombre infini) de comportements. Nous relèverons ce défi en suivant deux pistes de recherche complémentaires:
- en s'inspirant à la fois du travail de Bongard sur les machines résilientes basées sur un modèle de soi (self-model) et de notre travail sur le passage de la simulation à la réalité, nous concevrons un nouveau schéma d'optimisation dans lequel la plus grande partie de l'optimisation se basera sur le modèle de soi tout en focalisant la recherche sur les contrôleurs qui fonctionnent correctement sur le robot réel dans la situation courante;
- nous nous attacherons à améliorer l'évolvabilité (i.e. la capacité à s'adapter rapidement à de nouvelle situations) en utilisant un codage des solution bio-inspiré (HyperNEAT + oscillateurs non linéaires) et en encourageant la modularité (en ajoutant une nouvelle pression de sélection).
D'une manière générale, notre projet vise à améliorer l'état de l'art en robotique autonome en proposant des avancées fondamentales concernant les algorithmes d'adaptation. Le soutien de l'ANR permettra la construction de trois démonstrateurs robotiques et l'embauche d'un post-doc pendant 2 ans ; les productions du projet seront essentiellement des publications scientifiques et le code source de l'implémentation des algorithmes qui seront développés.
Monsieur Jean-Baptiste MOURET (Institut des Systèmes Intelligents et de Robotique) – mouret@isir.upmc.fr
L'auteur de ce résumé est le coordinateur du projet, qui est responsable du contenu de ce résumé. L'ANR décline par conséquent toute responsabilité quant à son contenu.
ISIR Institut des Systèmes Intelligents et de Robotique
Aide de l'ANR 249 016 euros
Début et durée du projet scientifique :
décembre 2012
- 36 Mois