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

Max Westermann

Strategie-Leitung
M.Sc. Mechatronik und Robotik

Mitglied seit Mai 2022

Leon Koch

Leon Koch

Python Module, Offensive
M.Sc. Mechatronik und Robotik

Mitglied seit Oktober 2021

Larissa Seegemann

Larissa Seegemann

Skills
B.Sc. Mechatronik und Robotik

Mitglied seit Dezember 2019

Steffen Begemann

Steffen Begemann

Skills
B.Sc. Informatik

Mitglied seit Januar 2023

Laurin Pelz

Laurin Pelz

Python Module, Torwart
B.Sc. Informatik

Mitglied seit Januar 2023

Lennart Kaden

Lennart Kaden

Python Module, Defensive
B.Sc. Informatik

Mitglied seit Januar 2023

Timo Balke

Timo Balke

Reinforcement Learning
M.Sc. Informatik

Mitglied seit Januar 2023

Du möchtest den luhbots beitreten?