Riccati observers for position and velocity bias estimation
from either direction or range measurements

arXiv:1606.07735v2 [cs.SY] 27 Jul 2016

Tarek Hamel and Claude Samson
Abstract— This paper revisits the problems of estimating the
position of an object moving in n (≥ 2)-dimensional Euclidean
space using velocity measurements and either direction or range
measurements of one or multiple source points. The proposed
solutions exploit the Continuous Riccati Equation (CRE) to
calculate observer gains yielding global exponential stability of
zero estimation errors, even in the case where the measured
velocity is biased by an unknown constant perturbation. These
results are obtained under persistent excitation (p.e.) conditions
depending on the number of source points and body motion
that ensure both uniform observability and good conditioning of
the CRE solutions. With respect to prior contributions on these
subjects some of the proposed solutions are entirely novel while
others are adapted from existing ones with the preoccupation
of stating simpler and more explicit conditions under which
uniform exponential stability is achieved. A complementary
contribution, related to the delicate tuning of the observers
gains, is the derivation of a lower-bound of the exponential rate
of convergence specified as a function of the amount of persistent excitation. Simulation results illustrate the performance of
the proposed observers.

Keywords: position estimation, Riccati observers, linear
time-varying systems, persistent excitation, observability.
I. I NTRODUCTION
The general problem of estimating the position, or the
complete pose (position and orientation), of a body relatively
to a certain spatial frame is central for a multitude of applications. This is common knowledge. Among all sensing modalities that can be used to acquire the necessary information,
source points direction (or bearing) measurements has early
motivated many studies, in particular for pose estimation
when body and source points are motionless in the frame
of interest, a problem referred to as the Perspective-n-Point
(PnP) problem in the dedicated literature [1]. Proposed solutions may roughly be classified into two categories, namely
non-iterative methods based on a finite set of measurements
(one per source point) feeding polynomial equations that are
either algebraically or numerically solved [2], and iterative
methods involving ongoing measurements that feed gradientlike recursive algorithms [3], [4]. Such recursive algorithms
are called observers in the Automatic Control community.
Generically, at least three source points are needed to ensure
that the number of body poses compatible with the measurements is finite [1]. It is commonly acknowledged that
these two types of methods are complementary. Non-iterative
T. Hamel is with I3S UNS-CNRS, Nice-Sophia Antipolis, France,
thamel@i3s.unice.fr.
C. Samson is with INRIA and I3S UNS-CNRS, Sophia Antipolis, France,
claude.samson@inria.fr, csamson@i3s.unice.fr.

methods are of interest to work out an approximation of
the body pose after elimination of non-physical solutions,
whereas iterative methods, that are local by nature (since
they may be stuck at local minima even in the case of a
unique global minimum), allow for a more precise estimation
in relation to their filtering properties [5]. The present paper
focuses on the sole estimation of the body position. This
corresponds to applications for which the body’s attitude is
either of lesser importance or is estimated by using other
sensing modalities. In this case, iterative methods are all
the more interesting that their domain of convergence can
be global. The reason is that, without the compact group of
rotations being involved, this simplified problem is amenable
to exact linearisation and can be associated with globally
convex cost functions, as shown further in the paper. Another
advantage of iterative methods is that they are naturally
suited to handle the non-static case, i.e. when either the body
or the point source(s) move(s), by using on-line the extra
data and information resulting from motion. In particular,
the observation of a single point source may be sufficient
in this case, provided that the body motion regularly grants
a sufficient amount of ”observability”. This possibility has
been studied recently in [6] where the problem is linearised
by considering an augmented state vector. Another solution,
not resorting on state augmentation, is proposed in [7]. The
present paper offers a generalization of previous studies on
this subject that encompasses the static and non-static cases
with an arbitrary number of source points.
Global Navigation Satellite Systems (GNSS), and the
American Global Positioning System (GPS) [8] in particular,
have familiarized the larger public with the problem of body
position estimation from source points distance (or range)
measurements. In the static or quasi-static case, solutions to
this problem may again be classified into non-iterative and
iterative methods. Similarly to the direction measurements
case, three point sources (satellites) are also required to
obtain a finite number (equal to two) of theoretical solutions,
with an extra source point (non-coplanar with the other
points) needed to eliminate the non-physical solution and
overcome the problem of desynchronized clocks resulting
in constant range measurement bias. The resolution of this
problem is also facilitated by the fact that constraint (output
or measurement) equations can be made linear in the unknown position coordinates. Studies of the non-static case
are much less numerous and more recent [9], [10]. To our
knowledge, Batista and al. [11] were first to address this
case by exploiting the possibility of linearising the estimation
problem via state augmentation, even when the body velocity

vector is biased by a constant vector. A similar idea is
used in the present paper, but via lower-dimensional state
augmentation. This yields simpler observers and reduced
computational weight.
For five decades, Kalman filters for linear systems, and
their extensions to non-linear systems known as Extended
Kalman Filters (EKF), have consistently grown in popularity
near engineers with various backgrounds (signal processing,
artificial vision, robotics,...) to address a multitude of iterative state estimation problems involving additive ”noise”
upon the state and/or the measurements. The optimality of
these filters in a stochastic framework under specific noise
conditions and assumptions, and their direct applicability
to Linear Time-Varying (LTV) systems, have undoubtedly
contributed to this popularity. It is however important to
keep in mind, or to recall, that the stability and robustness
properties associated with them, i.e. features that supersede
conditional stochastic optimality in practice, are not related
to stochastic issues. They result from properties of the
associated deterministic continuous-time (or discrete-time,
depending on the chosen computational framework) Riccati
equation that underlies a (locally) convex estimation error
index (or Lyapunov function) and a way of forming recursive
estimation algorithms that uniformly decrease this index exponentially (under adequate observability conditions). With
this perspective, Kalman filters belong to the (slightly) larger
set of Riccati observers that we intentionally derive here in
a deterministic framework, knowing that a complementary
stochastic interpretation may be useful to subsequently tune
the Riccati equation parameters and observer gains. We
also believe that, by contrast with standard Kalman filter
derivations, this approach allows one to better comprehend
how the system observability properties are related to the
good conditioning of the Riccati equation solutions and to the
observer’s performance (the rate of convergence to zero of
the estimation errors, in particular) via a Lyapunov analysis.
The research themes addressed in the present paper are
not new, nor are the basic conceptual tools (Riccati equation,
Lyapunov stability, uniform observability and persistent excitation,...) used to derive the proposed observers. However, we
believe that our approach to the problems and the resulting
observer design synthesis are original. Also, by contrast with
a majority of studies based on the application of Kalman
filtering, uniform exponential stability of the observers is
rigorously proved in association with explicit and simple
observability conditions worked out from the corresponding
observability Grammian condition. The connection between
rate of convergence and amount of observability is also
drawn out explicitly. Observers are derived for both direction measurements and range measurements, in n (≥ 2)dimensional Euclidean space so that both 2D and 3D cases
(of particular practical interest) are covered, with an arbitrary
number of source points. Concerning this latter aspect, the
observers are designed by first considering a single source
point, with stability and convergence of the observer relying
on persistent excitation properties associated with the body
motion. The solutions are then generalized to the case of

multiple source points, with the augmentation of the number
of these points reflecting on the gradual weakening of the
body motion conditions needed to ensure uniform exponential stability. While measuring the body velocity is central
to estimate the position, we also show how to modify the
observers via state augmentation when velocity measurement
are biased by a constant vector. Uniform exponential stability
is then preserved under either the same observability conditions, when direction measurements are used, or slightly
stronger ones, when range measurements are used with less
than (n + 1) source points. A complementary original result
concerns the case of range measurements corrupted by an
unknown common bias.
The paper is organized along six sections. Following the
present introduction, Section II recalls basic observability
concepts and central properties of the CRE, complemented
with a few original technical results used for the design
and analysis of the observers. Direction measurements and
range measurements cases are treated in Sections III and IV
respectively. Illustrative simulations results are presented in
Section V, followed by a short section VI of concluding
remarks. The proofs of several technical results are reported
in the Appendix.
II. R ECALLS
Although several of the definitions and results recalled in
this section are well known, others are not. Our main intent
here is to provide the reader with a self-contained overview
of basic observability concepts and of state observers whose
gains are calculated from solutions to the Continuous Riccati Equation (CRE). This overview is also an opportunity
to recall natural Lyapunov functions associated with these
observers for stability and convergence analysis.
Throughout the paper the following notation is used:
•

•

•

•

2

A(t), B(t), C(t) are finite-dimensional matrix-valued
functions depending on time. They are continuous,
bounded, and r (≥ 0) times differentiable with bounded
derivatives, with r specified (sometimes implicitly) in
subsequent developments.
The abbreviation p.s.d. (resp. p.d.) is used to denote
semipositive (resp. positive) square matrices that are
also symmetric. For instance, square null matrices are
p.s.d. matrices and identity matrices, denoted as Id
independently of their dimensions, are p.d. matrices.
The set of p.s.d. matrices obviously contains the set
of p.d. matrices.
Q(t) and V (t) are p.s.d. finite-dimensional matrixvalued functions of time. They are also continuous and
bounded. When no specific indication is provided in the
text these matrix-valued functions are chosen strictly
positive and greater than Id with  > 0.
The infimum (resp. supremum) over time of the smallest
(resp. largest) eigenvalue of a p.s.d matrix-valued function P (t) is denoted as pm (resp. pM ). For the matrixvalued function V (t) these infimum and supremum
values are accordingly denoted as vm and vM .

with the observer gain given by

A. Observability definitions and conditions
Consider a generic linear time-varying (LTV) system

ẋ = A(t)x + B(t)u
(1)
y = C(t)x

K(t) = k(t)P (t)C > (t)Q(t) ; k(t) ≥ 0.5

(5)

where P (t) is the solution to the so-called Continuous
Riccati Equation (CRE)

with x ∈ Rn the system state vector, u ∈ Rs the system input
vector, and y ∈ Rm the system output vector. The following
definitions and properties of observability associated with
this system are borrowed from [12].
Definition 2.1 (instantaneous observability): System (1)
is instantaneously observable if ∀t, x(t) can be calculated
from the input u(t), the output y(t), and the time-derivatives
u(k) (t), y (k) (t), k ∈ N.
Lemma 2.2: Define the observation space at the timeinstant t as the space generated by


N0 (t)


O(t) :=  N1 (t) 
..
.

Ṗ = A(t)P + P A> (t) − P C > (t)Q(t)C(t)P + V (t) (6)
with P (0) any p.d. matrix and Q(t), V (t) p.s.d. matrices that
have to be specified. Note that the optimal Kalman gain in
the stochastic setting where the matrices V (t) and Q−1 (t)
are p.d. matrices and interpreted as covariance matrices of
additive noise on the system state and output is obtained by
taking k(t) = 1.
Let us now quickly recall how the stability and convergence properties of a Riccati observer is directly related to
the properties of the solution P (t) to the CRE. Define the
estimation error x̃ := x − x̂, from (1) and (4) one obtains
the error equation

x̃˙ = (A(t) − K(t)C(t))x̃
(7)
with N0 = C, Nk+1 = Nk A + Ṅk , k = 1, . . . Then System Assume (for the time being) that P (t), which is a symmetric
(1) is instantaneously observable if rank(O(t)) = n.
matrix by construction, is well defined on R+ and is p.d.,
Definition 2.3 (uniform observability): Sytem (1) is uni- so that its inverse is also well defined and p.d., and consider
formly observable if there exists τ > 0 such that, ∀t, x(t) the candidate Lyapunov function V(t) = x̃> (t)P −1 (t)x̃(t).
can be calculated from the knowledge of the input u(.) and Then using the fact that the time-derivative of Ṗ −1 satisfies
the equation
ouput y(.) on the time-interval [t, t + τ ].
Note that, with this definition, uniformity is related to time Ṗ −1 = −P −1 A(t)−A> (t)P −1 +C > (t)Q(t)C(t)−P −1 V (t)P −1
and not to the input. This definition of uniform observability,
(8)
and using (5) and (7), one easily verifies that the timewhich we adopt here, is thus different from other definitions
derivative of V(t) is given by
proposed in the literature, e.g. [13] or [14].

Theorem 2.4 (sufficient condition for uniform observability):
V̇ = −x̃> (2k(t) − 1)C > (t)Q(t)C(t) + P −1 V (t)P −1 x̃
Sytem (1) is uniformly observable if there exist δ > 0,
≤ −x̃> P −1 V (t)P −1 x̃
µ > 0 such that ∀t ≥ 0
p2
1
W (t, t + δ) :=
δ

Z

t+δ

≤

>

>

Φ (s, t)C (s)C(s)Φ(s, t)ds ≥ µId > 0
t

m
vm V
− pM

(≤ 0)

p2

(9)

m
vm t). To conclude that x̃ =
so that V(t) ≤ V(0)exp(− pM
0 is globally exponentially stable it thus suffices to choose
V (t) > vm Id with vm > 0 and to show that P (t) i) is always
well-defined, ii) that it is p.d., and –most importantly– iii)
that it is well conditioned in the sense that pm is strictly
positive and pM is finite so that the ratio Pp2M is bounded.
m
Since this ratio essentially determines the exponential rate of
convergence of the estimation errors to zero, it is of interest
to know bounds of pm and pM in relation to the ”amount”
of observability. Such bounds are derived in Appendix B,
with a lower bound of pM calculated from an expression
derived in [16]. The central issue of boundedness and good
conditioning of P (t) brings us to recall classical, and also
point out less known, results concerning the CRE.

(2)

with Φ(t, s) the transition matrix associated with A(t), i.e.
d
such that dt
Φ(t, s) = A(t)Φ(t, s) with Φ(t, t) = Id .
The matrix valued-function W (t, t + δ) is called the
observability Grammian of System (1). A very useful result,
derived in [15], gives a sufficient condition for uniform
observability in terms of the properties of the matrices A(t)
and C(t) and their time-derivatives
Lemma 2.5: If there exists a matrix-valued function M (.)
of dimension (p × n) (p ≥ 1) composed of row vectors
of N0 (.), N1 (.),. . ., such that for some (strictly) positive
numbers (δ̄, µ̄) and ∀t ≥ 0
Z
1 t+δ̄ >
M (s)M (s)ds ≥ µ̄Id > 0
(3)
δ̄ t

C. Properties of the Continuous Riccati Equation

then the observability Grammian of System (1) satisfies the
condition (2) (and this system is thus uniformly observable).

The first results concerns the existence of the solutions to
the CRE for t ∈ [0, +∞).
Lemma 2.6: If P (0) is p.d. and Q(t) and V (t) are p.s.d,
then P (t) is p.d. and well defined on [0, +∞).
See the proof in Appendix A.
Now, to ensure boundedness and good-conditioning of the
solution P (t) to the CRE one has to impose other conditions

B. Riccati observers
We here call Riccati observer any observer of System (1)
of the form
x̂˙ = A(t)x̂ + B(t)u + K(t)(y − C(t)x̂) ; x̂(0) ∈ Rn (4)
3

v and kv denoting positive numbers, and if the following
persistent excitation (p.e.) condition is satisfied
Z
1 t+δ
Πy(s) ds ≥ Id > 0 , for some δ > 0 (12)
∀t :
δ t

upon the terms entering the equation. Sufficient conditions
are pointed out in the next lemma.
Lemma 2.7: Define:
Z
1 t+δ
Φ(t, s)V (s)Φ> (t, s)ds
(10)
WV (t, t + δ) :=
δ t

then the conditions on WV and WQ are also satisfied (and
the solution P (t) to the CRE is thus bounded and well
conditioned).
If one chooses Q(t) = kq Id and V (t) = kv Πy(t) then the
CRE writes as

and
WQ (t, t + δ) :=

1
δ

Z

t+δ

Φ> (s, t)C > (s)Q(s)C(s)Φ(s, t)ds

t

(11)
If there exist (strictly) positive numbers δ, µv , and µq such
that WV (t, t + δ) ≥ µv Id and WQ (t, t + δ) ≥ µq Id , ∀t,
then the solution P (t) to the CRE (6) is bounded and wellconditioned in the sense that 0 < pm ≤ pM < ∞.
A proof of this result is given in [16] where lower and
upper bounds of P (t) are also derived. The matrix Q(t) is
in fact assumed p.d. because the inverse of Q is (for technical
convenience) used in the proof. However, it is simple to
verify that the proposed bounds for P (t) do not depend on
the smallest eigenvalue of Q(t), so that these bounds are also
valid when Q(t) is only p.s.d.
From now on, and by analogy with the previously defined
observability Grammian W of System (1), WQ is called
Riccati observability Grammian. It coincides with W when
Q(t) = Id . Note that if Q(t) ≥ Id > 0 and the observability
Grammian W satisfies the positivity condition (2), then
the Riccati observability Grammian WQ satisfies a similar
condition. This is just a consequence of that WQ (t, t + δ) ≥
λmin (Q(t))W (t, t + δ).
The above lemma calls for the following (well known)
corollaries whose proofs are simple and omitted here for the
sake of conciseness.
Corollary 2.8:
• If A and B are constant and such that the pair (A, B) is
(Kalman) controllable, and if V (t) = B V̄ (t)B > with
V̄ (t) ≥ Id > 0, ∀t, then the condition upon WV is
satisfied. These conditions are themselves satisfied in
the particular case where B = Id and V (t) ≥ Id > 0.
• If A and C are constant and such that the pair (A, C) is
(Kalman) observable, and if Q(t) ≥ Id > 0, ∀t, then
the condition upon WQ is satisfied.
It is however useful to keep in mind that the above conditions
for the boundedness and good-conditioning of P (t) are only
sufficient. For instance, when A is constant and Hurwitz
stable, it is also sufficient to take Q(t) = 0, ∀t (so that
the Riccati observability Grammian is identically equal to
zero) and V constant. Indeed, it is simple to show that P (t)
then converges to the p.d. solution to the Lyapunov equation
AP + P A> + V = 0.
A second corollary, that will be used further for the design
of a position observer based on direction measurements, is
as follows
Corollary 2.9: Consider the projection matrix operator
Πy(t) := Id − y(t)y > (t) with y(t) ∈ Rn and such that
|y(t)| = 1 (i.e. y(t) ∈ S n−1 ). If A(t) is the null matrix,
C(t) = Πy(t) and V (t) ≥ v Id > 0 or V (t) = kv Πy(t) , with

Ṗ = −kq P Πy(t) P + kv Πy(t) ; P (0) : p.d.
and P (t) converges to (kv /kq )0.5 Id . Note that this latter
matrix is a solution to the CRE even when the condition
(12) of persistent excitation is not satisfied.
A technical extension of this corollary, also used further
for the same estimation problem, but in the case where the
velocity measurement is biased, follows
Lemma 2.10: If
1) C(t) = Πy(t) C̄ with C̄ a constant matrix,
2) A is constant and such that the pair (A, C̄) is Kalman
observable,
3) all eigenvalues of A are real, i.e. det(λId − A) =
0 ⇒ λ ∈ R,
4) the p.e. condition (12) is satisfied,
then the Riccati observability Grammian WQ (t, t + δ̄) is
positive for some δ̄ > 0 and ∀t ≥ 0.
See the proof in Appendix C. Let us just remark that
the requirement of eigenvalues of A being all real is not
fortuitous. Indeed, it is not difficult to find out examples
for which the non-satisfaction of this condition forbids the
Riccati observability Grammian from being positive. Such
an example is


0 1
A=
, C̄ = Id
−1 0
The pair (A, C̄) is clearly observable, and det(λId − A) =
λ2 +1 so that the eigenvalues of A are the imaginary numbers
±j. Choose y(t) = [cos(t), − sin(t)]> so that


R t+2π
R t+2π
sin(s)2
sin(2s)/2
Π
ds
=
ds
y(s)
t
t
sin(2s)/2 cos(s)2
= πId
This establishes that the p.e. property (12) is satisfied.
However, using the fact that exp(At) = cos(t)Id + sin(t)A
and setting b = [1, 0]> ∈ S 1 , one verifies that
Πy(s) C̄exp(A(s))b = Πy(s) y(s) = 0 , ∀s
This proves that the Riccati observability Grammian is never
invertible in this case.
III. O BSERVERS FOR POSITION ESTIMATION FROM
DIRECTION MEASUREMENTS

The problem consists in estimating the position x of a
body (or object) with respect to (w.r.t.) a fixed frame given
its velocity u and the measurement of its direction x/|x|,
knowing that the measured velocity may be biased by an
4

initially unknown constant vector a. In practice, x will be a
two-dimensional vector of coordinates (in the 2D, or planar,
case) or a three-dimensional vector of coordinates (in the
3D, or spatial, case). For the sake of generality, we assume
here that x ∈ Rn , with n ≥ 2. The corresponding modelling
equations are
ẋ = u + a
ȧ = 0
(13)
0 = Πy(t) x

Note that the pair (A, C̄) is Kalman-observable since
[C̄ > , (C̄A)> ] is equal to the (2n × 2n)-dimensional identity
matrix. Consider now the CRE
Ṗ = AP + P A> − P C > (t)Q(t)C(t)P + V (t)

with P (0): a p.d. matrix. Provided that the p.e. condition
(12) is satisfied, the solution P (t) to this CRE is bounded
and well-conditioned, by application of Lemma 2.10 after
noticing that all eigenvalues of A are equal to zero (and thus
real). Consider now the following Riccati observer
˙
X̂ = AX̂ + ū + K(t)(0 − C(t)X̂)
(19)

with y(t) := x(t)/|x(t)|. Let us distinguish two cases,
depending on whether the velocity measurement is unbiased,
i.e. a = 0, or is biased by an unknown constant vector a.

with X̂ := [x̂> , â> ]> and K(t) = k(t)P (t)C > (t)Q(t)
(k(t) ≥ 0.5). This observer can also be written as

x̂˙ = u + â − k(t)P11 (t)Πy(t) Q(t)x̂
(20)
â˙ = −k(t)P21 (t)Πy(t) Q(t)x̂

A. Unbiased velocity measurements
In this case the modelling equations can also be written
as

ẋ = Ax + u
0 = C(t)x

(14)

with Pij (i, j ∈ {1, 2}) denoting the block components of P
with adequate dimensions. Since the estimation error satisfies
the equation X̃˙ = (A − K(t)C(t))X̃, the Lyapunov analysis
of section II-B applies and global exponential stability of
X̃ = 0 is obtained provided that the p.e. condition (12) is
satisfied.

with A = 0n×n –the (n × n)-dimensional null matrix–
and C(t) = Πy(t) . This system can be associated with the
following Riccati-like observer
x̂˙ = Ax̂ + u + K(t)(0 − C(t)x̂)

(15)

C. Extension to multiple direction measurements
We consider now the problem of estimating a vector x
x−zi
, i ∈ {1, . . . , l}. In the
from l measurements yi = |x−z
i|
case where x represents the position of a body w.r.t. an
inertial frame, and zi is the known vector of coordinates
of a fixed source point, then yi is the unit vector measuring
the direction between the object and this point.
Setting X := [x> , a> ]> ,ū := [u> , 01×n ]> , and y =
[(Πy1 (t) z1 )> , . . . , (Πyl (t) zl )> ]> , one obtains the system

with the observer gain K(t) calculated as in relation (5) from
the solution to the CRE (6). The resulting observer writes as
x̂˙ = u − K(t)Πy(t) x̂

(16)

with K(t) = k(t)P (t)Πy(t) Q(t) and P (t) the solution to the
CRE
Ṗ = −P Πy(t) Q(t)Πy(t) P + V (t)
Since x̃˙ = (A − K(t)C(t))x̃ the Lyapunov analysis of
section II-B applies, and global exponential stability of
x̃ = 0 is obtained provided that P (t) is bounded and
well-conditioned. From Corollary 2.9 such is the case if
V (t) is chosen positive (and larger than v Id ) or equal
to kv Πy(t) , and –most importantly– if the p.e. condition
(12) is satisfied. A loose interpretation of this condition
is that the body must keep moving and not always in the
direction of the source point. Note that, in the case where
V (t) = kv Πy(t) and Q(t) = kq Id , choosing the constant
0.5
solution P = (kv /k
pq ) Id simplifies the observer equation
to x̂˙ = u − k(t) kq kv Πy(t) x̂, so that one recovers the
solution proposed in [7].

Ẋ = AX + ū
y = C(t)X

A

=


C(t)

=







C̄

=





0n×n
Id
0n×n 0n×n

Πy1 (t) 0n×n . . . 0n×n
0n×n Πy2 (t) . . . 0n×n 

 C̄
..
..
..

.
.
.
0n×n 0n×n
.
.
.
Π
yl (t)

Id 0n×n

..
 with dim(C̄) = ln × 2n
.
Id

In this more difficult case the velocity bias a has to be
estimated as well. The modelling equations (13) can be
written in the state form as

>

(21)

with

B. Biased velocity measurements

Ẋ = AX + ū
0 = C(t)X

(18)

0n×n

It is simple to verify that the pair (A, C̄) is Kalmanobservable. Consider now the CRE
Ṗ = AP + P A> − P C > (t)Q(t)C(t)P + V (t)

(17)

with P (0): a p.d. matrix and

Q11 (t) 0n×n . . .
 0n×n Q22 (t) . . .

Q(t) = 
..
..

.
.

> >

with X := [x , a ] the 2n-dimensional extended state
vector, ū := [u> , 01×n ]> , and




0n×n
Id
A=
, C = Πy(t) C̄, C̄ = Id 0n×n
0n×n 0n×n

0n×n
5

0n×n

...

0n×n
0n×n
..
.
Qll (t)







The solution P (t) to this equation is bounded and well conditioned provided that the corresponding Riccati observation
Grammian WQ is positive. Using the fact that


∆(t) 0n×n
C > (t)Q(t)C(t) =
0n×n 0n×n
Pl
with ∆(t) :=
i=1 Πyi (t) Qii (t)Πyi (t) , one verifies that
this condition Ris satisfied if, for some δ >P0 and for
t+δ ¯
l
¯
with ∆(t)
:=
all t > 0, 1δ t ∆(s)ds,
i=1 Πyi (t) ,
is greater than an arbitrarily small s.p.d. matrix. This p.e.
condition clearly points out the interest of using multiple
direction measurements in order to weaken, or even remove,
conditions upon x and its time-variations. For instance, in
the 3D case (n = 3), if l ≥ 2 then this p.e. condition is
satisfied provided that the body is periodically not aligned
with all the source points. If three or more source points
are not aligned, then this condition is automatically satisfied
independently of x and its time-variations.
A Riccati observer associated with this system is
˙
X̂ = AX̂ + ū + K(t)(y − C(t)X̂)

measured velocity may be biased by an initially unknown
constant vector a. Again, for the sake of generality, we
assume that x ∈ Rn , with n ≥ 2. For the sake of simplifying
forthcoming relations, and also to prevent the designed
observer from being singular when |x| = 0, it is useful to
formally set the system’s output y equal to 0.5|x|2 rather
than |x|. The corresponding modelling equations are
ẋ = u + a
ȧ = 0
y = 0.5|x|2

Let us again distinguish two cases, depending on whether the
velocity measurement is unbiased, i.e. a = 0, or is biased by
an unknown constant vector a.
A. Unbiased velocity measurements
In this case the modelling equations can be linearised by
defining the (n + 1)-dimensional extended state vector X :=
[x> , y]> . Indeed, forming the time-derivative of X yields the
LTV system
Ẋ = A(t)X + ū
(25)
y = CX

(22)

with X̂ := [x̂> , â> ]> and K(t) = k(t)P (t)C > (t)Q(t)
(k(t) ≥ 0.5). One easily verifies that this observer can also
be written as
(
Pl
x̂˙ = u + â − k(t)P11 (t)( i=1 Πyi (t) Qii (t)(x̂ − zi ))
P
l
â˙ = −k(t)P21 (t)( i=1 Πyi (t) Qii (t)(x̂ − zi ))
(23)
From what precedes this observer globally exponentially
stabilizes X̃ = 0 if the previously evoked p.e. condition is
satisfied.

with ū := [u> , 0]> and


0n×n 0n×1
A(t) =
, C = [01×n 1]
u> (t)
0
A Riccati observer associated with this system is
˙
X̂ = AX̂ + ū + K(t)(y − C X̂)
K(t) = k(t)P (t)C > q(t)
Ṗ = A(t)P + P A> (t) − P C > q(t)CP + V (t)

l
X

(26)

with P (0) a p.d. matrix, k(t) ≥ 0.5, q(t) ≥  > 0, and
V (t) ≥ Id > 0. Setting X̂ = [x̂> , ŷ]> this observer can
equivalently be written as

x̂˙ = u(t) + k(t)q(t)P21 (t)(y(t) − ŷ(t))
ŷ˙ = u> (t)x̂ + k(t)q(t)p22 (t)(y(t) − ŷ(t))

Remarks:
¯
• In the 3D-case, if l ≥ 2 and the matrix ∆(t)
is positive,
and if the body moves with a constant unknown velocity, the
above observer provides also an estimation of this velocity.
To this aim it suffices to set u = 0 in the algorithm. The
term â is then an estimate of the body velocity that is equal
to a in this case.
• In the unbiased case where a = 0 and the body velocity
u is measured, the calculation of â is superfluous and the
above observer reduces to
x̂˙ = u − k(t)P (t)(

(24)

This observer globally exponentially stabilizes the estimation
error X̃ := X − X̂ at zero if P (t) is bounded and wellconditioned. From what precedes such is the case if there
exists δ > 0 and µq > 0 such that the Riccati observability
Grammian satisfies WQ (t, t + δ) ≥ µq Id , ∀t ≥ 0. We
claim that this latter condition is itself satisfied when the p.e.
condition upon u(t) specified in the next lemma is satisfied.
Lemma 4.1: If u(t) satisfies the p.e. condition
Z
1 t+δ
u(s)u> (s)ds ≥ µId > 0
(27)
∀t ≥ 0 :
δ t

Πyi (t) Qii (t)(x̂ − zi ))

i=1

with P (t) the solution to the CRE
Ṗ = −P ∆(t)P + V (t)

for some δ > 0 and µ > 0, then the Riccati observer (26)
globally exponentially stabilizes X̃ = 0.
See the proof in Appendix D.
Remark: Another observer yielding the asymptotic stability
of X̃ = 0 under the p.e. condition upon u(t) and when u(t)
is uniformly continuous is

x̂˙ = u(t) + k1 (y(t) − ŷ(t))
ŷ˙ = u> (t)x̂ + k2 (t)(y(t) − ŷ(t))

A particular solution to this latter equation, obtained by
choosing V (t) = ∆(t), is P = Id .
IV. O BSERVERS FOR POSITION ESTIMATION FROM
RANGE MEASUREMENTS

The problem consists in estimating the position x of
a body w.r.t. a fixed frame given its velocity u and the
measurement of the distance (or range) |x|, knowing that the
6

with k1 > 0 and 0 ≤ k2 ≤ k2 (t) ≤ k2 < ∞. This
can be proved by considering the positive function V(t) :=
|x̃(t)|2 /k1 + ỹ(t)2 whose time-derivative satisfies V̇(t) =
−2k2 (t)ỹ(t)2 (≤ 0). One deduces that ỹ(t) converges to zero
and that |x̃(t)| is bounded and converges to some finite limit
|x̃∞ |. Then, by application of (extended) Barbalat’s Lemma
one deduces that the time-derivative of ỹ(t) converges to
>
zero
also converges to zero. Therefore
R t+δ so>that u (t)x̃(t)
2
|u
(s)x̃(s)|
ds
converges
to zero when t tends to
t
infinity. The convergence of ỹ(t) to zero also implies that
the time-derivative of x̃(t) converges to zero. From there
one finishes the proof by showing that the satisfaction of the
p.e. condition is not compatible with |x̃∞ | =
6 0.
An advantage of this second observer over a Riccati
observer is that it involves less calculations. However, the
proof of convergence of this observer, as sketched above,
does not establish that the rate of convergence is exponential.
This limitation epitomizes an important feature that goes
with Riccati observer designs, namely the knowledge of an
explicit Lyapunov function that allows for a more complete
analysis of stability and convergence.

an inertial frame, and zi is the known vector of coordinates
of a fixed source point, then yi is half the squared distance
between the body and this point.
1) Unbiased velocity measurements (a = 0): Define the
(l × 1)-dimensional constant vector ξP:= [1, . . . , 1]> . Define
l
the weighted output variable y0 := i=1 αi (yi − 0.5|zi |2 ),
>
with α = [α1 , . . . , αl ] denoting
a l-dimensional vector
Pl
of real numbers such that
α
i=1 i = 1. Since ẋ = u
Pl
and y0 = 0.5|x|2 − i=1 αi zi> x, one has ẏ0 = (x> −
Pl
>
i=1 αi zi )u. Define also the l-dimensional output vector
y := [y0 , (y1 − y0 − 0.5|z1 |2 ), . . . , (yl − y0 − 0.5|zl |2 )]>
and the augmented state X := [x> , y0 ]> . Since (yj − y0 −
Pl
0.5|zj |2 ) = i=1 αi zi> x − αj zj> x one has y = CX with


01×n
1
C :=
D(α)Z > 0l×1
D(α) := ξα> − Il×l
: (l × l)-dimensional matrix
ξ := [1, . . . , 1]>
: (l × 1)-dimensional vector
Z := [z1 . . . zl ]
: (n × l)-dimensional matrix
Note that the rank of the matrix D(α) is equal to (l − 1).
From the previous definitions one obtains the linear system

B. Biased velocity measurements

Ẋ
y

In this more difficult case the modelling equations can
be linearised by defining the (2n + 3)-dimensional extended
state vector X := [x> , a> , y, a> x, |a|2 ]> . Indeed, forming
the time-derivative of X yields the LTV system
Ẋ = A(t)X + ū
y = CX
with ū := [u> , 01×(n+3) ]> and

0n×n In×n 0n×1 0n×1
 0n×n 0n×n 0n×1 0n×1
 >
0
1
A(t) = 
1×n
 u (t) 0>
 01×n u (t)
0
0
01×n 01×n
0
0
C = [01×n 01×n 1 0 0]

(30)

with

A(t) :=

(28)

0n×1
0n×1
0
1
0

= A(t)X + ū
= CX

0n×n
u(t)>

0n×1
0




, ū :=

I
Pln×n >
− i=1 αi zi


u

A Riccati observer associated with this system is of the form
(26), except for the positive scalar q(t) involved in the CRE
that is now replaced by a ((l + 1) × (l + 1))-dimensional p.d.
matrix Q(t).
Lemma 4.3: If u(t) and the vectors zi (i = 1, . . . , l)
satisfy the p.e. condition
Z
1 t+δ
∀t ≥ 0 : ZD> (α)D(α)Z > +
u(s)u> (s)ds ≥ µId
δ t
(31)
for some δ > 0 and µ > 0, then the above-mentioned Riccati
observer globally exponentially stabilizes X̃ = 0.
The proof of this lemma is a straightforward adaptation of
the proof of Lemma 4.1 given in Appendix D, after observing
that the matrix M (t) involved in the proof is now


01×n
1
M (t) =  D(α)Z > 0l×1  .
0
u> (t)








A Riccati observer associated with this sytem is given by
(26), and global exponential stability of this observer follows
if the system’s observability Grammian satisfies (2). We
claim that this latter condition is itself satisfied when the p.e.
condition upon u̇(t) specified in the next lemma is satisfied.
Lemma 4.2: If u(t) is twice differentiable with bounded
first and second derivatives and if u̇(t) satisfies the p.e.
condition
Z
1 t+δ
u̇(s)u̇> (s)ds ≥ µId > 0
(29)
∀t ≥ 0 :
δ t

We remark that the p.e. condition is automatically satisfied, independently of u(t), when l ≥ n + 1 and
>
rank(D(α)ZP
) = n, i.e. when n vectors among the l
l
vectors zj − i=1 αi zi (j = 1, . . . , l) are independent. For
instance, in the 3D case (resp. 2D case) it is satisfied when
the number of source points is equal to, or greater than, four
(resp. three) and all source points are not coplanar (resp.
aligned). This result is coherent with the minimum number of
source points needed to geometrically determine the position
of a motionless body with no ambiguity from a single set

for some δ > 0 and µ > 0, then the Riccati observer globally
exponentially stabilizes X̃ = 0.
See the proof in Appendix E.
C. Extension to multiple range measurements
We consider now the problem of estimating a vector x
from l measurements yi = 0.5|x − zi |2 , i ∈ {1, . . . , l}. In
the case where x represents the 3D position of a body w.r.t.
7

of multiple range measurements. Using more source points
provides redundancy that can be used to accelerate the rate
of convergence and/or reduce the asymptotic variance of
X̃ when the range measurements are corrupted by noise.
More generally, Riccati observers performance depends on
the tuning of the parameters involved in the CRE, namely
k(t), Q(t), and V (t). In this respect the choice of parameters
associated with the stochastic optimal Kalman filter can provide useful leads in complementation with the dependence,
pointed out earlier, between the exponential convergence rate
of the observer and the amount of persistent excitation. This
tuning issue is important for practical purposes and deserves
to be studied in its own right. However, it is out of the present
paper’s scope and is thus not pursued further here.
2) Biased velocity measurements (a is a priori unknown):
Define
> >
>
2 >
• X := [x , a , y0 , a x, |a| ] ;
2
2 >
• y := [y0 , (y1 − y0 − 0.5|z1 | ), . . . , (yl − y0 − 0.5|zl | )] ,
i.e. the same output vector
as
in
the
unbiased
case;
Pl
>
>
>
• ū := [u , 01×n , −u (
i=1 αi zi ), 0, 0] .
Forming the time-derivative of X yields a linear system alike
(30) with the state matrix


0n×n
In×n
0n×1 0n×1 0n×1
 0n×n
0
0n×1 0n×1 0n×1 


Pln×n >
>

A(t) =  u (t) − i=1 αi zi
0
1
0 

 01×n
u> (t)
0
0
1 
01×n
01×n
0
0
0
and the output matrix

01×n
C :=
D(α)Z >

01×n
01×n

1

0

0

0l×1

0l×1

0l×1

3D-case (resp. two in the 2D-case), is sufficient to yield
the exponential stabilization of X̃ = 0 independently
of the input u(t). Nevertheless, the knowledge of the
time-derivative of x, via the estimation of the bias a, is still
required.
Remark: When the rank of the matrix D(α)Z > is
equal to n, i.e. when using at least four non-coplanar
source points in the 3D-case and at least three non-aligned
source points in the 2D-case, and when the body velocity is
constant but unknown a priori, the observer provides also
an estimate of this velocity. To this aim it suffices to set
u = 0 in the algorithm. The term â is then an estimate of
the body velocity a.
3) Biased range measurements: A practical reason for
considering the case of range measurements corrupted by
an additive constant bias b stems from that several range
sensors measure times of flight via the use of clocks that
are not necessarily exactly synchronized. For instance, in
the case of GNSS (global navigation satellite systems) the
clocks of the satellites are typically desynchronized from the
receiver’s clock by a small value ∆t that produces a range
measurement bias equal to c∆t, with c denoting the speed of
light. This leads to estimate b together with the body position
x.
Let us thus assume that the measured distance is ȳi =
|x − zi | + b (i ∈ {1, . . . , l}) with b an unknown real number.
By analogy with the unbiasedP
case let us set yi := 0.5ȳi2
l
for i ∈ {1, . . . , l} and y0 := i=1 αi (yi − 0.5|zi |2 ), with
>
α = [α1 , . . . , αl ] denoting
a l-dimensional vector of real
Pl
numbers such that
α
= 1. The (measured) output
i
i=1
vector is still y := [y0 , (y1 − y0 − 0.5|z1 |2 ), . . . , (yl − y0 −
0.5|zl |2 )]> . Define ȳ := [ȳ1 , . . . , ȳl ]> , the augmented state
>
vector as X := [x> , y0 −
ȳ), b]> ∈ Rn+2 and the
Pb(α
l
>
input vector ū := [u , − i=1 αi (zi> u), 0]> . One obtains
the following LTV system: Ẋ = A(t)X + ū, y = C(t)X,


with
0n×n 0n×1 0n×1
0
0 
A(t) =  u> (t)
01×n
0
0



A Riccati observer associated with this system is thus again
given by (26), with the p.d. matrix Q(t) involved in the
CRE chosen as in the unbiased case with multiple range
measurements.
Lemma 4.4: If u(t) is twice differentiable with bounded
first and second derivatives, and if u̇(t) and the vectors zi
(i = 1, . . . , l) satisfy the p.e. condition
Z
1 t+δ
u̇(s)u̇> (s)ds ≥ µId
∀t ≥ 0 : ZD> (α)D(α)Z > +
δ t
(32)
for some δ > 0 and µ > 0, then the Riccati observer globally
exponentially stabilizes X̃ = 0.
The proof of this lemma is a simple adaptation of the proof
of Lemma 4.2 given in Appendix E, with the matrix M (t)
involved in the proof chosen as follows


N0
M (t) =  N1 (t) 
N̄2 (t)

and

C=

01×n
D(α)Z >

1
0l×1

α> ȳ
−D(α)ȳ



A Riccati observer associated with this system is of the form
(22), with the matrix Q(t) chosen larger than an arbitrarily
small p.d. matrix.
Lemma 4.5:
1) Motionless body (static case):
Let di = |x − zi | (i = 1, . . . , l) denote the distance
between the ith source point to the body, and ri :=
(x−zi )/|x−zi | (i ∈ {1, . . . , l}) denote the unit vector
charactering the direction from the ith source point to
the body. Assume that at least (n + 2) source points
are used and that the rank of D(α)Z > is equal to
n (a condition satisfied as soon as four non-coplanar
source points (in the 3D-case), or three non-aligned

with N0 = C, N1 (t) = CA(t), and N̄2 (t) equal to the
first line of N2 (t) = N1 (t)A(t) + Ṅ1 (t). According to
this lemma one finds again that the positivity of the matrix
ZD> (α)D(α)Z > , which is generically ensured when
the number of source points is greater than three in the
8

source points (in the 2D-case), are used). If no vector
w ∈ Rn satisfies the set of (l − 1) constraints
d1 (1 + w> r1 ) = . . . = dl (1 + w> rl )

the number of source points may also be different. In all
scenarios the body velocity measurement is corrupted by
the constant bias a = (0.33, 0.66, 0.99)> and initial state
conditions are x(0) = (5, 0 4)> , x̂(0) = (4, 6, 12)> and
â(0) = (0, 0, 0)> . Riccati observers are calculated with
k(t) = 1, as for a Kalman filter, and the corresponding
CRE are initialized with P (0) = 100I6 , when using
direction measurements, and P (0) = 100I9 , when using
range measurements. For each scenario, simulations
are first carried out with noise-free measurements to
validate theoretical exponential stability results, then
with measurements corrupted by noise to illustrate the
resulting (and inevitable) slight degradation of the observers
following the transient phase when the estimation errors
become small but no longer converge to zero. Concerning
the body velocity u we have used a Gaussian zero
mean additive noise with a standard deviation equal to
0.1m/s. As for the direction and range measurements,
they are calculated from a body position corrupted by a
Gaussian zero mean noise with standard deviation equal to
0.05m/s. For the matrix V (i.e. the state noise variance
in the Kalman filtering terminology) involved in the CRE
we have set V = 0.01diag{1, 1, 1, 0, 0, 0} + v I6 ,
when using direction measurements, and V
=
0.01diag{1, 1, 1, 0, 0, 0, 10, 0, 0} + v I9 , when using
range measurements, with the small number v set equal
to 0.001 to ensure that the matrix is positive definite.
As for the matrix Q (i.e. the inverse of the output noise
variance in the Kalman filtering terminology) we have used
Qii = 1.5I3 , ∀i = 1 . . . l (with l the number of source
points) and Q = 1.5Il+1 respectively.

(33)

then the observer globally exponentially stabilizes
X̃ = 0.
2) Moving body:
If the following two condition are satisfied:
(C1 ): there exist δ > 0 and µ > 0 such that ∀t ≥ 0:
Z
1 t+δ
>
>
u(s)u> (s)ds > µId
ZD (α)D(α)Z +
δ t
(34)
(C2 ): there exists ν > 0 such that ∀t ≥ 0:
˙ )| > ν
∃τ ∈ [t, t + δ] : |ȳ(τ

(35)

then the observer globally exponentially stabilizes
X̃ = 0.
The proof of this lemma is given in Appendix F.
Remarks:
Concerning the first item of the lemma, one easily verifies
that the constraints (33) have always a solution w in the case
of (n + 1) source points and that no solution ”generically”
exists in the case of (n + 2) and more source points. Two
noticeable particular situations for which a solution exists
independently of the number of source points are i) when
all distances di are equal (w = 0 is then a solution), and
ii) when all source points are located on the same half-side
of a circular cone (in the 3D-case), or a conic sector (in
the 2D-case), whose apex coincides with the body location
(w = µ/sin(θ), with µ the unit vector along the cone’s
axis and θ the cone’s semi-angle, is then a solution). The
exponential stability of the observer is thus not granted for
these situations, as confirmed by simulation.
The second item of the lemma illustrates the interest of
body motion in terms of observability and observer’s
performance, especially when less that (n + 2) source points
are used. In particular, condition (C1 ) is automatically
satisfied in the 3D-case (resp. 2D-case) when at least four
non-coplanar (resp. three non-aligned) source points are
used and it can be satisfied with less source points when the
body moves. As for condition (C2 ), in the case of two and
more source points, it is satisfied when |u(t)| is regularly
larger than some positive number. In the case of a single
source point its satisfaction further requires that the body
does not move on a sphere centred on the source point so
that the distance between the body and the source point
does not remain constant.

Scenario 1: The body moves along a Lissajous curve
of equation
x(t) = (20 cos t − 15, 20 sin t, −2 cos t + 6)> ,
and a single source point located at the origin of the inertial
frame is used for both direction and range measurements.
One easily verifies that conditions for uniform observability
are then satisfied in both cases. Figures 1(a)-1(c) illustrate
the performance of the two observers in the ideal noise-free
case. More precisely, Figure 1(a) shows the location of
the source point and the trajectories followed by the
body position x(t) and its estimate x̂(t), Figure 1(b)
shows the convergence of the bias estimate â to the
velocity bias a and Figure 1(c) shows the evolution of the
logarithms of the Lyapunov functions associated with the
observers. The rate of exponential convergence to zero of
the Lyapunov functions are given by the mean slopes of the
curves. Asymptotic estimation errors in the case of noisy
measurements are shown in Figures 1(d) and 1(e).

V. S IMULATIONS
For these simulations in 3D-space we have considered
three scenarios involving various body motions. Estimation
of the body position is carried out from range and direction
measurements with a minimal number of source points
ensuring uniform observability. Since the conditions of
observability are different in the two measurement cases,

Scenario 2: The body moves along a circular trajectory of
equation
x(t) = (20 cos t − 15, 20 sin t, 4)> .
9

7
20

x
x̂-range
x̂-direction
range-source
direct.-source

18
16

1

6
5

0.5

14

4

0

10

3

8

2

−0.5

â 1 ,2 ,3

z

12

6

1

−1

2

0

−1.5

0
20

−1

4

10

0

−10

−20

−20

−15

−10

y

−5

0

5

−2

10

−2

x

(a) Trajectories of the body position and its estimates

−4

−3
0

Fig. 1.

Scenario 1

â1 → a1 = 0.33
â2 → a2 = 0.66
â3 → a3 = 0.99

−2.5

−3

20

40

60

0

t (o bserver based ra nge)

20

40

60

t (o bserver based direct.)

(b) Time evolution of the velocity bias estimation

In this case a single source point, again taken as the origin
of the inertial frame, suffices to ensure uniform observability
in the direction measurement case, whereas a second source
point has to be used in the range measurement case to
ensure the satisfaction of this property. Figures 2(a)-2(c)
illustrate the performance of the two observers in the ideal
noise-free case, and Figures 2(d)-2(e) show asymptotic
estimation errors in the case of noisy measurements.

Fig. 1.

Scenario 1

5

log(ν)-range
log(ν)-directio n

0

lo gν

−5

Scenario 3: The body is motionless. Two source points are
then needed in the direction measurement case to ensure
uniform observability, whereas two other source points, non
coplanar with them, are required in the range measurement
case. Figures 3(a)-3(c) illustrate the performance of the
two observers in the ideal noise-free case, and Figures
3(d)-3(e) show asymptotic estimation errors in the case of
noisy measurements. By comparison with the previous two
scenarios the estimation errors are smaller. This is coherent
with the increased number of source points that yields less
noisy information in the average.

−10

−15

−20

−25
0

10

20

30

40

50

60

t

(c) Time evolution of the Lyapunov functions logarithms
Fig. 1.

Scenario 1

0.02

VI. C ONCLUDING REMARKS
ã 1 ,2 ,3

0.01

In this paper, Riccati observers for the estimation of a
body position from either direction or range measurements
and from the knowledge of the body velocity have been
reviewed. Even when the body velocity is biased by an
unknown constant vector, these observers ensure global exponential stability of zero estimation errors under uniform
observability conditions that have been worked out in relation to the number of source points and the body motion.
Clearly the set of such observers extends without difficulty
to the case where the available information comes from
the combination of direction measurements (associated with
certain source points) with range measurements (associated
with other source points). A logical prolongation of this work
is the derivation of Riccati observers for the estimation of
the complete body pose (position and orientation). However,
due to the specific structure of the group of rotations, exact
linearisation of the problem is then no longer possible and

0
−0.01
−0.02
50

51

52

53

54

55

56

57

58

59

60

58

59

60

t (o bserver based range)

ã 1 ,2 ,3

0.02
0.01
0
−0.01
−0.02
−0.03
50

51

52

53

54

55

56

57

t (o bserver ba sed direction)
(d) Time evolution of velocity bias estimation errors in the case of noisy measurements
Fig. 1.

10

Scenario 1

5

0.05

log(ν)-range
log(ν)-directio n

x̃1 ,2 ,3

0

0

−5

lo gν

−10

−0.05
50

51

52

53

54

55

56

57

58

59

60

−15

t (observer based range)
−20

0.1

−25

x̃1 ,2 ,3

0.05
0

−30
0

10

20

30

40

−0.05

50

60

70

80

t

−0.1

(c) Time evolution of the Lyapunov functions logarithms
50

51

52

53

54

55

56

57

58

59

60

Fig. 2.

t (o bserver ba sed direction)

Scenario 2

(e) Time evolution of position estimation errors in the case of noisy measurements
0.02

Scenario 1

0.01

ã 1 ,2 ,3

Fig. 1.

15

x
x̂-range
x̂-direction
source-range
source-direct.

10

0
−0.01
−0.02
40

41

42

43

44

45

46

47

48

49

50

48

49

50

t (o bserver based range)

z

5

0

0.02

ã 1 ,2 ,3

−5

−10
20

0.01
0
−0.01
−0.02

10

−0.03

0
−10
−20

y

−20

−15

0

−5

−10

40

10

5

42

43

44

45

46

47

t (o bserver ba sed direction)

x

(d) Time evolution of velocity bias estimation errors in the case of noisy measurements

(a) Trajectories of the body position and its estimates
Fig. 2.

41

Scenario 2

Fig. 2.

Scenario 2

10
1

6

0.5

4

0

0
−0.05

−0.5

40

41

42

0

43

44

45

46

47

48

49

50

48

49

50

t (o bserver based range)

−1
−2
−1.5

−4

0.05

x̃1 ,2 ,3

â 1 ,2 ,3

2

0.05

x̃1 ,2 ,3

8

−2

−6
−8

â1 → a1 = 0.33
â2 → a2 = 0.66
â3 → a3 = 0.99

−2.5

−10

−0.05

−3
0

10

20

30

40

50

0

t (observer ba sed rang e)

10

20

30

40

40

50

t (o bserver ba sed direct.)

(b) Time evolution of the velocity bias estimation
Fig. 2.

0

41

42

43

44

45

46

47

t (o bserver ba sed direction)
(e) Time evolution of position estimation errors in the case of noisy measurements

Scenario 2

Fig. 2.

11

Scenario 2

0.01
12

x
x̂-ra ng e
x̂-directio n
source-ra nge
source-direct.

8
6

0.005

ã 1 ,2 ,3

10

0
−0.005

z

4

−0.01

2

20

21

22

23

24

25

26

27

28

29

30

28

29

30

0

t (observer based ra ng e)

−2

−3
x 10

−4
−6

4

6

2

ã 1 ,2 ,3

4
2
0
−2

y

0

1

4

3

2

5

7

6

0
−2

x
−4
20

(a) Trajectories of the body position and its estimates

21

22

23

24

25

26

27

t (o bserver ba sed direction)
Fig. 3.

Scenario 3
(d) Time evolution of velocity bias estimation errors in the case of noisy measurements
Fig. 3.

6

1.5

4

1

2

x̃1 ,2 ,3

0.01

0

0
−0.01

−2

−0.5

−0.02
20

−4

21

22

−1

23

24

25

26

27

28

29

30

28

29

30

t (o bserver based range)

−6
−1.5

0.02

â 1 → a 1 = 0.33
â 2 → a 2 = 0.66
â 3 → a 3 = 0.99

−2
−10

0.01

x̃1 ,2 ,3

−8

−2.5
0

10

20

30

t (observer ba sed rang e)

0

10

20

0
−0.01

30

t (o bserver based direction)

−0.02
20

(b) Time evolution of the velocity bias estimation
Fig. 3.

21

22

23

24

25

26

27

t (o bserver ba sed direction)

Scenario 3

(e) Time evolution of position estimation errors in the case of noisy measurements
Fig. 3.

Scenario 3

5

log(ν)-ra ng e
log(ν)-directio n

globally convex cost functions do not exist. As a consequence
Riccati observers for pose estimation, and corresponding
Extended Kalman Filters (EKF), have to be derived from
linear approximations of the system state and output equations. This also implies that only local exponential stability
of zero estimation errors can be achieved. An important
complementary issue, also in the prolongation of the present
work, is the characterisation of uniform observability conditions under which this latter property is granted. We foresee
several other possible extensions. Let us just mention visionbased robotic applications involving the control of the body
position from estimates provided by Riccati observers, and
a deterministic approach to Simultaneous Localication and
Mapping (SLAM) that could usefully complement existing
studies on the subject.

0

−5

ν

â 1 ,2 ,3

0.02

0.5

0

Scenario 3

−10

−15

−20
0

5

10

15

20

25

30

t

(c) Time evolution of the Lyapunov functions logarithms
Fig. 3.

Scenario 3

12

VII. ACKNOWLEDGMENTS

(positive) root of the second degree equation
µ̄q = 0. More precisely

This work was supported by the ANR-ASTRID project
SCAR “Sensory Control of Unmanned Aerial Vehicles”, the
ANR-Equipex project ”Robotex”.

lim sup y(t) ≤
t→∞

vm 2
n y − 2ka y −

µ̄q vm 0.5 
nka
1 + (1 +
)
vm
nka2

Since 1/λmin (P (t)) ≤ y(t) the previous inequality yields
vm
µ̄q vm 0.5 −1
lim inf λmin (P (t)) ≥
)
(36)
1 + (1 +
t→∞
nka
nka2

A PPENDIX
A. Proof of lemma 2.6
Recall that, as long as P (t) is defined and p.d., its trace is
the sum of its eigenvalues. Accordingly, since the eigenvalues
of P −1 (t) are the inverse of the ones of P (t), the trace of
P −1 (t) is the sum of the inverse of the eigenvalues of P (t).
To prove that P (t) is well-defined for t ∈ [0, +∞) and is p.d.
it suffices to show that neither the trace of P (t) nor the trace
of P −1 (t), which are initially positive (since P (0) is p.d. by
assumption), can tend to infinity in finite time. Indeed, this
implies that none of the eigenvalues of P (t) can either reach
zero or tend to infinity in finite time. To this aim, it suffices
to show that neither tr(P (t) nor tr(P −1 (t)) can grow faster
than exponentially, so that divergence in finite time is not
possible.
Let us set x = tr(P ). In view of (6), and since
tr(P (t)C > (t)Q(t)C(t)P (t)) ≥ 0, one has

2) Ultimate upper bound of the largest eigenvalue of P (t)
when WQ (t, t + δ) ≥ µId > 0: Recall that WQ is the
Riccati observability Grammian defined in (11). We use the
expression of the upper bound of P (t) derived in [16]
−1
−1
−1
P (t) ≤ δWQ
(t, t+δ)+δ 2 WQ
(t, t+δ)I2 (t, t+δ)WQ
(t, t+δ)

with I2 (t, t + δ) a positive matrix-valued function which,
using the inequality |Φ(t, s)| ≤ exp(ka |t − s|)Id , is upper
exp(6ka δ)µ̄2q δ 3 vM
bounded by
Id . Therefore, when WQ (t, t +
3
δ) ≥ µId > 0 one deduces that
1 µ̄q 2
1
+
exp(6ka δ)δvM (37)
lim sup λmax (P (t)) ≤
µδ
3 µ
t→∞
Relations (36) and (37) can2 in turn be used to estimate
pm
an ultimate lower bound of pM
vm , i.e. an estimate of the
lower bound pointed out in (9) of the exponential rate of
convergence associated with a Riccati observer.

ẋ ≤ tr(AP ) + tr(P A> ) + tr(V )
Let |A(t)| denote the spectral norm of A(t). By assumption it is bounded by some positive number ka . Similarly,
tr(V (t)) is bounded by a positive number v. Since P is
p.s.d., |tr(AP )| = |tr(P A> )| ≤ |A|tr(P ) and the previous
inequality yields
ẋ ≤ 2ka x + v

C. Proof of lemma 2.10

This inequality in turn implies that x(t) ≤ (x(0) +
v
v
2ka )exp(2ka t) − 2ka , ∀t ≥ 0.
Similar arguments applied to y = tr(P −1 ) yield

Consider a sequence {p }p∈N of positive numbers converging to zero, and an arbitrary positive number δ̄. From
the previous assertion there must exist a sequence of timeinstants {tp }p∈N and a sequence {xp }p∈N with xp ∈ S n−1
(i.e. |xp | = 1) such that ∀p ∈ N : x>
p WQ (tp , tp + δ̄)xp < p .
Since S n−1 is a compact set there exists a sub-sequence of
{xp }p∈N which converges to a limit x̄ ∈ S n−1 . Therefore

ẏ

For the sake of simplifying the reading of the proof by
avoiding non-essential technicalities, we set Q = kq Id with
kq > 0. Let us proceed by contradiction and assume that the
lemma’s conclusion is wrong, i.e.
∀, ∀δ̄ > 0, ∃t ≥ 0 : WQ (t, t + δ̄) < Id

≤ |tr(P −1 A)| + |tr(A> P −1 ) + tr(C > QC)
≤ 2ka y + µ̄q

with µ̄q denoting the supremum of tr(C > (t)Q(t)C(t)).
µ̄
µ̄
Therefore, y(t) ≤ (y(0) + 2kqa )exp(2ka t) − 2kqa , ∀t ≥ 0.
(end of proof)

lim x̄> WQ (tp , tp + δ̄)x̄ = 0

p→∞

Using C = Πy(t) C̄ and Φ(t, s) = exp(A(t − s)) in the
definition (11) of WQ , the above equality is equivalent to
Z δ̄
lim
|Πy(tp +s) C̄exp(As)x̄|2 ds = 0

B. Determination of ultimate bounds for pm and pM
1) Ultimate lower bound of the smallest eigenvalue of
P (t) when vm > 0: In practice the matrix V (t) is usually
chosen strictly positive so that the assumption of positivity
on vm is little restrictive.
Pn Set, as in the previous appendix,
y(t) = tr(P −1 (t)) = i=1 λi1(t) , with {λi (t)}i=1...n the set
of eigenvalues of P (t). The suprema of the spectral norm of
A(t) and of tr(C > (t)Q(t)C(t)) are again denoted as ka and
µ̄q respectively. From (8) one has
ẏ ≤ 2ka y + µ̄q − tr(P

−1

VP

−1

p→∞

0

which in turn implies
Z δ̄
lim
|Πy(tp +s) C̄exp(As)x̄|2 ds = 0
p→∞

(38)

δ̄−δ

provided that δ̄ ≥ δ. Consider now the following technical
result whose proof is given at the end of the present appendix

)

with tr(P −1 V P −1 ) ≥ vnm y 2 . This inequality implies that
y(t) is ultimately smaller than, or equal to, the largest

Lemma 0.1: Assume that the eigenvalues of the matrix A
are all real, then, given x̄ ∈ S n−1 , there exist r ≥ 0, λ ∈ R,
13

and z ∈ Rm − {0} such that C̄exp(At)x̄
tr exp(λt) = z + η(t) with
limt→+∞ η(t) = 0.
In view of this result, setting z̄ = z/|z| ∈ S m−1p
, and
choosing δ̄ large enough so that sups∈[δ̄−δ,δ̄] |η(s)| < 2 |z|
one deduces that

D. Proof of lemma 4.1
Recalling that the positivity of the observability Grammian W yields the positivity of the Riccati observability
Grammian WQ when Q(t) ≥ Id > 0, one only has to
show –according to Lemma 2.5– the existence of an adequate
matrix-valued function M (.) that satisfies (41) for some
positive numbers δ̄ and µ̄.
For the system under consideration one has N0 = C =
[01×n 1] and N1 (t) = CA(t) = [u> (t) 0]. Define


 
01×n 1
N0
M (t) :=
=
N1 (t)
u> (t) 0

R δ̄
1
2
γ 2 |z|2 δ̄−δ |Πy(tp +s) C̄exp(As)x̄| ds
R δ̄
η(s) 2
≥ δ̄−δ |Πy(tp +s) (z̄ + |z| )| ds
R t +δ̄
R δ̄
2
≥ tpp+δ̄−δ |Πy(s) z̄|2 ds − 0 |Πy(tp +s) η(s)
|z| )| ds
≥ δ − δ/2 (= δ/2)

n
and consider
 an arbitrary vector b ∈ S . Then M (t)b =

b2
>
2
with b = [b>
=
1 , b2 ] . Therefore |M (t)b|
u> (t)b1
R
1 t+δ
>
2
|M (s)b|2 ds.
b>
1 u(t)u (t)b1 + b2 . Define γ(t) := δ t
2
2
Using the fact that b2 = 1 − |b1 | one has
Z
1 t+δ >
b1 u(s)u> (s)b1 ds
γ(t) = (1 − |b1 |2 ) +
δ t

with γ = infs∈[δ̄−δ,δ̄] (sr exp(λs)) > 0. The p.e. condition
(12) is used in the last inequality. Therefore
Z

δ̄

|Πy(tp +s) C̄exp(As)x̄|2 ds ≥ γ 2 |z|2

δ̄−δ


>0
2

Since this latter inequality holds true for any tp , it contradicts
(38) and the initial assumption according to which the result
of the lemma is not true.
It only remains to prove the technical Lemma 0.1.
From
theorem,
one has exp(At) =
Pn−1 Cayley-Hamilton’s
Pd P
lk −1
i
j
i=0 αi (t)A with αi (t) =
k=1 (
j=0 aij t )exp(λk t),
λk a (real) eigenvalue of A, aij ∈ R, d ≤ n the number of
distinct eigenvalues, and lk the multiplicity of λk . Therefore

with 0 ≤ |b1 | ≤ 1. There are two possible cases: either
b1 = 0 or b1 6= 0. In the first case one obtains γ(t) =
1. In the second case, setting b̄1 := b1 /|b1 | ∈ S n−1 , one
2 R t+δ
>
obtains γ(t) = (1 − |b1 |2 ) + |b1δ| t b̄>
1 u(s)u (s)b̄1 ds ≥
2
2
(1 − |b1 | ) + |b1 | µ ≥ inf(1, µ). Therefore γ(t) ≥ µ̄ with
µ̄ = inf(1, µ). Since the last inequality holds for any b ∈ S n ,
(41) holds true.

Pn−1
Pn−1
= C̄ i=0 αi (t)Ai x̄ = i=0 αi (t)C̄Ai x̄
Pn−1
=
i=0 αi (t)zi

C̄exp(At)x̄







z1




with z̄¯ =  ...  := Ox̄ and O = 

zn

C̄
C̄A
..
.

E. Proof of lemma 4.2
As in the unbiased case we show the existence of a matrixvalued function M (.) that satisfies (41) for some positive
numbers δ̄ and µ̄. For the system under consideration one
has N0 = C = [01×n 01×n 1 0 0], N1 (t) = CA(t) =
[u> (t) 01×n 0 1 0], and N2 (t) = N1 (t)A(t) + Ṅ1 (t) =
[u̇> (t) 2u> (t) 0 0 1]. Define


N0
M (t) :=  N1 (t) 
N2 (t)




 the


C̄An−1
Kalman observability matrix whose rank is, by assumption,
equal to n. This latter assumption in turn implies that the
vector z̄¯ is different from zero, and thus that at least one of
the zi components of this vector is different from zero. The
previous sum can also be arranged as follows
n−1
X

αi (t)zi =

i=0

X

vk,j (t)z̄k,j

> > >
2n+2
and consider an arbitrary vector b = [b>
,
1 , b2 , b3 ] ∈ S
with b1,2,3 sub-vectors 
of dimensions n, n, and
3
respec
0
 + b3 and
u> (t)b1
tively. Then M (t)b = 
>
u̇ (t)b1 + 2u> (t)b2
|M (t)b|2 = b23,1 +(u> (t)b1 +b3,2 )2 +(u̇> (t)b1 +2u> (t)b2 +
b3,3 )2 , with b3,i denoting the ith component of b3 . Define
R t+δ
γ(t) := 1δ t |M (s)b|2 ds and let us make a proof by
contradiction by assuming that the condition (41) is not
satisfied. In this case there exists a sequence {tp } and a
vector b ∈ S 2n+2 such that limp→+∞ γ(tp ) = 0. This in
turn implies that b3,1 = 0 and also
Z tp +δ
lim
(u> (s)b1 + b3,2 )2 ds = 0
(39)

z̄k,j ∈ Rm

k,j

with vk,j (t) = trk,j exp(λk t), k ∈ [1, . . . , n], rk,j ∈
[0, . . . , n − 1]. We note that at least one of the vectors
z̄k,j must be different from zero, due to the observability
assumption and the full rank of O. Consider the largest (less
negative, or most positive) root λk for which z̄k,j is different
from zero, and the largest power rk,j that goes with such
a vector. Denote this root as λ and this power as r, set
v(t) := tr exp(λt), and denote the corresponding vector z̄k,j
as z (6= 0). The dominating coefficient in the development
of C̄exp(At)x̄, when t tends to infinity, is thus v(t) and one
= z. This latter property can also be
has limt→∞ C̄exp(At)x̄
v(t)
written as

C̄exp(At)x̄
v(t)

p→+∞

tp

and
Z

tp +δ

lim

= z + η(t) with limt→∞ η(t) = 0.

p→+∞

14

tp

(u̇> (s)b1 + 2u> (s)b2 + b3,3 )2 ds = 0 (40)

Using the assumed boundedness of u̇(t) the first of these two
limits yields limp→+∞ u> (tp + s)b1 = −b3,2 , ∀s ∈ (0, δ).
Using now the assumed boundedness of ü(t) this in turn
implies that limp→+∞ u̇> (tp + s)b1 = 0, ∀s ∈ (0, δ). From
(40) one deduces that limp→+∞ (u̇> (tp + s)b1 + 2u> (tp +
s)b2 + b3,3 ) = 0, ∀s ∈ (0, δ) and, subsequently, that
limp→+∞ u> (tp + s)b2 = −b3,3 /2, ∀s ∈ (0, δ). Using
the assumed boundedness of ü(t) this in turn implies that
limp→+∞ u̇> (tp + s)b2 = 0, ∀s ∈ (0, δ). If either b1 or
b2 is different from zero one reaches a contradiction with
(29). Therefore b1 = b2 = 0. But then, from what precedes,
b3,2 = b3,3 = 0 so that b = 0. This is not possible since
b ∈ S 2n+2 .

with v̄1 = v1 /v3 . Since zi − z1 = d1 r1 − di ri the previous
equation is the same as (d1 r1> − di ri> )v̄1 = di − d1 for i =
2, . . . , l, which in turn is the same as (33) with w = v̄1 . Since
this equation has no solution by assumption a contradiction
is reached and the result follows.
We now prove the second
R t+δ result of the lemma.
Define γ(v, t) := t |M (s)v|2 ds and assume that (42)
holds true. Then there exists a sequence {tp } and a unit
vector v such that limp→+∞ γ(v, tp ) = 0. This in turn
implies that
Z tp +δ
(v2 + α> ȳ(s)v3 )2 ds = 0
lim

F. Proof of lemma 4.5
Define


N0 (t)
M (t) :=
N̄1 (t)

and

with N0 (t) = C(t), N1 (t) = C(t)A(t), and N̄1 (t) the first
line of N1 (t), i.e.


01×n
1
α> ȳ(t)
M (t) =  D(α)Z > 0 −D(α)ȳ(t) 
(41)
u(t)>
0
0

and also

p→+∞

Z
p→+∞

|D(α)Z > v1 − D(α)ȳ(s)v3 |2 ds = 0

tp

Z

tp +δ

lim

p→+∞

|u> (s)v1 |2 ds = 0

tp

˙
Using the assumed boundedness of u̇(t), and thus of ȳ(t),
the
>
first of these equalities yields limp→+∞ (α ȳ(tp + s)v3 ) =
−v2 , ∀s ∈ (0, δ). Using the assumed boundedness ü(t) this
˙ p + s)v3 = 0, ∀s ∈
in turn implies that limp→+∞ α> ȳ(t
(0, δ). Using similar arguments for the second equality one
˙ p + s)v3 = 0, ∀s ∈ (0, δ).
deduces that limp→+∞ D(α)ȳ(t
>
˙ p+
Since D(α) = ξα − Il×l one obtains that limp→+∞ ȳ(t
>˙
s)v3 = ξ limp→+∞ α ȳ(tp + s)v3 = 0, ∀s ∈ (0, δ).
From condition (C2 ) this in turn implies that v3 = 0 and,
subsequently that v2 = 0. Combining the second and third
equalities then yields
Z
1 tp +δ
u(s)u(s)> ds)v1 = 0
lim v1> (ZD> (α)D(α)Z > +
p→+∞
δ tp

t

with n = 3 (the 3D case) or n = 2 (the 2D case). Let
v1 ∈ Rn , v2 ∈ R and v3 ∈ R denote the components of the
unit vector v. In this case u(t) ≡ 0 (motionless body) so that
M is a constant matrix and


v2 + α> ȳv3
M v =  D(α)Z > v1 − D(α)ȳv3 
0

which, in view of condition (C1 ), implies that v1 = 0. Therefore v = 0 and this contradicts the assumption according to
which v is a unit vector.

Assume that v3 = 0. Then

R EFERENCES

|M (s)v|2 = v22 + v1> ZD> (α)D(α)Z > v1

[1] R. Haralick, C. Lee, K. Ottenberg, and M. Nlle, “Review and analysis
of solutions of the three point perspective pose estimation problem,”
International Journal of Computer Vision, vol. 13, no. 3, pp. 331–356,
1994.
[2] L. Kneip, D. Scaramuzza, and R. Siegwart, “A novel parametrization
of the perspective-three-point problem for a direct computation of
absolute camera position and orientation,” in Computer Vision and
Pattern Recognition (CVPR), 2011 IEEE Conference on. IEEE, 2011,
pp. 2969–2976.
[3] R. Haralick, H. Joo, C. Lee, X. Zhuang, V. Vaidya, and M. Kim,
“Pose estimation from corresponding point data,” IEEE transactions
on Systems, Man and Cybernetics, vol. 19, no. 6, pp. 1426–1446, 1989.
[4] F. Janabi-Sharifi and M. Marey, “A kalman-filter-based methods for
pose estimation in visual servoing,” IEEE transactions on Robotics,
vol. 26, no. 5, pp. 939–947, 2010.
[5] S. Soatto, R. Frezza, and P. Perona, “Motion estimation via dynamic
vision,” IEEE Transactions on Automatic Control, vol. 41, no. 3, pp.
393–414, 1996.
[6] P. Batista, C. Silvestre, and P. Oliveira, “Globally exponentially
stable filters for source localization and navigation aided by direction
measurements,” Systems & Control Letters, vol. 62, no. 11, pp. 1065–
1072, 2013.

>

with ZD (α)D(α)Z a p.d. matrix by assumption. Therefore v > M > M v ≥ inf (1, λm ) with λm the smallest (strictly
positive) singular value of ZD> (α)D(α)Z > . Since this
contradicts (42) one deduces that v3 6= 0. Now, since M v is a
constant vector, the satisfaction of (42) implies the existence
of a unit vector v such that M v = 0. This in turn implies that
v2 = −α> ȳv3 and D(α)Z > v1 − D(α)ȳv3 = 0. Using the
fact that D(α) = ξα> −Il×l the first of these equalities yields
D(α)ȳv3 = −ξv2 − ȳv3 . Since ȳi = di + b, substracting the
ith line from the first line of the left member of the second
equality yields (zi − z1 )> v1 = (di − d1 )v3 (i = 2, . . . , l).
Therefore




(z2 − z1 )>
d2 − d1




..
..
(43)

 v̄1 = 

.
.
(zl − z1 )>

tp +δ

lim

We make a proof by contradiction of the first result by
assuming that a uniform observability condition yielding the
uniform exponential stability of the observer is not satisfied
when (33) does not have a solution. More precisely we
assume that
Z t+δ
∀ ≥ 0, ∀v ∈ S n+1 , ∃t ≥ 0 :
|M (s)v|2 ds <  (42)

>

tp

dl − d1
15

[7] F. L. Bras, T. Hamel, R. Mahony, and C. Samson, “Observer design for
position and velocity bias estimation from a single direction output,” in
54th IEEE International Conference on Decision and Control (CDC),
2015.
[8] T. Dixon, “An introduction to the global positioning system and some
geological applications,” Reviews of gophysics, vol. 29, no. 2, pp. 249–
276, 1991.
[9] P. Batista, C. Silvestre, and P. Oliveira, “Sensor-based long baseline
navigation: observability analysis and filter design,” Asian J. Control,
vol. 16, no. 4, pp. 974–994, 2014.
[10] ——, “Tightly coupled long baseline/ultra-short baseline integrated
navigation system,” International Journal of Systems Science, vol. 47,
no. 8, pp. 1837–1855, 2016.
[11] M. Morgado, P. Batista, P. Oliveira, and C. Silvestre, “Position and
velocity usbl/imu sensor-based navigation filter,” in 18th IFAC World
Congress, Milan, Italy, 2011, pp. 13 642–13 647.
[12] C.-T. Chen, Linear System Theory and Design, 2nd ed. CBS College
Publishing, 1984.
[13] J.-P. Gauthier and J.-P. Kupka, “Observability and observers for
nonlinear systems,” SIAM J. on Control Optim., vol. 4, no. 32, pp.
975–994, 1994.
[14] G. Besançon, An overview on observer tools for nonlinear systems.
Besançon G., editor, Springer-Verlag, 2007.
[15] G. Scandaroli, “Fusion de données visuo-inertielles pour l’estimation
de pose et l’autocalibrage,” Ph.D. dissertation, 2013.
[16] M. Pengov, E. Richard, and J.-C. Vivalda, “On the boundedness of the
solutions of the continuous riccati equation,” J. of Inequal. and Appli.,
vol. 6, pp. 641–649, 2001.

16

