Autonomous Vehicle Navigation on an Unknown Track

 

There exist several algorithms that are relatively simple to implement that solve the problem of navigating an autonomous vehicle on an unknown track. These implemented algorithms are not perfect and break down at certain conditions that are not uncommon for the problem set of the Formula competition. For instance, the Pure Pursuit algorithm can solve only the steering problem and its solution will diverge at high speeds, therefore a different algorithm is needed for speed control and slipping management, or the MPC (Model Predictive Control) algorithm which solves both steering and speed control in a very robust way, but it’s run time increases exponentially with the amount of variables to be optimized and the length of the track being optimized. These issues with the presented algorithms make them unsuitable for real-time computations at high speeds while maintaining a correct solution.

In this Project we are proposing an upgrade to the MPC algorithm by improving the computation time of the underlying optimization within it, this is done by looking at the problem from the prospective of an online learning problem where it is solved much faster with a better convergence guarantee by using the Mirror Descent algorithm. We will present the main idea behind this algorithm and where the lower bounds come from as well as show how this algorithm is a generalization of many common MPC solutions by tuning some internal parameters. Finally, we will compare this upgrade to an ordinary MPC via static simulations by various criteria including optimality vs. runtime and competition score for the FSG (Formula Student Germany) competition.

As a follow up to this project the algorithm will be tested on the Technion Formula Student team’s car, more variants of MPCs will be researched and in the future tested vs. a Reinforcement Learning algorithm namely SAC (Soft-Actor Critic).