5. Februar 2015

RoboEarth: Wie Cloud Robotics umgesetzt wird

Auf dem Gebiet der Cloud Robotics gehört das Projekt RoboEarth der niederländischen Technischen Universität Eindhoven (TU/e) definitiv zu den Erwähnenswerten. Obwohl RoboEarth im Rahmen seiner vierjährigen EU Subventionen von 2009 bis 2013 abgeschlossen wurde, repräsentiert es auch heute noch eine mehr als aktuelle Thematik.

Projektinformationen

Offizielles Logo von RoboEarth

RoboEarth startete am 01.12.2009 an der Technischen Universität Eindhoven in Kooperation mit der Fakultät für Informatik der TU München, der Universität Saragossa, der ETH Zürich, der Universität Stuttgart sowie den Philips Innovation Services und wurde bis zum Projektabschluss am 30.11.2013 mittels des 7. Forschungsprogrammes (2007 bis 2013) für Forschung, technische Entwicklung und Demonstration der Europäischen Union mit 5,6 Millionen Euro subventioniert. Seitdem wird es akademisch als Teil dreier weiterer EU Projekte sowie als Open Source-Projekt, aber auch kommerziell durch das Spin-Off-Unternehmen Rapyuta Robotics weitergeführt.

Motivation & Ziel

Den Ansporn für das RoboEarth-Projekt gab die Einsatzbegrenzung von Robotern auf hauptsächlich stark kontrollierte und vorhersagbare Umgebungen. Da ihre Systeme bisher darauf beruhten, bereits im Vorfeld zu wissen, wie spezifische Situation zu bewältigen sind, war eine Programmierung der Reaktionen auf alle Eventualitäten im Voraus unerlässlich. Robotern fehlte damit die Befähigung, in einer unstrukturierten Umgebung zu agieren, basierend auf dem Mangel an globaler Erinnerung und Lernen, der Roboter daran hinderte, ihre sensorischen und Handlungsfähigkeiten mit der Zeit zu steigern.

Die sich daraus ergebende Frage was wäre, wenn Roboter auf ihre vergangenen Erfahrungen zurückgreifen und ihr neu erlerntes Wissen unmittelbar mit anderen Robotern teilen könnten, führte zur Entwicklung von RoboEarth. Ziel ist das Erschaffen einer umfangreichen Open Source-Netzwerkdatenbank, auf die von Robotern weltweit kontinuierlich zugegriffen werden kann und die durch diese gleichermaßen beständig aktualisiert wird. Als Grundlage dieser Wissensdatenbank dienen die Welt und die darin enthaltenen Objekte sowie deren Aufforderungscharakter (engl. affordance: Der Aufforderungscharakter eines Objektes meint die natürliche und richtige Reaktion auf dessen Äußeres. So erzeugt beispielsweise ein aus einer flachen Oberfläche herausragender Knopf die Reaktion „drücken“, während ein deutlich als solcher identifizierbarer Hebel zum „Umlegen“ bzw. „ Ziehen“ auffordert.).

Neben der Datenbank selbst ist das Projekt im Speziellen darauf ausgerichtet, die Leistung von Systemen, die auf RoboEarth zugreifen, in den Bereichen 3D-Wahrnehmung (Objekterkennung und Lokalisierung), Kontrollstrategien (die Verbindung von Wahrnehmung und Handlung) sowie Lernen zu verbessern.

Funktionsweise

Eine verbesserte Verarbeitung dreidimensionaler Sensorendaten erfolgt dadurch, dass der Roboter durch den Zugriff auf die RoboEarth-Objektdaten die optisch messbaren Charakteristika und die wahrscheinliche Position der meisten Objekte kennen wird. Jeder Roboter, der eine Umgebung betritt, für die RoboEarth globale Weltmodelldaten bereithält, schöpft aus dem kompletten verfügbaren Wissen über diese Umgebung und verbessert dadurch seine Leistung.

Ein System muss darüber hinaus interpretieren, welche Aktion in Kombination mit der Umgebung, der darin enthaltenen Objekte und deren Aufforderungscharakter auszuführen ist. Dazu wird jedes Objekt, das in der RoboEarth-Datenbank gespeichert ist, durch seine Form, Position und ein Datenset, das beschreibt, welche verschiedenen Aktionen mit dem Objekt vollzogen werden können, definiert. Die Aktionen, die der Roboter schließlich ausführt, werden interpretiert und in „Handlungsrezepte“ übersetzt, die wiederum mit den zugehörigen Objekten verknüpft sind. Dabei ist es bei der Erstellung solcher Rezepte essentiell, dass der Roboter weiß, welche Handlung er vollzieht und in welcher Situation er sich befindet damit er sein Wissen tatsächlich auch mit anderen teilen kann. Da ein Roboter normalerweise nur Kenntnis von einer bestimmten Sequenz an Handlungen und Bewegungen hat, um eine Aufgabe zu erfüllen, ist dies eine sehr komplexe Funktion, die jedoch einen wesentlichen Bestandteil der Vision eines weltweit geteilten RoboEarth-Modells darstellt. Mit Hilfe natürlichsprachlicher Bezeichnungen anstelle von GUID (Global Unique Identifier), die ausschließlich für die Identifizierung von Handlungsrezepten genutzt werden, muss der Roboter seine Aktivitäten klassifizieren. Dadurch wird es auch für den Nutzer einfacher, bestimmte Aktionen mit einem Label zu versehen, wenn ein Roboter direkt gelehrt wird, eine spezielle Handlung zu vollziehen.

RoboEarth soll auf diese Weise demonstrieren, dass das Teilen von Informationen unter multiplen Entitäten, die Bereitstellung eines Depots für diese Informationen sowie das Extrahieren von Gemeinsamkeiten die Geschwindigkeit des Lernens und der Anpassung eines Systems deutlich erhöht, wodurch es dem System erlaubt ist, komplexe Aufgaben auszuführen.

Softwarekomponenten

Das RoboEarth-System setzt sich aus verschiedenen Softwarekomponenten (KnowRob, Object Detector, WIRE und C2TAM) zusammen, deren Herzstück die Cloud-Infrastruktur, d.h. die RoboEarth-Datenbanken und die RoboEarth Cloud Engine (Rapyuta), darstellt. Zusätzliche Softwarekomponenten können auf die Datenbanken zugreifen, um z.B. Daten abzufragen oder abzulegen sowie um zur Ausführung in Rapyuta oder lokal im Roboter angewendet zu werden. Alle Komponenten sind darüber hinaus unabhängig voneinander nutzbar und unter Open Source-Lizenzen verfügbar.

Rapyuta
Die RoboEarth Cloud Engine wurde speziell für Roboteranwendungen entworfen. Sie hilft Robotern, komplizierte Berechnungen auszulagern durch die Bereitstellung sicherer und anpassbarer Umgebungen innerhalb der Cloud. Den Namen Rapyuta erhielt die Cloud Engine nach dem japanischen Anime „Das Schloss im Himmel“ (jap. Tenkû no Shiro Rapyuta), in dem besagtes Schloss von Robotern bewohnt wird.

RoboEarth-Datenbanken
Die RoboEarth-Datenbanken sind internetähnliche Datenbanken, die auf Apache Hadoop basieren. Über die URL http://api.roboearth.org können Interessierte die RoboEarth-Plattform nutzen, um als Teil der Nutzer-Community Daten über Umgebungen, Aktionen und Objekte zu teilen.

KnowRob
Das Wissensverarbeitungssystem KnowRob verbindet Wissensdarstellung und Methoden des logischen Denkens mit Techniken zum Wissenserwerb und zur Verankerung in einem physischen System. Innerhalb von RoboEarth dient es als lokale Wissensbasis für den Roboter.

Object Detector
Das Set an ROS-Paketen (Robot Operating System) erlaubt es Nutzern und Robotern, mittels einer Kinect-Kamera und eines Kennzeichnungsmusters das Punktwolken-Modell eines Objektes zu erstellen, welches im RoboEarth-Wissensdepot abgelegt werden kann. Im Falle einer Objekterkennung lassen sich diese Objektmodelle später downloaden und dafür nutzen.

WIRE
Durch WIRE (World Information for Robot Environments) kann basierend auf Objekterkennung eine konsistente Schätzung des Weltzustandes generiert und aufrechterhalten werden. Es behebt Probleme der Datenassoziation durch das Unterstützen multipler Hypothesen und erleichtert das Verfolgen verschiedener Objektattribute.

C2TAM
C2TAM implementiert ein visuelles SLAM-System (Simultaneous Localization and Mapping), bei dem die kostenintensive Kartenoptimierung und Speicherung einem externen Server zugeordnet ist, während ein einfacher Kameraüberwachungsklient auf dem lokalen Computer läuft. Dadurch sind die robotereigenen Computer von den meisten Berechnungsprozessen befreit und benötigen lediglich eine Standard-WLAN-Verbindung zum Internet.

Testlauf von RoboEarth

Die Anwendung von RoboEarth weist besonders im Homecare- und Healthcare-Bereich großes Potenzial auf. Eigenständig agierende und lernende Roboter wären auf der einen Seite in der Lage, Patienten in vielerlei Hinsicht zu unterstützen, während sie auf der anderen Seite einen Mangel an Pflegepersonal bis zu einem gewissen Grad ausgleichen könnten. Das RoboEarth-Forscherkollektiv hat in diesem Zusammenhang im Rahmen des Projektes vier Krankenhauszimmer als Labore eingerichtet, die jeweils in einem anderen Forschungsinstitut untergebracht waren. In dieser spezifischen Umgebung erlernten die Roboter zunächst das grundlegende Konzept eines Krankenzimmers, d.h. typische vorhandene Objekte, wie Krankenbett, die darüber angebrachte Leiste mit Elektroanschlüssen, Beistelltische usw.. Dieses lokal erworbene Wissen konnten sie in der Datenbank speichern, um es für andere Roboter zugänglich zu machen. Gleichzeitig unterlagen die Versuchsroboter ständigen Analysen ihres Lernverhaltens in Bezug auf auszuführende Serviceleistungen, wie z.B. die Aufgabe, eine Wasserflasche zu erkennen, diese zu greifen und einem Patienten zu übergeben. Weitere Aufgaben umfassen unter anderem das Servieren von Getränken aus dem Kühlschrank oder das Aufheben einer Zeitung für Patienten, die an das Bett gefesselt sind.

Nach vier Jahren der Forschung, genauer am 16. Januar 2013, präsentierte das Team von RoboEarth schließlich in einer eindrucksvollen Demonstration an der TU Eindhoven vier Roboter, die kollaborativ zusammenarbeiteten, um Patienten zu helfen. Sie nutzten RoboEarth als gemeinsame Wissensbasis, Kommunikationsmedium und Ressource zur Auslagerung umfangreicher Berechnungsprozesse.

Hier das offizielle Video der finalen Vorführung von RoboEarth:

Zusammenfassung

• RoboEarth war ein von der EU subventioniertes Projekt der TU Eindhoven, das von 2009 bis 2013 in Zusammenarbeit mit der Fakultät für Informatik der TU München, der Universität Saragossa, der ETH Zürich, der Universität Stuttgart sowie den Philips Innovation Services durchgeführt wurde.

• Es entstand aus der Motivation heraus, die Einsatzmöglichkeiten von Robotern auszuweiten, die aufgrund der notwendigen Programmierung im Voraus bis dahin auf stark kontrollierte und vorhersagbare Umfelder begrenzt war.

• Mit Hilfe von RoboEarth sollen Roboter auf eine gemeinsame Wissensdatenbank Zugriff haben, die sie nicht nur zum eigenständigen Lernen nutzen, sondern gleichzeitig durch die Einspeisung neu erlernter Informationen selbst gestalten.

Quellen

RoboEarth an den Partnerunis