IROS 2021
IROS-RSJ Robotic Challenge for Young Students
The Challenge Tutorials Scoreboard

The Winners

The following is an ordered list of the 5 teams that reached the Final Stage, as well their final achieved score during IROS 2021.

  1. AGV – IIT Kharagpur – 3191 points
  2. AarBots – Aarhus University – 3110 points
    • David Felsager, Anton Boldrup Birn, Olaya Alvarez Tunon, Halil Ibrahim Ugurlu
    • Michal Kozlowski, Erdal Kayacan
  3. Tweak Titans – IIT Kharagpur – 1561 points
  4. Robonoobs – IIT Roorkee – 1335 points
  5. EngiNERDs – Kyoto University of Advanced Science – 282 points
    • Swami Kumar Mahadayya, Kuriki Ikuru, Takeshima Ryouma, Kamogawa Akira
    • Prof. Yoshihiro Sato, Prof. Sajid Nisar

The organizers of IROS-RSJ Robotic Challenge for Young Students would like to thank all the participants equally. You have made this possible, and we hope it has been such a positive experience as it has been for us!

The Challenge

The main objective of the Challenge is to create interest and incentive in the robotic careers of young students, defined as university students of first courses, and last courses of elementary and high schools. The Challenge will be in simulation only, and will use easy to implement and friendly tools. It will have two stages: the first is a Selection stage focused on navigation in in-door environments, and the second Finals is for manipulation.

The first stage will be performed by the students’ teams during the months previous to IROS’2021. Based on the scoring, up to 8 teams will be selected for the Finals (second stage) that will be held during IROS on September 29th and 30th 2021 in remote modality.

The Challenge will include small financial supports to the students’ teams, coordinators of teams, and organizers. The final award, that will consist of a diploma and a monetary prize, will be assigned based on the scoring of the second stage only.

Program of activities

Registration: Until [June 21st] deadline extended until July 5th 2021 (via Registration Form (below); also see Rules section)

Selection stage: [June 21st] deadline extended until July 5th 2021 – September 1st 2021. Notification of Final teams – September 13th 2021.

Final stage: September 27th-30th 2021. Time is in CET zone. The competition will be performed remotely simultaneously within IROS’2021.

September 27th

Time Activity Comments
14:00 – 15:30 Tutorial Organizers will explain the Final stage and tools to be used.
Online meeting (private).

September 28th

14:00 – 15:30 Questions and Answers Organizers will answer the teams’ questions.
Online meeting (private).

September 29th

9:00 – 24:00 Opening for running algorithms Team will run their algorithms with official scoring.

September 30th

9:00 Challenge Ending The scoring will be closed.
14:00 Official results Official results will be announced by the organizers.
Online meeting (public): (🤖 please copy the link manually 🤖)


All teams with accepted applications (up to 20) will receive a diploma and 300€ support for participating if they complete the Selection stage and run the robot.

The winner teams of the Selection stage (up to 8, that pass on to the Final) will receive a diploma and 600€ support for participating if they complete the Final stage and run the robot.

The winner team of the Final will obtain a diploma and grant of 5.000€, while the second best will obtain a diploma and a grant of 2.000€.

All the monetary grants and awards will be made by bank transfer to the teams´ organization with corresponding applicable taxes and bank commissions.


Rules and Scoring

The Challenge will use Webots for robot simulation ( It is easy to install on any computer, and many different programming languages can be used (templates for C++, Python and MATLAB will be provided). The robot used will be PAL Robotics TiaGo++ (

Each team may be composed by 1 to 6 students (as defined), and 1 to 2 advisors (typically a professor). To participate, send your team data (one application per team) before the application deadline ([June 21st] deadline extended until July 5th 2021) via the Registration form (above). Once your application has been accepted, you will receive the link for the simulation tool, tutorials, and rules.

The Selection stage is oriented at robot navigation tasks, where focus is on autonomously moving the robot base. In the standard in-door environment, the random navigation task will be generated for each team. The automatic scoring will be based on: i) maximize success of the task, ii) minimize relative time of navigation, and iii) minimize length of generated code. The deadline for this stage is September 1st 2021.

The selected teams for the Final stage will be announced on September 13th 2021. It will involve robot vision and manipulation tasks and takes place during the days of the IROS2021 conference. Each participating team is provided the tutorials and rules with the competition benchmarks. The winners will be announced on September 30th 2021.

Rules (Selection stage)

As previously stated, the challenge is taking place using the TIAGo robot on Webots, programmed via the Webots API for C++/Python/Matlab (you choose 1 of these 3).

This first Selection stage (only 8 can remain!) consists in navigation-based tasks: 10 environments, each with 10 waypoints through which you must drive TIAGo.

- You develop a single controller (update July 15th: see FAQ below regarding multiple controllers, in which case the one that scores best is considered), which is run through the different scenarios and should depend on the waypoints (an array of 2d coordinates is given), not the 10 environments. Under suspicion of hard-coding for the different environments, the final tests can be on different generated test scenarios. Make sure your programs are generic (e.g. develop on maps 1-8 but test without modifications on 9-10)!
- Apart from the gps sensor, you can also use a laser sensor (update July 15th: also inertial and motor/encoder sensors are allowed). Movement must be performed via wheel movements (not external pushes).
- Very important update July 15th: There is no need to run Waypoints in order.
- Very important update July 29th: Each Waypoints provides maximum 10 points, and the pink Waypoint (the one provided last in the ordered list) provides an extra 20 points. Therefore, for each world you can score maximum 120 points based on passing through all 10 Waypoints of the world (thus 1200 points in the scoreboard as a sum of all 10 worlds). If you score 120 points for Waypoints in any world, you will score additional points based on minimizing timesteps.
- Maximum score is given by passing through the waypoints, but passing close also gives points.
- In case of a draw (same amount of points), the winner will be the one that takes the least time measured in simulation timesteps run on our centralized simulation server.

🏆 The Scoreboard is already counting! 🏆

All the technical documentation is centralized at: tutorials

- Follow the first section tutorials#local to run on your computer.
- Follow the second section tutorials#upload to upload and run on the centralized simulation server (nightly).

🔝 Following the first section, you'll create programs based on our Templates. The templates will give you a head start, but we'll be glad to add more to the FAQ section (below) provided your feedback! 🔝

FAQ (Selection stage)

Will the obstacle dimensions in the final worlds be the same as the ones given in the test worlds?

Will there be dynamic obstacles?

It's mentioned on the website that there's a "number of lines of code" parameter. How will it be calculated?
It would be calculated as the actual lines of code, within some reasonable assumptions (e.g. a full program in a single line of c++ could be chopped at each ; or clear end of instruction). Anyway, it is the lowest priority parameter of selection, and not a case we are expecting: an exact match of score and simulation timesteps.

Is the map discretized into squares like given in the 10 worlds, or can the robot move in any direction?
The robot CAN move in any direction (via wheel commands): diagonals, curves, etc.

Can we import external libraries of Python and C++?
a) Solutions involving ports/sockets are strictly not allowed.
b) Solutions requiring installation are strictly not allowed.

This means:

i) Splitting your code into multiple files is allowed, but not highly recommended as it may be tricky to get it to run on the simulation server.
ii) Re-using code from your own research group is allowed, only subject to (a)+(b)+(i).
iii) If you are using code/libraries from other projects, please communicate it to us so we can add it to the Valid dependencies list (below). Again, also subject to (a)+(b)+(i).
iv) While ROS code is not explicitly prohibited, its use will be limited due to the previous statements.

How many submissions are allowed per team on a daily basis?
The tutorials are designed to have 1 repository each with 1 controller to perform 1 run per night, as we expect you'll be developing locally.

If you are really keen on testing multiple controllers on the nightly simulation server:

- Technically, the easiest way for us to do this is for you to generate repositories with different names (e.g. participant_controller_1, participant_controller_2...) and provide us the links. This is not as elegant as working with folders or branches, but it's what will work out-of-the-box.
- Taking into account the load on the simulation server, we can allow up to 3 repositories each with 1 controller per team.

Centralized simulation server specifications

Ubuntu20.04 LTS (Focal Fossa)
MATLABR2021a Update 3
nprocrecognizes 16 processing units

Valid dependencies list

Update Aug 4th: Do to popular petition, this list is now private. Please contact us if you need us to evaluate the use of a specific dependency.


  • Carlos Balaguer, RoboticsLab, University Carlos III of Madrid (UC3M), Spain
  • Minoru Asada, Robotic Society of Japan, Japan
  • Juan G Victores, RoboticsLab, University Carlos III of Madrid (UC3M), Spain
  • Daniel López, PAL Robotics, Spain
  • Olivier Michel, Cyberbotics, Switzerland
In addition to the the Registration form (above), you may also contact the organization via email, for specific enquiries:

Spanish University of international recognition. The largest selection of bilingual studies. Campus of International Excellence for its teaching and research.

The Robotics Laboratory (RoboticsLab) of UC3M is one of the pioneers of Robotics and Automation, both nationally and internationally. Since the early 1980s, the members of the research group have been continuously tackling research and development projects in collaboration with national and European companies and institutions. These actions have been characterized by a high scientific-technological level and show an important international projection of the group.

The Robotics Society of Japan was founded in 1983 with the aim to facilitate and spread the development of research and knowledge of robotics and to promote the growth of academics. We undertake the following in order to fulfill these purposes: Holding of academic meetings, seminars, visiting tours, etc. Publication of academic journals, international journals in European languages, and other periodicals. Research and investigation. Encouragement of research and recognition of research performance. Communication and cooperation with related domestic and foreign academic organizations. Other matters necessary for the achievement of our purposes.

PAL Robotics' mission is to enhance people’s quality of life through service robotics and automation technologies. We design and manufacture highly integrated and reliable solutions for service industries and research institutions worldwide. PAL Robotics is one of the founding members of the EU Robotics association and is involved in numerous collaborative projects.

PAL Robotics' robots including TIAGo are Open Source based on Ubuntu and ROS systems, find out more here:

Webots is an open source and multi-platform desktop application used to simulate robots. It provides a complete development environment to model, program and simulate robots.

It has been designed for a professional use, and it is widely used in industry, education and research. Cyberbotics Ltd. maintains Webots as its main product continuously since 1998.