Autonomous vehicle : a comparative study of lateral control algorithms

By INSA & Software Labs Groupe Renault

CONTEXT

We are 6 students from Insa Toulouse in France. During our 4th year, we were involved in a project named PIR which involved to choose a topic and work on it for 1 in collaboration with a company. For us, it was Renault Software Lab. This company develops software for the autonomous vehicle industry. Our subject is titled « Autonomous vehicle: a comparative study of lateral control algorithms ». The first part was spread over 4 months and included making a state of the art, where we presented already existing lateral controllers and highlighted their different advantages and drawbacks

CHALLENGE

Once the state of the art finished it was now time to choose a few controllers studied in the state of the art to implement them, test it, and improve it in order to solve the defects. The main challenger was to find a tool that allows combining our version of the controller and a true solid simulation to test it in “real” conditions.

 

SOLUTION

Quickly Renault Software Lab suggested us using SCANeR which is basically a software that permits to simulate the behavior of an autonomous car whatever parameters we wanted to check.

NEXT STEPS

The next step could be to improve the use of the terrain for instance to add a longer and complex simulation taking into account other external variables due to the environment as we encounter in real life.
Moreover, it would be great having a larger data set of test simulations from which to analyze our controllers more thoroughly. Furthermore, an even greater understanding of the SCANeR software would undoubtedly help us further develop our controllers.

BENEFITS

The main benefit of Scaner is to offer the user the possibility to link it with other software such as Matlab (“Simulink”). This amazing feature provides us the chance to develop our version of the controller chosen. Moreover, it was mandatory to be
able to get any data needed for the vehicle at any time to inject it into our controller.

Firstly we tried to get used to this software and learn the basics, practicing for the first weeks. Renault Software Lab provided us with a predesigned implemented interface on Simulink. We were able to master SCANeR quickly thanks to Renault’s engineers and guides included in the help menu of SCANeR. We also used SCANeR to define some test scenarios and terrains. Indeed it was very important to adapt the terrain for the circumstances the car would run into. The project was about high-speed roads (between 90km/h and 130km/h but most likely 130km/h). Consequently thanks to the terrain creator of SCANeR, we were able to build our terrain with the speed limit, the curve radius, and length of our choice. Our environment test was closely adapted to that of the car.

However, we only explored a small part of the whole potential of this creator where it is possible to build any environment desired adding relief, decor, crossroads, traffic lights, textures of the road, and more. Additionally, we used all the record options to compare results of the different controllers, verify the acquisition of some data such as road profile and be able to easily share the results.

Furthermore, SCANeR provides us with a well-developped interface. Even if it can be hard to find our way at the beginning we quickly found our footing. The density of options is also due to the complexity of tasks that this software can perform. Overall we all got used to it and appreciated the convenience it brought to the project.

To sum up, during this project we designed four controllers ourselves, using the Simulink extension of the SCANeR API. After having created several test scenarios we analyzed the performance of each controller. We used the results extracted from the scenario with a left turn followed by a right turn to compare our controllers between them. According to the tests we made, we found that both the BP based PID controller, the standard PID controller where the reference signal was computed using the “RoadLinesArray”, and the SMC controller performed quite well with regards to positional, all with max values below 15cm.

The PID controller B and the SMC controller also showed promising patterns and minimal oscillations regarding lateral jerk, although the maximal values were far above recommended values for driver safety and comfort.