## 15.5.1 Using the P. Hall Basis

The steering method presented in this section is due to Lafferriere and Sussmann [574]. It is assumed here that a driftless control-affine system is given, in which is a Lie group, as introduced in Example 15.15. Furthermore, the system is assumed to be STLC. The steering method sketched in this section follows from the Lie algebra . The idea is to apply piecewise-constant motion primitives to move in directions given by the P. Hall basis. If the system is nilpotent, then this method reaches the goal state exactly. Otherwise, it leads to an approximate method that can be iterated to get arbitrarily close to the goal. Furthermore, some systems are nilpotentizable by using feedback [442].

The main idea is to start with (15.53) and construct an extended system

 (15.114)

in which each is an action variable, and is a vector field in , the P. Hall basis. For every , each term of (15.114) is , which comes from the original system. For , each represents a Lie product in , and is a fictitious action variable. It is called fictitious because the velocity given by for cannot necessarily be achieved by using a single action variable of the system. In general, may be larger than because at each a different subset of may be needed to obtain independent vectors. Also, including more basis elements simplifies some of the coming computations.

Example 15..21 (Extended System for the Nonholonomic Integrator)   The extended system for the nonholonomic integrator (15.83) is

 (15.115)

The first two terms correspond to the original system. The last term arises from the Lie bracket . Only one fictitious action variable is needed because the three P. Hall vector fields are independent at every .

It is straightforward to move this system along a grid-based path in . Motions in the and directions are obtained by applying and , respectively. To move the system in the direction, the commutator motion in (15.71) should be performed. This corresponds to applying . The steering method described in this section yields a generalization of this approach. Higher degree Lie products can be used, and motion in any direction can be achieved.

Suppose some and are given. There are two phases to the steering method:

1. Determine an action trajectory for the extended system, for which and for some .
2. Convert into an action trajectory that eliminates the fictitious variables and uses the actual action variables , , .
The first phase is straightforward. For the extended system, any velocity in the tangent space, , can be generated. Start with any smooth path such that and . The velocity along the path is a velocity vector in that can be expressed as a linear combination of the vectors using linear algebra. The coefficients of this combination are the values. The second phase is much more complicated and will be described shortly. If the system is nilpotent, then should bring the system precisely from to . By the way it is constructed, it will also be clear how to refine to come as close as desired to the trajectory produced by .

Subsections
Steven M LaValle 2012-04-20