Transforming the robot model

Consider transforming a robot model. If $ {\cal A}$ is expressed by naming specific points in $ {\mathbb{R}}^2$, as in a boundary representation of a polygon, then each point is simply transformed from $ a$ to $ {h}(a) \in
{\cal W}$. In this case, it is straightforward to transform the entire model using $ h$. However, there is a slight complication if the robot model is expressed using primitives, such as

$\displaystyle H_i = \{ a \in {\mathbb{R}}^2 \;\vert\; f_i(a) \leq 0 \} .$ (3.22)

This differs slightly from (3.2) because the robot is defined in $ {\mathbb{R}}^2$ (which is not necessarily $ {\cal W}$), and also $ a$ is used to denote a point $ (x,y) \in {\cal A}$. Under a transformation $ {h}$, the primitive is transformed as

$\displaystyle {h}(H_i) = \{ {h}(a) \in {\cal W}\;\vert\; f_i(a) \leq 0 \} .$ (3.23)

To transform the primitive completely, however, it is better to directly name points in $ w \in {\cal W}$, as opposed to $ {h}(a) \in
{\cal W}$. Using the fact that $ a = {h^{-1}}(w)$, this becomes

$\displaystyle {h}(H_i) = \{ w \in {\cal W}\;\vert\; f_i({h^{-1}}(w)) \leq 0 \} ,$ (3.24)

in which the inverse of $ {h}$ appears in the right side because the original point $ a \in A$ needs to be recovered to evaluate $ f_i$. Therefore, it is important to be careful because either $ {h}$ or $ {h^{-1}}$ may be required to transform the model. This will be observed in more specific contexts in some coming examples.

Steven M LaValle 2012-04-20