TU Darmstadt / ULB / TUprints

Bidirectional Human-Robot Learning: Imitation and Skill Improvement

Sousa Ewerton, Marco Antonio (2020)
Bidirectional Human-Robot Learning: Imitation and Skill Improvement.
Technische Universität Darmstadt
doi: 10.25534/tuprints-00011875
Ph.D. Thesis, Primary publication

Copyright Information: CC BY-SA 4.0 International - Creative Commons, Attribution ShareAlike.

Download (66MB) | Preview
Item Type: Ph.D. Thesis
Type of entry: Primary publication
Title: Bidirectional Human-Robot Learning: Imitation and Skill Improvement
Language: English
Referees: Peters, Prof. Dr. Jan ; Takahashi, Prof. Dr. Masaki
Date: 23 June 2020
Place of Publication: Darmstadt
Date of oral examination: 15 July 2019
DOI: 10.25534/tuprints-00011875

A large body of research work has been done to enable robots to learn motor skills from human demonstrations. Likewise, much work has been done on investigating how humans can learn from robots or get physically assisted by them. However, these two bodies of work have been mostly detached from each other. A set of works in robotics has been enabling robots to learn motor skills through imitation and self-improvement while another set of works in robotics and sports science has studied how robots can help humans perform movements with less effort, assist humans in rehabilitation and in motor skill learning.

In most of the work on humans being assisted by robots, there is no attempt to improve upon predefined movements or demonstrations through machine learning techniques. In part, this lack of machine learning in the area of robot-assisted human motion is due to the high cost of collecting data of humans interacting with robots. Collecting this type of data might involve risks to humans, usually takes a large amount of time, usually requires expensive equipment and trained personnel. Collecting data of interactions between humans, from videos for example, does not present some of these difficulties. Nevertheless, data of interactions between humans may not be readily usable for machine learning techniques applied to robotics because of the differences between the morphology of humans and robots, lack of information about forces and torques, which may be critical to succeed in some tasks, endless variability of interaction scenarios, etc. Consequently, it is hard to collect enough data to infer the behavior of the robot given the behavior of the human and the environment in any possible situation. It is also hard to make the robot improve its interaction with humans through trial and error in a safe manner within a feasible amount of time. Therefore, even state-of-the-art work on robots assisting humans often avoids machine learning. Robot-assisted training and rehabilitation are based for example on spring-damper systems with fixed stiffness and damping coefficients. Assisted teleoperation relies for example on expert demonstrations or on rules designed to assist users in specific situations such as grasping multiple objects.

However, in order to increase the usability and range of applications of robot assistants, it is crucial that these robots autonomously adapt to different humans, tasks and environments. Moreover, it would be desirable that a robot could teach or assist a human just like a human can teach a new skill to a robot via kinesthetic teaching, i.e., moving the robot arm with gravity compensation.

Building on data-efficient machine learning techniques, this thesis presents a unifying perspective to the fields of robots learning from humans and humans from robots. Using stochastic movement representations and reinforcement learning techniques, we enable robots to learn motor skills from a few human demonstrations and improve these motor skills. Subsequently, the robot can help humans learn a new motor skill or perform a challenging task such as teleoperation requiring obstacle avoidance and accuracy.

We start by tackling one of the key problems in human-robot interaction: how can a robot learn to react to human movements which can vary both in shape and speed? We present a method to enable robots to learn interaction models from demonstrations with different speeds even if the demonstrations are corrupted by noise or occlusion, for example. These interaction models, which are based on stochastic movement representations, can then be used to predict the rest of a human action given observations of its beginning as well as to compute the most suitable robot reaction.

Often, human demonstrations are suboptimal because the human is a non-expert, the environment changes rendering the demonstrations ineffective, the robot cannot accurately reproduce the demonstration, etc. In such cases, it is necessary to improve upon the initial demonstrations. We present an approach to deal with this problem by enabling the human to teach new motor skills to robots through demonstrations and incremental feedback. Furthermore, by using probabilistic conditioning, the robot is able to generalize learned movements to different situations.

Human demonstrations can be suboptimal not only with respect to their shape in space but also with respect to their speed profile. The robot may have for example to adapt the speed of a movement to throw an object further away or closer, hit an object faster or slower, etc. These can be local adaptations of the speed profile instead of simply accelerating or decelerating the whole movement uniformly. Moreover, if a high degree of accuracy is required, it may be very difficult for a human to correct the initial demonstrations through incremental feedback. Besides that, it is desirable that the robot improve its movements without always requiring human input. We address this problem by optimizing through reinforcement learning movement parameters that determine the speed profile of movements.

Having addressed key problems towards making robots more capable of learning from human demonstrations and improve upon these demonstrations, we start to look into how robots can help humans learn new motor skills or perform a challenging teleoperation task. As before, using stochastic movement representations, we address the problem of giving visual feedback to a human trying to learn a new motor skill. Our proposed algorithm aligns expert demonstrations in space and time and builds a probability distribution of trajectories. When a user tries to perform that motor skill, our algorithm uses the built probability distribution based on the expert demonstrations to evaluate if the user attempt matches or not the expert movements and gives visual feedback to the user.

A similar principle can be used to give haptic feedback to the user, helping him/her to succeed in challenging teleoperation tasks. As we demonstrate through user studies, teleoperation tasks may be difficult for humans when, for example, the human cannot accurately estimate the 3D position of objects or the human needs to control several degrees of freedom at the same time. In this case, the failed attempts of the human are used as initial demonstrations and are optimized through reinforcement learning to generate trajectory distributions that satisfy the requirements of the task.

We assist humans in teleoperation tasks initially by tackling motion planning problems in static environments. Subsequently, we build up a framework that enables robots to solve motion planning problems and interact with humans in dynamic environments. Finally, we tackle tasks with multiple possible solutions such as grasping multiple objects and infer the intention of the user to select the most appropriate guidance.

In summary, this thesis uses stochastic movement representations to enable robots to learn motor skills from human demonstrations and incremental feedback. These movement representations are used in conjunction with reinforcement learning algorithms to make the robot improve upon the demonstrations or upon arbitrary initial trajectory distributions. The robot can use trajectory distributions based on expert demonstrations to help non-experts acquire a new motor skill. In addition, if the human demonstrations are not suitable, the robot can use trajectory distributions optimized trough reinforcement learning to help users perform challenging tasks, e.g. in teleoperation. Further applications of the algorithms and frameworks proposed in this thesis may lie in fields such as rehabilitation, training in sports and human-robot collaboration.

Alternative Abstract:
Alternative AbstractLanguage

Zum einen wurde viel Forschung mit dem Ziel betrieben, Roboter dazu zu befähigen anhand menschlicher Demonstrationen motorische Fertigkeiten zu erlernen. Zum anderen wurde umfangreich erforscht, wie Menschen von Robotern lernen oder von ihnen physisch unterstützt werden können. Diese beiden Forschungsfelder sind jedoch weitestgehend voneinander getrennt. Eine Reihe von Arbeiten in der Robotik hat Roboter dazu in die Lage versetzt motorische Fertigkeiten anhand von Demonstrationen und durch Selbstverbesserung zu erlernen. Eine andere Reihe von Arbeiten in der Robotik und den Sportwissenschaften hat erforscht, wie Roboter Menschen dabei helfen können, Bewegungen mit geringerem Kraftaufwand auszuführen und wie Roboter Menschen bei der Rehabilitation sowie beim Erlernen motorischer Fertigkeiten unterstützen können.

In den meisten Arbeiten, die sich mit der Unterstützung des Menschen durch Roboter beschäftigen, wird nicht versucht vordefinierte Bewegungen oder Demonstrationen durch Techniken des maschinellen Lernens zu verbessern. Der mangelnde Einsatz von Techniken des maschinellen Lernens im Bereich der von Robotern unterstützten menschlichen Bewegung ist zum Teil auf die Tatsache zurückzuführen, dass die Datensammlung in Hinblick auf die Interaktion von Menschen mit Robotern sehr kostenintensiv ist. Eine Datensammlung dieser Art könnte mit Risiken für den Menschen verbunden sein. Darüber hinaus ist ein solches Vorhaben für gewöhnlich sehr zeitintensiv und setzt in der Regel eine kostspielige Ausstattung sowie geschultes Personal voraus. Die Erhebung zwischenmenschlicher Interaktionsdaten, beispielsweise mithilfe von Videos, ist mit einzelnen der zuvor genannten Schwierigkeiten nicht verbunden. Solche Interaktionsdaten sind jedoch nicht ohne weiteres verwendbar, wenn Techniken des maschinellen Lernens auf Roboter angewendet werden sollen. Schwierigkeiten bestehen zum einen aufgrund der unterschiedlichen Morphologie des Menschen und des Roboters. Zum anderen liegt ein Mangel an Informationen hinsichtlich der Kräfte und Drehmomente vor, was sich bei der Ausführung mancher Aufgaben als kritisch erweisen könnte, und es gibt eine unendliche Variabilität an Interaktionsszenarien. Folglich gestaltet sich die Erhebung einer ausreichenden Datenmenge, anhand derer in jeder möglichen Situation vom beobachteten Verhalten des Menschen und den Umweltbedingungen auf das Verhalten des Roboters geschlossen werden kann, als äußerst schwierig. Eine weitere Herausforderung besteht darin, auf sichere Art und Weise und innerhalb einer vertretbaren Zeitspanne, die Interaktion des Roboters mit dem Menschen mithilfe der Trial-and-Error-Methode zu verbessern. Aus diesem Grund werden in den meisten aktuellen Forschungsarbeiten, in denen es darum geht, wie Roboter Menschen unterstützen können, Techniken des maschinellen Lernens nicht in Erwägung gezogen. Arbeiten, die erforschen wie Roboter Menschen beim Training und bei der Rehabilitation unterstützen können, beruhen zum Beispiel auf Feder-Dämpfer-Systemen mit vorher festgelegten Steifigkeits- und Dämpfungs-Koeffizienten. Weiterhin basieren von Robotern unterstütze Teleoperationen zum Beispiel auf Experten-Demonstrationen oder auf Regeln, die dazu entwickelt wurden, Anwender in spezifischen Situationen, beispielsweise beim Greifen mehrerer Objekte, zu unterstützen. Um die Brauchbarkeit von Assistenz-Robotern zu verbessern und deren Anwendungsgebiet auszuweiten, ist es dennoch notwendig, dass sich diese selbstständig an verschiedene Menschen, Aufgaben und Umweltbedingungen anpassen. Darüber hinaus wäre es wünschenswert, wenn ein Roboter einem Menschen in gleichem Maße neue Dinge beibringen oder ihn unterstützen könnte, wie ein Mensch einem Roboter durch Kinesthetic Teaching neue Dinge beibringen oder ihn unterstützen kann. Mithilfe des Kinesthetic Teaching kann ein Roboterarm mit Ausgleich der Schwerkraft bewegt werden.

In der vorliegenden Thesis wird erforscht, wie dateneffiziente Techniken des maschinellen Lernens in wechselseitigen Lernprozessen zwischen Menschen und Robotern eingesetzt werden können. Durch die Anwendung von stochastischen Bewegungsrepräsentationen und Techniken des Reinforcement Learnings, befähigen wir Roboter dazu anhand einer kleinen Anzahl von menschlichen Demonstrationen motorische Fertigkeiten zu erlernen und diese Fertigkeiten zu verbessern. Danach kann der Roboter Menschen dabei helfen eine neue motorische Fertigkeit zu erlernen oder eine herausfordernde Aufgabe, wie eine Teleoperation, die die Umrundung von Hindernissen und Sorgfältigkeit erfordert, zu bewältigen.

Zunächst gehen wir eine der Hauptherausforderungen in der Mensch-Roboter-Interaktion an: Wie kann ein Roboter lernen auf menschliche Bewegungen zu reagieren, welche sowohl in ihrer Form wie auch in ihrer Geschwindigkeit variieren? Wir beschreiben eine Methode, die einen Roboter dazu befähigen kann, Interaktionsmodelle anhand von Demonstrationen unterschiedlicher Geschwindigkeit zu erlernen. Dabei ist es nicht von Bedeutung, ob die Demonstrationen beispielsweise durch Geräusche oder optischen Barrieren gestört werden. Diese Interaktionsmodelle, welche auf stochastischen Bewegungsrepräsentationen basieren, können anschließend dazu verwendet werden den Rest einer menschlichen Bewegung vorherzusagen, vorausgesetzt es liegen Beobachtungen zu deren Beginn vor, und die passendste Reaktion des Roboters zu berechnen. Häufig sind die Demonstrationen des Menschen suboptimal, da der Mensch kein Experte ist. Weitere Probleme entstehen dadurch, dass sich die Umweltbedingungen verändern und der Roboter nicht immer ganz akkurat die Demonstrationen reproduzieren kann. In einem solchen Fall ist es notwendig die Bewegungen der Anfangsdemonstration zu verbessern. Wir beschreiben einen Ansatz, mit dessen Hilfe diesem Problem begegnet werden kann. Mit diesem Ansatz befähigen wir den Menschen dazu, dem Roboter mithilfe von Demonstrationen und inkrementellem Feedback neue motorische Fertigkeiten beizubringen. Darüber hinaus wird der Roboter mithilfe von probabilistischer Konditionierung dazu in die Lage versetzt gelernte Bewegungen auf verschiedene Situationen zu generalisieren.

Menschliche Demonstrationen können sich nicht nur in Hinblick auf die Form, sondern auch in Hinblick auf das Geschwindigkeitsprofil als suboptimal erweisen. Zum Beispiel könnte der Fall eintreten, dass der Roboter die Geschwindigkeit einer Bewegung anpassen muss, um ein Objekt weiter oder weniger weit zu werfen, ein Objekt schneller oder langsamer zu treffen, etc. Im Zuge dessen könnte eine einheitliche Beschleunigung oder Verlangsamung der ganzen Bewegung nicht ausreichend sein und eine lokale Anpassung des Geschwindigkeitsprofils notwendig werden. Wenn ein hoher Grad an Exaktheit notwendig ist, könnte es darüber hinaus für einen Menschen sehr schwierig sein, die ursprüngliche Demonstration mithilfe von inkrementellem Feedback zu verbessern. Zusätzlich wäre es wünschenswert, dass der Roboter seine Bewegung selbstständig verbessert, ohne fortwährend ein Input des Menschen zu benötigen. Wir gehen dieses Problem an, indem wir die Bewegungsparameter, die das Geschwindigkeitsprofil der Bewegungen bestimmen, mithilfe von Reinforcement Learning optimieren.

Nachdem wir einige Hauptprobleme adressiert haben, die dabei entstehen, wenn es darum geht Roboter dazu zu befähigen Bewegungen anhand menschlicher Demonstrationen zu lernen und diese Bewegungen zu verbessern, betrachten wir wie Roboter Menschen dabei helfen können neue motorische Fertigkeiten zu erlernen und herausfordernde Aufgaben der Teleoperation auszuführen. Auch an dieser Stelle verwenden wir stochastische Bewegungsrepräsentationen. Zunächst versuchen wir Menschen durch visuelles Feedback beim Erlernen neuer motorischer Fertigkeiten zu unterstützen. Unser vorgeschlagener Algorithmus justiert Experten-Demonstrationen in Hinblick auf Raum und Zeit und erstellt eine Wahrscheinlichkeitsverteilung der Trajektorien. Wenn ein Anwender versucht eine bestimmte Bewegung auszuführen, verwendet unser Algorithmus die erstellte Wahrscheinlichkeitsverteilung, welche auf den Experten-Demonstrationen basiert, um zu evaluieren ob der Versuch des Anwenders mit der Bewegung des Experten übereinstimmt oder nicht. Außerdem gibt unser Algorithmus dem Anwender visuelles Feedback.

Ein ähnliches Prinzip kann verwendet werden, um dem Anwender haptisches Feedback zu geben, das ihm oder ihr dabei helfen soll, herausfordernde Aufgaben der Teleoperation auszuführen. Wie wir in unseren Studien zeigen, können sich Aufgaben der Teleoperation für den Menschen als schwierig erweisen. Zum Beispiel kann der Mensch nicht exakt die 3D-Position von Objekten schätzen oder er hat Schwierigkeiten bei der gleichzeitigen Kontrolle von verschiedenen Freiheitsgraden. In diesem Fall werden die Fehlversuche des Menschen als Anfangsdemonstrationen verwendet und anhand von Reinforcement Learning verbessert. Mithilfe von Reinforcement Learning werden Trajektorien-Verteilungen, die den Anforderungen der Aufgabe gerecht werden, generiert.

Zunächst unterstützen wir Menschen bei der Durchführung von Aufgaben der Teleoperation indem wir Probleme des Motion Plannings in statischen Umgebungen angehen. Danach erarbeiten wir die Rahmenbedingungen, welche Roboter dazu befähigen Probleme des Motion Plannings und der Interaktion mit Menschen unter dynamischen Umweltbedingungen zu bewältigen. Schließlich behandeln wir Aufgaben mit verschiedenen möglichen Lösungen, wie zum Beispiel das Greifen unterschiedlicher Objekte, und leiten die Intention des Anwenders ab, um die passendste Anleitung auszuwählen.

Zusammenfassend lässt sich festhalten: Die vorliegende Thesis verwendet stochastische Bewegungsrepräsentationen, um Roboter dazu zu befähigen anhand menschlicher Demonstrationen und inkrementellem Feedback motorische Fertigkeiten zu erlernen. Diese Bewegungsrepräsentationen werden in Verbindung mit Reinforcement Learning-Algorithmen verwendet, um den Roboter dazu in die Lage zu versetzen die Anfangsdemonstrationen oder eine beliebige Trajektorien-Verteilung zu verbessern. Der Roboter kann Trajektorien-Verteilungen, die auf Experten-Demonstrationen basieren, verwenden, um Nicht-Experten dabei zu helfen neue motorische Fertigkeiten zu erlernen. Falls die menschlichen Demonstrationen nicht geeignet sind, kann der Roboter außerdem die durch Reinforcement Learning optimierte Trajektorien-Verteilung benutzen, um dem Anwender dabei zu helfen herausfordernde Aufgaben, zum Beispiel bei der Teleoperation, auszuführen. Weitere Anwendungen der Algorithmen und Frameworks, die in dieser Thesis vorgestellt werden, könnten in Feldern wie der Rehabilitation, des Sporttrainings oder der Zusammenarbeit von Mensch und Roboter liegen.

URN: urn:nbn:de:tuda-tuprints-118752
Classification DDC: 000 Generalities, computers, information > 004 Computer science
600 Technology, medicine, applied sciences > 600 Technology
600 Technology, medicine, applied sciences > 620 Engineering and machine engineering
Divisions: 20 Department of Computer Science > Intelligent Autonomous Systems
Date Deposited: 15 Jul 2020 06:16
Last Modified: 19 Jul 2020 07:22
URI: https://tuprints.ulb.tu-darmstadt.de/id/eprint/11875
PPN: 467619395
Actions (login required)
View Item View Item