Team Description Paper 2024
Mikhail Asavkin, Nicholas Bell, Neeraj Gopikrishnan, Stefan Immaraj, Maria Lizura, Mary Pillay, Claude Sammut, Peter Schmidt
School of Computer Science and Engineering, The University of New South Wales, Sydney, New South Wales, 2052
https://runswift.readthedocs.io
Abstract This paper describes rUNSWift's approach and contributions to the RoboCup Standard Platform League, including recent improvements to tooling, vision, motion, architecture, whistle detection, and robot detection systems.
Team Information
Team Name: rUNSWift
Team Leader: Claude Sammut, Mikhail Asavkin Email Address: [email protected] Team Website: https://runswift.readthedocs.io
Country of Origin: Australia University affiliation: UNSW Sydney
Code Usage
Most of the rUNSWift codebase has been incrementally developed over the years. We would like to thank the Nao Devils team for the use of their camera driver first used in 2018, with some modifications.
The basic structure of the 2022 vision system remains the same as that of 2017-19 [2], [3], [1].
Localisation and state estimation remain largely the same as 2018 [3] and 2019 [1].
rUNSWift's motion is primarily based off the Hengst's walk generator [4] developed in house and used since the 2014 RoboCup competition.
The basic structure of the 2022 tooling remains the same as that of 2019 [1]. With the recent addition of web-based toolset (Webnao).
Own Contribution
While rUNSWift had made significant contributions previously, during the period from 2019 to present, the ongoing research hasn't resulted in publishable articles yet.
We are working on the several major improvements that should result in significant contributions to the state-of-the-art in the near future including tooling, architecture and the vision system.
Tools
We recently developed a web-based toolset Webnao with the aim of calibrating the vision, localisation and kinematics better and quicker. This was a result of updating a vision tool that was accessible cross-platform rather than the previous vision tool Offnao that was only compatible with Ubuntu 18 which has reached an EOL.
Vision
Historically, the team have been using multi-stage vision pipeline with a mixture of ML-based and algorithm-based approaches. We are developing experimental approach that would allow us to train the vision pipeline using single ML model instead. This significant undertaking requires us to build tools for capturing auto-labeled data during the game and under special situations on the field. In 2022-2023 period we have been working on a set of tools to enable the data capture and auto-labeling for future training. We also identified situations where the robots had blind spots and consequently improved the algorithm's approach to find the ball while minimising motion blur in a way that was quicker and more reliable with dynamic pitch and yaw.
Motion
rUNSWift's reinforcement-learning base walk engine has been a significant breakthrough for its time that have been adopted by many teams around the world. We are using a motion engine based on the deep reinforcement learning. Due to the high uncertainty and random joint movements at the beginning of the training, using physical robots is not practical, therefore as a first step we have experimented with various simulation engines and have developed a simulator based on PyBullet. The initial use for this is to test different get-ups and walks in simulation so as to not cause wear/damage to real robots. This will allow us to better analyse what happens during the game by replaying the game logs in a simulation.
Architecture
The team has been working on implementing and testing ROS2 nodes running on the robot as we see great potential in support an ecosystem of well-maintained narrow-purpose open-source packages based on ROS2 as it would allow for easier innovation translation between RoboCup SPL and the industry at large.
Whistle Detection
The team is currently working on an improved whistle detection algorithm as well as more comprehensive whistle detection behaviours to allow the robots to respond more effectively to in game commands.
Robot Detection
The team is also currently working on detecting the colour of the jerseys of robots around them so that they can distinguish robots on our team and on the opposing team.
Past History
Team rUNSWift has been competing in the Standard Platform League (SPL) since 1999. Every year, we strive to improve the weakest aspects of our system and adapt it to new challenges presented by the SPL technical committee (TC) through rule changes.
The competition took place from 6-9 July 2023, with a day and a half of setup and a closing research symposium. The seeding round consisted of a Swiss tournament which seemed to accommodate the 9 competing teams better than the pools and play in rounds of prior years. A single-elimination tournament decided the winner, with a 3rd place playoff added. rUNSWift achieved 3rd place in the competition through a nail-biting penalty shootout at the Exhibition Center of Bordeaux, equaling the team's performance in Thailand 2022 and Sydney 2019. This was one of the first penalty shootouts ever in SPL and it was fascinating to see the robots in a penalty situation that was only partially prepared for because of how rare the situation was - with robots not listening for penalty whistles and goalies not being prepared to dive for the penalty.
rUNSWift feels fortunate to have placed 3rd overall this year, winning 2 games out of 5 in the seeding rounds, a quarter final and 3rd place game. 1
For the upcoming year, we plan to focus on rebuilding the team's capability, passing the metaphorical baton to a new generation of RoboCuppers. We unfortunately won't participate in GORE2024 as it is logistically challenging to move the robots and team overseas. Over the next couple of years we will continue to focus on improving our vision system, as well as transitioning our code-base to ROS2 which is used more industrially meaning it will have a more comprehensive support system and better in-built tools.
Results of competitive games from 2019-2022
| Competition | Level | Opponent | Score | Res |
|---|---|---|---|---|
| RoboCup 2023 | Third-place | HULKs | 1:1 [0:2] win | |
| RoboCup 2023 | Semi-finals | B-Human | 10-0 | loss |
| RoboCup 2023 | Quarter-finals | Nao Devils | 0-3 | win |
| RoboCup 2023 | Round 5 | Bembelbots | 2-0 | win |
| RoboCup 2023 | Round 4 | SPQR Team | 0-0 | draw |
| RoboCup 2023 | Round 3 | Berlin United | 2-0 | win |
| RoboCup 2023 | Round 2 | HULKs | 3-0 | loss |
| RoboCup 2023 | Round 1 | HTWK Robots | 3-0 | loss |
| RoboCup 2022 | Third-place | Nao Devils | 1-0 | win |
| RoboCup 2022 | Semi-finals | B-Human | 6-0 | loss |
| RoboCup 2022 | Quarter-finals | UT Austin Villa | 1-3 | win |
| RoboCup 2022 | Round 4 | SPQR Team | 0-5 | win |
| RoboCup 2022 | Round 3 | UPennalizers | 5-0 | win |
| RoboCup 2022 | Round 2 | UT Austin Villa | 0-0 | draw |
| RoboCup 2022 | Round 1 | HTWK Robots | 3-0 | loss |
| GORE 2022 | Quarter-finals | RoboEireann | 0-1 | loss |
| GORE 2022 | Round 6 | SPQR Team | 0-0 | draw |
| GORE 2022 | Round 5 | R-ZWEI KICKERS | 5-0 | win |
| GORE 2022 | Round 3 | B-Human | 0-7 | loss |
| GORE 2022 | Round 2 | Bembelbots | 1-0 | win |
| GORE 2022 | Round 1 | HULKs | 6-0 | win |
| RoboCup 2019 | Third-place | Nao Devils | 11-2 | win |
| RoboCup 2019 | Semi-finals | B-Human | 3-0 | loss |
| RoboCup 2019 | Quarter-finals | TJArk | 5-0 | win |
| RoboCup 2019 2nd Round Robin | Bembelbots | 7-0 | win | |
| RoboCup 2019 2nd Round Robin | HULKs | 5-0 | win | |
| RoboCup 2019 1st Round Robin | Camellia Dragons | 4-0 | win | |
| RoboCup 2019 1st Round Robin | UT Austin Villa | 4-0 | win | |
| GO 2019 | Third-place | HULKs | 1-2 | loss |
| GO 2019 | Semi-finals | B-Human | 5-0 | loss |
| GO 2019 | Play-in | Berlin United | 10-0 | win |
| GO 2019 | Round Robin | HTWK | 1-4 | loss |
| GO 2019 | Round Robin | HULKs | 2-1 | win |
On SPL
The Hengst walk engine [4] won 2014 and 2015 and reached the final of 2016 as part of the UT Austin Villa system. Further it was integrated into B-Human 2017 code release.2 . A labelled dataset for field segmentation consisting of 20 videos was published in 2021 [5].
In addition, rUNSWift has had several members become members of the SPL TC in the past, with Tarandeep currently in the TC and also members in the SPL OC with Claude Sammut a past president of RoboCup.
On UNSW & local community
During Open Day at UNSW held on 2 September 2023, rUNSWift set up a robotics demo stall including Naos playing on a small field, to inspire prospective students to consider Computer Science/STEM in general as a career, also entertaining small children to create positive associations with robots.
rUNSWift also organizes demo games on the full SPL standard field in the Kensington lab periodically as a platform for recruitment, refereeing, training, and to inform students about RoboCup and SPL.
With regard to coursework, students are given the option to work on a project related to RoboCup as a part of a Robotics Software Architecture course offered at UNSW, offering them a chance to expand their knowledge by working on a real project.
rUNSWift often visits schools to inspire and engage with students about the future of robotics. We have historically had an association with Kensington Primary School3 , taking Nao robots on site to inspire questions, inform and entertain K-6 students.
rUNSWift also did a demo for the RoboCup junior event in Sydney this year, inspiring the next generation of RoboCuppers to continue their interest in the future of robotics.
rUNSWift looks forward to a potential future including competition taking place on the recently redeveloped village green synthetic football field built to FIFA accreditation standard.4
Other
(no content)
Acknowledgements
The 2023 team wish to acknowledge the legacy left by previous rUNSWift teams and deeply thank the School of Computer Science and Engineering, University of New South Wales for their continued administrative, financial and laboratory support to our team. We'd also like to warmly thank additional sponsors and contributors, including though not limited to ANT61, the Chief Scientist of NSW and CR8. We also wish to pay tribute to all RoboCup teams, in particular RoboCup SPL teams that inspire and drive our innovations in the spirit of friendly competition.
References
- Ashar, J., Brameld, K., Jones, E.R., Kaur, T., Li, L., Lu, W., Pagnucco, M., Sammut, C., Sheh, Q., Schmidt, P., Wells, T., Wondo, A., Yang, K.: runswift team report 2019. Tech. rep., The University of New South Wales (2019)
- Bai, G., Brady, S., Brameld, K., Chamela, A., Collette, J., Collis-Bird, S., Hall, B., Hendriks, K., Hengst, B., Jones, E., Pagnucco, M., Sammut, C., Schmidt, P., Smith, H., Wiley, T., Wondo, A., Wong, V.: runswift 2017 team report and code release. Tech. rep., The University of New South Wales (2017)
- Brameld, K., Hamersley, F., Jones, E., Kaur, T., Li, L., Lu, W., Pagnucco, M., Sammut, C., Sheh, Q., Schmidt, P., Wiley, T., Wondo, A., Yang, K.: runswift 2018 team report and code release. Tech. rep., The University of New South Wales (2018)
- Hengst, B.: rUNSWift Walk2014 report. https://github.com/UNSWComputing/rUNSWift-2014-release/blob/master/20140930-Bernhard.Hengst-Walk2014Report.pdf, University of New South Wales (2014)
- Lu, W.: The rUNSWift SPL Field Segmentation Dataset (08 2021)