Let denote the set of permissible action trajectories for the
system, as considered in Section 14.1.1. By default, this
is taken as any
for which (14.1) can be
integrated. A system
is called *controllable* if
for all
, there exists a time and action
trajectory
such that upon integration from
, the result is
. Controllability can
alternatively be expressed in terms of the reachable sets of Section
14.2.1. The system is controllable if
for all
.

A system is therefore controllable if a solution exists to any motion planning problem in the absence of obstacles. In other words, a solution always exists to the two-point boundary value problem (BVP).

Many methods for determining controllability of a system are covered
in standard textbooks on control theory. If the system is linear, as
given by (13.37) with dimensions and , then it is
controllable if and only if the
*controllability
matrix*

(15.4) |

has full rank [192]. This is called the

For fully actuated systems of the form , controllability can be determined by converting the system into double-integrator form, as considered in Section 14.4.1. Let the system be expressed as , in which . If contains an open neighborhood of the origin of , and the same neighborhood can be used for any , then the system is controllable. If a nonlinear system is underactuated, as in the simple car, then controllability issues become considerably more complicated. The next concept is suitable for such systems.

Steven M LaValle 2020-08-14