Research Papers

A Sequential Two-Step Algorithm for Fast Generation of Vehicle Racing Trajectories

[+] Author and Article Information
Nitin R. Kapania

Department of Mechanical Engineering,
Stanford University,
Stanford, CA 94305
e-mail: nkapania@stanford.edu

John Subosits

Department of Mechanical Engineering,
Stanford University,
Stanford, CA 94305
e-mail: subosits@stanford.edu

J. Christian Gerdes

Department of Mechanical Engineering,
Stanford University,
Stanford, CA 94305
e-mail: gerdes@stanford.edu

1Corresponding author.

Contributed by the Dynamic Systems Division of ASME for publication in the JOURNAL OF DYNAMIC SYSTEMS, MEASUREMENT, AND CONTROL. Manuscript received August 3, 2015; final manuscript received March 23, 2016; published online June 2, 2016. Assoc. Editor: Beshah Ayalew.

J. Dyn. Sys., Meas., Control 138(9), 091005 (Jun 02, 2016) (10 pages) Paper No: DS-15-1364; doi: 10.1115/1.4033311 History: Received August 03, 2015; Revised March 23, 2016

The problem of maneuvering a vehicle through a race course in minimum time requires computation of both longitudinal (brake and throttle) and lateral (steering wheel) control inputs. Unfortunately, solving the resulting nonlinear optimal control problem is typically computationally expensive and infeasible for real-time trajectory planning. This paper presents an iterative algorithm that divides the path generation task into two sequential subproblems that are significantly easier to solve. Given an initial path through the race track, the algorithm runs a forward–backward integration scheme to determine the minimum-time longitudinal speed profile, subject to tire friction constraints. With this fixed speed profile, the algorithm updates the vehicle's path by solving a convex optimization problem that minimizes the resulting path curvature while staying within track boundaries and obeying affine, time-varying vehicle dynamics constraints. This two-step process is repeated iteratively until the predicted lap time no longer improves. While providing no guarantees of convergence or a globally optimal solution, the approach performs very well when validated on the Thunderhill Raceway course in Willows, CA. The predicted lap time converges after four to five iterations, with each iteration over the full 4.5 km race course requiring only 30 s of computation time on a laptop computer. The resulting trajectory is experimentally driven at the race circuit with an autonomous Audi TTS test vehicle, and the resulting lap time and racing line are comparable to both a nonlinear gradient descent solution and a trajectory recorded from a professional racecar driver. The experimental results indicate that the proposed method is a viable option for online trajectory planning in the near future.

Copyright © 2016 by ASME
Your Session has timed out. Please sign back in to continue.


Hendrikx, J. , Meijlink, T. , and Kriens, R. , 1996, “ Application of Optimal Control Theory to Inverse Simulation of Car Handling,” Veh. Syst. Dyn., 26(6), pp. 449–461. [CrossRef]
Casanova, D. , 2000, “ On Minimum Time Vehicle Manoeuvring: The Theoretical Optimal Lap,” Ph.D. thesis, Cranfield University, UK.
Kelly, D. P. , 2008, “ Lap Time Simulation With Transient Vehicle and Tyre Dynamics,” Ph.D. thesis, Cranfield University, UK.
Perantoni, G. , and Limebeer, D. J. , 2014, “ Optimal Control for a Formula One Car With Variable Parameters,” Veh. Syst. Dyn., 52(5), pp. 653–678. [CrossRef]
Theodosis, P. A. , and Gerdes, J. C. , 2011, “ Generating a Racing Line for an Autonomous Racecar Using Professional Driving Techniques,” ASME Paper No. DSCC2011-6097.
Timings, J. P. , and Cole, D. J. , 2013, “ Minimum Maneuver Time Calculation Using Convex Optimization,” ASME J. Dyn. Syst. Meas. Control, 135(3), p. 031015. [CrossRef]
Gerdts, M. , Karrenberg, S. , Müller-Beßler, B. , and Stock, G. , 2009, “ Generating Locally Optimal Trajectories for an Automatically Driven Car,” Optim. Eng., 10(4), pp. 439–463. [CrossRef]
Lipp, T. , and Boyd, S. , 2014, “ Minimum-Time Speed Optimisation Over a Fixed Path,” Int. J. Control, 87(6), pp. 1297–1311. [CrossRef]
Subosits, J. K. , and Gerdes, J. C. , 2015, “ Autonomous Vehicle Control for Emergency Maneuvers: The Effect of Topography,” American Control Conference (ACC), Chicago, IL, July 1–3, pp. 1405–1410.
Kapania, N. R. , and Gerdes, J. C. , 2015, “ Design of a Feedback-Feedforward Steering Controller for Accurate Path Tracking and Stability at the Limits of Handling,” Veh. Syst. Dyn., 53(12), pp. 1687–1704. [CrossRef]
Velenis, E. , and Tsiotras, P. , 2008, “ Minimum-Time Travel for a Vehicle With Acceleration Limits: Theoretical Analysis and Receding-Horizon Implementation,” J. Optim. Theory Appl., 138(2), pp. 275–296. [CrossRef]
Sharp, R. , 2014, “ A Method for Predicting Minimum-Time Capability of a Motorcycle on a Racing Circuit,” ASME J. Dyn. Syst. Meas. Control, 136(4), p. 041007. [CrossRef]
Pacejka, H. B. , 2012, Tire and Vehicle Dynamics, 3rd ed., Butterworth-Heinemann, Oxford, UK.
Grant, M. , and Boyd, S. , 2014, “ CVX: matlab Software for Disciplined Convex Programming,” Version 2.1, http://cvxr.com/cvx
Mattingley, J. , and Boyd, S. , 2012, “ CVXGEN: A Code Generator for Embedded Convex Optimization,” Optim. Eng., 13(1), pp. 1–27. [CrossRef]
Erlien, S. , Fujita, S. , and Gerdes, J. C. , 2013, “ Safe Driving Envelopes for Shared Control of Ground Vehicles,” Advances in Automotive Control Conference, Tokyo, Vol. 7, pp. 831–836.


Grahic Jump Location
Fig. 1

(a) View of a sample reference path and road boundaries, plotted in the east–north Cartesian frame. (b) Lateral distance from path to inside road edge (positive) and outside road edge (negative) as a function of distance along path. (c) Curvature as a function of distance along path.

Grahic Jump Location
Fig. 2

(a) Schematic of bicycle model. (b) Diagram showing lateral path deviation e and path heading error ΔΨ states.

Grahic Jump Location
Fig. 3

(a) Sample curvature profile. (b) Velocity profile given zero longitudinal force. (c) Velocity profile after forward pass. (d) Final velocity profile after backward pass.

Grahic Jump Location
Fig. 4

Nonlinear tire force curve given by Fiala model, along with affine tire model linearized at α=α̃

Grahic Jump Location
Fig. 5

Path update for an example turn

Grahic Jump Location
Fig. 6

Audi TTS used for simulation parameters and experimental validation

Grahic Jump Location
Fig. 7

Overhead view of Thunderhill Raceway along with generated path from algorithm. Car drives in alphabetical direction around the closed circuit. Labeled regions – are locations of discrepancies between the two-step algorithm solution and comparison solutions.

Grahic Jump Location
Fig. 8

Lateral path deviation of racing line from track centerline as a function of distance along the centerline. Note that upper and lower bounds on e are not always symmetric due to the initial centerline being a smooth approximation. Results are compared with racing line from a nonlinear gradient descent algorithm and experimental data recorded from a professional racecar driver.

Grahic Jump Location
Fig. 10

Racing lines from the two-step fast generation approach, nonlinear gradient descent algorithm, and experimental data taken from professional driver. Car drives in direction of labeled arrow.

Grahic Jump Location
Fig. 9

Racing lines from the two-step fast generation approach, nonlinear gradient descent algorithm, and experimental data taken from professional driver. Car drives in direction of labeled arrow.

Grahic Jump Location
Fig. 11

Lap time as a function of iteration for the two-step fast trajectory generation method. Final lap time is comparable to that achieved with the nonlinear gradient descent approach. Iteration zero corresponds to the lap time for driving the track centerline.

Grahic Jump Location
Fig. 12

(a) Predicted time difference between a car driving both trajectories, with a positive value corresponding the two-step algorithm being ahead. (b) Curvature profile K(s) plotted versus distance along the path s. (c) Velocity profile Ux(s) plotted versus distance along the path s for the two-step method and nonlinear gradient descent method.

Grahic Jump Location
Fig. 13

Experimental data for an autonomous vehicle driving the trajectories provided by the two-step fast generation and gradient descent algorithms. (a) Relative time difference between vehicles driving both trajectories, with a positive time corresponding to the two-step algorithm being ahead. (b) Actual recorded velocity of vehicle. (c) Difference between actual and desired speed. Large negative values outside plotting range occur on straight sections of the track where the vehicle is limited by engine power and speed tracking error is poorly defined.




Some tools below are only available to our subscribers or users with an online account.

Related Content

Customize your page view by dragging and repositioning the boxes below.

Related Journal Articles
Related eBook Content
Topic Collections

Sorry! You do not have access to this content. For assistance or to subscribe, please contact us:

  • TELEPHONE: 1-800-843-2763 (Toll-free in the USA)
  • EMAIL: asmedigitalcollection@asme.org
Sign In