Berlin United - Nao Team Humboldt 2024
Heinrich Mellmann, Stella A. Schlotter, Max Patzelt
Adaptive Systeme, Institut für Informatik, Humboldt-Universität zu Berlin, Berlin, Germany
https://berlin-united.org/ · https://github.com/BerlinUnited/NaoTH · https://github.com/BerlinUnited/NaoTH/wiki · https://naoth.de/de/publications/ · https://docs.berlinunited.org
Abstract Berlin United is a team in the Standard Platform League of RoboCup, continuing the legacy of Nao Team Humboldt from Humboldt-Universität zu Berlin. The team develops original code for autonomous humanoid robot soccer, with contributions spanning perception, decision-making based on anticipation, dynamic role assignment, and implicit communication through audio signals.
1 Team Information
team name: Berlin United
team leader(s): Heinrich Mellmann, Stella A. Schlotter team contact email: [email protected]
team website URL: https://berlin-united.org/
country of origin: Germany
university affiliation: Humboldt-Universität zu Berlin, Department of Computer Science, Adaptive Systems Group
2 Code Usage
Berlin United maintains an originally developed code base, which does not incorporate any major unchanged code parts developed by other teams. Ideas and inspiration based on the code and publications by other teams are acknowledged accordingly in the team report and code where they are used.
We are using a custom Ubuntu-based OS on the robots. The script for building this OS was cloned in 2021 from the original script developed by the team NaoDevils and was restructured and extended to our needs.
We are not planning to use any other code of other teams at the RoboCup 2024.
3 Own Contribution
Throughout its history, our team made numerous technical and scientific contributions. Our published contributions can be found on the website of our team. Our code base and related projects are regularly made public (we publish every commit to our main branch) together with our code documentation.
Code: https://github.com/BerlinUnited/NaoTH Setup: https://github.com/BerlinUnited/NaoTH/wiki Scientific Publications https://naoth.de/de/publications/ Online Documentation (in progress): https://docs.berlinunited.org
In the following, we highlight a few noteworthy contributions from the past three years as per section A.1. in the rule book. All implementations can be openly found in our code base.
Video data collection As described in [8] we developed a recording system for the RoboCup games that is synchronized with the game controller logs and can therefore be easily synchronized to the team's individual robot logs. We deployed this system in past events to collect and organize videos and data from SPL Games on a large scale and helped with the setup at events, at which we did not participate. The collected data is publicly available and was used as a basis for the Open Research Challenge — Video analysis / statistics at the RoboCup 2022. The challenge lead to a number of posters presented at RoboCup 2022. This project was supported through a RoboCup Federation research grant in 2023 and was presented at the symposium at the RoboCup 2023. We are planning to continue upgrading the system and are also working on an integration of streaming and recording of RoboCup games in collaboration with the team NaoDevils.
Neural Network Compilers As part of a master thesis by Stella A. Schlotter [12], we analyzed various compilers for neural networks. The results of that research will go into future development of our robot software. Moreover, we focused on improving our training pipeline. We are now able to automatically label images from logs and immediately use them for training for the next game. Our system makes it easy to include only the data we want. For example, we can easily filter for robots, time of day, field, and event.
Deep Neural Networks for Object Detection and Prediction We are continuously working on improving and finding new ways for fast and stable object detection (for balls, robots, and other objects on the field). In an ongoing project work by Max Patzelt we are specifically investigating how Variational Autoencoders (VAE) can be used to realize more data efficient and stable visual object detection. At the same time, very similar techniques can be used to train neural predictive models, which can be used to predict the outcome of a particular action (e.g., movement of the ball after a kick) and be used to make fast and effective decisions as described in later section Decision Making based on Anticipation.
Dynamic Role Assignment and Team Coordination In his thesis [13], Philipp Strobel, developed a behavior system for a highly dynamic team strategy strategy including role negotiations between players and assignment of locations on the field. The role assignments depend on the importance of the roles and the situation in the field. For instance, more important roles (goalie, striker) are prioritized and the overall walking load of the team is optimized. More information can be found in [13]. An initial version was already employed at the GO19 and RC19 and further developed and deployed at RC23 to adjust for limited event-based communication.
Behavior: from Simulation to Reality SimSpark-Simulator used by the S3D-League was extended and adapted to the SPL rules and physics requirements. Our team has been continuously working and improving this adapted version since 2010. SimSpark allows to execution of lightweight simulations of entire games making it ideal for behavior experiments. In [13], SimSpark was used as part of a system running large numbers of SPL games with different parameters for the team strategy described above. Based on the results, the most promising parametrizations were determined, which were used in real games.
Implicit Communication Through non-intrusive Audio Signals In a recent Master-Thesis-Project, Jacob Dübel[2] investigated a method for coordination between robots using short chirp-sounds optimized for robots, similar to R2D2. The sounds themselves do not carry digital information, but rather serve as short call-outs marking certain situations (e.g., "I'm free to receive a pass") and can be localized in space by receiving robots. The sounds were designed in a way to be non-intrusive to a human audience and to be easily detected and localized by teammates. This way we hope to further reduce the dependency on Wi-Fi communication. An example of sound can be heard at the beginning of the video.
Decision Making based on Anticipation Our robots use internal simulation to predict the outcome of different actions and to make decisions. This allows the robots to anticipate complex situations (movement of the ball and behavior of other players) and react adequately on an individual level reducing the need for coordination through explicit communication. For example, the robots predict the ball's behavior for different possible actions (e.g., kicks) and choose the action promising the best outcome. The robots are also capable of simulating the decisions of other players, which can be used to realize team decisions without communication. This approach has been used in RoboCup games and has continuously been developed and extended since 2015. Our results were published in [6, 5, 7].
3.1 Stable Perception
As part of his master's thesis [3], Steffen Kaden, analyzed the complete perception chain from the perception and modeling of the ball's behavior to the perception of the robot's pose in space. One of the especially noteworthy results is an accurate and robust implementation of the IMU based on Unscented Kalman Filtering, which allows the robot to keep its orientation throughout the entire game. Another contribution from the thesis is the automatic calibration routine for the camera matrix based on the perceived lines.
4 Past History
The research group Berlin United - Nao Team Humboldt (NaoTH ) is part of the research lab for Adaptive Systems at Humboldt-Universität zu Berlin (HU) headed by Prof. Verena Hafner. The team mainly consists of students and researchers from the Humboldt-Universität of different levels - Bachelor, Master/Diploma, and PhD levels. We also have team members who finished their studies at the HU and still continue to contribute. Besides the direct participation at the RoboCup competitions NaoTH is involved in teaching at the university, public engagement, and building of the RoboCup community.
NaoTH was founded at the end of 2007 at the AI research lab headed by Prof. Hans-Dieter Burkhard and has been a member of the SPL since the first SPL competition in 2008 in Suzhou. NaoTH is a direct successor of the Aibo Team Humboldt, which was active in the Four Legged League of the RoboCup as a part of the GermanTeam until 2008. GermanTeam won the world championship three times during its existence. In 2011 we formed a conjoint team Berlin United with the team FUmanoids from Berlin, which participated in the KidSize League. The collaboration included extensive exchange of experience, sharing of code, and organization of joint workshops. In 2017 the team FUmanoids ceased to exist. Since then NaoTH remains the only member of Berlin United and continues to compete under this name.
Our joint test games with FUmanoids developed into a growing series of workshops known as RoboCup Berlin Open Workshop (RoBOW). After its first installment in 2011 RoBOW grew into a regular series of RoboCup workshops organized by different universities, most notably RoHOW organized by the team HULKs in Hamburg/Germany and Rodeo organized by the Team Nao Devils in Dortmund/Germany.
In 2010 and 2011 we also competed in the 3D Simulation league with the same code as used for the SPL. In the 3D Simulation, we won the German Open and the AutCup competitions and achieved the 2nd place at the RoboCup World Championship 2010 in Singapore.
In 2017 and 2018 NaoTH competed together with the team NaoDevils as a joint team DoBerMan at the RoboCup SPL Mixed Team Competition and achieved 2nd place in both years. In 2017 NaoTH won 2nd place in the challenger shield and 2018 reached the quarterfinals in the Champions Cup of the main competition. We won 1st place in each of the technical challenges in 2019: the Directional Whistle Challenge, and the Open Research Challenge with our "joint relaxation mechanism to prevent overheating". We also won 1st place in the Mixed Team competition (6 vs 6) as part of the mixed team B&B together with B-Human.
In 2021 our team achieved 3rd place in the Obstacle Avoidance Challenge. Our team was unable to participate in the RoboCup competitions in 2022 as a result of the COVID pandemic.
In 2023 our team successfully participated in the RoboCup in Bordeaux in the Champions Cup and managed to catch up with the new rules and requirements as well as revitalize the team base.
In 2024 we are planning to participate in the German Open in Kassel, in the RoboCup in Eindhoven, and perhaps at the local workshop event RoDEO (in case NaoDevils do organize it again ;).
4.1 Results 2019 - 2023
RoboCup results 2019-2023 including matches and challenge placings.
| RoboCup 2023 | |||||
|---|---|---|---|---|---|
| Round 6 | HULKs | Berlin United | 1 | 0 | |
| Round 5 | NomadZ | Berlin United | 0 | 0 {2} | |
| Round 4 | Nao Devils | Berlin United | 2 | 0 | |
| Round 3 | rUNSWift | Berlin United | 2 | 0 | |
| Round 2 | Berlin United | SPQR Team | 0 | 3 | |
| Round 1 | Berlin United | Bembelbots | 0 | 2 | |
| RoboCup 2021 | |||||
| Challenge | Rank / Place | ||||
| Obstacle Avoidance | 3 | ||||
| 1vs1 | 9 | ||||
| Autonomous Calibration | 6 | ||||
| Overall | 8 | ||||
| RoboCup 2019 | |||||
| FIRST ROUND ROBIN | |||||
| Berlin United | Nao Devils | 0 | 1 | ||
| Berlin United | NTU RoboPAL 6 | 1 | |||
| SECOND ROUND ROBIN | |||||
| Berlin United | Nao-Team HTWK | 0 | 5 | ||
| Berlin United | NomadZ | 3 | 0 | ||
| PLAY-IN | Berlin United | Bembelbots | 0 (1) | 0 (1) | |
| MIXED TEAM COMPETITION | |||||
| B&B | SwiftArk | 5 | 0 | ||
| B&B | Devil SMASH | 2 | 0 | ||
| B&B | Team Team | 1 | 1 | ||
| B&B | SPQR-Starkit | 6 | 0 | ||
| Finals | B&B | Team Team | 0 (3) | 0 (2) | |
| Technical Challenges | |||||
| Challenge | Rank / Place | ||||
| Whistle | 1 | ||||
| Open | 1 | ||||
| Overall | 1 | ||||
| GermanOpen 2019 | |||||
| Round Robin | Berlin United | Bembelbots | 4 | 0 | |
| Round Robin | Berlin United | Nao Devils | 1 | 2 | |
| Round Robin | Berlin United | B-Human | 0 | 7 | |
| Play-in Round | Berlin United | rUNSWift | 0 | 10 |
5 Impact
Most of the impact can be derived from the previous sections. Here we would like to highlight a few aspects.
on SPL: We believe that collecting well-structured data from the RoboCup games on a large scale as described in section 3 (Video data collection) will significantly advance the league and RoboCup as a whole. The support and the positive feedback that we received from the community strengthened this belief. This project was also cited in the landmark publication [1] by Asada and von Stryk.
We organize and actively contribute to various public and non-public RoboCup events, like RoHOW, Rodeo, Lange Nacht der Wissenschaften in Berlin, and many more. We regularly publish at the RoboCup Symposium.
The impact of our technical and scientific contributions is difficult to assess: our original code base and scientific publications are public and can be used as inspiration for other teams.
on the team's university/community: RoboCup is a great opportunity for our students to connect with other students and researchers on an international level. RoboCup provides strong motivation to work on robotic problems and attracts a significant number of students. Our team is actively participation in teaching activities at our university. Our team is well known in the University and local campus and is often invited to local public events.
6 Other
Our team was pre-qualified for the RoboCup championships beginning from 2015 until 2022, where we unfortunately were not able to participate due to the impact of the COVID pandemic on our team. This year, we are determined to return and compete with the other SPL teams for the championship once more :)
A number of bachelor and master theses on RoboCup topics were written be our team members in the past three years [3, 12, 14, 2, 11, 4, 9, 10, 13].
References
- Asada, M., von Stryk, O.: Scientific and technological challenges in robocup. Annual Review of Control, Robotics, and Autonomous Systems 3(1) (2020). https://doi.org/10.1146/annurev-control-100719-064806
- Dübel, J.: Akustische Ortung im Roboterfußball. master thesis, Humboldt-Universität zu Berlin (2022), (in German)
- Kaden, S.: Wahrnehmung im Kontext des zweibeinigen Laufens humanoider Roboter. project thesis, Humboldt-Universität zu Berlin (2020), (in German)
- Kaden, S.: Zweibeiniges Laufen für Humanoide Roboter im RoboCup. project thesis, Humboldt-Universität zu Berlin (2020), https://www2.informatik.hu-berlin.de/~naoth/docs/theses/2020-studienarbeit-kaden.pdf (in German)
- Mellmann, H., Schlotter, S.A.: Advances on simulation based selection of actions for a humanoid soccer-robot. In: Proceedings of the 12th Workshop on Humanoid Soccer Robots, 17th IEEE-RAS International Conference on Humanoid Robots (Humanoids), Madrid, Spain. (2017)
- Mellmann, H., Schlotter, S.A., Blum, C.: Simulation based selection of actions for a humanoid soccer-robot. In: RoboCup 2016: Robot Soccer World Cup XX (2016), http://www.ais.uni-bonn.de/robocup.de/2016/papers/RoboCup_Symposium_2016_Mellmann.pdf
- Mellmann, H., Schlotter, S.A., Musiolek, L., Hafner, V.V.: Anticipation as a mechanism for complex behavior in artificial agents. Artificial Life Conference Proceedings (32), 157–159 (2020). https://doi.org/10.1162/isal_a_00314
- Mellmann, H., Schlotter, S.A., Strobel, P.: Toward Data Driven Development in RoboCup. In: RoboCup 2019: Robot Soccer World Cup XXIII (2019)
- Nguyen, A.T.: Realtime Object Detection on the NAO Robot. project thesis, Humboldt-Universität zu Berlin (2020), https://www2.informatik.hu-berlin.de/~naoth/docs/theses/2020-studienarbeit-nguyen.pdf
- Prisacaru, A.: Gretchen - a humanoid robot for research and education. bachelor thesis, Humboldt-Universität zu Berlin (2020), https://www2.informatik.hu-berlin.de/~naoth/docs/theses/2020-bachelorarbeit-prisacaru.pdf
- Schlotter, S.A.: Analyse von RoboCup Spielen - Erkennen und Lokalisieren von Nao Robotern. project thesis, Humboldt-Universität zu Berlin (2020), https://www2.informatik.hu-berlin.de/~naoth/docs/theses/2020-studienarbeit-schlotter.pdf (in German)
- Schlotter, S.A.: Objekterkennung im RoboCup Kontext. master thesis, Humboldt-Universität zu Berlin (2022), (in German)
- Strobel, P.: Teamstrategie und -koordination im Kontext des Roboterfußballs. master thesis, Humboldt-Universität zu Berlin (2020), https://www2.informatik.hu-berlin.de/~naoth/docs/theses/2020-diplomarbeit-strobel.pdf (in German)
- Treßin, D.: Softwareframework für den humanoiden Roboter Gretchen. bachelor thesis, Humboldt-Universität zu Berlin (2022), (in German)