Team Description for RoboCup 2024

Thomas Röfer, Tim Laue, Kevin Dehmlow, Harm Thordsen

Deutsches Forschungszentrum für Künstliche Intelligenz, Cyber-Physical Systems, Enrique-Schmidt-Str. 5, 28359 Bremen, Germany; Universität Bremen, Fachbereich 3 – Mathematik und Informatik, Postfach 330 440, 28334 Bremen, Germany

https://b-human.de · https://github.com/bhuman/VideoAnalysis · https://github.com/bhuman/SPLGames · https://github.com/bhuman/BHumanCodeRelease · https://www.b-human.de/theses-en.html


Abstract B-Human is a joint project of the University of Bremen and the German Research Center for Artificial Intelligence participating in the RoboCup Standard Platform League. This team description outlines the team's recent contributions, including work on team strategy, vision system optimization, and robot locomotion. For RoboCup 2024, the team focuses on making behavior strategy more flexible given different field situations and improving detection modules, particularly for ball, penalty marks, robots, and goalposts. The team has a strong track record of releasing open-source code and publishing scientific papers, with significant educational impact through its project courses.

1 Team Information

Name: B-Human

Leaders: Thomas Röfer and Tim Laue Contact: [email protected] Website: https://b-human.de

Country: Germany

Affiliation: Universität Bremen, Deutsches Forschungszentrum für Künstliche Intelligenz

1.1 Team Members

Team Leaders: Thomas Röfer, Tim Laue

Students: Florian Feegel, Hamid Yosefzai, Harm Thordsen, Ingo Kelm, Jonas Hotzan, Kevin Dehmlow, Lukas Gittner, Marten Windler, Moritz Oppermann, Nico Holsten, Nico Wellbrock, Ousmane Diallo, Paul Deiß, Roman Sablotny, Tatjana Thielke, Tim Gebers, Torge Wessel, Yannis Meyer, Yasemin Yildiz

PhD Student: Arne Hasselbring

Active Alumni: Jan Fiedler, Philip Reichenberg, Yannik Meinken

2 Code Usage

As of 2017, we used the walking engine of rUNSWift. However, through many iterations of ongoing improvements and adaptions, the engine is replaced with our own version by now. We are currently evaluating the use of the whistle detection released by the team Nao Devils [8]. In the past, we have drawn inspiration from other teams for our own software. One example for that would be the cooling of joints as first presented by the SPL team Berlin United. In these cases only the idea was adopted. The implementation was done entirely by us from scratch.

Fig. 1. The majority of the current B-Human team members for the RoboCup 2024 season.
Fig. 1. The majority of the current B-Human team members for the RoboCup 2024 season.

3 Own Contribution

(no introductory text)

3.1 Recent Contributions

During the last three RoboCup years, B-Human published the following scientific contributions:

  • B-Human 2023 – Object and Gesture Detection (Champion Paper, to appear in 2024) [15]
  • Neural Network-based Joint Angle Prediction for the NAO Robot (to appear in 2024) [6]
  • Dynamic Joint Control For A Humanoid Walk (to appear in 2024) [12]
  • B-Human 2022 – More Team Play with Less Communication (Champion Paper, 2023) [16]
  • B-Human 2021 – Playing Soccer Out of the Box (Champion Paper, 2022) [17]
  • Closing the Reality Gap with Unsupervised Sim-to-Real Image Translation (2022) [5]
  • Soccer Field Boundary Detection Using Convolutional Neural Networks (2022) [7]
  • Step Adjustment for a Robust Humanoid Walk (2022) [11]

Details about our released and maintained software contributions are given in Section 5.

3.2 Contributions for RoboCup 2024

Our contributions for RoboCup 2024 concentrate on the three main pillars: team strategy, improving current implementations, and adapting to the new rules.

For our strategy, some team members are working on updating the strategic behavior dependent on the current field situation, such as changing the behavior of our goalkeeper. The idea is to realize an offensive goalkeeper strategy, which can be switched during the game. It is an extension to the already existing (quite defensive) goalkeeper implementation, which moves all players more towards the opponent's goal, in order to press the opposing team more. We are hoping to improve the usability of the goalkeeper and let it be part of the field play.

To adapt our strategy before a kickoff, we are working on adapting the positioning of our field players to the opposing kickoff. Our aim is that the robots can detect the opponent's kickoff variation and position themselves accordingly. The ball's position is detected each time after the opponent performed a kickoff. If the ball stopped in the same area several times, it is assumed that further kickoffs will be similar and the robots can reposition themselves if needed.

We are also working on finding the optimal robot action given the current field situation to either score goals or to create chances. For this task, we are working on improving the selection of the next action, i. e. passing, shooting, dribbling, or clearing the ball. We calculate the probability of scoring a goal at the target position after executing the action. The improved calculation will be able to consider multiple consecutive actions.

Furthermore, the indirect kick rule has to be implemented. The NAOs should not directly shoot at the goal after a standard situation. Instead, the ball should be passed to another member of the same team. This will be achieved by tracking the ball possession and communicating between the team members.

Several team members are working on optimizing parts of our vision system. The NAO uses field line intersections to better estimate the current location. The goal is to refactor the detection module, optimize the algorithmic detection, and update the network model, which classifies the intersections found. A new approach matches field lines and intersections against the layout of the penalty and goal area and thereby computes an artificial landmark that will be used to improve the localization capabilities of the robot.

Currently, B-Human uses two separate neural networks for detecting the ball and the penalty marks. We aim at integrating both into a single, unified network to enhance the classification accuracy and efficiency and to distinguish the two objects better from each other. In addition, based on our new robot detection network developed last year, we are working on approaches to retrieve more information about the robots found, such as their jersey color, their orientation, and whether they are fallen or upright. One important object class on the field that has not been detected by B-Human robots for years are goalposts. A welladvanced thesis will probably enable us to detect goalposts and to use them for self-localization this year.

Following the work done in [10], we want to use a new model for the uncertainty of the robot's overall posture. We will adapt the filters for the torso pose estimation and the odometry accordingly. The methods to generate an uncertainty for the position of percepts will also be adopted. The goal is to improve the current filters and ensure a consistent and sound uncertainty modeling.

Last but not least, we continue our work on NAOs kicking a rolling ball. We started the work on this last year and we plan to use it for this year, to increase the speed of play by applying it for passes, kicks to the goal, and for dribbling, independent of whether the ball was previously played by a teammate or an opponent robot.

4 Past History

B-Human has participated in the Standard Platform League using the NAO platform since 2009. Since 2020, B-Human has participated in the GORE 2021, RoboCup 2021, German Open 2022, RoboCup 2022, GORE 2023 and RoboCup 2023 and became the overall winner in each of these competitions. Results of the regular soccer competitions are presented in Table 1. Overall, we won the yearly European SPL competitions thirteen times and the RoboCup ten times.

We plan to participate in the RoboCup German Open Event 2024 in Kassel, Germany.

Table 1. B-Human's game results in RoboCup competitions since 2021

(a) GORE 2021

Home Away Score
B-Human Nao Devils 10:0
B-Human HTWK Robots 8:0
B-Human HULKs 10:0

(b) German Open 2022

Home Away Score
B-Human RoboEireann 8:0
B-Human rUNSWift 7:0
HTWK Robots B-Human 0:3
B-Human Bembelbots 9:0
Nao Devils B-Human 0:7
B-Human HULKs 10:0
B-Human Bembelbots 10:0
B-Human HTWK Robots 4:0

(c) RoboCup 2022

Home Away Score
Dutch Nao Team B-Human 0:10
Nao Devils B-Human 0:4
B-Human HULKs 6:0
B-Human HTWK Robots 8:0
B-Human NomadZ 10:0
B-Human rUNSWift 6:0
B-Human HTWK Robots 4:0

(d) German Open 2023

Home Away Score
R2 KICKERS B-Human 0:6
B-Human HTWK Robots 7:0
B-Human HULKs 7:0
Dutch Nao Team B-Human 0:10
B-Human Bembelbots 10:0
B-Human Naova 10:0
B-Human Nao Devils 10:0
B-Human HTWK Robots 7:0

(e) RoboCup 2023

Home Away Score
Nao Devils B-Human 0:10
B-Human HTWK Robots 8:0
B-Human NomadZ 10:0
B-Human HULKs 9:0
B-Human SPQR Team 10:0
B-Human Bembelbots 10:0
B-Human rUNSWift 10:0
B-Human HTWK Robots 9:0

5 Impact

Since 2009 B-Human has released most of its code each year after the RoboCup [14]. At least 33 teams based their works on our framework or used at least parts of the code we provided. Our GitHub repository [3] currently has 118 forks. Our library for efficient inference of neural networks CompiledNN [18] is used by several teams. Our robotics simulator SimRobot [9] has been used by others even if they did not use our software framework. We also released our behavior description language CABSL [13]], which has again been used by others, even if they did not use our base system.

Since 2009 team members of B-Human have published more than 30 reviewed papers directly related to RoboCup, including two that won a best paper award and three that became best paper award finalists.

Since 2012 B-Human has developed and maintained the league's referee application GameController. The latest version for 2023 has been rewritten from scratch in Rust. Over the years, many additional applications were added, such as the GameStateVisualizer and the TeamCommunicationMonitor. Another part of the package is a tool to export statistics from the GameController's log files, which is the basis for game statistics that we have published for each RoboCup and all local European competitions since 2013. To simplify testing our contribution to the 2022 video analysis challenge [1], we prepared and continue to update an easy-to-use index [2] for the GameController logs, the team communication logs, and the game videos of the RoboCups since 2018.

Furthermore, the B-Human team also has a significant educational impact. The majority of the team members are always students who participate in an official project course. For obtaining a degree at the University of Bremen's computer science department, students have to take such a project course, which is, by the way, heavily weighted in the final grade. We have been running RoboCuprelated project courses consistently since the year 2000. Since our start in the current SPL in 2009, more than 160 students participated and learned about many different aspects of robotics. Following the course, many students write their thesis about a B-Human-related topic. To date, 44 theses have been written [4] and a few more are in progress. Many of the aforementioned publications have their origin in one of these theses and build a bridge between education and research.

6 Summary

The RoboCup team B-Human is a joint project of the University of Bremen and the German Research Center for Artificial Intelligence, which has been very successful in the past. The team members are constantly working on the codebase, improving it, renewing it, and adapting it to the rule changes. This year, our focus is on making our behavior strategy more flexible given different field situations and on improving our current implementations, primarily the detection modules. The B-Human team has released a lot of code that is used by others and published several scientific papers over the years. It is also an important educational project at the University of Bremen, in which many students took part over the years.

References

  1. B-Human: B-Human's video analysis app, https://github.com/bhuman/VideoAnalysis
  2. B-Human: Information about games in the RoboCup Standard Platform League, https://github.com/bhuman/SPLGames
  3. B-Human: The official B-Human code releases, https://github.com/bhuman/BHumanCodeRelease
  4. B-Human: Theses, https://www.b-human.de/theses-en.html
  5. Blumenkamp, J., Baude, A., Laue, T.: Closing the reality gap with unsupervised sim-to-real image translation. In: Alami, R., Biswas, J., Cakmak, M., Obst, O. (eds.) RoboCup 2021: Robot World Cup XXIV. Lecture Notes in Artificial Intelligence, vol. 13132, pp. 127–139. Springer (2022)
  6. Fiedler, J., Laue, T.: Neural network-based joint angle prediction for the nao robot. In: Buche, C., Rossi, A., Simões, M., Visser, U. (eds.) RoboCup 2023: Robot World Cup XXVI. Lecture Notes in Artificial Intelligence, vol. 14140. Springer (to appear in 2024)
  7. Hasselbring, A., Baude, A.: Soccer field boundary detection using convolutional neural networks. In: Alami, R., Biswas, J., Cakmak, M., Obst, O. (eds.) RoboCup 2021: Robot World Cup XXIV. Lecture Notes in Artificial Intelligence, vol. 13132, pp. 202–213. Springer (2022)
  8. Kleingarn, D., Brämer, D.: Neural network and prior knowledge ensemble for whistle recognition. In: Buche, C., Rossi, A., Simões, M., Visser, U. (eds.) RoboCup 2023: Robot World Cup XXVI. Lecture Notes in Artificial Intelligence, vol. 14140. Springer (to appear in 2024)
  9. Laue, T., Röfer, T.: SimRobot – development and applications. In: Amor, H.B., Boedecker, J., Obst, O. (eds.) The Universe of RoboCup Simulators – Implementations, Challenges and Strategies for Collaboration. Workshop Proceedings of the International Conference on Simulation, Modeling and Programming for Autonomous Robots (SIMPAR 2008). Venice, Italy (2008)
  10. Meinken, Y.: Sensor Noise of the Humanoid NAO Robot and its Effects on Camera Projection. Bachelor's thesis, University of Bremen (2023)
  11. Reichenberg, P., Röfer, T.: Step adjustment for a robust humanoid walk. In: Alami, R., Biswas, J., Cakmak, M., Obst, O. (eds.) RoboCup 2021: Robot World Cup XXIV. Lecture Notes in Artificial Intelligence, vol. 13132, pp. 28–39. Springer (2022)
  12. Reichenberg, P., Röfer, T.: Dynamic joint control for a humanoid walk. In: Buche, C., Rossi, A., Simões, M., Visser, U. (eds.) RoboCup 2023: Robot World Cup XXVI. Lecture Notes in Artificial Intelligence, vol. 14140. Springer (to appear in 2024)
  13. Röfer, T.: CABSL – C-based agent behavior specification language. In: RoboCup 2017: Robot World Cup XXI. Lecture Notes in Artificial Intelligence, vol. 11175, pp. 135–142. Springer (2018)
  14. Röfer, T., Laue, T.: On B-Human's code releases in the Standard Platform League – software architecture and impact. In: Behnke, S., Veloso, M., Visser, A., Xiong, R. (eds.) RoboCup 2013: Robot World Cup XVII. Lecture Notes in Artificial Intelligence, vol. 8371, pp. 648–655. Springer (2014)
  15. Röfer, T., Laue, T., Hasselbring, A., Böse, F., Monnerjahn, L.M., van Lessen, K.: B-Human 2023 – object and gesture detection. In: Buche, C., Rossi, A., Simões, M., Visser, U. (eds.) RoboCup 2023: Robot World Cup XXVI. Lecture Notes in Artificial Intelligence, vol. 14140. Springer (to appear in 2024)
  16. Röfer, T., Laue, T., Hasselbring, A., Lienhoop, J., Meinken, Y., Reichenberg, P.: B-Human 2022 – more team play with less communication. In: Eguchi, A., Lau, N., Paetzel-Prüsmann, M., Wanichanon, T. (eds.) RoboCup 2022: Robot World Cup XXV. Lecture Notes in Artificial Intelligence, vol. 13561, pp. 287–299. Springer (2023)
  17. Röfer, T., Laue, T., Hasselbring, A., Monnerjahn, L.M., Matschull, N., Plecher, L.: B-Human 2021 – playing soccer out of the box. In: Alami, R., Biswas, J., Cakmak, M., Obst, O. (eds.) RoboCup 2021: Robot World Cup XXIV. Lecture Notes in Artificial Intelligence, vol. 13132, pp. 302–313. Springer (2022)
  18. Thielke, F., Hasselbring, A.: A JIT compiler for neural network inference. In: Chalup, S., Niemueller, T., Suthakorn, J., Williams, M.A. (eds.) RoboCup 2019: Robot World Cup XXIII. Lecture Notes in Artificial Intelligence, vol. 11531, pp. 448–456. Springer (2019)