14.6.1 Different Ways to Decouple the Big Problem

As sampling-based algorithms continue to improve along with computation power, it becomes increasingly feasible in practice to directly solve challenging planning problems under differential constraints. There are many situations, however, in which computing such solutions is still too costly due to expensive numerical integration, collision detection, and complicated obstacles in a high-dimensional state space. Decoupled approaches become appealing because they divide the big problem into modules that are each easier to solve. For versions of the Piano Mover's Problem, such methods were already seen in Chapter 7. Section 7.1.3 introduced the velocity-tuning method to handle time-varying obstacles, and Section 7.2.2 presented decoupled approaches to coordinating multiple robots.

Ideally, we would like to obtain feedback plans on any state space in the presence of obstacles and differential constraints. This assumes that the state can be reliably measured during execution. Section 14.5 provided the best generic techniques for solving the problem, but they are unfortunately limited to a few dimensions. If there is substantial sensing uncertainty, then the feedback plan must be defined on the I-space, which was covered in Chapter 11. Back in Section 1.4, Figure 1.19 showed a popular model of decoupling the big planning problem into a sequence of refinements. A typical decoupled approach involves four modules:

  1. Use a motion planning algorithm to find a collision-free path $ \tau: [0,1] \rightarrow {\cal C}_{free}$.
  2. Transform $ \tau$ into a new path $ \tau '$ so that velocity constraints on $ {\cal C}$ (if there are any) are satisfied. This might, for example, ensure that the Dubins car can actually follow the path. At the very least, some path-smoothing is needed in most circumstances.
  3. Compute a timing function $ \sigma : [0,t_F] \rightarrow [0,1]$ for $ \tau '$ so that $ \tau' \circ \sigma$ is a time-parameterized path through $ {\cal C}_{free}$ with the following requirement. The state trajectory $ {\tilde{x}}$ must satisfy $ {\dot x}= f(x(t),u(t))$ and $ u(t) \in U(x(t))$ for all time, until $ u_T$ is applied at time $ t_F$.
  4. Design a feedback plan (or feedback control law) $ \pi : X
\rightarrow U$ that tracks $ {\tilde{x}}$. The plan should attempt to minimize the error between the desired state and the measured state during execution.
Given recent techniques and computation power, the significance of this approach may diminish somewhat; however, it remains an important way to decompose and solve problems. Be aware, however, that this decomposition is arbitrary. If every module can be solved, then it is sufficient for producing a solution; however, such a decomposition is not necessary. At any step along the way, completeness may be lost because of poor choices in earlier modules. It is often difficult for modules to take into account problems that may arise later.

Various ways to merge the modules have been considered. The methods of Section 14.4 solve either: 1) the first two modules simultaneously, if paths that satisfy $ {\dot q}=f(q,u)$ are computed through $ {\cal C}_{free}$, or 2) the first three modules simultaneously, if paths that satisfy $ {\dot x}=
f(x,u)$ are computed through $ {X_{free}}$. Section 14.5 solved all four modules simultaneously but was limited to low-dimensional state spaces.

Now consider keeping the modules separate. Planning methods from Part II can be applied to solve the first module. Section 14.6.2 will cover methods that implement the second module. Section 14.6.3 will cover methods that solve the third module, possibly while also solving the second module. The fourth module is a well-studied control problem that is covered in numerous texts [523,846,856].

Steven M LaValle 2012-04-20