Tackling the 3D Simulation League: an interview with Klaus Dorer and Stefan Glaser

0
14
Tackling the 3D Simulation League: an interview with Klaus Dorer and Stefan Glaser


A screenshot from the brand new simulator that can be trialled for a particular problem at RoboCup2025.
The annual RoboCup occasion, the place groups collect from throughout the globe to participate in competitions throughout numerous leagues, will this yr happen in Brazil, from 15-21 July. Upfront of kick-off, we spoke to 2 members of the RoboCup Soccer 3D Simulation League: Government Committee Member Klaus Dorer, and Stefan Glaser, who’s on the Upkeep Committee and who has been lately creating a brand new simulator for the League.
Might begin by simply giving us a fast introduction to the Simulation League?Klaus Dorer: There are two Simulation Leagues in Soccer: the 2D Simulation League and the 3D Simulation League. The 2D Simulation League, because the title suggests, is a flat league the place the gamers and ball are simulated with simplified physics and the primary focus is on workforce technique. The 3D Simulation League is way nearer to actual robots; it simulates 11 versus 11 Nao robots. The extent of management is like with actual robots, the place you progress every motor of the legs and the arms and so forth to attain motion.
I perceive that you’ve got been engaged on a brand new simulator for the 3D League. What was the thought behind this new simulator?Klaus: The intention is to convey us nearer to the {hardware} leagues in order that the simulator may be extra helpful. The present simulator that we use within the 3D Simulation League is known as SimSpark. It was created within the early 2000s with the intention of creating it attainable to play 11 vs 11 gamers. With the {hardware} constraints of that point, there needed to be some compromises on the physics to have the ability to simulate 22 gamers on the identical time. So the simulation is bodily considerably sensible, however not within the sense that it’s simple to transpose it to an actual Nao robotic.
Stefan Glaser: The thought for creating a brand new simulator has been round for a couple of years. SimSpark is a really highly effective simulation framework. The bottom framework is area impartial (not soccer particular) and particular simulations are realized through plugins. It helps a number of physics engines within the backend and gives a versatile scripting interface for configuration and diversifications of the simulation. Nevertheless, all this flexibility comes with the worth of complexity. Along with that, SimSpark makes use of customized robotic mannequin specs and communication protocols, limiting the quantity of obtainable robotic fashions and requiring groups to develop customized communication layers just for speaking with SimSpark. On account of this, SimSpark has not been broadly adopted within the RoboCup group.
With the brand new simulator, I wish to handle these two main points: complexity and standardization. Within the ML group, the MuJoCo physics engine has grow to be a highly regarded selection for studying environments after Google DeepMind acquired it and launched it open supply. Its requirements for world and robotic mannequin specs are broadly adopted locally and there exist plenty of ready-to-use robotic mannequin specs for all kinds of digital in addition to real-world robots. In the midst of final yr, they (MuJoCo) added a characteristic which lets you manipulate the world illustration throughout simulation (including and eradicating objects to / from the simulation whereas preserving the simulation state). That is one important requirement now we have within the simulation league, the place we begin with an empty discipline after which the brokers join on demand and type the groups. When this characteristic has been added, I made a decision to make a step ahead and attempt to implement a brand new simulator for the 3D Simulation League based mostly on MuJoCo. Initially, I needed to begin growth in C/C++ to attain most efficiency, however then determined to begin in Python to cut back complexity and make it extra accessible for different builders. I began growth on Easter Monday so it’s not even three months previous!
I believe it may be helpful to elucidate a bit of bit extra in regards to the setup of our league and the necessities of the simulator. If we take the FIFA recreation (in your favourite gaming machine) for instance, there’s one simulation taking place which simulates 22 gamers and the choice making is a part of the simulation having full entry to the state of the world. Within the 3D Simulation League now we have two groups with 11 robots on the sector, however we even have 22 particular person agent softwares that are related to the simulation server, every controlling one single robotic. Every related agent solely receives sensor data associated to their robotic within the simulation. They’re additionally solely allowed to speak through the server – there isn’t a direct communication between the brokers allowed in Simulation League. So now we have a basic setup the place the simulation server has to have the ability to settle for as much as 22 connections and handle the state of affairs there. This performance has been the most important focus for me for the final couple of months and this half is already working properly. Groups can join their brokers, which can obtain sensor data and might actuate joints of the robotic within the simulation and so forth. They’re additionally capable of choose totally different robotic fashions in the event that they like.
An illustration of the simulator set-up.
Presumably the brand new simulator has a greater illustration of the physics of an actual robotic.Klaus: Precisely. For instance, how the motors are managed is now a bit totally different and far nearer to actual robots. So once I did my first experiments, I noticed the robotic collapse and I assumed it was precisely how an actual robotic would collapse! In SimSpark we additionally had falling robots however the motor management within the new simulator is totally different. Now you may management the motors by velocity, by pressure, by place, which is rather more versatile – it’s nearer to what we all know from actual robots.
I believe that, a minimum of initially, it is going to be tougher for the Simulation League groups to get the robots to do what they need them to do, as a result of it’s extra sensible. For instance, in SimSpark the bottom contact was rather more forgiving. So for those who step laborious on the bottom, you don’t fall instantly with a SimSpark robotic however with a MuJoCo robotic this can be rather more sensible. Certainly, in actual robots floor contact is considerably much less forgiving.
I had a query in regards to the imaginative and prescient side – how do the person brokers “see” the place of the opposite brokers on the sector?Stefan: We simulate a digital imaginative and prescient pipeline on the server aspect. You’ve gotten a restricted discipline of view of ±60° horizontally and vertically. Inside that discipline of view you’ll detect the top, the arms, the toes of different gamers, or the ball, for instance, or totally different options of the sector. Just like frequent real-world imaginative and prescient pipelines, every detection consists of a label, a course vector and the gap data. The knowledge has some noise on it like actual robots have, too, however groups don’t have to course of digicam pictures. They get the detections instantly from the simulation server.
We’ve beforehand had a dialogue about shifting in the direction of getting digicam pictures of the simulation to combine into the imaginative and prescient pipeline on the agent aspect. This was by no means actually sensible in SimSpark with the implementation we had there. Nevertheless, it needs to be attainable with MuJoCo. Nevertheless, for the primary model, I used the identical manner the normal simulator handled the imaginative and prescient. Because of this groups don’t want to coach a imaginative and prescient mannequin, and don’t have to deal with digicam pictures to get began. This reduces the load considerably and in addition shifts the main target of the issue in the direction of movement and choice making.
Will the simulator be used at RoboCup 2025?Stefan: We plan to have a problem with a brand new simulator and I’ll attempt to present some demo video games. In the intervening time it’s probably not in a state the place you may play a complete competitors.
Klaus: That’s normally how we proceed with new simulators. We might not transfer from one to the opposite with none intermediate step. We may have a problem this yr at RoboCup 2025 with the brand new MuJoCo simulator the place every taking part workforce will attempt to train the robotic to kick so far as attainable. So, we won’t be enjoying a complete recreation, we received’t have a number of robots, only a single robotic stepping in entrance of the ball and kicking the ball. That’s the technical problem for this yr. Groups will get an concept of how the simulator works, and we’ll get an concept of what needs to be modified within the simulator to proceed.
This new problem can be voluntary, so we aren’t certain what number of groups will take part. Our workforce (MagmaOffenburg) will definitely participate. Will probably be attention-grabbing to see how properly the groups carry out as a result of nobody is aware of how far an excellent kick is on this simulator. It’s a bit like in Components One when the foundations change and nobody is aware of which workforce would be the main workforce.
Do you may have an concept of how a lot adaptation groups should make if and whenever you transfer to the brand new simulator for the complete matches?Stefan: As a long-term member of 3D Simulation League, I do know the previous simulator SimSpark fairly properly, and know the protocols concerned and the way the processes work. So the primary model of the brand new simulator is designed to make use of the identical fundamental protocol, the identical sensor data, and so forth. The thought is that the groups can use the brand new simulator with minimal effort in adapting their present agent software program. So they need to be capable to get began fairly quick.
Though, when designing a brand new platform, I wish to take the chance to make a step ahead by way of protocols, as a result of I additionally need to combine different Leagues within the long-term. They normally produce other management mechanisms, and so they don’t use the identical protocol that’s outstanding in 3D Simulation. Subsequently there needs to be some flexibility sooner or later. However for the primary model, the thought was to get the Simulation League prepared with minimal effort.
Klaus: The large concept is that this isn’t simply used within the 3D Simulation league, but in addition as a helpful simulator for the Humanoid League and in addition for the Commonplace Platform League (SPL). So if that seems to be true, then it is going to be fully profitable. For the Kick Problem this yr, for instance, we use a T1 robotic that may be a Humanoid League robotic.
Might you say one thing about this simulation to actual world (Sim2Real) side?Stefan: We’d prefer it to be attainable for the motions and behaviors within the simulator to be ported to actual robots. From my perspective, it could be helpful the opposite manner spherical too.
We, as a Simulation League, normally develop for the Simulation League and due to this fact wish to get the behaviors operating on an actual robotic. However the {hardware} groups normally have an identical situation once they need to take a look at high-level choice making. They may have two to 5 robots on the sector, and in the event that they need to play a high-level decision-making match and practice in that regard, they at all times need to deploy plenty of robots. If additionally they need to have an opponent, they need to double the quantity of robots to be able to play a recreation to see how the technique would end up. The Sim2Real side can also be attention-grabbing for these groups, as a result of they need to be capable to take what they deployed on the actual robotic and it must also work within the simulation. They will then use the simulation to coach high-level abilities like workforce play, participant positioning and so forth, which is a difficult side for the actual robotic leagues like SPL or the Humanoid Leagues.
Klaus: And the rationale we all know it’s because now we have a workforce within the Simulation League and now we have a workforce within the Humanoid League. In order that’s another excuse why we’re eager to convey this stuff nearer collectively.
How does the refereeing work within the Simulation League?Klaus: A pleasant factor about Simulation Leagues is that there’s a program which is aware of the actual state of the world so we are able to construct within the referee contained in the simulator and it’ll not fail. For issues like offside, whether or not the ball handed the aim line, that’s fail secure. All of the referee selections are taken by the system itself. We have now a human referee however they by no means have to intervene. Nevertheless, there are conditions the place we want synthetic intelligence to play a job. This isn’t presently the case in SimSpark as a result of the foundations are all laborious coded. We have now plenty of fouls which are debatable. For instance, there are numerous fouls that groups agree mustn’t have been a foul, and different fouls that aren’t referred to as that ought to have been. It will be a pleasant AI studying process to get some conditions judged by human referees after which practice an AI mannequin to higher decide the foundations for what’s a foul and what isn’t a foul. However that is presently not the case.
Stefan: On the brand new simulator I’m not that far into the event that I’ve carried out the automated referee but. I’ve some fundamental algorithm which progress the sport as such, however judging fouls and deciding on particular conditions shouldn’t be but carried out within the new simulator.
What are the subsequent steps for creating the simulator?Stefan: One of many subsequent main steps can be to refine the physics simulation. As an example, although there exists a ball within the simulation, it isn’t but very well refined. There are plenty of physics parameters which now we have to resolve on to replicate the actual world pretty much as good as attainable. It will doubtless require a collection of experiments to be able to get to the right values for numerous features. On this side I’m hoping for some engagement of the group, as it’s a nice analysis alternative and I personally would favor the group to resolve on a generally accepted parameter set based mostly on a degree of proof that I can’t simply present all on my own. So in case somebody is curious about refining the physics of the simulation such that it finest displays the actual world, you might be welcome to affix!
One other main subsequent step would be the growth of the automated referee of the soccer simulation, deciding on fouls, dealing with misbehaving brokers and so forth. Within the first model, foul situations will doubtless be judged by an skilled system particularly designed for this objective. The simulation league has developed a set of foul situation specs which I plan to adapt. In a second step, I wish to combine and help the event of AI based mostly foul detection fashions. However yeah, one step after the opposite.
What are you notably wanting ahead to at RoboCup2025?Klaus: Effectively, with our workforce now we have been vice world champion seven instances in a row. This yr we’re actually hoping to make it to world champion. We’re very skilled in getting losses in finals and this yr we’re wanting ahead to altering that, from a workforce perspective.
Stefan: I’m going to Brazil to be able to promote the simulator, not only for the Simulation League, but in addition throughout the boundaries for the Humanoid Leagues and the SPL Leagues. I believe that this simulator is a superb likelihood to convey folks from all of the leagues collectively. I’m notably within the particular necessities of all of the groups of the totally different leagues. This understanding will assist me tailor the brand new simulator in the direction of their wants. That is one among my main highlights for this yr, I might say.

You will discover out extra in regards to the new simulator on the venture webpage, and from the documentation.

Klaus Dorer is professor for synthetic intelligence, autonomous programs and software program engineering at Offenburg College, Germany. He’s additionally a member of the Institute for Machine Studying and Analytics IMLA. He has been workforce chief of the RoboCup simulation league groups magmaFreiburg (since 1999), residing programs, magmaFurtwangen and is now workforce chief of magmaOffenburg since 2009. Since 2014, he has additionally been a part of the humanoid grownup measurement league workforce Sweaty.

Stefan Glaser is instructing assistant for synthetic intelligence and clever autonomous programs on the Offenburg College, Germany. He has been a part of the RoboCup simulation league workforce magmaOffenburg since 2009 and the RoboCup humanoid grownup measurement league workforce Sweaty since 2014.


AIhub
is a non-profit devoted to connecting the AI group to the general public by offering free, high-quality data in AI.


AIhub
is a non-profit devoted to connecting the AI group to the general public by offering free, high-quality data in AI.


Lucy Smith
is Managing Editor for AIhub.