This paper describes autonomous racing of RC race cars based on mathematical optimization. Using a dynamical model of the vehicle, control inputs are computed by receding horizon based controllers, where the objective is to maximize progress on the track subject to the requirement of staying on the track and avoiding opponents. Two different control formulations are presented. The first controller employs a two-level structure, consisting of a path planner and a nonlinear model predictive controller (NMPC) for tracking. The second controller combines both tasks in one nonlinear optimization problem (NLP) following the ideas of contouring control. Linear time varying models obtained by linearization are used to build local approximations of the control NLPs in the form of convex quadratic programs (QPs) at each sampling time. The resulting QPs have a typical MPC structure and can be solved in the range of milliseconds by recent structure exploiting solvers, which is key to the real-time feasibility of the overall control scheme. Obstacle avoidance is incorporated by means of a high-level corridor planner based on dynamic programming, which generates convex constraints for the controllers according to the current position of opponents and the track layout. The control performance is investigated experimentally using 1:43 scale RC race cars, driven at speeds of more than 3 m/s and in operating regions with saturated rear tire forces (drifting). The algorithms run at 50 Hz sampling rate on embedded computing platforms, demonstrating the real-time feasibility and high performance of optimization-based approaches for autonomous racing. Autonomous car racing is a challenging task for automatic control systems due to the need for handling the vehicle close to its stability limits and in highly nonlinear operating regimes. In addition, dynamically changing racing situations require advanced path planning mechanisms with obstacle avoidance executed in real-time. Fast dynamics constrain the sampling time to be in the range of a few tens of milliseconds at most, which severely limits the admissible computational complexity of the algorithms. This situation is even more challenging if the autonomous algorithms shall be executed on simple, low-power embedded computing platforms. In this paper, we investigate optimization-based control strategies for the task of racing an autonomous vehicle around a given track. We focus on methods that can be implemented to run in real-time on embedded control platforms, and present experimental results using 1:43 scale Kyosho dnano RC race cars that achieve top speeds of more than 3 m/s, which corresponds to an upscaled speed of about 465 km/h. For high performance, the proposed controllers operate the car at its friction limits, far beyond the linear region of what is typically used in other autonomous driving systems. This challenging task is generally mastered only by expert drivers with lots of training. In contrast, our approach requires merely a map of the track and a dynamical model of the car; in particular, we use a bicycle model with nonlinear tire forces, neglecting load transfer and coupling of lateral and longitudinal slip. Two model-based control schemes are presented in this paper. First, we describe a hierarchical two-level control scheme consisting of a model-based path planner generating feasible trajectories for an underlying nonlinear model predictive control (NMPC) trajectory tracking controller. Our second approach combines both path planning and path following into one formulation, resulting in one NMPC controller that is based on a particular formulation known from contouring control [1], [2] . The objective of both approaches is to maximize the progress on the track, measured by a projection of the vehicle's position onto the center line of the track. Linear time varying (LTV) models obtained by linearization are employed to construct a
More precisely we extended the real-time Model Predictive Control (MPC) method proposed in REF , which is able to directly find an optimal trajectory based on the performance envelope of the car.
Optimization-Based Autonomous Racing of 1:43 Scale RC Cars
Optimal Control Applications and Methods, 36(5), 2015, pp.628-647
Mathematics Computer Science