# Geometry of Nonholonomic Systems

A. Bella¨ıche F. Jean J.J. Risler
This is the second chapter of the book:
Robot Motion Planning and Control
Jean-Paul Laumond (Editor)
Laboratoire d’Analye et d’Architecture des Syst`emes
Centre National de la Recherche Scientiﬁque
LAAS report 97438
Previoulsy published as:
Lectures Notes in Control and Information Sciences 229.
Springer, ISBN 3-540-76219-1, 1998, 343p.
Geometry of Nonholonomic Systems
A. Bella¨ıche
1
, F. Jean
2
and J.-J. Risler
3
1
Paris 7 University
2
Paris 6 University
3
Ecole Normale Sup´erieure and Paris 6 University
Nonholonomic motion planning is best understood with some knowledge of
the underlying geometry. In this chapter, we ﬁrst introduce in Section 1 the
basic notions of the geometry associated to control systems without drift. In
the following sections, we present a detailed study of an example, the car with
n trailers, then some general results on polynomial systems, which can be used
to bound the complexity of the decision problem and of the motion planning
for these systems.
1 Symmetric control systems: an introduction
1.1 Control systems and motion planning
Regardless of regularity hypotheses, control systems may be introduced in two
ways. By ascribing some condition
˙ x ∈ V
x
where V
x
is, for every x, some subset of the tangent space T
x
M, or in a para-
metric way, as
˙ x = f(x, u)
where, for every x, the map u → f(x, u) has V
x
as its image.
In mechanics or robotics, conditions of the ﬁrst kind occur as linear con-
straints on the velocities, such as rolling constraints, as well in free movement—
the classical object of study in mechanics, as in the case of systems propulsed
by motors.
Equations of the second kind may represent the action of “actuators” used
to move the state of the system in the conﬁguration space. One can show that
if the action of two actuators are represented by ˙ x = f
1
(x) and ˙ x = f
2
(x),
we may also consider the action of any convex combination of vector ﬁelds f
1
and f
2
, and add it to the possible actions without changing in an essential way
the accessible set A(x) or A(x, T). For this reason, one may suppose V
x
to be
convex, or equivalently, u → f(x, u) to be aﬃne, of the form (u
1
, . . . , u
m
) →
56 A. Bella¨ıche, F. Jean and J.-J. Risler
X
0
(x) +u
1
X
1
(x) + +u
m
X
m
(x), and deﬁned on some convex subset K
x
of
R
m
, for some m. This is responsible for the form
˙ x = X
0
(x) +u
1
X
1
(x) + +u
m
X
m
(x)
under which control systems are often encountered in the literature. (It makes
no harm to suppose m and K
x
to be independent of x, and to suppose that the
origin is an interior point of K = K
x
.) The vector ﬁeld X
0
is called the drift.
Now, we will use only systems without drift, that is with X
0
= 0, for the
study of the problem of motion planning for robots. We may content with such
systems as long as no dynamics is involved. That is, if the state of the system
represents its position, and if we control directly its velocity. As opposed to
a system whose state would represent position and velocities, and where the
control is exerted on accelerations. Consider the simplest possible of such a
system: a mobile point on a line, submitted to the control equation
¨ x = u.
Introducing the velocity y = ˙ x, we see that this system is equivalent to a system
governed by the equation
˙ x = y
˙ y = u
which can be written as

˙ x
˙ y

=

y
0

+u

0
1

= X
0
+uX
1
,
that is, with a non-zero drift X
0
.
For some applications, our study will be valid in the case of slow motion only,
and resemble to the thermodynamics of equilibriums, where all transformation
are supposed to be inﬁnitely slow.
1.2 Deﬁnitions. Basic problems
To sum up, we shall be interested in control systems of the form
˙ x =
m
¸
i=1
u
i
X
i
(x), x ∈ M, (Σ)
where the conﬁguration space M of the system is a C

manifold, X
1
, . . . , X
m
are C

vector ﬁelds on M, and the control function u(t) = (u
1
(t), . . . , u
t
(t))
takes values in a ﬁxed compact convex K of R
m
, with nonempty interior, and
Geometry of Nonholonomic Systems 57
symmetric with respect to the origin. Such systems are called symmetric (or
driftless). One also says that controls enter linearly in (Σ).
For any choice of u as a measurable function deﬁned on some interval [0, T],
with value in K, equation (Σ) becomes a diﬀerential equation
˙ x =
m
¸
i=1
u
i
(t)X
i
(x). (1)
Given any point x
0
on M, we can integrate (1), taking
x(0) = x
0
(2)
as an initial condition. For the sake of simplicity, we shall suppose that this
equation has a well-deﬁned solution on [0, T] for all choices of u (this is guaran-
teed if M is compact or if M = R
n
, and vector ﬁelds X
i
are bounded). Call this
solution x
u
. One says that x
u
is the path with initial point x
0
and controlled
by u. We shall mainly be interested in its ﬁnal value x
u
(T). Classically, points
in M are called the states of the system. One says for example that the system
is steered from state x
0
to state x
u
(T) by means of the control function u.
One also says that x
u
(T) is accessible, or reachable, in time T from x
0
. We
shall denote by A(x, T) the set of points of M accessible from x in time T (or
in time ≤ T, it is the same thing for symmetric systems), and by A(x) the set
of points accessible from x, that is
A(x) =
¸
T>0
A(x, T).
Basic problems of Control Theory are:
– determine the accessible set A(x);
– given a point y, accessible from x, ﬁnd control functions steering the system
from x to y;
– do the preceding in minimal time;
– more generally, ﬁnd control function u ensuring any given property of x
u
(t),
the path controlled by u.
Given x
0
, the control function u(t) is considered as the input of the system,
and x
u
(t) as the output. In a more general setting, the output is only some
function h(x) of the state x, h being called the observation: the state is only
partially known. Here we will take as observation h = Id, and call indiﬀerently
x the state or the output.
We can now state another basic problem:
58 A. Bella¨ıche, F. Jean and J.-J. Risler
– can one ﬁnd a map k : M → K such that the diﬀerential equation
˙ x = f(x, k(x)) (3)
has a determined behaviour, for example, has a given point x
0
as an at-
tractor?
Since in this problem, the output is reused as an input, such a map k is called
a feedback control law, or a closed-loop control. If (3) has x
0
as an attractor,
one says that k is a stabilizing feedback at x
0
.
1.3 The control distance
Return to the control system (Σ). For x, y ∈ M, deﬁne d(x, y) as the inﬁmum
of times T such that y is accessible from x in time T, so d(x, y) = +∞if y is not
accessible from x. It is immediate to prove that d(x, y) is a distance [distance
function] on M. Of course, this is the case only because we supposed that K
is symmetric with respect to the origin in R
m
.
Distance d will be called the control distance.
We can deﬁne d in a diﬀerent way. First, observe that since K is convex,
symmetric, with nonempty interior, we can associate to it a norm | |
K
on
R
m
, such that K is the unit ball |u|
K
≤ 1. Now, for a controlled path c = x
u
:
[a, b] → M obtained by means of a control function u ∈ L
1
([a, b], R
m
), we set
length(c) =

b
a
|u(t)|
K
dt. (4)
If c can be obtained in such a way from several diﬀerent u’s, we take the inﬁmum
of the corresponding integrals. Then, d(x, y) is the inﬁmum of the lengths of
controlled paths joining x to y (and, of course, this is intended in the deﬁnition
of an inﬁmum, +∞ if no such path exists).
A slightly variant construction may be useful. Transfer the function | |
K
to T
x
M, by setting
|v|
K
= inf¦ |(u
1
, . . . , u
m
)|
K
[ v = u
1
X
1
(x) + +u
m
X
m
(x) ¦.
We get in this way a function on T
x
M which is a norm on span(X
1
(x), . . . ,
X
m
(x)) and takes the value +∞ for vector not in this subspace. We can now
deﬁne the length of any absolutely continuous path c : [a, b] → M as
length(c) =

b
a
|˙ c(t)|
K
dt
and the distance d(x, y) as the inﬁmum of length of paths joining x and y.
Geometry of Nonholonomic Systems 59
Note that distances corresponding to diﬀerent K, say K
1
and K
2
, are equiv-
alent: there exists some positive constants A and B such that
1
(x, y) ≤ d
2
(x, y) ≤ Bd
1
(x, y).
The most convenient version of the control distance is obtained by taking
for K the unit ball of R
m
, which gives
|u| = (u
2
1
+ +u
2
m
)
1/2
.
In this case, the distance d is called the sub-Riemannian distance attached
to the system of vector ﬁelds X
1
, . . . , X
m
. As a justiﬁcation for this name,
observe that, locally, any Riemannian distance can be recovered in such a way
by taking m = n, and as X
1
(x), . . . , X
n
(x) an orthonormal basis, depending
on x, of the tangent space T
x
M. A more general, more abstract, deﬁnition of
sub-Riemannian metrics can be given, but we shall not use it in this book.
Now, observe that d(x, y) < ∞ if and only if x and y are reachable from
one another, that A(x, T) is nothing else that the ball of center x and radius
T (for d), and that controlled paths joining x to y in minimal time are simply
minimizing geodesics.
Many problems of control theory, or path planning, get in this way a geo-
metric interpretation. For another example, one could think to obtain a feed-
back law k(x) stabilizing the system at x = x
0
by choosing k so as to ensure
f(x, k(x)) to be the gradient of d(x, x
0
). Unfortunately, this does not work,
even if we take the good version of the gradient, i.e., the sub-Riemannian one:
1
f)X
1
+ + (X
m
f)X
m
.
and take k(x) = (X
1
f, . . . , X
m
f) for that purpose. But studying the reasons
of this failure is very instructive. Such a geometric interpretation, using the
sub-Riemaniann distance, really brings a new insight in theory, and it will in
several occasions be very useful to us.
1.4 Accessibility. The theorems of Chow and Sussmann
We shall deduce the classical theorem of Chow (Chow [7], Rashevskii [28]) from
a more precise result by Sussmann. Sussmann’s theorem will be proved using
L
1
controls. However, it can be shown that the results obtained are, to a great
extend, independent of the class of control used (see Bella¨ıche [2]).
Consider a symmetric control system, as described above,
˙ x =
m
¸
i=1
u
i
X
i
(x), x ∈ M, u ∈ K. (Σ)
60 A. Bella¨ıche, F. Jean and J.-J. Risler
Recall the conﬁguration space M is a C

manifold, X
1
, . . . , X
m
are C

vector
ﬁelds on M, and K, the control set, or parameter set, is a ﬁxed compact convex
of R
m
, with nonempty interior, symmetric with respect to the origin.
In all this section, we ﬁx a point x
0
∈ M, the initial point, and a positive
time T. Set
H
T
= L
1
([0, T], R
m
).
We shall call this space the space of controls. It may be considered as a normed
space by setting
|u| =

T
0
|u(t)|
K
dt.
Given u ∈ H
T
, we consider the diﬀerential equation

˙ x =
¸
m
i=1
u
i
(t)X
i
(x), 0 ≤ t ≤ T
x(0) = x
0
(5)
Under suitable hypotheses, the diﬀerential equation (5) has a well deﬁned so-
lution x
u
(t). We will denote by
End
x
0
,T
: H
T
→ M
the mapping wich maps u to x
u
(T). We will call End
x
0
,T
, or End for short, the
end-point map.
Now, the accessible set A(x
0
) (the set of points accessible from x
0
for the
system Σ, regardless of time) is exactly the image of End
x
0
,T
. Indeed, every
controlled path c : [0, T

] → M, deﬁned by the control u : [0, T

] → M may be
reparametrized by [0, T]. Conversely, if u ∈ H, and L = length(x
u
), the control
function
v(t) =
u(φ(t))
|u(φ(t))|
K
, 0 ≤ t ≤ L,
where φ is deﬁned as a right inverse to the mapping
s →

s
0
|u(τ)|
K

from [0, T] to [0, L] takes its values in K, and deﬁnes the same geometric path
as u.
Theorem 1.1 (Sussmann [36], Stefan [35]). The set A(x
0
) of points ac-
cessible from a given point x
0
in M is an immersed submanifold.
We shall prove this theorem using arguments from diﬀerential calculus in
Banach spaces, taking advantage from the fact that the end-point map is a
diﬀerentiable mapping from H to M, a ﬁnite dimensional manifold.
Geometry of Nonholonomic Systems 61
Recall the rank of a diﬀerentiable mapping at a given point is by deﬁnition
the rank of its diﬀerential at that point. The theorem of the constant rank
asserts that the image of a diﬀerential map with constant rank is an immersed
Deﬁnition. Let ρ the maximal rank of the end-point map End
x
0
,T
: H
T
→ M.
We say that a control function u ∈ H
T
is normal if the rank of End
x
0
,T
at u
is equal to ρ. We shall say that the path x
u
deﬁned by u is a normal path.
Otherwise, u is said to be an abnormal control, and x
u
an abnormal path.
A point which can be joined to x
0
by a normal path is said to be normally
accessible from x
0
.
Lemma 1.2. Every point accessible from x
0
is normally accessible from x
0
.
Proof. Let y be a point accessible from x
0
, and let u ∈ H
T
a control steering
x
0
to y. Choose a normal control z ∈ H
T
, steering x
0
to some point z. Such
a control exists by deﬁnition. We claim that the control function w ∈ H
3T
deﬁned by
w(t) =

v(t) if 0 ≤ t ≤ T
v(2T −t) if T ≤ t ≤ 2T
u(t −2T) if 2T ≤ t ≤ 3T
is normal and steers x
0
to y.
The second part of our assertion is evident: the path x
w
steers x
0
, ﬁrst to
z, then back to x
0
, then to y. Now, the image of DEnd
x
0
,3T
consists of the
inﬁnitesimal variations δx
w
(3T) obtained from inﬁnitesimal variations δw of
w. We can consider special variations of w, namely variations of the ﬁrst part
of w only, leaving the two other parts unchanged. In other words, we consider
the control functions
w(t) +δw(t) =

v(t) +δv(t) if 0 ≤ t ≤ T
v(2T −t) if T ≤ t ≤ 2T
u(t −2T) if 2T ≤ t ≤ 3T
Since v is a normal control, these variations yield inﬁnitesimal variations
of δx
w
(T) = x
w+δw
(T) − x
w
(T) which form a subspace of dimension ρ
at that point. Now, the corresponding variations of x
w
(3T) are obtained
from those of x
w
(T) by applying the ﬂow of the time-dependent vector ﬁeld
¸
1≤i≤m
w
i
(t)X
i
(x) between time T and time 3T. Since this ﬂow is a diﬀeo-
morphism of M, these variations of x
w
(3T) form a subspace of dimension ρ of
the tangent space T
y
M. The space formed by variations of the x
w
(3T) caused
by unrestricted variations of the control w has thus dimension ≥ ρ, an so has
dimension ρ. This proves that w is normal.
Of course, the fact that w is in H
3T
T
is harmless.
62 A. Bella¨ıche, F. Jean and J.-J. Risler
Proof of Sussmann’s theorem. The normal controls form an open subset N
x
0
,T
of H
T
. From Theorem 1.2, the accessible set A(x
0
) is the image of N
x
0
,T
by
a constant rank map. By using the Theorem of constant rank, the proof is
done.
Theorem 1.3 (Chow [7], Rashevskii [28]). If M is connected (for its orig-
inal topology), and if the vector ﬁelds X
1
, . . . , X
m
and their iterated brackets
[X
i
, X
j
], [[X
i
, X
j
], X
k
], etc. span the tangent space T
x
M at every point of M,
then any two points of M are accessible from one another.
Proof. Since the relation y ∈ A(x) is clearly an equivalence relation, we can
speak of accessibility components. Since
y ∈ A(x) ⇐⇒ d(x, y) < ∞,
the set A(x) is the union of open balls B(x, R) (for d), so it is itself an open
set. Whence it results that the accessibility components are also the connected
component of M for the topology deﬁned by d.
It is clear that the accessibility components of M are stable under the ﬂow
exp tX
i
of vector ﬁeld X
i
(i = 1, . . . , m). Therefore, the vector ﬁelds X
1
, . . . , X
m
are, at any point, tangent to the accessibility component through that point
(see [2] for details). And so are their brackets [X
i
, X
j
], their iterated brackets
[[X
i
, X
j
], X
k
], etc.
If the condition on the brackets is fulﬁlled, then
T
x
A(x) = T
x
M
at every point x, as the preceding discussion shows. In that case, the acces-
sibility components are open. Since M is connected, there can be only one
accessibility component.
Deﬁnition. The following condition
(C) The vector ﬁelds X
1
, . . . , X
m
and their iterated brackets [X
i
, X
j
],
[[X
i
, X
j
], X
k
], etc. span the tangent space T
x
M at every point of M,
is called Chow’s Condition.
When the Chow’s Condition holds, one says that system (Σ) is controllable.
The reciprocal of Chow’s theorem, that is, if (Σ) is controllable, the X
i
’s and
their iterated brackets span the tangent space at every point of M, is true if
M and the vector ﬁelds are analytic, and false in the C

case (see Sussmann
[36]).
Chow’s Condition is also known under the name of Lie Algebra Rank Con-
dition (LARC) since it states that the rank at every point x of the Lie algebra
Geometry of Nonholonomic Systems 63
generated by the X
i
’s is full (self-evident deﬁnition). In the context of PDE,
it is known under the name of H¨ormander’s Condition: if it is veriﬁed, the
diﬀerential operator X
2
1
+ +X
2
m
is hypoelliptic (H¨ormander’s Theorem).
1.5 The shape of the accessible set in time ε
The purpose of this section is to study the geometric structure of A(x, ε) for
small ε. Let us recall that A(x, ε) denotes the set of points accessible from x
in time ε (or in time ≤ ε, it is the same thing) by means of control u
i
such
that
¸
u
2
i
≤ 1. In other words, A(x, ε) is equal to B(x, ε), the sub-Riemaniann
closed ball centered at x with radius ε.
We suppose in the sequel that Chow’s condition is satisﬁed for the control
system (Σ). Choosing some chart in a neighbourhood of x
0
, we may write (1)
as
˙ x =
m
¸
i=1
u
i
(t)

X
i
(0) +O(|x|)

(6)
The diﬀerential equation (1) thus appear as a perturbation of the trivial equa-
tion
˙ x =
m
¸
i=1
u
i
(t)X
i
(0) (7)
Classical arguments on perturbation of diﬀerential equations show that the
solution of (6) is given by
x(T) = x(0) +
m
¸
i=1

T
0
u
i
(t) dt

X
i
(0) +O(|u|
2
), (8)
where, for u, we use the L
1
norm. Thus, with a linear change of coordinates,
the set of points accessible from x(0) = 0 in time T ≤ ε satisﬁes, for small ε
A(x, ε) ⊂ C[−ε, ε]
n
1
[−ε
2
, ε
2
]
n−n
1
,
where n
1
is the rank of the family X
1
(0), . . . , X
m
(0). As a ﬁrst step, the set
A(x, ε) is then included in a ﬂat pancake.
The expression (8) implies also that the diﬀerential of the end-point map-
ping at the origin in H is the linear map
u →
m
¸
i=1

T
0
u
i
(t) dt

X
i
(0).
64 A. Bella¨ıche, F. Jean and J.-J. Risler
Since, typically, we suppose m < n, this linear map has rank n
1
< n and the
end-point mapping is not a submersion at 0 ∈ H. Following our deﬁnition, this
means that the constant path at x
0
is an abnormal path. This result has a lot
of consequences.
Given a neighbourhood U of x
0
, there may not exist a smooth mapping
x → u
x
of U into H such that the control u
x
steers x
0
to x, or, as well, x
to x
0
. A stronger result is Brockett’s theorem asserting the non-existence of
a continuous feedback law, stabilizing system (Σ) at a given point x
0
, when
m < n.
To go further in the description of the set A(x, ε) we can use the so-called
iterated integrals. For example, the system

˙ x
1
= u
1
˙ x
2
= u
2
˙ x
3
= x
1
u
2
−x
2
u
1
x
1
(0) = x
2
(0) = x
3
(0) = 0
(9)
is solved by
x
1
(T) =

T
0
u
1
(t) dt
x
2
(T) =

T
0
u
2
(t) dt (10)
x
3
(T) =

T
0

t
1
0
u
1
(t
2
) dt
2

u
2
(t
1
) dt
1

T
0

t
1
0
u
2
(t
2
) dt
2

u
1
(t
1
) dt
1
This scheme works for chained or triangular systems, that is, ˙ x
j
depends only
on the controls and x
1
, . . . , x
j−1
. But we shall see that it can be put to work
for any system. To begin with, let us rewrite (9) as
˙ x = u
1
X
1
(x) +u
2
X
2
(x), x(0) = 0.
Then (10) can be read as
x(T) = x(0) +

T
0
u
1
(t) dt

X
1
(0) +

T
0
u
2
(t) dt

X
2
(0) +

T
0

t
1
0
u
1
(t
2
) dt
2

u
2
(t
1
) dt
1

T
0

t
1
0
u
2
(t
2
) dt
2

u
1
(t
1
) dt
1

[X
1
, X
2
](0).
Geometry of Nonholonomic Systems 65
Put this way, the formula for x(T) can readily be generalized to any control
system of the form
˙ x =
¸
1≤i≤m
u
i
X
i
(x).
One gets (the proof is not hard, cf. Brockett [5])
x(T) = x(0) +
¸
1≤i≤m

T
0
u
1
(t) dt +O(|u|
2
)

X
i
(0) +
¸
1≤i<j≤m

T
0

t
1
0
u
i
(t
2
) dt
2

u
j
(t
1
) dt
1

T
0

t
1
0
u
j
(t
2
) dt
2

u
i
(t
1
) dt
1

[X
i
, X
j
](0) +O(|u|
3
),
or, written in a more civilized manner
x(T) = x(0) +
¸
1≤i≤m
(A
T
i
(u) +O(|u|
2
))X
i
(0) +
¸
1≤i<j≤m
A
T
ij
(u)[X
i
, X
j
](0) +O(|u|
3
)
which can, for given T, be considered as a limited expansion of order 2 of the
end-point mapping about 0 in H. Observe that A
T
i
(u) is a linear function with
respect to u ∈ H, and A
T
ij
(u) is a quadratic function on H. This expansion
generalizes the expansion (8) and the set A(x, ε) satisﬁes now
A(x, ε) ⊂ C[−ε, ε]
n
1
[−ε
2
, ε
2
]
n
2
−n
1
[−ε
3
, ε
3
]
n−n
2
. (11)
Having shown that A(x, ε) is contained in some box, one can ask whether
it contains some other box of the same kind. Of course, before this question
can be taken seriously, one has to replace inclusion (11) by
A(x, ε) ⊂ C[−ε, ε]
n
1
[−ε
2
, ε
2
]
n
2
−n
1
[−ε
3
, ε
3
]
n
3
−n
2

where the integers n
1
, n
2
, n
3
, . . . are the best possible.
Now, except for the case n
2
= n which can be dealt with directly, the proof
of an estimate like
C

[−ε, ε]
n
1
[−ε
2
, ε
2
]
n
2
−n
1
[−ε
3
, ε
3
]
n
3
−n
2
⊂ A(x, ε)
requires new techniques and special sets of coordinates. Instead of computing
limited expansion up to order r, we will compute an expansion to order 1 only,
but by assigning weights to the coordinates. This will be done in ''1.6–1.8.
66 A. Bella¨ıche, F. Jean and J.-J. Risler
1.6 Regular and singular points
In the sequel we will ﬁx a manifold M, of dimension n, a system of vector
ﬁelds X
1
, . . . , X
m
on M. We will suppose that X
1
, . . . , X
m
verify the condition
of Chow. We will denote by d the distance deﬁned on M by means of vector
ﬁelds X
1
, . . . , X
m
.
Let L
1
= L
1
(X
1
, . . . , X
m
) be the set of linear combinations, with real
coeﬃcients, of the vector ﬁelds X
1
, . . . , X
m
. We deﬁne recursively L
s
=
L
s
(X
1
, . . . , X
m
) by setting
L
s
= L
s−1
+
¸
i+j=s
[L
i
, L
j
]
for s = 2, 3, . . . , as well as L
0
= 0. The union L = L(X
1
, . . . , X
m
) of all L
s
is
a Lie subalgebra of the Lie algebra of vector ﬁelds on M which is called the
control Lie algebra associated to (Σ).
Now, for p in M, let L
s
(p) be the subspace of T
p
M which consists of the
values X(p) taken, at the point p, by the vector ﬁelds X belonging to L
s
. Chow’s
condition states that for each point p ∈ M, there is a smallest integer r = r(p)
such that L
r(p)
(p) = T
p
M. This integer is called the degree of nonholonomy at
p. It is worth noticing that r(q) ≤ r(p) for q near p. For each point p ∈ M,
there is in fact an increasing sequence of vector subspaces, or ﬂag:
¦0¦ = L
0
(p) ⊂ L
1
(p) ⊂ ⊂ L
s
(p) ⊂ ⊂ L
r(p)
(p) = T
p
M.
We shall denote this ﬂag by T(p).
Points of the control system split into two categories: regular states, around
which the behaviour of the system does not change in a qualitative way, and
singular states, where some qualitative changes occur.
Deﬁnition. We say that p is a regular point if the integers dimL
s
(q) (s = 1,
2, . . . ) remain constant for q in some neighbourhood of p. Otherwise we say
that p is a singular point.
Let us give an example. Take M = R
2
, and
X
1
=

1
0

, X
2
=

0
x
k

(k is some integer). Then for c = (x, y) we have dimL
1
(c) = 1 if x = 0,
dimL
1
(c) = 2 if x = 0, so all points on the line x = 0 are singular and the
others are regular. For other examples, arising in the context of mobile robot
with trailers, see Section 2.
Geometry of Nonholonomic Systems 67
It is worth to notice that, when M and vector ﬁelds X
1
, . . . , X
m
are an-
alytic, regular points form an open dense set in M. Moreover, the sequence
dimL
s
(p), s = 0, 1, 2, . . . , is the same for all regular points in a same connected
component of M and is streactly increasing for 0 ≤ s ≤ r(p). Thus the degree
of nonholonomy at a regular point is bounded by n−m+1 (if we suppose that
no one of the X
i
’s is at each point a linear combination of the other vector
ﬁelds). It may be easily computed when the deﬁnition of the X
i
’s allows sym-
bolic computation, as for an analytic function, being non-zero at the formal
level is equivalent to being non-zero at almost every point.
Computing, or even bounding the degree of nonholonomy at singular points
is much harder, and motivated, for some part, sections 2 and 3 (see also
[9,11,19,24]).
1.7 Distance estimates and privileged coordinates
Now, ﬁx a point p in M, regular or singular. We set n
s
= dimL
s
(p) (s =
0, 1, . . . , r).
Consider a system of coordinates centered at p, such that the diﬀerentials
dy
1
, . . . , dy
n
form a basis of T

p
M adapted to T(p) (we will see below how to
build such coordinates). If r = 1 or 2, then it is easy to prove the following
local estimate for the sub-Riemannian distance. For y closed enough to 0, we
have
d(0, (y
1
, . . . , y
n
)) · [y
1
[ + +[y
n
1
[ +[y
n
1
+1
[
1/2
+ +[y
n
[
1/2
(12)
where n
1
= dimL
1
(p) (the notation f(y) · g(y) means that there exists con-
stants c, C > 0 such that cg(y) ≤ f(y) ≤ Cg(y)). Coordinates y
1
, . . . , y
n
1
are
said to be of weight 1, and coordinates y
n
1
+1
, . . . , y
n
are said to be of weight
2.
In the general case, we deﬁne the weight w
j
as the smallest integer s such
that dy
j
is non identically zero on L
s
(p). (So that w
j
= s if n
s−1
< j ≤ n
s
.)
Then the proper generalization of (12) would be
d(0, (y
1
, . . . , y
n
)) · [y
1
[
1/w
1
+ +[y
n
[
1/w
n
. (13)
It turns out that this estimate is generically false as soon as r ≥ 3. A simple
counter-example is given by the system
X
1
=

¸
1
0
0
¸

, X
2
=

¸
0
1
x
2
+y
¸

(14)
68 A. Bella¨ıche, F. Jean and J.-J. Risler
on R
3
. We have
L
1
(0) = L
2
(0) = R
2
¦0¦, L
3
(0) = R
3
,
so that y
1
= x, y
2
= y, y
3
= z are adapted coordinates and have weight 1, 1
and 3. In this case, the estimates (13) cannot be true. Indeed, this would imply
[z[ ≤ const.

d(0, (x, y, z)

3
,
whence

z

exp(tX
2
)p

≤ const. t
3
,
but this is impossible since
d
2
dt
2
z

exp(tX
2
)(p)

t=0
= (X
2
2
z)(p) = 1.
However a slight nonlinear change of coordinates allows for (13) to hold. It is
suﬃcient to replace y
1
, y
2
, y
3
by z
1
= x, z
2
= y, z
3
= z −y
2
/2.
In the above example, the point under consideration is singular, but one can
give similar examples with regular p in dimension ≥ 4. To formulate conditions
on coordinate systems under which estimates like (13) may hold, we introduce
some deﬁnitions.
Call X
1
f, . . . , X
m
f the nonholonomic partial derivatives of order 1 of f
relative to the considered system (compare to ∂
x
1
f, . . . , ∂
x
n
f). Call further
X
i
X
j
f, X
i
X
j
X
k
f, . . . the nonholonomic derivatives of order 2, 3, . . . of f.
Proposition 1.4. For a smooth function f deﬁned near p, the following con-
ditions are equivalent:
(i) One has f(q) = O

d(p, q)
s

for q near p.
(ii) The nonholonomic derivatives of order ≤ s −1 of f vanish at p
This is proven by the same kind of computations as in the study of example
(14).
Deﬁnition. If Condition (i), or (ii), holds, we say that f is of order ≥ s at p.
Deﬁnition. We call local coordinates z
1
, . . . , z
n
centered at p a system of
privileged coordinates if the order of z
j
at p is equal to w
j
(j = 1, . . . , n).
If z
1
, . . . , z
n
are privileged coordinates, then dz
1
, . . . , dz
n
form a basis of
T

p
M adapted to T(p). The converse is not true. Indeed, if dz
1
, . . . , dz
n
form
an adapted basis, one can show that the order of z
j
is ≤ w
j
, but it may be
< w
j
: for the system (14), the order of coordinate y
3
= z at 0 is 2, while w
3
= 3.
Geometry of Nonholonomic Systems 69
To prove the existence, in an eﬀective way, of privileged coordinates, we
ﬁrst choose vector ﬁelds Y
1
, . . . , Y
n
whose values at p form a basis of T
p
M in
the following way.
First, choose among X
1
, . . . , X
m
a number n
1
of vector ﬁelds such that
their values form a basis of L
1
(p). Call them Y
1
, . . . , Y
n
1
. Then for each s
(s = 2, . . . , r) choose vector ﬁelds of the form
Y
i
1
i
2
...i
s−1
i
s
= [X
i
1
, [X
i
2
, . . . [X
i
s−1
, X
i
s
] . . . ]] (15)
which form a basis of L
s
(p) mod L
s−1
(p), and call them Y
n
s−1
+1
, . . . , Y
n
s
.
Choose now any system of coordinates y
1
, . . . , y
n
centered at p such that
the diﬀerentials dy
1
, . . . , dy
n
form a basis dual to Y
1
(p), . . . , Y
n
(p). (Starting
from any system of coordinates x
1
, . . . , x
n
centered at p, one can obtain such
a system y
1
, . . . , y
n
by a linear change of coordinates.)
Theorem 1.5. The functions z
1
, . . . , z
n
recursively deﬁned by
z
q
= y
q

¸
{α| w(α)<w
q
}
1
α
1
! . . . α
q−1
!
(Y
α
1
1
. . . Y
α
q−1
q−1
y
q
)(p) z
α
1
1
. . . z
α
q−1
q−1
(16)
form a system of privileged coordinates near p. (We have set w(α) = w
1
α
1
+
+w
n
α
n
.)
The proof is based on the following lemma.
Lemma 1.6. For a function f to be of order > s at p, it is necessary and
suﬃcient that
(Y
α
1
1
. . . Y
α
n
n
f) (p) = 0
for all α = (α
1
, . . . , α
n
) such that w
1
α
1
+ +w
n
α
n
≤ s.
This is is an immediate consequence of the following, proved by J.-J. Risler
[4]: any product X
i
1
X
i
2
. . . X
i
s
, where i
1
, . . . , i
s
are integers, can be rearranged
as a sum of ordered monomials
¸
c
α
1
...α
n
(x)Y
α
1
1
. . . Y
α
n
n
with w
1
α
1
+ + w
n
α
n
≤ s, and where the c
α
1
...α
n
’s are smooth functions.
This result reminds of the Poincar´e-Birkhoﬀ-Witt theorem.
Observe that the coordinates z
1
, . . . , z
n
supplied by the construction of The-
orem 1.5 are given from original coordinates by expressions of the form
z
1
= y
1
z
2
= y
2
+ pol(y
1
)

z
n
= y
n
+ pol(y
1
, . . . , y
n−1
)
70 A. Bella¨ıche, F. Jean and J.-J. Risler
where pol denotes a polynomial, without constant or linear term, and that the
reciprocal change of coordinates has exactly the same form.
Other ways of getting privileged coordinates are to use the mappings
(z
1
, . . . , z
n
) → exp(z
1
Y
1
+ +z
n
Y
n
) p (see [14]),
(z
1
, . . . , z
n
) → exp(z
n
Y
n
) exp(z
1
Y
1
) p (see [18]).
Following the usage in Lie group theory, such coordinates are called canonical
coordinates of the ﬁrst (resp. second) kind.
1.8 Ball-Box Theorem
Using privileged coordinates, the control system (Σ) may be rewritten near p
as
˙ z
j
=
m
¸
i=1
u
i

f
ij
(z
1
, . . . , z
j−1
) +O

|z|
w
j

(j = 1, . . . , n),
where the functions f
ij
are weighted homogeneous polynomials of degree w
j
−1.
By dropping the O

|z|
w
j

, we get a control system (
´
Σ)
˙ z
j
=
m
¸
i=1
u
i

f
ij
(z
1
, . . . , z
j−1
)

(j = 1, . . . , n),
or, in short,
˙ z =
m
¸
i=1
u
i
´
X
i
(z),
by setting
´
X
i
=
¸
n
j=1
f
ij
(z
1
, . . . , z
n
)∂
z
j
. This system is nilpotent and the vec-
tor ﬁelds
´
X
i
are homogeneous of degree -1 under the non-isotropic dilations
(z
1
, . . . , z
n
) → (λ
w
1
z
1
, . . . , λ
w
n
z
n
). The system (
´
Σ) is called the nilpotent ho-
mogeneous approximation of the system (Σ). For the sub-Riemaniann distance
ˆ
d associated to the nilpotent approximation, the estimate (17) below can be
shown by homogeneity arguments. The following theorem is then proved by
comparing the distances d and
ˆ
d (for a detailed proof, see Bella¨ıche [2]).
Theorem 1.7. The estimate
d (0, (z
1
, . . . , z
n
)) · [z
1
[
1/w
1
+ +[z
n
[
1/w
n
(17)
holds near p if and only if z
1
, . . . , z
n
form a system of privileged coordinates at
p.
Geometry of Nonholonomic Systems 71
The estimate (17) of the sub-Riemannian distance allows to describe the
shape of the accessible set in time ε. A(x, ε) can indeed be viewed as the sub-
Riemannian ball of radius ε and Theorem 1.7 implies
A(x, ε) · [−ε
w
1
, ε
w
1
] [−ε
w
n
, ε
w
n
].
Then A(x, ε) looks like a box, the sides of the box being of length proportionnal
to ε
w
1
, . . . , ε
w
n
. By the fact, Theorem 1.7 is called the Ball-Box Theorem (see
Gromov [16]).
1.9 Application to complexity of nonholonomic motion planning
The Ball-Box Theorem can be used to address some issues in complexity of
motion planning. The problem of nonholonomic motion planning with obstacle
avoidance has been presented in Chapter [Laumond-Sekhavat]. It can be for-
mulated as follows. Let us consider a nonholonomic system of control in the
form (Σ). We assume that Chow’s Condition is satisﬁed. The constraints due
to the obstacles can be seen as closed subsets F of the conﬁguration space M.
The open set M − F is called the free space. Let a, b ∈ M − F. The motion
planning problem is to ﬁnd a trajectory of the system linking a and b contained
in the free space.
From Chow’s Theorem ('1.4), deciding the existence of a trajectory linking
a and b is the same thing as deciding if a and b are in the same connected
component of M −F. Since M −F is an open set, the connexity is equivalent
to the arc connexity. Then the problem is to decide the existence of a path in
M −F linking a and b. In particular this implies that the decision part of the
motion planning problem is the same for nonholonomic controllable systems as
for holonomic ones.
For the complete problem, some algorithms are presented in Chapter
[Laumond–Sekhavat]. In particular we see that there is a general method (called
“Approximation of a collision-free holonomic path”). It consists in dividing the
problem in two parts:
– ﬁnd a path in the free space linking the conﬁgurations a and b (this path
is called also the collision-free holonomic path);
– approximate this path by a trajectory of the system close enough to be
contained in the free space.
The existence of a trajectory approximating a given path can be shown as
follows. Choose an open neighbourhood U of the holonomic path small enough
to be contained in M −F. We can assume that U is connected and then, from
Chow’s Theorem, there is a trajectory lying in U and linking a and b.
72 A. Bella¨ıche, F. Jean and J.-J. Risler
What is the complexity of this method?
The complexity of the ﬁrst part (i.e., the motion planning problem for
holonomic systems) is very well modeled and understood. It depends on the
geometric complexity of the environment, that is on the complexity of the
geometric primitives modeling the obstacles and the robot in the real world
(see [6,30]).
The complexity of the second part requires more developments. It can be
seen actually as the “complexity” of the output trajectory. We have then to
deﬁne this complexity for a trajectory approximating a given path.
Let γ be a collision-free path (provided by solving the ﬁrst part of the
problem). For a given ρ, we denote by Tube(γ, ρ) the reunion of the balls of
radius ρ centered at q, for any point q of γ. Let ε be the biggest radius ρ such
that Tube(γ, ρ) is contained in the free space. We call ε the size of the free space
around the path γ. The output trajectories will be the trajectories following γ
to within ε, that is the trajectories contained in Tube(γ, ε).
Let us assume that we have already deﬁned a complexity σ(c) of a trajectory
c. We denote by σ(γ, ε) the inﬁmum of σ(c) for c trajectory of the system linking
a and b and contained in Tube(γ, ε). σ(γ, ε) gives a complexity of an output
trajectory. Thus we can choose it as a deﬁnition of the complexity of the second
part of our method.
It remains to deﬁne the complexity of a trajectory. We will present here
some possibilities.
Let us consider ﬁrst bang-bang trajectories, that is trajectories obtained
with controls in the form (u
1
, . . . , u
m
) = (0, . . . , ±1, . . . , 0). For such a tra-
jectory the complexity σ(c) can be deﬁned as the number of switches in the
controls associated to c.
We will now extend this deﬁnition to any kind of trajectory. Following
[3], a complexity can be derived from the topological complexity of a real-
valued function (i.e., the number of changes in the sign of variation of the
function). The complexity σ(c) appears then as the total number of sign changes
for all the controls associated to the trajectory c. Notice that, for a bang-
bang trajectory, this deﬁnition coincides with the previous one. We will call
topological complexity the complexity σ
t
(γ, ε) obtained with this deﬁnition.
Let us recall that the complexity of an algorithm is the number of elemen-
tary steps needed to get the result. For the topological complexity, we have
chosen as elementary step the construction of a piece of trajectory without
change of sign in the controls (that is without manoeuvring, if we think to a
car-like robot).
Geometry of Nonholonomic Systems 73
Another way to deﬁne the complexity is to use the length introduced in '1.3
(see Formula (4)). For a trajectory c contained in Tube(γ, ε), we set
σ
ε
(c) =
length(c)
ε
and we call metric complexity the complexity σ
m
(γ, ε) obtained with σ
ε
(c). Let
us justify this deﬁnition on an example. Consider a path γ such that, for any
q ∈ γ and any i ∈ ¦1, . . . , m¦, the angle between T
q
γ and X
i
(q) is greater than
a given θ = 0. Then, for a bang-bang trajectory without switches contained
in Tube(γ, ε), the length cannot exceed ε/ sin θ. Thus, the number of switches
in a bang-bang trajectory (⊂ Tube(γ, ε)) is not greater than the length of the
trajectory divided by ε (up to a constant). This links σ
ε
(c) and σ
m
(γ, ε) to the
topological complexity.
Let us give an estimation of these complexities for the system of the car-like
robot (see Chapter [Laumond–Sekhavat]). The conﬁgurations are parametrized
by q = (x, y, θ)
T
∈ R
2
o
1
and the system is given by:
˙ q = u
1
X
1
+u
2
X
2
, with X
1
=

¸
cos θ
sin θ
0
¸

, X
2
=

¸
0
0
1
¸

.
It is well-known that, for all q ∈ R
2
o
1
, the space L
2
(q) has rank 3 (see
Section 2).
Let us consider a non-feasible path γ ⊂ R
2
o
1
. When γ is C
1
and its
tangent vector is never in L
1
(q), one can link the complexity σ
m
(γ, ε) to the
number of ε-balls needed to cover γ. By the Ball-Box Theorem ('1.8), this
number is greater than Kε
−2
, where the constant depends on γ.
More precise results have been proven by F. Jean (see also [22] for weaker
estimates). Let T(q) (|T| = 1) be the tangent vector to γ. Assume that T(q)
belongs to L
2
(q) −L
1
(q) almost everywhere and that γ is parametrized by its
arclength s. Then we have, for small ε = 0:
σ
t
(γ, ε) and σ
m
(γ, ε) · ε
−2

L
0
det(X
1
, X
2
, T)(γ(s)) ds
(let us recall that the notation σ(γ, ε) · f(γ, ε) means that there exist c, C > 0
independant on γ and ε such that cf(γ, ε) ≤ σ(γ, ε) ≤ Cf(γ, ε)).
2 The car with n trailers
2.1 Introduction
This section is devoted to the study of an example of nonholonomic control
system: the car with n trailers. This system is nonholonomic since it is subject
74 A. Bella¨ıche, F. Jean and J.-J. Risler
to non integrable constraints, the rolling without skiding of the wheels. The
states of the system are given by two planar coordinates and n + 1 angles: the
conﬁguration space is then R
2
(o
1
)
n+1
, a (n+3)-dimensional manifold. There
are only two inputs, namely one tangential velocity and one angular velocity
which represent the action on the steering wheel and on the accelerator of the
car.
Historically the problem of the car is important, since it is the ﬁrst non-
holonomic system studied in robotics. It has been intensively treated in many
papers throughout the litterature, in particular from the point of view of ﬁnd-
ing stabilizing control laws: see e.g. Murray and Sastry ([25]), Fliess et al. ([8]),
Laumond and Risler ([23]).
We are interested here in the properties of the control system (see below
'2.2). The ﬁrst question is indeed the controllability. We will prove in '2.4 that
the system is controllable at each point of the conﬁguration space. The second
point is the study of the degree of nonholonomy. We will give in '2.6 an upper
bound which is exponential in terms of the number of trailers. This bound is
the sharpest one since it is a maximum. We give also the value of the degree
of nonholonomy at the regular points ('2.5). The last problem is the singular
locus. We have to ﬁnd the set of all the singular points (it is done in '2.5) and
also to determinate its structure. We will see in '2.7 that one has a natural
stratiﬁcation of the singular locus related to the degree of nonholonomy.
2.2 Equations and notations
Diﬀerent representations have been used for the car with n trailers. The problem
is to choose the variables in such a way that simple induction relation may
appear. The kinematic model introduced by Fliess [8] and Sørdalen [33] satisﬁes
this condition. A car in this context will be represented by two driving wheels
connected by an axle. The kinematic model of a car with two degrees of freedom
pulling n trailers can be given by:
˙ x = cos θ
0
v
0
,
˙ y = sin θ
0
v
0
,
˙
θ
0
= sin(θ
1
−θ
0
)
v
1
r
1
,
.
.
.
˙
θ
i
= sin(θ
i+1
−θ
i
)
v
i+1
r
i+1
,
.
.
.
˙
θ
n−1
= sin(θ
n
−θ
n−1
)
v
n
r
n
,
˙
θ
n
= ω,
(18)
Geometry of Nonholonomic Systems 75
where the two inputs of the system are the angular velocity ω of the car and
its tangential velocity v = v
n
. The state of the system is parametrized by
q = (x, y, θ
0
, . . . , θ
n
)
T
where:
– (x, y) are the coordinates of the center of the axle between the two wheels
of the last trailer,
– θ
n
is the orientation angle of the pulling car with respect to the x-axis,
– θ
i
, for 0 ≤ i ≤ n − 1, is the orientation angle of the trailer (n − i) with
respect to the x-axis.
Finally r
i
is the distance from the wheels of trailer n − i + 1 to the wheels of
trailer n−i, for 1 ≤ i ≤ n−1, and r
n
is the distance from the wheels of trailer
1 to the wheels of the car.
The point of this representation is that the system is viewed from the last
trailer to the car: the numbering of the angles is made in this sense and the
position coordinates are those of the last trailer. The converse notations would
be more natural but unfortunately it would lead to complicated computations.
The tangential velocity v
i
of the trailer n −i is given by:
v
i
=
n
¸
j=i+1
cos(θ
j
−θ
j−1
) v,
or v
i
= f
i
v where
f
i
=
n
¸
j=i+1
cos(θ
j
−θ
j−1
).
The motion of the system is then characterized by the equation:
˙ q = ωX
1
(q) +vX
2
(q)
with the control system ¦X
1
, X
2
¦ given by:
X
1
=

¸
¸
¸
¸
¸
¸
0
0
.
.
.
0
1
¸

X
2
=

¸
¸
¸
¸
¸
¸
cos θ
0
f
0
sin θ
0
f
0
.
.
.
1
r
n
sin(θ
n
−θ
n−1
)
0
¸

76 A. Bella¨ıche, F. Jean and J.-J. Risler
2.3 Examples: the car with 1 and 2 trailers
Let us study ﬁrst the example of the car with one trailer. The state is q =
(x, y, θ
0
, θ
1
)
T
and the vector ﬁelds are:
X
1
=

¸
¸
¸
0
0
0
1
¸

X
2
=

¸
¸
¸
cos θ
0
cos(θ
1
−θ
0
)
sin θ
0
cos(θ
1
−θ
0
)
1
r
1
sin(θ
1
−θ
0
)
0
¸

We want to solve the three problems above (controllability, degree of nonholon-
omy, singular set). For that, we have to study the Lie Algebra generated by the
control system (see '1.6). Let us compute the ﬁrst brackets of X
1
and X
2
:
[X
1
, X
2
] =

¸
¸
¸
−cos θ
0
sin(θ
1
−θ
0
)
−sin θ
0
sin(θ
1
−θ
0
)
1
r
1
cos(θ
1
−θ
0
)
0
¸

, [X
2
, [X
1
, X
2
]] =
1
r
1

¸
¸
¸
sin θ
0
−cos θ
0

1
r
1
0
¸

.
It is straightforward that, for any q, the vectors X
1
(q), X
2
(q), [X
1
, X
2
](q) and
[X
2
, [X
1
, X
2
]](q) are independant. This implies that, for each q:
dimL
1
(X
1
, X
2
)(q) = 2,
dimL
2
(X
1
, X
2
)(q) = 3,
dimL
3
(X
1
, X
2
)(q) = 4,
where L
k
(X
1
, X
2
)(q) is the linear subspace generated by the values at q taken
by the brackets of X
1
and X
2
of length ≤ k.
These dimensions allow us to resolve our three problems. First, the condi-
tions of the Chow theorem are satisﬁed at each point (since the conﬁguration
space is 4-dimensional), so the car with one trailer is controllable. On the other
hand, the dimensions of the L
k
(X
1
, X
2
)(q) doesn’t depend on q, so all the
points are regular and the degree of nonholonomy is always equal to 3.
Let us consider now the car with 2 trailers. If we compute the ﬁrst brackets,
we obtain the following results:
– if θ
2
− θ
1
= ±
π
2
, then the ﬁrst independant brackets are X
1
(q), X
2
(q),
[X
1
, X
2
](q), [X
2
, [X
1
, X
2
]](q) and [X
2
, [X
2
, [X
1
, X
2
]]](q);
– if θ
2
− θ
1
= ±
π
2
, then the ﬁrst independant brackets are X
1
(q), X
2
(q),
[X
1
, X
2
](q), [X
2
, [X
1
, X
2
]](q) and [X
1
[X
2
, [X
2
, [X
1
, X
2
]]]](q).
Thus the car with 2 trailers is also controllable since, in both cases, the subspace
L
5
(X
1
, X
2
)(q) is 5-dimensional. However we have now a singular set, the points
q such that θ
2
− θ
1
= ±
π
2
. At these points, the degree of nonholonomy equals
5 and at the regular points it equals 4.
Geometry of Nonholonomic Systems 77
2.4 Controllability
The controllability of the car with n trailers has ﬁrst been proved by Lau-
mond ([21]) in 1991. He used the kinematic model (18) but a slightly diﬀerent
parametrization where the equation were given in terms of ϕ
i
= θ
i
−θ
i−1
and
(x

, y

) ((x

, y

) is the position of the pulling car). The proof of the controllabil-
ity given here is an adaptation of the proof of Laumond for our parametrization.
This adaptation has been presented by Sørdalen ([33]).
Theorem 2.1. The kinematic model of a car with n trailers is controllable.
Proof. Let us recall some notations introduced in '1.6.
Let L
1
(X
1
, X
2
) be the set of linear combinations with real coeﬃcients of
X
1
and X
2
. We deﬁne recursively the distribution L
k
= L
k
(X
1
, X
2
) by:
L
k
= L
k−1
+
¸
i+j=k
[L
i
, L
j
] (19)
where [L
i
, L
j
] denotes the set of all brackets [V, W] for V ∈ L
i
and W ∈ L
j
.
The union L(X
1
, X
2
) of all L
k
(X
1
, X
2
) is the Control Lie Algebra of the system
¦X
1
, X
2
¦.
Let us now denote L

1
(X
1
, X
2
) the set of linear combinations of X
1
and
X
2
which coeﬃcients are smooth functions. By the induction (19) we construct
from L

1
(X
1
, X
2
) the sets L

k
(X
1
, X
2
) and L

(X
1
, X
2
).
For a given state q, we denote by L
k
(X
1
, X
2
)(q), resp. L

k
(X
1
, X
2
)(q), the
subspace of T
q
(R
2
(o
1
)
n+1
) wich consists of the values at q taken by the
vector ﬁelds belonging to L
k
(X
1
, X
2
), resp. L

k
(X
1
, X
2
).
Obviously, the sets L
k
(X
1
, X
2
) and L

k
(X
1
, X
2
) are diﬀerent. However, for
each k ≥ 1 and each q, the linear subspaces L
k
(X
1
, X
2
)(q) and L

k
(X
1
, X
2
)(q)
are equal. We are going to prove this equality for k = 2 (the proof for any k
can be easily deduced from this case).
By deﬁnition L
2
(X
1
, X
2
)(q
0
) is the linear subspace generated by X
1
(q
0
), X
2
(q
0
)
and [X
1
, X
2
](q
0
). L

2
(X
1
, X
2
)(q
0
) is generated by X
1
(q
0
), X
2
(q
0
) and all the
[f(q)X
1
, g(q)X
2
](q
0
) with f and g smooth functions. Then L
2
(X
1
, X
2
)(q
0
) ⊂
L

2
(X
1
, X
2
)(q
0
).
From the other hand a bracket [fX
1
, gX
2
](q
0
) is equal to:
fg[X
1
, X
2
](q
0
) −g(X
2
.f)X
1
(q
0
) +f(X
1
.g)X
2
(q
0
).
Thus [fX
1
, gX
2
](q
0
) is a linear combination with real coeﬃcients of X
1
(q
0
),
X
2
(q
0
) and [X
1
, X
2
](q
0
). Then L

2
(X
1
, X
2
)(q
0
) = L
2
(X
1
, X
2
)(q
0
), which prove
our statement for k = 2.
To establish the controllability, we want to apply Chow’s theorem (see '1.4):
we have then to show that the dimension of L(X
1
, X
2
)(q) is n + 3. For that,
78 A. Bella¨ıche, F. Jean and J.-J. Risler
we are going to prove that L

(X
1
, X
2
)(q) is n + 3-dimensionnal and use the
relation L

(X
1
, X
2
)(q) = L(X
1
, X
2
)(q).
Let us introduce the following vector ﬁelds, for i ∈ ¦0, . . . , n − 1¦, which
belong to L

(X
1
, X
2
):
W
0
= X
1
W
i+1
= r
i+1
(sin ϕ
i
V
i
+ cos ϕ
i
Z
i
)
V
0
= X
2
V
i+1
= cos ϕ
i
V
i
−sin ϕ
i
Z
i
)
Z
0
= [X
1
, X
2
] Z
i+1
= [W
i+1
, V
i+1
].
The form of these vector ﬁelds can be computed by induction. We give only
the expression of the interesting ones:

W
i
= (0, . . . , 0
. .. .
n−i+2
, 1, 0, . . . , 0
. .. .
i
)
T
, i = 0, . . . , n
V
n
= (cos ϕ
0
,
1
r
1
sin ϕ
0
, 0, . . . , 0)
T
,
Z
n
= (−sin ϕ
0
,
1
r
1
cos ϕ
0
, 0, . . . , 0)
T
.
(20)
We have n + 3 vector ﬁelds which values at each point of the conﬁgu-
ration space are independant since their determinant equals 1/r
1
. Therefore
L

(X
1
, X
2
)(q), and then L(X
1
, X
2
)(q), are equal to T
q
(R
2
(o
1
)
n+1
). We can
then apply Chow’s theorem and get the result.
Remark. A stronger concept than controllability is given by the following
deﬁnition: the system ¦X
1
, X
2
¦ is called well-controllable if there exists a basis
of n +3 vector ﬁelds in L(X
1
, X
2
)(q) such that the determinant of the basis is
constant for each point q of the conﬁguration space.
The n + 3 vector ﬁelds that we have constructed in the proof satisfy this con-
dition. So the car with n trailers is well-controllable.
2.5 Regular points
Let us denote β
n
(q) the degree of nonholonomy of the car with n trailers. It
can be deﬁned as:
β
n
(q) = min¦k [ dimL
k
(X
1
, X
2
)(q) = n + 3¦.
We have already computed ('2.3) the values of this degree for n = 1 and 2:
β
1
(q) = 3, β
2
(q) = 4 or 5.
It appears, for n = 2, that the conﬁgurations where the car and the ﬁrst
trailer are perpendicular have particular properties. This fact can be generalized
as follows ([19]):
Geometry of Nonholonomic Systems 79
Theorem 2.2. The singular locus of the system is the set of the points for
which there exists k ∈ [2, n] such that θ
k
−θ
k−1
= ±
π
2
.
The regular points are then the conﬁguration where no two consecutives
trailers (except maybe the last two) are perpendicular. It results from '1.6
that the degree of nonholonomy at regular points is ≤ n+2. In fact this degree
is exactly n+2. It can be shown for instance by converting the system into the
so-called chained form as in Sørdalen ([33]). This gives us a ﬁrst result on the
degree of nonholonomy:
Theorem 2.3. At a regular point, i.e., a point such that θ
k
− θ
k−1
= ±
π
2
∀k = 2, . . . , n, the degree of nonholonomy equals n + 2.
2.6 Bound for the degree of nonholonomy
A ﬁrst bound for this degree has been given by Laumond ([21]) as a direct
consequence of the proof of controllability: we just have to remark that the
vector ﬁelds (20) belong to L

2
n+1
(X
1
, X
2
). Thus the degree of nonholonomy
is bounded by 2
n+1
. However this bound is too large, as it can be seen in the
examples with 1 or 2 trailers.
It has been proved in 1993 ([24,34]) that a better bound is the (n+3)-th
Fibonacci number, which is deﬁned by F
0
= 0, F
1
= 1, F
n+3
= F
n+2
+ F
n+1
.
Luca and Risler have also proved that this bound is a maximum which is
reached if and only if each trailer (except the last one) is perpendicular to the
previous one.
Theorem 2.4. The degree of nonholonomy β
n
(q) for the car with n trailers
satisﬁes:
β
n
(q) ≤ F
n+3
.
Moreover, the equality happens if and only if θ
i
−θ
i−1
= ±
π
2
, i = 2, . . . , n.
Let us remark that this bound is exponential in n since the value of the
n-th Fibonacci number is given by:
F
n
=
1

5
¸
1 +

5
2

n

1 −

5
2

n
¸
.
2.7 Form of the singular locus
The last problem is to determinate the form of the singular locus, which is given
in Theorem 2.2. We already know the values of the degree of nonholonomy in
two extremal cases:
80 A. Bella¨ıche, F. Jean and J.-J. Risler
– if no two consecutive trailers are perpendicular, β
n
(q) = n + 2;
– if each trailer is perpendicular to the previous one, β
n
(q) = F
n+3
.
We have now to characterize the states intermediate between these both cases.
For a given state q, we have the following sequence of dimensions:
2 = dimL
1
(X
1
, X
2
)(q) ≤ ≤ dimL
k
(X
1
, X
2
)(q) ≤ ≤ n + 3. (21)
Let us recall that, if this sequence stays the same in an open neighbourhood
of q, the state q is a regular point of the control system; otherwise, q is a
singular point (see '1.6). Thus to give the sequence (21) at any state q allows
to characterize the singular locus.
To determinate the sequence (21), we only need the dimensions of the spaces
L
k
(X
1
, X
2
)(q) such that L
k
(X
1
, X
2
)(q) = L
k−1
(X
1
, X
2
)(q). For that we deﬁne,
for i ∈ ¦1, n + 3¦:
β
n
i
(q) = min¦k [ dimL
k
(X
1
, X
2
)(q) ≥ i¦
In other words, the fact that k = β
n
i
(q) is equivalent to:

dimL
k
(X
1
, X
2
)(q) ≥ i
dimL
k−1
(X
1
, X
2
)(q) < i
(22)
The sequence (21) can be entirely deduced from the sequence β
n
i
(q), i =
1, . . . , n+3. Hence the singular locus is completly characterized by the β
n
i
(q)’s
which we are going to study. Let us remark that β
n
n+3
(q) is the degree of non-
holonomy β
n
(q).
According to its deﬁnition, β
n
i
(q) increases with respect to i, for i lesser
than dimL(X
1
, X
2
)(q) (when i is strictly greater than this dimension, β
n
i
(q) is
equal to −∞). In fact we will establish (in Theorem 2.5) that this sequence is
strictly increasing with respect to i for 2 ≤ i ≤ n + 3. In other words, we will
prove that, for 2 ≤ i ≤ n +3, β
n
i
(q) > −∞ and that k = β
n
i
(q) is equivalent to
(compare with (22)):

dimL
k
(X
1
, X
2
)(q) = i
dimL
k−1
(X
1
, X
2
)(q) = i −1
We can also calculate easily the ﬁrst values of these sequences. It is clear
that the family X
1
, X
2
, [X
1
, X
2
] is three dimensional for all q (see the examples
n = 1 and 2). Then the dimensions of L
1
(X
1
, X
2
)(q) and L
2
(X
1
, X
2
)(q) are
respectively 2 and 3 and we have, for all state q:
β
n
1
(q) = 1 β
n
2
(q) = 1 β
n
3
(q) = 2. (23)
Geometry of Nonholonomic Systems 81
Finally, for q ∈ R
2
(o
1
)
n+1
and 1 ≤ p < n, we will denote the projection on
the ﬁrst (n + 3 − p) coordinates of q by q
p
, that is q
p
= (x, y, θ
0
, . . . , θ
n−p
)
T
.
q
p
belongs to R
2
(o
1
)
n−p+1
and it can be seen as the state of a car with
n − p trailers. Hence we can associate to this state the sequence β
n−p
j
(q
p
),
j = 1, . . . , n −p + 3.
We can now give the complete characterization of the singular locus, i.e., the
computation of the β
n
i
(q) and the determination of a basis of T
q
(R
2
(o
1
)
n+1
).
The following theorem has been proved by F. Jean in ([19]). We restrict us to
the case where the distances r
i
equal 1.
Theorem 2.5. Let a
p
deﬁned by a
1
= π/2 and a
p
= arctan sin a
p−1
. ∀q ∈
R
2
(o
1
)
n+1
, for 2 ≤ i ≤ n + 3, β
n
i
(q) is streactly increasing with respect to i
and can be computed, for i ∈ ¦3, n + 3¦, by the following induction formulae:
1. if θ
n
−θ
n−1
= ±
π
2
, then
β
n
i
(q) = β
n−1
i−1
(q
1
) +β
n−2
i−2
(q
2
)
2. if ∃p ∈ [1, n − 2] and = ±1 such that θ
k
− θ
k−1
= a
k−p
for every
k ∈ ¦p + 1, n¦, then
β
n
i
(q) = 2β
n−1
i−1
(q
1
) −β
n−2
i−2
(q
2
)
3. otherwise,
β
n
i
(q) = β
n−1
i−1
(q
1
) + 1.
Moreover, at a point q, we can construct a basis B = ¦B
i
, i = 1 . . . n + 3¦ of
T
q
(R
2
(o
1
)
n+1
) by:

B
1
= X
1
B
2
= X
2
B
i
= [X
1
, X
2
, . . . , X
2
. .. .
β
n−1
i−1
(q
1
)
, X
1
, . . . , X
1
. .. .
β
n
i
(q)−β
n−1
i−1
(q
1
)−1
] for i > 2,
where [X
i
1
, . . . , X
i
s
] denotes [[. . . [X
i
1
, X
i
2
], . . . , X
i
s−1
], X
i
s
].
Let us consider the sequence (β
n
i
(q))
i=2,...,n+3
(we remove β
n
1
(q) because it
is always equal to β
n
2
(q)). For example, for n = 2, the sequence (β
2
i
(q)) is equal
to (1, 2, 3, 5) on the hyperplanes θ
2
− θ
1
= ±
π
2
. The complementary of these
two hyperplanes are the regular points of the system and corresponds to the
values (1, 2, 3, 4) of the sequence (β
2
i
(q)).
As we have seen in Theorem 2.2, the singular locus is the union of the the
hyperplanes θ
k
−θ
k−1
= ±
π
2
, 2 ≤ k ≤ n. On each hyperplane we have a generic
sequence (β
n
i
(q)) and the non generic points are:
82 A. Bella¨ıche, F. Jean and J.-J. Risler
- either in the intersection with another hyperplane θ
j
− θ
j−1
= ±
π
2
which
corresponds to the case 1 of Theorem 2.5;
- either in the intersection with an hyperplane θ
k+1
− θ
k
= ±a
2
, (a
2
=
π
4
)
which corresponds to the case 2 of Theorem 2.5.
For these ”more singular” sets, we have again some generic and some singular
points that we can ﬁnd with Theorem 2.5. We have then a stratiﬁcation of
the singular locus by the sequence (β
n
i
(q)). Let us consider for instance the
hyperplane θ
2
−θ
1
=
π
2
. The generic sequence (β
n
i
(q)) is equal to (1, 2, . . . , n+
1, n+3) (it is a direct application of the recursion formulae of Theorem 2.5). The
non generic points are at the intersection with the hyperplanes θ
j
−θ
j−1
= ±
π
2
,
j = 3, . . . , n and with θ
3
−θ
2
= ±
π
4
. On θ
2
−θ
1
=
π
2
, θ
3
−θ
2
=
π
4
, the generic
sequence is (1, 2, . . . , n + 1, n + 4) and we can continue the decomposition.
Let us remark at last that Theorem 2.5 contains all the previous results.
For instance, it proves that β
n
n+3
(q) is always deﬁnite ( i.e., > −∞): the rank
of L(X
1
, X
2
)(q) at any point is then n + 3 and the system is controllable. We
can also compute directly the values of β
n
n+3
(q) and then its maximum, and so
on.
3 Polynomial systems
3.1 Introduction
We will deal in this section with polynomial systems, i.e., control systems in R
n
i
=
¸
n
j=1
P
j
i
∂X
i
, where the P
j
i
’s are polynomials in
X
1
, . . . , X
n
. Polynomial systems are important for “practical” (or “eﬀective”)
purpose, because polynomials are the simplest class of functions for which sym-
bolic computation can be used. Also, we can hope of global ﬁniteness properties
(on R
n
) for such systems, and more precisely of eﬀective bounds in term of n
and of a bound d on the degrees of the P
j
i
.
In this section, we will study the degree of nonholonomy of an aﬃne sys-
tem without drift Σ made with polynomial vector ﬁelds V
1
, . . . , V
s
on R
n
, and
prove that it is bounded by a function φ(n, d) depending only on the dimension
n of the conﬁguration space R
n
, and on a bound d on the degrees of the P
j
i
.
As a consequence, we have that the problem of controllability for a polyno-
mial system (V
1
, . . . , V
s
) of degree ≤ d (with rational coeﬃcients) is eﬀectively
decidable: take x ∈ R
n
, compute the value at x of the iterated brackets of
(V
1
, . . . , V
s
) up to length φ(n, d). Then the system is controllable at x if and
only if the vector space spaned by the values at x of these brackets is R
n
(see
above '1.4). For the controllability on R
n
, take a basis of L
φ(n,d)
, i.e., of the
elements of degree ≤ φ(n, d) of the Lie algebra L(V
1
, . . . , V
s
). Then the system
Σ is controllable on R
n
if and only if this ﬁnite family of vector ﬁelds is of
Geometry of Nonholonomic Systems 83
rank n at any point x ∈ R
n
. But this is known to be eﬀectively decidable: one
has to decide if a matrix M with polynomial entries is of rank n at any point
of R
n
. The matrix M is the matrix (V
1
, . . . , V
s
, V
s+1
, . . . , V
k
), where the V
i
’s
are the vector ﬁelds of Σ for 1 ≤ i ≤ s, and for s + 1 ≤ i ≤ k a set of brackets
of the form [[. . . [V
i
1
, V
i
2
], V
i
3
, ] . . . ]V
i
p
], with 1 ≤ i
j
≤ s, spaning L
φ(n,d)
. Let I
be the ideal of R[X
1
, . . . , X
n
] spaned by all the nn minors of the matrix M.
Then Σ is controllable on all R
n
if and only if the zero set of I is empty, and
that is eﬀectively decidable (see for instance [15] or [17]).
The bound described here for the degree of nonholonomy is doubly expo-
nential in n. A better bound (and in fact an optimal one) would be a bound
simply exponential in n, i.e., of the form O(d
n
) or d
O(n)
, or again d
n
O(1)
. For
an optimal bound in a particular case, see Section 2 of this chapter, for the
case of the car with n trailers. Note that this system is not polynomial.
3.2 Contact between an integral curve and an algebraic variety in
dimension 2
In this section, we will work over the ﬁeld C, but all the results will be the same
over the ﬁeld R. By the contact (or intersection multiplicity) between a smooth
analytic curve γ going through the origin O in C
n
and an analytic germ of
hypersurface at O, ¦Q = 0¦, we mean the order of Q

at O. More precisely, let
X
1
(t), . . . , X
n
(t), X
i
(0) = 0 be a parametrization of the curve γ near the origin
(X
i
(t) are convergent power series in t). Then the contact of γ and ¦Q = 0¦ at
O is the order at 0 of the power series Q(X
1
(t), . . . , X
n
(t)) (i.e., the degree of
the non zero monomial of lowest degree of this series). Let us give an example,
for the convenience of the reader. Set n = 2, Q(X, Y ) = Y
2
−X
3
, γ(t) deﬁned
by X(t) = t
2
+2t
5
, Y (t) = t
3
+t
4
. We have Q

= (t
3
+t
4
)
2
−(t
2
+2t
5
)
3
= 2t
7
+
higher order terms; then the contact exponent between γ and the curve ¦Q = 0¦
is 7.
Let us ﬁrst recall some classical facts about intersection multiplicity. If
Q
1
, . . . , Q
p
are analytic functions deﬁned in a neighborhood of O, we will set
Z(Q
1
, . . . , Q
p
) for the analytic germ at O deﬁned by Q
1
= = Q
p
= 0, and
C¦X
1
, . . . , X
n
¦ for the ring of convergent power series.
Then, if in C
n
we have ¦O¦ = Z(Q
1
, . . . , Q
n
), the intersection multiplicity
at O of the analytic germ deﬁned by ¦Q
i
= 0¦ (1 ≤ i ≤ n) is by deﬁnition
µ(Q
1
, . . . , Q
n
) = dim
C
C¦X
1
, . . . , X
n
¦
(Q
1
, . . . , Q
n
)
(24)
Recall that the condition ¦O¦ = Z(Q
1
, . . . , Q
n
) (locally at O) is equivalent
to the fact that the C-vector space
C{X
1
,...,X
n
}
(Q
1
,...,Q
n
)
is of ﬁnite dimension. Recall
84 A. Bella¨ıche, F. Jean and J.-J. Risler
at last that when Q
1
, . . . , Q
n
are polynomials of degrees q
1
, . . . , q
n
, we have
µ(Q
1
, . . . , Q
n
) ≤ q
1
q
n
by B´ezout’s theorem, if dim
C
C{X
1
,...,X
n
}
(Q
1
,...,Q
n
)
< +∞.
Let V = P
1
∂/∂X
1
+ +P
n
∂/∂X
n
be a polynomial vector ﬁeld such that
V (O) = 0, deg(P
i
) ≤ d. Let Q(X
1
, . . . , X
n
) be a polynomial of degree q. Set
Q
1
= P
1
∂Q/∂X
1
+ +P
n
∂Q/∂X
n
Q
2
= P
1
∂Q
1
/∂X
1
+ +P
n
∂Q
1
/∂X
n
.
.
.
Q
n−1
= P
1
∂Q
n−2
/∂X
1
+ +P
n
∂Q
n−2
/∂X
n
(i.e., Q
0
= Q and Q
i
i−1
>=
¸
n
j=1
P
j
∂Q
i−1
/∂X
j
, for 1 ≤ i ≤
n−1); Q
1
is the Lie derivative of Q along the vector ﬁeld V , and more generally,
Q
i
is the Lie derivative of Q
i−1
along the vector ﬁeld V .
We have the following:
Theorem 3.1. Let V be a vector ﬁeld in C
n
whose coordinates are polyno-
mials of degree ≤ d, and such that V (O) = 0. Let γ be the integral curve of
V going through O, and Q a polynomial of degree q. Assume Q

≡ 0, and
that O is isolated in the algebraic set Z(Q, Q
1
, . . . , Q
n−1
) (which means that
dim
C
C{X
1
,...,X
n
}
(Q,...,Q
n−1
)
< +∞). Then the contact exponent ν between Q and γ sat-
isﬁes
ν ≤ qq
1
q
n−1
+n −1, (25)
where q
i
is a bound for the degree of Q
i
, namely q
i
= q +i(d −1).
Proof. We may assume ν ≥ n. Let γ(t) : t → (X
1
(t), . . . , X
n
(t)) be a smooth
analytic parametrization of γ. By deﬁnition, ν is the order of the power series
Q ◦ γ(t) = Q(X
1
(t), . . . , X
n
(t)). Now, Q
1
◦ γ(t) = Q
1
(X
1
(t), . . . , X
n
(t)) is the
derivative of Q◦ γ(t), and therefore is of order ν −1 at O. Similarly Q
i
◦ γ(t) is
of order ν −i for 1 ≤ i ≤ n −1. We have that the series Q(X
1
(t), . . . , X
n
(t)) is
of the form t
ν
v(t), i.e., belongs to the ideal (t
ν
) in C¦X
1
, . . . , X
n
¦. Similarly,
Q
i
(X
1
(t), . . . , Q
n
(t)) belongs to the ideal (t
ν−i
).
Set γ

for the ring homomorphism : C¦X
1
, . . . , X
n
¦ −→ C¦t¦ induced by the
parametrization of γ. The image of γ

contains by assumption a power series
of order one, i.e., of the form v(t) = tu(t), with u(O) = 0. Then the inverse
function theorem implies that t itself is in the image of γ

, i.e., that γ

is
surjective. Hence we have a commutative diagramm of ring homomorphisms:
C¦X
1
, . . . , X
n
¦
γ

−−−−−→ C¦t¦

C{X
1
,...,X
n
}
(Q,Q
1
,...Q
n−1
)
¯ γ

−−−−−→
C{t}
(t
ν−n+1
)
Geometry of Nonholonomic Systems 85
where the vertical arrows represent the canonical maps. Since γ

is surjective,
we have also that ¯ γ

is surjective.
This implies that
ν −n + 1 = dim
C
C¦t¦
(t
ν−n+1
)
≤ dim
C
C¦X
1
, . . . , X
n
¦
(Q, . . . , Q
n−1
)
≤ qq
1
q
n−1
or ν ≤ qq
1
q
n−1
+n−1 as asserted, the last inequality coming from B´ezout’s
theorem.
Remark. One may conjecture that such a kind of result is valid (may be with
a slightly diﬀerent bound) without the hypothesis dim
C
C{X
1
,...,X
n
}
(Q,...,Q
n−1
)
ﬁnite. This
would imply a simply exponential bound (i.e., of the form C(n)d
n
, or d
n
0(1)
)
for the degree of nonholonomy.
Notice that for Theorem 3.1, we may always assume that the polynomial
Q(X
1
, . . . , X
n
) is reduced (or even irreducible), because if Q = R
1
. . . R
s
, the
bound (25) for the R
i
’s implies the same bound for Q. In fact, it is enough to
prove that if Q = RS, r = degR, s = degS, q = r +s, then
r(r+d−1) (r+(n−1)(d−1))+s(s+d−1) (s+(n−1)(d−1))+2(n−1) ≤
q(q +d −1) (q + (n −1)(d −1)) +n −1
which is immediate by induction on n.
If A is a C-algebra, let us denote by dimA its dimension as a ring (it is its
“Krull dimension”), and dim
C
A its dimension as a C-vector space. If A is an
analytic algebra, i.e., A =
C{X
1
,...,X
n
}
I
where I is an ideal, I = (S
1
, . . . , S
q
),
then its dimension as a ring is the dimension (over C) of the germ at O of the
analytic space deﬁned by Z(S
1
, . . . , S
q
). We have that dim
C
A < +∞ if and
only if dimA = 0.
Notice that Q
1
cannot be divisible by Q (since Q ◦ γ(t) is of order ν, and
Q
1
◦ γ(t) of order ν −1). Therefore, if Q is irreducible, we have
dim
C¦X
1
, . . . , X
n
¦
(Q, Q
1
)
= n −2.
This implies that in Theorem 3.1, we may always assume that we have
dim
C{X
1
,...,X
n
}
(Q,...,Q
n−1
)
≤ n −2.
In particular, (25) is true in dimension 2 without additional hypothesis:
Corollary 3.2. Let V = P
1
∂/∂X+P
2
∂/∂Y be a polynomial vector ﬁeld in the
plane of degree ≤ d, such that V (O) = 0, γ the integral curve of V by O, and
Q(X, Y ) a polynomial of degree q such that Q

≡ 0. Then the contact exponent
ν of Q and γ satisﬁes
ν ≤ q(q +d −1) + 1.
86 A. Bella¨ıche, F. Jean and J.-J. Risler
This corollary has ﬁrst been proved by A. Gabrielov, J.-M. Lion and R.
Moussu, [10].
3.3 The case of dimension n
We have the following result, due to Gabrielov ([12])
Theorem 3.3. Let V =
¸
P
i
∂/∂X
i
be a polynomial vector ﬁeld, with P
i

C[X
1
, . . . , X
n
] of degree ≤ d, such that V (O) = 0, Q(X
1
, . . . , X
n
) a polynomial
of degree ≤ q such that Q

≡ 0. Then the contact exponent ν between Q and
γ satisﬁes
ν ≤ 2
2n−1
n
¸
k=1
[q + (k −1)(d −1)]
2n
(26)
Remark. This bound is polynomial in d and q and simply exponential in n. It
is optimal (up to constants) since it comes from Example 2) below that there
exists a lower bound also polynomial in d and q and simply exponential in n.
Remark. In 1988 Nesterenko ([27]) found a bound of the form
ν ≤ c(n)d
n
2
q
n
,
namely simply exponential in n when d is ﬁxed, but doubly exponential in the
general case.
Remark. In dimension 3, the following bound has been found by A. Gabrielov,
F. Jean and J.-J. Risler, [9]:
ν ≤ q + 2q(q +d −1)
2
.
3.4 Bound for the degree of nonholonomy in the plane
In the two-dimensional case, we have the following bound for the degree of
non-holonomy (see [29]):
Theorem 3.4. Let Σ = (V
1
, . . . , V
s
) be a control system made with polynomial
vector ﬁelds on R
2
of degree ≤ d; let r(x) be the degree of nonholonomy of Σ
at x ∈ R
2
. Then,
r(x) ≤ 6d
2
−2d + 2 (27)
Geometry of Nonholonomic Systems 87
Proof. Take x = O. Let as above (see '1.6) L
i
(O) be the vector space spaned
by the values at O of the brackets of elements of Σ of length ≤ i. We may
assume dimL
1
(O) = 1, because otherwise the problem of computing r(O) is
trivial (if dimL
1
(O) = 0, then L
s
(O) = ¦0¦ ∀s ≥ 1, and if dimL
1
(O) = 2,
we have L
1
(O) = R
2
and r(O) = 1 by deﬁnition). We therefore assume that
V
1
(O) = 0, and set V = V
1
.
Lemma 3.5. Assume r(O) > 1, which in our case implies that the system Σ
is controllable at O. Then there exists Y ∈ Σ such that det(V, Y )

≡ 0.
Proof. Assume that det(V, Y )

≡ 0 ∀Y ∈ Σ. Then, in some neighborhood
of O, any vector ﬁeld Y ∈ Σ is tangent to the integral curve γ of V from
O. This implies that the system cannot be controllable at O, since in some
neighborhood of O the accessible set from O would be contained in γ.
Let us now state a Lemma in dimension n.
Lemma 3.6. Let V, Y
1
, . . . , Y
n
be vector ﬁelds on R
n
. Then
V.det(Y
1
, . . . , Y
n
) =
n
¸
i=1
det(Y
1
, . . . , [V, Y
i
], . . . , Y
n
) +
Div(V ).det(Y
1
, . . . , Y
n
).
Let us recall that Div(V ) = ∂P
1
/∂X
1
+ ∂P
2
/∂X
2
+ + ∂P
n
/∂X
n
, where
V = P
1
∂/∂X
1
+ +P
n
∂/∂X
n
.
Proof. This formula is classical. See for instance [13, Exercice page 93], or [26,
Lemma 2.6].
of Theorem 3.4, continued. Let γ be the integral curve of V by O. By Lemma
3.5, there exists Y ∈ Σ such that det(V, Y )

≡ 0. Set Q = det(V, Y )

.
By Lemma 3.6, we have V.det(V, Y ) = det(V, [V, Y ])+DivV det(V, Y ). Let ν
be the order of contact of Q and γ. We have that Q

= a
ν
t
ν
+ , with a
ν
= 0,
and that (V.Q)

= νa
ν
t
ν−1
+ because V

can be identiﬁed with ∂/∂t. Then
det(V, [V, Y ])

is of order ν − 1 in t, and we see that when diﬀerentiating ν
times in relation to t, we ﬁnd that
det(V, [V [V, . . . [V, Y ] . . . ]])(O) = 0,
the bracket inside the parenthesis being of length ν+1. This means by deﬁnition
of r(O) that r(O) ≤ ν + 1.
The polynomial Q is of degree ≤ 2d, and V is a polynomial vector ﬁeld of
degree ≤ d. Then Corollary 3.2 gives ν ≤ 2d(2d +d −1) +1 = 6d
2
−2d +1.
88 A. Bella¨ıche, F. Jean and J.-J. Risler
Example. 1) Set
Σ

V
1
= ∂/∂X +X
d
∂/∂Y
V
2
= Y
d
∂/∂X
Then it should be easily seen that for this system, r(O) = d
2
+ 2d + 1. The
inequality r(O) ≥ d
2
+ 2d + 1 has been checked by F. Jean. This proves that
the estimation (27) is asymptotically optimal in term of d, up to the constant
6.
2) Let in R
n
Σ

V
1
= ∂/∂X
1
V
2
= X
d
1
∂/∂X
2
.
.
.
V
n
= X
d
n−1
∂/∂X
n
.
We see easily that for this system, r(O) = d
n−1
, which means that in general
φ(n, d) is at least exponential in n.
3.5 The general case
We have the following result, where for simplicity, and because it is the most
important case, we assume the system controllable.
Theorem 3.7. Let n ≥ 3. With the above notation, let r(x) be the degree of
non-holonomy at x ∈ R
n
for the control system Σ made with polynomial vector
ﬁelds of degree ≤ d. Let us assume that the system Σ is controllable. Then we
have the following upper bound:
r(x) ≤ φ(n, d), with φ(n, d) ≤ 2
n−2
(1 + 2
2n(n−2)−2
d
2n
n+3
¸
k=4
k
2n
). (28)
Proof. We ﬁrst state without proof a result of Gabrielov [11].
Lemma 3.8. Let (V
1
, . . . , V
s
) be a system of analytic vector ﬁelds controllable
at O such that V
1
(O) = 0. Let f be a germ of an analytic function such that
f(O) = 0 and f[
γ(V
1
)
≡ 0 (γ(V
1
) denotes the trajectory of V
1
going through O).
Then there exists n vector ﬁelds χ
1
, . . . , χ
n
satisfying
– χ
1
= V
1
, χ
2
is one of the V
i
, and, for 2 < k ≤ n, χ
k
is either one of the V
i
or belongs to the linear subspace generated by [χ
l
, fχ
m
], for l, m < k;
– there exists a vector ﬁeld χ

= χ
1
+
2
χ
2
+ +
n−1
χ
n−1
such that
det(χ
1
, . . . , χ
n
)[
γ(χ

)
≡ 0.
Geometry of Nonholonomic Systems 89
Let us assume x = O. For a generic linear function f, the conditions f(O) =
0 and f[
γ(V
1
)
≡ 0 are ensured. We can then apply the lemma and obtain n vector
ﬁelds χ
1
, . . . , χ
n
. From the ﬁrst point of Lemma 3.8, χ
k
is a polynomial vector
ﬁeld of degree not exceeding 2
k−2
d. Thus the vector ﬁeld χ

is polynomial of
degree not exceeding 2
n−3
d and the determinant Q = det(χ
1
, . . . , χ
n
) is also
polynomial. Its degree does not exceed d +d + + 2
n−2
d = 2
n−1
d.
The second point of Lemma 3.8 ensures that Q and χ

fulﬁll the conditions
of Theorem 3.3. Then, applying (26), the contact exponent ν between Q and
γ(χ

) satisﬁes
ν ≤ 2
2n
3
−4n−1
n
¸
k=1
(4d +k −1)
2n
.
Each derivation of Q along χ

decreases this multiplicity by 1. Hence the
result of ν consecutives derivations of Q along χ

does not vanish at O. By using
Lemma 3.6, that means that there exists n brackets ξ
k
= [χ

, . . . , [χ

, χ
k
] . . . ],
with at most ν occurences of χ

, such that:
det(ξ
1
(O), . . . , ξ
n
(O)) = 0.
¿From the ﬁrst point of Lemma 3.8, each χ
k
is a linear combination with
polynomial coeﬃcient of brackets of the vector ﬁelds V
i
of length not exceeding
2
k−2
. This implies χ
k
(O) ∈ L
2
k−2(Σ)(O) (this is the same reasoning as in the
proof of Theorem 2.1). We have then χ

(O) ∈ L
2
n−3(Σ)(O) and, ∀k, ξ
k
(O) ∈
L
2
n−2
+ν2
n−3(Σ)(O).
Since det(ξ
1
, . . . , ξ
n
) = 0, the subspace L
2
n−2
+ν2
n−3(Σ)(O) is of dimension
n and then
r(O) ≤ 2
n−2
(1 + 2
2n(n−2)−2
d
2n
n+3
¸
k=4
k
2n
).
90 A. Bella¨ıche, F. Jean and J.-J. Risler
References
1. A. A. Agrachev and R. V. Gamkrelidze, “The exponential representation of ﬂows
and the chronological calculus,” Mat. Sbornik (N.S.), 107 (149), 467–532, 639,
1978. English transl.: Math. USSR Sbornik, 35, 727–785, 1979.
2. A. Bella¨ıche, “The tangent space in sub-Riemannian Geometry,” in Sub-
Riemannian Geometry, A. Bella¨ıche and J.-J. Risler Ed., Progress in Mathe-
matics, Birkh¨auser, 1996.
3. A. Bella¨ıche, J.-P. Laumond and J. Jacobs, “Controllability of car-like robots
and complexity of the motion planning problem,” in International Symposium on
Intelligent Robotics, 322–337, Bangalore, India, 1991.
4. A. Bella¨ıche, J.-P. Laumond and J.-J. Risler, “Nilpotent inﬁnitesimal approxi-
mations to a control Lie algebra,” in Proceedings of the IFAC Nonlinear Control
Systems Design Symposium, 174–181, Bordeaux, France, June 1992.
5. R. W. Brockett, “Control theory and singular Riemannian geometry,” in New
directions in applied mathematics, P. J. Hilton and G. J. Young Ed., Springer-
Verlag, 1982.
6. J. F. Canny, The complexity of robot motion planning, MIT Press, 1998.
7. W. L. Chow, “
¨
Uber Systeme von linearen partiellen Diﬀerentialgleichungen erster
Ordnung,” Math. Ann., 117, 98–115, 1940.
8. M. Fliess, J. Levine, P. Martin and P. Rouchon, “On diﬀerential ﬂat nonlinear
systems,” in Proceedings of the IFAC Non linear Control Systems Design Sympo-
sium, 408–412, Bordeaux, France, 1992.
9. A. Gabrielov, F. Jean and J.-J. Risler, Multiplicity of Polynomials on Trajectories
of Polynomials Vector Fields in C
3
, Preprint, Institut de Math´ematiques, Univ.
Paris VI, 1997.
10. A. Gabrielov, J.-M. Lion and R. Moussu, “Ordre de contact de courbes int´egrales
du plan,” CR Acad. Sci. Paris, 319, 219–221, 1994.
11. A. Gabrielov, “Multiplicities of Zeroes of Polynomials on Trajectories of Poly-
nomial Vector Fields and Bounds on Degree of Nonholonomy,” Mathematical
Research Letters, 2, 437–451, 1995.
12. A. Gabrielov, Multiplicity of a zero of an analytic function on a trajectory of a
vector ﬁeld, Preprint, Purdue University, March 1997.
13. C. Godbillon, G´eom´etrie diﬀ´erentielle et M´ecanique analytique, Hermann, Paris,
1969.
14. N. Goodman, Nilpotent Lie groups, Springer Lecture Notes in Mathematics, 562,
1976.
15. S. Grigoriev, “Complexity of deciding Tarski algebra,” J. Symb. Comp., 5, 37–64,
1988.
16. M. Gromov, “Carnot-Carath´eodory spaces seen from within,” in Sub-Riemannian
Geometry, A. Bella¨ıche and J.-J. Risler Ed., Progress in Mathematics, Birkh¨ auser,
1996.
17. J. Heinz, M.-F. Roy and P. Solerno, “Sur la complexit´e du principe de Tarski-
Seidenberg,” Bull. Soc. Math. Fr., 118, 101–126, 1990.
18. H. Hermes, “Nilpotent and high-order approximations of vector ﬁeld systems,”
SIAM Review, 33 (2), 238–264.
Geometry of Nonholonomic Systems 91
19. F. Jean, “The car with N trailers: characterization of the singular conﬁgurations,”
ESAIM: COCV, http://www.emath.fr/cocv/ , 1, 241–266, 1996.
20. J.-P. Laumond, “Singularities and Topological Aspects in Nonholonomic Motion
Planning,” in Nonholonomic Motion Planning, 149–199, Z. Li and J. Canny Ed.,
21. J.-P. Laumond, “Controllability of a multibody mobile robot,” in Proceedings of
the International Conference on Advanced robotics and Automation, 1033–1038,
Pisa, Italy, 1991.
22. J-P. Laumond, P. E. Jacobs, M. Taix and R. M. Murray, “A motion planner for
nonholonomic mobile robot,” in LAAS-CNRS Report, oct. 1992.
23. J.-P. Laumond and J.-J. Risler, “Nonholonomics systems: Controllability and
complexity,” Theoretical Computer Science, 157, 101–114, 1996.
24. F. Luca and J.-J. Risler, “The maximum of the degree of nonholonomy for the car
with n trailers,” 4th IFAC Symposium on Robot Control , 165–170, Capri, 1994.
25. R. M. Murray and S. S. Sastry, “Nonholonomic Motion Planning: Steering using
sinusoids,” IEEE Transactions on Automatic Control , 38 (5), 700–716, May 1993.
26. A. Nagel, E. M. Stein and S. Wainger, “Metrics deﬁned by vector ﬁelds,” Acta
Math., 155, 103–147, 1985.
27. Y. V. Nesterenko, “Estimates for the number of zeros of certain functions,” New
Advances in transcendance Theor, 263–269, A. Baker Ed., Cambridge, 1988.
28. P. K. Rashevsky, “Any two points of a totally nonholonomic space may be con-
nected by an admissible line,” Uch. Zap. Ped. Inst. im. Liebknechta, Ser. Phys.
Math., 2, 83–94, 1938 (Russian).
29. J.-J. Risler, “A bound for the degree of nonholonomy in the plane,” Theoretical
Computer Science, 157, 129–136, 1996.
30. J. T. Schwartz and M. Sharir, “On the ‘Piano Movers’ problem II: general tech-
niques for computing topological properties of real algebraic manifolds,” Advances
in Applied Mathematics, 4, 298–351, 1983.
31. A. Seidenberg, “On the length of Hilbert ascending chain,” Proc. Amer. Math.
Soc., 29, 443–450, 1971.
32. E. Sontag, “Some complexity questions regarding controllability,” Proc. of the
27-th IEEE Conf. on Decision and Control , 1326–1329, Austin, 1988.
33. O. J. Sørdalen, “Conversion of the kinematics of a car with n trailers into a chain
form,” IEEE International Conference on Robotics and Automation, 1993.
34. O. J. Sørdalen, “On the global degree of non holonomy of a car with n trailers,”
4th IFAC Symposium on Robot Control, 343–348, Capri, 1994.
35. P. Stefan, “Accessible sets, orbits, and foliations with singularities,” Proc. London
Math. Soc., 29 (3), 699–713, 1974.
36. H. J. Sussmann, “Orbits of families of vector ﬁelds and integrability of distribu-
tions,” Trans. Amer. Math. Soc., 180, 171–188, 1973.
37. H. J. Sussmann, “Lie brackets, Real Analyticity and Geometric control,”
in Diﬀerential Geometric Control Theory, Brockett, Millman, Sussmann Ed.,
Birk¨ auser, 1–116, 1982.

Geometry of Nonholonomic Systems
A. Bella¨ 1 , F. Jean2 and J.-J. Risler3 ıche
1 2 3

Paris 7 University Paris 6 University Ecole Normale Sup´rieure and Paris 6 University e

Nonholonomic motion planning is best understood with some knowledge of the underlying geometry. In this chapter, we ﬁrst introduce in Section 1 the basic notions of the geometry associated to control systems without drift. In the following sections, we present a detailed study of an example, the car with n trailers, then some general results on polynomial systems, which can be used to bound the complexity of the decision problem and of the motion planning for these systems.

1
1.1

Symmetric control systems: an introduction
Control systems and motion planning

Regardless of regularity hypotheses, control systems may be introduced in two ways. By ascribing some condition x ∈ Vx ˙ where Vx is, for every x, some subset of the tangent space Tx M , or in a parametric way, as x = f (x, u) ˙ where, for every x, the map u → f (x, u) has Vx as its image. In mechanics or robotics, conditions of the ﬁrst kind occur as linear constraints on the velocities, such as rolling constraints, as well in free movement— the classical object of study in mechanics, as in the case of systems propulsed by motors. Equations of the second kind may represent the action of “actuators” used to move the state of the system in the conﬁguration space. One can show that if the action of two actuators are represented by x = f1 (x) and x = f2 (x), ˙ ˙ we may also consider the action of any convex combination of vector ﬁelds f1 and f2 , and add it to the possible actions without changing in an essential way the accessible set A(x) or A(x, T ). For this reason, one may suppose Vx to be convex, or equivalently, u → f (x, u) to be aﬃne, of the form (u1 , . . . , um ) →

56

A. Bella¨ ıche, F. Jean and J.-J. Risler

X0 (x) + u1 X1 (x) + · · · + um Xm (x), and deﬁned on some convex subset Kx of Rm , for some m. This is responsible for the form x = X0 (x) + u1 X1 (x) + · · · + um Xm (x) ˙ under which control systems are often encountered in the literature. (It makes no harm to suppose m and Kx to be independent of x, and to suppose that the origin is an interior point of K = Kx .) The vector ﬁeld X0 is called the drift. Now, we will use only systems without drift, that is with X0 = 0, for the study of the problem of motion planning for robots. We may content with such systems as long as no dynamics is involved. That is, if the state of the system represents its position, and if we control directly its velocity. As opposed to a system whose state would represent position and velocities, and where the control is exerted on accelerations. Consider the simplest possible of such a system: a mobile point on a line, submitted to the control equation x = u. ¨ Introducing the velocity y = x, we see that this system is equivalent to a system ˙ governed by the equation x=y ˙ y=u ˙ which can be written as x ˙ y ˙ = y 0 +u 0 1 = X0 + uX1 ,

that is, with a non-zero drift X0 . For some applications, our study will be valid in the case of slow motion only, and resemble to the thermodynamics of equilibriums, where all transformation are supposed to be inﬁnitely slow. 1.2 Deﬁnitions. Basic problems

To sum up, we shall be interested in control systems of the form
m

x= ˙
i=1

ui Xi (x),

x ∈ M,

(Σ)

where the conﬁguration space M of the system is a C ∞ manifold, X1 , . . . , Xm are C ∞ vector ﬁelds on M , and the control function u(t) = (u1 (t), . . . , ut (t)) takes values in a ﬁxed compact convex K of Rm , with nonempty interior, and

Here we will take as observation h = Id. In a more general setting. and by A(x) the set of points accessible from x. Call this solution xu . and xu (t) as the output. h being called the observation: the state is only partially known.Geometry of Nonholonomic Systems 57 symmetric with respect to the origin. (1) Given any point x0 on M . T ]. with value in K. Such systems are called symmetric (or driftless). – do the preceding in minimal time. For the sake of simplicity. – more generally. we can integrate (1). One also says that xu (T ) is accessible. in time T from x0 . the path controlled by u. or reachable. accessible from x. and vector ﬁelds Xi are bounded). we shall suppose that this equation has a well-deﬁned solution on [0. One says for example that the system is steered from state x0 to state xu (T ) by means of the control function u. points in M are called the states of the system. equation (Σ) becomes a diﬀerential equation m x= ˙ i=1 ui (t)Xi (x). taking x(0) = x0 (2) as an initial condition. – given a point y. T ] for all choices of u (this is guaranteed if M is compact or if M = Rn . Classically. the control function u(t) is considered as the input of the system. T ) the set of points of M accessible from x in time T (or in time ≤ T . the output is only some function h(x) of the state x. ﬁnd control functions steering the system from x to y. Basic problems of Control Theory are: – determine the accessible set A(x). We can now state another basic problem: . Given x0 . For any choice of u as a measurable function deﬁned on some interval [0. and call indiﬀerently x the state or the output. it is the same thing for symmetric systems). that is A(x) = T >0 A(x. We shall mainly be interested in its ﬁnal value xu (T ). T ). One says that xu is the path with initial point x0 and controlled by u. We shall denote by A(x. One also says that controls enter linearly in (Σ). ﬁnd control function u ensuring any given property of xu (t).

b] → M as b length(c) = a c(t) ˙ K dt and the distance d(x. F. Jean and J. symmetric. with nonempty interior.-J. this is the case only because we supposed that K is symmetric with respect to the origin in Rm . For x. this is intended in the deﬁnition of an inﬁmum. Now. Of course. . y) as the inﬁmum of length of paths joining x and y.58 A. such a map k is called a feedback control law. . . observe that since K is convex. (4) If c can be obtained in such a way from several diﬀerent u’s. or a closed-loop control. by setting v K = inf{ (u1 . the output is reused as an input. Transfer the function · K to Tx M . so d(x. y ∈ M . Then. one says that k is a stabilizing feedback at x0 . Distance d will be called the control distance. . . Xm (x)) and takes the value +∞ for vector not in this subspace. y) = +∞ if y is not accessible from x. y) is a distance [distance function] on M . Risler – can one ﬁnd a map k : M → K such that the diﬀerential equation x = f (x. deﬁne d(x. such that K is the unit ball u K ≤ 1. A slightly variant construction may be useful. of course. It is immediate to prove that d(x. We get in this way a function on Tx M which is a norm on span(X1 (x). We can deﬁne d in a diﬀerent way.3 The control distance Return to the control system (Σ). y) is the inﬁmum of the lengths of controlled paths joining x to y (and. 1. d(x. +∞ if no such path exists). . y) as the inﬁmum of times T such that y is accessible from x in time T . for example. for a controlled path c = xu : [a. has a given point x0 as an attractor? Since in this problem. We can now deﬁne the length of any absolutely continuous path c : [a. . First. . b]. Bella¨ ıche. b] → M obtained by means of a control function u ∈ L1 ([a. k(x)) ˙ (3) has a determined behaviour. Rm ). we take the inﬁmum of the corresponding integrals. If (3) has x0 as an attractor. we set b length(c) = a u(t) K dt. . we can associate to it a norm · K on Rm . um ) K | v = u1 X1 (x) + · · · + um Xm (x) }.

are equivalent: there exists some positive constants A and B such that Ad1 (x. Many problems of control theory. Sussmann’s theorem will be proved using L1 controls. . . of the tangent space Tx M . However. Consider a symmetric control system. observe that. Unfortunately. locally. Such a geometric interpretation. The theorems of Chow and Sussmann We shall deduce the classical theorem of Chow (Chow [7]. y) ≤ Bd1 (x. .Geometry of Nonholonomic Systems 59 Note that distances corresponding to diﬀerent K. and as X1 (x). Rashevskii [28]) from a more precise result by Sussmann. that A(x. and take k(x) = (X1 f. or path planning. . the sub-Riemannian one: grad f = (X1 f )X1 + · · · + (Xm f )Xm . For another example. x ∈ M.. using the sub-Riemaniann distance. . get in this way a geometric interpretation. any Riemannian distance can be recovered in such a way by taking m = n. as described above. k(x)) to be the gradient of d(x. but we shall not use it in this book. and that controlled paths joining x to y in minimal time are simply minimizing geodesics. and it will in several occasions be very useful to us. independent of the class of control used (see Bella¨ ıche [2]). really brings a new insight in theory. 1 m In this case. say K1 and K2 . which gives u = (u2 + · · · + u2 )1/2 . y) < ∞ if and only if x and y are reachable from one another. 1. u ∈ K. observe that d(x. T ) is nothing else that the ball of center x and radius T (for d).e. x0 ).4 Accessibility. y) ≤ d2 (x. depending on x. more abstract. . . deﬁnition of sub-Riemannian metrics can be given. A more general. one could think to obtain a feedback law k(x) stabilizing the system at x = x0 by choosing k so as to ensure f (x. (Σ) . Xn (x) an orthonormal basis. . to a great extend. i. . m x= ˙ i=1 ui Xi (x). The most convenient version of the control distance is obtained by taking for K the unit ball of Rm . But studying the reasons of this failure is very instructive. it can be shown that the results obtained are. Xm f ) for that purpose. Xm . the distance d is called the sub-Riemannian distance attached to the system of vector ﬁelds X1 . y). this does not work. . Now. even if we take the good version of the gradient. . As a justiﬁcation for this name. .

T ]. It may be considered as a normed space by setting T u = 0 u(t) K dt. if u ∈ H.T . with nonempty interior. the initial point. every controlled path c : [0. Risler Recall the conﬁguration space M is a C ∞ manifold. . the control set. L] takes its values in K.60 A. Now. 0 ≤ t ≤ T ˙ x(0) = x0 m (5) Under suitable hypotheses. . and L = length(xu ).1 (Sussmann [36]. and a positive time T . is a ﬁxed compact convex of Rm . the end-point map. symmetric with respect to the origin. Bella¨ ıche. X1 . deﬁned by the control u : [0. T ].T : HT → M the mapping wich maps u to xu (T ). Stefan [35]). T ] → M . Conversely. a ﬁnite dimensional manifold. Theorem 1. Set HT = L1 ([0. we ﬁx a point x0 ∈ M . Jean and J. In all this section. and deﬁnes the same geometric path as u. u(φ(t)) K where φ is deﬁned as a right inverse to the mapping s s→ 0 u(τ ) K dτ from [0. regardless of time) is exactly the image of Endx0 . Xm are C ∞ vector ﬁelds on M . The set A(x0 ) of points accessible from a given point x0 in M is an immersed submanifold. taking advantage from the fact that the end-point map is a diﬀerentiable mapping from H to M . F. we consider the diﬀerential equation x = i=1 ui (t)Xi (x). We shall prove this theorem using arguments from diﬀerential calculus in Banach spaces. . T ] → M may be reparametrized by [0. the accessible set A(x0 ) (the set of points accessible from x0 for the system Σ. We will call Endx0 .-J. Indeed. Given u ∈ HT . We shall call this space the space of controls. T ] to [0. or parameter set. 0 ≤ t ≤ L. Rm ). We will denote by Endx0 . and K. the diﬀerential equation (5) has a well deﬁned solution xu (t). the control function u(φ(t)) v(t) = .T . . . or End for short.

Geometry of Nonholonomic Systems 61 Recall the rank of a diﬀerentiable mapping at a given point is by deﬁnition the rank of its diﬀerential at that point. an so has dimension ρ. ﬁrst to z. and let u ∈ HT a control steering x0 to y. Otherwise. The second part of our assertion is evident: the path xw steers x0 . namely variations of the ﬁrst part of w only. is normal and steers x0 to y. steering x0 to some point z. u is said to be an abnormal control. then back to x0 . Now. then to y. the corresponding variations of xw (3T ) are obtained from those of xw (T ) by applying the ﬂow of the time-dependent vector ﬁeld 1≤i≤m wi (t)Xi (x) between time T and time 3T . We claim that the control function w ∈ H3T deﬁned by  v(t) if 0 ≤ t ≤ T  w(t) = v(2T − t) if T ≤ t ≤ 2T   u(t − 2T ) if 2T ≤ t ≤ 3T Since v is a normal control. A point which can be joined to x0 by a normal path is said to be normally accessible from x0 . see Bella¨ ıche [2]). leaving the two other parts unchanged. the image of D Endx0 . Choose a normal control z ∈ HT . the fact that w is in H3T instead of being in HT is harmless.2. we consider the control functions  v(t) + δv(t) if 0 ≤ t ≤ T  w(t) + δw(t) = v(2T − t) if T ≤ t ≤ 2T   u(t − 2T ) if 2T ≤ t ≤ 3T . Let ρ the maximal rank of the end-point map Endx0 .3T consists of the inﬁnitesimal variations δxw (3T ) obtained from inﬁnitesimal variations δw of w. In other words.T at u is equal to ρ. and xu an abnormal path. The space formed by variations of the xw (3T ) caused by unrestricted variations of the control w has thus dimension ≥ ρ. Deﬁnition.T : HT → M . Let y be a point accessible from x0 . these variations yield inﬁnitesimal variations of δxw (T ) = xw+δw (T ) − xw (T ) which form a subspace of dimension ρ at that point. We shall say that the path xu deﬁned by u is a normal path. We say that a control function u ∈ HT is normal if the rank of Endx0 . Proof. This proves that w is normal. Lemma 1. Now. Since this ﬂow is a diﬀeomorphism of M . Such a control exists by deﬁnition. these variations of xw (3T ) form a subspace of dimension ρ of the tangent space Ty M . We can consider special variations of w. Every point accessible from x0 is normally accessible from x0 . The theorem of the constant rank asserts that the image of a diﬀerential map with constant rank is an immersed submanifold (for more details about this part of the proof. Of course.

the Xi ’s and their iterated brackets span the tangent space at every point of M . Xk ]. If M is connected (for its original topology). .-J.62 A. Xj ]. .2. there can be only one accessibility component. Since M is connected. as the preceding discussion shows. and false in the C ∞ case (see Sussmann [36]). Therefore. F. we can speak of accessibility components.T of HT . etc. and if the vector ﬁelds X1 . From Theorem 1. . Since the relation y ∈ A(x) is clearly an equivalence relation. that is. span the tangent space Tx M at every point of M . tangent to the accessibility component through that point (see [2] for details). Xk ]. Xk ]. Xj ]. . If the condition on the brackets is fulﬁlled. In that case. is true if M and the vector ﬁelds are analytic. the vector ﬁelds X1 . Xm and their iterated brackets [Xi . . the set A(x) is the union of open balls B(x. Rashevskii [28]). Bella¨ ıche. . . at any point. And so are their brackets [Xi . . Chow’s Condition is also known under the name of Lie Algebra Rank Condition (LARC) since it states that the rank at every point x of the Lie algebra . m). . Whence it results that the accessibility components are also the connected component of M for the topology deﬁned by d. Xj ]. Deﬁnition. if (Σ) is controllable. so it is itself an open set. Xj ].T by a constant rank map. the proof is done. then Tx A(x) = Tx M at every point x. their iterated brackets [[Xi . the accessibility components are open. . . the accessible set A(x0 ) is the image of Nx0 . . Xj ]. . y) < ∞. [[Xi . Xm and their iterated brackets [Xi . The following condition (C) The vector ﬁelds X1 . [[Xi . When the Chow’s Condition holds. .3 (Chow [7]. etc. Theorem 1. is called Chow’s Condition. . one says that system (Σ) is controllable. etc. then any two points of M are accessible from one another. Xm are. . Jean and J. Proof. R) (for d). Since y ∈ A(x) ⇐⇒ d(x. The reciprocal of Chow’s theorem. By using the Theorem of constant rank. It is clear that the accessibility components of M are stable under the ﬂow exp tXi of vector ﬁeld Xi (i = 1. The normal controls form an open subset Nx0 . Risler Proof of Sussmann’s theorem. span the tangent space Tx M at every point of M . Xj ].

. the sub-Riemaniann i closed ball centered at x with radius ε.5 The shape of the accessible set in time ε The purpose of this section is to study the geometric structure of A(x. Thus. (8) where. We suppose in the sequel that Chow’s condition is satisﬁed for the control system (Σ). ε) is then included in a ﬂat pancake. Let us recall that A(x. A(x. with a linear change of coordinates. the o 2 2 diﬀerential operator X1 + · · · + Xm is hypoelliptic (H¨rmander’s Theorem). we use the L1 norm. . Choosing some chart in a neighbourhood of x0 . ε) is equal to B(x. ε) ⊂ C[−ε. the set A(x. ε]n1 × [−ε2 . In the context of PDE. As a ﬁrst step. o 1. for small ε A(x. where n1 is the rank of the family X1 (0). ε) denotes the set of points accessible from x in time ε (or in time ≤ ε. ε). it is the same thing) by means of control ui such that u2 ≤ 1. . it is known under the name of H¨rmander’s Condition: if it is veriﬁed. The expression (8) implies also that the diﬀerential of the end-point mapping at the origin in H is the linear map m T u→ i=1 0 ui (t) dt Xi (0). In other words. . . we may write (1) as m x= ˙ i=1 ui (t) Xi (0) + O( x ) (6) The diﬀerential equation (1) thus appear as a perturbation of the trivial equation m x= ˙ i=1 ui (t)Xi (0) (7) Classical arguments on perturbation of diﬀerential equations show that the solution of (6) is given by m T x(T ) = x(0) + i=1 0 ui (t) dt Xi (0) + O( u 2 ). the set of points accessible from x(0) = 0 in time T ≤ ε satisﬁes. Xm (0). ε) for small ε. ε2 ]n−n1 .Geometry of Nonholonomic Systems 63 generated by the Xi ’s is full (self-evident deﬁnition). for u.

To begin with. To go further in the description of the set A(x. ε) we can use the so-called iterated integrals. . . stabilizing system (Σ) at a given point x0 . Given a neighbourhood U of x0 .64 A. ˙ Then (10) can be read as T T x(0) = 0. Bella¨ ıche. this means that the constant path at x0 is an abnormal path. that is. xj depends only ˙ on the controls and x1 . x(T ) = x(0) + 0 T 0 T 0 0 0 t1 t1 u1 (t) dt X1 (0) + 0 u2 (t) dt X2 (0) + u1 (t2 ) dt2 u2 (t1 ) dt1 − u2 (t2 ) dt2 u1 (t1 ) dt1 [X1 . Following our deﬁnition. . For example. there may not exist a smooth mapping x → ux of U into H such that the control ux steers x0 to x. F. or. .-J. when m < n. we suppose m < n. A stronger result is Brockett’s theorem asserting the non-existence of a continuous feedback law. as well. Risler Since. . This result has a lot of consequences. let us rewrite (9) as x = u1 X1 (x) + u2 X2 (x). xj−1 . Jean and J. x to x0 . But we shall see that it can be put to work for any system. typically. this linear map has rank n1 < n and the end-point mapping is not a submersion at 0 ∈ H. the system  ˙  x1 = u1    x =u ˙2 2 (9)  x3 = x1 u2 − x2 u1  ˙   x1 (0) = x2 (0) = x3 (0) = 0 is solved by T x1 (T ) = 0 T u1 (t) dt u2 (t) dt 0 T t1 T t1 x2 (T ) = x3 (T ) = 0 (10) u2 (t2 ) dt2 u1 (t1 ) dt1 0 0 u1 (t2 ) dt2 u2 (t1 ) dt1 − 0 This scheme works for chained or triangular systems. X2 ](0).

Geometry of Nonholonomic Systems 65 Put this way. except for the case n2 = n which can be dealt with directly. .8. uj (t2 ) dt2 ui (t1 ) dt1 or. ε3 ]n−n2 . cf. ε) satisﬁes now A(x. Of course. be considered as a limited expansion of order 2 of the end-point mapping about 0 in H. ε2 ]n2 −n1 × [−ε3 . 1≤i≤m One gets (the proof is not hard. ε2 ]n2 −n1 × [−ε3 . . ε3 ]n3 −n2 × · · · where the integers n1 . Observe that AT (u) is a linear function with i respect to u ∈ H. one can ask whether it contains some other box of the same kind. This expansion ij generalizes the expansion (8) and the set A(x. are the best possible. . ε]n1 × [−ε2 . ε3 ]n3 −n2 × · · · ⊂ A(x. for given T . n3 . and AT (u) is a quadratic function on H. the formula for x(T ) can readily be generalized to any control system of the form x= ˙ ui Xi (x). ε) ⊂ C[−ε. ε) requires new techniques and special sets of coordinates. ε]n1 × [−ε2 . ε) is contained in some box. ε]n1 × [−ε2 . written in a more civilized manner x(T ) = x(0) + (AT (u) + O( u 2 ))Xi (0) + i 1≤i≤m AT (u)[Xi . ε2 ]n2 −n1 × [−ε3 . the proof of an estimate like C [−ε. Brockett [5]) T x(T ) = x(0) + 1≤i≤m T 1≤i<j≤m T 0 0 t1 0 0 0 t1 u1 (t) dt + O( u 2 ) Xi (0) + ui (t2 ) dt2 uj (t1 ) dt1 − [Xi . Xj ](0) + O( u 3 ). Xj ](0) + O( u 3 ) ij 1≤i<j≤m which can. one has to replace inclusion (11) by A(x.6–1. n2 . Now. before this question can be taken seriously. ε) ⊂ C[−ε. Instead of computing limited expansion up to order r. This will be done in §§1. (11) Having shown that A(x. but by assigning weights to the coordinates. we will compute an expansion to order 1 only. .

Then for c = (x. It is worth noticing that r(q) ≤ r(p) for q near p. Bella¨ ıche. For other examples. Xm ) be the set of linear combinations. y) we have dim L1 (c) = 1 if x = 0. We will denote by d the distance deﬁned on M by means of vector ﬁelds X1 . . We deﬁne recursively Ls = Ls (X1 . . . Take M = R2 . of dimension n. . a system of vector ﬁelds X1 . Let us give an example. Xm . . . . . X2 = 0 xk (k is some integer). . . or ﬂag: {0} = L0 (p) ⊂ L1 (p) ⊂ · · · ⊂ Ls (p) ⊂ · · · ⊂ Lr(p) (p) = Tp M. Let L1 = L1 (X1 . with real coeﬃcients. We will suppose that X1 . . . Xm verify the condition of Chow. 3. dim L1 (c) = 2 if x = 0. Xm . by the vector ﬁelds X belonging to Ls . at the point p. Now. Xm ) of all Ls is a Lie subalgebra of the Lie algebra of vector ﬁelds on M which is called the control Lie algebra associated to (Σ). there is a smallest integer r = r(p) such that Lr(p) (p) = Tp M . . around which the behaviour of the system does not change in a qualitative way. We say that p is a regular point if the integers dim Ls (q) (s = 1. . so all points on the line x = 0 are singular and the others are regular. Deﬁnition. as well as L0 = 0. . . there is in fact an increasing sequence of vector subspaces. . . For each point p ∈ M . . Otherwise we say that p is a singular point. The union L = L(X1 . Xm on M . .6 Regular and singular points In the sequel we will ﬁx a manifold M . This integer is called the degree of nonholonomy at p. let Ls (p) be the subspace of Tp M which consists of the values X(p) taken. . 2. and X1 = 1 0 . .66 A. . Chow’s condition states that for each point p ∈ M . Lj ] for s = 2. . for p in M . .-J. . Points of the control system split into two categories: regular states. Risler 1. Xm ) by setting Ls = Ls−1 + i+j=s [Li . . . ) remain constant for q in some neighbourhood of p. . of the vector ﬁelds X1 . . where some qualitative changes occur. . . . F. arising in the context of mobile robot with trailers. We shall denote this ﬂag by F(p). Jean and J. . . see Section 2. . and singular states.

Moreover. X2 =  1  (14) 0 x2 + y . . (So that wj = s if ns−1 < j ≤ ns . yn1 are said to be of weight 1. such that the diﬀerentials ∗ dy1 . is the same for all regular points in a same connected component of M and is streactly increasing for 0 ≤ s ≤ r(p). Xm are analytic. and motivated. . .19. . as for an analytic function. (y1 . We set ns = dim Ls (p) (s = 0. Computing. we deﬁne the weight wj as the smallest integer s such that dyj is non identically zero on Ls (p). then it is easy to prove the following local estimate for the sub-Riemannian distance. . A simple counter-example is given by the system     1 0 X1 = 0 . .Geometry of Nonholonomic Systems 67 It is worth to notice that. . ﬁx a point p in M . . . . Coordinates y1 .) Then the proper generalization of (12) would be d(0. In the general case.11. 1. (y1 . For y closed enough to 0. yn are said to be of weight 2. and coordinates yn1 +1 . being non-zero at the formal level is equivalent to being non-zero at almost every point. . 2. . . 1. when M and vector ﬁelds X1 . or even bounding the degree of nonholonomy at singular points is much harder. regular or singular. . dyn form a basis of Tp M adapted to F(p) (we will see below how to build such coordinates). sections 2 and 3 (see also [9. . regular points form an open dense set in M . for some part.7 Distance estimates and privileged coordinates Now. Thus the degree of nonholonomy at a regular point is bounded by n − m + 1 (if we suppose that no one of the Xi ’s is at each point a linear combination of the other vector ﬁelds). . . Consider a system of coordinates centered at p. r). . . (13) It turns out that this estimate is generically false as soon as r ≥ 3. . . If r = 1 or 2. . . . . . s = 0. yn )) |y1 | + · · · + |yn1 | + |yn1 +1 |1/2 + · · · + |yn |1/2 (12) where n1 = dim L1 (p) (the notation f (y) g(y) means that there exists constants c. . . 1. we have d(0. the sequence dim Ls (p). .24]). . C > 0 such that cg(y) ≤ f (y) ≤ Cg(y)). . It may be easily computed when the deﬁnition of the Xi ’s allows symbolic computation. yn )) |y1 |1/w1 + · · · + |yn |1/wn . .

. . . y3 = z are adapted coordinates and have weight 1. If Condition (i). . . one can show that the order of zj is ≤ wj . dzn form an adapted basis. holds. n). zn centered at p a system of privileged coordinates if the order of zj at p is equal to wj (j = 1. . Jean and J. Indeed.4. y2 = y. . the following conditions are equivalent: (i) One has f (q) = O d(p. zn are privileged coordinates. We have L1 (0) = L2 (0) = R2 × {0}. Risler on R3 . Xi Xj Xk f . . . . Proposition 1. y2 . . If z1 . . . while w3 = 3. For a smooth function f deﬁned near p. d(0. .68 A. 3. Call further Xi Xj f . We call local coordinates z1 . dzn form a basis of ∗ Tp M adapted to F(p). . L3 (0) = R3 . if dz1 . 1 and 3. To formulate conditions on coordinate systems under which estimates like (13) may hold. but it may be < wj : for the system (14). . It is suﬃcient to replace y1 . Call X1 f. or (ii). . z) . . . the estimates (13) cannot be true. In the above example. (ii) The nonholonomic derivatives of order ≤ s − 1 of f vanish at p This is proven by the same kind of computations as in the study of example (14). . then dz1 . . . the order of coordinate y3 = z at 0 is 2. we say that f is of order ≥ s at p. Xm f the nonholonomic partial derivatives of order 1 of f relative to the considered system (compare to ∂x1 f. F. Bella¨ ıche. . this would imply |z| ≤ const. t3 . (x. . of f . . . whence z exp(tX2 )p but this is impossible since d2 z exp(tX2 )(p) dt2 2 = (X2 z)(p) = 1.-J. . so that y1 = x. Deﬁnition. the nonholonomic derivatives of order 2. . z2 = y. . The converse is not true. q)s for q near p. z3 = z − y 2 /2. ∂xn f ). . but one can give similar examples with regular p in dimension ≥ 4. Deﬁnition. . . the point under consideration is singular. y3 by z1 = x. we introduce some deﬁnitions. y. Indeed. However a slight nonlinear change of coordinates allows for (13) to hold. . . In this case. t=0 3 ≤ const. .

[Xis−1 . . [Xi2 . . . it is necessary and suﬃcient that α (Y1α1 . . Xis . . . can be rearranged as a sum of ordered monomials α cα1 .αn ’s are smooth functions. Yn1 . . . .is−1 is = [Xi1 . . . . . For a function f to be of order > s at p.Geometry of Nonholonomic Systems 69 To prove the existence. and call them Yns−1 +1 . . . αn ) such that w1 α1 + · · · + wn αn ≤ s. . zn supplied by the construction of Theorem 1..6. .) Theorem 1. This result reminds of the Poincar´-Birkhoﬀ-Witt theorem.αn (x)Y1α1 . Yns . . and where the cα1 . of privileged coordinates. . dyn form a basis dual to Y1 (p). αq−1 ! 1 (16) form a system of privileged coordinates near p. . . First. we ﬁrst choose vector ﬁelds Y1 . Yn (p). xn centered at p. in an eﬀective way.-J. Choose now any system of coordinates y1 . . . . . . . e Observe that the coordinates z1 . . . Xm a number n1 of vector ﬁelds such that their values form a basis of L1 (p). . .. .. . zn recursively deﬁned by zq = y q − {α | w(α)<wq } 1 αq−1 αq−1 α (Y α1 . .5 are given from original coordinates by expressions of the form z1 = y 1 z2 = y2 + pol(y1 ) ··· zn = yn + pol(y1 . . Lemma 1. The functions z1 . is are integers. one can obtain such a system y1 . . . . . proved by J. . . Yq−1 yq )(p) z1 1 . (We have set w(α) = w1 α1 + · · · + wn αn . Call them Y1 . .. This is is an immediate consequence of the following. Then for each s (s = 2. . . . yn by a linear change of coordinates. . Yn n f ) (p) = 0 for all α = (α1 . zq−1 α1 ! . Risler [4]: any product Xi1 Xi2 . (Starting from any system of coordinates x1 ..5. .) The proof is based on the following lemma. r) choose vector ﬁelds of the form Yi1 i2 . . . where i1 . Xis ] . . . . . . . . yn centered at p such that the diﬀerentials dy1 . ]] s s−1 (15) which form a basis of L (p) mod L (p). . Yn n with w1 α1 + · · · + wn αn ≤ s. . yn−1 ) . choose among X1 .. . . Yn whose values at p form a basis of Tp M in the following way. . . . . . . . . . . . . . . . . .

. and that the reciprocal change of coordinates has exactly the same form. . . zj−1 ) (j = 1. . . such coordinates are called canonical coordinates of the ﬁrst (resp. zn )∂zj . . m z= ˙ i=1 ui Xi (z). . The estimate d (0. . see Bella¨ ıche [2]). zj−1 ) + O z wj (j = 1. (z1 . .8 Ball-Box Theorem Using privileged coordinates. or. . . λwn zn ). The system (Σ) is called the nilpotent homogeneous approximation of the system (Σ). second) kind. Bella¨ ıche. . by setting Xi = n j=1 fij (z1 . . n). . . . . By dropping the O z wj . n). . . For the sub-Riemaniann distance ˆ d associated to the nilpotent approximation. . . zn ) → exp(zn Yn ) · · · exp(z1 Y1 ) p (see [18]). . . . zn ) → (λw1 z1 . . . . we get a control system (Σ) m zj = ˙ i=1 ui fij (z1 . . . Other ways of getting privileged coordinates are to use the mappings (z1 . 1. . (z1 . Jean and J.-J. . . in short. . zn ) → exp(z1 Y1 + · · · + zn Yn ) p (see [14]). where the functions fij are weighted homogeneous polynomials of degree wj −1. This system is nilpotent and the vec- tor ﬁelds Xi are homogeneous of degree -1 under the non-isotropic dilations (z1 . . . zn form a system of privileged coordinates at p.7. . zn )) |z1 |1/w1 + · · · + |zn |1/wn (17) holds near p if and only if z1 . The following theorem is then proved by ˆ comparing the distances d and d (for a detailed proof. . . the control system (Σ) may be rewritten near p as m zj = ˙ i=1 ui fij (z1 . Risler where pol denotes a polynomial. Theorem 1. . . F. without constant or linear term. the estimate (17) below can be shown by homogeneity arguments. Following the usage in Lie group theory. . . .70 A. . .

b ∈ M − F . By the fact. . In particular this implies that the decision part of the motion planning problem is the same for nonholonomic controllable systems as for holonomic ones. Since M − F is an open set. ε) can indeed be viewed as the subRiemannian ball of radius ε and Theorem 1. The open set M − F is called the free space. from Chow’s Theorem. Let us consider a nonholonomic system of control in the form (Σ). Then A(x. The constraints due to the obstacles can be seen as closed subsets F of the conﬁguration space M . A(x. The problem of nonholonomic motion planning with obstacle avoidance has been presented in Chapter [Laumond-Sekhavat]. εwn . 1. Choose an open neighbourhood U of the holonomic path small enough to be contained in M − F . The motion planning problem is to ﬁnd a trajectory of the system linking a and b contained in the free space. . It consists in dividing the problem in two parts: – ﬁnd a path in the free space linking the conﬁgurations a and b (this path is called also the collision-free holonomic path). For the complete problem. The existence of a trajectory approximating a given path can be shown as follows. the sides of the box being of length proportionnal to εw1 . From Chow’s Theorem (§1. ε) looks like a box. there is a trajectory lying in U and linking a and b. . εwn ]. We can assume that U is connected and then.4). Let a. the connexity is equivalent to the arc connexity. some algorithms are presented in Chapter [Laumond–Sekhavat].7 is called the Ball-Box Theorem (see Gromov [16]).Geometry of Nonholonomic Systems 71 The estimate (17) of the sub-Riemannian distance allows to describe the shape of the accessible set in time ε. ε) [−εw1 . In particular we see that there is a general method (called “Approximation of a collision-free holonomic path”). Then the problem is to decide the existence of a path in M − F linking a and b. Theorem 1. . . It can be formulated as follows.9 Application to complexity of nonholonomic motion planning The Ball-Box Theorem can be used to address some issues in complexity of motion planning.7 implies A(x. – approximate this path by a trajectory of the system close enough to be contained in the free space. deciding the existence of a trajectory linking a and b is the same thing as deciding if a and b are in the same connected component of M − F . We assume that Chow’s Condition is satisﬁed. εw1 ] × · · · × [−εwn .

. for any point q of γ. that is on the complexity of the geometric primitives modeling the obstacles and the robot in the real world (see [6. We denote by σ(γ. We will call topological complexity the complexity σt (γ. For a given ρ. the motion planning problem for holonomic systems) is very well modeled and understood. ε).e. . . The output trajectories will be the trajectories following γ to within ε. . ρ) the reunion of the balls of radius ρ centered at q. . For such a trajectory the complexity σ(c) can be deﬁned as the number of switches in the controls associated to c. . Let ε be the biggest radius ρ such that Tube(γ. . .30]). It remains to deﬁne the complexity of a trajectory. Let us consider ﬁrst bang-bang trajectories. We call ε the size of the free space around the path γ. this deﬁnition coincides with the previous one. Following [3]. um ) = (0. The complexity σ(c) appears then as the total number of sign changes for all the controls associated to the trajectory c. We have then to deﬁne this complexity for a trajectory approximating a given path. that is the trajectories contained in Tube(γ. . we denote by Tube(γ. ε) obtained with this deﬁnition. ε) the inﬁmum of σ(c) for c trajectory of the system linking a and b and contained in Tube(γ. . . Bella¨ ıche. F. Jean and J. that is trajectories obtained with controls in the form (u1 . Thus we can choose it as a deﬁnition of the complexity of the second part of our method.e. for a bangbang trajectory. ε) gives a complexity of an output trajectory. We will now extend this deﬁnition to any kind of trajectory. if we think to a car-like robot). . a complexity can be derived from the topological complexity of a realvalued function (i. It can be seen actually as the “complexity” of the output trajectory. ε). We will present here some possibilities.72 A. Let us assume that we have already deﬁned a complexity σ(c) of a trajectory c. the number of changes in the sign of variation of the function).. For the topological complexity. It depends on the geometric complexity of the environment. 0). Let us recall that the complexity of an algorithm is the number of elementary steps needed to get the result. ρ) is contained in the free space. . ±1. . The complexity of the second part requires more developments. σ(γ.-J. Risler What is the complexity of this method? The complexity of the ﬁrst part (i. we have chosen as elementary step the construction of a piece of trajectory without change of sign in the controls (that is without manoeuvring. Let γ be a collision-free path (provided by solving the ﬁrst part of the problem). Notice that.

ε) to the number of ε-balls needed to cover γ. m}. Consider a path γ such that. ε). the number of switches in a bang-bang trajectory (⊂ Tube(γ. this number is greater than Kε−2 . ˙ 0 1 It is well-known that. for a bang-bang trajectory without switches contained in Tube(γ.1 The car with n trailers Introduction This section is devoted to the study of an example of nonholonomic control system: the car with n trailers. X2 . θ)T ∈ R2 × S 1 and the system is given by:     cos θ 0 q = u1 X1 + u2 X2 . the length cannot exceed ε/ sin θ. Let us give an estimation of these complexities for the system of the car-like robot (see Chapter [Laumond–Sekhavat]). .8). Thus. ε) and σm (γ. Then.Geometry of Nonholonomic Systems 73 Another way to deﬁne the complexity is to use the length introduced in §1. Then we have. ε). For a trajectory c contained in Tube(γ. X2 = 0 .3 (see Formula (4)). y. By the Ball-Box Theorem (§1. ε) means that there exist c. Jean (see also [22] for weaker estimates). The conﬁgurations are parametrized by q = (x. for small ε = 0: L σt (γ. . ε) obtained with σε (c). ε) to the topological complexity. for all q ∈ R2 × S 1 . where the constant depends on γ. . the angle between Tq γ and Xi (q) is greater than a given θ = 0. one can link the complexity σm (γ. ε) ε−2 0 det(X1 . More precise results have been proven by F. C > 0 independant on γ and ε such that cf (γ. ε)) is not greater than the length of the trajectory divided by ε (up to a constant). the space L2 (q) has rank 3 (see Section 2). 2 2. ε)). ε) ≤ σ(γ. for any q ∈ γ and any i ∈ {1. Assume that T (q) belongs to L2 (q) − L1 (q) almost everywhere and that γ is parametrized by its arclength s. Let us consider a non-feasible path γ ⊂ R2 × S 1 . This links σε (c) and σm (γ. This system is nonholonomic since it is subject . Let us justify this deﬁnition on an example. Let T (q) ( T = 1) be the tangent vector to γ. When γ is C 1 and its tangent vector is never in L1 (q). with X1 =  sin θ  . we set σε (c) = length(c) ε and we call metric complexity the complexity σm (γ. T )(γ(s)) ds (let us recall that the notation σ(γ. ε) f (γ. . ε) ≤ Cf (γ.

The second point is the study of the degree of nonholonomy. a (n+3)-dimensional manifold. (18) . in particular from the point of view of ﬁnding stabilizing control laws: see e. We will prove in §2. F. We will give in §2. The kinematic model introduced by Fliess [8] and Sørdalen [33] satisﬁes this condition. r .2 Equations and notations Diﬀerent representations have been used for the car with n trailers. Jean and J. 1 = sin(θ1 − θ0 ) v1 .7 that one has a natural stratiﬁcation of the singular locus related to the degree of nonholonomy. the rolling without skiding of the wheels. Historically the problem of the car is important. The ﬁrst question is indeed the controllability. We are interested here in the properties of the control system (see below §2. This bound is the sharpest one since it is a maximum. namely one tangential velocity and one angular velocity which represent the action on the steering wheel and on the accelerator of the car.4 that the system is controllable at each point of the conﬁguration space. Fliess et al.g.5). . The kinematic model of a car with two degrees of freedom pulling n trailers can be given by: x ˙ y ˙ ˙ θ0 ˙ θi ˙ θn−1 ˙ θn = cos θ0 v0 . . n = sin(θn − θn−1 ) vn . r = ω. i+1 = sin(θi+1 − θi ) vi+1 . r . We have to ﬁnd the set of all the singular points (it is done in §2. Laumond and Risler ([23]). We will see in §2. It has been intensively treated in many papers throughout the litterature. since it is the ﬁrst nonholonomic system studied in robotics. = sin θ0 v0 . Bella¨ ıche. There are only two inputs. A car in this context will be represented by two driving wheels connected by an axle.2). The last problem is the singular locus. The states of the system are given by two planar coordinates and n + 1 angles: the conﬁguration space is then R2 ×(S 1 )n+1 . We give also the value of the degree of nonholonomy at the regular points (§2. . ([8]).-J. The problem is to choose the variables in such a way that simple induction relation may appear. 2. .6 an upper bound which is exponential in terms of the number of trailers.5) and also to determinate its structure. Murray and Sastry ([25]). Risler to non integrable constraints.74 A.

. – θn is the orientation angle of the pulling car with respect to the x-axis. for 0 ≤ i ≤ n − 1. The converse notations would be more natural but unfortunately it would lead to complicated computations. The motion of the system is then characterized by the equation: q = ωX1 (q) + vX2 (q) ˙ with the control system {X1 . . X1 =  . y. X2 } given by:     cos θ0 f0 0   0 sin θ0 f0      . The state of the system is parametrized by q = (x. . . – θi . and rn is the distance from the wheels of trailer 1 to the wheels of the car.  1 . y) are the coordinates of the center of the axle between the two wheels of the last trailer. Finally ri is the distance from the wheels of trailer n − i + 1 to the wheels of trailer n − i.Geometry of Nonholonomic Systems 75 where the two inputs of the system are the angular velocity ω of the car and its tangential velocity v = vn .  X2 =   . θ0 . The point of this representation is that the system is viewed from the last trailer to the car: the numbering of the angles is made in this sense and the position coordinates are those of the last trailer. or vi = fi v where n fi = j=i+1 cos(θj − θj−1 ). for 1 ≤ i ≤ n − 1. θn )T where: – (x. is the orientation angle of the trailer (n − i) with respect to the x-axis. The tangential velocity vi of the trailer n − i is given by: n vi = j=i+1 cos(θj − θj−1 ) v. .   sin(θn − θn−1 )  0 rn 1 0 .  .

X2 )(q) = 3. X2 ](q). y. then the ﬁrst independant brackets are X1 (q). [X2 . [X1 . For that. so the car with one trailer is controllable. we obtain the following results: – if θ2 − θ1 = ± π . X2 (q). degree of nonholonomy. then the ﬁrst independant brackets are X1 (q). Jean and J.76 A. First. θ1 )T and the vector ﬁelds are:     cos θ0 cos(θ1 − θ0 ) 0 0  sin θ0 cos(θ1 − θ0 )   X1 =   X2 =  1 0   r1 sin(θ1 − θ0 ) 1 0 We want to solve the three problems above (controllability. [X1 . singular set). r1 0 1 r1 It is straightforward that. the vectors X1 (q). Let us compute the ﬁrst brackets of X1 and X2 :  − cos θ0 sin(θ1 − θ0 )  − sin θ0 sin(θ1 − θ0 )   . the subspace L5 (X1 . Bella¨ ıche. we have to study the Lie Algebra generated by the control system (see §1. X2 ](q).6). X2 )(q) is the linear subspace generated by the values at q taken by the brackets of X1 and X2 of length ≤ k. Risler 2. for any q. X2 )(q) is 5-dimensional. On the other hand. X2 ]](q) are independant. where Lk (X1 . so all the points are regular and the degree of nonholonomy is always equal to 3. – if θ2 − θ1 = ± π . [X1 . dim L2 (X1 . Thus the car with 2 trailers is also controllable since. X2 )(q) = 4. [X2 . X2 ]]](q). F. X2 ] =  1   r1 cos(θ1 − θ0 ) 0    sin θ0  − cos θ0     − 1 . the conditions of the Chow theorem are satisﬁed at each point (since the conﬁguration space is 4-dimensional). X2 )(q) = 2. in both cases. dim L3 (X1 . [X1 . Let us consider now the car with 2 trailers. X2 )(q) doesn’t depend on q.-J. X2 ]](q) and [X2 . However we have now a singular set. These dimensions allow us to resolve our three problems. [X1 . X2 ](q) and [X2 .3 Examples: the car with 1 and 2 trailers Let us study ﬁrst the example of the car with one trailer. The state is q = (x. . X2 ]](q) and [X1 [X2 . [X2 . 2 [X1 . [X2 . 2 [X1 . the degree of nonholonomy equals 2 5 and at the regular points it equals 4. X2 ]] = [X1 . This implies that. [X2 . If we compute the ﬁrst brackets. [X1 . the dimensions of the Lk (X1 . [X1 . X2 (q). θ0 . At these points. X2 (q). X2 ]]]](q). for each q: dim L1 (X1 . the points q such that θ2 − θ1 = ± π .

X2 )(q) is n + 3. X2 ) and L (X1 . X2 ) be the set of linear combinations with real coeﬃcients of X1 and X2 .4): we have then to show that the dimension of L(X1 . However. By the induction (19) we construct from L1 (X1 .Geometry of Nonholonomic Systems 77 2. The union L(X1 . X2 )(q0 ) is the linear subspace generated by X1 (q0 ). X2 )(q0 ) = L2 (X1 . Let us now denote L1 (X1 . for each k ≥ 1 and each q.6. . X2 )(q). We deﬁne recursively the distribution Lk = Lk (X1 . L2 (X1 . X2 ). the sets Lk (X1 . y ) is the position of the pulling car). we want to apply Chow’s theorem (see §1. X2 ) of all Lk (X1 . Let us recall some notations introduced in §1. X2 ) and Lk (X1 . The kinematic model of a car with n trailers is controllable. To establish the controllability. W ] for V ∈ Li and W ∈ Lj . By deﬁnition L2 (X1 .4 Controllability The controllability of the car with n trailers has ﬁrst been proved by Laumond ([21]) in 1991. resp. Then L2 (X1 . He used the kinematic model (18) but a slightly diﬀerent parametrization where the equation were given in terms of ϕi = θi − θi−1 and (x . X2 ) is the Control Lie Algebra of the system {X1 . This adaptation has been presented by Sørdalen ([33]). X2 ) the sets Lk (X1 . Lj ] (19) where [Li . X2 )(q0 ) ⊂ L2 (X1 . We are going to prove this equality for k = 2 (the proof for any k can be easily deduced from this case). X2 )(q) are equal. Theorem 2. X2 ) the set of linear combinations of X1 and X2 which coeﬃcients are smooth functions. which prove our statement for k = 2. X2 )(q0 ). X2 ). Lk (X1 . X2 )(q0 ). Lj ] denotes the set of all brackets [V. X2 )(q0 ) is generated by X1 (q0 ).1. y ) ((x . From the other hand a bracket [f X1 .g)X2 (q0 ). X2 )(q). Obviously. For a given state q. X2 (q0 ) and [X1 . X2 ) by: Lk = Lk−1 + i+j=k [Li . the linear subspaces Lk (X1 . X2 }. X2 ](q0 ). gX2 ](q0 ) is a linear combination with real coeﬃcients of X1 (q0 ). X2 (q0 ) and all the [f (q)X1 . g(q)X2 ](q0 ) with f and g smooth functions. Then L2 (X1 . X2 )(q) and Lk (X1 . X2 ](q0 ) − g(X2 . Let L1 (X1 . gX2 ](q0 ) is equal to: f g[X1 . X2 ) are diﬀerent.f )X1 (q0 ) + f (X1 . we denote by Lk (X1 . X2 ](q0 ). X2 ). Proof. X2 (q0 ) and [X1 . Thus [f X1 . resp. For that. The proof of the controllability given here is an adaptation of the proof of Laumond for our parametrization. Lk (X1 . the subspace of Tq (R2 × (S 1 )n+1 ) wich consists of the values at q taken by the vector ﬁelds belonging to Lk (X1 .

n   n−i+2 i  Vn = (cos ϕ0 . Risler we are going to prove that L (X1 . It can be deﬁned as: β n (q) = min{k | dim Lk (X1 . X2 )(q) is n + 3-dimensionnal and use the relation L (X1 . . .5 Regular points Let us denote β n (q) the degree of nonholonomy of the car with n trailers.-J. X2 )(q) such that the determinant of the basis is constant for each point q of the conﬁguration space. Remark. . . 0. The form of these vector ﬁelds can be computed by induction.3) the values of this degree for n = 1 and 2: β 1 (q) = 3. r1 sin ϕ0 . . 0)T . β 2 (q) = 4 or 5. X2 )(q) = n + 3}. X2 } is called well-controllable if there exists a basis of n + 3 vector ﬁelds in L(X1 . for i ∈ {0. 1 (20) We have n + 3 vector ﬁelds which values at each point of the conﬁguration space are independant since their determinant equals 1/r1 . X2 )(q). X2 ] Zi+1 = [Wi+1 . i = 0. Let us introduce the following vector ﬁelds. 2. A stronger concept than controllability is given by the following deﬁnition: the system {X1 . . . .78 A. Vi+1 ].  1  Zn = (− sin ϕ0 . that the conﬁgurations where the car and the ﬁrst trailer are perpendicular have particular properties. X2 ): W0 = X1 Wi+1 = ri+1 (sin ϕi Vi + cos ϕi Zi ) V0 = X2 Vi+1 = cos ϕi Vi − sin ϕi Zi ) Z0 = [X1 . . . and then L(X1 . It appears. . We can then apply Chow’s theorem and get the result. . So the car with n trailers is well-controllable. 0) . . . 1. Bella¨ ıche. X2 )(q) = L(X1 . for n = 2. . Jean and J. . are equal to Tq (R2 × (S 1 )n+1 ). . 0. We give only the expression of the interesting ones:  T  Wi = (0. . X2 )(q). r1 cos ϕ0 . . X2 )(q). . . This fact can be generalized as follows ([19]): . which belong to L (X1 . . F. . The n + 3 vector ﬁelds that we have constructed in the proof satisfy this condition. . Therefore L (X1 . 0)T . 0. We have already computed (§2. n − 1}. 0.

which is given in Theorem 2. . . a point such that θk − θk−1 = ± π 2 ∀k = 2. . It can be shown for instance by converting the system into the so-called chained form as in Sørdalen ([33]). . F1 = 1.e. . Luca and Risler have also proved that this bound is a maximum which is reached if and only if each trailer (except the last one) is perpendicular to the previous one. i. the degree of nonholonomy equals n + 2. X2 ). The degree of nonholonomy β n (q) for the car with n trailers satisﬁes: β n (q) ≤ Fn+3 . Fn+3 = Fn+2 + Fn+1 .7 √ 1+ 5 2 n − √ 1− 5 2 n . the equality happens if and only if θi − θi−1 = ± π .4. This gives us a ﬁrst result on the degree of nonholonomy: Theorem 2. At a regular point. as it can be seen in the examples with 1 or 2 trailers. n. 2.6 that the degree of nonholonomy at regular points is ≤ n + 2.Geometry of Nonholonomic Systems 79 Theorem 2. Theorem 2. The singular locus of the system is the set of the points for which there exists k ∈ [2. We already know the values of the degree of nonholonomy in two extremal cases: . . In fact this degree is exactly n + 2. which is deﬁned by F0 = 0.6 Bound for the degree of nonholonomy A ﬁrst bound for this degree has been given by Laumond ([21]) as a direct consequence of the proof of controllability: we just have to remark that the vector ﬁelds (20) belong to L2n+1 (X1 . 2 Let us remark that this bound is exponential in n since the value of the n-th Fibonacci number is given by: 1 Fn = √ 5 2.2.. n] such that θk − θk−1 = ± π . i = 2. It has been proved in 1993 ([24.2. . Moreover. Form of the singular locus The last problem is to determinate the form of the singular locus. .34]) that a better bound is the (n+3)-th Fibonacci number. However this bound is too large.3. 2 The regular points are then the conﬁguration where no two consecutives trailers (except maybe the last two) are perpendicular. Thus the degree of nonholonomy is bounded by 2n+1 . n. It results from §1.

X2 )(q) and L2 (X1 . . X2 )(q) < i (22) n The sequence (21) can be entirely deduced from the sequence βi (q). β n (q) = n + 2. for i ∈ {1. q is a singular point (see §1.5) that this sequence is strictly increasing with respect to i for 2 ≤ i ≤ n + 3. Let us remark that βn+3 (q) is the degree of nonholonomy β n (q). In other words. Risler – if no two consecutive trailers are perpendicular. X2 )(q) (when i is strictly greater than this dimension.80 A. We have now to characterize the states intermediate between these both cases. To determinate the sequence (21).-J. For a given state q. X2 )(q) ≤ · · · ≤ n + 3. X2 )(q) ≥ i dim Lk−1 (X1 . i = n 1. – if each trailer is perpendicular to the previous one.6). (21) Let us recall that. the fact that k = βi (q) is equivalent to: dim Lk (X1 . if this sequence stays the same in an open neighbourhood of q. X2 )(q) such that Lk (X1 . Then the dimensions of L1 (X1 . we will n n prove that. F. the state q is a regular point of the control system. βi (q) increases with respect to i. . n According to its deﬁnition. In fact we will establish (in Theorem 2. βi (q) > −∞ and that k = βi (q) is equivalent to (compare with (22)): dim Lk (X1 . Hence the singular locus is completly characterized by the βi (q)’s n which we are going to study. (23) . X2 )(q) = i dim Lk−1 (X1 . otherwise. [X1 . for 2 ≤ i ≤ n + 3. . for all state q: n n n β1 (q) = 1 β2 (q) = 1 β3 (q) = 2. X2 ] is three dimensional for all q (see the examples n = 1 and 2). X2 )(q) are respectively 2 and 3 and we have. X2 )(q) ≤ · · · ≤ dim Lk (X1 . Thus to give the sequence (21) at any state q allows to characterize the singular locus. Bella¨ ıche. for i lesser n than dim L(X1 . n + 3}: n βi (q) = min{k | dim Lk (X1 . X2 )(q) ≥ i} n In other words. X2 . X2 )(q) = i − 1 We can also calculate easily the ﬁrst values of these sequences. β n (q) = Fn+3 . Jean and J. X2 )(q). It is clear that the family X1 . n + 3. we have the following sequence of dimensions: 2 = dim L1 (X1 . X2 )(q) = Lk−1 (X1 . βi (q) is equal to −∞). we only need the dimensions of the spaces Lk (X1 . . For that we deﬁne.

5) on the hyperplanes θ2 − θ1 = ± 2 . . The following theorem has been proved by F. Xis ] denotes [[. . by the following induction formulae: 1. 4) of the sequence (βi (q)). i = 1 . Jean in ([19]). the n computation of the βi (q) and the determination of a basis of Tq (R2 ×(S 1 )n+1 ).2. if ∃p ∈ [1. 2. . that is q p = (x.    β n−1 (q 1 ) β n (q)−β n−1 (q 1 )−1 i−1 i i−1 where [Xi1 . q p belongs to R2 × (S 1 )n−p+1 and it can be seen as the state of a car with n−p n − p trailers. the singular locus is the union of the the hyperplanes θk − θk−1 = ± π . Theorem 2. We restrict us to the case where the distances ri equal 1. ∀q ∈ n R2 × (S 1 )n+1 . then 2 n−1 n−2 n βi (q) = βi−1 (q 1 ) + βi−2 (q 2 ) 2. . . 3. X1 ] f or i > 2. . X1 . n − p + 3. n + 3} of Tq (R2 × (S 1 )n+1 ) by:   B1 = X1    B2 = X2  Bi = [X1 . at a point q. n + 3}. . for q ∈ R2 × (S 1 )n+1 and 1 ≤ p < n..n+3 (we remove β1 (q) because it n 2 is always equal to β2 (q)). . . Xis ]. θ0 . We can now give the complete characterization of the singular locus. then = ±1 such that θk − θk−1 = ak−p for every n−1 n−2 n βi (q) = 2βi−1 (q 1 ) − βi−2 (q 2 ) 3. . . Xi2 ].Geometry of Nonholonomic Systems 81 Finally. [Xi1 . βi (q) is streactly increasing with respect to i and can be computed. . 3. we will denote the projection on the ﬁrst (n + 3 − p) coordinates of q by q p . . 2 ≤ k ≤ n. . On each hyperplane we have a generic 2 n sequence (βi (q)) and the non generic points are: . n n Let us consider the sequence (βi (q))i=2. As we have seen in Theorem 2. X2 .5. the sequence (βi (q)) is equal π to (1. X2 . . The complementary of these two hyperplanes are the regular points of the system and corresponds to the 2 values (1. .. for i ∈ {3. . For example. Hence we can associate to this state the sequence βj (q p ). . . Let ap deﬁned by a1 = π/2 and ap = arctan sin ap−1 . 2. n−1 n βi (q) = βi−1 (q 1 ) + 1. n}.. . . we can construct a basis B = {Bi . for n = 2. . . . Xis−1 ]. θn−p )T .. y. Moreover.e. . i. otherwise. n − 2] and k ∈ {p + 1. for 2 ≤ i ≤ n + 3. . if θn − θn−1 = ± π . j = 1.. . .

. F. and more precisely of eﬀective bounds in term of n and of a bound d on the degrees of the Pij . we can hope of global ﬁniteness properties (on Rn ) for such systems.5. n and with θ3 − θ2 = ± π . Also.either in the intersection with an hyperplane θk+1 − θk = ±a2 . For the controllability on Rn .e. Let us consider for instance the π n hyperplane θ2 − θ1 = 2 .5.either in the intersection with another hyperplane θj − θj−1 = ± π which 2 corresponds to the case 1 of Theorem 2. The generic sequence (βi (q)) is equal to (1. .1 Polynomial systems Introduction We will deal in this section with polynomial systems. . it proves that βn+3 (q) is always deﬁnite ( i. 2. . Bella¨ ıche. . of the elements of degree ≤ φ(n. . Jean and J. and prove that it is bounded by a function φ(n. where the Pij ’s are polynomials in X1 . d) depending only on the dimension n of the conﬁguration space Rn . take a basis of Lφ(n. control systems in Rn n made with vector ﬁelds Vi = j=1 Pij ∂Xi . .. n+3) (it is a direct application of the recursion formulae of Theorem 2. . . the generic 4 2 4 sequence is (1. we will study the degree of nonholonomy of an aﬃne system without drift Σ made with polynomial vector ﬁelds V1 . d). . We have then a stratiﬁcation of n the singular locus by the sequence (βi (q)).e.5 contains all the previous results. . . 2. i. The non generic points are at the intersection with the hyperplanes θj −θj−1 = ± π . we have that the problem of controllability for a polynomial system (V1 . On θ2 − θ1 = π . Then the system is controllable at x if and only if the vector space spaned by the values at x of these brackets is Rn (see above §1. . . Vs ) of degree ≤ d (with rational coeﬃcients) is eﬀectively decidable: take x ∈ Rn . . 2 j = 3. . . Then the system Σ is controllable on Rn if and only if this ﬁnite family of vector ﬁelds is of . and on a bound d on the degrees of the Pij . and so on. we have again some generic and some singular points that we can ﬁnd with Theorem 2.. Let us remark at last that Theorem 2. . Vs ). 3 3. n + 1. .d) . . For these ”more singular” sets. n + 1.. As a consequence. (a2 = π ) 4 which corresponds to the case 2 of Theorem 2. . because polynomials are the simplest class of functions for which symbolic computation can be used. Vs ) up to length φ(n. n + 4) and we can continue the decomposition. . d) of the Lie algebra L(V1 . > −∞): the rank of L(X1 . compute the value at x of the iterated brackets of (V1 . . . . θ3 − θ2 = π . We n can also compute directly the values of βn+3 (q) and then its maximum. Xn .5. Polynomial systems are important for “practical” (or “eﬀective”) purpose.4). . . .5). i.e. . Vs on Rn . . In this section.82 A. .-J. . . Risler . n For instance. X2 )(q) at any point is then n + 3 and the system is controllable.

. . . . Qp are analytic functions deﬁned in a neighborhood of O. Recall (Q1 . . . the degree of the non zero monomial of lowest degree of this series). . Vk ). Qn ) = dimC C{X1 . . . . . spaning Lφ(n. . Let us ﬁrst recall some classical facts about intersection multiplicity. or again dn . . we will work over the ﬁeld C. . . . The matrix M is the matrix (V1 . . Xn (t)) (i. More precisely. Let I be the ideal of R[X1 . the intersection multiplicity at O of the analytic germ deﬁned by {Qi = 0} (1 ≤ i ≤ n) is by deﬁnition µ(Q1 . Vs+1 . Vi3 . . .. Qn ) (locally at O) is equivalent to the fact that the C-vector space C{X1 . ..2 Contact between an integral curve and an algebraic variety in dimension 2 In this section. . . we mean the order of Q|γ at O. Xn ] spaned by all the n × n minors of the matrix M . {Q = 0}. .e. . If Q1 . . Q(X.Geometry of Nonholonomic Systems 83 rank n at any point x ∈ Rn . see Section 2 of this chapter. By the contact (or intersection multiplicity) between a smooth analytic curve γ going through the origin O in Cn and an analytic germ of hypersurface at O. . . But this is known to be eﬀectively decidable: one has to decide if a matrix M with polynomial entries is of rank n at any point of Rn . . .Xn } is of ﬁnite dimension. Vi2 ]. . . .. . . and C{X1 . let X1 (t). We have Q|γ = (t3 +t4 )2 −(t2 +2t5 )3 = 2t7 + higher order terms. . . Set n = 2. . ]Vip ]. . Xn (t). . . Then the contact of γ and {Q = 0} at O is the order at 0 of the power series Q(X1 (t). with 1 ≤ ij ≤ s. .. Qn ). .. Xn } for the ring of convergent power series. Then... .e. . . . .. . .. [Vi1 . A better bound (and in fact an optimal one) would be a bound O(1) simply exponential in n. . Vs . 3. The bound described here for the degree of nonholonomy is doubly exponential in n. . Qn ) (24) Recall that the condition {O} = Z(Q1 . for the convenience of the reader.Qn ) . Xn } (Q1 . then the contact exponent between γ and the curve {Q = 0} is 7. Let us give an example.d) . ] . but all the results will be the same over the ﬁeld R. where the Vi ’s are the vector ﬁelds of Σ for 1 ≤ i ≤ s.. for the case of the car with n trailers. . we will set Z(Q1 . Y ) = Y 2 − X 3 . . and for s + 1 ≤ i ≤ k a set of brackets of the form [[. Then Σ is controllable on all Rn if and only if the zero set of I is empty. Note that this system is not polynomial. Xi (0) = 0 be a parametrization of the curve γ near the origin (Xi (t) are convergent power series in t). of the form O(dn ) or dO(n) . For an optimal bound in a particular case. . . γ(t) deﬁned by X(t) = t2 +2t5 . and that is eﬀectively decidable (see for instance [15] or [17]). Y (t) = t3 +t4 . Qp ) for the analytic germ at O deﬁned by Q1 = · · · = Qp = 0. if in Cn we have {O} = Z(Q1 . i. .

Xn }. Let V be a vector ﬁeld in Cn whose coordinates are polynomials of degree ≤ d..Qn ) Let V = P1 ∂/∂X1 + · · · + Pn ∂/∂Xn be a polynomial vector ﬁeld such that V (O) = 0. we have µ(Q1 .. Now. We have the following: Theorem 3. . Q1 . . Q0 = Q and Qi =< P. qn . and therefore is of order ν − 1 at O. . Set γ ∗ for the ring homomorphism : C{X1 . . and more generally. We may assume ν ≥ n. Xn } −→ C{t} induced by the parametrization of γ.. . . Xn (t)). that γ ∗ is surjective.. where qi is a bound for the degree of Qi . . The image of γ ∗ contains by assumption a power series of order one. . Qi (X1 (t). Qi is the Lie derivative of Qi−1 along the vector ﬁeld V . . Bella¨ ıche. . . . .. Similarly. . . . . Qn ) ≤ q1 · · · qn by B´zout’s theorem.. Jean and J. . .. Qn are polynomials of degrees q1 . . . .. Let Q(X1 . . . Risler at last that when Q1 .. . .1.Xn } < +∞.. Then the contact exponent ν between Q and γ sat(Q. . Q1 is the Lie derivative of Q along the vector ﬁeld V .. if dimC C{X1 . i.. . with u(O) = 0.. Q1 ◦ γ(t) = Q1 (X1 (t). . We have that the series Q(X1 (t). By deﬁnition. and Q a polynomial of degree q. Set Q1 Q2 = P1 ∂Q/∂X1 + · · · + Pn ∂Q/∂Xn = P1 ∂Q1 /∂X1 + · · · + Pn ∂Q1 /∂Xn .. .Qn−1 isﬁes ν ≤ qq1 · · · qn−1 + n − 1. and such that V (O) = 0. of the form v(t) = tu(t).Xn) < +∞). . . . Qn (t)) belongs to the ideal (tν−i ).. . i.e. . namely qi = q + i(d − 1).84 A. F. gradQi−1 >= j=1 Pj ∂Qi−1 /∂Xj . ν is the order of the power series Q ◦ γ(t) = Q(X1 (t). Xn (t)) be a smooth analytic parametrization of γ. . deg(Pi ) ≤ d. . Proof. . Xn ) be a polynomial of degree q. .Qn−1 ) γ∗ (25) −− − − −→ γ∗ ¯ C{t} (tν−n+1 ) . Xn } − − − .. Qn−1 ) (which means that } dimC C{X1 .e. n Qn−1 = P1 ∂Qn−2 /∂X1 + · · · + Pn ∂Qn−2 /∂Xn (i. Assume Q|γ ≡ 0. and that O is isolated in the algebraic set Z(Q. . . Let γ be the integral curve of V going through O....Q1 . Then the inverse function theorem implies that t itself is in the image of γ ∗ . Hence we have a commutative diagramm of ring homomorphisms: C{X1 . Xn (t)) is of the form tν v(t).-J. Let γ(t) : t → (X1 (t)..e.. − − → C{t}        C{X1 .. Similarly Qi ◦ γ(t) is of order ν − i for 1 ≤ i ≤ n − 1. for 1 ≤ i ≤ n−1). . . ...Xn } (Q. . . . . e (Q1 . belongs to the ideal (tν ) in C{X1 . . . . ..e.. .. i. Xn (t)) is the derivative of Q ◦ γ(t).

i. . Xn } C{t} ≤ dimC ≤ qq1 · · · qn−1 (tν−n+1 ) (Q.. .. . . (25) is true in dimension 2 without additional hypothesis: Corollary 3. One may conjecture that such a kind of result is valid (may be with } a slightly diﬀerent bound) without the hypothesis dimC C{X1 . . ¯ This implies that ν − n + 1 = dimC C{X1 . .. we have also that γ ∗ is surjective... ..e. γ the integral curve of V by O. the bound (25) for the Ri ’s implies the same bound for Q.. I then its dimension as a ring is the dimension (over C) of the germ at O of the analytic space deﬁned by Z(S1 . In fact. . . Let V = P1 ∂/∂X +P2 ∂/∂Y be a polynomial vector ﬁeld in the plane of degree ≤ d. . 0(1) ) Notice that for Theorem 3. Sq ).Qn−1 In particular.. we may always assume that we have } dim C{X1 . . Rs .1. .e. Sq ). it is enough to prove that if Q = RS. .Xn) ﬁnite. of the form C(n)dn . . . ... (Q. Therefore. If A is an analytic algebra. Y ) a polynomial of degree q such that Q|γ ≡ 0. such that V (O) = 0.. . and Q(X.. .Qn−1 would imply a simply exponential bound (i.. This (Q. Remark..2. Xn } = n − 2. Qn−1 ) or ν ≤ qq1 · · · qn−1 + n − 1 as asserted.. . then r(r +d−1) · · · (r +(n−1)(d−1))+s(s+d−1) · · · (s+(n−1)(d−1))+2(n−1) ≤ q(q + d − 1) · · · (q + (n − 1)(d − 1)) + n − 1 which is immediate by induction on n. I = (S1 . Notice that Q1 cannot be divisible by Q (since Q ◦ γ(t) is of order ν. Since γ ∗ is surjective...Xn } where I is an ideal. Q1 ) This implies that in Theorem 3. We have that dimC A < +∞ if and only if dim A = 0. s = degS. . . If A is a C-algebra. or dn for the degree of nonholonomy. q = r + s. . Xn ) is reduced (or even irreducible).. r = degR... . . if Q is irreducible. and dimC A its dimension as a C-vector space. we have dim C{X1 . because if Q = R1 . let us denote by dim A its dimension as a ring (it is its “Krull dimension”). . the last inequality coming from B´zout’s e theorem. . we may always assume that the polynomial Q(X1 ... Then the contact exponent ν of Q and γ satisﬁes ν ≤ q(q + d − 1) + 1. and Q1 ◦ γ(t) of order ν − 1). . (Q.1.Xn) ≤ n − 2. A = C{X1 .Geometry of Nonholonomic Systems 85 where the vertical arrows represent the canonical maps.

due to Gabrielov ([12]) Theorem 3. Xn ] of degree ≤ d. .86 A. Remark. In 1988 Nesterenko ([27]) found a bound of the form ν ≤ c(n)dn q n . Then the contact exponent ν between Q and γ satisﬁes n ν ≤ 22n−1 k=1 [q + (k − 1)(d − 1)]2n (26) Remark. 3. the following bound has been found by A. Let Σ = (V1 . . F. . . Bella¨ ıche. . but doubly exponential in the general case. It is optimal (up to constants) since it comes from Example 2) below that there exists a lower bound also polynomial in d and q and simply exponential in n. Moussu. . In dimension 3.-J. Risler This corollary has ﬁrst been proved by A.4. such that V (O) = 0. . Then.3 The case of dimension n We have the following result.3. namely simply exponential in n when d is ﬁxed. . Jean and J. F. [9]: ν ≤ q + 2q(q + d − 1)2 . .-M. J. . Risler. Vs ) be a control system made with polynomial vector ﬁelds on R2 of degree ≤ d.4 Bound for the degree of nonholonomy in the plane 2 In the two-dimensional case. Q(X1 . r(x) ≤ 6d2 − 2d + 2 (27) . Let V = Pi ∂/∂Xi be a polynomial vector ﬁeld. This bound is polynomial in d and q and simply exponential in n. . with Pi ∈ C[X1 . Xn ) a polynomial of degree ≤ q such that Q|γ ≡ 0. Gabrielov. Remark. Lion and R.-J. we have the following bound for the degree of non-holonomy (see [29]): Theorem 3. let r(x) be the degree of nonholonomy of Σ at x ∈ R2 . Gabrielov. 3. Jean and J. . [10].

Let us now state a Lemma in dimension n. . Let V.det(Y1 . . Then n V.6]. and set V = V1 . Exercice page 93]. Then det(V. . [V. . Y )|γ ≡ 0 ∀Y ∈ Σ. By Lemma 3.Q)|γ = νaν tν−1 +· · · because V|γ can be identiﬁed with ∂/∂t. we ﬁnd that det(V. or [26. The polynomial Q is of degree ≤ 2d. Y ). Proof. with aν = 0. which in our case implies that the system Σ is controllable at O. This means by deﬁnition of r(O) that r(O) ≤ ν + 1. of Theorem 3. . Yn ) = i=1 det(Y1 . Y ) = det(V. . Y1 . We therefore assume that V1 (O) = 0. Y )|γ ≡ 0. . We may assume dim L1 (O) = 1. .2 gives ν ≤ 2d(2d + d − 1) + 1 = 6d2 − 2d + 1.6. . .4.Geometry of Nonholonomic Systems 87 Proof. Y ] . Y )|γ . . Yn ) + Div(V ). in some neighborhood of O. . Then there exists Y ∈ Σ such that det(V. there exists Y ∈ Σ such that det(V. Y ])+DivV det(V. and if dim L1 (O) = 2. Take x = O. then Ls (O) = {0} ∀s ≥ 1. . and we see that when diﬀerentiating ν times in relation to t. . and that (V. By Lemma 3. Lemma 2. We have that Q|γ = aν tν +· · · . Lemma 3. This implies that the system cannot be controllable at O. where V = P1 ∂/∂X1 + · · · + Pn ∂/∂Xn . Yn be vector ﬁelds on Rn . Let as above (see §1. Y )|γ ≡ 0. ]])(O) = 0. [V. [V. [V. Then. Then Corollary 3. Lemma 3. since in some neighborhood of O the accessible set from O would be contained in γ.5.5. Set Q = det(V. . Let γ be the integral curve of V by O. . Assume r(O) > 1. Let ν be the order of contact of Q and γ. . Yi ]. . because otherwise the problem of computing r(O) is trivial (if dim L1 (O) = 0.6.det(V. we have V. . Yn ). [V [V. continued. . Proof. Let us recall that Div(V ) = ∂P1 /∂X1 + ∂P2 /∂X2 + · · · + ∂Pn /∂Xn . Y ])|γ is of order ν − 1 in t. . Assume that det(V. See for instance [13. . . and V is a polynomial vector ﬁeld of degree ≤ d. the bracket inside the parenthesis being of length ν+1. any vector ﬁeld Y ∈ Σ is tangent to the integral curve γ of V from O. . we have L1 (O) = R2 and r(O) = 1 by deﬁnition).6) Li (O) be the vector space spaned by the values at O of the brackets of elements of Σ of length ≤ i. .det(Y1 . . This formula is classical.

Risler Example. χn )|γ(χ ) ≡ 0. . which means that in general φ(n. Bella¨ ıche. m < k. 3. – there exists a vector ﬁeld χ = χ1 + 2 χ2 + · · · + n−1 χn−1 such that det(χ1 . Theorem 3. χn satisfying – χ1 = V1 . 2) Let in Rn   V1 = ∂/∂X1   d  V2 = X1 ∂/∂X2 Σ . d) is at least exponential in n. r(O) = d2 + 2d + 1.    d Vn = Xn−1 ∂/∂Xn . χk is either one of the Vi or belongs to the linear subspace generated by [χl . for 2 < k ≤ n. . .7.-J. . up to the constant 6. Then we have the following upper bound: n+3 r(x) ≤ φ(n.88 A. Jean.  . for l. Jean and J. Let n ≥ 3. where for simplicity. . . and because it is the most important case. . . let r(x) be the degree of non-holonomy at x ∈ Rn for the control system Σ made with polynomial vector ﬁelds of degree ≤ d. we assume the system controllable. Let f be a germ of an analytic function such that f (O) = 0 and f |γ(V1 ) ≡ 0 (γ(V1 ) denotes the trajectory of V1 going through O). With the above notation. .5 The general case Then it should be easily seen that for this system. Vs ) be a system of analytic vector ﬁelds controllable at O such that V1 (O) = 0. Let (V1 . . This proves that the estimation (27) is asymptotically optimal in term of d. r(O) = dn−1 . d) ≤ 2 n−2 (1 + 2 2n(n−2)−2 2n d k 2n ). Lemma 3. . d). Let us assume that the system Σ is controllable.8. . F. 1) Set Σ V1 = ∂/∂X + X d ∂/∂Y V2 = Y d ∂/∂X We see easily that for this system. Then there exists n vector ﬁelds χ1 . . with φ(n. The inequality r(O) ≥ d2 + 2d + 1 has been checked by F. We ﬁrst state without proof a result of Gabrielov [11]. . f χm ]. and. k=4 (28) Proof. χ2 is one of the Vi . We have the following result.

. applying (26).1). . For a generic linear function f . the conditions f (O) = 0 and f |γ(V1 ) ≡ 0 are ensured.Geometry of Nonholonomic Systems 89 Let us assume x = O. . χn ) is also polynomial. χk ] . . . . . By using Lemma 3. This implies χk (O) ∈ L2k−2 (Σ)(O) (this is the same reasoning as in the proof of Theorem 2. χn . From the ﬁrst point of Lemma 3. .8. The second point of Lemma 3. χk is a polynomial vector ﬁeld of degree not exceeding 2k−2 d.3. [χ . ]. . . We have then χ (O) ∈ L2n−3 (Σ)(O) and. the subspace L2n−2 +ν2n−3 (Σ)(O) is of dimension n and then n+3 r(O) ≤ 2n−2 (1 + 22n(n−2)−2 d2n k=4 k 2n ).8. ¿From the ﬁrst point of Lemma 3. . . ∀k. . . Then. Each derivation of Q along χ decreases this multiplicity by 1. ξn ) = 0. Its degree does not exceed d + d + · · · + 2n−2 d = 2n−1 d. .6. We can then apply the lemma and obtain n vector ﬁelds χ1 . . . . that means that there exists n brackets ξk = [χ . . Thus the vector ﬁeld χ is polynomial of degree not exceeding 2n−3 d and the determinant Q = det(χ1 . . . . Since det(ξ1 . such that: det(ξ1 (O). Hence the result of ν consecutives derivations of Q along χ does not vanish at O. . ξn (O)) = 0. the contact exponent ν between Q and γ(χ ) satisﬁes n ν ≤ 22n 3 −4n−1 k=1 (4d + k − 1)2n .8 ensures that Q and χ fulﬁll the conditions of Theorem 3. each χk is a linear combination with polynomial coeﬃcient of brackets of the vector ﬁelds Vi of length not exceeding 2k−2 . ξk (O) ∈ L2n−2 +ν2n−3 (Σ)(O). with at most ν occurences of χ .

). “Nilpotent and high-order approximations of vector ﬁeld systems. . 437–451. “On diﬀerential ﬂat nonlinear systems. Chow. A. English transl. A. R.. 5. 101–126. Risler. H. Gabrielov. 1978. 408–412. Comp. Moussu.. Fr. Univ. 13. A. Brockett. Young Ed. Heinz. 35. M. 11. 37–64. Bella¨ ıche. Preprint. L.” in Proceedings of the IFAC Nonlinear Control Systems Design Symposium. Godbillon. A. J. 117. Solerno. Gromov.” SIAM Review . 118.-J. “Complexity of deciding Tarski algebra. Nilpotent Lie groups. Jean and J. Soc. Bella¨ ıche. “The tangent space in sub-Riemannian Geometry. 238–264. Springer Lecture Notes in Mathematics.” in New directions in applied mathematics. “Sur la complexit´ du principe de Tarskie Seidenberg. 1990. C.” in Sub-Riemannian e Geometry.-P. The complexity of robot motion planning.-J. Fliess. Ann. W. 10. Bella¨ ıche. 33 (2). A. 1988.90 A. J. Risler Ed. 174–181. Jean and J. Sbornik (N. 319. Gabrielov.S. A. “Nilpotent inﬁnitesimal approximations to a control Lie algebra. 639. 1979.” in Proceedings of the IFAC Non linear Control Systems Design Symposium. 98–115. P.. P.-F. Gamkrelidze. “The exponential representation of ﬂows and the chronological calculus. J. Bella¨ ıche and J. Bangalore. USSR Sbornik .. Multiplicity of Polynomials on Trajectories of Polynomials Vector Fields in C3 . a 1996.-J.” Mathematical Research Letters. J. 1940. 322–337. A. Paris. 562. SpringerVerlag. Risler Ed. 2. Canny. Laumond and J. A. A.-M. Martin and P. France. India. June 1992. Grigoriev. Math.” CR Acad. Lion and R. Progress in Mathematics.. “Uber Systeme von linearen partiellen Diﬀerentialgleichungen erster Ordnung. “Multiplicities of Zeroes of Polynomials on Trajectories of Polynomial Vector Fields and Bounds on Degree of Nonholonomy. Risler References 1. F. Goodman. Gabrielov. Preprint. 9. G´om´trie diﬀ´rentielle et M´canique analytique. W. a 3. 2. e Paris VI.: Math. 467–532. Laumond and J. France. “Controllability of car-like robots and complexity of the motion planning problem. 12. Birkh¨user. A. M..” in International Symposium on Intelligent Robotics. J. 1992. V.-J. Jacobs. Bordeaux. Rouchon. 1991. 219–221. J. Hilton and G. “Ordre de contact de courbes int´grales e du plan. Levine. Multiplicity of a zero of an analytic function on a trajectory of a vector ﬁeld .” Math. March 1997. S. 1994. M. N.-J. Paris. 1998. 14.-P. Birkh¨user. 6. J. Gabrielov. 1976. “Carnot-Carath´odory spaces seen from within. F. Bella¨ ıche and J. e e e e 1969. A.” in SubRiemannian Geometry. Progress in Mathematics. J. ¨ 7. Hermes. Bella¨ ıche. 16. 1997. Roy and P. 17. Hermann. “Control theory and singular Riemannian geometry. 4.” Mat. Symb.” Bull. Sci. Purdue University. 727–785. F. 18. 1982. MIT Press. 5. Risler. 15. Agrachev and R. Bordeaux. 1996.” J. 1995. 107 (149). Institut de Math´matiques. 8.

Amer. O. Risler. 24. im. Murray. 26. 4.-J. “Any two points of a totally nonholonomic space may be connected by an admissible line. Math. “A bound for the degree of nonholonomy in the plane.” in Nonholonomic Motion Planning.-P.” Acta Math. 101–114. 1996. 1982. 83–94. “The maximum of the degree of nonholonomy for the car with n trailers.” Proc. “Nonholonomics systems: Controllability and complexity. and foliations with singularities.” in Proceedings of the International Conference on Advanced robotics and Automation. “Conversion of the kinematics of a car with n trailers into a chain form. Li and J. 37. 1996. Sørdalen. Laumond. Z. Italy. J. Laumond and J. “Metrics deﬁned by vector ﬁelds. Capri. orbits. O. Math. 1992. S. Soc.. R. Birk¨user. 157. Risler. 29. Austin.. Amer. Liebknechta. 343–348.-P. Real Analyticity and Geometric control. 1991. 31. 1985. 155. “Estimates for the number of zeros of certain functions. Stein and S. 21. Soc.” Proc. 29. Luca and J. 1993. 1993. F. oct. 1326–1329. “Some complexity questions regarding controllability. “On the global degree of non holonomy of a car with n trailers. Ser. Sørdalen. Nagel.” Theoretical Computer Science. 699–713. J. 2. 149–199. A. 25. Jacobs.” New Advances in transcendance Theor ..” Proc. 700–716. 443–450.fr/cocv/ . “Controllability of a multibody mobile robot. 28. E. T. Baker Ed. Sussmann. Sastry.. 1996. P. “The car with N trailers: characterization of the singular conﬁgurations. 165–170. 180.” Uch. “A motion planner for nonholonomic mobile robot. Cambridge. Seidenberg. Sontag. 38 (5). A.. M. “Accessible sets. J. Y. London Math.emath. Canny Ed. M. Stefan. 1033–1038. Sussmann. J. 1971. 103–147. 29 (3). 1938 (Russian).” ESAIM: COCV. 23. 33.” Advances in Applied Mathematics. J. Ped. Nesterenko. on Decision and Control . 241–266. Pisa. M. J. Millman. Inst. Sussmann Ed. Jean. J. Schwartz and M. 1994.” 4th IFAC Symposium on Robot Control . Sharir. Zap.. Murray and S. 20. 129–136. 298–351. P. “On the ‘Piano Movers’ problem II: general techniques for computing topological properties of real algebraic manifolds. Math. A.” 4th IFAC Symposium on Robot Control. 1–116. 1973.-J. 1988. “On the length of Hilbert ascending chain. Taix and R. “Nonholonomic Motion Planning: Steering using sinusoids.” Theoretical Computer Science. Brockett. E. P. F. Laumond. 263–269. 171–188.” in Diﬀerential Geometric Control Theory. 35. J. H. http://www. Rashevsky. a .” IEEE Transactions on Automatic Control .-J. V. 22.-P.” IEEE International Conference on Robotics and Automation. 32. 1983. “Orbits of families of vector ﬁelds and integrability of distributions. E. 157. 1974. 34.Geometry of Nonholonomic Systems 91 19. “Lie brackets. of the 27-th IEEE Conf. 36. Klumer Academic Publishers. H. 27. 1. Risler. 30.. May 1993. Laumond. J. 1988. 1994.” in LAAS-CNRS Report. J-P.. “Singularities and Topological Aspects in Nonholonomic Motion Planning. Capri. Soc. M. Phys.” Trans. K. Wainger.