Page 1

On the Non-Robustness of Inconsistent Quaternion-Based Attitude Control

Systems using Memoryless Path-Lifting Schemes∗

Christopher G. Mayhew♯, Ricardo G. Sanfelice♭, and Andrew R. Teel†

Abstract—The unit quaternion is a pervasive representation

of rigid-body attitude used for the design and analysis of

feedback control laws. Quaternion-based feedback control laws

that are inconsistent (i.e. do not have a unique value for a

given attitude) require an additional mechanism that lifts a

continuous attitude trajectory to the unit quaternion space.

Lifting mechanisms that are memoryless, for example, selecting

the quaternion having positive scalar component, have a limited

domain where they remain injective and, when used globally,

introduce discontinuities into the closed-loop system. We show

that such discontinuities can be exploited by an arbitrarily small

measurement disturbance to stabilize attitudes far from the

desired attitude and destroy “global” attractivity properties.

I. INTRODUCTION

Controlling the attitude of a rigid body is, perhaps, one of

the canonical nonlinear control problems, with applications

in aerospace and publications dating back many decades

[1]–[5]. A fundamental characteristic of attitude control that

imparts a fascinating difficulty is the topological complexity

of the underlying state space, SO(3). In fact, SO(3) is not

a vector space, but a compact manifold without boundary.

As a result of degree theory, this implies that SO(3) does

not have the topological property of contractibility [6, Ex.

2.4.6]. Furthermore, attraction basins of asymptotically sta-

ble equilibrium points of differential equations with locally

Lipschitz right-hand sides are necessarily contractible [7,

Theorem 1], [8, Theorem 21] and in fact, diffeomorphic to

some Euclidean vector space [9, Theorem V.3.4]. These facts

preclude the existence of a continuous, time-invariant, state-

feedback control law that globally asymptotically stabilizes

a particular attitude [8, Corollary 5.9.13].

Often, unit quaternions, which evolve on S3(the set

of unit-magnitude vectors in R4), are used to parametrize

SO(3). This parametrization provides for a minimal globally

nonsingular representation of rigid-body attitude [10] in

terms of a topologically simpler space in several respects;

however, there are exactly two unit quaternions correspond-

ing to the same rigid-body attitude. This creates the need

to stabilize a disconnected set in the covering space [5],

which has its own topological obstructions [11]. As discussed

♯mayhew@ieee.org, Robert Bosch Research and Technology Center, 4005

Miranda Ave., Palo Alto, CA 94304.

♭sricardo@u.arizona.edu, Department of Aerospace and Mechanical En-

gineering, University of Arizona, Tucson, AZ 85721.

†teel@ece.ucsb.edu, Center for Control Engineering and Computation,

Electrical and Computer Engineering Department, University of California,

Santa Barbara, CA 93106-9560.

∗Research partially supported by the National Science Foundation under

grant ECCS-0925637 and grant CNS-0720842, and by the Air Force Office

of Scientific Research under grant FA9550-09-1-0203.

in [7], these topological subtleties can cause confusion and

sometimes lead to dubious claims regarding the globality of

asymptotic stability (see e.g. [1], [12]). Nevertheless, unit

quaternions are still used by many authors (including the

authors of this paper) today to design control algorithms.

A feedback control law designed using a quaternion

representation of attitude may not be consistent with a

control law defined on SO(3). That is, for every rigid-body

attitude, the quaternion-based feedback may take on one

of two possible values. When this is the case, analysis for

quaternion-based feedback is often carried out in S3with

a lifted dynamic equation, but these results are not directly

related to a feedback system that takes measurements from

SO(3). This obviously begs the question, how is a unit

quaternion obtained from a measurement of attitude? While

calculating the set of two quaternions that represent a given

attitude is a fairly simple operation (see e.g. [13]–[18]), the

process of selecting which quaternion to use for feedback

is a less obvious operation. As noted in [4], it is often the

case that the quaternion with positive “scalar” component is

used for feedback. This operation is non-global (the scalar

component could easily be zero) and discontinuous.

In this paper, we show that when a discontinu-

ous quaternion-selection scheme is paired with a widely

used inconsistent quaternion-based feedback, any presumed

“global” attractivity properties are not robust to arbitrarily

small measurement disturbances. In fact, we construct an ex-

plicit malicious measurement disturbance defined on SO(3)

that stabilizes a region about the manifold of 180◦rotations

with zero angular velocity by exploiting the discontinuity

introduced by the quaternion-selection algorithm.

This paper is organized as follows. Section II provides

background material on attitude control and unit quater-

nions. Section III reconstructs the select-the-quaternion-with-

positive-scalar-component mechanism in terms of a metric.

In Section IV, we show by a Lyapunov analysis that,

when composed with a widely used inconsistent feedback,

the aforementioned quaternion-selection scheme makes the

closed-loop system susceptible to arbitrarily small measure-

ment disturbances that can stabilize attitudes far from the

desired attitude. Finally, we make some concluding remarks

in Section VI.

II. ATTITUDE KINEMATICS, DYNAMICS, AND UNIT

QUATERNIONS

The attitude of a rigid body is represented by a 3 × 3

orthogonal matrix with unitary determinant: an element of

2011 American Control Conference

on O'Farrell Street, San Francisco, CA, USA

June 29 - July 01, 2011

978-1-4577-0079-8/11/$26.00 ©2011 AACC1003

Page 2

the special orthogonal group of order three,

SO(3) = {R ∈ R3×3: R⊤R = RR⊤= I,detR = 1},

where I ∈ R3×3denotes the identity matrix. The cross

product between two vectors y,z ∈ R3, is represented here

by a matrix multiplication: y × z = [y]×z, where

The attitude of a rigid body is denoted by R ∈ SO(3),

where R transforms vectors expressed in the local body

frame of the rigid body to an inertial frame. The angular

rate of the rigid body is denoted as ω and J = J⊤> 0 is

the symmetric and positive definite inertia matrix. When τ

is a vector of external torques, the kinematic and dynamic

equations are

[y]×=

0

y3

−y2

−y3

0

y1

y2

−y1

0

.

˙R = R[ω]×

J ˙ ω = [Jω]×ω + τ.

(1a)

(1b)

Let the n-dimensional unit sphere embedded in Rn+1be

denoted as Sn= {x ∈ Rn+1: x⊤x = 1}. Then, members

of SO(3) are often parametrized in terms of a rotation θ ∈

R about a fixed axis u ∈ S2by the so-called Rodrigues

formula–the map U : R × S2→ SO(3) defined as

U(θ,u) = I + sin(θ)[u]×+ (1 − cos(θ))[u]2

In the sense of (2), a unit quaternion, q, is defined as

×.

(2)

q =

?η

ǫ

?

= ±

?cos(θ/2)

sin(θ/2)u

?

∈ S3,

(3)

where η ∈ R and ǫ ∈ R3, represents an element of SO(3)

through the map R : S3→ SO(3) defined as

R(q) = I + 2η [ǫ]×+ 2[ǫ]2

Note that R(q) = R(−q) for each q ∈ S3. We denote the

set-valued inverse map Q : SO(3) ⇉ S3as

Q(R) = {q ∈ S3: R(q) = R}.

For convenience in notation, we will often write a quaternion

as q = (η,ǫ), rather than in the form of a vector.

With the identity element i = (1,0) ∈ S3, each q ∈ S3

has an inverse q−1= (η,−ǫ) under the multiplication rule

?

where qi= (ηi,ǫi) ∈ R4and i ∈ {1,2}. With this definition,

the covering map R is a group homomorphism, satisfying

R(q1)R(q2) = R(q1⊙ q2)

The quaternion state space, S3, is a covering space for

SO(3) and R : S3→ SO(3) is the covering map. Precisely,

for every R ∈ SO(3), there exists an open neighborhood

U ⊂ SO(3) of R such that Q(U) is a disjoint union of open

sets O1,O2, where, for each k ∈ {1,2}, the restriction of R

×.

(4)

(5)

q1⊙ q2=

η1η2− ǫ⊤

η1ǫ2+ η2ǫ1+ [ǫ1]×ǫ2

1ǫ2

?

,

∀q1,q2∈ S3.

(6)

to Okis a diffeomorphism. In particular, this implies that R

is everywhere a local diffeomorphism.

A fundamental property of a covering space is that a

continuous path in the base space can be uniquely “lifted”

to a continuous path in the covering space. In terms of

SO(3) and S3, this means that for every continuous path

R : [0,1] → SO(3) and for every p ∈ Q(R(0)), there exists a

unique continuous path qp: [0,1] → S3satisfying qp(0) = p

and R(qp(t)) = R(t) for every t ∈ [0,1] [19, Theorem 54.1].

We call any such path qpa lifting of R over R.

It is not just paths that can be lifted from SO(3) onto

S3. In fact, flows and vector fields defined on SO(3) can be

lifted onto S3as well [7]. In this direction, given a Lebesgue

measurable function ω : [0,1] → R3and an absolutely

continuous path R : [0,1] → SO(3) satisfying (1a) for almost

all t ∈ [0,1], any q : [0,1] → S3that is a lifting of R over

R satisfies the quaternion kinematic equation

?˙ η

for almost all t ∈ [0,1], where the maps ν : R3→ R4and

Λ : S3→ R4×3are defined as

ν(x) =

x

˙ q =

˙ ǫ

?

=1

2q ⊙ ν(ω) =1

2Λ(q)ω,

(7)

?0

?

,Λ(q) =

?

−ǫ⊤

ηI + [ǫ]×

?

.

(8)

III. INCONSISTENT QUATERNION-BASED CONTROL

LAWS AND PATH LIFTING

It is quite commonplace in the attitude control literature

to design a feedback based upon a quaternion representation

of rigid-body attitude. That is, the control designer creates a

continuous function κ : S3×R3→ R3and closes a feedback

loop around (1) by setting τ(t) = κ(q(t),ω(t)), where q(t)

is selected to satisfy R(q(t)) = R(t), for each t ∈ R≥0.

When the feedback κ satisfies

κ(q,ω) = κ(−q,ω)∀q ∈ S3,

(9)

we say that κ is consistent. When consistent feedbacks are

used, there is little need for a quaternion representation, as

κ might as well be defined in terms of R ∈ SO(3).

When a quaternion-based feedback is inconsistent, that is,

∃q ∈ S3

κ(q,ω) ?= κ(−q,ω),

(10)

the resulting feedback does not define a unique vector field

on SO(3) × R3because for R ∈ SO(3) satisfying Q(R) =

{−q,q}, the feedback κ(Q(R),ω) is a two-element set [7].

At this point, the control designer must, for every t ∈ R≥0,

choose which q(t) ∈ Q(R(t)) to use for feedback. Or, in the

topological terms of lifting, the control designer must choose

how to lift the measured attitude trajectory in SO(3) to S3.

In this direction, we provide a quote from [4]:

“In many quaternion extraction algorithms, the sign

of η is arbitrarily chosen positive. This approach

is not used here, instead, the sign ambiguity is

resolved by choosing the one that satisfies the

associated kinematic differential equation. In im-

plementation, this would probably imply keeping

some immediate past values of the quaternion.”

1004

Page 3

There is much insight to be gained from this quotation,

especially when viewed in the context of lifts over R.

In particular, it suggests that inconsistent quaternion-based

control laws require an extra quaternion memory state to

lift the measured SO(3) trajectory to S3. In what follows,

we reconstruct the memoryless quaternion “extraction” al-

gorithm that discontinuously selects the quaternion with

positive scalar component in terms of a metric and analyze

its properties when used in a feedback control law.

Let P : S3→ [0,2] be defined as

P(q) = P(η,ǫ) = 1 − i⊤q = 1 − η.

Then, the function d : S3× S3→ [0,2] defined as

d(q,p) = P(q−1⊙ p) = 1 − q⊤p

defines a metric on S3. From a geometric viewpoint, d(q,p)

is the height of p on S3“above” the plane perpendicular to

the vector q at q. Given a set Q ⊂ S3, we define the distance

to Q from q (in terms of the metric d) as

(11)

(12)

dist(q,Q) = inf{d(q,p) : p ∈ Q}.

When the set Q in (13) takes the form of Q(R) for some

R ∈ SO(3), the distance function also takes a special form.

In particular, let Q(R) = {p,−p}. Then,

dist(q,Q(R)) = 1 − |q⊤p|.

One candidate method to lift a path from SO(3) to S3

is to simply pick the quaternion representation of R that is

closest to a specific quaternion in terms of the metric d. In

particular, let us define the map Φ : S3× SO(3) ⇉ S3as

Φ(q,R) = argmin

p∈Q(R)

(13)

(14)

d(q,p) = argmax

p∈Q(R)

q⊤p.

(15)

The map Φ has some useful properties, which we summarize

in the following lemmas.

Lemma 1. Let q ∈ S3and R ∈ SO(3). The following are

equivalent:

1) Φ(q,R) is single-valued,

2) 0 ≤ dist(q,Q(R)) < 1,

3) q⊤p ?= 0 for all p ∈ Q(R) so that q⊤Φ(q,R) > 0,

4) R ?= U(π,u)R(q) for some u ∈ S2.

Given a fixed q ∈ S3, Φ can be used to lift curves in

SO(3) to S3, so long as Φ remains single-valued.

Lemma 2. For every ˆ q ∈ S3, every continuous R : [0,1] →

SO(3), and every continuous q : [0,1] → S3satisfying

d(ˆ q,q(0)) < 1, R(q(t)) = R(t), and dist(ˆ q,Q(R(t))) < 1

for all t ∈ [0,1], it follows that Φ(ˆ q,R(t)) = q(t) for all

t ∈ [0,1].

Since a common goal of attitude control is to regulate

R to I, one might choose i as a point of reference (since

R(i) = I) and use the map Φi: SO(3) ⇉ S3defined as

Φi(R) = Φ(i,R).

(16)

Now, following 3) from Lemma 1 we see that i⊤Φi(R) >

0, that is, Φi always chooses the quaternion with positive

scalar component, so long as Φ is single-valued. Further,

Lemma 2 allows one to lift curves with Φi so long as R

does not cross the manifold of 180◦rotations, where Φiis

multi-valued, or else Φiwill produce a quaternion trajectory

that is discontinuous. This discontinuous behavior can have

disastrous effects when Φiis composed with an inconsistent

feedback. We now examine such a feedback.

IV. NON-ROBUSTNESS

Let c > 0 and let L : R3→ R3be a continuous function

satisfying

γ(?ω?2) ≤ ω⊤L(ω),

where γ : R≥0→ R≥0is a continuous and strictly increasing

function satisfying γ(0) = 0. Let

(17)

E(q) = E(η,ǫ) = Λ(q)⊤i = ǫ

(18)

and consider the inconsistent feedback

κ∗(q,ω) = −cǫ − L(ω) = cE(q) − L(ω).

In (19), the cǫ term introduces a rotational spring force and

L(ω) introduces damping. While this control law asymptoti-

cally stabilizes (i,0) for the lifted closed-loop system defined

by (7), (1b), and setting τ = κ∗(q,ω), it renders (−i,0) an

unstable saddle equilibrium. When composed with Φi, one

might expect that the resulting feedback globally asymptot-

ically stabilizes the identity element of SO(3); however, we

show that any such expected global attractivity properties are

not robust to arbitrarily small measurement disturbances. In

particular, we construct a malicious measurement disturbance

that exploits the discontinuity introduced by Φito stabilize

the 180◦manifold.

Define the signum function σ : R → {−1,0,1} as

Then, for 0 ≤ δ < π, consider the (discontinuous) function

∆ : SO(3) × R3→ U(δ,S2) defined as

?

I

(19)

σ(s) =

1

0

−1

s > 0

s = 0

s < 0.

(20)

∆(U(θ,u),ω) =

U(−δσ(ω⊤u),u)cosθ < cos(π + δ)

otherwise.

(21)

For any (R,ω) ∈ SO(3)×R3, the rotation matrix ∆(R,ω)R

constitutes an angular perturbation of R in the amount of

δ and as δ decreases to zero, ∆ converges to the identity

matrix. In particular, the parameter δ controls the size of the

disturbance. We note that (21) is well defined on SO(3).

Lemma 3. For every δ ∈ [0,π) and (R,ω) ∈ SO(3) × R3,

∆(R,ω) is uniquely defined.

Proof. Suppose that R = U(θ,u) for some θ ∈ R and u ∈

S2. Clearly, ∆(R,ω) is uniquely defined when either ω = 0

or cosθ = cos(θ + 2πZ) ≥ cos(π ± δ), since it does not

depend on either R or ω in this case.

Suppose that cosθ < cos(π ± δ) and ω ?= 0. This implies

that R ?= I, since 0 < δ < π. Then, by Euler’s theorem on

1005

Page 4

rotations, for any v ∈ S2and φ such that R = U(φ,v), it

must be the case that u = v or u = −v (only when R ?= I).

Since U(−θ,−u) = U(θ,u), it follows that

∆(U(φ,v),ω) = U(−δσ(ω⊤v),v) = U(−δσ(ω⊤u),u).

So, we have shown that the value of ∆ is independent of

the angle and axis representation used for R, hence, it is

uniquely defined on SO(3) × R3.

Let φi : SO(3) → S3be any single-valued selection

of Φi, that is, φi(R) = Φi(R) for all R ?= U(π,u) and

φi(R) ∈ Φi otherwise. Now, we apply the disturbance ∆

to measurements of attitude before being converted to a

quaternion for use with the inconsistent feedback (19) and

analyze the resulting closed-loop system. That is, we replace

q with φi(∆(R,ω)R) in the control law κ∗defined in (19).

Because φi and ∆ are discontinuous, we use the notion

of Krasovskii solutions for discontinuous systems [20].

Definition 4. Let f : Rn→ Rn. The Krasovskii regulariza-

tion of f is the set-valued mapping

Kf(x) =

?

ǫ>0

convf(x + ǫB)

(22)

where convB denotes the closed convex hull of the set

B ⊂ Rnand B denotes the unit ball in Rn. Then, given

a function f : Rn→ Rn, a Krasovskii solution to ˙ x = f(x)

on an interval I ⊂ R≥0is an absolutely continuous function

satisfying

˙ x(t) ∈ Kf(x(t))

for almost all t ∈ I.

An important property of a Krasovskii regularization is

that Kf(x) = f(x) for every x where the function f is

continuous.

(23)

Theorem 5. Let a > 0, c > 0, and δ > 0 satisfy

0 < δ <1

2

?

−a

c+

??a

c

?2

+ 8

?

<

√2

(24)

and define

B = {(U(θ,u),ω) : cosθ + (1/a)ω⊤Jω ≤ cos(π + δ)}.

Then, the set {U(π,S2)}×{0} is stable and B is invariant

for the Krasovskii regularization of the closed-loop system

˙R = R[ω]×

J ˙ ω = [Jω]×ω − cE(φi(∆(R,ω)R)) − L(ω).

Proof. Since we are studying Krasovskii solutions to (25),

we might normally need to find the Krasovskii regulariza-

tion of (25); however, the analysis in this proof obviates

the need for calculating the Krasovskii regularization for

regions where the calculation is nontrivial. Since the function

(R,ω) ?→ R[ω]×is continuous, its Krasovskii regulariza-

tion is identical to the original map. Also note that, by

definition of ∆ and φi, the map (R,ω) ?→ [Jω]×ω −

κ∗(φi(∆(R,ω)R),ω) is continuous on the set {(U(θ,u),ω) :

(25)

cosθ < cos(π+δ), ω ?= 0}, so its Krasovskii regularization

is also identical to the original map on this set.

Consider the Lyapunov function

V (R,ω) = a(1 − trace(I − R)/4) +1

Expressed in terms of rotation angle, we have equivalently,

2ω⊤Jω.

(26)

V (U(θ,u),ω) =a

since trace(I−U(θ,u)) = 2(1−cosθ), so that V (R,ω) ≥ 0

for all (R,ω) ∈ SO(3)×R3and V (R,ω) = 0 if and only if

R = U(π,v) and ω = 0. Furthermore, the sub-level sets of

V are compact.

Define the function ψ : R3×3→ R3as

ψ(A) =1

2

Then,

ψ

satisfies

traceA[ω]×

ψ(U(θ,u)) = usinθ. In what follows, for a real number

r ∈ R, a vector y ∈ Rnand a set Z ⊂ Rn, we use the

notation r + y⊤Z = {r + y⊤z : z ∈ Z}. Employing the

Krasovskii regularization, we calculate the time derivative

of V as

˙V (R,ω) ∈ −a

+ ω⊤(−KcE(φi(∆(R,ω)R)) − L(ω))

= −ω⊤L(ω)

+ ω⊤?

where we have used the fact that ω⊤[Jω]×ω = 0. Note

that ˙V (R,0) = 0 no matter what values the Krasovskii

regularization may take.

Now, we let R = U(θ,u) and henceforth constrain our

analysis to the case where cosθ < cos(π+δ) and ω ?= 0, so

that ∆(R,ω)R = U(θ − δσ(ω⊤u),u) and φi(∆(R,ω)R) is

single-valued. Also, in this region, the Krasovskii regulariza-

tion of (25) is identical to (25). Recalling that φiselects the

quaternion with positive scalar component and noting that

U(φ,u)U(θ,u) = U(θ + φ,u), we can now write

φi(∆(R,ω)R) =

σ?cos?(θ − δσ(ω⊤u))/2???cos?(θ − δσ(ω⊤u))/2?

and in particular,

2(1 + cosθ) +1

2ω⊤Jω

A32− A23

A13− A31

A21− A12

.

(27)

=−2ω⊤ψ(A)

and

4trace(−R[ω]×)

−a

2ψ(R) − KcE(φi(∆(R,ω)R))

?

(28)

,

sin?(θ − δσ(ω⊤u))/2?u

?

,

E(φi(∆(R,ω)R)) =

σ?cos?(θ − δσ(ω⊤u))/2??sin?(θ − δσ(ω⊤u))/2?u.

Applying (29) and (17) to (28),

(29)

˙V (U(θ,u),ω) ≤ −γ(?ω?2) − ω⊤ua

− ω⊤u?cσ?cos?(θ − δσ(ω⊤u))/2??

2sinθ

∗ sin?(θ − δσ(ω⊤u))/2??.

(30)

1006

Page 5

Note that when ω⊤u = 0, it follows that˙V (U(θ,u),ω) ≤ 0,

so we further constrain our analysis from this point to the

case when ω⊤u ?= 0. Now, without loss of generality, we

assume that π − δ < θ < π + δ, where

σ?cos?(θ − δσ(ω⊤u))/2??= σ?π − (θ − δσ(ω⊤u))?.

Now, since σ(ω⊤u)2= 1 and sσ(s) = |s|, we factor this

term to arrive at

(31)

˙V (U(θ,u),ω) ≤ −γ(?ω?2) − |ω⊤u|a

− |ω⊤u|cσ(ω⊤u)σ?π − (θ − δσ(ω⊤u))?

2σ(ω⊤u)sinθ

∗ sin?(θ − δσ(ω⊤u))/2?.

(32)

Moreover, for any r,s ∈ R, it follows that σ(s)σ(r) =

σ(rσ(s)). Applying this relation to (32), we have

˙V (U(θ,u),ω) ≤ −γ(?ω?2) − |ω⊤u|a

− |ω⊤u|cσ?(π − θ)σ(ω⊤u) + δ)?

It follows that˙V (U(θ,u),ω) < 0 whenever

cσ?(π − θ)σ(ω⊤u) + δ)?sin?(θ − δσ(ω⊤u))/2?

2σ(ω⊤u)sinθ

∗ sin?(θ − δσ(ω⊤u))/2?.

(33)

+a

2σ(ω⊤u)sinθ > 0.

(34)

Now, we can apply trigonometric inequalities to analyze

(34). In particular, we have that |sinθ| ≤ |θ − π| and since

1−cosθ ≤1

deduce that sin(1

(34) holds when

2θ2, we can use the properties of sin and cos to

2(θ − δσ(ω⊤u))) ≥ 1 −1

8(θ − π)2. Hence,

cσ?(π − θ)σ(ω⊤u) + δ)??

1 −?θ − π − δσ(ω⊤u)?2?

/8

>a

2|θ − π|.

(35)

Now, since δ > |π −θ| by a previous assumption, it follows

that σ?(θ − π)σ(ω⊤u) + δ?

(34) holds when

= 1. This assumption also

8(θ − π − δσ(ω⊤u))2≥ 1 −1

implies that 1 −1

2δ2. Hence,

c?1 − δ2/2?> aδ/2

Since δ ≥ 0, we have at least for small δ that 0 > δ2+

aδ/c−2, so we can bound δ by the positive root of λ(x) =

x2+(a/c)x−2 located at x = (−(a/c)±?(a/c)2+ 8)/2.

{(R,ω) : cosθ < cos(π+δ) or ω = 0} ⊃ {U(π,S2)}×{0},

where 0 < δ <

?

that {U(π,S2)} × {0} is stable. We note that this last

inequality implies that 0 < δ <

1

2

⇐⇒0 > δ2+ (a/c)δ − 2. (36)

Hence, we have that˙V (U(θ,u),ω) ≤ 0 on the set W =

−(a/c) +?(a/c)2+ 8

?

/2. This implies

√2, since, if µ(x) =

?−x +√x2+ 8?, it follows that

dµ(x)

dx

=1

2

?

1

√x2+ 8− 1

?

< 0.

That is, as the ratio of a to c increases, the upper bound on

δ given as 0 < δ < µ(a/c) must decrease.

To estimate an invariant set using V , we find a sub-level

set of V contained in the set W. In fact, the set B is a

sub-level set of V corresponding to the set {(U(θ,u),ω) :

V (U(θ,u),ω) ≤

and so it is invariant.

a

2(1 + cos(π + δ))}. Moreover, B ⊂ W

This result shows that the discontinuity created by pairing

an inconsistent quaternion-based feedback with a discontinu-

ous quaternion selection scheme is susceptible to arbitrarily

small measurement disturbances. This is because at the

discontinuity of Φi(on the manifold U(π,S2)), the feedback

term cE(Φi(R)) opposes itself about the discontinuity. Then,

malicious disturbances like (21) can exploit the disconti-

nuity of the vector field to induce a chattering behavior

that stabilizes {U(π,S2)} × {0}. This is quite similar to

the inconsistent feedback κd(q,ω) = −σ(η)ǫ − ω (when

implemented with a lifted trajectory), which was shown

in [5] to exhibit extreme measurement sensitivity that can

destroy “global” attractivity properties of a desired attitude

in a kinematic setting.

The various failures of Φi have led several authors (e.g.

[21]) to derive sufficient conditions on the initial condi-

tions of (1) to ensure that these 180◦attitudes are never

approached, thus obviating the use of a globally nonsingular

representation of attitude like unit quaternions. However,

the issues with using Φias a path-lifting algorithm are not

a problem with the quaternion representation—they arise

because Φi is a memoryless map from SO(3) to S3. In

particular, Φi always chooses the closest quaternion to i.

In general, when one compares Q(R) with ˆ q for some

R ∈ SO(3) and ˆ q ∈ S3, Φ(q,R) is multi-valued on the

2-D manifold {p ∈ S3: p⊤ˆ q = 0}. However, when the

reference point for choosing the closest quaternion is allowed

to change, it is possible to create a dynamic algorithm

for lifting a path from SO(3) to S3. We explore such an

algorithm in the companion paper [22].

V. SIMULATION

In this section, we demonstrate the non-robustness asserted

by Theorem 5 in simulation. For ease of exposition, we let

¯ v = [3 4 5]⊤and define v = ¯ v/|¯ v|. The following simulation

has the parameters J = diag(10v), c = 1, δ = 10π/180, and

L(ω) = ω/10. Initial conditions were selected as R(0) = I,

ω(0) = 2v. Finally, the following simulation was conducted

in MATLAB as follows. The attitude kinematic equation

was implemented using a quaternion representation and the

differential equation ˙ q =

2(q/|q|) ⊙ ν(ω) − 10q(|q| − 1).

This implementation renders S3asymptotically stable and

ensures that q does not drift far from S3during the numerical

integration. The state q was projected to S3before being

subsequently used. The fixed-step solver ode3 was used for

numerical integration with a step size of 1/100.

Fig. 1 shows the effects of the malicious disturbance, ∆,

on the closed-loop system. The top plot shows the signal

θ(R) = cos−1((trace(R) − 1)/2), representing the angle

between R and I, the middle plot shows the components

of ω, and the bottom plot shows the components of τ =

1

1007