Robots Footballeurs

Deux jours avant le lancement officiel de la Coupe du Monde 2002, une autre compétition de foot se terminait en Corée : la coupe du monde des robots footballeurs ou "FIRA Cup".

Cette dernière a vu s'affronter plus de 200 équipes provenant de 25 pays différents, via des robots miniatures élaborés au sein des laboratoire de recherche.

Créée en 1997, l'initiative de Jong-Hwan Kim, un Professeur de l'Institut Coréen de Technologie (KAIST), la FIRA ("Federation of International Robot-soccer Association") vise à promouvoir la recherche robotique, en s'appuyant sur une compétition aux règles précises. La FIRA Cup est destinée d'une part à fournir aux universités un terrain d'expérimentation, d'autre part à populariser la robotique.

La coupe du monde de robot-foot est décomposée en plusieurs tournois aux caractéristiques variées. Parmi eux, "MiroSot" (Micro-Robot Soccer Tournament) est le plus populaire. Les équipes s'affrontent sur un terrain de la taille d'une table de billard, sur lequel des robots d'apparence dépouillée (de simples cubes de 6 cm de côté montés sur roulettes) poussent un ballon ressemblant à une balle de ping-pong (2 robots plus 1 goal par équipe ).

    

L'exploit se cache derrière cette apparente simplicité : les robots sont en réalité des agent autonomes devant collaborer pour remplier leur objectif : marquer des BUTS !
Leur pilotage est effectué à distance par un ordinateur en utilisant la voie hertzienne. Il s'agit de démonter l'efficacité des dernières avancées à la fois en intelligence artificielle et en robotique.

Il ne faut cependant pas trop en demander : cette aventure se heurte à d'imporantes difficultés techniques. Ainsi la liasion robot-ordinateur est considérée par nombre des participants comme un élément central de réussite. Du coup on ne se situe plus tout à fait dans système multiagents. En effet, les robots ne sont pas guidés par un être humain mais ne sont pas autonomes non plus : leur ``intelligence'' est centralisée par un ordinateur qui donne une stratégie globale (même si ce dernier essaye de faire collaborer ses ouailles). Un second élément est l'objet de toutes les attentions, c'est la capacité à prédire rapidement la trajectoire de la balle.

  • Video de présentation de la FIRA contenant la finale de 1998 (lien vers "Plymouth University" United Kingdom )
  • Plusieurs autres videos (lien vers "Departamento de Computación - Facultad de Ciencias Exactas y Naturales - Buenos Aires")
  • Le champ de recherche est largement dominé par les asiatiques. Les différences de niveau entre les robots proviennent davantage d'une bonne rapidité de réaction et de déplacement plutôt que de la qualité de l'intelligence artificielle.

    Il existe une autre catégorie, simurosot, beaucoup moins connue qui consiste à en un affrontement de deux équipes de robots virtuels. (entre 5 et 11 robots par équipe selon le type d'épreuve 3 ordinateurs dédiés à la simulation). Cependant bien que les équipes se refusent à donner leurs algorithmes de contrôle, il semble qu'il ne s'agisse toujours pas d'agents indépendants communiquant avec leur environnement virtuel mais d'une stratégie collective mise en place par une intelligence centralisée.

    On peut citer egalement un autre exemple de robots footbaleurs qui est celui du trophé M6 1998. Cependant celui-ci est destiné au étudiants et ne met pas en oeuvre de techniques liées au jeu en équipe : une vidéo assez éloquente à ce sujet : robot de l'IUT de ville d'Avray (FRANCE) qui a terminé 3e en France (derrière l'X et EEA Orsay) et qui a gagné la coupe européenne.

        
    Video du robot de l'IUT

    Dans l'ensemble on peut considérer que ces compétitions de robots footballeurs (pour lesquels il faut également citer la RoboCup) sont des vitrines technologiques destinées aux médias et au grand public. Nous allons voir qu'il existe une autre partie des robots collaborant qui est davantage réservée aux chercheurs.




    Robots véritablement collaboratifs

    Les véritables robots collaboratifs sont ailleurs, cachés dans les laboratoires de recherche et encore assez peu spectaculaires. Néanmoins, on peut reprérer plusieurs initiatives intéressantes : on parle alors de Swarm Intelligence (il ne s'agit en fait que d'une fraction de la swarm intelligence qui est plus large que l'application aux seuls robots physiques )

    Pour éviter de tomber dans les écueils précédents et pour travailler sur de réels agents autonomes, nous allons commencer par quelques définitions :

    Dans la robotique collaborative stricte, on trouve deux grands exemples :
  • le ``collaborative stick-pulling''
  • le ``collaborative transport''
  • Pour le premier, je pense que la figure suivante résume bien la situation : le baton est trop grand pour qu'un robot parvienne seul à l'extraire...

    L'idée vient de la biologie [Chauvin and Janin, 1975] et les premières expérimentations sont de [Martinoli and Mondada,1995]. Plusieurs types de robots ont étés testés ; en particulier certains possédaient un meilleurs algorithmes (de reconnaissance et de communication) La conclusion de l'époque était qu'il fallait d'abord construire des individus performants puis les faire collaborer plutôt que de construire d'emblée un système collaboratif. Cette idée s'est trouvée confirmée par la suite [Ijspeert, Martinoli, Billard, and Gambardella, 2001] ont mis en évidence que l'amélioration du comportement au niveau individuel permettait d'améliorer la collaboration globale d'un ordre de grandeur. De nombreux test ont étés menés avec des robots communiquants ou non, avec des robots homogènes ou hétérogènes... Les meilleurs résultats ont étés obtenus avec des robots homogènes communiquants possédant un schéma d'action probabilite ; c'est-à-dire que leur comportement est une chaine de Markov au lieu d'un automate déterministe.

    Bien sûr, il est difficile d'apprendre une chaîne de Markov et à mon avis ce point est une limitation importante dans la construction de robots devant gérer des tâches plus complexes. En effet on est obligé d'avoir une idée à priori de la forme de la chaîne à apprendre et on doit initialiser les poids à des valeurs relativement correctes pour pouvoir utiliser les algorithmes d'apprentissage classiques. Rick Sutton de Stanford travaille sur ce point particulier en essayant de remplacer les Processus de Decison de Markow par des PSR (Predictive State Representation).

    Le second grand exemple est le transport collaboratif, clairement inspiré des fourmis...
    Le problème est de coordonner un groupe de robots pour pousser une boîte sans contrôle centralisé ni de communication explicite entre les robots. Deux tâches :

  • déplacer une boîte depuis un emplacement aléatoire jusque dans un coin
  • déplacer une boîte d'un point A à un point B
  • Initié par [Kube and Zhang, 1994, 1997], résultats de [Kube, Bonabeau, Robotics and Autonomous Systems , Vol. 30 (2000)]




    Cette expérience soulève bien des questions : Plus les robots sont nombreux plus ils ont du mal... Ceci semble être du à des difficulté de coordination mais est selon moi un point gênant... les robots lors des tests parviennent à changer de comportement lorsqu'il stagnent ; on observe le même comportement chez les fourmis y a t-il un lien ? Il n'y a pas de modélisation précise dans cette expérience, et l'apprentissage des robots fait appel à de nombreux ``coups de tournevis'' Les robots ne communiquent pas du tout entre eux (pas même au niveau local). Quelles en sont les conséquences ? (Variabilité des résultats , performance sous-linéaires)

    Présentation des recherches de Kube

    En plus de ces deux grandes expériences collaboratives, on peut citer d'autres approches coopératives (attention à la nuance).

    Box-pushing with Alliance architecture [L. Parker 1995, 2000] basée sur le comportement, résistante au bruit, distribuée, adaptée pour des robots hétérogènes, exploite la supériorité des robots sur les insectes en termes de communication Mais cette approche ne passe pas à l'échelle : elle repose sur le fait que chaque robot est conscient de ce que font les autres (communication globale, système de positionnement absolu, monotâche ) et ne fonctionne que pour de petits groupes de robots. Approche idendique dans [M. Mataric1995, 2000]

    Stick-Passing [L. Parker 1995, 2000]

    Box lifting and transportation [Bay and Johnson, 1995] Se base sur des techniques employées par l'armée pour transporter des charges. On force le calcul et la modélisation d'un plan d'action. Il semble que personne n'ai vu le système fonctionner réellement.

    Cooperative manipulation [Khatib 1999, 2000] On force le calcul et la modélisation d'un plan d'action.

    les robots CESAR de l'ORNL dont la mission est principalement la découverte de milieux nouveaux par une approche coopérative (et non collaborative).

    Les Tactical Mobiles Robots (TMR) ; ils sont développés avec des crédits militaires pour remplir des missions de reconnaissance. Certains de leurs projets font appels à des groupes de robots collaborant

    Conclusions

    Deux Grandes questions semblent se poser pour l'avenir des robots collaboratifs :

    Comment fusionner les approches collaboratives et coopératives sans perdre le passage à l'échelle ? Et de manière générale comment s'effectuent les passages à l'échelle pour des groupes ? Ce point est extrèment interessant et fait l'objet de recherches de la part de grands mathématiciens et physiciens (en particulier pour tenter de comprendre la structure de l'univers). En effet, il semble que nos outils classiques tels que la dérivée (ou plus largement les distributions) ne soient absolument pas adaptés pour répondre à des problèmes complexes de type fractal par exemple (comment trouver une tangente à l'ensemble de Mandelbroot alors qu'il n'y a même pas de frontière).

    Quelle type de communication implicite ou explicite, peut-on s'autoriser dans une expérience strictement collaborative ? La question se retrouve à mon sens dans le monde des agents : quels moyens de communication utiliser ? KQML ? Peut-on espérer mettre au point une technique de communication qui soit adaptable et évolutive au cours du temps ? Ce point me paraît fondamental car comment continuer une approche incrémentale telle que le permettent les agents si on est obligé de reprogrammer tous les agents chaque fois que l'on souhaite enrichir le langage. A mon sens il y a deux solutions à ce problème :

  • La première est d'essayer de construire avant de coder des agent une ontologie absolue du monde, telle que l'imagine Christine Rousset
  • La seconde est de faire en sorte que les agent soient capables de faire évoluer eux-même leur système de communication selon leurs besion. L'idée paraît un peu folle mais après tout pas davantage que la première. En effet on peut imaginer, à condition d'introduire une fonction de fitness globale sur la collaboration des agents, d'utiliser l'évolution (algorithmes génétiques) pour réponde à cette contrainte. Je n'ai trouvé aucun travaux dans cette direction qui reste donc ouverte à l'expérimentation...

  • Quelques Sites utilisés dans la réalisation de ce travail :

  • Site internet de la FIRA
  • RoboCup L'autre grande organisation de robots footballeurs
  • CMU - Robot Learning Laboratory
  • Foster-Miller, Inc
  • Georgia Tech - Robotics
  • University of Michigan - MEAM Mobile Robotics Lab
  • SRI - SenseNet
  • USC - Robust Tactical Mobile Robot System with Distributed Intelligence
  • JPL
  • ISR Urban Robot
  • CMU - Martial Hebert
  • ORNL Cooperative Robotics