
Simulierte Kicker mit Charakter
Auf den ersten Blick ist sie die unauffälligste Liga im Roboterfußball, doch bei näherem Hinschauen zeigt die Simulation League 2-D, was in ihr steckt. Da die Roboter "nur" virtuell gegeneinander spielen, können sich die Entwickler bei der Arbeit ganz auf die künstliche Intelligenz konzentrieren. Dabei entstehen Software-Kicker mit durchaus individuellen Eigenschaften.
Ein grünes Feld mit weißen Fußballfeld-Markierungen, 22 bunte und sich mehr oder weniger schnell bewegende Punkte sowie ein weiterer, weißer Punkt als Fußball: Mehr ist bei der Simulation League 2-D grundsätzlich nicht zu sehen. Doch der im Vergleich zu den anderen Robocup-Ligen unspektakuläre Auftritt täuscht: Was hier passiert, kommt von allen Formen des RoboCup-Fußballs dem menschlichen Spiel am nächsten.
Insgesamt gibt es drei Simulationsligen beim Roboterfußball: 2-D, 3-D und eine Entwicklungsliga für 3-D.
Elf Spieler und ein Trainer
"Wir sind die einzige Liga beim RoboCup, die mit elf Spielern samt Trainer antritt. Bei uns gibt es auch Abseits", erklärt Stefan Gspandl, Teamleiter des Grazer Teams KickOffTUG, das beim RoboCup in Graz in der Simulation League 2-D antreten wird. In den Ligen mit Hardware-Einsatz wäre ein Einsatz von elf Spielern aus finanziellen Gründen nicht möglich, während KickOffTUG vor jedem Spiel aus insgesamt 18 Spielern mit unterschiedlichen Eigenschaften wie Größe und Kickradius auswählen kann.
Dadurch, dass die Simulationsligen, abgesehen von den Computern, keinerlei Hardware für das eigentliche Spiel benötigen, können die Entwickler die Zeit, die sonst in den Bau und die Optimierung von Hardware fließen würde, der Entwicklung der künstlichen Intelligenz (KI) dahinter widmen. "Die Hardware hält einen auch auf. Wir können uns ganz auf die Strategie und die Teamintelligenz konzentrieren", so Gspandl.
Wobei Intelligenz für Gspandl relativ ist: "Wir haben einen pragmatischen Ansatz und sagen, wir setzen die KI für bestimmte Problemstellungen ein, und wenn sie diese Probleme löst, dann ist sie intelligent. Bei uns zählt, wie viele Spiele wir gewinnen."
Geheimwaffe "Otto Konrad"
Derzeit dreht sich naturgemäß alles um ein möglichst erfolgreiches Abschneiden beim RoboCup Ende Juni, dazu konzentriert sich das Team auf das Spiel nach vorne und das zielgerichtete Passspiel. "In puncto Ballbesitz sind wir recht gut, und auch unsere Verteidigung steht. Jetzt müssen wir noch Tore schießen." Bei den RoboCup German Open 2009 Ende April landete KickOffTUG auf dem vierten Platz: "Wir haben auf ein Unentschieden gespielt, leider fiel nach zwei Dritteln das Tor gegen uns."
Im Elfmeterschießen hätte Goalie "Otto Konrad" das Team im Strafraum verteidigen sollen: "Wir haben einen sehr guten Goalie, von dem sind auch die anderen Teams sehr begeistert: Er ist sehr forsch, geht den Ball schnell und in den richtigen Situationen an und kann Tore schnell verhindern."
Roboter beobachten sich gegenseitig
Theoretisch könnte "Otto Konrad" aus dem Team herausgelöst werden und über einen - nicht existenten - Transfermarkt in ein anderes Team eingegliedert werden, denn jeder Roboter des Teams ist ein eigenes und autonom agierendes Programm - ein Software-Agent.
Allerdings würde das in der Realität nicht wirklich zielführend sein, so Gspandl, da die Agenten von ihren Programmierern sehr stark aufeinander abgestimmt seien. "Die Spieler versuchen gegenseitig das Verhalten der anderen zu prognostizieren und vorausschauend zu agieren. Wenn ich nun einen Spieler rausnehme, stimmen die ganzen Prognosen nicht mehr, und es würde wahrscheinlich mehr Sinnloses rauskommen."
Grundlage Wissensmodellierung
Vorbedingung für möglichst präzise Prognosen ist, dass die Agenten auch wissen, was sie tun sollen. Dieses Wissen muss ihnen vorher Schritt für Schritt beigebracht werden. Dafür werden expertencodierte Pläne erstellt, die den Agenten aufschlüsseln, wie sie sich am besten in bestimmten Situationen gemäß ihrer aktuellen Spielerposition verhalten. Jede Aktion ist bewertet, und der Agent muss sich in der aktuellen Situation die am höchsten bewertete Aktion aussuchen, die einerseits zu den Vorbedingungen (Ballbesitz), aber auch den gewünschten Nachbedingungen (Tor schießen) passt.
Was auf den ersten Blick trivial klingen mag, ist in Wahrheit weitaus komplexer, so Gspandl, da noch eine Reihe Unsicherheiten dazukommen: "In der klassischen Logik gibt es nur 'True' oder 'False', aber die Realität ist nicht schwarz oder weiß, da gibt es noch viel dazwischen. Wir können nie hundertprozentig von etwas ausgehen, müssen aber trotzdem immer das Bestmögliche entscheiden."
Unsicherheiten einbeziehen
Zu den Unsicherheiten zählt etwa der Ballbesitz: "Es gibt einen Unterschied zwischen dem, was der Agent weiß und dem, was wirklich ist. Selbst wenn der Ball neben dem Roboter liegt, er aber in die andere Richtung schaut, wird er ihn nicht sehen können. Solche Dinge muss man einerseits in der Weltsicht des Agenten abfangen, andererseits über kognitive Schlüsse: Wenn zum Beispiel der Ball auf mich zurollt, werde ich den Ball sehr wahrscheinlich haben, auch wenn ich gar nicht hinschaue."
Über die Vorbedingungen in den Aktionsplänen sollen diese Unsicherheiten minimiert werden, die Aktionen werden ausgeführt, bis sich die Situation und damit die Bedingungen ändern: "Ich werde so lange nach vorne dribbeln, solange ich sicher sein kann, dass der Gegner mir nicht zu nahe kommt und mir den Ball wegnimmt. Wenn das eintritt, hör ich besser zu dribbeln auf und schau, ob ich nicht vorbeipassen kann", erklärt Gspandl.
Drei Sensoren für die Wahrnehmung
Um die richtige Entscheidung treffen zu können, müssen die Roboter möglichst viel über ihre Umwelt in Erfahrung bringen, dazu haben sie drei Sensoren: einen zum Sehen, einen zum Hören und einen für die eigene Körperwahrnehmung, der dem Spieler zum Beispiel sagt, wie viel Kraft er gerade hat.
Der optische Sensor mit einem Sichtkegel von 90 Grad ist der wichtigste, denn ob der Roboter den Ball nun hat oder nicht, kann er nur sehen, aber mangels passender Sensoren nicht fühlen. Auch die Kommunikation mit den anderen Teammitgliedern ist zum großen Teil sichtbasiert.
Über den akustischen Sensor können sich die Spieler, wenn auch stark eingeschränkt, etwas zurufen, zum Beispiel wo der Ball gerade ist, oder wenn sie einen bestimmten Spieler anspielen wollen. Auch die Trainer kommunizieren ihre taktischen Ideen über diesen Kanal. Sie haben - wie im echten Leben - vom Spielrand aus den besten Überblick über das ganze Spiel, dürfen dafür aber nur selten ins Spiel mit ihren Anweisungen eingreifen. Weiters kommen über diesen Kanal auch die Mitteilungen des automatischen Schiedsrichters herein.
Zehn spannende Minuten
Ein Spiel in der Simulation League 2-D dauert 6.000 Zyklen oder zehn Minuten, die umgelegt auf die Realität vollen 90 Minuten Spielzeit entsprechen. Entsprechend schnell bewegen sich die Spieler auch.
Server liefert Input und Stadion
Der optische Input kommt vom Server, der das gesamte Stadion simuliert. Er teilt gezielt allen Spieler und den Trainern einmal pro Zyklus (100 Millisekunden) mit, wo der jeweilige Spieler steht, wo der Ball ist, und was der Spieler in seinem Blickfeld sieht. Die Spieler kommunizieren zurück, was sie tun wollen. In jedem Zyklus erhält der Roboter eine Weltbeschreibung, die er auswerten muss, auf Basis dieser Informationen trifft er dann eine Entscheidung und führt sie schließlich aus - alles in 100 Millisekunden. Je nachdem wie gut die Algorithmen dahinter sind, braucht die Entscheidungsfindung die meiste Zeit.
Forschung für reale Anwendungen
Außer mit dem Roboterfußball beschäftigt sich das Team mit der Erforschung einfacher Arten, mit einer Maschine zu interagieren und ihr Befehle zu geben. Auch dabei geht es um Verhaltens- und Wissensmodellierung und Entscheidungsfindung, wie sie beim Roboterfußball dann zur praktischen Anwendung kommen. "Eine gute Möglichkeit, wie wir unseren Agenten sagen könnten, was wir von ihnen wollen, wäre, dass wir die Spielzüge einfach aufzeichnen. Daraus sollte das Programm dann ein Modell aggregieren. Da geht es dann darum, dass der Computer die einzelnen Striche versteht und Pfeile richtig interpretiert und die Frage, wie viel muss er überhaupt wissen, um den Nutzer richtig zu verstehen, was muss er von seiner Umgebung wissen?" Auch hier spielen Unsicherheiten wieder eine große Rolle, denn ein Pfeil von einem Spieler weg kann entweder bedeuten, dass der Spieler passen, aber auch dass er angreifen oder sich grundsätzlich nur dorthin bewegen soll.
Ein Anwendungsbeispiel wäre ein Diagnosecomputer, der den Arzt bei der Anamnese eines Patienten unterstützt und mit den aktuellen Werten des Patienten eine Diagnose erstellt. Dazu muss das System nicht nur Input erhalten, es muss auch die notwendigen Hintergrundinformationen haben, das Wissen muss über verschiedene Bedingungen miteinander verknüpft werden, damit das System dann möglichst schnell gültige Entscheidungen treffen kann - wie ein Roboter, der sich entscheiden muss, ob er nun dribbelt oder aufs Tor schießt.
"Spaß werden wir auf alle Fälle haben"
Diese Wissensmodellierung sei derzeit noch ein sehr aufwändiger Prozess, so Gspandl - und Roboterfußball ein Weg, diesen Prozess zu beschleunigen: "Es ist ja nur eine Umgebung, in der man verschiedene Wege der künstlichen Intelligenz ausprobieren kann. Ich meine, es ist ja sehr schön, fußballspielende Roboter zu haben, aber das Ziel ist es, dass man diese Methoden auf das reale Leben anwenden kann und Dinge, Techniken und Methoden daraus abzuleiten, die dem Menschen dann zur Verfügung stehen und ihm Vorteile bringen."
Die Chancen für das Team beim RoboCup kann Gspandl laut eigener Aussage nur schwer abschätzen: " Wir wollen noch viele Konzepte umsetzen, und ich weiß nicht, was die anderen Teams gerade machen. Aber das Schöne an Wettkämpfen ist, dass man einen kompakten Zeitrahmen hat, wo man viel weiterbringt. Und Spaß werden wir auf alle Fälle haben."
(futurezone/Nadja Igler)