Summary 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. Copyright © 2014 John Wiley & Sons, Ltd.
@cite_26: In this paper, we introduce an approach for the efficient solution of motion-planning problems for time-invariant dynamical control systems with symmetries, such as mobile robots and autonomous vehicles, under a variety of differential and algebraic constraints on the state and on the control inputs. Motion plans are described as the concatenation of a number of well-defined motion primitives, selected from a finite library. Rules for the concatenation of primitives are given in the form of a regular language, defined through a finite-state machine called a Maneuver Automaton. We analyze the reachability properties of the language, and present algorithms for the solution of a class of motion-planning problems. In particular, it is shown that the solution of steering problems for nonlinear dynamical systems with symmetries and invariant constraints can be reduced to the solution of a sequence of kinematic inversion problems. A detailed example of the application of the proposed approach to motion planning for a small aerobatic helicopter is presented.
@cite_22: Two frameworks based on Model Predictive Control (MPC) for obstacle avoidance with autonomous vehicles are presented. A given trajectory represents the driver intent. An MPC has to safely avoid obstacles on the road while trying to track the desired trajectory by controlling front steering angle and differential braking. We present two different approaches to this problem. The first approach solves a single nonlinear MPC problem. The second approach uses a hierarchical scheme. At the high-level, a trajectory is computed on-line, in a receding horizon fashion, based on a simplified point-mass vehicle model in order to avoid an obstacle. At the low-level an MPC controller computes the vehicle inputs in order to best follow the high level trajectory based on a nonlinear vehicle model. This article presents the design and comparison of both approaches, the method for implementing them, and successful experimental results on icy roads.Copyright © 2010 by ASME
@cite_7: This paper presents a hierarchical control framework for the obstacle avoidance of autonomous and semi-autonomous ground vehicles. The high-level planner is based on motion primitives created from a four-wheel nonlinear dynamic model. Parameterized clothoids and drifting maneuvers are used to improve vehicle agility. The low-level tracks the planned trajectory with a nonlinear Model Predictive Controller. The first part of the paper describes the proposed control architecture and methodology. The second part presents simulative and experimental results with an autonomous and semi-autonomous ground vehicle traveling at high speed on an icy surface.
In order to avoid obstacles, reference tracking schemes rely on a higher-level path planner. A simple point mass model in the high-level path planner is used in @cite_22 to limit the computational complexity. This can be problematic if the generated trajectories are infeasible with respect to the car's physical dynamics, which can lead to preventable collisions @cite_7 . The latter reference suggests to use a library of steady-state movements (trims) with parametrizable length, which are generated from a more complex dynamical model, and to connect them by maneuvers which allow the transition from one trim to another, similar to the idea of @cite_26 . This path planning has the advantage that it generates feasible reference trajectories for the low level tracking controller, and that drifting trims can be included to increase the agility of the car. However, the resulting optimization problem is a mixed-integer program that is too complex to be solved within the typical sampling times on embedded platforms. Consequently, the approach is not well suited for real-time autonomous racing.