Author profile picture

Zweimal fünf Maschinen auf zwei Beinen, die einem Ball hinterherlaufen, um ihn in das jeweils gegnerische Tor zu bugsieren, das ist Roboterfußball. Schon das Erkennen des Balls ist für diese Spieler eine Herausforderung. Tim Laue von der Uni-Bremen erklärt, inwiefern Deep Learning eine wesentliche Rolle dabei spielt und wie das Trainingslager der Roboter-Fußballer aussieht.

Welche Rolle spielt Deep Learning beim Roboterfußball?

Deep Learning ist eine Technik, die gut darin ist, Objekte zu erkennen und zu klassifizieren. Manche Handys nutzen das. Wenn Sie zum Beispiel in Ihrer Bildergalerie nach „Fahrrad“ suchen, findet das Programm Fotos, auf denen Fahrräder zu sehen sind, ohne, dass Sie diese Fotos jemals verschlagwortet haben. Beim Roboterfußball ist es entscheidend, Mitspieler, Spielfeld und vor allem den Ball anhand der aufgezeichneten Videobilder sofort und zweifelsfrei zu erkennen. Also nutzen wir das.

Der Ball und die Mitspieler haben keinen Peilsender, der das Erkennen erleichtert?

Nein. Früher war der Ball orange. Es war per Regel der einzige orangefarbene Fleck auf dem Feld. In der Bildverarbeitung mussten sie schlicht nach diesem Farbwert suchen. Das war vergleichsweise einfach. Heute ist der Ball schwarzweiß gemustert und leicht mit Schatten auf dem Boden oder mit Teilen anderer Roboter zu verwechseln. Mit einem klassischen Bildverarbeitungsansatz, der beispielsweise nach dunklen Flecken auf einem großen weißen Fleck sucht, stoße ich da schnell an Grenzen.

Sie bringen also Ihren Robotern das Konzept „Ball“ bei?

Wir entwerfen ein sogenanntes neuronales Netz. Diesem Netz zeigen wir eine große Anzahl von Bildern. Bilder, die zuvor von Menschen kategorisiert wurden. Zusammen mit dem Bild bekommt das Netz also die Information, ob dieses Bild einen Ball zeigt oder nicht. So lernt das Netz Bild für Bild, was „Ball“ auf diesen Bildern ausmacht.
Klassisch würde man eine Liste von Eigenschaften festlegen, nach denen die Software suchen muss.

Heute definieren wir das Lernproblem und lassen die Software die Eigenschaften, die einen Ball auf den Bildern ausmachen, selbst zusammen sammeln. Dabei haben wir zwei wesentliche Einflussgrößen. Da ist zum einen die Variationsbreite des Beispielmaterials und die Anzahl der Wiederholungen, mit der wir das Netz mit den Bildern füttern. Zum anderen legen wir die Tiefe des Netzes fest.

Wie lange läuft ein solches Training?

Um einigermaßen zufriedenstellenden Ergebnisse zu bekommen, benötigen wir die Größenordnung von über 20.000 Bildern, von denen nur ein Teil tatsächlich einen Ball enthält, sowie hunderte oder gar tausende Wiederholungsläufe allein für das Merkmal „Ball“.

Inzwischen verwenden alle Teams im RoboCup diese Methode, da sie recht robuste Ergebnisse produziert, selbst dann, wenn die Lichtverhältnisse wechseln und sich die Farben ändern. Allerdings sieht man immer noch Roboter, die gegen den Elfmeterpunkt treten.

Warum dauert das Lernen so lang?

Computer sind beim Erkennen eben nicht so gut wie Menschen. Tatsächlich kann ich einem Kind eine gemalte Giraffe zeigen und es wird mit hoher Wahrscheinlichkeit am nächsten Tag beim Zoo-Besuch das unbekannte Wesen mit dem langen Hals als „Giraffe“ erkennen. Im Erkennen des Kindes passieren sehr viele Transferleistungen.
Das neuronale Netz hat nichts von alldem. Das heißt, man muss ihm den Ball in all seinen Variationsmöglichkeiten zeigen, Ball ist weit weg, nah dran, halb verdeckt durch einen Mitspieler, beschattet, hell angeleuchtet etc. Je mehr Variationen wir dem System bieten können desto besser. Immer in der Hoffnung, dass die Bilder einen möglichst großen Teil des Möglichkeitsraums abdecken, wie ein Ball erscheinen kann. Das Netzwerk kann dann abstrahieren und auch Balldarstellungen erkennen, die quasi irgendwo zwischen den gezeigten Beispielen liegen.

Auch die Geschwindigkeit, in der die Bildverarbeitung während des Spiels geschieht, ist wichtig?

Ja, das ist relevant. Wir nehmen 60 Bilder pro Sekunde auf. In jedem Bild schaut die Maschine, wo der Ball ist, wo ist das Feld zu Ende, wo stehen die Mitspieler etc. Dann wird berechnet, rollt der Ball, wie schnell rollt er, welche Richtung hat er, wo bin ich selbst gerade, was mache ich jetzt? Am Ende steht die Aktion. Und wenn ich tatsächlich jedes einzelne Bild auswerten will, dann habe ich für jedes einzelne Bild nur 16 Millisekunden Zeit, diese ganzen Berechnungen anzustellen. Und wir möchten gern jedes einzelne Bild verarbeiten. In jedem Bild kann eine entscheidende Information versteckt sein. Eins zu verpassen ist deshalb keine gute Idee.

Ein nächster Schritt könnte sein, die optische Information mit weiteren Eigenschaften zu verknüpfen.

Da würden wir ein riesiges neues Fass aufmachen. Ein Computer ist eben gut darin, Dinge auszurechnen. Dafür muss man die Dinge aber erst einmal in zählbare Informationen umwandeln. Das kann man heute mit Bildern ganz gut machen. Etwas anderes haben wir beim Roboterfußball derzeit nicht.

Wie entscheidet der Roboter, wohin er schaut. Die NAOs haben ja keine Rund-um-Kamera?

Das ist die ewige Frage. Sollten etwa alle Roboter ständig den Ball im Blick haben oder verteilt man die Aufgaben im Team? Dazu gibt es einige Zeilen Software, die versuchen, diese Frage zu beantworten. Tatsächlich konnte man auf den Videoaufnahmen oft sehen, dass Roboter etwas Wichtiges gar nicht mitbekommen haben.

Hr. Laue, spielen Sie selbst Fußball?

Nein, ich sehe mir Fußball an, aber ich bin selbst völlig unbegabt. Derzeit sind diese zwei Bereiche noch zu weit auseinander. Da würde man sich mit echtem Fußballwissen eher selbst im Wege stehen, als dass es helfen könnte.

Dennoch ist das langfristige Ziel der Robotergemeinde, tatsächlich einmal Roboter gegen eine Menschenmannschaft antreten zu lassen?

2050 hat jemand als Ziel ausgegeben. Ob das realistisch ist, kann ich nicht sagen.

Eins ist allerdings klar: Im Vergleich mit anderen Herausforderungen ist Fußball noch eine recht einfache Disziplin. Wir haben einen ganzen Sonderforschungsbereich an der Universität Bremen, der sich damit beschäftigt, Roboter in häuslicher Umgebung sinnvoll agieren zu lassen. Das ist hoch komplex, weil dieses Umfeld um ein Vielfaches unstrukturierter ist als beim Fußball. Als Mensch kann ich auch in einer fremden Küche kochen. Kommt ein Roboter in eine solche Umgebung, wird es richtig kompliziert.

@Fotos: Tim Laue, Universität Bremen