15.3 Optimal Paths for Some Wheeled Vehicles

For some of the wheeled vehicle models of Section 13.1.2, the shortest path between any pair of configurations was completely characterized. In this section, , which corresponds to the C-space for a rigid body in the plane. For each model, the path length in must be carefully defined to retain some physical significance in the world in which the vehicle travels. For example, in the case of the simple car, the distance in traveled by the center of the rear axle will be optimized. If the coordinate frame is assigned appropriately, this corresponds to optimizing the path length in the subspace of while ignoring orientation. Keep in mind that the solutions given in this section depend heavily on the particular cost functional that is optimized.

Sections 15.3.1-15.3.3 cover the shortest paths for the Dubins car, the Reeds-Shepp car, and a differential-drive model, respectively. In each case, the paths can be elegantly described as combinations of a few motion primitives. Due to symmetries, it is sufficient to describe the optimal paths from a fixed initial configuration to any goal configuration . If the optimal path is desired from a different , then it can be recovered from rigid-body transformations applied to and (the whole path can easily be translated and rotated without effecting its optimality, provided that does not move relative to ). Alternatively, it may be convenient to fix and consider optimal paths from all possible .

Once (or ) is fixed, can be partitioned into cells that correspond to sets of placements for (or ). Inside of each cell, the optimal curve is described by a fixed sequence of parameterized motion primitives. For example, one cell for the Dubins car indicates ``turn left,'' ``go straight,'' and then ``turn right.'' The curves are ideally suited for use as an LPM in a sampling-based planning algorithm.

This section mainly focuses on presenting the solutions. Establishing their correctness is quite involved and is based in part on Pontryagin's minimum principle from Section 15.2.3. Other important components are Filipov's existence theorem (see [903]) and Boltyanskii's sufficient condition for optimality (which also justifies dynamic programming) [130]. Substantially more details and justifications of the curves presented in Sections 15.3.1 and 15.3.2 appear in [903,904,923]. The corresponding details for the curves of Section 15.3.3 appear in [64].