Apprendre aux robots à improviser (avec des outils)

Les humains sont très forts pour utiliser des outils de façon détournée. Vous n’avez pas de cuillère ? Vous allez utiliser un stylo pour touiller votre café. Il manque un boulon pour accrocher une lampe ? Un élastique fera temporairement l’affaire. Besoin d’un plateau ? Un livre ou une tablette numérique suffiront. Cette capacité d’improvisation ne naît pas « ex nihilo », elle résulte de capacités cognitives qui nous permettent de faire des liens entre les objets, les outils à notre disposition, leurs usages…

Ganesh Gowrishankar, Université de Montpellier

AdobeStock_ 186842473 ©besjunior – stock.adobe.com

L’utilisation d’outils dans les robots a jusqu’à présent été considérée comme un problème d’exploration et d’apprentissage : un robot a besoin de découvrir comment un outil peut être utilisé, soit en essayant diverses stratégies, soit en observant et en imitant d’autres humains ou robots. Dans notre étude parue dans Nature Machine Intelligence, nous avons montré que l’on pouvait apprendre aux robots à penser de façon plus créative, « outside the box », comme diraient les anglophones.

Pour permettre aux robots d’utiliser les outils de manière intuitive comme les humains, nous avons d’abord examiné comment nous, les humains, sommes capables de le faire.

Vers la « cognition des outils » chez les robots

Un robot a besoin de ramasser un seau, mais le chemin est bloqué par certains obstacles. Ce robot-ci ne peut pas déplacer les obstacles ni sauter par-dessus. Mais il a pu chercher — et trouver — un bâton de nettoyage et l’utiliser comme outil pour ramasser le seau.

Cette utilisation simple d’un outil peut sembler évidente pour un humain, mais c’est un défi complexe pour un robot.

En effet, l’utilisation d’outils nécessite d’abord que le robot comprenne qu’il ne peut pas effectuer une tâche sans outil (1). Il doit ensuite trouver un objet dans son environnement qu’il puisse utiliser comme outil pour effectuer la tâche demandée (2). Pour il doit trouver comment utiliser cet outil, c’est-à-dire déterminer les actions à effectuer (3). Et enfin, bien sûr, exécuter ces actions… et donc réaliser la tâche (4).

Les deuxième et troisième défis sont des défis cognitifs fondamentaux, pour lesquels les humains semblent être très bons… et les robots, nettement moins.

Notre nouvel algorithme de « cognition des outils » chez les robots fait un grand pas en avant pour répondre à ces défis.

Comment les humains reconnaissent-ils qu’un objet est suffisant pour servir d’outil pour une tâche donnée ?

Dans notre travail, nous avons catégorisé des outils en fonction de la manière dont nous, humains, les utilisons. Cette catégorisation montre que les humains ne peuvent en fait reconnaître intuitivement qu’une catégorie très spécifique d’outils.

Ces outils de « catégorie 1 » sont des outils qui permettent de réaliser des tâches qui sont déjà dans le répertoire humain. Par exemple, une pince nous aide à saisir des objets, mais nous pouvons déjà le faire avec nos doigts ; un marteau nous aide à frapper des objets, ce que nous pouvons déjà faire avec le poing.

comparaisons entre gestes et outils
Les gestes que l’on fait avec nos membres s’apparentent à ceux que l’on fait avec des outils de catégorie 1. Ganesh Gowrishankar, Fourni par l’auteur

L’utilisation de ces outils de « catégorie 1 » nécessite le même geste que celui que nous ferions sans outil : une pince a besoin de vous pour pincer, ce qui est similaire à ce que vous ferez avec vos doigts ; un marteau nécessite que vous fassiez des mouvements de frappe oscillants, et vous feriez le même mouvement sans marteau.

Les outils de catégorie 1 sont probablement les plus courants dans la vie humaine et animale. Les premiers outils utilisés par les humains, des pierres pour frapper et casser les fruits et les couper, étaient des outils de catégorie 1, car les humains pouvaient effectuer ces tâches, avec des actions similaires, respectivement avec leur poing et leurs ongles. Et de fait, les outils utilisés par les animaux peuvent être classés en catégorie 1.

Nous appelons outils de « catégorie 2 » les outils qui permettent de réaliser des tâches que les humains savent réaliser sans outil mais avec des gestes bien différents (comme un cric de voiture pour soulever une voiture).

Les outils de catégorie 3 permettent de réaliser des tâches qui sortent du répertoire humain (comme un aspirateur ou une tronçonneuse).

Ces outils de catégories 2 et 3 ne peuvent pas être utilisés intuitivement par les humains : il faut lire des instructions, imiter un autre utilisateur, ou explorer l’outil pour découvrir comment l’utiliser.

Les outils que les humains utilisent intuitivement

On croit en psychologie que l’une des raisons pour lesquelles les humains sont bons dans l’utilisation des outils est que l’utilisation des outils conduit à une « incarnation » des outils, c’est-à-dire que le cerveau finit par considérer les outils comme une « extension » de notre corps.

Dans nos travaux sur « l’incarnation » de l’outil et du membre par l’homme, nous avons observé que la similarité des caractéristiques d’un objet avec les caractéristiques fonctionnelles du membre est importante pour son incarnation.

Cette observation, ainsi que notre caractérisation des outils suggèrent que pour identifier les outils de catégorie 1, les humains utilisent peut-être leurs membres comme référence : un marteau est reconnu comme un outil pour frapper des objets car il ressemble beaucoup à un poing et à un bras, une pince est reconnue comme un outil pour pincer car elle ressemble à des doigts purs, et de même, une assiette ressemble à une paume et un bol ressemble à des mains en coupe. En identifiant et en comparant la posture de nos membres lorsque nous effectuons une tâche, nous pouvons identifier les outils qui peuvent être utilisés pour la tâche effectuée avec la même posture.

Utiliser la similitude avec ses membres est l’idée clé qui est utilisée pour programmer notre robot.

Apprendre aux robots à reconnaître les outils qui ressemblent à ce qu’ils connaissent

Notre algorithme utilise cette idée pour permettre aux robots de reconnaître les objets (même ceux qu’ils voient pour la première fois) comme des outils pour chaque tâche qu’ils ont la capacité d’effectuer « sans outils » (c’est-à-dire avec leurs membres, sans objet supplémentaire).

robot saisissant un marteau pour faire glisser un objet sur une table
Un robot utilise un outil qu’il ne connaissait pas, par analogie avec sa main. Ganesh Gowrishankar, Fourni par l’auteur

Une fois qu’un robot a appris à effectuer une tâche avec ses membres, notre algorithme lui permet d’utiliser ses membres comme référence pour reconnaître les outils qui l’aident à accomplir la même tâche. De plus, par définition, comme les outils de catégorie 1 nécessitent la même action que sans outils, le robot peut utiliser la même compétence (« contrôleur ») pour utiliser l’outil en augmentant simplement sa cinématique corporelle en fonction du nouvel outil.

Le robot n’a pas besoin d’avoir déjà utilisé un seul outil ni même d’avoir observé l’utilisation des outils par d’autres.

Dans notre proposition, nous fournissons également un algorithme de planification de préhension pour saisir et utiliser les outils identifiés. Contrairement aux algorithmes précédemment décrits dans la littérature scientifique, le nôtre est le premier à permettre aux robots d’utiliser des outils sans avoir à apprendre au préalable avec les mêmes outils ou avec d’autres outils.

Cependant, pour le moment, notre algorithme permet uniquement aux robots d’utiliser des outils de catégorie 1, c’est-à-dire des outils pour les tâches que le robot est capable d’effectuer sans outils. Pour les outils de catégories 2 et 3, un apprentissage ou une observation (suivi d’une imitation) sont nécessaires, à l’instar des algorithmes d’utilisation d’outils précédents.

De plus, on peut étendre l’algorithme à l’utilisation d’outils similaires à ceux déjà connus du robot : en gros, on remplace la « similarité avec un membre » par « similarité avec un outil connu », comme suggéré par les algorithmes précédemment décrits.

Mais comme nous l’avons vu, les outils de catégorie 1 semblent être les outils les plus basiques chez l’homme et l’animal et nous pensons donc que notre algorithme constitue une étape significative vers la cognition des outils chez les robots.

Ganesh Gowrishankar, Chercheur au Laboratoire d’Informatique, de Robotique et de Microelectronique de Montpellier, Université de Montpellier

Cet article est republié à partir de The Conversation sous licence Creative Commons. Lire l’article original.