Unconstrained mechanical systems

A lattice can even be obtained for the general case of a fully actuated mechanical system, which for example includes most robot arms. Recall from (13.4) that any system in the form $ {\dot q}=f(q,u)$ can alternatively be expressed as $ {\dot q}= u$, if $ U(q)$ is defined as the image of $ f$ for a fixed $ q$. The main purpose of using $ f$ is to make it easy to specify a fixed action space $ U$ that maps differently into the tangent space for each $ q \in {\cal C}$.

A similar observation can be made regarding equations of the form $ {\ddot q}= h(q,{\dot q},u)$, in which $ u \in U$ and $ U$ is an open subset of $ {\mathbb{R}}^n$. Recall that this form was obtained for general unconstrained mechanical systems in Sections 13.3 and 13.4. For example, (13.148) expresses the dynamics of open-chain robot arms. Such equations can be expressed as $ {\ddot q}= u'$ by directly specifying the set of allowable accelerations. Each $ u$ will map to a new action $ u'$ in an action space given by

$\displaystyle U'(q,{\dot q})= \{ {\ddot q}\in {\mathbb{R}}^n \;\vert\; \exists u \in U$    such that $\displaystyle {\ddot q}= h(q,{\dot q},u)\}$ (14.24)

for each $ q \in {\cal C}$ and $ {\dot q}\in {\mathbb{R}}^n$.

Each $ u' \in U'(q,{\dot q})$ directly expresses an acceleration vector in $ {\mathbb{R}}^n$. Therefore, using $ u' \in U(q,{\dot q})$, the original equation expressed using $ h$ can be now written as $ {\ddot q}= u'$. In its new form, this appears just like the multiple, independent double integrators. The main differences are

  1. The set $ U'(q,{\dot q})$ may describe a complicated region in $ {\mathbb{R}}^n$, whereas $ U$ in the case of the true double integrators was a cube centered at the origin.
  2. The set $ U'(q,{\dot q})$ varies with respect to $ q$ and $ {\dot q}$. Special concern must be given for this variation over the time sampling interval $ \Delta t$. In the case of the true double integrators, $ U$ was fixed.

Figure: (a) The set, $ U'(q,{\dot q})$, of new actions and grid-based sampling. (b) Reducing the set by some safety margin to account for its variation over time.
\begin{figure}\begin{center}
\begin{tabular}{ccc}
\psfig{file=figs/quantqqd.eps,...
...qqd2.eps,width=2.7truein} \\
(a) & & (b)
\end{tabular}
\end{center}\end{figure}

The first difference is handled by performing grid sampling over $ {\mathbb{R}}^n$ and making an edge in the reachability graph for every grid point that falls into $ U'(q,{\dot q})$; see Figure 14.15a. The grid resolution can be improved along with $ \Delta t$ to obtain resolution completeness. To address the second problem, think of $ U'(q(t),{\dot q}(t))$ as a shape in $ {\mathbb{R}}^n$ that moves over time. Choosing $ u'$ close to the boundary of $ U'(q(t),{\dot q}(t))$ is dangerous because as $ t$ increases, $ u'$ may fall outside of the new action set. It is often possible to obtain bounds on how quickly the boundary of $ U'(q,{\dot q})$ can vary over time (this can be determined, for example, by differentiating $ h$ with respect to $ q$ and $ {\dot q}$). Based on the bound, a thin layer near the boundary of $ U'(q,{\dot q})$ can be removed from consideration to ensure that all attempted actions remain in $ U'(q(t),{\dot q}(t))$ during the whole interval $ \Delta t$. See Figure 14.15b.

These ideas were applied to extend the approximation algorithm framework to the case of open-chain robot arms, for which $ h$ is given by (13.148). Suppose that $ U$ is an axis-aligned rectangle, which is often the case for manipulators because the bounds for each $ u_i$ correspond to torque limits for each motor. If $ q$ and $ {\dot q}$ are fixed, then (13.140) applies a linear transformation to obtain $ {\ddot q}$ from $ u$. The rectangle is generally sheared into a parallelepiped (a $ n$-dimensional extension of a parallelogram). Recall such transformations from Section 3.5 or linear algebra.

Steven M LaValle 2012-04-20