Naova extended abstract 2023

Benjamin Caron, Florent Duchesne, Olivier St-Pierre, Catarina Castro, Carlos Fallaque

École de technologie supérieure, Montréal QC, Canada

https://clubnaova.ca/


Abstract Team Naova is affiliated with École de Technologie Supérieure in Montreal, Canada. The team presents their improvements in ball detection using deep learning, advances in walking control and stability, and new event-based communication strategies developed for the RoboCup Standard Platform League.

1 Team information

Naova's team is affiliated with École de Technologie Supérieure, located in Montreal, Canada. The team was founded in 2017 and since then it has participated in four RoboCups. It is composed of nine bachelor students, four master students and one PhD.

    1. Team leaders: Catarina Castro (B.Eng), Benjamin Caron (B.Eng), Olivier St-Pierre (B.Eng) and Florent Duchesne (M.A.Sc)
    1. Members: Carlos Fallaque (M.Eng), Elias-David Zabaleta-Forero (B.Eng), Marc-Olivier Bisson (B.Eng), Paul Joseph (B.Eng), Jean-Christophe Benoit (B.Eng), Catherine Ouimet (B.Eng), Antoine De Roover (M.Eng), Emmanuel Coulombe (B.Eng), Amira Morsli (M.Eng), Yassine Kali (PhD).
_page_1_Picture_0.jpeg

2 Code usage

Since 2017, team Naova has been using the B-Human release 2017 code base [1]. In 2018, we tried to replace the vision module with machine learning without success. In 2019, we modified the WalkEngine to add a module that makes speed walking more stable [2]. We also did our first tests on Q-Learning [3].

In 2020, we continued our work on the WalkEngine [4] and Q-Learning [5]. In 2022, we started to use our own machine learning models to perform ball detection.

3 Own contribution

The ball detection module we developed for the RoboCup 2022 has been improved since last year; it is now fully functional on the Nao robot. We are planning on opening the dataset and training scripts. The paper we worked on is now finished and in the process of being published.

We have also started to work on a new communication module.

We are working on a new controller to make the robot stability more robust. We are moving forward to reinforce the stability with better methods by improving the old controller we are using (TDE-Based Backstepping). Those methods are implemented to improve the accuracy of the walk and reduce the deviation after a big run. We are also looking to that accuracy when the robot starts running. Our goal is to reach 400mm/s, keep the robot stable and reduce the probability of falling.

4 History

Naova plans to participate in the German open replacement event (GORE) in April 2023.

RoboCup Match History (2019-2022)

Year Event Opponent Score
RoboCup 2019 Champions Cup first Round Robin Nao-Team HTWK 0:10
TJArk 0:8
Challenge Shield second Round Robin Camellia Dragons 0:2
SABANA Herons 1:1
RoboEireann 1:1
RoboCup 2021 Obstacle Avoidance Challenge - -
1vs1 Challenge rUNSWift Naova forfeited
Bembelbots Naova forfeited
Play-Ins NomadZ Naova forfeited
RoboCup 2022 Round Robin Dutch Nao Team 0:1
SABANA Herons 0:3
UT Austin Villa 0:8
UPennalizers 0:0
Bembelbots 0:3

5 Impact

This section details the team's major contributions and developments across multiple areas.

5.1 Ball perception

In 2020, we decided to focus on the ball perception since it was one of our biggest weaknesses. We chose an approach using deep learning to do so. We use a YOLO model to perform ball detection. With this module in place, we now have something more suitable for outdoor matches and are less dependent on the camera calibration. We now have code written by ourselves with adequate documentation, so it is easier for us to make modifications to update our model with newer versions.

We also put in place a data processing pipeline allowing us to completely avoid manual labeling. This allows us to rapidly generate a large volume of data to train our models. To achieve it, we used our previous ball detector to automatically label simulation data, and then we generated photorealistic images with the help of a CycleGAN model.

Abstract: In this paper, we present our machine learning pipeline to perform realtime ball detection in the context of the RoboCup Standard Platform League. This includes the acquisition and generation of data suitable to train an object detection model, the training of this model and its deployment on the NAO robot. Our pipeline will allow us to rapidly increase our labeled data volume using CycleGAN with a synthesis images generator.

5.2 WalkEngine and Sliding mode

In 2019, we decided to take on WalkEngine. Since one of the most important parts of football is speed, we looked for a way to control the motors with a torque.

With the tests that were done during RoboCup 2019, we concluded our motors were faster with the torque-controlled motors than without them. However, the commands we used caused the robot to shake, affecting its stability as well as that of the camera. Thus, in 2020, we made it a priority to implement new instructions.

After RoboCup 2021, we continued to perfect it and played with it at RoboCup 2022. This allowing us to gather a lot of data.

With this, we developed a completely new version of Sliding control with a new paper published soon.

5.3 Communication

For RoboCup 2022, we did a first attempt to switch the communication from time based to event based. Unfortunately, it didn't work as intended. For this year's we got a new ponderation system for each event allowing us to maximize packet allocation and performance. This new approach should enable us to reduce the number of packets sent easily if the rules were to state so.

5.4 Community

Participating in the RoboCup motivates the team a lot. In fact, it is the main reason why the team members keep working hard and try their best to make the Naos the most performant. When we participate in the competition, it gives us the chance to really show where all the efforts we made during the year went. Also, going to the Robocup gives us the occasion to talk and exchange about our vision and knowledge with other teams.

Naova is also a major element in our university as recruiting tools. The team is involved in a lot of events and have a major impact on the University.

6 Other

We had problems with the localization at the RoboCup 2022 due to the migration to the V6 Nao robots. We fixed the issue and tested it on an official size field at our university.

We are in the process of completing agreements with two professors inside our university specializing in sound processing. It is too soon to commit to have anything related to sound for this year, but it looks promising for further years.

References

  1. B-Human: B-Human Code Release),(2013), GitHub repository, https://github.com/bhuman/BHumanCodeRelease
  2. Kali, Y., Saad, M., Boland, JF. et al. Walking task space control using time delay estimation based sliding mode of position Controlled NAO biped robot. Int. J. Dynam. Control 9, 679–688 (2021). https://doi.org/10.1007/s40435-020-00696-x
  3. Pouplier, T., Brousseau, B., Dumont, M.A, Apprentissage par renforcement appliqué à des robots bipède. (2019) http://publicationslist.org/data/a.april/ref-654/RAPPORTTechniqueFinal.pdf
  4. Kali, Y., Saad, M., Boland, J.F. et al. Walking Control Using TDE-Based Backstepping SM of Position-Commanded NAO Biped Robot with Matched and Unmatched Perturbations. J Control Autom Electr Syst 33, 1633–1642 (2022). https://doi.org/10.1007/s40313-022-00938-7
  5. Poirrier, G. Conception de l'intelligence artificielle régissant le comportement d'un robot gardien de soccer, (2019), http://publicationslist.org/data/a.april/ref-677/Rapport%20POIRRIER-Naovav1.1.pdf