Verhalten
Klassische Industrie-Roboter führen in der Regel wiederkehren Bewegungsabläufe in einer quasi statischen Umgebung aus. Diese können daher durch den Programmierer fest vorgegeben werden. Der Roboter führt diese zur Laufzeit in einem Playback-Verfahren wiederholt aus.
Sobald der Roboter in einer dynamischen Umwelt agiert oder sich in dieser bewegt, genügt eine statische Vorgabe der Bewegungsabläufe nicht mehr, um Aufgaben zu bewältigen. Der Roboter muss mittels geeigneter Sensoren in der Lage sein, seine Umgebung wahrzunehmen, um auf diese Information mit entsprechenden Aktionen reagieren zu können. Diese Verknüpfung von Information zu Aktion wird mit dem Begriff Verhalten bezeichnet. Im Verhalten wird demnach beschrieben, wie der Roboter in einer Situation bei bestimmten Wahrnehmungen handeln soll.
Mit zunehmender Leistungsfähigkeit autonomer Roboter wächst die Fähigkeit komplexerer Aufgaben zu lösen. Je differenzierter der Roboter sich und seine Umwelt wahrnehmen kann, desdo mehr Situationen kann er unterscheiden. Zudem steigt damit auch die Anzahl der unterschiedlichen Wahrnehmung des Roboters für eine bestimmte Situation. Durch Verbesserungen in Mechanik und Design der Aktoren stehen modernen Robotern eine Vielzahl mehr Aktionen zur Verfügung, um in einer Situation zu reagieren und mit dieser zu interagieren. Demnach steigt mit dem Maße der Komplexität der Aufgaben die Schwierigkeit im Verhalten eine sinnvoll die Entscheidungsfindung für unterschiedliche Situationen zu spezifizieren.
In der Vergangenheit wurden vornehmlich Methoden der klassischen Künstlichen Intelligenz angewandt, um Verhalten zu definieren. Dieser klassische Ansatz über ein Weltmodell und Logikregeln Entscheidungen zu treffen ist aber auf die komplexer werdenden Probleme immer schwieriger anzuwenden, da notwendiger Wiese das Model immer komplexer wird.
Daher ist es Ziel der Forschung am IRF neue Wege und Methoden zur Verhaltens-Spezifikation zu finden. Schwerpunkt hierbei sind zum einen Ansätze, die ihren Fokus auf intuitiven Entwurf von komplexen Aufgaben legen, und zum anderen Ansätze, die es erlauben, Verhalten durch den Roboter mittels Methoden der Computational Intelligence zu erlernen oder anzupassen.
XABSL
Extensible Agent Behavior Specification Language (XABSL) ist eine Sprache zur Verhaltensprogrammierung. Sie repräsentiert eine Menge von endlichen Zustandsautomaten, den Optionen. Die Auswahl einer Aktion erfolgt durch einen Entscheidungsbaum, in dem die Optionen als Knoten organisiert sind. Optionen können unabhängig voneinander getestet werden und sind durch die von XABSL spezifizierte Syntax einfach zu beschreiben. Da es aber für jede Situation im Spiel einen eindeutigen Pfad im Entscheidungsbaum gibt, den der Designer zur Entwicklungszeit festlegt, handelt das Verhalten starr nach dessen Vorgaben.
Der Ansatz über Automaten erlaubt eine Spezifikation von Verhalten, die sich für den Menschen verständlich grafisch darstellen lässt. Der Ablauf der Entscheidungen lässt sich durch Übergänge in einen Graphen darstellen und ermöglicht somit dem Programmierer eine anschauliche Darstellung komplexer Entscheidungsvorgänge.
XABSL wurde am IRF über die Jahre auf den unterschiedlichen 2- und 4-beinigen mobilen Roboter Platformen des Robocup eingesetzt und weiterentwickelt.
Adaptive Verhaltensplanung
Viele Methoden zur Verhaltensplanung, wie beispielsweise XABSL, sind statische Ansätze. Ein einmal spezifiziertes Verhalten wird zur Laufzeit nicht mehr verändert, sondern starr abgearbeitet. Führt dieses Verhalten in bestimmten Situationen zu subotimalen oder sogar falschen Entscheidungen des Roboters, hat dieser keine Möglichkeit seine Entscheidungsfindung für die Zukunft anzupassen und zu verbessern.
Ein aktueller Forschungsschwerpunkt am IRF ist daher Ansätze zu Verhaltensplanung zu entwickeln, die es erlauben, das Verhalten selbstständig zu lernen oder zu adaptieren. Dabei ist zwischen Methoden zu unterschieden, die Offline, also vor der Ausführung auf dem Roboter, oder Online, also während der Ausführung auf dem Roboter, lernen.
Zur Spezifikation eines solchen Verhaltens werden unterschiedliche Methoden der Computational Intelligence angewandt und untersucht. Als exemplatisches Forschungsprojekt seien hier Verhaltesnetze angeführt. Diese treffen die Auswahl einer Aktion zielgerichtet und situationsangepasst über Aktivierungsverteilungen. Dafür wird ein Netz aus Ziel- und Kompetenzknoten generiert. Die Ziele beschreiben Weltzustände, die der Roboter versucht zu erreichen. Kompetzen sind Fähigkeiten des Roboters unter gegebenen Vorbedingungen. Jede Kompetenz beinhaltet zudem erwartete Effekte, die nach dem Ausführen der Fähigkeit wahrscheinlich eintreten, um mit diesem Wissen zielgerichtet planen zu können. Kanten zwischen zwei Knoten existeren nur dann, wenn ein erwarteter Effekt eine Ziel- oder Vorbedingungen erfüllt oder zerstört. Über diese positiven oder negativen Effektkanten werden von den Zielen ausgehend die Aktivierungspotentiale verteilt. Das Maß der Kompetenz entscheidet über die Auswahl der Aktion. Im Verhaltensnetz werden ebenfalls Ressourcen modelliert, um Entscheidungen darüber Treffen zu können, ob Aktionen parallel oder exklusiv vom Roboter ausgeführt werden können. Der Vorteil dieses Ansatzes liegt in seine Flexibilität und Erweiterbarkeit des Netzes. Somit eignet sich dieser Ansatz zum Lernen und zur Adaption.
Aktuell wird am IRF erforscht, wie weit dieser Ansatz, kombiniert mit vom Menschen durchgeführter Demonstration, geeignet ist, um Verhalten für den Einsatz im Roboterfussball selbstständig zu erlernen.