Path Planning and Control for Autonomous Racing
We investigate autonomous racing of cars and derive control approaches replacing the decision-making process of a human race car driver. The task has three main challenges. First, the controller needs to be able to control the car at the limit of handling. Second, the car has to stay safe on the track and finally, the controller needs to able to interact with other race cars and dynamically adapt to the driving of the other cars. We derive a control approach that can tackle all three goals and validate the proposed approach on the miniature race car set-up hosted at the Automatic Control Lab at ETH Z\"urich. The validation is performed either on the experimental set-up, or in a simulation environment replicating the experimental set-up. In a first step, we propose a novel path planning model which is based on a dynamic bicycle model with nonlinear tire forces. The proposed model is able to generate a rich set of possible trajectories that approximate the capabilities of the dynamic bicycle model. The path planning model is optimized for decision making, with only a few decisions and a long discretization time which allows for long term predictions with a few prediction steps. Based on the path planning model, in a second step, we propose a hierarchical racing controller, which uses the strength of the path planning model in an upper level to generate a set of finite look-ahead trajectories out of which the trajectory that maximizes the progress and stays within the track is selected. This trajectory is then tracked using an MPC controller in the lower level subject to the dynamic bicycle model and track constraints. We propose to use the viability kernel in the path planning step, to guarantee that all generated finite look-ahead trajectories are recursively feasible with respect to static obstacles (e.g., stay inside the track). This formally adds safety to the path planning step and at the same time speeds up the computation time and increases the closed-loop performance. The viability kernel computation is based on space discretization. To make the calculation robust against discretization errors, we propose a novel numerical scheme based on game theoretical methods, in particular the discriminating kernel. We show that the resulting algorithm provides an inner approximation of the viability kernel and guarantees that, for all states in the cell surrounding a viable grid point, there exists an input that keeps the system within the kernel. The performance of the proposed hierarchical racing controller with viability constraints is studied in simulation where we determine the effects of various design choices and parameters and in experiments in the autonomous racing set-up. Both simulation and experimental results suggest that the more conservative approximation using the discriminating kernel results in a safer driving style which starts braking earlier into curves, but this changed driving style comes at the cost of a small increase in lap time. The proposed hierarchical racing controller with viability constraints is able to tackle the first two challenges in autonomous racing. For the third task where racing against other cars is of interest, we propose an approach to formulate racing decisions as a non-cooperative non-zero-sum game. We design three different games where the players aim to fulfill static track constraints as well as avoid collision with each other; the latter constraint depends on the combined actions of the two players. The difference between the games are the collision constraints and the payoff. In the first game collision avoidance is only considered by the follower, and each player maximizes their own progress towards the finish line. We show that, thanks to the sequential structure of this game, equilibria can be computed through an efficient sequential maximization approach. Further, we show these actions, if feasible, are also a Stackelberg and Nash equilibrium in pure strategies of our second game where both players consider the collision constraints. The payoff of our third game is designed to promote blocking, by additionally rewarding the cars for staying ahead at the end of the horizon. We show that this changes the Stackelberg equilibrium, but has a minor influence on the Nash equilibria. For online implementation, we propose to play the games in a moving horizon fashion, and discuss two methods for guaranteeing feasibility of the resulting coupled repeated games. Finally, we study the performance of the proposed approaches in simulation for the miniature race car set-up. The simulation study shows that the presented games can successfully model different racing behaviors and generate interesting racing situations.
Path Planning and Control for Autonomous Racing
In Copyright - Non-Commercial Use Permitted
ETH Zürich::00002 - ETH Zürich::00012 - Lehre und Forschung::00007 - Departemente::02140 - Dep. Inf.technologie und Elektrotechnik / Dep. of Inform.Technol. Electrical Eng.::02650 - Institut für Automatik / Automatic Control Laboratory::03751 - Lygeros, John / Lygeros, John
Files in this item
Doctoral Thesis