Découvrir des espaces d’état et d’action pertinents nécessite de générer les effets que le robot cherchera ensuite à reproduire. La difficulté est que de nombreux effets sont liés à des interactions rares qu’il est donc peu probable d’observer avec un mouvement purement aléatoire. Attraper un objet, par exemple, nécessite de diriger le préhenseur du robot vers l’objet, de l’orienter convenablement puis de le positionner avec précision avant de déclencher la saisie. S’écarter ne serait-ce qu’un peu de ce mouvement provoquera un échec de la saisie. Des mouvements aléatoires ont donc peu de chance de réussir. Il est bien sûr possible de définir des mouvements dédiés à la saisie, c’est d’ailleurs un domaine de recherche très fructueux de la robotique, mais s’il n’est pas possible de faire apprendre une action aussi simple, comment le robot pourra-t-il apprendre des mouvements plus complexes?
L’approche que j’explore s’appuie sur les algorithmes de recherche de nouveauté et de qualité-diversité. Le principe est de définir un espace comportemental que l’algorithme cherchera à couvrir de façon aussi uniforme que possible. Cet espace est en général une description en petite dimension du comportement du robot (un ou plusieurs points de sa trajectoire, position d’objets pertinents, …). Chaque politique que l’algorithme explore est caractérisée par un point dans cet espace. Une procédure évolutionniste de variation-sélection est alors mise en place pour choisir les points qui sont dans les parties les moins explorées (recherche de nouveauté). Ce processus très simple tend vers un échantillonnage uniforme de l’espace comportemental. C’est une propriété très intéressante car on ne sait pas échantillonner directement dans cet espace: des politiques tirées aléatoirement se concentrent en général sur une petite partie de l’espace uniquement. Une mesure que qualité peut être ajoutée. Pour des politiques ayant un comportement similaire, elle permettra de préférer la politique qui a la qualité la plus élevée. La qualité est donc utilisée localement, ce n’est pas un critère global à maximiser.
Être capable de couvrir uniformément un tel espace permet d’identifier ce qui est possible pour le robot et de résoudre des tâches en cas de récompenses rares ou trompeuses. Définir manuellement l’espace comportemental est une limite de ces approches dont on cherche également à s’affranchir en construisant cet espace à partir des perceptions du robot.
Quelques articles sur le sujet: