zurück zum Artikel

Programmiersprache für Roboterschwärme

Infotech
Programmiersprache für Roboterschwärme

Bei der Steuerung von großen Gruppen identischer Roboter müssen Entwickler Kompromisse machen. Eine spezielle neue Programmiersprache soll ihnen die Arbeit erleichtern und mehr Austausch ermöglichen.

Einen der interessanteren Anblicke an Herbstabenden ist das Schwarmverhalten von Staren, die in bemerkenswerter Synchronisation zusammen durch die Luft fliegen.

Diese komplexen Flugshows sind das Ergebnis eines einfachen Satzes von Regeln, der den Vögeln vorgibt, wie sie relativ zu den anderen fliegen müssen. Tatsächlich lässt sich ihr Verhalten deshalb seit vielen Jahren relativ leicht auf dem Computer nachbilden.

Mit fliegenden oder auch fahrenden Robotern dagegen ist das bislang noch nicht gelungen. Dafür gibt es zwei Gründe. Erstens existieren noch keine Roboter, die so wendig und schnell wie Stare wären. Und zweitens sind selbst langsamere Bewegungen schwierig zu koordinieren, denn es fehlt an einer einfachen Methode zur Steuerung eines Schwarms.

Beim ersten Faktor gibt es rasche Fortschritte. Billige und leistungsfähige Roboter – fliegende und andere – haben zu einer Explosion des Interesses an Schwärmen und Herden geführt. Viele Forscher, Hobbyisten und Künstler experimentieren mit diesen Maschinen und Möglichkeiten, sie als Schwarm auftreten zu lassen.

Wie alle diese Gruppen feststellen, ist es jedoch eine ziemliche Herausforderung, eine große Zahl identischer Roboter zu steuern. Eine fertige Programmiersprache dafür gibt es nicht, so dass jeder das Problem von Neuem angehen muss. Das Rad wird also ständig neu erfunden.

Carlo Pinciroli von der Ecole Polytechnique de Montreal in Kanada und Kollegen von ihm wollen das ändern: Ende Juli haben sie eine eigens für solche Zwecke vorgesehene Programmiersprache vorgestellt. "Wir präsentieren Buzz, eine neue Programmiersprache für heterogene Roboter-Schwärme", schreiben sie in einem Fachbeitrag [1] dazu.

Zur Steuerung von Schwärmen gibt es zwei unterschiedliche Ansätze. Der erste ist eine Bottom-up-Methode, bei der jeder Roboter einzeln kontrolliert wird. Das ist hilfreich, um die Interaktion zwischen Robotern fein abzustimmen, wird aber immer komplizierter, je größer der Schwarm ist.

Die andere Methode funktioniert nach dem Top-down-Prinzip – der Schwarm wird in seiner Gesamtheit gesteuert. Das ist für größere Schwärme deutlich effektiver, ermöglicht aber keine Feinsteuerung einzelner Roboter.

Pinciroli und Kollegen geben an, ihre Programmiersprache sei für beide Methoden geeignet. "Wir glauben, dass eine Sprache für Roboterschwärme bottom-up und top-down vereinen muss, damit der Entwickler das beste Abstraktionsniveau zum Ausdrücken eines Schwarm-Algorithmus wählen kann", schreiben sie.

Darüber hinaus soll Buzz die intuitive Kombination von Befehlen ermöglichen, die dann wie erwartet funktionieren, so dass die Sprache relativ leicht zu verwenden ist. Außerdem ist sie skalierbar und kann dadurch für Schwärme unterschiedlicher Größen genutzt werden. In ihrem Aufsatz stellen Pinciroli und Co. mehrere Praxisbeispiele für die Funktionsweise von Buzz vor. Mit relativ einfachen Regeln sei es möglich, selbstorganisierendes Verhalten wie in echten Schwärmen und Herden zu erreichen.

Diese Arbeit hat das Potenzial, die Technologie grundlegend voranzubringen. Laut den Entwicklern ist das Fehlen einer standardisierten Programmiersprache für Schwärme eine bedeutende Hürde für weitere Fortschritte, weil Forscher keine Möglichkeit haben, ihre Arbeit miteinander zu teilen und auf den Durchbrüchen von anderen aufzubauen.

"Einer der wichtigsten Aspekte von Buzz ist in unseren Augen das Potenzial, die künftige Forschung an komplexen Schwarmrobotik-System in der echten Welt zu erleichtern", schreiben Pinciroli und die beteiligten Entwickler.

Und sie haben ehrgeizige Pläne damit. So wollen sie eine Bibliothek von bereits erforschten Schwarmverhaltensweisen erstellen, die andere als Bausteine für ihre Arbeit verwenden können. Irgendwann also werden es nicht mehr unbedingt Stare sein, die an Herbstabenden in Formation am Himmel zu beobachten sind.


URL dieses Artikels:
http://www.heise.de/-2775561

Links in diesem Artikel:
[1] http://arxiv.org/abs/1507.05946