Soccer Strategy

The vision for the bigger picture.

The strategy programms the artificial intelligence of our system and is therefore crucial to successfully play against other teams. The main task is to analyze the current game situation based the movement and actions of the robots in the game so that we have the best chances of winning. The strategy must also be able to adapt to changing conditions during the game and make new decisions in real time.

The coordination of multiple robots

This is one of the central challenges of robot soccer. Since no interaction with the robots is allowed during a match, all decisions on the field must be made completely autonomously. For this purpose, the strategy must analyze the current state of the game and, based on this, plan moves that ideally end in a successful shot on goal or prevent shots on goal by the opponent.

This is a challenging task, since soccer is a complex multi-agent system. On the one hand, a successful game requires strong cooperation within one’s own team. Several robots have to work together on a task in order to be able to execute passes or coordinate the defense in a meaningful way. On the other hand, soccer is also a competitive sport in which there is direct competition with the opponent. Thus, the opposing robots will constantly try to thwart one’s own plans and must therefore be taken into account in all game decisions. At the same time, of course, it is also necessary to evaluate how one’s own robots can hinder the opponent in his plans as well as possible.

To meet this challenge, the strategy department is working on several smaller modules that take care of partial aspects of control. 

Strategy Modules

Observer

The observer module is responsible for the playing field analysis. The observer receives low-level information from the vision, such as the positions of the ball or the robots. From this, more useful high-level information can then be derived, on the basis of which the other modules can then make decisions. This high-level information includes, in particular, the danger level of the opposing robots, the current chance of a shot on the goal being successful, or information about which robots are particularly suitable as passing stations at the moment.

Role-Manager

As with real soccer, our robots also have different roles. In addition to a goalkeeper and a striker, there are also defenders and midfielders. Since the hardware of all robots is basically identical, each robot can be assigned to any role. Based on the Observer data, the Role Manager analyzes how many robots are currently required in each role and which robots would be best suited for the respective role. This distribution of roles also makes it possible to switch very dynamically between an aggressive and defensive style of play.

Task-Manager

The tasks are distributed to the robots in the task manager. All robots with the same role act as a kind of "squad" that is centrally coordinated by the task manager in order to fulfill the essential task of the role. So the attacker gets the task to win the ball and then pass it to an other robot or shoot at the goal. The defenders block access to their own penalty area and intercept opposing shots on the goal. The midfield, role is more flexible and can either act defensively, by covering robots and intercepting passes, or offensively, so the robots run free during an attack and position themselves in a dangerous position for the opponent.

Skills

After the task manager has assigned a task to each robot, it must be carried out by the corresponding robot. How this happens is defined in the skills. Here it is determined how exactly a robot has to behave, for example to cover an opponent, intercept a ball or pass to one of your own robots. Based on this, commands are then sent from the software to the robots, which they execute then on the field.

The Strategy-Team

Max Westermann

Max Westermann

Strategy Leader
M.Sc. Mechatronics and Robotics

Member since May 2022

Leon Koch

Leon Koch

Python Modules, Offense
M.Sc. Mechatronics and Robotics

Member since October 2021

Larissa Seegemann

Larissa Seegemann

Skills
B.Sc. Mechatronics and Robotics

Member since December 2019

Steffen Begemann

Steffen Begemann

Skills
B.Sc. Computer science

Member since January 2023

Laurin Pelz

Laurin Pelz

Python Modules, Goalie
B.Sc. Computer science

Member since January 2023

Lennart Kaden

Lennart Kaden

Python Modules, Defense
B.Sc. Computer science

Member since January 2023

Timo Balke

Timo Balke

Reinforcement Learning
M.Sc. Computer science

Member since January 2023

Interested in joining the team?