TU Darmstadt / ULB / TUprints

Machine Learning for Robot Grasping and Manipulation

Kroemer, Oliver B. (2015)
Machine Learning for Robot Grasping and Manipulation.
Technische Universität Darmstadt
Ph.D. Thesis, Primary publication

[img]
Preview
Text
KroemerThesis.pdf - Accepted Version
Copyright Information: CC BY-NC-ND 3.0 Unported - Creative Commons, Attribution, NonCommercial, NoDerivs.

Download (95MB) | Preview
Item Type: Ph.D. Thesis
Type of entry: Primary publication
Title: Machine Learning for Robot Grasping and Manipulation
Language: English
Referees: Peters, Prof. Dr. Jan ; Brock, Prof. Dr. Oliver
Date: 2015
Place of Publication: Darmstadt
Date of oral examination: 16 December 2014
Abstract:

Robotics as a technology has an incredible potential for improving our everyday lives. Robots could perform household chores, such as cleaning, cooking, and gardening, in order to give us more time for other pursuits. Robots could also be used to perform tasks in hazardous environments, such as turning off a valve in an emergency or safely sorting our more dangerous trash. However, all of these applications would require the robot to perform manipulation tasks with various objects. Today's robots are used primarily for performing specialized tasks in controlled scenarios, such as manufacturing. The robots that are used in today's applications are typically designed for a single purpose and they have been preprogrammed with all of the necessary task information. In contrast, a robot working in a more general environment will often be confronted with new objects and scenarios. Therefore, in order to reach their full potential as autonomous physical agents, robots must be capable of learning versatile manipulation skills for different objects and situations. Hence, we have worked on a variety of manipulation skills to improve those capabilities of robots, and the results have lead to several new approaches, which are presented in this thesis

Learning manipulation skills is, however, an open problem with many challenges that still need to be overcome. The first challenge is to acquire and improve manipulation skills with little to no human supervision. Rather than being preprogrammed, the robot should be able to learn from human demonstrations and through physical interactions with objects. Learning to improve skills through trial and error learning is a particularly important ability for an autonomous robot, as it allows the robot to handle new situations. This ability also removes the burden from the human demonstrator to teach a skill perfectly, as a robot is allowed to make mistakes if it can learn from them. In order to address this challenge, we present a continuum-armed bandits approach for learning to grasp objects. The robot learns to predict the performances of different grasps, as well as how certain it is of this prediction, and selects grasps accordingly. As the robot tries more grasps, its predictions become more accurate, and its grasps improve accordingly.

A robot can master a manipulation skill by learning from different objects in various scenarios. Another fundamental challenge is therefore to efficiently generalize manipulations between different scenarios. Rather than relearning from scratch, the robot should find similarities between the current situation and previous scenarios in order to reuse manipulation skills and task information. For example, the robot can learn to adapt manipulation skills to new objects by finding similarities between them and known objects. However, only some similarities between objects will be relevant for a given manipulation. The robot must therefore also learn which similarities are important for adapting the manipulation skill. We present two object representations for generalizing between different situations. Contacts between objects are important for many manipulations, but it is difficult to define general features for representing sets of contacts. Instead, we define a kernel function for comparing contact distributions, which allows the robot to use kernel methods for learning manipulations. The second approach is to use warped parameters to define more abstract features, such as areas and volumes. These features are defined as functions of known object models. The robot can compute these parameters for novel objects by warping the shape of the known object to match the unknown object.

Learning about objects also requires the robot to reconcile information from multiple sensor modalities, including touch, hearing, and vision. While some object properties will only be observed by specific sensor modalities, other object properties can be determined from multiple sensor modalities. For example, while color can only be determined by vision, the shape of an object can be observed using vision or touch. The robot should use information from all of its senses in order to quickly learn about objects. We explain how the robot can learn low-dimensional representations of tactile data by incorporating cues from vision data. As touching an object usually occludes the surface, the proposed method was designed to work with weak pairings between the data in the two sensor modalities.

The robot can also learn more efficiently if it reuses skills between different tasks. Rather than relearn a skill for each new task, the robot should learn manipulation skills that can be reused for multiple tasks. For an autonomous robot, this would require the robot to divide tasks into smaller steps. Dividing tasks into smaller parts makes it easier to learn the corresponding skills. If a step is a part of many tasks, then the robot will have more opportunities to practice the associated skill, and more tasks will benefit from the resulting performance improvement. In order to learn a set of useful subtasks, we propose a probabilistic model for dividing manipulations into phases. This model captures the conditions for transitioning between different phases, which represent subgoals and constraints of the overall tasks. The robot can use the model together with model-based reinforcement learning in order to learn skills for moving between phases.

When confronted with a new task, the robot will have to select a suitable sequence of skills to execute. The robot must therefore also learn to select which manipulation to execute in the current scenario. Selecting sequences of motor primitives is difficult, as the robot must take into consideration the current task, state, and future actions when selecting the next motor skill to execute. We therefore present a value function method for selecting skills in an optimal manner. The robot learns the value function for the continuous state space using a flexible non-parametric model-based approach.

Learning manipulation skills also poses certain challenges for learning methods. The robot will not have thousands of samples when learning a new manipulation skill, and must instead actively collect new samples or use data from similar scenarios. The learning methods presented in this thesis are, therefore, designed to work with relatively small amounts of data, and can generally be used during the learning process. Manipulation tasks also present a spectrum of different problem types. Hence, we present supervised, unsupervised, and reinforcement learning approaches in order to address the diverse challenges of learning manipulations skills.

Alternative Abstract:
Alternative AbstractLanguage

Die Robotik hat als Technologie ein unglaubliches Potenzial für die Verbesserung unseres Alltags. Roboter könnten Hausarbeiten, wie Putzen, Kochen und Gartenarbeiten durchführen, um uns mehr Zeit für andere Aktivitäten zu geben. Roboter könnten auch Aufgaben in gefährlichen Umgebungen übernehmen, wie z.B. das Ausschalten eines Ventils in einem Notfall oder das Sortieren von gefährlichen Abfällen. Alle diese Anwendungsgebiete fordern von dem Roboter jedoch das Manipulieren von verschiedenen Objekten. Heutzutage werden Roboter primär für spezielle Aufgaben in kontrollierten Szenarien, beispielsweise der Produktion verwendet. Die Roboter, die in heutigen Anwendungen verwendet werden, werden in der Regel für einen bestimmten Zweck entworfen und sind mit allen notwendigen Informationen zu der Aufgabe vorprogrammiert. Im Gegensatz dazu wird ein Roboter in einer allgemeineren Umgebung oft mit neuen Objekten und Szenarien konfrontiert. Um ihr volles Potenzial zu erreichen, müssen Roboter in der Lage sein eine Vielzahl von unterschiedlichen Objekten in unterschiedlichen Situationen manipulieren zu können. Basierend auf einer Vielzahl von Manipulationsaufgaben, haben wir daran gearbeitet diese Fähigkeiten von Robotern zu verbessern. Die Ergebnisse davon haben zu einigen neuen Ansätzen geführt, die wir in dieser Arbeit vorstellen.

Manipulationsfähigkeiten zu lernen ist jedoch ein offenes Problem mit vielen Herausforderungen, welche noch zu überwinden sind. Die erste Herausforderung ist das Lernen oder Verbessern der Manipulationsfähigkeiten mit wenig bis keiner menschlichen Unterstützung. Anstatt das der Roboter vorprogrammiert wird soll dieser in der Lage sein von menschlichen Demonstrationen oder durch physische Interaktion mit den Objekten zu lernen. Zu lernen wie Fähigkeiten durch Ausprobieren verbessert werden können ist eine besonders wichtige Voraussetzung für einen autonomen Roboter, da es ihm erlaubt neue Situationen zu bewältigen. Durch diese Fähgikeit muss die Demonstration nicht perfekt sein, da der Roboter Fehler machen darf, wenn er von diesen lernen kann. Um dieser Herausforderung zu begegnen, stellen wir ein continuum-armed bandits Ansatz vor um das Greifen von Objekten zu lernen. Der Roboter lernt vorherzusagen wie gut verschiedene Griffe sind, als auch wie sicher er über die Vorhersage ist. Basierend darauf wählt er einen Griff aus. Durch Ausprobieren mehrerer Griffe werden die Vorhersagen genauer und somit die Griffe besser.

Ein Roboter kann eine Manipulationsfähigkeit meistern indem er von unterschiedlichen Objekten in unterschiedlichen Szenarien lernt. Eine weitere zentrale Herausforderung ist daher das effiziente Generalisieren von Manipulationen zwischen verschiedenen Szenarien. Anstatt immer wieder von Grund auf zu lernen sollte der Roboter Ähnlichkeiten zwischen der momentanen Situation und vorherigen Szenarien erkennen, um Manipulationsfähigkeiten und Aufgabeninformationen wiederzuverwenden. Beispielsweise kann der Roboter lernen eine Manipulationsfähigkeit an neue Objekte anzupassen, indem er Ähnlichkeiten zwischen diesen und bekannten Objekten findet. Allerdings können nur einige Ähnlichkeiten zwischen Objekten für eine bestimmte Manipulation relevant sein. Der Roboter muss daher auch lernen welche Ähnlichkeiten wichtig sind, um die Manipulationsfähigkeit anzupassen. Wir präsentieren zwei Objektdarstellungen zur Generalisierung zwischen verschiedenen Situationen. Kontakte zwischen Objekten sind wichtig für viele Manipulationen, aber es ist schwierig generelle Eigenschaften für die Repräsentation von Kontakten zu definieren. Stattdessen definieren wie eine Kernelfunktion zum Vergleichen von Kontaktverteilungen, welche es dem Roboter erlaubt Kernelmethoden zum Lernen der Manipulationen zu verwenden. Der zweite Ansatz ist warped Parameter zu verwenden, um abstraktere Eigenschaften, wie Flächen und Volumen, zu definieren. Diese Eigenschaften sind definiert als Funktionen von bekannten Objektmodellen. Der Roboter kann diese Parameter für neue Objekte berechnen indem die Form des bekannten Objekts so verzerrt wird, dass es mit dem unbekannte Objekt übereinstimmt.

Um Objekteigenschaften zulernen muss der Roboter Informationen von mehreren Sensoren abgleichen, einschließlich Tasten, Hören und Sehen. Während einige Objekteigenschaften nur von bestimmten Sensoren beobachtet werden, können andere Objekteigenschaften von unterschiedlichen Sensoren bestimmt werden. Während Farbe zum Beispiel nur optisch bestimmt werden kann, kann die Form sowohl optisch als auch durch Berührung bestimmt werden. Der Roboter sollte die Informationen von allen Sinnen verwenden, um schnell über Objekte zu lernen. Wir erklären, wie der Roboter niedrig dimensionale Darstellungen von taktilen Daten lernen kann mit der Hilfe von visuellen Daten. Das Berühren eines Objekts verdeckt normalerweise die Oberfläche. Deswegen benötigt die vorgeschlagene Methode nur schwache Paarungen zwischen den visuellen und taktilen Daten.

Der Roboter kann auch effizienter lernen, wenn er Fähigkeiten zwischen verschiedenen Aufgaben wiederverwendet. Anstatt eine Fähigkeit für jede Aufgabe wieder zu lernen, sollte der Roboter Fähigkeiten lernen die er für mehrere Aufgaben verwenden kann. Ein autonomer Roboter sollte die Aufgabe in mehrere Unteraufgaben teilen. Die Aufteilung in Unteraufgaben macht es einfacher die entsprechende Fähigkeiten zu erlernen. Wenn eine Unteraufgabe Teil von vielen Aufgaben ist, hat der Roboter mehr Möglichkeiten die zugehörige Fähigkeit zu üben. Dadurch profitieren mehr Aufgaben von der Leistungsverbesserung. Um eine Reihe von nützlichen Unteraufgaben zu lernen, schlagen wir ein probabilistisches Modell vor zur Unterteilung der Manipulation in Phasen. Dieses Modell erfasst die Bedingungen für den Übergang verschiedener Phasen, die die Teilziele der Aufgaben darstellen. Der Roboter kann das Modell zusammen mit modellbasierten Reinforcement Learning verwenden, um Fähigkeiten für den Übergang zwischen den Phasen zu lernen.

Wird dem Roboter eine neue Aufgabe gestellt, muss er eine geeignete Folge von Fähigkeiten auswählen um die Aufgabe durchzuführen. Der Roboter muss daher auch lernen welche Manipulation im momentanen Szenario am Besten ausgeführt werden sollte. Der Roboter muss dabei den momentanen Zustand und die Aufgabe berücksichtigen, sowie die zukünftigen Aktionen. Um die Beste Fähigkeit auszuwählen nutzen wir eine Wertfunktion Methode. Der Roboter lernt die Wertfunktion für den kontinuierlichen Zustandsraum mit einem flexiblen nicht-parametrischen modellbasierten Ansatz.

Das Lernen von Manipulationsfähigkeiten birgt auch gewisse Herausforderungen für die Lernmethoden. Der Roboter hat nicht Tausende von Beispielen beim Erlernen einer neuen Manipulationsfähigkeit, sondern muss aktiv neue sammeln oder Beispiele von ähnlichen Szenarien benutzen. Die Lernmethoden in dieser Arbeit können daher mit relativ geringen Mengen an Daten arbeiten, und können während des Lernprozesses verwendet werden. Manipulationsaufgaben präsentieren deswegen auch ein Spektrum verschiedener Problemtypen. Wir präsentieren supervised, unsupervised und reinforcement learning Ansätze, um die vielfältigen Herausforderungen anzugehen.

German
URN: urn:nbn:de:tuda-tuprints-45842
Classification DDC: 000 Generalities, computers, information > 004 Computer science
Divisions: 20 Department of Computer Science
Date Deposited: 24 Jun 2015 06:28
Last Modified: 09 Jul 2020 00:57
URI: https://tuprints.ulb.tu-darmstadt.de/id/eprint/4584
PPN: 386765928
Export:
Actions (login required)
View Item View Item