Autonomous racing is here! How Roborace is helping develop technology for the future

For the past hundred years and more, cars have been out there racing for victories. There are many different formats from Tin Tops, open wheel single seaters, rally cars, endurance specialists and most recently electric cars.

Motorsport fans are as diverse as each series. Different fans like distinct aspects of each, but even with the development of engineering over those decades one constant has been a driver controlling the car. As we are now in the 21st Century, technology has progressed, and we are now at a stage where a driverless race car is not only possible but is out there racing! Autonomous cars are a reality.

Welcome to the world of Roborace, a pioneering series that has now evolved to be regular race event, with teams taking part in racing without humans in the cockpit. As this is unfamiliar territory for most fans, lets look at the series the car and the incredible tech that is involved.

Motorsport.tech spoke to Ilya Shimchik, head of the Acronis SIT Autonomous team participating in the Roborace series, to uncover a little more about it all.

©Larry Chen https://www.larrychenphoto.com/

The origins of the series

Roborace started out in 2015 with a plan to allow teams to race autonomous cars. It began with the first test car named ‘DevBot 1.0’ and some will be familiar with the concept ‘Robot’ car styled by Daniel Simon. Fast forward to 2020 and there is now DevBot 2.0 – another race car with styling by Simon that is able to compete driverless around racetracks in ‘Season Beta’, ahead of a first full race series in 2022.

Already low-level autonomous driving is possible with some road cars on public roads – that is the goal of companies such as Waymo, Uber and Zoox to name but a few. There are six levels of autonomy from nothing at Level 0, basic cruise control at Level 1 to more adaptive technology at Level 2 and all the way up to Level 5 with no human intervention required. As with any technology on cars, motorsport has been a means to rapidly develop and improve technology.

As a manufacturer if you wanted to make your car handle better and go faster, you’d start a motorsport programme. As a customer if you wanted a performance car, you’d probably want one with a motorsport heritage. If you want a self-driving car, one with motorsport proven technology should be attractive too? So Roborace is simply following the familiar pattern of using motorsport as a platform.

Thus, the race series has so far been an incubator to allow Roborace to rapidly develop the rolling chassis to the point where teams can now take on the development of the software, leaving Roborace to supply the car and computing hardware. At the time of writing, we are currently in Season ‘Beta,’ the term inferring that this is still a series in its infancy, effectively testing in public, before the real competition starts in the new year as Season1.

Season Beta format

In this first year of open competition, the format of the race events is evolving as the teams get to grips with the challenges of driverless racing. In the opening round, the aim was simply a race for the fastest autonomous lap. As the season progressed, there is now a range of challenges added to simply driving around the track.

Although the series still races one car at a time, there are ghost cars on track, as well as static and dynamic obstacles to avoid and even games style virtual collectable items that shave time off if driven through. If you grab a collectable on track, you can get a reduction in your lap time, creating a high level strategy to simply driving around a track.

Some wacky new ‘ghost cars’ were introduced to Mission 4

To race, there is the spec DevBot 2.0 car provided to the teams taking part in the series, largely formed of small AI businesses or Universities using the series at springboard for their developments. Among these is team Acronis SIT Autonomous and Ilya explains the scale of the team as “a very small team, four members, also we have students and also we have interns.”

Yet being small does not diminish the ultimate goal of the team. “We also have a goal for why we are in Roborace. We are here to advance the technology. As Formula 1 or Formula E has a driver to test the technology, we believe that being in Roborace is testing our software, our algorithms in a racing environment, so that at some point we can transfer our technology from the racing environment to road cars. That’s our long term vision.”

As the team’s role is simply to develop the software, the ‘spec’ car is shared amongst teams, meaning the race is the rare point at which their code meets the physical car. “Twenty minutes before the race, we get access to the car and upload our software, then the car is disconnected,” adds Shimchik. “The test driver brings the car the to the start line and leaves, that’s it. Then it’s on its own!”

Once on the start line, the team have no input to the car from this point. They are watching the broadcast and telemetry remotely. When the race controller gives the car the green light it accelerates and makes its own decisions to negotiate the laps until the race is complete.

DevBot 2.0

DevBot 2.0 even without the autonomous driving is an impressive race car, based on an LMP chassis with a battery electric powertrain. What’s more it is dual control. There can be a driver operating it ‘conventionally’ or it can be fully autonomous.

The basic LMP chassis is clothed in unique bodywork styled by the famous Daniel Simon, which gives it a slightly futuristic tone and separates it from its more conventional background. Under the skin there’s a 270kw (362hp) electric motor set up giving the driver or control systems more than enough power to need some delicate control of the power delivery to the rear wheels.

In many respects the chassis is quite conventional, the main distinction being every control system, throttle, brake and steering is interfaced “by wire.”

It’s only then that the AI is provided as a layer over the top of the conventional car to allow it to be controlled. “We can then connect the same interfaces with the NVidia drive packs and control the car.”

This control layer is what creates the interesting technology for DevBot. It’s made up of a range of sensors that feed back to the NVIDIA DRIVE AGX platform, this is the brain that replaces the driver’s to control the car.

Sensors are the critical input for the driving algorithms. These may not be initially familiar to many people new to the series but are in fact found in many road cars nowadays. Firstly, there are ultrasonic sensors, as in Season Beta the car races on track alone. These are not currently used on DevBot 2.0 but will feature in Season1. Ultrasonic sensors are short range sensor to detect the presence of a nearby object. Ultrasonics are the devices that your road car uses as a parking sensor. At this level, the data from the sensor is reasonably simple.

More complex is the Lidar sensor, and the car has several of these pointed in all directions. Lidar is analogous to radar; lasers are used to pick up the surrounding obstacles at longer range than the ultrasonic device. This builds up a 3D map of the environment. Again, these are increasingly common on road cars, used for collision avoidance and Level2 smart cruise control. The LIDAR picks up an obstacle, be it another car or pedestrian, allowing the control system to make a decision to avoid that obstacle.

LIDAR is a powerful tool but has limitations. It only sees objects, there’s no colour or texture to give relevance to the object. For example, on a roadcar it would be a see a road sign, but not the speed limit or town name written on it. In racing it would see the LED flag panel, but not what colour flag was being displayed.  For this the data needs to be merged with that from a High-Definition video camera, which allows the AI to understand a yellow flag is being displayed or your road car is now a 30mph speed limit.

Next up is a more familiar technology – GPS. This of course allows the AI to understand where on the track it is, just as it directs you on your smartphone or in car navigation. But the race car needs far more accuracy than a signal from a satellite in space, so there is a more accurate version employed at the Roborace track, called GNSS.

This is GPS but a local aerial is set up, with a short 1-3km range, which provides accuracy down to just a few centimetres. Beyond simply locating the car on track the use of two GNS sensors on the car allows their locations to be compared and the cars direction can be accurately established. What’s more the cars attitude sliding in oversteer/understeer can be measure to an extent.

For more accuracy on the car’s precise attitude to the track there is the OSS sensor, a speed-over-the ground sensor, which works like an optical mouse looking at the track getting precise speed and direction measurement. This gives the AI the data on the car’s tyres slipping front or rear allowing corrections to be made, replacing the ‘feel’ the human driver has.

In addition, the car has the usual range of other sensors for acceleration, ride height, steering and all the parameters for the powertrain which Ilya elaborates are “based on all this data we make the decision on how to control the car with the inputs going to the AI, all controlled by the Nvidia drive units and the team’s software.”

Control architecture

If you wanted to think about the scale of the task to write the code to control an autonomous race car, you might be very easily overwhelmed by it if you’re not a computer programmer!

However, Ilya can relate his own experience to this problem. “If you look at the global problem it looks too big to solve, then you start to decompose each sub system, each model, or some small pieces on small parts. Then you start to solve some problem on small parts and combine it all together.”

It’s no coincidence his approach reflects the title of the series. “With the car it’s very similar to the approach of robotics in general, an autonomous car is like a sub-system of a robot. In robotics we have quite a standard framework for working within. We have Control part; we need to understand what signals to send to the motors and the actuators. Then we have a perception part; that is the sub system responsible for taking the data from each sensor, and we have High level decision making system.”

As the software code builds up to control each of these sub systems, the testing phases can begin, this is also a layered approach. “There’s a three-layered approach in the development,” outlines Ilya. “There’s a simulator in our internal environment, we can test the software in this internal simulator.

“There are different levels of simulation; one level is called high level to test and understand the high-level logic in the car, then there is allow level simulator to move the car through defined parameters to understand the cars dynamics better and to control it better.”

Next up comes the second level of simulation with the car in a lab environment. “We have a Hardware in the Loop (HIL) simulator. It is the same hardware as the real car, but with a simulated track. After this we are going to test on the track with the real car!”

With track time limited to a few official tests and the race events themselves, this is a limited resource that needs to be managed. “Sometimes we use our race time for testing purposes, we have 3-4 hours of testing before each event, a small amount to fully understand the dynamics of the car, its limits and boundaries”.

Even with a host of off track simulation opportunities, the correlation between a virtual test and reality may be lacking, as Ilya affirms. “In the ideal world, we would have the same precise simulation without differences between the simulator and real world, but it’s not possible. We understand those differences and make some assumptions on the imperfection of such simulations.”

Preparing for an event

As Season Beta is not run to fixed format, but evolves as the teams AI matures, each event incrementally increases the challenge and the teams have to be agile in their approach. This unique situation challenged the SIT team.

“We don’t know the rules for each event in advance. We finish the current race and after a week, we get the rules for the next event. We can then understand exactly what the new features will be, what will be the obstacles, what behaviours the ghost car will have, it’s quite reactive in that way.”

With the event data being passed to the team, the key task is the track map, not unlike any other race series going to a new venue. “We need to understand the track and the basics on how the track looks. We can then understand it and can create the most optimal racing line.”

Again, as in the real world a race is not a series of laps without influence from external factors, there is a challenge beyond just finding the ideal racing line. “Because there are dynamic obstacles, collectables or ghost cars, we are not following the ideal trajectory a lot, so we need to change out racing plan or trajectory.”

Avoiding the obstacles and aiming for come of the collectables is a part of the team’s race strategy that is partly pre-planned, but all actioned by the car alone when on track. This risk-reward balance starts to give the car its personality, something many people are critical a driverless series is lacking.

Many people are drawn to the character of the drivers in motorsport. Some are more aggressive, some are better in strategy than outright pace, all sorts of variables exist to define the driver. But so too is the high-level planning n the car’s AI.

“We are choosing those basic parameters for our car before each race. So, we can say we are the team choosing this level of risk we are going to take during the race, it’s based on data we receive during our test, the configuration of the track, the particular arrangement of the obstacles. Overall, Ilya emphasises that the team “are choosing the level of the aggression.”

This variation in the racing style of each team is now becoming apparent to the SIT team. “Some teams didn’t have enough time to keep updated and follow the rules, as the rules are changing and Roborace are bringing in new features. For us, we were quite successful and were able to keep up to date and implement the new features from Roborace. Some teams will understand the limits of the cars handling better. That’s the main differentiators between us and other teams.”

Much criticism of robot driven cars is that there is no scope for driving errors. Again this is a fallacy and according to Ilya “the car will not follow the same lines, the same trajectory, the same speed each time as its pre-programmed to do. It’s not true because each sensor has a bit of uncertainty. There’s a lot of uncertainty in the behaviour of the car, that’s why each lap is not exactly the same.”

With an evolving format and teams progressing at different rates in season development it is crucial to keep ahead of the opposition. “Most of the new features require us to make changes in each sub system,” explains Ilya. “If we want to increase our level of performance, we need to go in depth into the model of control, to work better with the dynamics of the car. If we need to introduce new features, like support for overtaking, we need to work on the high-level logic and implement this part as well.”

This is a process that keeps going in cycles, getting ever more detailed as the big issues are resolved. “Roborace is on the very beginning of its way, it’s evolving. Right now, we do not need to work on the fine tuning of our software, we need to work on the wide and broad features of each system and introduce new features.”

The season so far

Team Acronis SIT Autonomous are currently heading the table, with a season that started badly but soon improved with multiple victories. Indeed, it’s that first round issue that most people are most familiar with. Off the start line the car suddenly veered hard and into the pit wall, giving rise to much derision from the series detractors.

As with any maturing process and embryonic stages of any new venture, mistakes will happen, and lesson are there to be learned. It’s not as if a human driver has never made a glaring driving error! Given time after the incident, the head of the team had time to digest, reflect and improve.

Since that early hiccup, the Acronis SIT Autonomous team has enjoyed an almost flawless run, stretching its lead over the other teams to an almost insurmountable margin.

“It looked perhaps funny,” reflected Ilya. “It was an error for us but there are several reasons as to why it happened. If each reason happened separately, it would not have affected the race and not lead to such an accident”.

Thus, an accumulation of situations that had never arose simultaneously before conspired to confuse the AI on the start line. This was of the result of the way the car operates at a race. The test driver brings the car to the start line and then leaves the car, the SIT team are in a separate mission-control area away from line of sight with the car.

On the line the steering was already canted to one side and the team and car unaware and unprepared to check and counter this problem. With the green light, the car goes, and the steering error was unchecked, leading to the accident.

As the season has progressed the team reversed this fortune and are the now firmly the team to beat in Season Beta. So how does Ilya now feel about this?

“We just doing our job, we love what we’re doing, the goal is to be the best team and we have put in a lot of effort to develop reliable software.”

©Larry Chen https://www.larrychenphoto.com/

Craig Scarborough