Soccer Strategie
Die Vision für das große Ganze.
Die Strategie stellt die künstliche Intelligenz unseres Systems dar und ist somit entscheidend, um erfolgreich gegen andere Teams zu spielen. Die Hauptaufgabe besteht darin, die aktuelle Spielsituation zu analysieren und darauf basierend die Bewegungen und Handlungen der Roboter im Spiel so zu koordinieren, dass wir die besten Chancen auf einen Sieg haben. Die Strategie muss dabei auch in der Lage sein, sich an die ändernden Bedingungen während des Spiels anzupassen und in Echtzeit neue Entscheidungen zu treffen.
Die Koordination mehrerer Roboter
Dies ist eine der zentralen Herausforderungen des Roboterfußballs. Da während eines Spieles nicht mit den Robotern interagiert werden darf, müssen alle Entscheidungen auf dem Feld vollkommen autonom getroffen werden. Dazu muss von der Strategie der aktuelle Spielzustand analysiert werden und darauf basierend Spielzüge geplant werden, die im Idealfall in einem erfolgreichen Torschuss enden, beziehungsweise Torschüsse des Gegners verhindern.
Dies ist eine anspruchsvolle Aufgabe, da es sich bei Fußball um ein komplexes Multiagenten-System handelt. So ist für ein erfolgreiches Spiel zum einen eine starke Kooperation innerhalb des eigenen Teams erforderlich. Mehrere Roboter müssen gemeinsam an einer Aufgabe arbeiten, um Pässe ausführen oder die Verteidigung sinnvoll koordinieren zu können. Zum anderen ist Fußball aber auch ein kompetitiver Sport, bei dem ein direkter Wettkampf mit dem Gegner besteht. So werden die gegnerischen Roboter ständig versuchen, die eigenen Pläne zu durchkreuzen und müssen daher bei allen Spielentscheidungen mitberücksichtigt werden. Gleichzeitig muss aber natürlich auch evaluiert werden, wie die eigenen Roboter den Gegner bei seinen Vorhaben möglichst gut behindern können.
Um diese Herausforderung zu meistern, arbeitet die Strategieabteilung an mehreren kleineren Modulen, die sich um Teilaspekte der Steuerung kümmern.
Strategie Bausteine
Observer
Das Observer-Modul ist für die Spielfeldanalyse zuständig. Der Observer erhält von der Vision Low-Level-Informationen, wie zum Beispiel die Positionen des Balls oder der Roboter. Aus diesen lassen sich dann nützlichere High-Level-Informationen ableiten, auf denen basierend die anderen Module dann die Entscheidungen treffen können. Diese High-Level-Informationen beinhalten insbesondere das Gefahrenlevel der gegnerischen Roboter, die aktuelle Erfolgsaussicht eines Torschusses oder die Information welche Roboter sich im Moment besonders gut als Anspielstation eignen.
Role-Manager
Wie beim echten Fußball haben auch unsere Roboter Rollen. So gibt es neben einem Torwart und Stürmer auch Verteidiger und Mittelfeldspieler. Da die Hardware aller Roboter prinzipiell identisch ist, kann jeder Roboter jeder Rolle zugewiesen werden. Der Role-Manager analysiert auf Basis der Observer-Daten, wie viele Roboter aktuell in jeder Rolle benötigt werden und welche Roboter sich am besten für die jeweilige Rolle eignen würden. Über diese Rollenverteilung ist es somit auch möglich, sehr dynamisch zwischen einem aggressiven und defensiven Spielstil zu wechseln.
Task-Manager
Im Task-Manager werden die Aufgaben an die Roboter verteilt. Alle Roboter mit derselben Rolle fungieren dabei als eine Art „Squad“, das vom Taskmanager zentral koordiniert wird, um die wesentliche Aufgabe der Rolle zu erfüllen. So werden dem Stürmer Aufgaben zugewiesen, die zum Ziel haben, den Ball zunächst zu erobern und im Anschluss zu passen oder auf das Tor zu schießen. Die Verteidiger blockieren den Zugang zum eigenen Strafraum und fangen gegnerische Schüsse auf das Tor ab. Das Mittelfeld ist hingegen flexibler und kann entweder defensiv agieren, indem es Roboter deckt und Pässe abfängt oder offensiv, indem sich die Roboter während eines Angriffs freilaufen und sich für den Gegner gefährlich positionieren.
Skills
Nachdem der Task-Manager jedem Roboter eine Aufgabe zugewiesen wird, muss diese von dem entsprechenden Roboter ausgeführt werden. Auf welche Weise das geschieht, wird in den sogenannten Skills definiert. Hier wird festgelegt, wie genau sich ein Roboter verhalten muss, um beispielsweise einen Gegner zu decken, einen Ball abzufangen oder einen Pass zu einem eigenen Roboter durchzuführen. Basierend darauf werden im Anschluss Kommandos von der Software an die Roboter übermittelt, die diese dann auf dem Spielfeld ausführen.
Das Strategie-Team
Max Westermann
Mitglied seit Mai 2022
Leon Koch
Mitglied seit Oktober 2021
Larissa Seegemann
Mitglied seit Dezember 2019
Steffen Begemann
Mitglied seit Januar 2023
Timo Balke
Mitglied seit Januar 2023