Using reinforcement learning for optimizing the reproduction of tasks in robot programming by demonstration

Florent Günter
2008
As robots start pervading human environments, the need for new interfaces that would simplify human-robot interaction has become more pressing. Robot Programming by Demonstration (RbD) develops intuitive ways of programming robots, taking inspiration in strategies used by humans to transmit knowledge to apprentices. The user-friendliness of RbD is meant to allow lay users with no prior knowledge in computer science, electronics or mechanics to train robots to accomplish tasks the same way as
more » ... the same way as they would with a co-worker. When a trainer teaches a task to a robot, he/she shows a particular way of fulfilling the task. For a robot to be able to learn from observing the trainer, it must be able to learn what the task entails (i.e. answer the so-called "What-toimitate? " question), by inferring the user's intentions. But most importantly, the robot must be able to adapt its own controller to fit at best the demonstration (the so-called "How-to-imitate? " question) despite different setups and embodiments. The latter is the question that interested us in this thesis. It relates to the problem of optimizing the reproduction of the task under environmental constraints. The "How-to-imitate? " question is subdivided into two problems. The first problem, also known as the "correspondence problem", relates to resolving the discrepancy between the human demonstrator and robot's body that prevent the robot from doing an identical reproduction of the task. Even tough we helped ourselves by considering solely humanoid platforms, that is platforms that have a joint configuration similar to that of the human, discrepancies in the number of degrees of freedom and range of motion remained. We resolved these by exploiting the redundant information conveyed through the demonstrations by collecting data through different frames of reference. By exploiting these redundancies in an algorithm comparable to the damped least square algorithm, we are able to reproduce a trajectory that minimizes the error between the desired trajectory and the reproduced trajectory across each frame of reference. The second problem consists in reproducing a trajectory in an unknown setup while respecting the task constraints learned during training. When the informations learned from the demonstration no longer suffice to generalize the task constraints to a new set-up, the robot must re-learn the task; this time through trial-and-error. Here we considered the combination of trial-and-error learning to complement RbD. By adding a trial-and-error module to the origiii inal Imitation Learning algorithm, the robot can find a solution that is more adapted to the context and to its embodiment than the solution found using RbD. Specifically, we compared Reinforcement Learning (RL) -to other classical optimization techniques. We show that the system is advantageous in that: a) learning is more robust to unexpected events that have not been encountered during the demonstrations and b) the robot is able to optimize its own model of the task according to its own embodiment. Keywords: Robot programming by demonstration (RbD), Humanoid Robots, Imitation Learning, Trial-and-Error Learning, Reinforcement Learning (RL). iv Le problème défini par la question "comment est-ce qu'il faut imiter? " peutetre séparé en deux parties. La première partie consisteà trouver une solution pour résoudre les problèmes posés par la différence de morphologie entre le démonstrateur (l'être humain) et l'imitateur (le robot). Ce problème est connu sous le nom de "problème de correspondance". La première partie de la solution v à ce problème est donnée directement par la conception mécanique du robot. En effet, en utilisant des robots humanoïdes dont la cinématique est la plus proche possible de la cinématique de l'être humain, nous réduisons grandement la différence de morphologie et donc nous facilitons le transfert des données du mouvement entre l'être humain et le robot. La seconde partie de la solution est apportée par la combinaison des données enregistrées dans différents référentiels durant les démonstrations. La redondance de ces données est exploitée dans un algorithme de cinématique inverse inspiré par l'algorithme des moindres carrés amortis. Cette algorithme génère une trajectoire en minimisant l'erreur entre la trajectoire désirée et la trajectoire effectivement reproduite par le robotà travers les différents référentiels. La seconde partie du problème consisteà trouver une manière de généraliser la reproduction de la tâche apprise afin que le robot puisse la reproduire en respectant les contraintes dans différentes situations et même dans des situations qui n'auraient pasété démontrées lors de la phase d'apprentissage. Dans le domaine de la programmation de robots par démonstration, l'idée est que le robot apprenne la tâche avec un instructeur. Mais il existe aussi d'autres techniques, comme par exemple l'apprentissage par renforcement, qui permettent au robot d'apprendre une tâche par lui-même sans interventions extérieures. En utilisant l'apprentissage par renforcement, même si l'apprentissage et un peu plus long, la solution trouvée par le robot est plus adaptéeà sa propre morphologie. Dans ce travail, la solution proposée est de combiner les deux méthodes d'apprentissages afin d'aboutirà un algorithme plus robuste. En ajoutant un module constitué d'un algorithme d'apprentissage par renforcementà l'algorithme d'apprentissage par imitation de base, nous donnons la possibilité au robot de réapprendre et d'optimiser son propre modèle de la tâcheà effectuer. Les avantages du système sont: a) le robot a la possibilité de réagir correctement s'il se trouve en face d'une situation qu'il n'a pas observé durant les démonstrations et b) il a aussi la possibilité d'optimiser la reproduction de la tâche en tenant compte des contraintes posées par sa propre morphologie. Mots clés: Programmation par démonstration, robots humanoïdes, apprentissage par imitation, apprentissage par renforcement. vi
doi:10.5075/epfl-thesis-4311 fatcat:wol3uajubrht3phe4uizez2wpy