hybrid control for topologically constrained systems€¦ · hybrid control for topologically...
TRANSCRIPT
UNIVERSITY of CALIFORNIA
Santa Barbara
Hybrid Control for Topologically ConstrainedSystems
A Dissertation submitted in partial satisfaction of the
requirements for the degree
Doctor of Philosophy
in
Electrical and Computer Engineering
by
Christopher G. Mayhew
Committee in charge:
Professor Andrew R. Teel, Chair
Professor Joao P. Hespanha
Professor Roy Smith
Professor Francesco Bullo
December 2010
The dissertation of Christopher G. Mayhew is approved.
Professor Joao P. Hespanha
Professor Roy Smith
Professor Francesco Bullo
Professor Andrew R. Teel, Committee Chair
November 2010
Curriculum Vitæ
Christopher G. Mayhew
Education
2005 B.S. Electrical Engineering, Univeristy of California, River-
side.
2008 M.S. Electrical and Computer Engineering, University of
California, Santa Barbara.
Experience
2010–present Researcher at Robert Bosch LLC Research and Technology
Center, Palo Alto, California.
2006–2010 Graduate Student Researcher at University of California,
Santa Barbara.
2008 Engineering Intern at Robert Bosch LLC Research and Tech-
nology Center, Palo Alto, California.
2005–2006 Teaching Assistant at University of California, Santa Bar-
bara.
Selected Publications
C. G. Mayhew, R. G. Sanfelice, and A. R. Teel, “Robust global asymptotic atti-
tude stabilization of a rigid body by quaternion-based hybrid feedback,” in Pro-
ceedings of the 48th IEEE Conference on Decision and Control and 28th Chinese
Control Conference, 2009, pp. 2522–2527.
v
C. G. Mayhew, R. G. Sanfelice, and A. R. Teel, “Robust global asymptotic sta-
bilization of a 6-DOF rigid body by quaternion-based hybrid feedback,” in Pro-
ceedings of the 48th IEEE Conference on Decision and Control and 28th Chinese
Control Conference, 2009, pp. 1094–1099.
C. G. Mayhew, R. G. Sanfelice, M. Arcak, and A. R. Teel, “Robust global asymp-
totic attitude synchronization by hybrid control,” in Proceedings of the American
Control Conference, 2010, pp. 3666–3671.
C. G. Mayhew and A. R. Teel, “Global asymptotic stabilization of the inverted
equilibrium manifold of the 3D pendulum by hybrid feedback,” in Proceedings of
the 49th IEEE Conference on Decision and Control, 2010, to appear.
C. G. Mayhew, R. Sanfelice, and A. Teel, “Robust source-seeking hybrid con-
trollers for autonomous vehicles,” in Proceedings of the American Control Con-
ference, 2007, pp. 1185–1190.
C. G. Mayhew, R. Sanfelice, and A. Teel, “Robust source-seeking hybrid con-
trollers for nonholonomic vehicles,” in Proceedings of the American Control Con-
ference, 2008, pp. 2722–2727.
C. G. Mayhew, R. Sanfelice, and A. Teel, “Robust hybrid source-seeking algo-
rithms based on directional derivatives and their approximations,” in Proceedings
of the 47th IEEE Conference on Decision and Control, 2008, pp. 1735–1740.
C. G. Mayhew, K. L. Knierim, N. A. Chaturvedi, S. Park, J. Ahmed, and A. Kojic,
“Reduced-order modeling for studying and controlling misfire in four-stroke hcci
vi
engines,” in Proceedings of the 48th IEEE Conference on Decision and Control
held jointly with the 28th Chinese Control Conference, 2009, pp. 5194–5199.
C. G. Mayhew and A. R. Teel, “Hybrid control of planar rotations,” in Proceedings
of the American Control Conference, 2010, pp. 154–159.
C. G. Mayhew and A. R. Teel, “Hybrid control of spherical orientation,” in Pro-
ceedings of the 49th IEEE Conference on Decision and Control, 2010, to appear.
vii
Abstract
Hybrid Control for Topologically Constrained Systems
by
Christopher G. Mayhew
The topology of the configuration manifold for many physical systems is inherently
troublesome from a control perspective. In fact, for systems having a compact con-
figuration manifold, there exists no continuous control law that is globally asymp-
totically stabilizing for some desired equilibrium point in the manifold. Memory-
less discontinuous state feedback control is sometimes employed to “solve” such
topological issues; however, we show that global attractivity properties brought
about by such controllers are not robust to arbitrarily small measurement noise.
In this work, we employ hybrid control to solve the robust global stabilization
problem for such topologically constrained systems. In particular, we propose a
control scheme that coordinates a family of Lyapunov-based control laws using
state-based hysteretic switching. Using Lyapunov functions to generate the family
of control laws instantly yields a condition on the family of Lyapunov functions
that is equivalent to guaranteeing robust global asymptotic stability of the closed-
loop system. Hence, with the proposed hybrid controller, the original robust global
stabilization problem is transformed into one of finding a family of “synergistic”
Lyapunov functions. While this problem is difficult in general, we provide some
viii
results for manifolds commonly encountered in engineering including the unit
circle, unit 2-sphere, and the special orthogonal group of order three.
In many cases, the topological complexity of certain manifolds can be reduced
by considering its representation in a “covering space.” While this transformation
makes certain aspects of a control design less difficult, it introduces some subtleties
that are often ignored and can have very undesirable consequences for the closed-
loop system. We carefully examine rigid body attitude control in the context
of a quaternion representation and again provide a hybrid control scheme that
provides robust global asymptotic tracking and synchronization of a network of
rigid bodies.
ix
List of Symbols
Notation
• N denotes the natural numbers, i.e. N = 0, 1, 2, . . . .
• Z denotes the integers.
• R, R≥0, and R≤0 denote the real, nonnegative, and nonpositive real numbers,
respectively.
• Rn denotes n-dimensional real numbers with canonical basis vectors e1, . . . , en.
• Rn×m denotes the set of real-valued n×m matrices.
• Given x ∈ Rn×1 or X ∈ R
n×m, x⊤ ∈ R1×n, respectively, X⊤ ∈ R
m×n denotes
its transpose.
• Given a matrix A ∈ Rn×n, trace(A) is the sum of its diagonal entries, det(A)
denotes the determinant of A.
• Given vectors x, y ∈ Rn, or matrices A,B ∈ R
n×n, their natural inner
product is denoted 〈x, y〉 = x⊤y or 〈A,B〉 = traceA⊤B, respectively.
• Given x ∈ Rn, its Euclidean norm is |x| =
√〈x, x〉.
x
• Given A ∈ Rm×n, its Frobenius norm is |A|F =
√〈A,A〉.
• The set Sn = x ∈ R
n+1 : |x| = 1 is the n-dimensional unit sphere embed-
ded in Rn+1.
• B = x ∈ Rn : |x| ≤ 1 is the closed unit ball in Euclidean space.
• Given a set S, its closure is S, its interior is S, and its boundary is ∂S.
• Given a set S ⊂ Rn, convS and convS denote its convex hull and closed
convex hull, respectively.
• Given a set S ⊂ Rn and x ∈ R
n, |x|S = infy∈S |x− y|.
• Given sets S1, S2 ⊂ Rn, S1 + S2 = x1 + x2 : x1 ∈ S1, x2 ∈ S2.
• Given a matrix A ∈ Rm×n, its ijth element is Aij.
• Given a matrixA ∈ Rm×n, its vectorization is vecA =
[(Ae1)
⊤ · · · (Aen)⊤]⊤
.
• The vector of ones is 1 =
[1 · · · 1
]⊤.
• Given matrices A ∈ Rm×n and B ∈ R
p×q, their Kronecker product is the
mp× nq matrix.
A⊗B =
A11B · · · A1nB
.... . .
...
Am1B · · · AmnB
. (0.1)
• Given a matrix A ∈ Rn×n, its exponential is the matrix
expA = eA =∞∑
k=0
1
k!Ak. (0.2)
xi
• The set SO(n) = X ∈ Rn×n : X⊤X = XX⊤ = I, detX = 1 is the special
orthogonal group of order n. Its Lie algebra is the set so(n) = S ∈ Rn×n :
S⊤ = −S.
• Given a matrix A ∈ Rn×n, its projection onto so(n) is given by the operator
skew : Rn×n → so(n), defined as
skewA =A− A⊤
2. (0.3)
• Given y, z ∈ R3, their cross product is y × z = [y]× z, where
[y]× =
0 −y3 y2
y3 0 −y1
−y2 y1 0
. (0.4)
The map vec× : so(3) → R3 is the inverse of [·]×, that is,
vec× [y]× = y. (0.5)
• A continuous function α : R≥0 → R≥0 is said to be class-K if α(0) = 0 and
it is strictly increasing.
• A function α : R≥0 → R≥0 is said to be class-K∞ if it is class-K and
lims→∞ α(s) = ∞.
• A continuous function β : R≥0 × R≥0 → R≥0 is said to be class-KL if for
each fixed r, the map s 7→ β(s, r) is class-K and if for each fixed s, the map
r 7→ β(s, r) is decreasing and limr→∞ β(s, r) = 0.
• Given a topological space X, the set of all subsets of X is 2X . Given a
toplogical space Y , a set-valued map F : X → 2Y is denoted F : X Y .
xii
• Given topological spaces X, Y , and a set-valued map F : X Y , the
domain, range, and graph of F are the sets
domF = x ∈ X : F (x) 6= ∅,
rgeF = y ∈ Y : ∃x ∈ X such that y ∈ F (x),
gphF = (x, y) ∈ X × Y : y ∈ F (x).
xiii
Contents
Curriculum Vitæ v
Abstract viii
List of Symbols x
1 Introduction 1
1.1 Topological Compatibility of Control Objectives and the State Space 2
1.2 Potential-Based Control of Mechanical Systems . . . . . . . . . . 5
1.3 Potential Functions and Manifold Topology . . . . . . . . . . . . . 9
1.4 Synergistic Potential Functions and Hybrid Control . . . . . . . . 12
1.5 Quaternion-Based Control of Rigid-Body Attitude . . . . . . . . . 15
2 Topological Obstructions to Robust Global Asymptotic Stability 18
2.1 Continuous Dynamical Systems . . . . . . . . . . . . . . . . . . . 19
2.2 Differential Inclusions . . . . . . . . . . . . . . . . . . . . . . . . . 23
3 Hybrid Control with Synergistic Potential Functions 34
3.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.1.1 The Lusternik-Schnirelmann Category . . . . . . . . . . . 35
3.1.2 Basic Results from Morse Theory . . . . . . . . . . . . . . 37
3.2 Synergistic Potential Functions and Hybrid Control . . . . . . . . 43
3.3 Control of Planar Rotations in S1 . . . . . . . . . . . . . . . . . . 51
xiv
3.3.1 Problem Statement and Notation . . . . . . . . . . . . . . 52
3.3.2 Hybrid Control Structure . . . . . . . . . . . . . . . . . . 54
3.3.3 Synergistic Potentials for S1 via Angular Warping . . . . . 57
3.4 Control of Spherical Orientation in S2 . . . . . . . . . . . . . . . . 61
3.4.1 Problem Statement and Notation . . . . . . . . . . . . . . 63
3.4.2 Hybrid Control Structure . . . . . . . . . . . . . . . . . . 65
3.4.3 Synergistic Potentials for S2 via Angular Warping . . . . . 67
3.4.4 Global Asymptotic Stabilization of the Inverted EquilibriumManifold of the 3-D Pendulum . . . . . . . . . . . . . . . . 71
3.5 Control of Rigid Body Attitude in SO(3) . . . . . . . . . . . . . . 82
3.5.1 Problem Statement and Notation . . . . . . . . . . . . . . 82
3.5.2 Hybrid Control Structure: Kinematics & Dynamics . . . . 88
3.5.3 Not-So-Synergistic Potential Functions on SO(3) . . . . . . 93
3.5.4 Synergistic Potentials for SO(3) via Angular Warping . . . 98
3.5.5 Simulation Results . . . . . . . . . . . . . . . . . . . . . . 101
4 Quaternion-Based Attitude Control 111
4.1 Disambiguation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
4.1.1 Inconsistent Quaternion-based Control Laws and Path Lifting116
4.1.2 A Hybrid Algorithm for Dynamic Path Lifting . . . . . . . 125
4.1.3 The Unwinding Phenomenon . . . . . . . . . . . . . . . . 131
4.2 Kinematic Attitude Stabilization . . . . . . . . . . . . . . . . . . 135
4.3 Quaternion-Based Tracking Control . . . . . . . . . . . . . . . . . 144
4.3.1 Tracking Error Dynamics . . . . . . . . . . . . . . . . . . . 145
4.3.2 Hybrid Attitude Tracking Controller . . . . . . . . . . . . 147
4.3.3 Simulation Study . . . . . . . . . . . . . . . . . . . . . . . 161
4.4 Attitude Synchronization . . . . . . . . . . . . . . . . . . . . . . . 163
4.4.1 Multi-Agent Framework . . . . . . . . . . . . . . . . . . . 165
4.4.2 Relative Attitude Error Coordinates and the Synchroniza-tion Problem . . . . . . . . . . . . . . . . . . . . . . . . . 167
4.4.3 Robustly Synchronizing Hybrid Controller . . . . . . . . . 170
xv
4.4.4 The Hybrid Controller . . . . . . . . . . . . . . . . . . . . 170
4.4.5 The Closed-Loop System . . . . . . . . . . . . . . . . . . . 173
4.4.6 Simulation Study . . . . . . . . . . . . . . . . . . . . . . . 179
5 Conclusion 189
5.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
5.2 Future Directions . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
A Hybrid Systems Framework 193
B Topology 197
C Calculus, Manifolds, and Differential Geometry 207
D Matrix Calculus by Vectorization and the Kronecker Product 213
E Properties of the Cross Product 216
F Proofs 220
F.1 Proof of Theorem 2.1.2 . . . . . . . . . . . . . . . . . . . . . . . . 220
F.2 Proof of Lemma 2.1.7 . . . . . . . . . . . . . . . . . . . . . . . . . 221
F.3 Proof of Theorem 2.1.8 . . . . . . . . . . . . . . . . . . . . . . . . 221
F.4 Proof of Lemma 2.2.9 . . . . . . . . . . . . . . . . . . . . . . . . . 222
F.5 Proof of Theorem 3.3.3 . . . . . . . . . . . . . . . . . . . . . . . . 223
F.6 Proof of Theorem 3.3.4 . . . . . . . . . . . . . . . . . . . . . . . . 223
F.7 Proof of Theorem 3.4.3 . . . . . . . . . . . . . . . . . . . . . . . . 225
F.8 Proof of Theorem 3.4.9 . . . . . . . . . . . . . . . . . . . . . . . . 227
F.9 Proof of Theorem 3.5.4 . . . . . . . . . . . . . . . . . . . . . . . . 229
F.10 Proof of Lemma 3.5.5 . . . . . . . . . . . . . . . . . . . . . . . . . 231
F.11 Proof of Theorem 3.5.6 . . . . . . . . . . . . . . . . . . . . . . . . 232
F.12 Proof of Theorem 3.5.8 . . . . . . . . . . . . . . . . . . . . . . . . 233
F.13 Proof of Theorem 3.5.9 . . . . . . . . . . . . . . . . . . . . . . . . 236
F.14 Proof of Theorem 4.1.6 . . . . . . . . . . . . . . . . . . . . . . . . 240
xvi
F.15 Proof of Theorem 4.1.7 . . . . . . . . . . . . . . . . . . . . . . . . 244
F.16 Proof of Lemma 4.1.8 . . . . . . . . . . . . . . . . . . . . . . . . . 246
F.17 Proof of Theorem 4.1.9 . . . . . . . . . . . . . . . . . . . . . . . . 252
F.18 Proof of Theorem 4.3.2 . . . . . . . . . . . . . . . . . . . . . . . . 254
F.19 Proof of Theorem 4.3.5 . . . . . . . . . . . . . . . . . . . . . . . . 257
F.20 Proof of Theorem 4.4.3 . . . . . . . . . . . . . . . . . . . . . . . . 260
Bibliography 263
xvii
Chapter 1
Introduction
On a sunny Thursday afternoon in University of California, Santa Barbara,
two students are walking to their next destination, merrily ignorant of their inter-
twined fate: a catastrophic collision that would disrupt the chronology of a fresh
set of class notes and leave one cellular phone completely destroyed. From the
Arts building, an ECE student departs from a graduate mathematics course and
heads eastbound for Phelps Hall, where a nonlinear analysis course awaits to re-
lieve the student’s preoccupation of how a strictly increasing continuous function
could possibly have a derivative of zero. On the other side of campus, an under-
graduate Psychology major departs from Campbell hall, largely unconcerned with
the lecture on Pavlovian conditioning and is instead, engaged in a cell phone con-
versation regarding the coming night’s events. As their paths converge in front of
the Arbor, neither student is so much concerned with the immediate path ahead
until, within a small distance of one another, both students sense the impending
collision and take evasive action. Left and right, the students counter each other’s
movements until they inevitably meet in a not-so-elastic collision, sending cell
1
phone, measure theory, and students in all directions, yet reuniting soon after at
a common potential energy.
In the aftermath, the ECE student cannot help but analyze the conditions
leading to the accident and wonder if it could have been avoided. Upon a close
investigation, the student decomposes the situation into three pieces: a goal, a
constraint, and an algorithm. The goal was to move from point A to point B. The
constraint was that the path taken from A to B could not intersect the path of an
undergraduate psychology student at the same point in time. The algorithm was
supposed to steer the ECE student to the destination without collision and the
ECE student wondered if the collision was a result of a poor algorithm. Certainly,
a “smooth” algorithm could not be a “good” one, the student reckoned, as there
would be some intermediate point where the algorithm had to transition between
“move right” and “move left” around the obstacle. The student also noted that an
algorithm which transitioned very quickly was probably the algorithm used during
the accident, as small movements of the obstacle led to many abrupt changes in
the algorithm’s commanded direction, yielding a net translation of zero. Finally,
the student concluded that if only the algorithm had been decisive and insensitive
to the small changes in the obstacle’s position that the collision could have been
avoided.
1.1 Topological Compatibility of Control Objec-
tives and the State Space
A common objective in control engineering is to develop an algorithm that
consistently delivers a desired objective in the face of constraints. While various
2
constraints arise in many applications, the constraints arising in the introductory
story impart a fascinating difficulty to achieving the desired objective. In this
situation of obstacle avoidance, the student was not able to move about in the
environment freely, yet had to achieve the goal of arriving to the next class. In
this example, the constrained environment and the desired objective were not
topologically compatible. Let me clarify.
A wide range of control systems can be modeled by a differential equation
x = f(x, u) x ∈ X , (1.1)
where the state x is constrained to evolve within some state space X and u is a
vector of control inputs in some admissible control space U . In this scenario, many
control objectives can be cast as achieving asymptotic stability of a compact set
A ⊂ X . That is, the control designer must produce an algorithm κ : X → U
such that the resulting feedback system defined by setting u = κ(x) steers points
in X to A and keeps them close to A upon arrival. This requires that for a
neighborhood U of points around A, the direction of f(x, κ(x)) point inwards
towards A. Perhaps most desirable would be if f(x, κ(x)) could steer all points
in X to A. Going backwards in time, this would require that the differential
equation (1.1) take the neighborhood U and deform it so that it “fills up” X . But
what if U and X aren’t the same shape? That is, what if U and X do not have
the same topological structure? In this case, the differential equation (1.1) might
need to cut holes in U or glue pieces of it together so that it matches the shape
of X . As it turns out, these are not things that differential equations can do, at
least under the assumption of continuity [1–3].
3
At this point, one might wonder if it is possible for a discontinuous differential
equation to produce the desired result. That is, will a discontinuous differential
equation be able to cut and paste the neighborhood U so that its shape matches
the state space? Of course, one then has to ask, what is a solution to a differential
equation with a discontinuous right-hand side and how are solutions dependent
on changes in initial conditions? These questions have been studied in great
detail over the years and answered in [4–8], for example. While many notions of
solutions to discontinuous differential equations exist in the literature, the notion
we persist in using in this work (studied by the aforementioned references) is
known as a Krasovskii solution. By definition, this notion of solution leads to
studying absolutely continuous solutions of a differential inclusion
x ∈ F (x) x ∈ X (1.2)
that satisfies certain regularity properties.
The basic reason for studying these solutions is that they capture all solutions
of a discontinuous differential equation that can be brought about by arbitrar-
ily small measurement noise [4, 5, 9, 10]. Thus, studying asymptotic stability for
such differential inclusions is equivalent to studying robust stability of the original
discontinuous differential equation. The main result of Chapter 2 is that asking
for robust global asymptotic stability of some compact set A ⊂ X under the ac-
tion of (1.2) (satisfying certain regularity properties) implies the existence of a
smooth differential equation that renders A globally asymptotically stable. As
an unfortunate consequence, this implies that, even if one is willing to relax the
admissible feedback control algorithm to be discontinuous, it may be impossible
to robustly and globally stabilize a compact set that does not have the same topo-
4
logical structure as the state space. Returning a final time to our introductory
story, we see that the ECE student’s obstacle avoidance algorithm was probably
a discontinuous one and very sensitive to changes in the measured position of
inbound undergrads, which caused the chattering collision-bound trajectory.
While we do not examine a solution to the obstacle avoidance problem in this
work, we do examine several systems that evolve on a constrained state space,
where the stabilization goal is not topologically compatible with the state space.
In particular, we examine systems evolving on a compact manifold, like the unit
circle. It is easy to see that a small neighborhood around a point in the unit circle
is topologically equivalent to a small line segment; however, the unit circle, as a
whole is not topologically equivalent to a line segment, without gluing the ends of
the line segment together. These nonlinear state spaces arise naturally, especially
in systems with rotational degrees of freedom. These types of systems are the
primary focus of this dissertation.
1.2 Potential-Based Control of Mechanical Sys-
tems
A simple mechanical system consists of a smooth Riemannian manifold, a
smooth Lagrangian corresponding to kinetic energy minus potential energy, and
a set of external forces [11, 12]. When a subset of these forces are available for
control, the result is a simple mechanical control system [13–18]. While it is out
of the scope of this dissertation to consider the global stabilization of mechanical
systems in a broad generality, we provide a brief historical overview. General
references for classical mechanics and dissipative mechanical systems are [12, 16,
5
19]. A control-oriented perspective of mechanical systems is given in [15].
Many problems in control systems are specified as the stabilization of a de-
sired configuration of a mechanical system, prompting a vast literature concern-
ing the stabilization of specific or general mechanical systems. Applications come
in the form of autonomous vehicles [20–23] (underwater and otherwise), robotic
manipulators [24–26], satellites [27, 28], pendulum systems [29–32], quad-rotor
aircraft [33,34], and gimbal-based pointing mechanisms [35–37], to name a few.
In classical mechanics, the work done on a particle x ∈ R3 by a force F : R
3 →
R3 as the particle moves along a curve C, is calculated as the integral
W =
∫
C
F (p)dp =
∫ 1
0
〈F (p(t)), p′(t)〉 dt,
where p : [0, 1] → R3 is an arbitrary parametrization of the curve C. When
this integral is dependent only on the endpoints of the path, p(0) and p(1), and
independent of the actual path taken to and from the endpoints, the force is
said to be conservative [38, 39]. By a result of elementary calculus [40, §7.4] this
condition is equivalent to expressing the force F as the negative gradient of some
scalar function P : R3 → R. That is,
F = −∇P.
The function P is often called a potential function and is a measure of the po-
tential energy, or the stored energy of position due to F . Often, potential energy
exists in a system due to basic physical phenomena, like the force exerted by the
deformation of a spring or the force due to mass and gravity, but in a controlled
system, we, the control designers, have the opportunity to shape the potential
6
energy of the system or even inject and remove energy in the system through
actuation.
The analysis and control of mechanical systems from an energy viewpoint has
been present for some time. In fact, it has been known for centuries that dissi-
pative mechanical systems converge to a local minimum of a potential function.
Early works include [41], where Lagrange investigated the stability of motion
about equilibrium states of a conservative system. Later, [42] showed that the
introduction of dissipative forces lead to asymptotic stability of local minima of
potential function. Lyapunov later generalized these ideas in [43], which gained a
wide acceptance after being introduced to the control community in [44].
As these ideas gained in popularity, the idea of creating an artificial potential
energy through control action took hold in the robotics community for control
of robotic manipulators, arguably first in [45]. These ideas were followed by
[26,46], which explicitly incorporated an artificial potential energy into the control
strategy. Similar ideas were pursued in [47]. Introducing an artificial potential
energy soon became useful for obstacle avoidance in robotic manipulation and
vehicular navigation as well, with the first work appearing in [48], closely followed
by [49] and [22,50–52].
As the applications in robotics grew rapidly, the ideas were soon applied to
generalized notions of mechanical control systems using methods of differential
geometry. Some of the first work appeared in [53] for mechanical systems in
Hamiltonian form, where a potential shaping control was applied to conclude
local asymptotic stability of an equilibrium point. Later, generalized PD control
mechanical systems was studied in [54] and a strict Lyapunov function was found
for systems evolving on a configuration manifold with a trivial (parallelizable)
7
tangent bundle. The same author extended this analysis to mechanical systems
in a Lagrangian framework in [13], where global conclusions were drawn about
the solutions to dissipative mechanical systems using total energy (potential plus
kinetic) as a Lyapunov function. At the same time, a tracking result appeared
for fully actuated mechanical systems in a Lagrangian framework [14], though no
global conclusions were drawn.
In the last decade, artificial energy considerations in control were further ad-
vanced. The work of [55], followed up by many of the same authors in [56] and [57]
investigated the role of potential functions in the context of Hamiltonian systems
and exploited their inherent passivity properties. At the same time, the idea of
shaping potential functions for Lagrangian systems appeared in [58]. Most re-
cently, the work of [11, 59] provides for tracking, and stabilization of Lagrangian
systems evolving on Lie groups and stabilization in the case of output feedback.
However, the results in [11, 59] lead to a control law that cancels many benign
nonlinearities. In contrast, the recent work in [18,60] gives control laws for almost
global stabilization of mechanical systems evolving on a general Riemannian man-
ifold, even in the face of actuator saturation. In [18,60], the resulting control law
does not cancel benign nonlinearities and relies completely on the construction of
a suitable potential function and a choice of damping-injection function.
While the results mentioned above have been instrumental in designing feed-
back control laws for a broad class of nonlinear mechanical systems, all of them
rely on a smooth feedback strategy constructed from a single potential function
and an additional term that removes energy from the system. Since it is known
that this control structure forces the system to converge to the set of critical points
of a potential function and leads to asymptotic stability of the set of local minima
8
of the potential function, one might wonder if it is possible to design potential
functions on a given manifold with only one critical point: a global minimum at
the desired equilibrium. A deeper look into this problem reveals that this goal is
not possible in general, due to the topological structure of the underlying state
space.
1.3 Potential Functions and Manifold Topology
Given a smooth scalar-valued function defined on a manifold, one can ask very
basic questions about its critical behavior. How many critical points does it have
and where do they lie? Is a given critical point a local minimum, maximum, or
a saddle point? Further, one can ask that a scalar-valued function satisfy some
desirable properties. Does it have only one local minimum, which is a global
minimum? Are the critical points isolated, or do they form a connected subset?
As it turns out, these questions probe at a deep topological level and were answered
to a great extent in the 1930’s, largely by L. Lusternik, L. Schnirelmann, and M.
Morse.
In 1934, Lusternik and Schnirelmann used the notion of category, or Lusternik-
Schnirelmann category (LS category) as it came to be known, to form a lower
bound for the number of critical points of any smooth function on a manifold. In
its original definition (and the one we will persist in using in this dissertation), the
LS category is the minimal number of contractible sets needed to cover a manifold.
In [61], Lusternik and Schnirelmann proved that this topological invariant provides
a lower bound for the number of critical points for any smooth function defined on
a manifold. This work was revisited in [62], where the LS category of a manifold
9
was compared with more standard objects in topology. The LS category of many
manifolds, including the primary ones studied in this dissertation were calculated
in [63, 64]. Finally, while the LS category of a manifold establishes a hard lower
bound for the number of critical points of a smooth scalar-valued function on a
manifold, its broad applicability dulls its usefulness when functions are assumed
to have more structure.
At the same time Lusternik and Schnirelmann published [61], Marston Morse
published [65], whose basic ideas have been distilled and updated in various texts
over the years [66–68]. The resulting “Morse theory” allows one to directly study
the topology of a manifold through a particular (yet quite general) class of smooth
functions (termed “Morse functions”), their level sets, and their critical points.
Formally, a Morse function does not have any “degenerate” critical points where
its differential vanishes along with the nonsingularity of its Hessian matrix. A
result of this assumption is that critical points are isolated.
Most relevant to this dissertation are the results on the number and form
of critical points of a smooth Morse function. Indeed, when designing potential
functions for use in controlling mechanical systems, the potential functions are
often assumed to be a Morse function as in [11, 13, 18, 59]. The Morse function
assumption facilitates global conclusions about the stability and attractivity of
desired equilibrium points. In particular, it allows one to conclude almost global
asymptotic stability of a desired equilibrium. The so-called “Morse polynomial”
characterizes the nature of critical points and affords a bound on the minimal
number of critical points as the sum of the Betti numbers. When applicable, this
bound can be much sharper than the LS category of a manifold.
In any case, the results of [61] and [65] shed light on why existing control
10
x2
x1
Figure 1.1. Uniform gravity acting on a particle constrained to move along acircle. The potential force has no effect on the particle at the top and bottom ofthe circle.
schemes on topologically troublesome manifolds fail to be global: there must be
more than one critical point for any scalar-valued function defined on the manifold.
This of course stems from the topological incompatibility of the control objective
(expressed by the potential function) and the state space. Consider, for example,
the situation shown in Figure 1.1. Here, a particle in a uniform gravity field is
constrained to move in a circle. At the top and bottom of the circle, the force
has no component that is tangent to the circle and so its effect on the particle
vanishes at these points.
In situations like the one in Figure 1.1, control actuation resulting from a
single potential function is not enough to guarantee global asymptotic stability,
as the influence of the force derived from a potential function can easily vanish
in places other than a desired equilibrium. Fortunately, this realization hints at a
possible solution, once one is willing to relax allowable feedback control strategies
to those that coordinate multiple control laws constructed from multiple potential
functions.
11
1.4 Synergistic Potential Functions and Hybrid
Control
A controller that coordinates a family of control laws constructed from a family
of potential functions requires them to work as a synergistic unit. At a bare
minimum, one requires that for each undesirable critical point (one that is not the
desired system state) of each potential function in the family, there exists another
potential function that doesn’t share this “bad” critical point. However, as we
show later by counter example, this is not a sufficient condition for guaranteeing
synergism, which, in this dissertation, requires that for each bad critical point of
each potential function in the family, there exists another potential function of
lower value. That is, there is always some “gap” between the minimum potential
function in the family and the critical values of all other potential functions in the
family away from the desired state.
Having a family of synergistic potential functions immediately suggests a
method for coordinating their resulting control laws: hysteretically choose the
control corresponding to the potential function of minimal value. This “min-
switch” hybrid control paradigm has appeared in the literature in various contexts
over the past two decades. In particular, an early application of this idea for im-
plementing hysteresis in adaptive control was presented in [69], which was made
scale independent in [70]. Later, [71] proposed this method (without hysteresis)
for multi-controller systems where it has been applied for the problem of swinging
up an inverted pendulum in [72] and for control of a double-tank system in [73]
(which suggests a similar form for the hysteresis used in this paper). Ideas related
to synergistic potential functions also appear in [74] where multiple Lyapunov
12
functions are proposed for analysis of switched and hybrid systems and in [75,76],
where a “min-projection” hybrid strategy was proposed for the stabilization of
switched nonlinear systems.
The importance of synergism is closely related to the capability of switching
between controllers in a way that leads to robust global asymptotic stability. As
we show in this dissertation, if the switching strategy is a static (i.e. memoryless)
function of the state, this results in a memoryless discontinuous feedback that
may be arbitrarily sensitive to measurement noise. So, always greedily using
the control law corresponding to the minimum potential function may not be a
robust strategy. However, the synergism property permits endowing a control-
coordination strategy with the virtue of patience via hysteresis, thanks to the gap
between the critical values of the potential functions away from the desired state.
That is, one can give memory to the control selection process so that it waits until
some minimal decrease condition is met.
Hybrid systems–those which allow both continuous flow and discrete jumps of
the state–provide an appropriate setting for design and analysis of a control-law
coordination strategy. The recent hybrid systems framework of [77, 78], devel-
oped in the context of robust stability, is especially relevant for our purpose, as
measurement-noise sensitivity can destroy global attractivity properties for mem-
oryless discontinuous feedback. This framework, reviewed in [78], posits a hybrid
system H with a state x ∈ Rn, possibly including both continuous and discrete
state components, as a collection of four objects: a flow map F : Rn
Rn that
governs continuous evolution of the state, a flow set C ⊂ Rn that dictates where
continuous evolution can occur, a jump map G : Rn
Rn that governs discrete
jumps of the state, and a jump set D ⊂ Rn that dictates where jumps can occur.
13
A hybrid system is written succinctly as H = (F,G,C,D), or
H
x ∈ F (x) x ∈ C
x+ ∈ G(x) x ∈ D.
Hybrid systems lend a very useful tool to deal with topologically constrained
control problems: the use of logic variables for implementing hysteresis and break-
ing topological constraints while retaining robustness. Consider again, the differ-
ential equation (1.1) and suppose that we had designed N controllers, κq : X → U
that, for each q ∈ 1, . . . , N, could be applied on the set Cq ⊂ X and that
⋃q∈1,...,NCq = X . When the sets Cq have some overlap, it is possible to design a
control strategy that adds memory (i.e. hysteresis) to the crucial decision of when
and how to switch control laws. In this situation, one might have the following
closed-loop system, where q becomes a memory state:
x = f(x, κq(x))
q = 0︸ ︷︷ ︸
x ∈ Cq
x+ = x
q+ ∈ g(x)︸ ︷︷ ︸x ∈ Dq.
The difficult question to answer here becomes how to design the sets Cq, Dq and
a switching rule g(x) that guarantees global asymptotic stability of a desired
compact set A ⊂ X . By employing a synergistic family of potential functions, we
provide the hysteretic “min-switch” construction in Chapter 3 that results in the
desired objective.
14
1.5 Quaternion-Based Control of Rigid-Body At-
titude
An important case study of the methods proposed in this dissertation is the
stabilization of rigid-body attitude. The rigid-body configuration space, SO(3),
is rife with topological difficulty. In particular, SO(3) is a boundaryless com-
pact manifold and hence, is not diffeomorphic to any vector space [2, 13]. This
simple fact precludes the existence of any continuous feedback control law that
globally asymptotically stabilizes a desired attitude [2,13]. Instead, many authors
(e.g. [11,13,30,79–84]) settle for almost global asymptotic stability on such topo-
logically constrained manifolds, where the desired (locally asymptotically stable)
equilibrium is attractive from all points in the state space except a nowhere dense
set of zero Lebesgue measure.
Indeed, these topological obstructions make their way into Lyapunov analysis
in the form of critical points (or critical manifolds) for potential functions. This
phenomenon is easily seen in the context of rigid bodies, where potential func-
tions on SO(3) are guaranteed by the Lusternik-Schnirelmann category and Morse
theory to have at least 4 critical points, some of which are clearly not desirable.
In Chapter 3.5, we provide a hybrid controller based in SO(3) that uses multiple
potential functions to accomplish the desired stabilization task.
The attitude of a rigid body is often parametrized to exploit inherent redun-
dancies in the rotation matrix description of SO(3); however, certain parametriza-
tions face further topological difficulties. As pointed out in [85], no three-parameter
parametrization of SO(3) is globally nonsingular (i.e., the map from representation
coordinates to SO(3) is not everywhere a local diffeomorphism). This creates an
15
inherent obstacle in achieving global asymptotic stability using control methods
based on Euler angles (e.g. pitch, roll, yaw), (modified) Rodrigues parameters,
and exponential coordinates, among others.
Pursuing a globally nonsingular parametrization, many authors (as well as the
author of this dissertation) employ unit quaternions, which evolve on the three-
dimensional unit sphere embedded in R4, denoted as S
3. This parametrization
is everywhere a local diffeomorphism, but uses four parameters, is subject to a
unit-norm constraint, and is two-to-one. This double covering of SO(3) by S3
transforms the stabilization task. Where the original control objective was to
globally asymptotically stabilize a single equilibrium point in SO(3), the double-
covering property translates the control objective in S3 to the global asymptotic
stabilization of a disconnected set of two antipodal points that represent the same
attitude. Not surprisingly, neither of these two control objectives are topologically
compatible with their respective state space.
When this double covering is neglected, the resulting controller can induce very
undesirable behavior. In particular, when one attempts to asymptotically stabilize
a single equilibrium point in S3, rather than both points corresponding to the
same attitude (e.g. [28,86–90]), the desired attitude becomes an equilibrium point;
however, it may be stable, or unstable, depending on the controller’s knowledge
of the quaternion representation! This behavior has been documented for decades
and is referred to as the unwinding phenomenon [2, 28,86].
In Chapter 4, we thoroughly investigate the unwinding phenomenon in the
context of how to implement quaternion-based control laws that are not well-
defined on SO(3) (they may take on one of two values). As a result, we make
an equivalence between solutions of the “lifted system” on S3 and a closed-loop
16
system that dynamically lifts paths from SO(3) to S3 for the use of quaternion-
based feedback laws. In essence, this result justifies carrying out analysis in the
covering space S3 for such control laws, which is a widely-accepted practice in the
existing literature. The results also show that a stability result obtained in the
covering space may not actually be desirable, as it induces unwinding.
In Chapter 4, we derive a quaternion-based hybrid controller for kinematic
rigid-body attitude stabilization. We extend this to the dynamic case in a track-
ing problem for full state feedback and two output feedback cases. Finally, we
conclude this dissertation by applying this method to synchronizing the attitude
of a network of rigid bodies.
17
Chapter 2
Topological Obstructions to
Robust Global Asymptotic
Stability
In this chapter, we study the topological properties of asymptotically sta-
ble attractors of continuous dynamical systems and differential inclusions. These
properties are crucial to understanding some fundamental limits of feedback con-
trol. In particular, we will find that when a specified objective of feedback control
does not have the same topological structure as world in which the dynamical
system evolves, the task may be impossible to carry out, at least robustly, with
certain types of feedback. To conduct this study, we will abstract the notion
of a continuous-time dynamical system to a mapping commonly referred to as a
flow. This is the approach taken, for example, in [1,2], and some of the following
material follows these references closely.
18
2.1 Continuous Dynamical Systems
Definition 2.1.1. Given a topological space X, a flow on X is a continuous map
Φ : X × R → X that satisfies
1. Φ(x, 0) = x for every x ∈ X (identity axiom),
2. Φ(Φ(x, t1), t2) = Φ(x, t1 + t2) (group axiom).
Given a flow, one can define two auxiliary maps by holding either the first or
second argument constant. Precisely, we say that given a flow Φ : X×R → X, its
t-flow is the map Φt : X → X defined as Φt(x) = Φ(x, t) and its x-solution is the
map Φx : R → X defined as Φx(t) = Φ(x, t). Note that, given a flow Φ, any two
t-flows Φt1 and Φt2 are homotopic, since Φ is continuous in t. Furthermore, when
X is path connected, any two x0-solutions of Φ are also homotopic. A crucial
property of flows is that the action of a t-flow is a homeomorphism for any t ∈ R.
Theorem 2.1.2. For every t ∈ R, the t-flow of a flow Φ is a homeomorphism of
X onto itself.
Proof. See Appendix F.1.
This abstraction encompasses many notions of a dynamical system. Several
examples are given in [1], but perhaps most importantly are the solutions of a
differential equation
x = f(x), (2.1)
where x ∈ Rn and f : R
n → Rn. When (2.1) produces solutions that are unique
(both forward and backward in time) and depend continuously on their initial
19
condition, one can think of a flow induced by f as a representation of the solution
set to (2.1), streamlined into a function.
Moving from (2.1) to its flow is fairly straightforward and there are various
ways to ensure the necessary properties. For example, when f is locally Lipschitz,
solutions are guaranteed to be unique, at least on a small interval, both forward
and backward in time [91, 92], and are continuous with respect to their initial
condition. Solutions to (2.1) that have a limited time domain of definition can
also be identified with solutions to a regularized version of (2.1) (see [1,93]). More
generally, one may also consider the flow induced by the integral curves of a vector
field on a manifold [15,94,95]. Thus, this treatment is sufficiently general for our
purpose.
From the flow viewpoint of a continuous-time dynamical system, we can make
several classical definitions of invariance, stability, and attractivity.
Definition 2.1.3. A set A ⊂ X is forward invariant (backward invariant) under
the flow Φ if Φ(A, t) ⊂ A for all t ∈ R≥0 (t ∈ R≤0). It is invariant if it is
both forward and backward invariant. An invariant point x ∈ X is called an
equilibrium.
Definition 2.1.4. A set A ⊂ X is stable under the flow Φ if for every open set
Uǫ ⊃ A, there exists an open set Uδ ⊃ A such that Φ(Uδ, t) ⊂ Uǫ for all t ∈ R≥0.
Definition 2.1.5. A set A ⊂ X is attractive under the flow Φ from B if for every
x ∈ B and every open set U ⊃ A, there exists T ≥ 0 such that Φ(x, t) ∈ U for all
t ≥ T . The basin of attraction of A under Φ is the union of all sets from which
A is attractive, denoted as BΦ(A).
Definition 2.1.6. A set A ⊂ X is asymptotically stable under the flow Φ if it is
20
stable and attractive from an open set containing A.
From these classical definitions, we can prove several useful topological prop-
erties of attraction basins of asymptotically stable equilibria X. The develop-
ment of results here follows [3] and the following result is a slight generalization
of [3, Lemma 5.9.12].
Lemma 2.1.7. If A ⊂ X is asymptotically stable under Φ, then for every x ∈
BΦ(A) and every open neighborhood U of A, there exists an open neighborhood
V ∋ x and some some T ∈ R≥0 such that V ⊂ BΦ(A) and such that for all y ∈ V ,
it follows that Φ(t, y) ∈ U for all t ≥ T . In particular, BΦ(A) is an open set.
Proof. See Appendix F.2.
While Lemma 2.1.7 doesn’t present an obstruction to global asymptotic sta-
bility (X is open by definition), the next result appeals to Lemma 2.1.7 to assert
that the basin of attraction of an equilibrium is contractible (see Definition B.13).
This result appears in [3] and in part of the proof of [2, Theorem 1].
Theorem 2.1.8. If x0 ∈ X is an asymptotically stable equilibrium, then BΦ(x0)
is contractible.
Proof. See Appendix F.3.
This result has far-reaching implications. As a necessary condition on the
topological structure of an attraction basin for an equilibrium point, this result
effectively rules out the possibility of global asymptotic stabilization by smooth
feedback for a wide variety of set point stabilization problems when the state space
is not contractible to a point. In particular, degree theory provides the following
21
result [96, Ex. 2.4.6] for manifolds (see Appendix C and Definitions C.30 and
C.34)
Lemma 2.1.9. Any compact manifold (without boundary) is not contractible.
Corollary 2.1.10. Any product space M1 ×M2, where M1 is a compact manifold
is not contractible.
Corollary 2.1.11. If M is a compact manifold, its tangent bundle, TM is not
contractible.
Lemma 2.1.9 and its corollaries rule out the possibility of achieving global
asymptotic stability by smooth time-invariant state feedback for compact mani-
folds, including Sn and SO(n). In particular, any mechanical system with a rota-
tional degree of freedom cannot be globally asymptotically stabilized by smooth
time-invariant state feedback. This particular obstruction to global asymptotic
stability was studied in detail in [2].
Theorem 2.1.8 can be further generalized in a useful manner. The next result
is from [1, Theorem 3.4] and [97, Theorem 2.2].
Theorem 2.1.12. If x0 ∈ X is an asymptotically stable equilibrium under Φ,
then BΦ(x0) is homeomorphic to Rn for some n ≥ 0.
As it turns out, Theorem 2.1.12 can be generalized even further for attractors
that have the structure of a submanifold. Not surprisingly, the following result
of [97, Theorem 3.4] states that attraction basins for compact submanifolds “look
like” a small open set about the attractor that captures its topological properties.
Theorem 2.1.13. If A is an asymptotically stable compact submanifold of M
under Φ : M × R → M , then BΦ(A) is diffeomorphic to an open tubular neigh-
borhood of A.
22
We refer the reader to Appendix C for a rigorous description of a tubular
neighborhood. Loosely speaking, one can think of the tubular neighborhood of a
submanifold A ⊂M as a region about A contained in M defined by extending A
in all directions normal to A, so long as those directions do not intersect.
Example 2.1.14. A tubular neighborhood of a finite set xii∈A ⊂ Rn is the set
x : |xi − x| < 12mini6=j |xi − xj|.
Example 2.1.15. A tubular neighborhood of Sn ⊂ R
n+1 is the set Rn+1 \ 0.
Theorem 2.1.13 and the examples show that when the state space does not
have the same topology as an asymptotically stable compact attractor, the basin
of attraction cannot possibly be the entire state space. This is a topological con-
straint due to the fact that the flow was assumed to be a continuous function,
which, paired with the identity and group axioms led to the flow being a homeo-
morphism.
One might wonder what would happen if the flow was allowed to be discontin-
uous, or perhaps, one attempted to use discontinuous feedback to stabilize a target
compact set. We investigate these issues in the context of differential inclusions
that satisfy certain regularity properties.
2.2 Differential Inclusions
In this section, we generalize the results of Section 2.1 to systems whose solu-
tions are not unique (the flow will be “upper semicontinuous” in the topology of
uniform convergence). In particular, we will investigate whether the topological
properties seen for attraction basins for continuous dynamical systems also apply
23
to the differential inclusion
x ∈ F (x) x ∈M (2.2)
where M is a manifold and for every x ∈ M , F (x) ⊂ TxM . By a slight abuse
of notation, we will write F : M TM . We will assume that (2.2) satisfies
the regularity properties assumed in [93, 98]. We now examine these regularity
properties as an extension of continuity for set-valued mappings.
One of the primary difficulties in dealing with set-valued mappings is the
notion of continuity [6, 99]. Consider the two equivalent notions of continuity for
functions in Theorem B.8: f−1(U) is open when U is open and f−1(V ) is closed
whenever V is closed. If one tries to define continuity of set-valued maps using
these definitions, they will no longer be equivalent [99, 100]. Instead, they lead
to separate notions of semicontinuity. In this dissertation, we will primarily be
concerned with a subset of these notions.
Definition 2.2.1. Let X and Y be topological spaces and let F : X Y be a
set-valued mapping. The map F is upper semicontinuous if for every x ∈ X and
every open neighborhood V ⊃ F (x), there exists an open neighborhood U ∋ x
such that F (U) ⊂ F (V ). The map F is said to be outer semicontinuous if its
graph is closed.
These definitions are closely related. We refer the reader to the commentary
in [100, Ch. 5] for a complete historical recollection of these definitions. We recall
the facts that are most relevant to this dissertation here.
Definition 2.2.2. Let X and Y be topological spaces. A set-valued map F :
X Y is locally bounded if for any compact set K ⊂ X, there exists a compact
24
set L ⊂ Y such that F (K) ⊂ L.
Theorem 2.2.3. Let X and Y be topological spaces. If a set-valued map F :
X Y is upper semicontinuous, then it is outer semicontinuous. Under the
additional assumption that F is locally bounded and has closed values, F is upper
semicontinuous if and only if F is outer semicontinuous.
Definition 2.2.4. A set-valued map F : M TM satisfies the basic conditions
on a subset S ⊂M if it is locally bounded on S, outer semicontinuous on S, and
for each x ∈ S, F (x) is nonempty, compact, and convex.
The basic assumptions arise from considering the robustness of stability. In
fact, in the theory of differential inclusions, the main conditions that provide for
the robustness of stability are the closedness of solution sets (limits of solutions
are solutions) and the upper semicontinuity of solutions with respect to initial con-
ditions and perturbations (every perturbed solution is close to some unperturbed
solution).
Considering solutions to (2.2) also includes considering generalized solutions
to discontinuous systems with right-hand sides that result in differential inclusions
that satisfy the basic conditions [98]. In particular, Krasovskii solutions examined
in [4] result in such differential inclusions, which are exactly the solutions that can
be induced by arbitrarily small amounts of measurement noise [4, 101]. Finally,
we remark that studying (2.2) allows us to determine whether some set A ⊂ Rn
can be robustly asymptotically stabilized for some nonlinear plant
x = f(x, u), (2.3)
where x ∈ M , f : M × U TM , and u ∈ U, is chosen to be some nonlinear
25
state feedback feedback κ : M → Rm that is locally bounded, but possibly not
continuous.
Definition 2.2.5. A function x : [0, T ] → M is a solution to (2.2) under F if it
is absolutely continuous and satisfies, for almost all t ∈ [0, T ],
x(t) ∈ F (x(t)).
A solution x : [0, T ) → M (0 < T ≤ ∞) is said to be maximal if it cannot be
extended. It is complete if it is defined on [0,∞).
Following [93], we will denote a solution to (2.2) under F starting at x ∈ M
as φF (x, t). The set of maximal solutions (respectively, solutions defined on [0, t])
to (2.2) under F starting from x ∈ M or in a set K ⊂ M is denoted as SF (x),
or SF (K) (respectively, S(x, t) or S(K, t)). An important property of solution
sets is that for fixed t, they are upper semicontinuous (in the topology of uniform
convergence) on M × [0, T ] when all solutions exist on [0, T ] and t ≤ T ( [8,
Theorem 7.1], [6, §2.2 Theorem 1], [7, Theorem 3.5.2]). We note that both [8,
Theorem 7.1] and [6, §2.2 Theorem 1] apply to M = Rn, but [7, Theorem 3.5.2]
is sufficiently general to treat the case of when M is a smooth manifold.
Theorem 2.2.6. If all solutions to (2.2) exist on [0, T ], then the map x 7→ SF (x, t)
is upper semicontinuous for each t ∈ [0, T ].
At times, we will assume that solutions are defined for all time, so we make
the following definition.
Definition 2.2.7. The differential inclusion (2.2) is forward complete if, for all
x ∈M , all solutions φ ∈ SF (x) are defined for all t ≥ 0. The differential inclusion
26
2.2 is backward complete if the differential inclusion is x ∈ −F (x) is forward
complete. The differential inclusion (2.2) is complete if it is both forward and
backward complete.
Analogous to the definition of a flow studied in the previous section, we note
the following property of solution sets to (2.2) under F . We define the following
set-valued version of the “flow” under F as
ΦF (x, t) = φ(x, t) : φ ∈ SF (x, t) =⋃
φ∈SF (x,t)
φ(x, t). (2.4)
Then, [8, Corollary 7.1] and [6, §2.2 Corollary 1] afford the following corollary to
Theorem 2.2.6.
Corollary 2.2.8. If all solutions to (2.2) exist on [0, T ], then the map x 7→
ΦF (x, t) is upper semicontinuous for each t ∈ [0, T ].
To complete the analogy, we have the following lemma, which states a semi-
group property of the map ΦF .
Lemma 2.2.9. Suppose that (2.2) is forward complete. Then, for x ∈ M and
t1, t2 ≥ 0, the set-valued flow ΦF under F satisfies
ΦF (x, 0) = x (2.5)
ΦF (ΦF (x, t1), t2) = ΦF (x, t1 + t2) (2.6)
and ΦF is upper semicontinuous on Rn × [0,∞).
Proof. See Appendix F.4.
27
Since solutions to (2.2) under F may not be unique, we will slightly compen-
sate our definitions of stability, attractivity, and the basin of attraction for the
differential inclusion (2.2), though they are mostly identical to our previous defi-
nitions. In particular, we will enforce stability and attractivity to be uniform over
the solution set.
Definition 2.2.10. A set A ⊂ M is stable under F if for every neighborhood
Uǫ ⊃ A, there exists a neighborhood Uδ ⊃ A such that ΦF (Uδ, t) ⊂ Uǫ for all
t ≥ 0.
Definition 2.2.11. A set A ⊂M is attractive under F from B if for every x ∈ B
and every open set U ⊃ A, there exists T ≥ 0 such that ΦF (x, t) ⊂ U for all
t ≥ T . The basin of attraction of A under F is the union of all sets from which
A is attractive, denoted as BF (A).
Definition 2.2.12. A set A ⊂M is asymptotically stable under F if it is stable
and attractive from an open set containing A.
When considering asymptotic stability of a compact attractor, it is often useful
to define a measure of closeness to the attractor on some open neighborhood.
Definition 2.2.13. Given a compact subset A ⊂ M and an open neighborhood
U of A, a continuous function ω : U → R≥0 is a proper indicator for A on U if
ω(x) = 0 if and only if x ∈ A, and, when ∂U 6= ∅, limx→∂U
ω(x) = ∞ and otherwise,
for each compact set K ⊂ R≥0, the set x ∈M : ω(x) ∈ K is compact.
Definition 2.2.14. Let A ⊂ Rn be a compact subset, let U be an open neigh-
borhood of A, and let ω : U → R≥0 be a proper indicator for A on U . A function
V : U → R≥0 is a smooth Lyapunov function for A on U if there exist class-K∞
28
functions αi, i = 1, 2, such that for all x ∈ U ,
α1(ω(x)) ≤ V (x) ≤ α2(ω(x))
and
maxw∈F (x)
〈∇V (x), w〉 ≤ −V (x).
Now, we combine some primary results of [93] on the existence of Lyapunov
functions to meet our needs. The following lemma is [93, Proposition 3].
Lemma 2.2.15. Suppose that F : Rn
Rn satisfies the basic conditions and that
A ⊂ Rn is compact. Then, the basin of attraction of A under F is open. That is,
BF (A) is an open set.
Theorem 2.2.16. Let F : Rn
Rn satisfy the basic conditions and suppose
that A ⊂ Rn is compact and asymptotically stable. Then, there exists a smooth
Lyapunov function for A on BF (A).
Proof. First, we let ω : BF (A) → R≥0 be a proper indicator for A on BF (A).
Such a proper indicator exists because A was assumed to be compact and BF (A)
is open by Lemma 2.2.15. Since A was assumed to be asymptotically stable,
this implies that the differential inclusion is “KL-stable with respect to (ω, ω) on
BF (A)” (see [93, Definition 6] and apply [93, Proposition 3]). Now, this implies
that the differential inclusion (2.2) is “backward completable by ω-normalization”
( [93, Definition 9]). Finally, by [93, Theorem 3], we have the desired result.
Theorem 2.2.16 provides a very useful corollary that we state here as a theorem.
In particular, Theorem 2.2.16 implies that there exists a flow on the basin of
29
attraction of a compact attractor under a set-valued mapping that satisfies the
basic conditions.
Theorem 2.2.17. Let F : Rn
Rn satisfy the basic conditions and let A be
an asymptotically stable compact set under F . Then, there exists a flow Φ :
BF (A) × R → BF (A) such that A is globally asymptotically stable under Φ.
Proof. By Theorem 2.2.16, there exists a smooth Lyapunov function V : BF (A) →
Rn for A on BF (A). We construct a flow on BF (A) with the desired properties
as follows.
Consider the differential equation
x = g(x) :=−∇V (x)
1 + |∇V (x)|2 . (2.7)
Since V is smooth, it follows that the solutions to (2.7) are unique, and continu-
ously depend on x ∈ BF (A). Now, consider the Lyapunov function V : BF (A) →
R≥0. We see that
〈∇V (x), g(x)〉 = −|∇V (x)|2/(1 + |∇V (x)|2),
which is negative for all x ∈ BF (A) \ A, so A is asymptotically stable with
basin of attraction BF (A). Moreover, this establishes that solutions to (2.7) are
forward complete, since the compact sub-level sets of V are invariant. Finally,
since 0 ≤ w/(1 + w) < 1 for any w ∈ R≥0, it follows that
〈∇V (x),−g(x)〉 = |∇V (x)|2/(1 + |∇V (x)|2) ≤ 1.
Since V (x) → ∞ if an only if x → ∂BF (A), this implies that (2.7) is backward
30
complete. This yields the solution set to (2.7) as a flow on B, with A a globally
asymptotically stable set (when the state space is B).
We now extend Theorem 2.2.17 to the case when M is a smooth manifold. To
accomplish this task, we invoke a recent converse Lyapunov theorem for hybrid
systems in [102], as it allows for the state to evolve within a relatively closed
constraint set in Rn.
Theorem 2.2.18. Let M be an embedded submanifold of Rn, let F : M TM
satisfy the basic conditions, and let A be an asymptotically stable compact set
under F . Then, there exists a flow Φ : BF (A) × R → BF (A) such that A is
globally asymptotically stable under Φ.
Proof. Since M is an embedded closed submanifold of Rn, we can construct the
following hybrid system.
HF =
x ∈ F (x) x ∈M
x+ = x x ∈ ∅.(2.8)
Since the jump set is empty, it is impossible for the system to jump. Therefore,
this hybrid system has only solutions starting from M that remain within M
for their maximal intervals of existence. In fact, it is easy to identify a one-to-
one correspondence between solutions to the differential inclusion x ∈ F (x) and
solutions to the hybrid system H. This implies that when A is asymptotically
stable under F with basin of attraction BF (A), the set B = BF (A) ∪ (Rn \M)
is the basin of attraction for A for solutions to H, as defined in [102]. Also, it
was shown in [102, Lemma 7.12] that B ⊂ Rn is open. With this said, we call
upon [102, Theorem 3.14] to note the existence of a smooth Lyapunov function
31
V : B → R≥0 and class-K∞ functions α1, α2 such that
α(ω(x)) ≤ V (x) ≤ α2(ω(x)) ∀x ∈ B
maxw∈F (x)
〈∇V (x), w〉 ≤ −V (x) ∀x ∈ B,
where ω : B → R≥0 is a proper indicator for A on B (since B is open). Now, since
V is smooth on B, which is an open neighborhood of BF (A) ⊂ B, the restriction
of V to BF (A) yields a smooth Lyapunov function for the original differential
inclusion x ∈ F (x). That is, V |BF (A) is a smooth function whose Lie derivative
with respect to F is negative, so long as x ∈ BF (A)\A. But then, one can define
a smooth vector field on on BF (A) as the negative gradient of V |BF (A) and again,
normalize the magnitude of this vector field to yield a flow on BF (A) that renders
A asymptotically stable as in the proof of Theorem 2.2.17.
This theorem has immediate corollaries stemming from the results of the pre-
vious chapter.
Corollary 2.2.19. Let F : M TM satisfy the basic conditions and let A ⊂M
be compact and asymptotically stable under F . If A is a singleton, then BF (A) is
homeomorphic to Rn and contractible. If A is a submanifold of M , then BF (A)
is homeomorphic to an open tubular neighborhood of A.
Proof. By Theorem 2.2.17, there exists a flow Φ : BF (A) × R → BF (A). Then,
Theorems 2.1.8, 2.1.12, and 2.1.13 provide the results.
This result gives a necessary condition on the topological properties of attrac-
tors for differential inclusions that satisfy the basic conditions. This allows us to
32
decide whether a given control objective, stated in terms of robustly and globally
asymptotically stabilizing a compact set, is possible. Certainly, when the state
space is not homeomorphic to an open tubular neighborhood of the given compact
set, it is impossible to robustly and globally stabilize this set with a memoryless,
even discontinuous, state-feedback control law. Such troublesome control objec-
tives include stabilizing a disconnected set of points in Rn, stabilizing a point on
Sn or SO(n) (or their tangent bundles), or stabilizing a set diffeomorphic to S
1
within SO(3). The latter example corresponds to reduced attitude stabilization of
a rigid body.
An interesting observation from these results is that relaxing control laws to
be time-varying and periodic does not improve attractivity properties for a control
objective that is topologically incompatible with the state space. This is because
we can write such a system as
x ∈ F (x, ξ)
ξ = Jξ
(x, ξ) ∈M × S
1, (2.9)
where J = [ 0 −11 0 ]. Since ξ is confined to endlessly rotate around S
1, any asymp-
totically stable compact attractor for (2.9) must be written as A× S1. Hence, if
A is not topologically compatible with M , robust global asymptotic stability of
A× S1 is not possible.
33
Chapter 3
Hybrid Control with Synergistic
Potential Functions
In this chapter, we will recall results from differential topology and Morse
theory that examine the topology of a manifold through a scalar-valued function
defined on the manifold and its critical points (the points where its gradient van-
ishes). We will find that many manifolds are intrinsically problematic from the
control point of view in the sense that any scalar-valued function defined on the
manifold is guaranteed to have a multiple critical points. When a control strategy
is based upon descending a single smooth potential function, it can easily get
stuck at its critical points. This creates the need to relax our control schemes and
consider discontinuous or hybrid feedback.
The hybrid control schemes presented in this chapter, for S1, S
2, and SO(3) are
based upon using control laws derived from a family of smooth potential functions
and a strategy to switch between them when necessary. The basic intuition behind
this scheme is that when the system nears a critical point of one potential function,
34
there is another potential function and its corresponding control law in our family
to which we can switch. In this way, the potential functions work as a synergistic
unit, providing for global asymptotic stability of a desired system configuration
in the face of measurement noise.
3.1 Background
Our study of potential-function-based control has a long history. In this sec-
tion, we will recall previous results concerning the relationship between functions,
their level sets, their critical points, and the topology of their domain. In what
follows, given a smooth manifold M and a function f : M → R, the differential
of f is denoted df , which is defined rigorously in Appendix C. The set of critical
points of f on M is
Crit f = x ∈M : df = 0. (3.1)
The number of critical points of a smooth function f defined on a manifold M is
the cardinality of the set of critical points, denoted # Crit f .
3.1.1 The Lusternik-Schnirelmann Category
In 1934, L. Lusternik and L. Schnirelmann discovered a lower bound for the
number of critical points of a smooth function on a manifold M . The lower bound
is the minimal number of contractible sets needed to cover M .
Definition 3.1.1. Given a manifold M , the Lusternik-Schnirelmann category of
M , denoted LS(M), is defined as the minimal number of contractible (in M) sets
necessary to cover M .
35
With this definition, the theorem of [61] follows (see also, the recent text [103]).
Theorem 3.1.2. Let M be a paracompact Riemannian manifold and let f : M →
R be a C2 function that is bounded below. Then,
# Crit f ≥ LS(M). (3.2)
As a simple example, corresponding to the the situation in Fig. 1.1, LS(Sn) =
2. This is easy to see, as the set Sn \ p is contractible for any p ∈ S
n. Pick
any two points p1, p2 ∈ Sn such that p1 6= p2 to construct two contractible sets
that cover Sn. As a direct consequence of Lemma 2.1.9 (no boundaryless compact
manifold is contractible), we have the following obvious corollary.
Corollary 3.1.3. Let M be a boundaryless compact manifold and f : M → R a
smooth function. Then
# Crit f ≥ LS(M) ≥ 2. (3.3)
A typical example of Theorem 3.1.2 is found on the torus, T2 = S
1×S1, where
LS(T2) = 3 (see [103, Example 1.24], [104, Example 1]).
Example 3.1.4. Consider the function G : R2/Z2 → R defined as
f(x, y) = sin(πx) sin(πy) sin(π(x+ y)). (3.4)
Here, one can define T2 = R
2/Z2, or the set [0, 1] × [0, 1] with opposite edges
identified. As noted in [103, Exercise 1.4], this function has exactly 3 critical
points, at (0, 0) (identified with all corners of the unit square), (1/3, 1/3), and
(2/3, 2/3).
36
Due to the broad generality of Lusternik and Schnirelmann’s result, the lower
bound (3.2) can sometimes be quite dull for functions that are assumed to have
more structure.
3.1.2 Basic Results from Morse Theory
In this section, we recall some basic results of Morse theory, stemming from
the monograph [65]. In what follows, if (y1, . . . , yn) are local coordinates of M
centered at x ∈ M , the Hessian matrix of f at x ∈ M is the matrix of partial
derivatives defined as
[Hfx]i,j =∂2f
∂yi∂yj. (3.5)
We note that the Hessian depends on the choice of local coordinates; however, its
rank and the number of negative eigenvalues of Hfx is invariant with respect to
the choice of local coordinates.
Definition 3.1.5. Let M be a smooth compact manifold, let f : M → R be
a smooth function, and let x ∈ Crit f . If Hfx has full rank, then the critical
point x is said to be nondegenerate. The index of x (relative to f) is the number
of negative eigenvalues of Hfx, denoted as χ(x). If, for every x ∈ Crit f , x is
nondegenerate, f is said to be a Morse function.
Morse functions are quite generic. In fact, the set of Morse functions is dense
in the set of smooth functions on a compact manifold [105]. That is, there is
always a Morse function in the vicinity of a given differentiable function. For a
Morse function, it is possible to improve the lower bound on the number of critical
points and obtain additional information about their nature. In this direction, we
37
introduce the Morse polynomial,
Mf (t) =∑
x∈Crit f
tχ(x). (3.6)
As noted in [106], the sum is finite, as the nondegeneracy of each x ∈ Crit f
and the fact that M is compact implies this property. Further, this polynomial
describes the behavior of f near its critical points and Morse showed in [65] that
the homology of M provides a lower bound for Mf (t). That is, let
PM(t,K) =∞∑
k=0
tkβk(M,K) (3.7)
be the Poincare series (sometimes, polynomial) of M with the homology taken
relative to a coefficient field K. The number βk(M,K) is the dimension of the
kth homology group Hk(M,K) and these numbers are the often known as the
Betti numbers (with respect to K) (see [107], for example). For an n-dimensional
manifold, the Betti number sequence is β0(M,K), β1(M,K), . . . , βn(M,K). When
the homology (and the Poincare series) is independent of K, we may remove this
argument without confusion. A useful relationship for product spaces follows from
the Kunneth theorem [107], which implies that
PM×N(t,K) = PM(t,K)PN(t,K). (3.8)
With this notation in place, we have the so-called Morse inequalities.
Theorem 3.1.6. Let M be a smooth compact manifold and let f : M → R be a
smooth Morse function. Then, there exists a polynomial Qf (t,K) = q0 + q1t+ · · ·
38
with nonnegative coefficients such that
Mf (t) − PM(t,K) = (1 + t)Qf (t,K). (3.9)
Corollary 3.1.7. Let M be a smooth compact manifold and let f : M → R be a
smooth Morse function. Then, it follows that
#x ∈ Crit f : χ(x) = k ≥ βk(M,K) (3.10)
and in particular,
# Crit f ≥∞∑
k=0
βk(M,K), (3.11)
for any coefficient field, K.
The relationship in (3.9) essentially identifies two types of critical points: those
due to the manifold topology, and those due to the function f . Indeed, setting
t = 1 in (3.9) implies that for any Morse function f on a compact manifold
M , we have # Crit f = B + 2Q, where B =∑
k βk and Q is some nonnegative
integer. The inequality (3.9) suggests that B cannot be changed, while the number
Q is somehow under our control by choice of f . It’s worth noting that this
lower bound sometimes depends on the coefficient field chosen and sometimes
it does not–this depends on whether or not the manifold has torsion [108, 109].
When a Morse function has the property that its Morse polynomial is equal to
the Poincare polynomial for some coefficient field, it achieves the critical point
structure mandated by the topology of the manifold without extraneous critical
behavior. These functions are quite special and we assign a special name for them.
39
Definition 3.1.8. Let M be a compact manifold. A Morse function f : M → R
is said to be K-perfect if Mf (t) = PM(t,K), for some coefficient field K and it is
said to be perfect if it is K-perfect for some coefficient field K.
Finally, Corollary 3.1.7 states that the number of critical points of index k
is lower bounded by the kth Betti number, and that the total number of critical
points of a Morse function is bounded below by the sum of the Betti numbers. As
the following examples illustrate, these bounds can be quite sharp.
Example 3.1.9. Let Sn be the n-dimensional sphere embedded in R
n+1 with
coordinates (x1, . . . , xn+1). The manifold Sn has Poincare polynomial PSn = 1+tn.
The height function defined as
f(x1, . . . , xn+1) = 1 − x1 = 1 − e⊤1 x (3.12)
has two critical points: a global maximizer at x = −e1 with index n and a global
minimizer at x = e1 with index 0. Recall that LS(Sn) = 2, so this function achieves
the minimal amount of critical points possible. Moreover, we have PSn(t) =
1 + tn = Mf (t) and Qf (t) = 0, so that (3.12) is a perfect Morse function.
Example 3.1.10. Consider again the torus, T2 = S
1 × S1 (again thought of the
set [0, 1] × [0, 1] with opposite edges identified). The Betti number sequence for
the torus is 1, 2, 1, or PT2(t) = 1 + 2t+ t2. Consider the function
f(x, y) = cos(2πx) + cos(2πy). (3.13)
It has exactly four critical points: a global maximum with an index of 2 at (0, 0)
(identified with all for corners of the unit square), a global minimum with an index
40
of 0 at (1/2, 1/2) and two saddle points each with index 1 at (1/2, 0) ≃ (1/2, 1)
and (0, 1/2) ≃ (1, 1/2). This implies that Mf (t) = PT2(t) and Qf (t) = 0, making
(3.13) a perfect Morse function. On the other hand, the function (3.4) is not a
Morse function, so the inequality (3.9) does not apply. Recall that LS(T2) = 3;
however, the function (3.13) has four critical points. In this case, the Morse
inequalities provide a sharp bound on the number of critical points, while the
Lusternik-Schnirelmann category predicts one less. As the next example shows,
this discrepancy increases when a higher-dimensional torus is under consideration.
Example 3.1.11. Let the set Tn be defined as
Tn = S
1 × · · · × S1
︸ ︷︷ ︸n times
. (3.14)
One can show that LS(Tn) = n+ 1; however, it follows from (3.8) that PTn(t) =
(1 + t)n, so that the Betti number sequence for Tn is the sequence of binomial
coefficients and their sum is clearly 2n. If coordinates are given as (x1, . . . , xn) ∈
Rn/Zn, then the function
f(x) =n∑
i=1
cos(2πxi) (3.15)
has Morse polynomial Mf (t) = P(t) so that Qf (t) = 0, making (3.15) a perfect
Morse function. Note that the Lusternik-Schnirelmann category becomes woefully
inadequate at estimating the number of critical points for Morse functions on Tn
as n increases.
Example 3.1.12. Consider the special orthogonal group, SO(n) = X ∈ Rn×n :
XX⊤ = X⊤X = I, detX = 1. From [109], we have that PSO(2n+1)(t,Z) =
(1+ t3)(1+ t7) · · · (1+ t4n−1). This would indicate that the Betti number sequence
for SO(3) is 1, 0, 0, 1, but LS(SO(3)) = 4 [63]. In contrast, the same reference
41
n 2 3 4 5LS(SO(n)) 2 4 5 9∑∞
k=0 βk(SO(n),Z mod 2) 2 4 8 16
Table 3.1. Comparison of the Lusternik-Schnirelmann category of SO(n) for n ∈2, 3, 4, 5, as given by [63], with the sum of the Betti numbers for the coefficientfield K = Z mod 2.
[109] gives PSO(n)(t,Z mod 2) = (1 + t)(1 + t2) · · · (1 + tn−1), yielding the Betti
number sequence (with respect to the integers, mod 2), as 1, 1, 1, 1 for SO(3) and
∑∞k=0 βk(SO(n),Z mod 2) = 2n−1. The function
f(X) = trace(A(I −X)), (3.16)
where A is a diagonal matrix with distinct positive entries satisfies Mf (t) =
PSO(n)(t,Z mod 2) and Qf (t) = 0, making (3.16) a perfect Morse function. It
was first studied in the context of SO(3) in [110], then later for SO(n) in [111].
We will revisit this function later. Finally, we compare LS(SO(n)) (calculated
in [63]), for n ∈ 2, 3, 4, 5 with∑∞
k=0 βk(SO(n),Z mod 2) in Table 3.1. As in the
case of Tn, the number of critical points predicted by the Lusternik-Schnirelmann
category appears to be diverging from the sum of the Betti numbers, although,
to the best of the author’s knowledge, LS(SO(n)) for n > 5 is currently an open
problem.
42
3.2 Synergistic Potential Functions and Hybrid
Control
From Corollary 3.1.3, we know that for compact boundaryless manifolds, the
minimal number of critical points for any function defined on the manifold is two.
This creates a fundamental problem for control strategies based on descending an
artificial potential function, as the critical points become equilibria that may be
stable or unstable. In this section, we suggest using a family of potential functions
that satisfy a property on their critical points for control. This property, which
we term synergism, asks that at some critical point of some potential function in
the family, there exists another potential function which has a lower value. To
rigorously define this notion, we first state what we mean by a potential function.
Definition 3.2.1. Given a manifold M and a point r ∈ M , a continuously dif-
ferentiable function V : M → R≥0 is a potential function on M with respect to r
if V (x) ≥ 0 for all x ∈ M , V (x) = 0 if and only if x = r, for every ℓ ∈ R≥0 the
set x ∈ M : V (x) ≤ ℓ is compact, and there exists an open neighborhood U of
r such that U ∩ CritV = r. The class of potential functions on M with respect
to r is denoted Pr(M).
When there is no confusion about the reference point r or the manifold M
under discussion, we often drop these suffixes and extra notation.
Note that our definition of a potential function is quite generic, in the sense
that we do not require potential functions to be Morse function as in [11, 13, 18];
however, our construction of families of potential functions with the property of
synergism will often be made much simpler if the potential functions are assumed
43
to be Morse functions. This is because the effort of determining whether a given
family of potential functions is synergistic is made simpler when the number of
critical points is known to be finite.
Definition 3.2.2. Let M be a manifold, r ∈M , N ∈ 1, 2, . . . , Q = 1, . . . , N,
and define µ : Pr(M)N such that for each family of potential functions on M
with respect to r V = Vqq∈Q,
µ(V ) = supq∈Q
x∈CritVq\r
minp∈Q
Vp(x) − Vq(x). (3.17)
The the family V is synergistic if there exists δ > 0 such that
µ(V ) < −δ, (3.18)
in which case, we say that V is synergistic with gap exceeding δ.
Lemma 3.2.3. Let M be a manifold, let Q = 1, . . . , N, and let V = Vqq∈Qbe a family of potential functions on M with respect to r ∈M . If the family V is
synergistic with gap exceeding δ, then for every q ∈ Q and every x ∈ CritVq \ r,
there exists p ∈ Q such that Vp(x) < Vq(x) − δ. Conversely, if for every q ∈ Q
and every x ∈ CritVq \ r there exists p ∈ Q such that Vp(x) < Vq(x) − δ, then
for every ǫ ∈ (0, δ), V is synergistic with gap exceeding δ − ǫ. Finally, if
supq∈Q
x∈CritVq\r
minp∈Q
Vp(x) − Vq(x) = maxq∈Q
x∈CritVq\r
minp∈Q
Vp(x) − Vq(x), (3.19)
then V is synergistic if and only if for every q ∈ Q and every x ∈ CritVq \ r,
there exists p ∈ Q such that Vp(x) < Vq(x) − δ.
44
Proof. Suppose that V with gap exceeding δ. By definition, µ(V ) < −δ < 0,
which, from (3.17), directly implies that for for every q ∈ Q and x ∈ CritVq \ r,
there exists p ∈ Q such that Vp(x) < Vq(x) − δ. If this was not the case, then
there would exist q ∈ Q and x ∈ CritVq \ r, such that Vp(x) ≥ Vq(x) − δ for
every p ∈ Q, which implies that µ(V ) = 0. This is a contradiction.
Now, suppose that for every q ∈ Q and x ∈ CritVq \ r that there exists
p ∈ Q such that Vp(x) < Vq(x) − δ. This implies that for every q ∈ Q and every
x ∈ CritVq \ r that minp∈Q Vp(x) − Vq(x) < −δ. If (3.19) is satisfied, then
this assumption clearly implies that V is synergistic with gap exceeding delta. If
(3.19) is not satisfied, it follows that for every ǫ ∈ (0, δ), µ(V ) ≤ −δ < −δ+ǫ < 0,
or that V is synergistic with gap exceeding δ − ǫ.
When one finds a synergistic family of potential functions, a hybrid kinematic
controller is readily available for the system x = v that provides global asymptotic
stability that is robust to measurement noise. Given a family of potential functions
V = Vqq∈Q, we define the function ρ : M → R≥0 as the minimum of Vq over Q
and its argmin over Q (possibly set-valued), g : M Q as
ρ(x) = minq∈Q
Vq(x) (3.20a)
g(x) = q ∈ Q : Vq(x) = ρ(x). (3.20b)
Then, we define the sets C,D ⊂M ×Q as
C = (x, q) ∈M ×Q : ρ(x) − Vq(x) ≥ −δ (3.20c)
D = (x, q) ∈M ×Q : ρ(x) − Vq(x) ≤ −δ. (3.20d)
45
Here, inclusion in C or D indicates whether or not there exists another choice
of potential function that is lower than the current potential function choice by
at least δ. Note that C ∪ D = M × Q. Now, with these definitions, the hybrid
control structure is given as follows. We note that the gradient symbol grad is
defined rigorously in Appendix C.
Definition 3.2.4. Let Q = 1, . . . , N. Given V = Vqq∈Q, a family of potential
functions on a Riemannian manifold (M,G) with respect to r ∈M and a positive
number δ > 0, the pair H = (V , δ) is said to generate the dynamic system
q = 0 (u, q) ∈ C
q+ ∈ g(u) (u, q) ∈ D
(3.21a)
with input u ∈M and output
y = −gradVq(u). (3.21b)
The dynamic system (3.21) is the hybrid kinematic controller generated by H .
Since x ∈ M always evolves continuously according to x = v and does not
undergo jumps, we define the closed-loop system with state (x, q) ∈ M × Q by
connecting the system x = v in feedback with the hybrid kinematic controller gen-
erated by H defined in (3.21). That is, we set u = x and v = y = −gradVq(x).
Then, the closed-loop system takes the form
x = −gradVq(x)
q = 0︸ ︷︷ ︸
(x, q) ∈ C
x+ = x
q+ ∈ g(x)︸ ︷︷ ︸(x, q) ∈ D.
(3.22)
46
The hybrid kinematic controller generated by H provides a simple strategy for
coordinating multiple control laws derived from multiple potential functions. The
variable q becomes a memory state that selects which control law to use, while the
control law is simply the negative gradient of V . The goal of the hybrid kinematic
controller generated by H is simple: to stabilize r ∈M . We can easily pose this
as a compact set stabilization problem in the extended state space, M × Q. In
this direction, the goal of the hybrid controller is to globally and asymptotically
stabilize the compact set
A = r ×Q. (3.23)
To make A globally attractive, the hybrid controller should guarantee that solu-
tions to the closed-loop system cannot get stuck at a critical point of any potential
function in V that is not r. To avoid getting stuck, the hybrid controller must
switch the current control law as it approaches the vicinity of a critical point (that
is not r) of the current potential function. That is, the set
X = (x, q) ∈M ×Q : x ∈ CritVq \ r (3.24)
should be wholly contained in D. The following lemma gives conditions for this
property.
Lemma 3.2.5. Let H = (V , δ) generate a hybrid kinematic controller. If the
family of potential functions V is synergistic with gap exceeding δ, then X∩C = ∅.
Conversely, if X ∩ C = ∅, then for every ǫ ∈ (0, δ), V is synergistic with gap
exceeding δ−ǫ. If (3.19) is satisfied, then X ∩C = ∅ if and only if V is synergistic
with gap exceeding δ.
Proof. Recalling that C = (x, q) : ρ(x) − Vq(x) ≤ −δ, it follows that C ∩ X is
47
empty if and only if, for every q ∈ Q and x ∈ CritVq \ r there exists p ∈ Q such
that Vp(x) < Vq(x) − δ. The result then follows from Lemma 3.2.3.
Theorem 3.2.6. Let Q = 1, . . . , N, let V = Vqq∈Q be a family of potential
functions on a Riemannian manifold (M,G) with respect to r, let δ > 0, and let
H = (V , δ). If V is synergistic with gap exceeding δ, then the set A = r × Q
is globally asymptotically stable for the closed-loop system (3.22). Conversely, if
A is globally asymptotically stable, for every ǫ ∈ (0, δ), V is synergistic with gap
exceeding δ − ǫ. If (3.19) is satisfied, then A is globally asymptotically stable for
(3.22) if and only if V is synergistic with gap exceeding δ.
Proof. Consider the Lyapunov function
V (x, q) = Vq(x).
Since each Vq ∈ V is a potential function on M with respect to r, it follows
that V (x, q) ≥ 0 for all (x, q) ∈ M × Q and V (x, q) = 0 if and only if x = r.
Moreover, since the sub-level sets of Vq are compact for every q ∈ Q, it follows
that the sub-level sets of V are also compact, being composed of the union of a
finite number of compact sets. Clearly, the change in V along flows is given as
V (x, q) = −〈gradVq(x),gradVq(x)〉. Hence, it follows that V (x, q) ≤ 0 for all
(x, q) ∈ M × Q and that V (x, q) = 0 if and only if x ∈ CritVq, or equivalently,
(x, q) ∈ A ∪ X . Note that by definition of a potential function, the set x ∈ M :
dVq(x) 6= 0 contains an open neighborhood of r. Furthermore, the change in
V (x, q) along jumps of the closed-loop system is bounded above as
V (x, g(x)) − V (x, q) = ρ(x) − Vq(x) ≤ −δ < 0.
48
Then, by [112, Theorem 7.6], the set A is stable (regardless of whether or not V
is synergistic with gap exceeding δ). Moreover, by [112, Theorem 4.7], it follows
that solutions must converge to the set A∪ (C ∩X ). The result now follows from
Lemma 3.2.5.
Remark. While it is not explicitly stated in Theorem 3.2.6, it is possible to make
statements regarding the robustness of stability for the hybrid kinematic con-
troller. This follows from the fact that controllers cannot be switched arbitrarily
fast. The requirement that there be some minimal amount of decrease in the value
of V over jumps means that after jumping once (after which, V (x, q) = ρ(x)), the
continuity of each Vq and ρ implies that another jump cannot happen immediately.
Making general statements about robustness to noise is difficult, as one has to
make sense of the inclusion x ∈ −gradVq(Bx(α)), where Bx(α) denotes an α ball
about x in some metric on M . To maintain invariance of M , one always requires
that x ∈ TxM , but one doesn’t necessarily have that gradVq(Bx(α)) ⊂ TxM ,
unless M = Rn. This requires comparing vectors of nearby tangent spaces, which
we do not attempt in this dissertation, although we note that the tools of parallel
transport seem promising for this task.
The particular situation of x = v, a fully-actuated kinematic system with-
out additional dynamics, is quite an idealized situation. However, we note that
this hybrid control method can be extended to fully-actuated simple mechanical
control systems in a differential geometric setting as in [13, 18]. As the author is
not an expert in these methods, the full generalization is not attempted in this
dissertation. Instead, we focus on developing synergistic potential functions and
the resulting hybrid control strategies for perhaps the most prominent manifolds
in engineering: S1, S
2, and SO(3), corresponding to planar rotations, spherical
49
orientation, and rigid-body attitude. In these situations, the hybrid kinematic
controller is extended to handle dynamics in various situations.
Certainly, the derivation of the hybrid control strategy proposed here is simple,
once one obtains a family of synergistic potential functions for the manifold and
reference point of interest. However, fair questions to ask are whether a syner-
gistic family of potential functions even exists, or what is the minimal number of
potential functions needed to make a synergistic family. Also, should a synergistic
family of potential functions exist, the task of finding them and computing the
synergy gap µ may be quite difficult. In order to find such a family, one must
compute each function’s critical points and ensure that there is another potential
function in the family with a lower value. We note that to invent potential func-
tions and completely characterize their critical behavior “from scratch” may be
quite difficult in many cases and instead, we consider the possibility of creating
new potential functions from old ones. The results in the next sections pursue this
idea, by applying a diffeomorphism that stretches the manifold of interest onto
itself while leaving the reference point fixed. As we will see, these diffeomorphisms
provide a way to create new potential functions and synergistic families of them.
We note that in Lemma 3.2.3, Lemma 3.2.5, and Theorem 3.2.6, the statements
were made easier when, for each potential function Vq in the family V = Vqq∈Q,
Vq attains its maximum over the set CritVq \r. This is true at least for compact
manifolds.
Lemma 3.2.7. Let M be a manifold, let Q = 1, . . . , N, and let V = Vqq∈Qbe a family of potential functions on M with respect to r ∈ M . If M is compact,
then (3.19) is satisfied.
50
Proof. Clearly, (3.19) is satisfied when CritVq \ r is compact for each q ∈ Q,
since the function Vq(x) := minp∈Q Vp(x) − Vq(x) is continuous for each q ∈ Q
and at x ∈ M . Clearly, CritVq is a closed set because dVq is continuous on
M . Furthermore, there exists an open set U ⊂ M such that CritVq ∩ U = r.
This implies that CritVq \ r is closed. Since closed subsets of compact sets are
compact [113, Theorem 26.2] and M was assumed to be compact, it follows that
CritVq \r is compact and that Vq attains its maximum on CritVq \r for each
q ∈ Q.
Finally, in this section, we have used the notation gradV , which is defined in
Definition C.41 in terms of a Riemannian metric. In the following sections, we will
work with the embedding of a manifold M in Rn where the Riemannian metric is
inherited from the natural inner product on Rn. In this situation, we will examine
the critical behavior of functions V : M → R. While we write the domain of
V as the embedded manifold M , the interpretation is that these functions are
defined on a small open neighborhood of M in Rn, allowing us to use the symbol
∇V , as the “regular” gradient of V in Rn. We note that such an assumption is
not restrictive, as a function V : M → Rn can be smoothly extended to a small
tubular neighborhood of M in a way that the value of V does not change in any
direction normal direction to the tangent space of M .
3.3 Control of Planar Rotations in S1
The control and analysis of planar rotations arise in many engineering applica-
tions, such as control of robotic manipulators [24,114], representation and control
of rigid body attitude by Euler angles [115–117], control of rigid bodies by momen-
51
tum wheels [118, 119], planar rigid bodies and autonomous vehicles [33, 120, 121],
gimbal pointing mechanisms [35–37], and pendulum systems [30,101,122]. Indeed,
many physical systems have a need for some type of orientation control, so that
the system or part of it is aligned in a desired fashion.
Control of planar rotational orientation is a nontrivial task, as the space of
planar rotations evolves on the compact manifold SO(2), which is diffeomorphic to
S1. As we examined in Chapter 2, this topological obstruction makes it impossible
to robustly and globally stabilize a desired equilibrium point in S1 using continuous
state feedback, memoryless discontinuous feedback, or even time-varying feedback.
In what follows, we apply the method proposed in Section 3.2 to control of planar
rotations.
3.3.1 Problem Statement and Notation
Recall that the unit circle and group of planar rotations are defined as
S1 = x ∈ R
2 : x⊤x = 1
SO(2) = R ∈ R2×2 : R⊤R = I, det(R) = 1,
respectively. These two sets are topologically equivalent under the following dif-
feomorphism. Define e1 = [1 0]⊤. Then, we can identify S1 with SO(2) by the
map R : S1 → SO(2), where, for each x = [x1 x2]
⊤ ∈ S1 and X ∈ SO(2),
R(x) =
x1 −x2
x2 x1
R−1(X) = Xe1. (3.25)
52
Note that R(e1) = I. Since S1 and SO(2) are topologically equivalent, we study
the point stabilization problem on S1. Additionally, we note the following group
properties over matrix multiplication between elements of SO(2) and S1. In fact,
a trivial calculation shows that for any x, y ∈ S1,
R(x)y = R(y)x ∈ S1 (3.26a)
R(x)R(y) = R (R(x)y) = R(y)R(x) ∈ SO(2). (3.26b)
Let so(2) = S ∈ R2×2 : S⊤ = −S denote the Lie algebra of SO(2) and define
S ∈ SO(2) ∩ so(2) as
S = R
0
1
=
0 −1
1 0
,
corresponding to a 90 rotation. Note that for any X ∈ so(2), there exists ω ∈ R
such that ωS = X. In this direction, we define the exponential map exp : so(2) →
SO(2) as
exp(ωS) =
cos(ω) − sin(ω)
sin(ω) cos(ω)
. (3.27)
Finally, suppose that x ∈ S1. Then, the kinematic equation for x, constrained
to move along the unit circle, is
x = ωSx =: f(x, ω) x ∈ S1, (3.28)
where f : S1 × R → so(2) and ω is the angular velocity. Solutions to (2.1) satisfy
x(t) = exp
(S
∫ t
0
ω(τ)dτ
)x(0).
53
It is easy to equate the stabilization task of an arbitrary point in S1 with the
stabilization of e1 by defining error coordinates with the group multiplication
rule. This is a general statement for Lie groups [11] and we will not pursue the
issue further.
From (3.28), the set of critical points takes on a special form. In particular,
consider any function V : S1 → R. Then it follows that V (x) = 〈∇V (x), f(x, ω)〉 =
ω 〈∇V (x), Sx〉. Hence, if 〈∇V (x), Sx〉 = 0, it follows that x = 0 for any ω ∈ R.
Hence, we can write
CritV = x ∈ S1 : 〈∇V (x), Sx〉 = 0. (3.29)
Since S corresponds to a rotation of 90, this has the usual interpretation that
the gradient of P is perpendicular to the tangent space of S1.
Perhaps, the most common and obvious potential function on S1 with respect
to e1 is the “height” function
P ∗(x) = 1 − e⊤1 x. (3.30)
We can easily calculate its gradient as ∇P ∗(x) = −e1. Clearly, we have 〈∇P ∗(x), Se1〉 =
〈±e1, Se1〉 = 0, hence CritP ∗ = ±e1.
3.3.2 Hybrid Control Structure
The equations of motion on S1 provide an explicit form for the gradient of a
potential function. In particular, we have that x = f(x, ω), where f(x, ω) maps an
angular velocity onto the tangent space of S1 at x. So, given a potential function
54
V , our control input can be reduced from −gradV (x) to the angular velocity ω.
In this section, we state a specialized version of Theorem 3.2.6 with an additional
statement regarding the robustness to measurement noise.
While the functions ρ and g and the sets C and D do not change from (3.20)
and nor do the dynamic equations of the logic state q in (3.21a), the output
changes from y = −gradVq(u) to y = −〈∇V (x), Sx〉. The controller and closed-
loop system subjected to measurement noise σ are given as follows.
Definition 3.3.1. Given V = Vqq∈Q, a family of potential functions on S1 with
respect to e1 ∈ S1 and δ > 0, the pair H = (V , δ) is said to generate the dynamic
system
q = 0 (u, q) ∈ C
q+ ∈ g(u) (u, q) ∈ D
(3.31a)
with input u ∈ S1 and output
y = κq(u) := −〈∇Vq(u), Su〉 . (3.31b)
The dynamic system (3.31) is the hybrid kinematic planar rotation controller gen-
erated by H .
We now construct the closed-loop system by connecting the system (3.28) in
feedback with the hybrid kinematic planar rotation controller generated by H
defined in (3.31). However, before completing this feedback interconnection, we
corrupt the measurements of x ∈ S1 with noise and introduce actuation error. In
particular, we set
u = eSǫ1x ω = κq(eSǫ1x) + ǫ2, (3.32)
55
where ǫ = (ǫ1, ǫ2) ∈ R2 and κq : S
1 → R was defined in (3.31b). The closed-loop
system takes the form
x = (κq(eSǫ1x) + ǫ2)Sx
q = 0︸ ︷︷ ︸
(eSǫ1x, q) ∈ C
x+ = x
q+ ∈ g(eSǫ1x)︸ ︷︷ ︸(eSǫ1x, q) ∈ D.
(3.33)
Theorem 3.3.2. Let H = (V , δ) generate a hybrid kinematic planar rotation
controller. If ǫ = 0, then, the set A = e1 × Q is globally asymptotically stable
for the closed-loop system (3.33) if and only if V is synergistic to degree δ.
Furthermore, for every η : S1 → R≥0 that is a proper indicator for e1 on S
1,
there exists a class-KL function β such that for every γ > 0, there exists α > 0
such that for every measurable ǫ : [0,∞) → αB, any solution (x, q) to (3.33)
satisfies
η(x(t, j)) ≤ β(η(x(0, 0)), t+ j) + γ ∀(t, j) ∈ domx.
Proof. The equivalence of global asymptotic stability of A = e1×Q and the fam-
ily V being synergistic to degree δ follows from Theorem 3.2.6 and Lemma 3.2.7.
The existence of β and the statement of robustness in terms of β follow from [77,
Theorem 6.6] and the fact that S1 is compact.
Remark. When a setM is compact and boundaryless (like Sn and SO(n)), a proper
indicator for a compact subset A ⊂ M is any continuous function η : M → R≥0
that is positive definite on M with respect to A, i.e., η(x) > 0 for all x ∈ M \ A
and η(x) = 0 for all x ∈ A.
56
3.3.3 Synergistic Potentials for S1 via Angular Warping
In order to create new potential functions on S1, we intend to “skew” S
1 by
applying a diffeomorphism, then apply a known potential function to the skewed
space. In this direction, we define T : S1 → S
1 as
T (x, k, P ) = exp(kP (x)S)x, (3.34)
where k ∈ R and P : S1 → R is differentiable and satisfies P (e1) = 0. In the
sequel, we let C 1r (M) be the set of continuously differentiable real-valued functions
on M that have a value of zero at r ∈M . That is,
C 1r (M) = P : M → R : dP exists everywhere , P (r) = 0. (3.35)
In context, given x ∈ S1, the transformation T applies an additional rotation to
x. The amount of rotation is controlled by k and P . By some abuse of notation,
we regard k and P as fixed parameters of the transformation, but may explicitly
include them in the argument list or drop them from the notation when convenient.
This transformation has several useful properties.
Theorem 3.3.3. Given k ∈ R P ∈ C 1e1
(S1), and V ∈ P, the transformation T
57
satisfies
T (e1) = e1 (3.36)
DT (x) = exp(kP (x)S)(I + kSx∇P (x)⊤
)(3.37)
det DT (x) = 1 + k 〈∇P (x), Sx〉 (3.38)
〈∇(V T )(x), Sx〉 = det DT (x) 〈∇V (T (x)), ST (x)〉 (3.39)
T (x) = det DT (x)ωST (x) (3.40)
and
CritV T = T −1(CritV ) (3.41)
when DT (x) 6= 0 for all x ∈ S1.
Proof. See Appendix F.5
Note that Theorem 3.3.3 gives us an explicit form for the control law in (3.31b).
Figure 3.1 provides an illustration of how T skews S1 onto itself. We note that
in Figure 3.1, the transformed points “bunch up” together in the 4th quadrant.
When the gain k is too high, it’s clear that nearby points may “pass” each other,
causing T to map possibly many points to one. Clearly, it is desirable to avoid
this.
When det DT (x) 6= 0 for all x ∈ S1, T is a local diffeomorphism of S
1 by the
inverse function theorem. Additionally, some special structure of T implies that
T is a global diffeomorphism, given that the absolute value of the gain k satisfies
a bound. We contain a guarantee of this property in the following theorem.
58
x1x1
x2
x2 0
0
0
0
1
1
1
1
−1
−1
−1
−1
Figure 3.1. Points in S1 under the transformation T , with k = 1/2 and P = P ∗,
where P ∗(x) = 1 − e⊤1 x. The plot on the left shows points in S
1 before transfor-mation by T . The plot on the right shows the same points after transformationby T .
Theorem 3.3.4. Let k ∈ R and let P ∈ C 1e1
(S1). If
|k| < 1
max‖∇P (x)‖ : x ∈ S1 , (3.42)
then T is a diffeomorphism of S1.
Proof. See Appendix F.6.
A simple consequence of Theorem 3.3.4 is that when V is a potential function,
so is V T .
Corollary 3.3.5. Let V ∈ P, let P ∈ C 1e1
(S1), and let k ∈ R satisfy (3.42).
Then, V T ∈ P.
Figure 3.2 shows the gradient descent behavior for the potential function P ∗
and P ∗T , with k = 1/2 and P = P ∗. Notice that at the critical points, the vector
field from the gradient descent vanishes. Also notice that we can easily construct
59
x1x1
x2
x2 0
0
0
0
1
1
1
1
−1
−1
−1
−1
Figure 3.2. Gradient descent of potential functions on S1. The plot on the left
shows the vectors corresponding to the gradient descent of P ∗. The plot on theright shows the vectors corresponding to the gradient descent of P ∗ T , where Tis defined with k = 1/2 as a gain and P ∗ as the “stretching” potential function.Critical points of each potential function are marked with circles.
two potential functions that do not share critical points by simply changing the
gain k.
We now conclude this section with an example showing how one can con-
struct a synergistic family of potential functions on S1 (and the associated globally
asymptotically stabilizing hybrid controller) using only a single, known, potential
function.
Example 3.3.6. Define V k1 (x) = P ∗(T (x, k, P ∗)), V k
2 (x) = P ∗(T (x,−k, P ∗)) and
the family V k = V k1 , V
k2 . This family of potential functions is synergistic to
degree δ for every 0 > −δ > µ(V k). It is not difficult to compute µ(V k) for every
k ∈ [0, 1), for which we provide a plot in Figure 3.3.
When the synergistic family V k is used to construct a hybrid controller for
stabilization on S1, the result is easy to visualize. Figure 3.4 provides such a
visualization. In this example, we have taken k = δ = 1/2, where µ(V k) has a
60
0 0.5 1−2
−1
0
k
µ(V
k)
Figure 3.3. Plot of µ(V k) for the family of potential functions in Example 3.3.6.A choice of 0 > −δ > µ(V k) provides a synergistic family of potential functionson S
1 with respect to e1.
computed value of approximately −1.0999, so clearly, µ(V k) < −δ < 0. Also,
the flow set for this example could be written as follows: C = C1 ∪ C2, where
C1 = x : V k2 (x) − V k
1 (x) ≥ −δ and C2 = x : V k1 (x) − V k
2 (x) ≥ −δ. That is,
Ci is the region where control i is applied. Figure 3.4 shows the resulting flows
for these two control laws restricted to their respective flow sets. It is instructive
to compare Figure 3.4 with the plot on the right of Figure 3.2, which shows the
whole flow for one of these control laws. Note that the flow sets are automatically
designed to restrict the flow to a region devoid of any critical points other than
e1.
3.4 Control of Spherical Orientation in S2
The control and analysis of spherical orientation arises in many engineering
applications, including control of robotic manipulators [24, 114], gimbal pointing
mechanisms [36], “reduced attitude” (or “spin-axis”) stabilization of rigid bodies
[14, 123,124] including the “3D pendulum” [32,125–128] and spherical pendulum
61
x1x1x1
x2
x2
x2 0
0
0
0
0
0
1
1
1
1
1
1
−1
−1
−1
−1
−1
−1
δ = 0 δ = 1/2 δ = 1
Figure 3.4. Flows induced by potential functions on S1 restricted to their domains
of application by the hybrid controller shown for 3 values of δ. The control law“inside” the circle corresponds to k = 1/2 restricted to the set C1 = x : V k
2 (x)−V k
1 (x) ≥ −δ and the control “outside” the circle corresponds to k = −1/2restricted to the set C2 = x : V k
1 (x) − V k2 (x) ≥ −δ Note that δ = 0 leaves
a discontinuous control law. Increasing δ enlarges the domain on which eachcontroller applies, making more “overlap” areas.
systems [29]. Indeed, many physical systems have a need for some type of spherical
orientation control, so that the system or part of it is aligned in a desired fashion.
Control of spherical orientation is a nontrivial task, as systems with spherical
degrees of freedom evolve on a compact manifold, S2. In this section, we apply
the hybrid control method of Section 3.2 to achieve global asymptotic stability
of a desired spherical orientation. This problem has been approached in [14] and
indirectly in [126,127]. In [14,126], a smooth control law asymptotically stabilizes
a desired spherical orientation from all initial conditions except for the antipode
of the desired orientation. Likewise, the design in [127] uses an unbounded non-
smooth control law that is defined everywhere except the antipode of the desired
spherical orientation. Our approach closely resembles that of [14,126], except that
we will employ a family of synergistic potential functions in a hybrid feedback.
62
3.4.1 Problem Statement and Notation
Recall that the unit 2-sphere and the special orthogonal group of order three
are defined as
S2 = x ∈ R
3 : x⊤x = 1
SO(3) = R ∈ R3×3 : R⊤R = RR⊤ = I, det(R) = 1,
respectively. Given two vectors y, z ∈ R3, their cross product can be represented
by a matrix multiplication: y × z = [y]× z, where
[y]× =
0 −y3 y2
y3 0 −y1
−y2 y1 0
(3.43)
constitutes an isomorphism between R3 and
so(3) = S ∈ R3×3 : S⊤ = −S, (3.44)
the Lie algebra of SO(3). In the sequel, we let e1, e2, e3 denote the canonical
basis for R3.
Since multiplying an element x ∈ R3 by an element of R ∈ SO(3) leaves the
norm of x invariant, we note that for any x ∈ S2 and any R ∈ SO(3), it follows
that Rx ∈ S2. Elements of SO(3) are often parametrized by various means. In
particular, by Euler’s theorem, we can describe an element of SO(3) as a rotation
θ ∈ R about an axis u ∈ S2. This description can be expressed through the
63
so-called (Euler) Rodrigues formula, R : R × S2 → SO(3), defined as
R(θ, u) = I + sin θ [u]× + (1 − cos θ) [u]2× . (3.45)
It is helpful to note that for every θ ∈ R and u ∈ S2, R(θ, u) = eθ[u]× , where for
some A ∈ Rn×n, eA denotes the matrix exponential of A (see Appendix E).
Now, given the state x ∈ S2, the kinematic equation for x, constrained to move
about the unit sphere, is
x = [x]× ω =: f(x, ω) x ∈ S2, (3.46)
where ω : R → R3 is the angular velocity. Because S
2 is not a Lie group, it is
not possible to equate the stabilization task of an arbitrary point in S2 with the
stabilization of an “identity element” by defining error coordinates.
We note that, from (3.46), the set of critical points takes on a special form.
In particular, consider any function V : S2 → R. Then it follows that V (x) =
〈∇V (x), f(x, ω〉 =⟨[x]⊤× ∇V (x), ω
⟩. Hence, if [x]⊤× ∇P (x) = 0, it follows that
x = 0 for any ω ∈ R. Hence, we can write
CritV = x ∈ S2 : [x]×∇V (x) = 0. (3.47)
As before in the case of S2, this definition of a critical set has the usual interpre-
tation that the gradient of V is perpendicular to the tangent space of S2.
As in the case of S1, perhaps the most common and obvious potential function
64
on S2 with respect to some x ∈ S
2 is the “height” function
P ∗(x) = 1 − x⊤x. (3.48)
We can easily calculate its gradient as ∇P ∗(x) = −x. By the properties of the
vector cross product (namely that, [x]× y = 0 if and only if y = ax, where a is a
scalar), it obviously follows that CritP ∗ = ±x.
3.4.2 Hybrid Control Structure
As was the case with S1, the equations of motion on S
2 provide an explicit form
for the gradient of a potential function and we can reduce our hybrid controller’s
output from −gradV (x) to a desired angular velocity. As in the previous section,
we state a specialized version of Theorem 3.2.6 with an additional statement
regarding the robustness to measurement noise for control on S2.
Again, the functions ρ and g and the sets C and D do not change from (3.20)
and nor does the dynamics of the logic state q in (3.21a). Only the output changes
from y = −gradVq(u) to y = − [x]⊤×∇V (x) = [x]× ∇V (x). The controller and
closed-loop system subjected to measurement noise are given as follows.
Definition 3.4.1. Given V = Vqq∈Q, a family of potential functions on S2 with
respect to x ∈ S2 and δ > 0, the pair H = (V , δ) is said to generate the dynamic
system
q = 0 (u, q) ∈ C
q+ ∈ g(u) (u, q) ∈ D
(3.49a)
65
with input u ∈ S2 and output
y = κq(u) := − [u]⊤×∇Vq(u). (3.49b)
The dynamic system (3.49) is the hybrid kinematic spherical orientation controller
generated by H .
We now construct the closed-loop system by connecting the system (3.46) in
feedback with the hybrid kinematic spherical orientation controller generated by
H defined in (3.49). However, before completing this feedback interconnection,
we corrupt the measurements of x with noise defined by an SO(3) action on S2
and introduce actuation error. That is, we set
u = e[ǫ1]×x ω = κq(e
[ǫ1]×x) + ǫ2, (3.50)
where ǫ = (ǫ1, ǫ2) ∈ R6 and κq : S
2 → R3 was defined in (3.49b). The closed-loop
system takes the form
x = [x]× (κq(e[ǫ1]
×x) + ǫ2)
q = 0︸ ︷︷ ︸
(e[ǫ1]×x, q) ∈ C
x+ = x
q+ ∈ g(e[ǫ1]×x)
︸ ︷︷ ︸(e[ǫ1]
×x, q) ∈ D.
(3.51)
Theorem 3.4.2. Let H = (V , δ) generate a hybrid kinematic spherical orien-
tation controller. If ǫ = 0, then the set A = x × Q is globally asymptotically
stable for the closed-loop system (3.51) if and only if V is synergistic to degree δ.
Furthermore, for every η : S2 → R≥0 that is a proper indicator for x on S
2,
there exists a class-KL function β such that for every γ > 0, there exists α > 0
66
such that for every measurable σ : [0,∞) → αB, any solution (x, q) to (3.51)
satisfies
η(x(t, j)) ≤ β(η(x(0, 0)), t+ j) + γ ∀(t, j) ∈ domx.
Proof. The equivalence of global asymptotic stability of A = e1 × Q and the
family V being synergistic to degree δ follow from Theorem 3.2.6 and Lemma 3.2.7.
The existence of β and the statement of robustness in terms of β follow from [77,
Theorem 6.6] and the fact that S2 is compact.
3.4.3 Synergistic Potentials for S2 via Angular Warping
Define the function Φ : S2 → SO(3) as
Φ(x, k, P, u) = R(kP (x), u) = exp(kP (x) [u]×), (3.52)
where k ∈ R, P ∈ C 1x (S2), and u ∈ S
2 are fixed parameters. Then, we define the
transformation T : S2 → S
2 as
T (x, k, P, u) = Φ(x, k, P, u)x, (3.53)
where again, k ∈ R, P ∈ C 1x (S2), and u ∈ S
2 are regarded as fixed parameters
and often dropped from the notation. In context, given a gain, k ∈ R, a potential
function P ∈ C 1x (S2), and a rotation axis u ∈ S
2, T applies a rotation in the
amount of kP (x) to x about the fixed vector u. Note that T (u) = u. This
will have the effect of stretching or compressing the unit sphere, while leaving x
undisturbed.
Theorem 3.4.3. Let k ∈ R, P ∈ C 1x (S2), u ∈ S
2, V ∈ P and define Θ : S2 →
67
R3×3 as
Θ(x) = I − ku∇P (x)⊤ [x]× . (3.54)
Then, the transformation T : S2 → S
2 defined in (3.53) satisfies
T (x) = x (3.55)
DT (x) = Φ(x)(I + k [u]× x∇P (x)⊤
)(3.56)
det DT (x) = 1 + k⟨∇P (x), [u]× x
⟩(3.57)
− [x]⊤×∇(V T )(x) = −Θ(x)⊤Φ(x)⊤ [T (x)]⊤× ∇V (T (x)) (3.58)
T (x) = [T (x)]× Φ(x)Θ(x)ω. (3.59)
Moreover, when det DT (x) 6= 0,
Θ(x)−1 = I +ku∇P (x)⊤ [x]×
det DT (x)(3.60)
CritV T = T −1(CritV ). (3.61)
for all x ∈ S2.
Proof. See Appendix F.7.
We now state that T is a diffeomorphism of S2, provided that k satisfies a
simple bound.
Theorem 3.4.4. Given k ∈ R, P ∈ C 1x (S2), and u ∈ S
2, if
|k| < 1
max‖∇P (x)‖ : x ∈ S2 . (3.62)
then the transformation T : S2 → S
2 as defined as in (3.53) is a diffeomorphism.
68
Proof. From the Cauchy-Schwarz inequality [129, Ch. 5.1], it follows that
|k⟨∇P (x), [u]× x
⟩| ≤ |k|‖∇P (x)‖2‖ [u]× x‖2.
Then, since ‖ [u]× x‖2 ≤ ‖u‖2‖x‖2 = 1, it follows that when k satisfies (3.62), then
det DT (x) 6= 0 for all x ∈ S2. From the inverse function theorem, this proves that
T is a local diffeomorphism.
Now, since T is continuous, the inverse image of closed sets are closed. Since
the domain of T is S2 and T is 2-norm preserving, it follows that the inverse
image of bounded sets must be bounded. Hence T is a proper mapping, that is,
the inverse image of compact subsets are compact. Since S2 is simply connected,
we apply [130, Theorem B] to conclude that T is a diffeomorphism.
Remark. In Theorem 3.3.4, we showed that an analogous transformation for S1
was a diffeomorphism despite the fact that [130, Theorem B] is not applicable
since S1 is not simply connected.
Given the condition (3.62) for T to be a diffeomorphism, we note that T can
be used to construct new potential functions and control laws for S2. We note
that this result follows from Theorem 3.4.4.
Corollary 3.4.5. Let V ∈ P, let P ∈ C 1x (S2), and let u ∈ S
2. If k ∈ R satisfies
(3.62), then V T ∈ P.
Figures 3.5 and 3.6 show points on S2 and a vector field on S
2, respectively,
before and after the transformation T is applied. Clearly, the critical point of P ∗
(with x = −e3) is moved from e3 to another point.
69
x1x1x2x2
x3
x3 0
00
0
00
1
1
1
1
1
1
−1
−1
−1−1
−1
−1
Figure 3.5. Points on S2 before and after transformation by T , where T is defined
with k = 1/2, P = P ∗, x = −e3, and u = e2.
x1x1x2x2
x3
x3 0
00
0
00
1
1
1
1
1
1
−1
−1
−1−1
−1
−1
Figure 3.6. Gradient descent of potential functions on S2 with respect to −e3.
The plot on the left shows the vectors corresponding to the gradient descent ofP ∗. The plot on the right shows the vectors corresponding to the gradient descentof P ∗ T , where T is defined with P = P ∗, k = 1/2, and u = e2.
70
0 0.5 1−2
−1
0
k
µ(V
k)
Figure 3.7. Plot of µ(V k) for the family of potential functions in Example 3.4.6.A choice of 0 > −δ > µ(V k) provides a synergistic family of potential functionson S
2 with respect to −e3. In fact, this plot is exactly the same as Figure 3.3 inExample 3.3.6.
Example 3.4.6. Define V k1 (x) = P ∗(T (x, k, P ∗, u)), V k
2 (x) = P ∗(T (x,−k, P ∗, u)),
where x = −e3 and u = e2. Then, define the family V k = V k1 , V
k2 . It is not
difficult to compute µ(V k) for every k ∈ [0, 1), for which we provide a plot in
Figure 3.7.
3.4.4 Global Asymptotic Stabilization of the Inverted Equi-
librium Manifold of the 3-D Pendulum
In this section, we illustrate an application of the hybrid feedback control for
spherical orientation in to stabilizing the “inverted equilibrium manifold” of the
so-called “3D pendulum,” first studied in [32]. The state space of the 3D pen-
dulum evolves on the tangent bundle of the compact manifold SO(3), TSO(3),
or equivalently, SO(3) × R3. As pointed out in [2], the complex geometry of this
state space precludes the existence of a smooth state-feedback control law that
globally asymptotically stabilizes a desired configuration on SO(3), or a “reduced
71
x1x2
x3 0
0 0
1
11
−1
−1 −1
Figure 3.8. The overlapping vector fields and regions seen here are generatedfrom the synergistic family V k in Example 3.4.6, with k = ±1/2. The dark (blue)arrows and thick line correspond to the vector field and boundary of the flow setwhen k = 1/2 (q = 1) and δ = 1/4. The analogous lighter (red) arrows and lineare for k = −1/2 (q = 2).
attitude” orientation that evolves on the unit sphere. As pointed out in [126],
smooth feedback control laws can create undesired unstable equilibrium mani-
folds. In contrast, the non-smooth feedback proposed in [127] eliminates these
undesired equilibrium manifolds; however, it is not globally defined and can pro-
duce arbitrarily large control torques. When bounded non-smooth feedback is
used, arbitrarily small measurement noise can destroy the robustness of attrac-
tivity at points where the closed-loop vector field opposes itself over discontinu-
ities [78,131–133].
Dynamics of the 3D Pendulum
In this section, we summarize the dynamical properties of the so-called 3D
pendulum. An in-depth study of the nonlinear dynamics of the 3D pendulum can
72
Pivot
X
Y
Z
X ′
Y ′
Z ′
νCOM
mg
Figure 3.9. Diagram of the 3-D pendulum.
be found in [32, 126, 127] and most recently, [134]. Most material in this section
is borrowed from these references and presented here for completeness.
The 3D pendulum, illustrated in Figure 3.9, is a rigid body supported by
a fixed, frictionless pivot, and acted on by uniform and constant gravitational
forces. The pivot allows for three rotational degrees of freedom. An inertial
reference frame has the pivot location as its origin, with the third axis in the
direction of gravity and the first two axes lying in a plane perpendicular to the
direction of gravity. As described in [32,134], a body-fixed inertial frame has the
pivot location as the origin and a constant moment of inertia.
The attitude of the pendulum is a 3 × 3 rotation matrix, R ∈ SO(3), that
maps vectors expressed in the body-fixed reference frame to the inertial reference
frame. The angular velocity of the pendulum, expressed in the body frame, is
denoted by ω ∈ R3. The constant inertia matrix of the rigid body is denoted by a
symmetric and positive definite matrix J . The vector from the pivot location to
the center of mass of the rigid body, expressed in the body-fixed frame, is denoted
73
by ν 6= 0. The symbols g and m denote the constant acceleration due to gravity
and the mass of the pendulum, respectively. Finally τ ∈ R3 is a vector of external
control torques.
The dynamics of the pendulum are given as
R = R [ω]×
Jω = [Jω]× ω +mg [ν]×R⊤e3 + τ
(R,ω) ∈ SO(3) × R
3. (3.63)
It is easy to see that the unforced (τ = 0) pendulum has two equilibrium manifolds
corresponding to attitudes satisfying ω = 0 and
R⊤e3 =ν
‖ν‖ or R⊤e3 = − ν
‖ν‖ , (3.64)
indicating that the gravity vector, expressed in the body-fixed frame, is colinear
with ν, the (body-fixed) vector from the pivot to the center of mass. We define
[R]h =
R ∈ SO(3) : R⊤e3 =
ν
‖ν‖
(3.65)
[R]i =
R ∈ SO(3) : R⊤e3 = − ν
‖ν‖
, (3.66)
which will we call the hanging attitude manifold and the inverted attitude manifold,
respectively. With this notation, we note that the equilibria of (3.63) are contained
in either the hanging equilibrium manifold, [R]h×0, or the inverted equilibrium
manifold, [R]i×0. As pointed out in [32,134], the hanging equilibrium manifold
is stable, and the inverted equilibrium manifold is unstable.
In this paper, we study a reduced-order model, written in terms of the re-
duced attitude vector, Γ = R⊤e3 ∈ S2, which expresses the direction of gravity
74
in the body-fixed frame. This reduction can be written explicitly in terms of the
equivalence relation
[R] =Rs ∈ SO(3) : Rs = RR(R⊤e3, θ), θ ∈ R
. (3.67)
In this direction, for each R ∈ SO(3), we can identify [R] with Γ = R⊤e3 ∈ S2 and
(Γ, ω) evolves on the quotient space TSO(3)/S1, or equivalently, S2×R
3, according
to
Γ = [Γ]× ω
Jω = [Jω]× ω +mg [ν]× Γ + τ
(Γ, ω) ∈ S
2 × R3. (3.68)
The (unforced) equilibria satisfying ω = 0 are (Γi, 0) and (Γh, 0), where
Γh =ν
‖ν‖ and Γi = − ν
‖ν‖ (3.69)
are identified with the hanging and inverted attitude manifolds, respectively. For
a compact exposition, we define
x = (Γ, ω) ∈ S2 × R
3 (3.70)
f(x, τ) =
[Γ]× ω
J−1([Jω]× ω +mg [ν]× Γ + τ)
(3.71)
and shorten (3.68) to
x = f(x, τ) x ∈ S2 × R
3. (3.72)
For the remainder of this paper, we will concern ourselves with stabilizing the
inverted equilibrium, (Γi, 0), of (3.68).
75
Reduced Attitude Control with Synergistic Potentials
In this section, we propose a hybrid feedback that globally asymptotically
stabilizes the inverted equilibrium of (3.68) using synergistic potential functions
on S2 examined previously. Every potential function gives rise to a control law
defined on S2 × R
3 and in particular, for (3.68).
Now, we can introduce our hybrid control structure. Given a family of poten-
tial functions V = Vqq∈Q, we define the sets
C = (Γ, ω, q) : ρ(Γ) − Vq(Γ) ≥ −δ
D = (Γ, ω, q) : ρ(Γ) − Vq(Γ) ≤ −δ,
where ρ(Γ) = minq∈Q Vq(Γ) was defined in (3.20a). Further, we let π and φ denote
the canonical projections from S2×R
3 onto S2 and R
3, respectively. That is, given
(Γ, ω) ∈ S2 × R
3,
π(Γ, ω) = Γ φ(Γ, ω) = ω.
The function g : S2
Q is defined as in (3.20b). Finally, we will make use of
functions that provide “damping injection” for kinetic energy dissipation in the
remainder of this thesis.
Definition 3.4.7. A continuous function Ψ : Rn → R
n is strongly passive if there
exist class K functions α1, α2 such that
α1(‖ω‖) ≤ ω⊤Ψ(ω) ≤ α2(‖ω‖). (3.73)
Definition 3.4.8. Let Q = 1, . . . , N. Given a family of potential functions
V = Vqq∈Q on S2 with respect to Γi, positive numbers δ, c, and a strongly passive
76
function Ψ : R3 → R
3 be strongly passive. Then, the tuple H = (V , δ, c,Ψ) is
said to generate the dynamic system
q = 0 (u, q) ∈ C
q+ ∈ g(π(u)) (u, q) ∈ D
(3.74a)
with input u ∈ S2 × R
3 and output
y = κq(u) = −mg [ν]× π(u) − c [π(u)]⊤× ∇Vq(π(u)) − Ψ(φ(u)). (3.74b)
The dynamic system (3.74) is the hybrid 3D pendulum stabilizer generated by H .
We now construct the closed-loop system by connecting the system (3.72)
in feedback with the hybrid 3D pendulum stabilizer generated by H defined in
(3.74). However, before completing this feedback interconnection, we corrupt the
measurements of Γ and ω with noise and introduce actuation error. That is, we
set
u = (e[ǫ1]×Γ, ω + ǫ2) τ = κq(e
[ǫ1]×Γ, ω + ǫ2) + ǫ3, (3.75)
where ǫ = (ǫ1, ǫ2, ǫ3) ∈ R9 and κq : S
2 × R3 → R
3 was defined in (3.74b). This
yields the closed-loop system
Γ = [Γ]× ω
Jω = [Jω]× ω +mg [ν]× Γ + κq(e[ǫ1]
×Γ, ω + ǫ2) + ǫ3
q = 0︸ ︷︷ ︸
(e[ǫ1]×Γ, ω + ǫ2, q) ∈ C
Γ+ = Γ
ω+ = ω
q+ = g(e[ǫ1]×Γ)
︸ ︷︷ ︸(e[ǫ1]
×Γ, ω + ǫ2, q) ∈ D(3.76)
Theorem 3.4.9. Let H = (V , δ, c,Ψ) generate a hybrid 3D pendulum stabilizer.
77
If ǫ = 0, then the set A = (Γi, 0) × Q is globally asymptotically stable for the
closed-loop system (3.76) if and only if V is synergistic with gap exceeding δ.
Furthermore, for every η : S2×R
3 → R≥0 that is a proper indicator for (Γi, 0)
on S2 × R
3, there exists a class-KL function β such that for every compact set
K ⊂ R3 and every γ > 0, there exists α > 0 such that for every measurable
ǫ : [0,∞) → αB, any solution ξ = (Γ, ω, q) to (3.76) with ω(0, 0) ∈ K, satisfies
η(ξ(t, j)) ≤ β(η(ξ(0, 0)), t+ j) + γ ∀(t, j) ∈ dom ξ.
Proof. See Appendix F.8.
Remark. The work [126] proposes the smooth feedback
κs(Γ, ω) = K(Γ) [Γi]× Γ − Ψ(ω), (3.77)
where K(Γ) = Φ′ (12P ∗(Γ)
)+ σ (and P ∗ was defined in (3.48) with x = Γi),
Φ : R≥0 → R≥0 is a nondecreasing twice continuously differentiable function
satisfying Φ(0) = 0, Φ′ denotes the derivative of Φ, and σ is chosen to satisfy
σ > mg|ν|. We note that (3.77) could be written as
κs(Γ, ω) = − [Γ]⊤×∇A(Γ) −mg [ν]× Γ − Ψ(ω),
where A(Γ) = 2Φ(
12P ∗(Γ)
)+ σP ∗(Γ) and σ = σ −mg|ν|.
The benefit of the smooth feedback (3.77) is that it requires slightly less in-
formation than simply canceling the gravitational torque. In particular, (3.77)
requires only knowledge of Γi = −ν/|ν| and an upper bound on mg|ν|, rather
than complete knowledge of mgν.
78
One could change the hybrid feedback output (3.74b) to be less model de-
pendent by assuring that each Vq dominates the function mg|ν|P ∗ and using the
feedback
τ = κ(Γ, ω, q) = −c [Γ]⊤×∇Vq(Γ) − Ψ(ω),
which does not directly cancel the gravitational torque. However, the invariance
analysis would conclude that solutions converge to the set Z = (Γ, 0, q) : Γ ∈
CritV q, where V q(Γ) = Vq(Γ) −mg|ν|P ∗(Γ). At this point, one must verify the
synergism property for the family V = V qq∈Q, which requires the knowledge of
mgν. Moreover, if one has designed V to be synergistic, this does not imply that
V is synergistic.
Finally, despite that the proposed method requires more information about
the system, we note that Theorem 3.4.9 asserts that the closed-loop system is
robust to small perturbations including measurement noise and modeling error.
Simulation Study
In this section, we provide a brief simulation study of how the closed-loop
system resulting from the proposed hybrid controller (3.74) differs from the smooth
control (3.77) in [126]. As in [127], we have J = diag(200, 300, 150), mgν =
−200e3, and Ψ(ω) = Lω, where L = diag(40, 60, 40). For the smooth controller,
we have chosen Φ(Γ) = 1 and σ = 1.5mg‖ν‖, so that the smooth feedback is given
by
κ(Γ, ω) = −σ [Γ]⊤× ∇P ∗(Γ) − Ψ(ω)
= σ [Γi]× Γ − Ψ(ω).
(3.78)
79
The parameters specific to the hybrid 3D pendulum stabilizer are the same as in
Example 3.4.6, with k = 0.25, δ = 0.15 and c = 0.5mg|ν|. The output of the
hybrid controller is given as
κq(Γ, ω) = −mg [ν]× Γ − 0.5mg|ν| [Γ]⊤× ∇Vq(Γ) − Ψ(ω).
The initial condition of the pendulum system is Γ(0) = [0 h√
1 − h2]⊤, ω(0) =
5e3, with h = 0.001. The hybrid controller begins with q = 1 (k = 0.25).
In both cases, the evolution of Γ ∈ S2 is pictured in Figure 3.10 and measures
of error signals and control effort are pictured in Figure 3.11. In particular, the
error measure
θ(Γ) = cos−1(Γ⊤i Γ)
gives the angle between Γ and Γi. Figure 3.11 illustrates an important difference
between the hybrid feedback and the smooth feedback. As described in [126,
127], any smooth feedback control law is subject to performance limitations. In
particular, as Γ approaches a critical point of P ∗ (referring to (3.77)), the feedback
term resulting from the potential function vanishes. This creates an unstable
equilibrium point where ω = 0 and Γ = −Γi = Γh. Trajectories starting arbitrarily
close to this equilibrium may take arbitrarily long to diverge from it.
In contrast, the hybrid 3D pendulum stabilizer is not subject to such perfor-
mance limitations. This is due to the fact that the flow and jump sets are built
so that if Γ is approaching a “bad” critical point of Vq, q will switch to some
value p ∈ Q, so that another controller can be used, where Γ is not close to a
“bad” critical point of Vp. This effectively eliminates the possibility of the feed-
back term from the potential function disappearing. Finally, Figure 3.12 shows
80
−1
0
1−1
0
1
−1
0
1
Hybrid
Smooth
Γ1
Γ2
Γ3
Figure 3.10. Trajectories of Γ for smooth and hybrid controllers. Hybrid controlis depicted in blue, smooth in red.
signals related to the hybrid controller. In particular, the values of V1 and V2 are
plotted on the same plot, with the value of Vq highlighted by a thick dashed line.
Figure 3.12 also shows the signals ρ(Γ)−Vq(Γ) and q. When ρ(Γ)−Vq(Γ) reaches
−δ, a switch is made in q.
To give a more exaggerated view of the hybrid controller and to show how
changing the value of k can change performance, we conduct another simulation.
The following simulation is mostly the same as the previous simulation, with the
following important changes: k = 0.75, δ = 0.5, and K = diag(8, 12, 8) (exactly
1/5 of the previous gain). Changing the value of k has the important consequence
that the critical points of Vq will be moved further from the hanging equilibrium
and increasing δ will make the controller more reluctant to switch. Decreasing K
by 4/5 will underdamp the response, allowing the 3D pendulum to rotate quite
wildly, driving Γ into regions where different controllers apply. Figures 3.13, 3.14,
81
0 5 10 15 20 25 30 35 40 45 500
HybridSmooth
0 5 10 15 20 25 30 35 40 45 500
5
0 5 10 15 20 25 30 35 40 45 500
500
1000
Time (s)
θ(Γ)
|ω|
√∫ t 0
τ⊤τdt
π
Figure 3.11. Error and control effort measures for smooth and hybrid controllers.
and 3.15 show the results in a comparison with the smooth controller.
3.5 Control of Rigid Body Attitude in SO(3)
In this section, we propose a hybrid feedback that robustly and globally asymp-
totically stabilizes a desired rigid body attitude in both kinematic and dynamic
settings. We present a small simulation study, contrasting the proposed method
with a similar smooth feedback.
3.5.1 Problem Statement and Notation
The attitude of a rigid body is described by a rotation matrix that indicates
a rotation between reference frames, i.e., an element of SO(3). In this section,
82
0 5 10 15 200
1
2
0 5 10 15 20
0
0 5 10 15 201
2
Time (s)
−δρ(Γ
)−
Vq(Γ
)V
1(Γ
),V
2(Γ
)q
Figure 3.12. Signals related to hybrid controller for the 3D pendulum. Thetop plot shows the values of the two potential functions used to determine theswitching condition - the current potential function being used is highlighted.The middle plot shows the signal ρ(Γ) − Vq(Γ) - when it reaches δ, a controlswitch is initiated. The bottom plot shows the value of q.
83
−1
0
1−1
0
1
−1
0
1
Hybrid
Smooth
Γ1
Γ2
Γ3
Figure 3.13. Trajectories of Γ for smooth and hybrid controllers. Hybrid controlis depicted in blue, smooth in red.
0 50 100 1500
HybridSmooth
0 50 100 1500
5
0 50 100 1500
1000
2000
Time (s)
θ(Γ)
|ω|
√∫ t 0
τ⊤τdt
π
Figure 3.14. Error and control effort measures for smooth and hybrid controllers.
84
0 5 10 15 200
1
2
0 5 10 15 20
0
0 5 10 15 20
1
2
Time (s)
−δρ(Γ
)−
Vq(Γ
)V
1(Γ
),V
2(Γ
)q
Figure 3.15. Signals related to hybrid controller for the 3D pendulum. Thetop plot shows the values of the two potential functions used to determine theswitching condition - the current potential function being used is highlighted.The middle plot shows the signal ρ(Γ) − Vq(Γ) - when it reaches δ, a controlswitch is initiated. The bottom plot shows the value of q.
85
the matrix R will denote the attitude of a rigid body, where R rotates vectors
expressed in the local body frame coordinates to their inertial frame coordinates.
We denote the angular velocity of the rigid body, given in body frame coordinates,
as ω, J = J⊤ > 0 denotes the inertia matrix of the rigid body, and τ is a vector
of external torques at our disposal. Then, given a measurable ω : R → R3, the
rigid body satisfies the kinematic and dynamic equations
R = R [ω]× (3.79a)
Jω = [Jω]× ω + τ. (3.79b)
We refer the reader to Appendix E for useful properties of the cross product used
here.
Rigid body attitude is often parametrized in terms of a rotation θ ∈ R about
a fixed axis u ∈ S2 by the so-called Rodrigues formula (3.45)–the map R(θ, u) :
R × S2 → SO(3) defined as
R(θ, u) = I + sin θ [u]× + (1 − cos θ) [u]2× .
This matrix has eigenvalues 1, ejθ, e−jθ, where the 1-dimensional subspace de-
fined by the axis u ∈ S2 is unchanged by R, that is, R(θ, u)u = R(θ, u)⊤u = u.
We recall the fact, shown in Appendix E, that R(θ, u) = eθ[u]× . Given an element
of SO(3), it is fairly simple to recover the angle and axis of rotation using
u sin θ = ψ (R(θ, u)) 2(1 − cos θ) = trace(I −R(θ, u)), (3.80)
86
where ψ : R3×3 → R
3 is defined as
ψ(A) = vec× (skewA) =1
2
A32 − A23
A13 − A31
A21 − A12
.
Many useful properties of ψ are shown in Appendix E. Finally, it is worth noting
that R(θ, u) is 2-π periodic in θ and that
R(θ,−u) = R(−θ, u). (3.81)
Analogous to S1 and S
2, given a potential function on SO(3), the form of
(3.79a) allows us to characterize the set of critical points succinctly. In particular,
given a function V : SO(3) → R, we can compute its change along flows of the
kinematic equation (3.79a) as
dV (R(t))
dt=⟨∇V (R), R [ω]×
⟩
= 2ω⊤ψ(R⊤∇V (R))
(3.82)
where we have used the property (E.5c). So, no matter the value of ω, when
ψ(∇V (R)⊤R) = 0 (if and only if ∇V (R)⊤R is symmetric), there is no infinitesimal
change in V . In this direction, we define the set of critical points of some V :
SO(3) → R as
CritV = R ∈ SO(3) : ψ(R⊤∇V (R)) = 0. (3.83)
As mentioned in Section 3.3.1, the point stabilization problem on S1 can easily
be reduced to the stabilization of an identity element. This is a general property
87
of Lie groups (see e.g. [11]), which applies to SO(3) as well. So, without loss of
generality, we will first consider constructing a velocity feedback (using ω, the
angular velocity as a control variable) to stabilize I for the kinematic subsystem,
which evolves on SO(3). This velocity feedback will then be naturally extended
into dynamics evolving on TSO(3) (equivalently, SO(3) × R3) by using kinetic
energy as a Lyapunov function [13] for stabilization of (I, 0) ∈ SO(3) × R3.
Perhaps, the most natural potential function on SO(3) with respect to I is the
“height” function on SO(3),
P ∗(R) = trace(I −R). (3.84)
We will investigate the critical points of this function later in this section.
3.5.2 Hybrid Control Structure: Kinematics & Dynamics
The kinematic equation of motion on SO(3) provide an explicit form for the
gradient of a potential function in terms of the angular velocity ω. In this section,
we state specialized versions of Theorem 3.2.6 with accompanying statements
regarding the robustness to measurement noise of the closed-loop system.
Kinematic stabilization to I ∈ SO(3)
Analogously to our hybrid controllers proposed for S1 and S
2, the functions ρ
and g and the sets C and D do not change from (3.20) and nor does the dynamic
equation of the logic state q in (3.21a). The only change is to the output y, which
becomes y = −2ψ(R⊤∇Vq(R)). The controller and closed-loop system subjected
88
to measurement noise are given as follows.
Definition 3.5.1. Given V = Vqq∈Q, a family of potential functions on SO(3)
with respect to I ∈ SO(3) and δ > 0, the pair H = (V , δ) is said to generate the
dynamic system
q = 0 (u, q) ∈ C
q+ ∈ g(u) (u, q) ∈ D
(3.85a)
with input u ∈ SO(3) and output
y = κq(u) := −2ψ(R⊤∇Vq(R)). (3.85b)
The dynamic system (3.85) is the hybrid kinematic attitude controller generated
by H .
We now construct the closed-loop system by connecting the system (3.79a) in
feedback with the hybrid kinematic attitude controller generated by H defined
in (3.85). However, before completing this feedback interconnection, we corrupt
the measurements of R with noise and introduce actuation error. That is, we set
u = e[ǫ1]×R ω = κq(e
[ǫ1]×R) + ǫ2, (3.86)
where ǫ = (ǫ1, ǫ2) ∈ R6 and κq : SO(3) → R
3 was defined in (3.85b). This yields
the closed-loop system
R = R[κq(e
[ǫ1]×R) + ǫ2
]×
q = 0︸ ︷︷ ︸
(e[ǫ1]×R, q) ∈ C
R+ = R
q+ ∈ g(e[ǫ1]×R)
︸ ︷︷ ︸(e[ǫ1]
×R, q) ∈ D
(3.87)
89
Theorem 3.5.2. Let H = (V , δ) generate a hybrid kinematic attitude controller.
If ǫ = 0, then the set A = I×Q is globally asymptotically stable for the closed-
loop system (3.87) if and only if V is synergistic with gap exceeding δ.
Furthermore, for every η : SO(3) → R≥0 that is a proper indicator for I on
SO(3), there exists a class-KL function β such that for every γ > 0, there exists
α > 0 such that for every measurable ǫ : [0,∞) → αB, any solution (R, q) to
(3.87) satisfies
η(R(t, j)) ≤ β(η(R(0, 0)), t+ j) + γ ∀(t, j) ∈ domR.
Proof. The equivalence of global asymptotic stability of A = I × Q and the
family V being synergistic to degree δ follow from Theorem 3.2.6 and Lemma 3.2.7.
The existence of β and the statement of robustness in terms of β follow from [77,
Theorem 6.6] and the fact that SO(3) is compact.
Dynamic stabilization to (I, 0) ∈ SO(3) × R3
To construct the hybrid controller for dynamic stabilization to (I, 0) ∈ SO(3)×
R3, we employ the techniques used in Section 3.4.4 to extend the hybrid kinematic
spherical orientation controller defined on S2 to the 3D pendulum which evolves
on S2 × R
3. Again, we make use of a strongly passive function Ψ, as defined in
Definition 3.4.7 for energy damping. The hybrid control structure is as follows.
Given a family of potential functions V = Vqq∈Q, we define the sets
C = (R,ω, q) : ρ(R) − Vq(R) ≥ −δ
D = (R,ω, q) : ρ(R) − Vq(R) ≤ −δ,
90
where ρ(R) = minq∈Q Vq(R) was defined in (3.20a). Further, we let π and φ denote
the canonical projections from SO(3) × R3 onto SO(3) and R
3 respectively. That
is, given (R,ω) ∈ SO(3) × R3,
π(R,ω) = R φ(R,ω) = ω.
The function g : SO(3) Q is defined in (3.20b).
Definition 3.5.3. Given V = Vqq∈Q, a family of potential functions on SO(3)
with respect to I ∈ SO(3), δ > 0, and a persistent function Ψ, the tuple H =
(V , δ,Ψ) is said to generate the dynamic system
q = 0 (u, q) ∈ C
q+ ∈ g(π(u)) (u, q) ∈ D
(3.88a)
with input u ∈ SO(3) × R3 and output
y = κq(u) := −2ψ(π(u)⊤∇Vq(π(u))) − Ψ(φ(u)). (3.88b)
The dynamic system (3.88) is the hybrid attitude controller generated by H .
We now construct the closed-loop system by connecting the system (3.79) in
feedback with the hybrid attitude controller generated by H defined in (3.88).
However, before completing this feedback interconnection, we corrupt the mea-
surements of (R,ω) with noise and introduce actuation error. That is, we set
u = (e[ǫ1]×R,ω + ǫ2) τ = κq(e
[ǫ1]×R,ω + ǫ2) + ǫ3, (3.89)
where ǫ = (ǫ1, ǫ2, ǫ3) ∈ R9 and κq : SO(3)×R
3 → R3 was defined in (3.88b). This
91
yields the closed-loop system
R = R [ω]×
Jω = [Jω]× ω + κq(e[ǫ1]
×R,ω + ǫ2) + ǫ3
q = 0︸ ︷︷ ︸
(e[ǫ1]×R,ω + ǫ2, q) ∈ C
R+ = R
ω+ = ω
q+ ∈ g(e[σ]×R)
︸ ︷︷ ︸(e[ǫ1]
×R,ω + ǫ2, q) ∈ D
(3.90)
Theorem 3.5.4. Let H = (V , δ,Ψ) generate a hybrid attitude controller. If
ǫ = 0, then the set A = (I, 0) × Q is globally asymptotically stable for the
closed-loop system (3.90) if and only if V is synergistic with gap exceeding δ.
Furthermore, for every η : SO(3) × R3 → R≥0 that is a proper indicator for
(I, 0) on SO(3) × R3, there exists a class-KL function β such that for every
γ > 0 and every compact set K ⊂ R3, there exists α > 0 such that for every
measurable ǫ : [0,∞) → αB, any solution (R,ω, q) to (3.90) with ω(0, 0) ∈ K
satisfies
η((R(t, j), ω(t, j)) ≤ β(η(R(0, 0), ω(0, 0)), t+ j) + γ ∀(t, j) ∈ dom ξ.
Proof. See Appendix F.9.
Remark. The hybrid controller proposed here can also stabilize a specified inverted
equilibrium of the 3D pendulum described in Section 3.4.4 by directly cancelling
the torque due to gravity.
92
3.5.3 Not-So-Synergistic Potential Functions on SO(3)
Before resorting to diffeomorphisms of SO(3) to construct synergistic families
of potential functions, we consider the possibility that a large class of existing
potential functions on SO(3) might already be large enough to find a synergistic
family. This large class of potential functions on SO(3) stems from what is known
as the “modified trace function.” Recall that the “height” function on SO(3) was
defined in (3.84) as P ∗(R) = trace(I −R). It is instructive to see that
P ∗(R) = trace(I −R) =1
2〈I −R, I −R〉 =
1
2trace((I −R)⊤(I −R)).
That is, P ∗ is simply the restriction of the Frobenius norm of the error between R
and I to SO(3). The same is also true of the height functions on Sn investigated
previously.
A generalization of P ∗ can be found by using the inner product 〈X,Y 〉A =
〈X,AY 〉, where A is a symmetric and positive definite matrix. Thus, we define
the modified trace function,
PA(R) = trace(A(I −R)) =1
2〈I −R,A(I −R)〉 , (3.91)
which, taking inspiration from [110], was first introduced in [13]. It is also helpful
to see PA in the angle-axis representation through (3.45). Given θ ∈ R and u ∈ S2,
PA(R(θ, u)) = (1 − cos θ)(trace(A) − u⊤Au). (3.92)
93
Clearly, we also have that
P ∗(R(θ, u)) = 2(1 − cos θ). (3.93)
As we now show, the critical points of PA are the identity element and rotations
of 180 about the (real) eigenvectors of A. In this direction, for some A ∈ Rn×n,
we define
E (A) = (λ, v) ∈ C × Cn : Av = λv, |v| = 1 (3.94)
and its projections onto C and Cn as
Eλ(A) = λ ∈ C : ∃(λ, v) ∈ E (A) (3.95)
Ev(A) = v ∈ Cn : ∃(λ, v) ∈ E (A). (3.96)
Recall that when A is symmetric, Eλ(A) ⊂ R. In this case, it is helpful to constrain
the sets of unit eigenvectors to be purely real as well. In this direction, we let
E R
v (A) = v ∈ Rn : ∃(λ, v) ∈ E (A). (3.97)
Lemma 3.5.5. Let A ∈ R3×3 be symmetric and positive definite. Then, the
function PA satisfies
CritPA = I ∪ R(π,E R
v (A)). (3.98)
When A has distinct eigenvalues, PA is a perfect Morse function.
Proof. See Appendix F.10.
Lemma 3.5.5 agrees with the existing analysis in [110,111,126], which showed
94
that in the special case when A = ∆ := diag(d1, d2, d3), with d1 > d2 > d3 > 0,
CritP∆ =I,(
1 0 00 −1 00 0 −1
),( −1 0 0
0 1 00 0 −1
),( −1 0 0
0 −1 00 0 1
),
which corresponds to the identity element of SO(3) and rotations of 180 about
each principal axis of the body frame coordinate system. As shown in Lemma
3.5.5, when A has distinct eigenvalues, PA is a perfect Morse function and attains
the minimal number of critical points on SO(3) possible [110]. These desirable
properties make it a popular candidate for control and observer design [11,13,79,
81–83,135,136].
As pointed out in [13, 137], when A does not have distinct eigenvalues, parts
of the critical set become connected. In the case when A has only 1 distinct
eigenvalue (A = αI, α ∈ R), we have PαI = αP ∗. It is obvious in this case that
CritP ∗ = R ∈ SO(3) : R = R⊤, (3.99)
and as a result of Lemma 3.5.5, we can characterize this set as
CritP ∗ = I ∪ R(π,S2) :
the union of the identity element and the connected submanifold of 180 rotations
about any axis. Note that
Υ := CritP ∗ \ I = R ∈ SO(3) : R = R⊤ 6= I = R(π,S2) (3.100)
is not diffeomorphic to S2. Since R(π, u) = R(−π,−u) = R(π,−u), the antipo-
dal points of S2 are identified through the Rodrigues formula. Hence, Υ is an
95
embedding of the real projective plane, RP 2, in SO(3) [13].
To a lesser extent (than A with distinct eigenvalues), this particular choice of
function is also a popular choice for Lyapunov analysis and control design [84,138–
140]. It is interesting to observe that any symmetric positive definite matrix with
identical eigenvalues is arbitrarily close to a symmetric positive definite matrix
with distinct eigenvalues (for instance, I is close to I + ǫ diag(1, 2, 3)), so one can
see that a slight perturbation of P ∗ can cause the set of critical points to change
quite dramatically. This is not too surprising, as the set of Morse functions is
known to be an open dense set in the space of differentiable functions [105].
Since one can use (3.91) to produce any number of potential functions on
SO(3) with respect to I, having only I as a common critical point, one might
wonder whether one can find a synergistic family of potential functions of the
form V = PAqq∈Q. Indeed, it would seem possible on the surface, especially
since it is easy to separate the critical sets between functions by choosing different
A’s with different eigenvectors; however, the following lemmas show that this is
not the case.
Theorem 3.5.6. Let N ∈ 1, 2, . . . . If AqNq=1 satisfies Aq = A⊤q > 0 for
every q ∈ 1, . . . , N, then, the family V = VqNq=1 ∈ PN , where Vq(R) =
trace(Aq(I −R)), is not synergistic.
Proof. See Appendix F.11.
Perhaps, Theorem 3.5.6 seems, on the surface, a bit counter-intuitive. Cer-
tainly, if one selects two positive definite matrices with distinct eigenvalues and
distinct eigenvectors, their only common critical point is the identity matrix.
Unfortunately, this is not a sufficient condition for synergism. The following
96
lemma sheds some light as to why this is the case. Recall that for any function
V : SO(3) → R, that V (R) = 2ω⊤ψ(R⊤∇V (R)). Then, to flow down the gradient
of V , one can set ω = −2ψ(R⊤∇V (R)).
Lemma 3.5.7. Let A ∈ R3×3 be symmetric and positive definite. Suppose the
kinematic feedback ω = −2ψ(R⊤∇PA(R)) = 2ψ(R⊤A) is applied to the system
R = R [ω]×. Then, Υ is invariant for the closed-loop system
R = R [κPA(R)]× = R
[2 vec× skewR⊤A
]× = R−RAR.
Proof. Suppose that R = R⊤. Then, R⊤ = (R−RAR)⊤ = R−RAR = R. Since
R is symmetric when R is symmetric, the set of symmetric rotations, I × Υ is
invariant to the flow R = R−RAR. Note that I and Υ are disjoint and in fact,
there exists an open neighborhood U ∋ I such that U ∩Υ = ∅. This implies that
Υ is invariant.
In view of Lemma 3.5.7, the lower number of critical points attained by PA
when A has distinct eigenvalues does little to improve the attractivity properties
of I in a kinematic setting, since any choice of A (distinct eigenvalues or not)
leaves Υ invariant. At least in this case, requiring PA to be a Morse function does
little more than to facilitate statements about the Lebesgue measure or density of
sets from which I is not attractive as in [13,18] and others. The velocity feedback
applied in Lemma 3.5.7 is used in [11,13,79,81–84,136,138–140] as either a velocity
feedback or part of a torque feedback.
Unfortunately, Lemma 3.5.7 effectively rules out the prospect of combining
multiple potential functions of the form PA and their corresponding control laws
in a hybrid scheme that achieves global asymptotic stability of I, since any con-
97
trol law generated by this class renders Υ invariant. Further, it seems that a
set of suitable potential functions and their corresponding control laws is hard to
come by. To the best of the author’s knowledge, there does not appear to be any
use of potential functions on SO(3) in the literature other than P ∗ and PA (or
strictly increasing real functions of these) in the literature. In this direction, we
will again create a large class of potential functions based on an angular stretch-
ing/compression of SO(3), analogous to the transformations considered for S1 and
S2.
3.5.4 Synergistic Potentials for SO(3) via Angular Warping
In order to create a new class of potential functions on SO(3), we “warp” SO(3)
by a transformation, then apply a known potential function to the warped space.
In this direction, we define T : SO(3) → SO(3) as
T (R, k, P, u) = exp(kP (R) [u]×)R, (3.101)
where k ∈ R, P ∈ C 1I (SO(3)), and u ∈ S
2. In context, given R ∈ SO(3), the
transformation T applies an additional rotation to R about a fixed axis u ∈
S2. The amount of rotation about u is controlled by the function P and a gain
k. While T depends on arguments other than R, we will regard these as fixed
“parameters” of a given transformation and often drop these arguments when
there is no confusion. This transformation has several useful properties.
Theorem 3.5.8. Let k ∈ R, P ∈ C 1I (SO(3)), u ∈ S
2, V ∈ P, and define
98
Θ : SO(3) → R3×3 as
Θ(R) = I + 2kR⊤uψ(∇P (R)R⊤)⊤R. (3.102)
Then, the transformation T : SO(3) → SO(3) satisfies
T (I) = I (3.103)
DT (R) =(I ⊗ exp(kP (R) [u]×)
) (I + k vec [u]×R(vec∇P (R))⊤
)
(3.104)
det DT (R) = 1 + 2k⟨u, ψ(∇P (R)R⊤)
⟩(3.105)
ψ(R⊤∇(V T )(R)) = Θ(R)⊤ψ(T (R)⊤∇V (T (R))
)(3.106)
T (R) = T (R) [Θ(R)ω]× . (3.107)
Moreover, when det DT (x) 6= 0,
Θ(R)−1 = I − 2kR⊤uψ(∇P (R)R⊤)⊤R
det DT (R)(3.108)
CritV T = T −1 (CritV ) . (3.109)
for all R ∈ SO(3).
Proof. See Appendix F.12.
Clearly, when det DT (R) 6= 0, T is a local diffeomorphism of SO(3) by the
inverse function theorem. Additionally, some special structure of T implies that
T is also a global diffeomorphism, provided a bound on k. We contain an easy
guarantee of this in the following theorem.
99
Theorem 3.5.9. Given k ∈ R, P ∈ C 1I (SO(3)), u ∈ S
2, if
|k| <√
2
2 maxR∈SO(3)
‖∇P (R)‖F, (3.110)
then the transformation T (R) : SO(3) → SO(3) defined in (3.101) is a diffeomor-
phism.
Proof. See Appendix F.13.
A simple consequence of Theorem 3.5.8 that when V is a potential function,
so is V T .
Corollary 3.5.10. Let V ∈ P, let P ∈ C 1I (SO(3)), and let u ∈ S
2. If k satisfies
(3.110) then, V T ∈ P.
Now, we see that applying the diffeomorphism T to an existing potential func-
tion produces a new potential function, with new critical points that are calculated
by applying the inverse of T to the critical points of the original potential function,
as shown by (3.109) of Theorem 3.5.8. Of course, this is not all that is necessary
to produce a synergistic family of potential functions, as shown in Theorem 3.5.6.
We now provide an existence result in the form of an example, showing that
it is possible to generate a synergistic family of potential functions using the
transformation T and a particular potential function of the type PA, defined in
(3.91).
Example 3.5.11. Let w = [11 12 13]⊤, ∆ = 3 diag(w)/∑3
i=1wi, u = w/‖w‖2.
Then, define V k1 (R) = P∆(T (R, k, u, P∆)), V k
2 (R) = P∆(T (R,−k, u, P∆)). Then,
100
0 0.1 0.2 0.3 0.4
-1
-0.5
0
k
µ(V
k)
Figure 3.16. Plot of µ(V k) for the family of potential functions in Example 3.5.11.
define the family V k = V k1 , V
k2 , where k satisfies (3.110), or
|k| <√
2/(2 maxR∈SO(3)
‖∆‖F ) ≈ 0.4073.
It is not difficult to compute µ(V k) for every k satisfying this bound, for which
we provide a plot in Figure 3.16.
Remark. The fact that there exists a synergistic family of only 2 potential functions
on SO(3) is remarkable. Recall that the basin of attraction of an asymptotically
stable equilibrium point is contractible. Moreover, the Lusternik-Schnirelmann
category of SO(3) is 4, meaning the minimum number of contractible sets needed
to cover SO(3) is 4. This implies that the union of the basins of attraction of
the identity element for each controller in this synergistic family does not cover
SO(3). Nevertheless, the hybrid scheme still provides global asymptotic stability.
3.5.5 Simulation Results
In this section, we present a simulation study comparing the hybrid controller
with a similar smooth controller. Here, the hybrid controller is generated by the
101
potential functions in Example 3.5.11 and we compare it to a similar smooth
control algorithm resulting from using only one potential function.
In the following simulations (as in Example 3.5.11), we let w = [11 12 13]⊤,
∆ = 3 diag(w)/∑3
i=1wi, J = diag(200, 300, 150), and K = diag(40, 60, 40). The
smooth control law is given as
τs(R,ω) = −2ψ(∆R) −Kω. (3.111)
As in Example 3.5.11, we let u = w/‖w‖2 and set k1 = −k2 = 0.2 and δ = 0.5.
The hybrid control law is given (3.88b), where, for q ∈ 1, 2,
τq(R,ω) = −2Θq(R)⊤ψ(∆Tq(R)) −Kω (3.112)
is used as the torque feedback for mode q and
Tq(R) = exp(kqP∆(R) [u]×)R
Θq(R) = I + 2kqR⊤uψ(−∆R⊤)⊤R
= I + 2kqR⊤uψ(R∆)⊤R.
As a final notational convenience for this section, we let
Vq(R) = P∆(Tq(R)),
for q ∈ 1, 2.
Note that the smooth control law is derived from the potential function P∆(R) =
trace(∆(I−R)) and for each q ∈ 1, 2, the torque feedback from the hybrid con-
troller is derived from the potential function P∆ T (·, kq, P∆, u) = Vq. In some
102
sense, the smooth control law τs (3.111) is the midpoint (in a homotopy sense) of
the two control laws (3.112) used by the hybrid controller.
In the sequel, we define the function θ : SO(3) → R as
θ(R) = cos−1
(1 − 1
2trace(I −R)
)
The simulation in Figures 3.17 and 3.18 compare the hybrid and smooth con-
trollers beginning from an initial condition close to a critical point of P∆ (note
that since ∆ is diagonal, the critical points are 180 rotations about the unit vec-
tors). In particular, the initial value of R was chosen as R(0) = R(π, z), where
z = [√
(1 − h2) h 0]⊤ and h = 0.1. The initial condition of ω was chosen as
zero. For the hybrid controller, the initial condition of q was set to one.
In this simulation, the hybrid controller begins from an initial condition that
is not a critical point for any of its control laws and in fact, forces the rigid body
to converge to the identity rotation without switching q. So, the result of this
simulation merely compares the convergence properties of two smooth control
laws when starting on or near critical points or sufficiently far away from them.
Figures 3.19 and 3.20 depict a similar simulation as Figures 3.17 and 3.18;
however, the initial condition in Figures 3.19 and 3.20 is chosen close to a critical
point of P∆ T1. In particular, the initial value of R was chosen as R(0) =
T−11 (R(π, e1)). The initial condition of ω was chosen as zero. For the hybrid
controller, the initial condition of q was set to one.
In this simulation, the hybrid controller begins from an initial condition that
is a critical point for its initial choice of potential function/control law. Because
δ was selected appropriately (i.e., 0 > −δ > µ(V k), the hybrid controller imme-
103
−10
1 −10
1
−1
0
1
−10
1 −10
1
−1
0
1
x1x1
x2x2
x3
x3
Figure 3.17. Comparison of rigid body trajectories for smooth and hybrid con-trollers starting near a critical point of P∆ with zero initial angular velocity. Thehybrid controller (left) immediately exerts a torque to steer the rigid body around.The smooth controller (right) has close to zero torque near the critical points. Thiscreates a long delay in convergence to the identity rotation. The red trajectory isR(t)e1, the blue is R(t)e2, and the green is R(t)e3.
diately switches q from 1 to 2 (though, not pictured). This results in asymptotic
stability of the identity element and a similar performance to the smooth control
law. For the remainder of this simulation, q remained constant at 2.
Finally, Figures 3.21, 3.22, and 3.23 depict a simulation of the hybrid controller
beginning from the identity rotation, but with an initial angular velocity. In
particular, R(0) = I, ω(0) = 2w/‖w‖2, and q(0) = 1. A comparison with a
smooth controller is not provided as the performance difference is negligible.
In these simulations, the initial spin causes the rigid body to rotate through
180 and near critical points of the potential functions used by the hybrid con-
troller. When R(t) approaches these critical points, the hybrid controller detects
it by a difference between its potential functions and switches the control law
accordingly.
Figure 3.23 details the logic behavior of the hybrid controller over the simu-
104
0 100 200 300 400 500 600 700 800 900 10000
Hybrid
Smooth
0 100 200 300 400 500 600 700 800 900 10000
0.02
0.04
0.06
0 100 200 300 400 500 600 700 800 900 10000
1
2
Time (s)
π
θ(R
)‖ω
‖ 2√∫ t 0
τ⊤
τdt
Figure 3.18. Comparison of smooth and hybrid controllers starting near a criticalpoint of P∆ with zero initial angular velocity. The hybrid controller (solid, blue)immediately exerts a torque to steer the rigid body around. The smooth controller(dashed, red) has close to zero torque near the critical points. This creates a longdelay in convergence to the identity rotation.
105
−10
1 −10
1
−1
0
1
−10
1 −10
1
−1
0
1
x1x1
x2x2
x3
x3
Figure 3.19. Comparison of rigid body trajectories for smooth and hybrid con-trollers starting near a critical point of P∆ T1 with zero initial angular velocity.The hybrid controller (left) immediately switches two a new control law and ex-hibits similar performance to the smooth controller (right). The red trajectory isR(t)e1, the blue is R(t)e2, and the green is R(t)e3.
lation. This figure displays the values of Vq(R(t)) (thin solid and dashed lines)
and indicates the current value of q by a bold dashed line line. Additionally, the
signals ρ(R) − Vq(R) and q are shown as well. When t = 0, R(t) = I, and both
potential functions have the same value of zero. When the angular velocity rotates
the rigid body, the potential functions diverge in value and the hybrid controller
switches the value of q to match the index of the lowest-valued potential function.
106
0 20 40 60 80 100 120 140 160 1800
HybridSmooth
0 20 40 60 80 100 120 140 160 1800
0.02
0.04
0.06
0 20 40 60 80 100 120 140 160 1800
1
2
3
Time (s)
π
θ(R
)‖ω
‖ 2√∫ t 0
τ⊤
τdt
Figure 3.20. Comparison of smooth and hybrid controllers starting near a criticalpoint of P∆ with zero initial angular velocity. The hybrid controller (solid, blue)immediately exerts a torque to steer the rigid body around. The smooth controller(dashed, red) has close to zero torque near the critical points. This creates a longdelay in convergence to the identity rotation.
107
−1
0
1
−1
0
1
−1
0
1
x1x2
x3
Figure 3.21. Rigid body trajectory for hybrid controller starting from R(0) = Iand ω(0) = 2w/‖w‖2. The hybrid controller damps the oscillations and switchesbetween control laws as the initial angular velocity moves the rigid body nearcritical points of the hybrid controller’s family of potential functions. The redtrajectory is R(t)e1, the blue is R(t)e2, and the green is R(t)e3.
108
0 50 100 1500
0 50 100 1500
1
2
0 50 100 1500
2
4x 10
4
Time (s)
π
θ(R
)‖ω
‖ 2√∫ t 0
τ⊤
τdt
Figure 3.22. Rigid body trajectory characteristics and control effort for hybridcontroller starting from R(0) = I and ω(0) = 2w/‖w‖2.
109
0 5 10 15 200
2
4
0 5 10 15 20
0
0 5 10 15 201
2
Time (s)
−δρ(R
)−
Vq(R
)V
1(R
),V
2(R
)q
Figure 3.23. Plot of hybrid controller’s potential functions and its selection ofcontrol laws. As the rigid body is rotated near critical points, the control law isswitched to the index of the minimum-valued potential function.
110
Chapter 4
Quaternion-Based Attitude
Control
The attitude of a rigid body is, by definition, an element of SO(3); however, it is
possible to represent SO(3) using various coordinate systems. Often, the set of unit
quaternions, sometimes referred to as Euler parameters, are used to parametrize
SO(3). This parametrization provides a globally nonsingular representation of
rigid body attitude and uses the minimal number of parameters (four) needed to
represent SO(3) without singularity [85]. However, the unit quaternions present
a problematic ambiguity, as there are exactly two unit quaternions representing
each element of SO(3).
Recall again that the attitude of a rigid body can be parametrized as a rotation
about a fixed axis by the Rodrigues formula (3.45)–the map R(θ, u) : R × S2 →
SO(3)–defined as
R(θ, u) = I + sin θ [u]× + (1 − cos θ) [u]2× .
111
In the sense of (3.45), a unit quaternion, q, is defined as
q =
η
ǫ
= ±
cos(θ/2)
sin(θ/2)u
∈ S
3, (4.1)
where η ∈ R is referred to as the “scalar” component and ǫ ∈ R3 is referred to as
the “vector” component. In this way, a unit quaternion represents an element of
SO(3) through the map R : S3 → SO(3) defined as
R(q) = I + 2η [ǫ]× + 2 [ǫ]2× . (4.2)
Note the important property that R(q) = R(−q) for each q ∈ S3. Also note that
we have abused notation by “overloading” the symbol R; however, the domain of
the operator it represents will always be determined by its argument. We denote
the set-valued inverse map Q : SO(3) S3 as
Q(R) = q ∈ S3 : R(q) = R. (4.3)
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 unit quaternion q ∈ S
3 has an
inverse q−1 = (η,−ǫ) under the quaternion multiplication rule
q1 ⊙ q2 =
η1η2 − ǫ⊤1 ǫ2
η1ǫ2 + η2ǫ1 + [ǫ1]× ǫ2
,
where qi = (ηi, ǫi) ∈ R4 and i ∈ 1, 2. This multiplication rule is a group
112
homomorphism, satisfying
R(q1)R(q2) = R(q1 ⊙ q2). (4.4)
The quaternion state space, S3, is a covering space for SO(3) and R : S
3 →
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 Ok,
where, for each k, the restriction of R to Ok is 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] → S3 satisfying qp(0) = p and R(qp(t)) = R(t) for every t ∈ [0, 1] [113,
Theorem 54.1]. We call any such path qp a 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 S3 as well [2]. In this direction,
given a Lebesgue measurable function ω : [0, 1] → R3 and an absolutely continuous
path R : [0, 1] → SO(3) satisfying (3.79a) for almost all t ∈ [0, 1], any q : [0, 1] →
S3 that is a lifting of R over R satisfies the quaternion kinematic equation
q =
η
ǫ
=
1
2q ⊙ ν(ω) =
1
2Λ(q)ω, (4.5)
for almost all t ∈ [0, 1], where the maps ν : R3 → R
4 and Λ : S3 → R
4×3 are
113
defined as
ν(x) =
0
x
(4.6)
Λ(p) =
−ǫ⊤
ηI + [ǫ]×
. (4.7)
For a wealth of information about quaternions, we refer the reader to [115, 141–
143].
As we study in the next section, the act of using a quaternion-based feedback
that works on paths lifted from SO(3) to S3 changes the topological structure of
the control objective. As a point stabilization problem in SO(3), the objective is
the stabilize a single equilibrium point. When translated into an equivalent point
stabilization problem in S3, the objective changes to stabilizing a disconnected set
of two antipodal points on S3.
4.1 Disambiguation
A feedback controller 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 controller may be ambiguous and
take on one of two possible values; hence, they may not be well-defined on SO(3).
When this is the case, analysis for quaternion-based feedback is often carried out
in S3 using the lifted attitude kinematic equation (4.5), but these results are not
directly related to a feedback system that takes measurements from SO(3). This
obviously begs the following questions: How is a unit quaternion obtained from
114
a measurement of attitude? On what state-space is an inconsistent quaternion-
based feedback defined? How is stability analysis done in the covering space
related to a stability result for the actual, physical system? As we will see, these
questions are deeply connected to the operation of lifting a continuous path in
SO(3) to S3.
While calculating the set of two quaternions that represent a given attitude is
a fairly simple operation (see e.g. [115, 144–148]), the process of selecting which
quaternion to use for feedback is a less obvious operation. As noted in [28], 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. As we show in this work, when such a discontinuous
quaternion selection scheme is paired with a widely-used inconsistent quaternion-
based feedback, the resulting closed-loop system is not robust to arbitrarily small
measurement noise. In fact, we construct an explicit noise signal defined on SO(3)
that stabilizes a region about the manifold of 180 rotations with zero angular
velocity when such a feedback is employed.
Here, we present a simple hybrid dynamic algorithm for lifting a path from
SO(3) to S3. That is, given a continuous trajectory in SO(3), the lifting system dy-
namically produces a continuous quaternion trajectory. Our approach here allows
us to make a clear equivalence between stability results for a closed-loop system in
the covering space and stability results for an inherently dynamic feedback control
system for the actual plant. This justifies carrying out stability analysis on the
covering space; however, when a quaternion-based feedback does not respect the
two-to-one covering of SO(3), this translated stability result may not actually be
desirable!
115
When the proposed hybrid path-lifting system is paired with an inconsistent
quaternion-based feedback, the noise sensitivity issues disappear; however, it can
introduce the so-called “unwinding phenomenon,” where the feedback can un-
necessarily rotate the rigid body up to a full rotation due to ambiguities in the
quaternion representation of attitude. This behavior was discussed at length in [2]
in terms of lifts of paths and vector fields from SO(3) to S3. The results here allow
for a characterization of unwinding in terms of the projection of asymptotically
stable sets in an extended state space onto the plant state space.
4.1.1 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 × R
3 → R3 and closes a feedback
loop around (3.79) 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, (4.8)
we say that κ is consistent. Equivalently, for every R ∈ SO(3) and every ω ∈ R3,
κ(Q(R), ω) is single-valued and the feedback τ = κ(Q(R), ω) leads to a uniquely-
defined vector field on SO(3) × R3. Smooth and consistent feedback control al-
gorithms are investigated in [87] for adaptive attitude control without angular
velocity measurements and recently in [149] for attitude synchronization of a for-
mation of spacecraft where (in addition to other terms) −ηǫ is used for feedback.
116
Interestingly, this can be written as the negative gradient feedback for the poten-
tial function 14trace(I − R(q)) = 1 − η2. In such cases, there is little need for a
quaternion representation, as κ might as well be defined in terms of R ∈ SO(3),
rather than its quaternion representation.
When a quaternion-based feedback is inconsistent, that is,
∃q ∈ S3 κ(q, ω) 6= κ(−q, ω), (4.9)
the resulting feedback does not define a unique vector field on SO(3)×R3 because
for some R ∈ SO(3) the feedback κ(Q(R), ω) is multi-valued [2]. 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 the seminal paper [28]:
“In many quaternion extraction algorithms, the sign of [the ‘scalar’part of the quaternion] is arbitrarily chosen positive. This approachis not used here, instead, the sign ambiguity is resolved by choosingthe one that satisfies the associated kinematic differential equation. Inimplementation, this would probably imply keeping some immediatepast values of the quaternion.”
There is much insight to be gained from this quotation, especially when
viewed in the context of lifts under R. In particular, it suggests that incon-
sistent quaternion-based control laws require an extra quaternion memory state
to lift the measured SO(3) trajectory to S3. In this direction, we reconstruct
the discontinuous quaternion “extraction” algorithm mentioned in the quotation
above in terms of a metric and use the ensuing discussion to motivate a hybrid
algorithm for on-line lifting of a measured attitude trajectory from SO(3) to S3.
117
Let P : S3 → [0, 2] be defined as
P (q) = P (η, ǫ) = 1 − i⊤q = 1 − η. (4.10)
Note that since q ∈ S3, P satisfies the identity
P (q) =1
2(q − i)⊤(q − i) =
1
2(q⊤q − 2q⊤i + i⊤i) = 1 − i⊤q. (4.11)
Then, the function d : S3 × S
3 → [0, 2] defined as
d(q, p) = P (q−1 ⊙ p) = 1 − q⊤p (4.12)
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 ⊂ S
3, we
define the distance to Q from q (in terms of the metric d) as
dist(q,Q) = infd(q, p) : p ∈ Q. (4.13)
When the set Q in (4.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)) = mind(q, p), d(q,−p) = 1 − |q⊤p|. (4.14)
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
118
the metric d. In particular, let us define the map Φ : S3 × SO(3) S
3 as
Φ(q, R) = argminp∈Q(R)
d(q, p) = argmaxp∈Q(R)
q⊤p. (4.15)
The map Φ has some useful properties, which we summarize in the following
lemmas.
Lemma 4.1.1. Let q ∈ S3 and R ∈ SO(3). The following are equivalent.
1. Φ(q, R) is single-valued.
2. 0 ≤ dist(q,Q(R)) < 1.
3. q⊤p 6= 0 for all p ∈ Q(R) so that q⊤Φ(q, R) > 0.
4. R 6= R(π, u)R(q) for some u ∈ S2.
Proof. Throughout this proof, we let Q(R) = p,−p. By the definition of Φ in
(4.15), we see that Φ(q, R) is single-valued if and only if d(q, p) 6= d(q,−p) ⇔
1 − q⊤p 6= 1 + q⊤p ⇔ q⊤p 6= −q⊤p ⇔ q⊤p 6= 0 ⇔ 0 ≤ dist(q,Q(R)) < 1. This
provides an equivalence between 1), 2), and 3), above.
Now, let θ ∈ R and u ∈ S2 be such that R = R(θ, u)R(q). Since R =
R(±p), the fact that R satisfies (4.4) provides the following equivalent series of
expressions:
R(p) = R(θ, u)R(q)
R(p)R(q)−1 = R(θ, u)
R(p⊙ q−1) = R(θ, u).
Now, since p⊙ q−1 = (p⊤q, ∗) (i.e. the η component of p⊙ q−1 is p⊤q), the form
of R : S3 → SO(3) in (4.2) guarantees that R(p ⊙ q−1) = R(p ⊙ q−1)⊤ 6= I if
119
and only if p⊤q = 0. But R(θ, u) = R(θ, u)⊤ 6= I if and only if sin θ = 0 and
cos θ = −1, which is satisfied for θ = π. This proves the result.
Given a fixed q ∈ S3, Φ can be used to lift curves in SO(3) so long as it remains
single-valued.
Lemma 4.1.2. For every q ∈ S3, every continuous R : [0, 1] → SO(3), and
every continuous q : [0, 1] → S3 satisfying d(q, q(0)) < 1, R(q(t)) = R(t), and
dist(q,Q(R(t))) < 1 for all t ∈ [0, 1], Φ(q, R(t)) = q(t) for all t ∈ [0, 1].
Proof. Under the assumptions of the lemma, suppose further that for some t′ ∈
[0, 1], Φ(q, R(t′)) = −q(t). This implies that d(q,−q(t′)) < d(q, q(t′)) and that
d(q, q(t′)) > 1. But since q(t) is continuous and d(q, q(0)) < 1, it follows that
d(q, q(t)) is continuous and from the intermediate value theorem, there exists
t∗ ∈ [0, 1] such that d(q, q(t∗)) = d(q,−q(t∗)) = dist(q,Q(R(t∗))) = 1. This is a
contradiction.
Lemma 4.1.3. For all q ∈ S3 and R ∈ SO(3) such that dist(q,Q(R)) < 1, it
follows that
Φ(Φ(q, R), R) = Φ(q, R). (4.16)
Proof. Without loss of generality, let Q(R) = q,−q and let dist(q, q) < 1 so
that Φ(q, R) = q. Then, it follows that
Φ(Φ(q, R), R) = argminq′∈q,−q
dist(q, q′) = q,
so that Φ(Φ(q, R), R) = Φ(q, R).
120
Since a 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) S3 defined as
Φi(R) = Φ(i, R). (4.17)
Now, following 3) from Lemma 4.1.1 we see that i⊤Φi(R) > 0, that is, Φi always
chooses the quaternion with positive scalar component, so long as it is single-
valued. Further, Lemma 4.1.2 allows one to lift curves with Φi so long as R does
not cross the manifold of 180 rotations, where Φi is multi-valued, or else Φi will
produce a quaternion trajectory that is discontinuous. This can have disastrous
effects when Φi is composed with an inconsistent feedback. We now examine such
a feedback.
Let c > 0 and let Ψ : R3 → R
3 be strongly passive (see Definition 3.4.7). Now,
consider the inconsistent feedback
κ∗(q, ω) = −cǫ− Ψ(ω) = −cΛ(q)⊤i − Ψ(ω). (4.18)
In (4.18), the cǫ term introduces a rotational spring force and L(ω) introduces
damping. While this control law asymptotically stabilizes (i, 0) for the lifted
closed-loop system defined by (4.5), (3.79b), and setting τ = κ∗(q, ω), it renders
(−i, 0) an unstable equilibrium point. We now show that when composed with
Φi, the result is not robust to arbitrarily small measurement noise. In particular,
we show that a malicious noise signal can stabilize the 180 manifold.
121
Define the signum function sgn : R → −1, 0, 1 as
sgn(s) =
1 s > 0
0 s = 0
−1 s < 0.
(4.19)
Then, for 0 ≤ δ < π, consider the (discontinuous) function ∆ : SO(3) × R3 →
R(δ,S2) defined as
∆(R(θ, u), ω) =
R(−δ sgn(ω⊤u), u) cos θ < cos(π + δ)
I otherwise.
(4.20)
Note that 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. We note that (4.20) is well defined on SO(3).
Lemma 4.1.4. For every δ ∈ [0, π) and (R,ω) ∈ SO(3)×R3, ∆(R,ω) is uniquely
defined.
Proof. Suppose that R = R(θ, u) for some θ ∈ R and u ∈ S2. Clearly, ∆(R,ω) is
uniquely defined when either ω = 0 or cos θ = cos(θ + 2πZ) ≥ cos(π ± δ), since it
doesn’t depend on either R or ω in this case.
Now, suppose that cos θ < cos(π ± δ) and ω 6= 0. This implies that R 6= I,
since 0 < δ < π. Then, by Euler’s theorem on rotations, for any v ∈ S2 and φ
such that R = R(φ, v), it must be the case that u = v or u = −v (only when
122
R 6= I). Now, since R(−θ,−u) = R(θ, u), it follows that
∆(R(φ, v), ω) = R(−δ sgn(ω⊤v), v) = R(−δ sgn(ω⊤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) → S3 be any single-valued selection of Φi, that is, φi(R) = Φi(R)
for all R 6= R(π, u) and φi(R) ∈ Φi otherwise. Now, we apply the noise signal ∆ to
measurements of attitude before being converted to a quaternion for use with the
inconsistent feedback (4.18) and analyze the resulting closed-loop system. That
is, we replace q with φi(∆(R,ω)R) in the control law κ∗ defined in (4.18).
Because φi and ∆ are discontinuous, we use the notion of Krasovskii solutions
for discontinuous systems [4].
Definition 4.1.5. Let f : Rn → R
n. The Krasovskii regularization of f is the
set-valued mapping
K f(x) =⋂
ǫ>0
convf(x+ ǫB) (4.21)
where convB denotes the closed convex hull of the set B ⊂ Rn and B denotes the
unit ball in Rn. Then, given a function f : R
n → Rn, a Krasovskii solution to
x = f(x) on an interval I ⊂ R≥0 is an absolutely continuous function satisfying
x(t) ∈ K f(x(t)) (4.22)
for almost all t ∈ I.
An important property of a Krasovskii regularization is that K f(x) = f(x)
123
for every x where the function f is continuous.
Theorem 4.1.6. Let a > 0, c > 0, and δ > 0 satisfy
0 < δ <1
2
(−ac
+
√(ac
)2
+ 8
)<
√2 (4.23)
and define
B = (R(θ, u), ω) : cos θ + (1/a)ω⊤Jω ≤ cos(π + δ).
Then, the set R(π,S2) × 0 is stable and B is invariant for the Krasovskii
regularization of the closed-loop system
R = R [ω]×
Jω = [Jω]× ω − cΛ(φi(∆(R,ω)R))⊤i − L(ω).
(4.24)
Proof. See Appendix F.14.
This result shows that the discontinuity created by pairing an inconsistent
quaternion-based feedback with a discontinuous quaternion selection scheme is
susceptible to arbitrarily small measurement noise. This is because at the discon-
tinuity of Φi (on the manifold R(π,S2)), the feedback term cΛ(Φi(R))⊤i opposes
itself about the discontinuity. Then, malicious noise signals, like (4.20) can ex-
ploit the discontinuity of the vector field to induce a chattering behavior that
stabilizes R(π,S2) × 0. This is quite similar to the inconsistent feedback
κd(q, ω) = − sgn(η)ǫ− ω (when implemented with a lifted trajectory), which was
shown in [131] to exhibit extreme noise sensitivity that can destroy global attrac-
tivity properties of a desired attitude in a kinematic setting.
124
Unfortunately, the various failures of Φi have led several authors (e.g. [150])
to derive sufficient conditions on the initial conditions of (3.79) 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 Φi as a path-lifting algorithm are not a problem with the quaternion
representation–they arise because Φi is a static (i.e. memoryless) map from SO(3)
to S3, which cannot be continuous because SO(3) and S
3 are not homeomorphic.
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, there is a 2-D manifold
p ∈ S3 : p⊤q where Φ(q, R) is multi-valued. However, when the reference point
for choosing the closest quaternion is allowed to change, it is then possible to create
a dynamic algorithm for lifting a trajectory in SO(3) to S3. We now explore such
an algorithm that is hybrid in nature.
4.1.2 A Hybrid Algorithm for Dynamic Path Lifting
In this section, we present a simple dynamic algorithm for lifting a path from
SO(3) to S3. The main feature of the algorithm is a memory state q ∈ S
3 that
provides a reference point for choosing the closest quaternion with respect to d.
This memory state usually remains constant, but is updated only when necessary
to ensure that dist(q,Q(R)) < 1. The basic logic behind the algorithm is pictured
in a flow chart in Fig. 4.1.
Given a number 0 < α < 1, we define the sets Cℓ, Dℓ ⊂ SO(3) × S3 as
Cℓ = (q, R) ∈ SO(3) × S3 : dist(q,Q(R)) ≤ α
Dℓ = (q, R) ∈ SO(3) × S3 : dist(q,Q(R)) ≥ α.
(4.25a)
125
Measure R
Convert R
to Q(R)
Is q far
from
Q(R)?
Output
q ∈ Q(R)
closest to q
Update q
to closest
q ∈ Q(R)
no
yes
Figure 4.1. Flow chart for dynamic path-lifting from SO(3) to S3.
Then, we propose the hybrid path-lifting algorithm as
Hℓ =
˙q = 0 (q, R) ∈ Cℓ
q+ ∈ Φ(q, R) (q, R) ∈ Dℓ,
(4.25b)
with continuous input R : R≥0 → SO(3) and output
q = Φ(q, R). (4.25c)
We analyze the properties of the hybrid path-lifting algorithm by analyzing the
solutions of an autonomous system that generates a wide class of useful trajectories
in SO(3) as input to Hℓ. We note that the time projection of a hybrid arc x :
domx→ Rn is denoted by the symbol x↓t and is defined in Appendix A.
126
Theorem 4.1.7. Let α ∈ (0, 1). The hybrid system
˙q = 0
R ∈ R [MB]×︸ ︷︷ ︸(q, R) ∈ Cℓ
q+ ∈ Φ(q, R)
R+ = R︸ ︷︷ ︸(q, R) ∈ Dℓ
(4.26a)
and its output
q = Φ(q, R) (4.26b)
have the following properties:
1. All maximal solutions are complete.
2. The time between jumps is bounded below by 2α/M .
3. The function q↓t : R≥0 → S3 is continuous and satisfies R(q↓t (t)) =
R↓t (t).
Proof. See Appendix F.15
From Theorem 4.1.7 and its proof, one could also append dynamical equations
for the output q(t, j) = Φ(q(t, j), R(t, j)) to (4.26a) as q ∈ 12q⊗ν(MB) and q+ = q
(note that one should actually write ω ∈MB, q = 12q ⊗ ν(ω), and R = R [ω]×, so
that q and R are acted on by the same angular velocity).
With a hybrid algorithm for path lifting in place, we consider the feedback in-
terconnection of (3.79) with the hybrid path-lifting system and a quaternion-based
hybrid controller. Consider the hybrid controller Hc, that takes a measurement
127
y ∈ S3 × R
3 as input, has a state ξ ∈ X ⊂ Rn, has dynamics
Hc
ξ ∈ Fc(y, ξ) (y, ξ) ∈ Cc
ξ+ ∈ Gc(y, ξ) (y, ξ) ∈ Dc,
(4.27)
and produces a continuous torque output κ : S3 ×R
3 ×X → R3. We assume that
Hc satisfies the hybrid basic conditions as well.
Often, quaternion-based controllers are analyzed using the lifted attitude dy-
namics, defined by equations (4.5) and (3.79b), thus neglecting any auxiliary
lifting system. The next theorem essentially justifies this approach by relating so-
lutions of the whole closed-loop system (including the hybrid path-lifting system)
to a reduced system that has the quaternion-based hybrid controller in feedback
with the lifted system defined by (4.5) and (3.79b).
Before stating the theorem, we define two closed-loop systems. The first
closed-loop system is the feedback interconnection of (3.79) with the series in-
terconnection of Hℓ and Hc. This yields the system H1 with state (R,ω, q, ξ) ∈
SO(3) × R3 × S
3 ×X defined as
R = R [ω]×
Jω = [Jω]× ω + κ(Φ(q, R), ω, ξ)
˙q = 0
ξ ∈ Fc(Φ(q, R), ω, ξ)︸ ︷︷ ︸(q, R) ∈ Cℓ, (Φ(q, R), ω, ξ) ∈ Cc
R+ = R
ω+ = ω
q+ ∈ Φ(q, R)
ξ+ = ξ︸ ︷︷ ︸(q, R) ∈ Dℓ,
R+ = R
ω+ = ω
q+ = q
ξ+ ∈ Gc(Φ(q, R), ω, ξ)︸ ︷︷ ︸(Φ(q, R), ω, ξ) ∈ Dc.
(4.28)
In (4.28), we mean that flows can only occur when flows can occur for both
the controller and lifting subsystems. Jumps can occur when either the con-
128
troller or lifting subsystems can jump. It may be possible that both (q, R) ∈ Dℓ
and (Φ(q, R), ω, ξ) ∈ Dc are satisfied at the same “time,” i.e. Dℓ ∩ Dc 6= ∅,
in which case, either jump is possible. That is, either q+ ∈ Φ(q, R) or ξ+ ∈
Gc(Φ(q, R), ω, ξ) (the other states do not change). This is necessary to ensure
that the closed-loop system satisfies the hybrid basic conditions.
Now, we define the feedback interconnection of the lifted attitude system and
the hybrid controller Hc. This yields the reduced system H2 with state (q, ω, ξ) ∈
S3 × R
3 ×X defined as
q =1
2q ⊗ ν(ω)
Jω = [Jω]× ω + κ(q, ω, ξ)
ξ ∈ Fc(q, ω, ξ)︸ ︷︷ ︸
(q, ω, ξ) ∈ Cc
q+ = q
ω+ = ω
ξ+ ∈ Gc(q, ω, ξ)︸ ︷︷ ︸(q, ω, ξ) ∈ Dc.
(4.29)
For the coming theorem, we adopt the economical notation
(x1(t, j), . . . , xk(t, j)) = (x1, . . . , xk)|(t,j).
Lemma 4.1.8. For every solution (R1, ω1, q1, ξ1) : E1 → SO(3)× R3 × S
3 ×X to
(4.28) such that dist(q1,Q(R1))|(0,0) < 1, there exists a solution (q2, ω2, ξ2) : E2 →
S3 ×R
3 ×X to (4.29) such that for every (t, j) ∈ E1, there exists j′ ≤ j such that
(t, j′) ∈ E2 and
(R1,Φ(q1, R1), ω1, ξ1)|(t,j) = (R(q2), q2, ω2, ξ2)|(t,j′). (4.30)
Conversely, for every solution (q2, ω2, ξ2) : E2 → S3 × R
3 ×X to (4.29), there
129
exists a solution (R1, ω1, q1, ξ1) : E1 → SO(3) × R3 × S
3 × X to (4.28) such that
dist(q1,Q(R1))|(0,0) < 1 and for every (t, j′) ∈ E2, there exists j ≥ j′ such that
(t, j) ∈ E1 and (4.30) above is satisfied.
Proof. See Appendix F.16.
Now, we can state our main results.
Theorem 4.1.9. A compact set Aℓ ⊂ S3 × R
3 × X is stable (unstable) for the
system (4.29) if and only if the compact set
A = (R,ω, q, ξ) : (Φ(q, R), ω, ξ) ∈ Aℓ, dist(q,Q(R)) ≤ α (4.31)
is stable (unstable) for the system (4.28). Moreover, Aℓ is attractive from Bℓ ⊂
S3 × R
3 ×X if and only if A is attractive from
B = (R,ω, q, ξ) : (Φ(q, R), ω, ξ) ∈ Bℓ, dist(q,Q(R)) < 1. (4.32)
Proof. See Appendix F.17.
Theorem 4.1.9 is a “separation principle” in character, in the sense that the
control designer can design a feedback controller for the lifted system defined by
equations (4.5), (3.79b) and then expect the results to translate directly to the
actual system when a hybrid-dynamic path-lifting system like Hℓ is used to lift the
trajectory in SO(3) to S3. However, this type of behavior is not always desired!
When the set A above is not designed correctly, the resulting closed-loop system
can exhibit the symptom of unwinding, where the controller can unnecessarily
rotate the rigid body through a full rotation.
130
4.1.3 The Unwinding Phenomenon
In Theorem 4.1.6, we showed how a particular class of inconsistent control laws
(4.18) is not robust to arbitrarily small measurement noise when the static lifting
algorithm Φi is used to lift paths from SO(3) to S3. In light of Section 4.1.2 and
Theorem 4.1.9, one might ask how the control law (4.18) behaves in feedback with
the hybrid path lifting system Hℓ. The answer is that it induces “unwinding.”
Though the behavior has been documented for decades (see e.g. [86]), the term
“unwinding” was perhaps first coined by [2] to describe a symptom of controllers
that are designed for topologically complex manifolds using local coordinates in a
covering space. In particular, the ambiguity arising from the quaternion represen-
tation can cause inconsistent quaternion-based controllers to unnecessarily rotate
the rigid body through a full rotation. This behavior can be induced by incon-
sistent control laws that are often designed to stabilize a single point in S3 while
leaving the antipodal point unstable, despite the fact that they both correspond
to the same physical orientation. This behavior was elegantly described in [2] in
terms of the lifts of paths and vector fields. We now provide a different character-
ization in terms of projections of asymptotically stable sets onto the plant state
space.
For the following Lemma, we recall that for some set Z ⊂ X×Y , its projection
onto X is defined as
ProjX
Z = x ∈ X : ∃y ∈ Y such that (x, y) ∈ Z. (4.33)
Now, we characterize how a set of interest in the covering space (including extra
dynamic states of the controller) appears when projected to the actual plant state
131
S3 × R
3 ×X SO(3) × R3 × S
3 ×X
S3 × R
3 SO(3) × R3
Θ
ProjS3×R3
P
ProjSO(3)×R3
Figure 4.2. Commutative diagram of set projections.
space SO(3) × R3. In this direction, we define an operator Θ : S
3 × R3 × X
SO(3) × R3 × S
3 ×X that relates a set Aℓ to (4.31) as
Θ(Aℓ) = (R,ω, q, ξ) : (Φ(q, R), ω, ξ) ∈ Aℓ, dist(q,Q(R)) ≤ α. (4.34)
Further, we define the covering projection P : S3 × R
3 → SO(3) × R3 as
P(Apℓ) = (R(q), ω) : (q, ω) ∈ Ap
ℓ. (4.35)
Lemma 4.1.10. The maps P and Θ satisfy
P ProjS3×R3
= ProjSO(3)×R3
Θ, (4.36)
that is, the diagram Fig. 4.2 commutes.
Proof. Let Aℓ ⊂ S3 × R
3 × X and define Apℓ = ProjS3×R3 Aℓ, A = Θ(Aℓ). We
132
have, by definition,
Apℓ = (q, ω) : ∃ξ ∈ X , (q, ω, ξ) ∈ Aℓ
P(Apℓ) = (R(q), ω) : ∃ξ ∈ X (q, ω, ξ) ∈ Aℓ
A = (R,ω, q, ξ) : (Φ(q, R), ω, ξ) ∈ Aℓ, dist(q,Q(R)) ≤ α
ProjSO(3)×R3
A = (R,ω) : ∃(q, ξ) ∈ S3 ×X (Φ(q, R), ω, ξ) ∈ Aℓ, dist(q,Q(R)) ≤ α
Then, it follows that for a given (R,ω) ∈ SO(3)×R3, the existence of (q, ξ) ∈ S
3×X
satisfying (Φ(q, R), ω, ξ) ∈ Aℓ and dist(q,Q(R)) ≤ α is equivalent to the existence
of (q, ξ) ∈ S3 × X such that (q, ω, ξ) ∈ Aℓ and R = R(q). This implies that
P(Apℓ) = ProjSO(3)×R3 A and so, (4.36) is satisfied.
We lend the symbol Π to the composition in (4.36), that is, we let
Π = P ProjS3×R3
= ProjSO(3)×R3
Θ. (4.37)
Lemma 4.1.10 clarifies the purpose of controllers designed in the covering space.
Suppose it is desired to asymptotically stabilize some set Ap ⊂ SO(3) × R3 (in
the sense that Ap is the projection of an asymptotically stable set in the extended
state space including controller states). If the dynamic controller (4.27) is de-
signed to stabilize Aℓ ⊂ S3 × R
3 × X in the extended covering state space (as in
Lemma 4.1.10), one would obviously desire that Π(Aℓ) = Ap, but this should not
be the only requirement. In fact, one should design Aℓ such that
ProjS3×R3
Aℓ = (q, ω) : (R(q), ω) ∈ Π(Aℓ) = P−1(Π(Aℓ)), (4.38)
in which case, we say that Aℓ is consistent. That is, the controller should stabilize
133
all points in the lifted state space whose projections under P map to a point in
Ap. When (4.38) is not satisfied, there may be points in the plant state space
whose stability relies on the controller’s quaternion representation of attitude.
Lemma 4.1.11. Let Aℓ ⊂ S3 × R
3 × X . If Aℓ is not consistent, that is, it does
not satisfy (4.38), then there exists (R,ω) ∈ Π(Aℓ) and q ∈ Q(R) such that for
every q ∈ S3 satisfying d(q, q) ≤ α and every ξ ∈ X , (R,ω, q, ξ) /∈ Θ(Aℓ).
Proof. If Aℓ does not satisfy (4.38), then, clearly, there exists (R,ω) ∈ SO(3)×R3
and q ∈ Q(R) such that (q, ω) /∈ ProjS3×R3 Aℓ. Then, by definition of the Proj
operator, for every ξ ∈ X , (q, ω, ξ) /∈ Aℓ. Finally, Lemma 4.1.1 asserts that
Φ(q, R) = q whenever dist(q, q) < 1 and by definition of Θ, it follows that for
every q ∈ S3 satisfying d(q, q) ≤ α < 1, that (R,ω, q, ξ) /∈ Θ(Aℓ).
Lemma 4.1.11 tells us that when dynamic controllers are designed in an ex-
tended covering space (including controller states) to stabilize some compact set,
if the compact set is not designed correctly, there may be attitudes whose sta-
bility (in the set projection sense above) depends on the controller’s quaternion
representation. This is hardly a desired quality.
Unfortunately, many designs proposed in the literature (see e.g. [28, 86–90,
149–155]) do not satisfy (4.38). Instead, many designs, like the inconsistent feed-
back (4.18), render the point (i, 0) ∈ S3×R
3 a stable equilibrium, while rendering
(−i, 0) ∈ S3 an unstable equilibrium. In this situation, Π((i, 0)) = Π((−i, 0)) =
(0, I). When seen through the map Θ, this essentially creates two distinct, dis-
connected equilibrium sets in the extended state space, SO(3)×R3 × S
3 with one
set asymptotically stable and the other, unstable. However, both equilibrium sets
project to (I, 0). So, the desired attitude can be stable, or unstable, depending
134
on the controller’s knowledge of the quaternion representation of R!
In the coming sections, we show how a hybrid scheme can achieve a global
asymptotic stability result that is robust to measurement noise while avoiding
unwinding. The results are mainly an extension of [131] and can also be applied
to 6-DOF rigid bodies [156] and synchronization of a network of rigid bodies [157].
Several works also suggest the use of a memoryless (i.e. X = ∅) discontinuous
quaternion-based feedback using the term − sgn(η)ǫ. Such methods have been
suggested in [86,152,158–161] and certainly do avoid the unwinding phenomenon;
however, these control laws are susceptible to noise sensitivity like the result in
Theorem 4.1.6. We show why this is the case in the next section in an idealized
kinematic setting.
4.2 Kinematic Attitude Stabilization
To further elucidate the topological issues of quaternion-based attitude control,
in this section we consider the problem of designing a globally asymptotically
stabilizing control law for the identity element of SO(3) using a unit quaternion
representation and the angular rate as the control variable. Here, we focus only
on direct control of the kinematics–from where the topological obstructions arise.
One might see (3.79) as a singular perturbation of the kinematics or as the start
of a backstepping procedure (see e.g. [131, 161]). The following discussion is of
independent interest when quaternion filters are used as in [90,159] (as well as in
this dissertation). We remark that the following discussion applies to designing a
torque feedback as well, which we address in the coming sections. It is helpful to
note that this connection often arises because Lyapunov functions for the system
135
with angular velocity dynamics are often built upon Lyapunov functions that
apply to the kinematic setting.
Our goal is to design a velocity feedback to stabilize q = (η, ǫ) = ±i = (±1, 0)
for the system (4.5). Suppose one overlooks the double cover of SO(3) by S3 and
uses the Lyapunov function (see, for example, [28,86–90,152])
V1(q) = 2(1 − η) = (1 − η)2 + ǫ⊤ǫ (4.39)
in an attempt to derive a Lyapunov-based state-feedback law that achieves the
global stabilization task. It is obvious that V1(q) = 0 if and only if q = i and that
V1(S3 \ i) > 0. Note further that V1 achieves its maximum over S
3 at q = −i.
Then, suppose one designs the feedback ω = φ1(q) := −ǫ so that for all q ∈ S3
⟨∇V1(q),
12q ⊙ ν(φ1(q))
⟩= −ǫ⊤ǫ,
which is negative on S3 \ ±i, that is, almost every point in S
3. This particu-
lar choice of feedback law generates two closed-loop equilibrium points: q = −i
(unstable) and q = i (stable). Since both +i and −i represent the same point
in SO(3), the desired attitude can be stable or unstable, depending on the con-
troller’s knowledge of the quaternion representation! In fact, φ1(q) = −φ1(−q),
so this control law is doubly defined for each point in SO(3). Note that using
V1(−q) and the control law φ1(−q) = ǫ has much the same effect on stability by
stabilizing −i and destabilizing +i. This point is illustrated in Figure 4.3 and
discussed further in [2, 28, 86]. In particular, [2] discusses how this control law
leads to unwinding.
136
To avoid unwinding, one can employ the Lyapunov function
V2(q) = 1 − η2 = ǫ⊤ǫ =1
4trace(I −R(q)).
Clearly, V2 satisfies V2(q) = 0 if and only if q = ±i and V2(S3 \ ±i) > 0. Note
that V2(q) = V2(−q) and that V2 achieves its maximum value on
M = q ∈ S3 : η = 0,
which is the connected two-dimensional submanifold of S3 corresponding to atti-
tudes that are 180 from the desired attitude about some rotation axis. That is,
R(M) = R ∈ SO(3) : R = R⊤ 6= I. This choice of Lyapunov function naturally
leads to the control law ω = φ2(q) := −ηǫ. Note that φ2(−q) = φ2(q) and that
φ2(q) = 12ψ(R(q)). With this control law, we have
⟨∇V2(q),
12q ⊙ ν(φ2(q))
⟩= −η2ǫ⊤ǫ,
which is negative on S3\(±i∪M). Further analysis shows that M is an unstable
manifold and ±i is stable, so, the stability guaranteed by φ2 is almost global, in
the sense that the unstable manifold M has measure zero in S3. Moreover, since
the vector field resulting from φ2 vanishes on M, solutions can take an arbitrarily
long time to converge to ±i as initial conditions are taken closer and closer to M.
To eliminate the undesired equilibrium manifold M, some authors (e.g. [86,
159–163]) have used discontinuous state feedback possibly motivated by the locally
137
Lipschitz Lyapunov function
V3(q) = 2(1 − |η|) =
(1 − η)2 + ǫ⊤ǫ η ≥ 0
(1 + η)2 + ǫ⊤ǫ η < 0
, (4.40)
which satisfies V3(±i) = 0 and V3(S3 \ ±i) > 0. Consider the control law
ω = φ3(q) := − sgn(η)ǫ, where sgn(η) =
−1 η < 0
1 η ≥ 0.
(4.41)
It achieves global asymptotic stability of ±i in the sense of classical solutions
to differential equations. However, this stability property is not robust to arbi-
trarily small measurement noise. In fact, [131] appeals to [132, Theorem 2.6] to
assert the existence of an arbitrarily small piecewise-constant noise signal that,
for initial conditions arbitrarily close to the discontinuity, keeps the state near the
discontinuity, (and away from ±i) for all time. Note that the discontinuity lies
at η = 0, which corresponds to attitudes that are a 180 rotation from the desired
equilibrium.
This point can also be seen through the study of the generalized solutions to
the resulting discontinuous system (see [4,164]). With the control law (4.41), the
closed-loop system becomes
q =1
2q ⊙ ν(− sgn(η)ǫ) =: fd(q) q ∈ S
3, (4.42)
where fd is discontinuous at η = 0. We use the following solution concept for
solutions to (4.42).
138
ǫ⊤ǫ1
−1 10 η
ω(q) = − sgn(η)ǫ
ω(q) = −ǫ
Noise-induced chattering
Figure 4.3. Quaternion-based attitude control: unwinding produced by continu-ous control and non-robust global asymptotic stability produced by discontinuouscontrol. Arrows indicate the direction of rotation – towards η = 1 or η = −1.
Definition 4.2.1. A Caratheodory solution to the system x = f(x), x ∈ Rn, on
an interval I ⊂ R≥0 is an absolutely continuous function x : I → Rn that satisfies
x(t) = f(x(t)) for almost every t ∈ I. Given a measurable function e : I → Rn, a
Caratheodory solution to the system x = f(x + e) on I is a function x : I → Rn
that satisfies x(t) = f(x(t) + e(t)) for almost all t ∈ I.
The solution obtained by taking the limit of a sequence of Caratheodory so-
lutions xi∞i=1 to x = f(x + ei) with measurable functions ei∞i=1 having the
property that, for each t, limi→∞ ei(t) = 0 is called a Hermes solution to x = f(x);
see [4]. The function ei plays the role of measurement noise. As shown in [4, Corol-
lary 5.6], when f is locally bounded, every Hermes solution to the system x = f(x)
is a solution to its Krasovskii regularization [165].
The Krasovskii regularization of (4.42), which in this case coincides with its
Filippov regularization [5], is given by
q ∈ K fd(q) :=⋂
δ>0
convfd((q + δB) ∩ S3) q ∈ S
3,
139
where conv denotes the closed, convex hull. Let sgn : R [−1, 1] be the set-
valued mapping
sgn(s) =
sgn(s) |s| > 0
[−1, 1] s = 0.
Then, the regularized closed-loop system can be written as
q ∈ 1
2q ⊙ ν (−sgn(η)ǫ) q ∈ S
3.
Then, for every q ∈ M, it follows that 0 ∈ fd(q). This indicates that M := q ∈
S3 : η = 0 is a weak equilibrium set of the regularized system. The equivalence
result between Krasovskii and Hermes solutions indicated above suggests that,
when measurement noise is present, solutions to the unregularized system can
approximate such an equilibrium solution. This is shown in the following theorem,
which asserts that for initial conditions arbitrarily close to M, measurement noise
e of arbitrarily small size can keep solutions to (4.42) close to M for all time.
Theorem 4.2.2. Let φ3(q) = − sgn(η)ǫ. Then, for each α > 0 and each q0 ∈
(M+αB)∩S3, there exist a measurable function e : [0,∞) → αB and a Caratheodory
solution q : [0,∞) → S3 to q = 1
2q ⊙ ν (φ3(q + e)) satisfying q(0) = q0 and
q(t) ∈ (M + αB) ∩ S3 for all t ∈ [0,∞).
Proof. This result can be seen as a consequence of [4, Corollary 5.6] or [132,
Theorem 2.6]; however, we provide an alternative proof by explicitly constructing
a noise signal e. Let α > 0 and define e to be the function of the state e =
140
(−α sgn(η), 0). Then, it follows that
q =
12q ⊙ ν(sgn(η)ǫ) 0 ≤ |η| ≤ α
12q ⊙ ν(− sgn(η)ǫ) |η| > α.
Solutions to this system yield a measurable function e : [0,∞) → αB. We define
VM(q) = η2, which has the property that VM(S3 \M) > 0 and VM(M) = 0. It
follows that, for 0 ≤ |η| ≤ α,
⟨∇VM(q), 1
2q ⊙ ν(− sgn(η − α sgn(η))ǫ)
⟩= −|η|ǫ⊤ǫ.
By standard Lyapunov analysis results, this proves the theorem.
Interestingly, this result directly contradicts the assertion of [160] that defining
the sgn function without a zero value at zero, as we have in (4.41), somehow avoids
the zero equilibrium created by a Filippov regularization in this case.
While some might dismiss this development since the regularization-induced
equilibrium set has measure zero in the space of unit quaternions, the fact remains
that such a discontinuous control produces global asymptotic stability without ro-
bustness. One can imagine that oscillating noise could, at the very least, degrade
performance as a fickle discontinuous feedback changes its “mind” on which way
to rotate. Referring to Figure 4.3 one can visualize how noise affecting the mea-
surement of η can cause chattering at the discontinuity (η = 0). We now show
how one can add decisiveness with a hysteretic memory state encapsulated in a
hybrid feedback.
To solve the various issues in the control laws above, we propose the strategy
141
Hysteresisregion
ǫ⊤ǫ
1
h = 1h = −1
−1 10−δ δ η
Figure 4.4. Hysteretic regulation of unit quaternions to the set ±i. The statespace for η and ǫ⊤ǫ is represented by the semicircle. The value of h determinesif q = (η, ǫ) should be regulated to i or −i. The parameter δ determines thehysteresis half-width.
suggested in Figure 4.4: a dynamic feedback that uses a memory state to select
which pole of S3 to regulate in a hysteretic fashion. In this direction, let δ ∈
(0, 1) denote the hysteresis half-width and let sgn : R −1, 1 be the outer
semicontinuous set-valued map
sgn(s) =
sgn(s) |s| > 0
−1, 1 s = 0.
(4.43)
Consider the feedback ω = φ4(q, h) = −hǫ, where h ∈ −1, 1 and the dynamics
of h are
h = 0 (q, h) ∈ hη ≥ −δ
h+ ∈ sgn(η) (q, h) ∈ hη ≤ −δ,
where, for consistency with the coming sections, we wrote the update of h using
sgn instead of writing h+ = −h. In this feedback, h selects the desired rotation
direction to move q to either +i or −i. The inequalities dictating whether h
remains constant or changes value are designed to detect a sign mismatch, which
142
indicates whether the feedback −hǫ is pulling in the direction of the shortest
rotation to align q with ±i (hη ≥ 0) or a longer rotation (hη ≤ 0). However, note
that when hη ≤ −δ, a “significant” amount of sign mismatch is required to flip
the value of h to match the sign of η. This is the mechanism that enables the
hysteretic switching of h.
In some sense, the hybrid feedback φ4 generalizes the feedbacks φ1 and φ3,
as the variable h enters the feedback like sgn(η) enters the feedback in φ3. Also,
when h = 1, the feedback is the same as φ1 and when h = −1, the feedback is
the same as −φ1. The parameter δ manages a trade-off between robustness to
measurement noise and a small amount of unwinding. When δ ≥ 1, the value of
the logic variable cannot change and our strategy reduces to a static feedback that
induces unwinding. When δ = 0, the resulting control becomes discontinuous.
This similarity is also present in the Lyapunov analysis. For notational con-
venience, we let
f(q, h) =[(
12q ⊙ ν(φ4(q, h))
)⊤h]⊤
g(q, h) =[q⊤ sgn(η)
]⊤.
Now, we consider the Lyapunov function
V4(q, h) = 2(1 − hη) = V1(hq),
which satisfies V4(q, h) = 0 if and only if q = hi, while it is positive otherwise.
Since h2 = 1, it follows that
〈∇V4(q, h), f(q, h)〉 = −ǫ⊤ǫ,
143
which is negative whenever hη ≥ −δ and q 6= hi. That is, V4 decreases along flows
of the closed-loop system. Furthermore, we have that, for every (q, h) ∈ hη ≤
−δ and every (q, h′) ∈ g(q, h),
V4(q, h′) − V4(q, h) = 4hη ≤ −4δ < 0.
That is, V4 decreases over jumps of the closed-loop system. This analysis implies
that the set (q, h) ∈ S3 ×−1, 1 : q = hi is globally asymptotically stable for
the closed-loop system since V4 is strictly decreasing along all trajectories, except
of those starting from the set q = hi.
One can view this approach as using multiple Lyapunov functions (and their
associated gradient-based feedbacks), where the variable h selects whether to use
the Lyapunov function V1(q) or V1(−q) (and its associated feedback). The flow and
jump sets ensure that we only switch our control law when one Lyapunov function
is sufficiently smaller than the other. The jump map (h+ ∈ sgn(η)) ensures that
we pick the smaller of the two Lyapunov functions (and use the control law they
generate). Finally, we note that the hysteresis makes the scenario described in
Theorem 4.2.2 impossible. In the coming sections, we will find that these ideas
extend naturally to the dynamic setting where ω is a state variable and torque is
an input.
4.3 Quaternion-Based Tracking Control
In this section, we extend the hybrid controller for kinematic stabilization to
the system (3.79) in a tracking scenario with full state feedback. Two output-
144
feedback tracking scenarios are also addressed: when only attitude measurements
are available for feedback and when the angular velocity measurement is corrupted
by a constant bias.
4.3.1 Tracking Error Dynamics
The control objective is to design τ so that R and ω asymptotically track a
desired bounded reference trajectory. To pose this tracking problem in terms of a
compact attractor for an autonomous system, we utilize an exogenous system to
generate any useful reference trajectory. Letting M > 0 and Ω ⊂ R3 be compact,
we generate such desired reference trajectories with the system
Rd = Rd [ωd]×
ωd ∈MB
(Rd, ωd) ∈ SO(3) × Ω, (4.44)
where MB denotes the closed ball of radius M . Since 0 ∈ MB, SO(3) × Ω is
always viable (see [6]), that is, there always exists a flow direction contained in
the right-hand side of (4.44) that steers (Rd, ωd) within SO(3) × Ω. Then, since
SO(3)×Ω is compact, every maximal solution to (4.44) is complete [77, Proposition
2.4]. Additionally, any possible solution component ωd of this system is Lipschitz
continuous with Lipschitz constant M , but not necessarily differentiable. This
formulation also allows for non-periodic ωd and includes the regulation problem as
well. We will assume that ωd can be measured. Note that the inclusion formulation
of the generator system (4.44) is autonomous; hence, invariance principles for
hybrid systems to assert convergence of solutions can be used.
To express the difference between the reference trajectory, (Rd, ωd), and the ac-
145
tual rigid body trajectory, (R,ω), we employ a common coordinate transformation
that resolves the angular velocity error in the body frame (see [90,159,166,167]).
In this direction, we define the attitude error coordinates R = R⊤d R ∈ SO(3).
Using the cross product properties (E.1a) and (E.1j), it follows that the attitude
error system evolves according to
˙R = R[ω − R⊤ωd
]× . (4.45)
We define
ωd = R⊤ωd, ω = ω − ωd. (4.46)
Then, defining
Ξ(ω, ωd) := [Jω]× + [Jωd]× − ([ωd]× J + J [ωd]×),
following [90,159,166,167] yields the error kinematic and dynamic equations
˙R = R [ω]×
J ˙ω = Ξ(ω, ωd)ω − [ωd]× Jωd − JR⊤ωd + τ
(R, ω) ∈ SO(3) × R
3. (4.47)
The salient features of this transformation are that Ξ(ω, ωd) is skew symmetric
for every value of its argument and that, assuming the inertia matrix J is known,
[ωd]× Jωd and JR⊤ωd can be inferred through measurement of R. We define
the feedforward torque term to be used in the subsequently developed hybrid
controllers as
τff (q, ωd, ωd) = JR(q)⊤ωd + [ωd]× Jωd. (4.48)
The error system (4.47) can be expressed in terms of unit quaternions as well.
146
Letting qd = (ηd, ǫd) ∈ S3 denote the desired quaternion, where qd = 1
2qd ⊙ ν(ωd),
we define the tracking error quaternion as q = q−1d ⊙ q = (η, ǫ). Then, performing
the same coordinate transformation, ωd = R(q)⊤ωd, it follows that
˙q =1
2q ⊙ ν(ω). (4.49)
Finally, we let xp = (q, ω, qd, ωd), xp = (q, ω, qd, ωd), and Xp = S3 × R
3 × S3 ×
Ω, so that, with this formulation, the tracking objective is to robustly, globally
asymptotically stabilize the compact set
Ap = xp ∈ Xp : R(q) = I, ω = 0 = xp ∈ Xp : q = ±i, ω = 0
for the system
˙xp =
˙q
˙ω
qd
ωd
∈ Fp(xp, τ) :=
12q ⊙ ν(ω)
fω(xp, τ)
12qd ⊙ ν(ωd)
MB
xp ∈ Xp, (4.50)
where
fω(xp, τ) = J−1(Ξ(ω, ωd)ω − [ωd]× Jωd − JR(q)⊤ωd + τ
).
4.3.2 Hybrid Attitude Tracking Controller
In this section, we address the following three scenarios:
P1) measurements of q and ω are available;
147
P2) only measurements of q are available;
P3) measurements of q and ω+ b are available, where b is an unknown constant
bias.
In this work, we extend the method presented in [131] (and in Section 4.2) to the
tracking problem in the cases above.
Our solution to 1) is an extension of [131] and the hybrid feedback of Section
4.2 to the tracking problem, for which we employ the error coordinates of Section
4.3.1 plus feedforward compensation. It uses a single binary logic variable as
described in Figure 4.4 to achieve global asymptotic attitude tracking that is
robust to measurement noise.
To solve 2), we build on our solution to 1) and (quite directly) employ the ideas
of [90]. Here, our controller uses an extra quaternion filter that acts to provide
damping that would otherwise be accomplished by negative feedback of angular
velocity error terms. In [90], a Lyapunov function based on (4.39) is used for both
the tracking error quaternion and the extra quaternion filter state. This causes
unwinding as discussed in the recent work [168]. We solve this issue by employing
another binary logic variable for the quaternion filter and implementing the ideas
in Figure 4.4.
Finally, the solution to 3) uses the ideas of [159], which, based on an extension
of the observer design [162], uses a coupled quaternion filter similar to the one
in [90] and a bias observer to achieve asymptotic tracking. Unlike [90], the works
[159] and [162] use a Lyapunov function based on (4.40) and avoid unwinding,
but introduce measurement noise sensitivity explained in Theorem 4.2.2. Here,
we directly build on our solution to 2) by adding a bias observer. In fact, our
148
solution to 2) can be seen as a special case of our solution to 3) without the bias
observer and extra feedback term.
To summarize, all of our proposed controllers are dynamic and employ hysteretically-
switched logic variables for each quaternion error state as described in Section 4.2.
The solutions to 2) and 3) employ an additional quaternion filter to achieve damp-
ing and the solution to 3) uses an additional bias observer. We note that 2) has
been solved using a linear filter (in place of the quaternion filter) in [89] using a
quaternion representation and in [169] using Rodrigues and modified Rodrigues
parameters. It may be possible to extend these methods to solve 3). Because the
present paper is primarily concerned with the quaternion representation, we have
chosen to employ quaternion filters, although the use of a linear filter would obvi-
ate the need for an additional logic variable to mitigate the topological difficulties.
P1) Full state measurements
In this section, we assume the output of the system (4.50) is given as
y1 = (q, ω). (4.51)
The proposed controller has a single state, h ∈ −1, 1. It is parametrized by a
gain c > 0, a strongly passive function (see Definition 3.4.7) Ψ : R3 → R
3, and
the hysteresis half-width δ ∈ (0, 1).
To indicate where measurement noise enters the closed-loop systems, we will
make several divisions of the state space by notation. As a notational guide, a bar
or tilde embellishment indicates an error state, a numbered subscript indicates
the problem (e.g. i = 1, full state measurements), a p subscript indicates the
149
plant state and a c subscript indicates the controller state. Then, we define the
controller state and state space as xc,1 := h ∈ Xc,1 := −1, 1. For consistency
in indexing and notation throughout the following sections, we let xp,1 := xp,
xp,1 := xp, Xp,1 := Xp, xc,1 := h, x1 := (xp,1, xc,1), x1 := (xp,1, xc,1), and finally,
X1 := Xp,1 ×Xc,1. Finally, we denote xk,1 = (qd, ωd, xc,1) as the “known” states.
With this notation, the goal is now to achieve global asymptotic stability of
the compact set
A1 =x1 ∈ X1 : q = hi, ω = 0
. (4.52)
That is, q should be regulated to hqd and and ω should be regulated to ωd. Note
that ProjXpA1 = Ap, where ProjY X is the projection of the set X onto the set
Y .
Our hybrid controller is defined as
˙h = 0 x1 ∈ C1 := x1 ∈ X1 : hη ≥ −δ
h+ ∈ sgn(u1) x1 ∈ D1 := x1 ∈ X1 : hη ≤ −δ,(4.53)
where the vector of inputs U1 = (τ, u1) is specified by defining
τfb,1(y1, xk,1, ωd) = −chǫ− Ψ(ω), κ1(y1, xk,1) = η, (4.54)
and setting U1 = K1 = (τff + τfb,1, κ1).
The torque feedback term τfb,1 is quite similar to other works. The “propor-
tional” term −chǫ essentially implements a spring force that pulls the rigid body
along the axis of rotation. As discussed in Section 4.2, h determines the rotational
orientation of the spring force and that because of the hysteresis, this spring force
150
may sometimes pull in the direction of the longer rotation. Damping is provided
by −Ψ(ω). The entire torque input is comprised of the feedback part τfb,1 and the
feedforward part τff,1, which is model dependent when either ωd or ωd is nonzero.
P2) Only attitude measurements available
In this section, we assume the output of the system (4.50) is given as
y2 = q. (4.55)
Here, we append two states to the hybrid controller outlined in Section 4.3.2:
a quaternion filter state, q ∈ S3, and an accompanying hysteresis variable, h.
The control law in this instance is additionally parametrized by a gain c > 0
and a matrix gain K = K⊤ > 0. The state and state space of the controller is
xc,2 = (xc,1, h, q) ∈ Xc,2 := Xc,1×−1, 1×S3. We define an error state describing
the quaternion error between q and q as
q = q−1 ⊙ q. (4.56)
Now, we let xp,2 := xp,1, Xp,2 := Xp,1, xc,2 := (xc,1, h, q), x2 := (xp,2, xc,2), x2 :=
(xp,2, xc,2), and finally, X2 = Xp,2×Xc,2. Now, we can state the goal of our proposed
controller as globally asymptotically stabilizing the compact set
A2 = x2 ∈ X2 : x1 ∈ A1, q = hi. (4.57)
As before, h decides to regulate q to q or −q and we have the property that
ProjXpA2 = Ap.
151
For this task, we propose the hybrid controller (again expressed in terms of
inputs)
˙h
˙h
˙q
=
0
0
12q ⊙ ν(u2)
x2 ∈ C2 := x2 ∈ X2 : hη ≥ −δ and hη ≥ −δ
h+
h+
q+
∈
sgn(u1)
sgn(u3)
q
x2 ∈ D2 := x2 ∈ X2 : hη ≤ −δ or hη ≤ −δ,
(4.58)
where the vector of inputs U2 = (U1, u2, u3) is specified by defining
τfb,2(y2, xk,2, ωd) := −chǫ− chǫ, κ2(y2, xk,2) := hKǫ, κ3(y2, xk,2) := η,
(4.59)
and setting U2 = K2 := (τff + τfb,2, κ1, κ2, κ3). Here, much is the same as [90],
where the feedback loop around ω and q (defined by the input to the quaternion
filter and the extra torque term from the filter) exploits passivity properties of
attitude dynamics to introduce damping that is otherwise missing. The primary
and crucial difference between [90] and our approach above is our addition of logic
variables for each quaternion state.
Compared to the full state feedback controller of Section 4.3.2, the quaternion
filter state q and logic variable h introduced in this design necessitates some ad-
ditional structure in the flow and jump sets. Conditions are included in the jump
and flow sets to update h when there is a significant amount of sign mismatch
between η and h, and otherwise, keep it constant. Note that (4.58) guarantees
that, when either jump condition is met, both logic variables h and h are reset to
152
the sign of their respective η’s.
P3) Biased angular velocity measurements
In this section, we append a constant bias state, b ∈ Ω ⊂ R3 to the plant:
xp,3 := (xp,2, b) ∈ Xp,3 := Xp,2 × Ω3 with dynamics b = 0. We assume the output
of (4.50) is given as
y3 = (q, ω + b). (4.60)
We append a bias observer state, b ∈ Ω ⊂ R3, to the controller state as xc,3 :=
(xc,2, b) ∈ Xc,3 := Xc,2 × R3. We define the bias observer error as
b = b− b. (4.61)
Now, we let xc,3 := (xc,2, b), x3 := (xp,3, xc,3), x3 := (xp,3, xc,3), and finally, X3 =
Xp,3 ×Xc,3. Our goal is to stabilize the compact set
A3 = x3 ∈ X3 : x2 ∈ A2, b = 0. (4.62)
As previously, ProjXpA3 = Ap.
Let ω = ω + b − b denote the estimate of the unbiased angular velocity mea-
153
surement. Then, for this task, we propose the hybrid controller
˙h
˙h
˙q
˙b
=
0
0
12q ⊙ ν(u2)
u4
x3 ∈ C3 := x3 ∈ X3 : hη ≥ −δ and hη ≥ −δ
h+
h+
q+
b+
∈
sgn(u1)
sgn(u3)
q
b
x3 ∈ D3 := x3 ∈ X3 : hη ≤ −δ or hη ≤ −δ
(4.63)
where the vector of inputs U3 = (U2, u4) is specified by defining
τfb,3(y2, xk,2, ωd) := −chǫ− chǫ− Ψ(ω − ωd), κ4(y3, xk,3) := Ψ(ω − ωd)
(4.64)
and setting U3 = K3 := (τff+τfb,3, κ1, κ2, κ3, κ4). Here, the estimated value of ω is
used in certainty equivalence fashion. The term Ψ(ω− ωd) in κ4 acts to estimate b
by exploiting the passivity of feedback loops with b, ω and q. Here, the addition of
the bias state and its observer requires no additional complexity in terms of logic
variables (and accompanying flow and jump conditions) over the output feedback
case considered in Section 4.3.2. This is mainly due to the fact that the bias and
its estimate evolve in a state space that is not topologically constrained.
Closed-loop error system and main results
In this section, we combine the results of previous sections and prove global
asymptotic stability of Ai for the ith closed-loop error system, i ∈ 1, 2, 3. Below,
154
we show the open loop error system for i = 1, 2, 3 by displaying the evolution of
all error states with nontrivial dynamics (i.e., x 6= 0, x+ 6= x). Further, we slightly
abuse the notation again to save space by writing xi ∈ Ci (and xi ∈ Di), even
when the states listed below may not belong to the ith state space. In terms of
the input vectors Ui, the error system is
˙q =1
2q ⊙ ν(ω)
J ˙ω = Ξ(ω, ωd)ω − τff (q, ωd, ωd) + τ
qd =1
2qd ⊙ ν(ωd)
ωd ∈MB
˙q =1
2q ⊙ ν(ω −R(q)⊤u2)
˙b = u4︸ ︷︷ ︸
xi ∈ Ci
h+ ∈ sgn(u1)
h+ ∈ sgn(u3)︸ ︷︷ ︸
xi ∈ Di,
(4.65)
which we rewrite as
Hi(Ui)
˙xi ∈ Fi(xi, Ui) xi ∈ Ci
x+i ∈ Gi(xi, Ui) xi ∈ Di.
(4.66)
We note that the evolution for b is calculated trivially from the definition b = b−b
and that the evolution for q can be derived in much the same way as q in (4.45),
(4.46), and (4.49).
155
Then, closing the loop by setting Ui = Ki(yi, xk,i, ωd), we have
˙xp ∈ Fp(xp, τff + τfb,i)
˙q =1
2q ⊙ ν
(ω −R(q)⊤Kǫ
)
˙b = Ψ(ω − ωd)︸ ︷︷ ︸
xi ∈ Ci
h+ ∈ sgn(η)
h+ ∈ sgn(η)︸ ︷︷ ︸
xi ∈ Di
(4.67)
which we abbreviate by defining Hi = (F i, Gi, Ci, Di) := Hi(Ki). Before com-
mencing our stability analysis, we note that our closed-loop systems satisfy the
hybrid basic conditions.
Lemma 4.3.1. For i = 1, 2, 3, the closed-loop system Hi corresponding to (4.67)
satisfies the hybrid basic conditions (see Appendix A).
Proof. The following statements hold for i = 1, 2, 3. The flow equation for every
state except for ωd is continuous and locally bounded. Since MB has no depen-
dence on xi, it is outer semicontinuous. Moreover, MB is convex and bounded.
Gi(xi) is nonempty for every xi ∈ Di. Moreover, since s 7→ sgn(s) is outer-
semicontinuous, Gi(xi) is outer-semicontinuous for all xi ∈ Di. Finally, note that
both Ci and Di are closed sets.
Our analysis is based on Lyapunov’s method and the functions Vi : Xi → R≥0,
defined as
V1(x1) = 2c(1 − hη) +1
2ω⊤Jω (4.68a)
V2(x2) = V1(x1) + 2c(1 − hη) (4.68b)
V3(x3) = V2(x2) +1
2b⊤b (4.68c)
156
Theorem 4.3.2. Let c > 0, c > 0, K = K⊤ > 0, δ ∈ (0, 1) and let Ψ : R3 → R
3
be strongly passive. Then, the compact set Ai ( (4.52), (4.57), (4.62)) is globally
asymptotically stable for the closed-loop hybrid system Hi (4.67), for each i ∈
1, 2, 3.
Proof. See Appendix F.18
Zeno solutions (those with an infinite number of jumps in a finite amount
of time) become a concern when working with hybrid controllers; however, it is
impossible for such solutions to appear with the controllers given here. In fact,
for any solution, the number of jumps is bounded.
Theorem 4.3.3. For any i = 1, 2, 3, and any compact set Ki ⊂ Xi, there exists
Ji ∈ Z≥0 such that for any xi ∈ SHi(Ki), dom xi ⊂ R≥0 × 0, 1, . . . , Ji.
Proof. Take V ∗i = maxVi(Ki), which is well defined due to the properties of Ki
and Vi. Then, it follows from (F.26) and (F.27) that for any xi ∈ SHi(Xi) and any
(t, j) ∈ dom xi,
0 ≤ Vi(xi(t, j)) ≤ Vi(xi(0, 0)) − 4δminc, cj.
It follows that for any xi ∈ SHi(Ki) and any (t, j) ∈ dom xi,
j ≤ Ji :=
⌈V ∗i
4δminc, c
⌉,
where ⌈·⌉ denotes the ceiling function.
Theorem 4.3.3 gives a uniform bound on the number of jumps occurring along
solutions beginning from a given compact set. In some sense, the number of jumps
157
is linked to initial kinetic energy of the system: as initial bias and angular velocity
errors cause the rigid body to rotate, q and q can make many revolutions around
S3. During each revolution, it is possible for η or η to change signs and initiate
jumps. Then, after some of the initial kinetic energy has been dissipated, the rigid
body can no longer rotate past 180 and cause jumps to occur.
We now state a theorem asserting the robustness of the asymptotic stability
property asserted in Theorem 4.3.2 to a general “outer” (see [77]) perturbation.
We perturb Hi, resulting in a hybrid inclusion. Let xu,i denote the unknown states
for each i = 1, 2, 3, i.e., xu,1 = ∅, xu,2 = ω, xu,3 = b. Then, let Ti : Xi → Xi denote
the invertible transformation satisfying Ti(xi) = xi for each i = 1, 2, 3. Now, we
define, Hα
i = (Fα
i , Gα
i , Cαi , D
αi ), where α > 0 and
Fα
i (xi) = convFi(xi,Ki(yi + αB, xk,i, ωd) + αB)
Gα
i (xi) = z ∈ Xi : z ∈ Gi(xi,Ki(yi + αB, xk,i, ωd))
Cαi = xi ∈ Xi : Ti(yi + αB, xu,i, xk,i) ∩ Ci 6= ∅
Dαi = xi ∈ Xi : Ti(yi + αB, xu,i, xk,i) ∩Di 6= ∅.
(4.69)
The outer perturbation models both measurement noise and actuation error. Note
that we have chosen not to introduce modeling error into the jump map, as the
attitude, desired attitude, and several controller states are assumed not to change
over jumps.
We say that a continuous function β : R≥0 × R≥0 → R≥0 is class-KL if, for
fixed ρ ∈ R≥0, β(0, ρ) = 0 and nondecreasing in s and if, for fixed s, β(s, ρ) is
nonincreasing and converges to zero as ρց 0.
Theorem 4.3.4. Let Vi be defined as in (4.68) and let the conditions of Theorem
158
4.3.2 hold. Then, for each i = 1, 2, 3, there exists a class-KL function βi such
that for each compact set Ki ⊂ Xi and every γi > 0, there exists α∗i > 0 such that
for all α ∈ (0, α∗i ], every solution xαi ∈ SHα
i(Ki) satisfies
Vi(xαi (t, j)) ≤ βi(Vi(x
αi (0, 0)), t+ j) + γi ∀(t, j) ∈ dom xαi .
Moreover, if γ < 4δminc, c, then there exists Ji ∈ Z≥0 such that dom xαi ⊂
R≥ × 0, 1, . . . , Ji.
Proof. Given Lemma 4.3.1 and Theorem 4.3.2, [77, Theorem 6.5] asserts the ex-
istence of βi ∈ KL such that for all xi ∈ SHi(Xi),
Vi(xi(t, j)) ≤ βi(Vi(xi(0, 0)), t+ j) ∀(t, j) ∈ dom xi.
Then, since the family of perturbed systems Hα
i satisfies the convergence property
[77, (CP)], we invoke [77, Theorem 6.6] to arrive at the KL bound on Vi(xαi (t, j)).
Then, since Vi(xαi (t, j)) → [0, γ] ⊂ [0, 4δminc, c) as t + j → ∞, we can use
similar arguments to Theorem 4.3.3 to arrive at a bound on the number of jumps.
Interestingly, this result holds for any compact K as chosen in the theorem.
Certainly, we can always choose K to include the entirety of S3 for the states qd, q,
and q; hence, the KL estimate holds for any initial orientation of the rigid body.
On the other hand, K cannot be chosen to include all initial angular velocities,
since they evolve in R3.
159
Measurement Noise and Chattering
When the hybrid controller is subjected to measurement noise, it is possible
for chattering to occur, which manifests in the closed-loop hybrid system as the
possibility of multiple jumps occurring at the same time. This is possible when the
jump map can map the state back into the jump set, that is, when G(D)∩D 6= ∅.
In this section, we compute a lower bound on δ to prevent chattering in the
presence of bounded noise.
As a starting point, recall Section 4.2, and the discontinuous control law (for
kinematic stabilization), ω = φ3(q) = − sgn(η)ǫ. It is obvious that when η = 0
and ‖ǫ‖2 = 1, arbitrarily small measurement noise can change the sign of the
feedback, indicating that the choice of rotation direction is arbitrarily sensitive to
noise. It is instructive to relate this to our hybrid controller when δ is zero. When
this is the case, the jump set includes points where ηe = 0 or η = 0 (since hηe ≤ 0
or hη ≤ 0 is satisfied for any h, h ∈ −1, 1). Since neither qe nor q change over
jumps, it is possible for multiple jumps to occur, resulting in an eventually discrete
solution (one that has only jumps, after some amount of time) that is analogous
to chattering in the discontinuous case, where measurement noise can change the
rotation orientation arbitrarily quickly.
To eliminate the possibility of chattering for a bounded noise signal, we com-
pute a lower bound on the distance between Gα
i (Dαi ) and Dα
i , defined in (4.69).
We provide these bounds for i = 1, 2, 3, but only provide the proof for i = 2, 3, as
the case for i = 1 is similar and simpler. We state these bounds in the following
theorem.
Theorem 4.3.5. For every α ∈ [0, 12) and every δ ∈ (2α, 1), Dα
i ∩Gα
i (Dαi ) = ∅.
160
Proof. See Appendix F.19.
4.3.3 Simulation Study
In this section, we present a simulation study contrasting the proposed hybrid
control scheme with both a discontinuous controller and a controller that induces
unwinding. We contrast these controllers in two scenarios that illustrate how
unwinding can cause undesirable behavior and how the discontinuous control is
sensitive to measurement noise. The following simulations correspond to the case
where both q and ω are measured without any additive bias on ω, as in Section
4.3.2. In each case, the rigid body is commanded to come to rest at a specified
attitude. In particular, we let qd(0) = i, ωd(0) = 0, and ωd ≡ 0 (note that q = q
here). Further, let ~v = [1 2 3]⊤, v = ~v/‖~v‖2. Then, the inertia matrix and control
parameters are given as J = diag(10v), c = 1 and Ψ(ω) = ω. The simulations were
conducted in Matlab/Simulink using a variable-step solver (ode45) constrained
to a maximum step size of 1/1000s. While the norm of quaternion states may drift
from 1 in a numerical implementation, the effects of numerical drift were negligible
in the following simulations. Regardless, all quaternion variables corresponding
to an attitude were projected to S3 before used in any manner.
Each plot in the following simulations is labeled as either hybrid, discontinuous,
or unwinding. For each plot labeled hybrid, the hysteresis half-width is chosen as
δ = 0.4. When the hysteresis width becomes zero (δ = 0), the control reduces to
the discontinuous scheme, essentially replacing h with sgn(η). When δ > 1, jumps
are completely disabled, since |η| ≤ 1. In this case, h is a constant corresponding
to its initial condition. In each of the following simulations, h(0) = 1, which, when
δ > 1, has the effect of stabilizing q = +i only. In this direction, plots labeled as
161
0 5 10 15 20 25−1
0
1
Discontinuous
Hybrid
0 10 20 30 40 50 60 700
0 10 20 30 40 50 60 700
0.5
0 10 20 30 40 50 60 700
2
4
Time (s)
hη
θ(q)
‖ω‖ 2
√∫ t 0
τ⊤
τdt
π
π2
Figure 4.5. Noise sensitivity.
0 5 10 15 20 25−1
0
1
Discontinuous
Hybrid
Unwinding
0 10 20 30 40 50 60 700
0 10 20 30 40 50 60 700
0.5
1
0 10 20 30 40 50 60 700
2
4
Time (s)
hη
θ(q)
‖ω‖ 2
√∫ t 0
τ⊤
τdt
π
π2
Figure 4.6. Effects of unwinding.
discontinuous have δ = 0 and plots labeled as unwinding have δ > 1.
Finally, each figure has 4 plots: hη, θ(q), ‖ω‖2, and√∫ t
0τ⊤τdt. The plot of hη
is shown to illustrate its convergence towards 1 and jumps in h. In the unwinding
case, because h ≡ h(0) = 1, this corresponds to a plot of η. The plot of θ(q) is the
angle between the current attitude and the desired attitude, which is calculated
from as θ(q) = 2 cos−1(|η|). The plots of ‖ω‖2 and√∫ t
0τ⊤τdt show convergence
of angular rate error and the use of control effort, respectively.
Figure 4.5 illustrates noise sensitivity when δ = 0 (i.e. for discontinuous
feedback including terms like sgn(η)ǫ). In this simulation, q(0) = (0, v) and
ω(0) = 0. The measured value of q is qm = (q+me)/‖q+me‖2, where e = ~e/‖~e‖2,
each element of ~e was drawn from a zero-mean Gaussian distribution with unit
variance, and m was drawn from a uniform distribution on the interval [0, 0.2].
This causes a chattering behavior, visible in the plot of hη for the discontinuous
control law. In this case, the excessive chattering causes a lag in response and
unnecessarily wasted control effort. On the other hand, the hybrid controller is
162
impervious to the noise (concerning the decision of which way to rotate), owning
to the sufficiently large selection of δ. In this simulation, the unwinding controller
is not shown, as the resulting trajectory is identical to the hybrid controller (this
is because h doesn’t change in this simulation and h(0) = 1).
Figure 4.6 shows how control laws that exhibit unwinding can resist a “bene-
ficial” initial angular velocity. In this simulation, q(0) = (−0.2,√
1 − 0.22v) and
ω(0) = 0.5v. So, the initial angular velocity is in a direction that decreases the
angle between the initial rigid body attitude and the desired attitude, i.e., η (and
also η in this case) will initially decrease from −0.2 towards −1. In this simulation,
the discontinuous control law immediately pulls the attitude towards q = −i. Due
to the hysteresis and the fact that h = 1, the hybrid control law initially pulls the
attitude towards q = +i, but after the initial angular velocity pushes the attitude
past the hysteresis width (at approximately 2s), its value of h switches and then
pulls the attitude towards q = −i. On the other hand, the unwinding-inducing
control law always pulls the attitude towards q = +i and, in this simulation,
expends more control effort doing so.
4.4 Attitude Synchronization
The problem of attitude alignment or synchronization among multiple rigid
bodies (spacecraft, in particular) has received increased attention in the recent
literature (e.g. [149, 150, 155, 170–175]) due to advances in technology and the
promise of multiple spacecraft missions in deep space exploration [176–178]. Al-
though a number of attitude synchronization schemes have been presented, these
designs are either non-global, induce unwinding, or use a discontinuous feedback
163
that is not robust to measurement noise. All of these issues stem from the topology
of the underlying state space of rigid body attitude.
Of course, unwinding can be avoided by a judicious selection of control law.
For example, [149] proposes a synchronization scheme that causes unwinding, then
reveals how to modify the proposed feedback in a smooth fashion to avoid this
problem. The resulting feedback is closely related to the feedback and potential
functions used in [84, 174, 179]. While this avoids unwinding, it is only a local
(though, almost global) result. Other authors, such as the authors in [175], use a
memoryless nonsmooth quaternion feedback that is discontinuous at attitudes of
180. This feedback avoids unwinding and results in global asymptotic stability
of the desired synchronization, but as noted in [131], it is sensitive to arbitrarily
small measurement noise. In fact, [131] calls upon the results of [132] to assert the
existence of an arbitrarily small noise signal that can destroy global attractivity
properties by exploiting the opposing values of the discontinuous feedback around
the discontinuity.
In this section, we propose a decentralized hybrid dynamic feedback, based on
the kinematic feedback in Section 4.2, that achieves the rigid body synchroniza-
tion task from any initial condition with robustness to measurement noise while
avoiding unwinding. Here, we apply the results of [131] to the quaternion-based
attitude synchronization scheme in [155]. Interestingly, this scheme necessitates
the communication of a single binary logic variable between neighboring rigid
bodies in the network and it is doubtful that a robust global asymptotic stability
result could be accomplished otherwise.
164
4.4.1 Multi-Agent Framework
Following [155, 180], we consider a network of N rigid bodies (agents), whose
inter-agent information flow is represented by a graph. When two rigid bodies
in the network have access to relative attitude information and can communicate
a single binary logic variable, we let them be connected by a link of the graph.
We remark that sensing of relative attitude can be achieved with either visual
sensors [181,182] or the communication of each agent’s measured attitude (i.e. the
relative attitude between inertial and body frames). While the relative attitude
sensing and information sharing is assumed to be bidirectional, we use a directed
graph for convenience in defining error coordinates. For each graph link connecting
two vertices (agents), we arbitrarily assign a positive end and a negative end. Let
M denote the total number of graph links, let N = 1, . . . , N denote the set of
agent indices, and let M = 1, . . . ,M denote the set of graph link indices (that
is, each link between agents is assigned a unique number from 1 to M). We define
M+i ⊂ M as the set of links for which agent i is the positive end and M−
i ⊂ M
as the set of links for which node i is the negative end.
We define the N ×M incidence matrix [183] B as
bik =
+1 k ∈ M+i
−1 k ∈ M−i
0 otherwise.
(4.70)
We note that the rank of B is N − 1 when the graph is connected and that the
columns of B are linearly independent when no cycles exist in the graph. Finally,
let 1 = [1 · · · 1]⊤ ∈ RN . It follows from (4.70) that B⊤1 = 0, that is, 1 is in
165
1 2 3 41 2 3
Figure 4.7. Serially connected network, B1.
1 2 3 41 2 3
Figure 4.8. Network with three agent cycle, B2
the null space of B⊤.
We provide two examples of this framework: a serially connected network,
and a network with a cycle. The serial network shown in Fig. 4.7 is defined by its
incidence matrix B1, where
B1 =
i\k 1 2 3
1
2
3
4
1
−1
0
0
0
1
−1
0
0
0
1
−1
. (4.71)
The network shown in Fig. 4.8 is identical to the serial network in Fig. 4.7 and
(4.71), except for the addition of a link from agent 1 to agent 3. This network is
166
defined by its incidence matrix B2, where
B2 =
i\k 1 2 3 4
1
2
3
4
1
−1
0
0
0
1
−1
0
0
0
1
−1
−1
0
1
0
. (4.72)
4.4.2 Relative Attitude Error Coordinates and the Syn-
chronization Problem
The attitude synchronization objective is to align all agents at the same atti-
tude and achieve a desired constant synchronized rotation. We will assume that
each agent has access to a desired angular velocity, its own angular velocity, mea-
surements of relative attitude with respect to its neighbors, and the capacity to
transmit or receive a single binary logic variable. In this section, we pose this as
a set stabilization problem in terms of error coordinates.
The attitude of the ith agent is denoted as Ri, where Ri rotates vectors ex-
pressed in body coordinates of the ith agent to their inertial frame coordinates.
We let ωi denote the angular velocity of the ith agent and Ji = J⊤i > 0 is the sym-
metric and positive definite inertia matrix associated with the ith agent. When
τi is a vector of external torques, the kinematic and dynamic equations for each
agent are
Ri = Ri [ωi]× (4.73a)
Jiωi = [Jiωi]× ωi + τi (4.73b)
167
with the corresponding quaternion kinematic equation
qi =
ηi
ǫi
=
1
2qi ⊙ ν(ωi) =
1
2
−ǫ⊤iηiI + [ǫi]×
ωi. (4.73c)
Now, we construct the following graph-based error coordinates. For every
k ∈ M, we define the relative attitude and angular velocities for each graph link
as
qk = q−1j ⊙ qi
ωk = ωi −R(qk)⊤ωj
(4.74)
where k ∈ M+i ∩ M−
j , for i 6= j. That is, agent i and agent j are the positive
and negative vertex for link k, respectively, and qk is a relative attitude between
them. We group these variables together as
q = (q1, . . . , qM)
ω = (ω1, . . . , ωM)
ω = (ω1, . . . , ωN).
(4.75)
With this definition, it is well known that the error quaternion qk satisfies the
kinematic equation
˙qk =1
2qk ⊙ ν(ωk) ∀k ∈ M. (4.76)
An important property of (4.74) is that we can express ω in terms of the
3N × 3M rotational incidence matrix B(q), which we define in terms of its 3 × 3
168
sub-matrices as
bik(qk) =
I k ∈ M+i
−R(qk)⊤ k ∈ M−
i
0 otherwise,
(4.77)
where i ∈ N and k ∈ M. Then, it follows from (4.74), (4.75), and (4.77) that
ω = B(q)⊤ω. (4.78)
To synchronize the angular rate of each agent to a constant desired angular
rate, ωd, we assume that each agent has access to ωd. The angular rate error for
each agent is defined as
ωi = ωi − ωd, (4.79)
where i ∈ 1, . . . , N. This definition yields the angular rate error dynamics for
each agent as
Ji ˙ωi = [Jiωi]× ωi + [Jiωi]× ωd + τi. (4.80)
Finally, we let
Xp = S3N × R
3N xp = (q, ω) ∈ Xp
denote the open-loop state space and state, respectively, where S3N denotes N
copies of S3. Then, the synchronization objective is to globally and asymptotically
stabilize the compact set
Ap == xp ∈ Xp : qk = ±i ∀k ∈ M, ω = 0. (4.81)
169
Note that this set includes, for each link, both error quaternions qk satisfying
R(qk) = I.
4.4.3 Robustly Synchronizing Hybrid Controller
The hybrid control strategy proposed here assigns a logic variable to each
graph link that dictates the desired direction of rotation for the associated error
quaternion. This logic variable will change hysteretically to ensure robustness
to measurement noise. In this paper, we assume that the agent at the positive
vertex of each link stores and manages the logic variable and can communicate
this variable to the negative vertex of the link. Both agents must have access
to the logic variable, since if they are unaware of a common desired rotation
direction, they may rotate in opposite directions and stall the synchronization
process. We note that allowing only one agent to store the logic variable eliminates
any confusion that might emerge if, perhaps, both agents had their own logic
variables, managed independently.
4.4.4 The Hybrid Controller
In this direction, we define a hybrid dynamic controller for each agent. Let
h = (h1, . . . , hM) ∈ −1, 1M
denote a vector of logic variables, where hk is associated with link k ∈ M, and
−1, 1M = −1, 1 × · · · × −1, 1︸ ︷︷ ︸M times
.
170
The controller for the ith agent will define the dynamics for all hk such that
k ∈ M+i . We define the state space and state as
X = Xp × −1, 1M x = (xp, h) ∈ X .
The parameter δ ∈ (0, 1) is the hysteresis half width. Then, we define the flow
and jump sets for the ith agent as
Ci = x ∈ X : ∀k ∈ M+i hkηk ≥ −δ
Di = x ∈ X : ∃k ∈ M+i hkηk ≤ −δ.
(4.82)
Finally, we let α ∈ [0, δ) and propose the hybrid controller for the ith agent as
∀k ∈ M+i
hk = 0 x ∈ Ci
h+k ∈ hksgn(hkηk + α) x ∈ Di,
(4.83a)
which takes ωi, ωd and qk, k ∈ M+i ∪M−
i as input and produces the torque output
Ti(x) = − [Jiωi]× ωd −M∑
k=1
bikhkℓk ǫk −Kiωi, (4.83b)
where ℓk > 0 for all k ∈ M and Ki = K⊤i > 0 for all i ∈ N .
The hybrid controller (4.83) operates as follows. Each logic variable hk indi-
cates to which pole of S3 that qk should be regulated and the torque feedback
(4.83b) incorporates the current value of hk to stabilize qk to hki and ωi to 0. The
dynamics of hk, defined by (4.82) and (4.83a), serve to switch the value of hk only
when qk is “significantly” closer to −hki than hki by the shortest rotation.
Whether qk is closer to hki or −hki by the shortest rotation can be seen by
171
comparing the signs of ηk and hk. When there is a sign mismatch between ηk
and hk (i.e. hkηk < 0), qk is closer to −hki. The dynamics of hk serve to change
the value of hk only when a “significant” sign mismatch between ηk and hk is
present, that is, when hkηk ≤ −δ < 0. The jump set detects when hkηk ≤ −δ is
satisfied for at least one k ∈ M+i , then the jump map switches the value of each
hk satisfying hkηk ≤ −α for which k ∈ M+i . Indeed, when for some k∗ ∈ M+
i ,
we have hk∗ ηk∗ ≤ −δ, the conditions in the jump set are met and the map h+k ∈
hksgn(hkηk + α) is applied to all k ∈ M+i . Clearly, since hk∗ ηk∗ ≤ −δ ≤ −α,
it follows that sgn(hk∗ ηk∗ + α) = −1 and so, h+k∗ = −hk∗ . While any value of
α ∈ [0, δ) produces the desired result, a larger value decreases the “chance” of a
significant sign mismatch in one link triggering a switch in hk for another link.
We have found that choosing α = δ/2 provides good results in practice.
In the torque feedback (4.83b), the term − [Jiωi]× ωd is a model-dependent
feedforward torque that cancels the natural tendency of the rigid body to rotate
in a direction that is not ωd. Each term of the form bikhkℓk ǫk implements a spring
force in the direction of the eigenaxis of rotation. This torque pulls the relative
attitude error qk towards +i or −i, depending on the value of hk. Finally, Kiωi
provides damping of the angular velocity error.
This feedback obeys the structure of the graph. In particular, the torque
output for agent i defined in (4.83b) depends only on local information, which is
evident from the definition of bik in (4.70). The term bik activates the spring force
only when agent i is connected to another agent by link k. The flow and jump
sets defined in (4.82) for each agent depend only on hk, which is shared over the
link, and ηk, which can be measured by each agent on link k.
As a final remark, this control formulation, like those in other quaternion-
172
based synchronization schemes, assumes that each two agents sharing graph link
k have a consistent local representation of their relative attitude error, qk. To
resolve any ambiguity, only some agreement of the initial value of qk is needed
between agents. From that point, each agent can select the measurement qk that
satisfies the kinematic equation (4.76).
4.4.5 The Closed-Loop System
Here, we make several notational constructs to facilitate the presentation and
analysis of the closed-loop system defined by setting τi = Ti(x). First, we define
several aggregate variables to form a more efficient notation:
J = diag (J1, . . . , JN)
K = diag (K1, . . . , KN)
S (ω) = diag([J1ω1]× , . . . , [JNωN ]×
)
H = diag (h1, . . . , hM)
L = diag (ℓ1, . . . , ℓM)
τ = (τ1, . . . , τN)
ω = (ω1, . . . , ωN)
η = (η1, . . . , ηM)
ǫ = (ǫ1, . . . , ǫM).
Now, we can write the open-loop error dynamics as
˙qk =1
2qk ⊙ ν(ωk) ∀k ∈ M
J ˙ω = S (ω)ω + S (ω)(1 ⊗ ωd) + τ,
(4.84)
where, recalling (4.79), ω can be written compactly as
ω = ω − 1 ⊗ ωd. (4.85)
173
To prepare for theorems related to robustness of stability to measurement noise
in the sequel, we group the open-loop error states together as
xp = (q, ω)
and denote their dynamics, given by (4.84) as
˙xp = ( ˙q, ˙ω) = Fp(xp, τ).
When multiple agents employ a hybrid controller, we must define flow and
jump sets that capture the hybrid dynamics of the network as a whole. In this
direction, we define
C =N⋂
i=1
Ci = x ∈ X : ∀k ∈ M hkηk ≥ −δ
D =N⋃
i=1
Di = x ∈ X : ∃k ∈ M hkηk ≤ −δ.(4.86)
That is, a jump occurs when at least one agent’s controller requires a jump, but
otherwise, the system flows. Moreover, when there exist i, j ∈ N , with i 6= j and
x ∈ Di ∩Dj, multiple jumps can occur at the same time instant, in no particular
order. We model this as follows.
First, each agent’s controller (4.83) operates on only a subset of the variables
in h. We will write an equivalent version of this that operates on the entire vector
174
h. In this direction, let γik : X −1, 1 and γi : X −1, 1M be defined as
γik(x) =
hksgn(hkηk + α) k ∈ M+i
hk otherwise
γi(x) =
γi1(x)
...
γiM(x)
. (4.87)
Now, let us define the set of agents that require a change in at least one of the
logic variables that they maintain as
I(x) = i ∈ N : x ∈ Di.
Then, we define an aggregate set-valued jump map as
Γ(x) =⋃
i∈I(x)
γi(x), (4.88)
which combines the possible outcomes when I(x) is nonempty. Then, with the
feedback
T (x) =
T1(x)
...
TN(x)
= −S (ω)(1 ⊗ ωd) − ((BHL ) ⊗ I)ǫ− K ω
defined in (4.83b) and assuming that neither q nor ω experience any change over
175
jumps, we can write the closed-loop system as
˙qk =1
2qk ⊙ ν(ωk) ∀k ∈ M
J ˙ω = S (ω)ω − ((BHL ) ⊗ I)ǫ− K ω
h = 0︸ ︷︷ ︸
x ∈ C
q+ = q
ω+ = ω
h+ ∈ Γ(x)︸ ︷︷ ︸x ∈ D.
(4.89)
For a compact notation, we define the flow and jump maps for (4.89) as
F (x) =
Fp(xp, T (x))
0
G(x) =
xp
Γ(x)
and condense (4.89) into the compact form
˙x = F (x) x ∈ C
x+ ∈ G(x) x ∈ D,
where x = (xp, h).
Before proceeding to a stability and convergence proof, we make a helpful
observation. This result slightly generalizes [155, Lemma 2] by introducing an
arbitrary diagonal matrix.
Lemma 4.4.1. For any diagonal matrix
D = diag(d1, . . . , dM),
the rotational incidence matrix satisfies
B(q)(D ⊗ I)ǫ = ((BD) ⊗ I)ǫ, (4.90)
176
where B is defined in (4.77).
Proof. Let Bi(q) =
[bi1 · · · biM
]. Expanding the left-hand side of (4.90) by
means of (4.77), we see that
Bi(q)(D ⊗ I)ǫ = Bi(q)
d1ǫ1...
dM ǫM
=M∑
k=1
bik(q)dkǫk
=∑
k∈M+
i
dk ǫk −∑
p∈M+
i
R(qp)⊤dpǫp.
(4.91)
Now, applying the fact that R(qp)⊤ǫp = ǫp, it follows from (4.70) and matching
terms in (4.91) that
∑
k∈M+
i
hk ǫk −∑
p∈M−
i
R(qp)⊤dpǫp =
M∑
k=1
bikdkǫk
so that for every i ∈ N ,
Bi(q)(D ⊗ I)ǫ = ((BiD) ⊗ I)ǫ,
where Bi =
[bi1 · · · biM
]. This proves the result.
With Lemma 4.4.1 in place, we can now prove stability of the set
A = x ∈ X : q = (H1) ⊗ i, ω = 0
177
and global attractivity of the set
E = x ∈ C : ((BHL ) ⊗ I)ǫ = 0, ω = 0
But first, we see that under the additional assumption that the graph is acyclic
(B has full column rank of N − 1), we see that E = A.
Lemma 4.4.2. If 0 < δ < 1, ℓk > 0 for all k ∈ M, and B has full column rank,
then, E = A.
Proof. If B has full column rank and ℓk > 0 for all k ∈ M, it follows that
((BHL ) ⊗ I)ǫ = 0 implies that ǫ = 0 and |ηk| = 1 for all k ∈ M. If x ∈ C, then
for all k ∈ M, it follows that hkηk ≥ −δ > −1. Finally, since hk ∈ −1, 1, it
follows that hkηk = 1 for all k ∈ M. This means that qk = (ηk, ǫk) = (hk, 0) = hki
for all k ∈ M, or equivalently, q = (H1) ⊗ i.
Finally, we note that A is precisely the set that one should stabilize in the
extended state space X , in the sense that
ProjXp
A = Ap, (4.92)
where ProjY X is the projection of the set X onto the set Y and Ap was defined
in (4.81).
Theorem 4.4.3. Suppose that 0 ≤ α < δ < 1, ℓk > 0 for all k ∈ M, and
Ki = K⊤i > 0 for all i ∈ N . Then, the compact set A is stable and the compact
set E ⊃ A is globally attractive for the closed-loop error dynamics (4.89). When
B has full column rank of N−1, A = E so that A is globally asymptotically stable.
178
Proof. See Appendix F.20.
We now state a result asserting the robustness of stability to measurement
noise in terms of a KL estimate. We state the result without proof, as it is a
direct consequence of [77, Theorem 6.6] and the fact that the closed-loop system
satisfies the hybrid basic conditions [78, A1-A3].
Theorem 4.4.4. Suppose that A is globally asymptotically stable for (4.89).
Then, there exists a class-KL function β : R≥0 × R≥0 → R≥0 such that for each
γ > 0 and any compact set K ⊂ R3N there exists σ > 0 such that for each
measurable e : R≥0 → σB, the solutions to
˙x =
Fp(xp, T (xp + e, h))
0
(xp + e, h) ∈ C
x+ =
xp
Γ(xp + e, h)
(xo + e, h) ∈ D
with initial condition x(0, 0) ∈ S3N ×K × −1, 1M satisfy
|x(t, j)|A ≤ β (|x(0, 0)|A, t+ j) + γ ∀(t, j) ∈ domx.
4.4.6 Simulation Study
In this section, we present a simulation study contrasting the proposed hybrid
control scheme with one that induces unwinding and a discontinuous scheme for a
multi-agent network with and without noise. In these simulations, the network is
comprised of four identical agents, where Ji = diag(4.35, 4.33, 3.664) (as in [161])
179
and Ki = I for i = 1, 2, 3, 4. In each simulation, the desired angular velocity, ωd,
is 0 rad/s (rest). Each link has gain lk = 1. The initial angular velocities, ωi(0),
and the initial attitude errors, qk are specified on a per-simulation basis later in
the section; however, hk(0) = 1 for all k ∈ M in each simulation.
All simulations were conducted in Matlab/Simulink using a fixed-step solver
with step size 1/100s. Because only unit quaternions represent an attitude, it is
necessary to prevent numerical drift of qi from S3. In this direction, a negative
feedback loop was added to maintain the norm of each qi at 1. In particular, the
following differential equation was implemented:
qi =1
2
qi‖qi‖2
⊙ ν(ωi) − σqi(‖qi‖22 − 1), (4.93)
where σ = 10. Note that the first and second terms of (4.93) are orthogonal: the
first is a vector in the tangent space of S3, the second (norm-correcting feedback)
term is normal to S3. In the simulations that follow, numerical drift from S
3 was
negligible - on the order of 10−7. Regardless, whenever qi was used in subsequent
calculations, it was first normalized.
In the following plots, we show representative signals of attitude errors, angular
velocity errors, and control effort used. The hkηk plot shows, for each link, the
logic variable hk multiplied by ηk. Discontinuities in this plot occur when hk
changes its sign over a jump. The θ(qk) plot shows, for each link, the error angle
between two agents across a link. In particular, for some quaternion q = (η, ǫ),
θ(q) = 2 cos−1(|η|).
This produces a continuous signal in the range of [0, π] corresponding to the
180
angular difference between R(q) and I about the eigenaxis of R(q). As the agents
become synchronized, hηk → 1 and θ(qk) → 0. The ‖ωi‖2 plot shows, for each
agent, the magnitude of the angular velocity error with respect to the desired
angular velocity, ωd. Finally, the L2 plot shows the sum of the total control effort
used from time 0 to t over the network, i.e. L2(t) =∑N
i=0
√∫ t0τi(s)⊤τi(s)ds. A
lower final value signifies less total control effort across the entire network used.
Simulations without Noise
The simulations that follow in this section investigate the stability and conver-
gence claims made in Theorem 4.4.3 and the unwinding phenomenon. Figures 4.9
and 4.10 illustrate global asymptotic stability of synchronization when the graph
is connected and acyclic (Figure 4.9) and how this property may be destroyed
by cycles in the graph (Figure 4.10). Compared to the simulation in Figure 4.9,
Figure 4.11 displays large angle oscillations caused by unwinding.
The following simulations were conducted with four agents with initial atti-
tudes
q1(0) =
1√2
1√2
0
0
q2(0) =
− 1√2
1√2
0
0
q3(0) =
1√2
0
1√2
0
q4(0) =
1√2
0
1√2
0
(4.94)
181
and initial angular velocities
ω1(0) =
0.9
0.9
−0.9
ω2(0) =
1.8
−1.8
1.8
ω3(0) =
0.9
−0.9
−0.9
ω4(0) =
−0.9
0.9
0.9
. (4.95)
The simulations in Figs. 4.9 and 4.11 were conducted with the serial graph
structure pictured in Figure 4.7, where its corresponding incidence matrix, B1 was
defined in (4.71). The simulation in Figure 4.10 was conducted with the cyclic
graph structure illustrated in Figure 4.8 and the incidence matrix B2 defined in
(4.72).
With these graph definitions, the initial relative attitude errors are
q1(0) =
0
−1
0
0
q2(0) =
−0.5
0.5
0.5
0.5
q3(0) =
1
0
0
0
q4(0) =
−0.5
0.5
−0.5
−0.5
, (4.96)
where q4 is only defined for the cyclic graph, in Figure 4.10 and (4.72).
The simulations in Figures 4.9 and 4.10 illustrate the efficacy of the proposed
hybrid scheme and illustrate how synchronization can be compromised by cycles
within the graph. From the initial condition described above, the hybrid scheme
synchronizes the attitude and angular velocity of each agent, as depicted in Fig 4.9.
The introduction of the 4th link from agent 1 to 3 in B2 destroys this global
synchronization property. As shown in Figure 4.10, only one relative error angle
corresponding to the link outside of the cycle converges to zero. The three agents
182
0 5 10 15 20 25 30 35 40−1
0
1
0 5 10 15 20 25 30 35 400
0 5 10 15 20 25 30 35 400
2
4
Time(s)
hkη k
θ(q k
)
π
π2
‖ωi‖ 2
Figure 4.9. Agents converging withhysteretic controller on serially con-nected network, B1
0 5 10 15 20 25 30 35 40−1
0
1
0 5 10 15 20 25 30 35 400
0 5 10 15 20 25 30 35 400
2
4
Time(s)
hkη k
θ(q k
)
π
π2
‖ωi‖ 2
Figure 4.10. Agents not convergingwith hysteretic controller on networkB2, which contains a cycle
in the cycle (agents 1,2, and 3) settle into a configuration where q1 ⊙ q2 ⊙ q3 = ±i
and∑3
k=1 θ (qk) = 2π. This phenomenon was discussed and predicted in [155].
Both simulations were conducted with δ = 0.45.
To illustrate unwinding and how the hybrid scheme with δ ∈ (0, 1) avoids this
behavior, we repeated the simulation shown in Figure 4.9 (the serial, connected,
and acyclic network) with one crucial change: we set δ = 2. This change disables
switching of any hk, since ηkhk ≤ −δ can never be satisfied. Then, for each k ∈ M,
qk is driven towards hk(0)i = i. In this case (since hk(0) = 1 for all k ∈ M), one
could write the control law explicitly for each agent as
T ui (x) = − [Jiωi]× ωd −
M∑
k=1
bikℓkǫk −Kiωi. (4.97)
Note that (4.97) is identical to (4.83b), modulo the factor of hk in each term of the
sum. Figure 4.11 shows the two situations in parallel: the plot labeled “Hybrid”
shows hkηk and θ (qk) from Figure 4.9, while the plot labeled “Unwinding” shows
the same values when δ = 2, with the same initial conditions and parameters,
183
0 5 10 15 20 25 30 35 40−1
0
1
HybridUnwinding
0 5 10 15 20 25 30 35 400
Time(s)
hη k
θ(q k
)
π
π2
Figure 4.11. Link that exhibits unwinding after disabling hysteretic jumps
other than δ. Note that hkηk = ηk for the “Unwinding” plot, since hk(0) = 1 and
hk cannot switch during the simulation. Figure 4.11 shows that the unwinding-
inducing controller causes large angular oscillations in the response as it forces
q3 towards i. In this case, the relative angle between the agents increases from
zero to π/2 in approximately 2s and continues to rotate. The hybrid controller
with δ = 0.45 recognizes this and switches the value of hk as hkηk passes −δ. In
contrast, the unwinding-inducing controller remains set on forcing q3 to i, despite
the fact that it is closer to −i. This causes a large angular oscillation in the
response seen from approximately 5s to 15s in Figure 4.11.
Simulations with Random Noise
To illustrate the robustness to measurement noise conferred to the closed-
loop system by the hybrid control scheme, we compared the performance of the
proposed method to the discontinuous feedback
T di (x) = − [Jiωi]× ωd −
M∑
k=1
bikℓk sgn(ηk)ǫk −Kiωi sgn(s) =
1 s ≥ 0
−1 s < 0
(4.98)
184
when random measurement noise was present. In the simulations that follow, each
agent measures the relative attitude of its neighbors as
qk = (qk + λe)/‖qk + λe‖2, (4.99)
where e = ~e/‖~e‖2, ~e ∈ R4 is a vector with each element drawn from a Gaussian
distribution with unit variance, and λ is drawn from a a normal distribution on
the interval [0,Λ]. No measurement noise was afflicted upon ωi. In the following
simulations, Λ = 0.2.
The simulations depicted in Figure 4.12 and Figure 4.13 show how random
measurement noise can stall the synchronization process for the discontinuous
feedback in problematic initial conditions and how hysteresis can overcome these
problems, respectively. The simulations depicted in Figure 4.12 and Figure 4.13
are initialized as follows. The initial attitudes and angular velocities are
q1(0) =
1√2
1√2
0
0
q2(0) =
− 1√2
1√2
0
0
q3(0) =
1√2
1√2
0
0
q4(0) =
− 1√2
1√2
0
0
(4.100)
and ωi(0) =
[1 1 1
]⊤for each agent, respectively. Then, for each link k ∈ M,
we have ηk = 0 (or ‖ǫk‖2 = 1), so that each link is 180 out of synchronization in
attitude. This initialization was chosen emphasize the robustness of the hybrid
controller on the manifold of 180 rotations, where the discontinuous controller
is sensitive to measurement noise and subject to chattering. Figure 4.12 and
Figure 4.13 show that while both controllers are eventually able to synchronize all
185
of the agents, in this situation, the hybrid controller converges faster and with less
effort than the discontinuous controller. In this case, the random measurement
noise confuses the fickle discontinuous feedback on which way it should rotate,
causing a 10s lag in response time and wasted control effort. On the other hand,
the hysteresis makes the hybrid controller impervious to the measurement noise.
0 5 10 15 20 25 30−1
0
1
0 5 10 15 20 25 300
0 5 10 15 20 25 300
2
4
0 5 10 15 20 25 300
10
20
Time(s)
hη k
θ(q k
)
π
π2
‖ωi‖ 2
L2
Figure 4.12. Random noise sensitiv-ity with discontinuous control.
0 5 10 15 20 25 30−1
0
1
0 5 10 15 20 25 300
0 5 10 15 20 25 300
2
4
0 5 10 15 20 25 300
10
20
Time(s)
hη k
θ(q k
)
π
π2
‖ωi‖ 2
L2
Figure 4.13. Random noise with hys-teretic control.
Simulations with Malicious Noise
The chattering-induced delay in synchronization seen in the previous section
is certainly undesirable; however, the situation can be much worse when the noise
maliciously exploits the discontinuity to the effect of asymptotically stabilizing a
180 error in relative attitude. In this section, we show simulation results where
a malicious noise signal was afflicted upon both the discontinuous controller and
the proposed hybrid controller in addition to the random noise in Section 4.4.6.
For the simulations shown in Figure 4.14 and Figure 4.15, the measured relative
186
attitude error is
qk = (qk + λe− σ sgn(ηk)i)/‖qk + λe− σ sgn(ηk)i‖2, (4.101)
where λ and e are defined as before in Section 4.4.6 and σ = 0.02. Note that the
signal −σ sgn(ηk)i is designed to confuse the sign of sgn(ηk) when |ηk| < σ. In fact,
the −σ sgn(ηk) noise term has an asymptotically stabilizing effect on the manifold
of 180 rotations. When both random and malicious noise are present and added
together, it is possible that the random noise is in the opposite direction of the
malicious noise, effectively cancelling out the malicious noise. If enough of this
“favorable” noise is present, the controller may be able to drive the system outside
of the region where the malicious noise is effective. Finally, the initial conditions
used in these simulations is identical to those used in Section 4.4.6.
In Figure 4.14, the introduction of malicious noise further delays the synchro-
nization process. In this simulation, the malicious noise maintains a 180 relative
error angle for each link until the random noise (the λe term) works in a way
that counteracts the malicious term and allows the control to drive the relative
error angle away from π. For this particular simulation, this event occurs at
approximately 40s.
When using the proposed hybrid controller, the strength of the malicious noise
would need to be larger than the width of the hysteresis, δ, in order to remain
effective. As such, the size of δ should be chosen strictly greater than the expected
noise magnitude. In Figure 4.15, we can see that using δ = 0.45 results in a
controller that is impervious to the bounded noise afflicted upon the discontinuous
control law. The response of the hybrid closed-loop system is quite similar to that
187
shown in Figure 4.13, where the malicious noise component was not present.
0 10 20 30 40 50−1
0
1
0 10 20 30 40 500
0 10 20 30 40 500
2
4
0 10 20 30 40 500
10
20
Time(s)
hη k
θ(q k
)
π
π2
‖ωi‖ 2
L2
Figure 4.14. Both types of noise butrandom noise limits effectiveness ofmalicious noise against discontinu-ous control.
0 10 20 30 40 50−1
0
1
0 10 20 30 40 500
0 10 20 30 40 500
2
4
0 10 20 30 40 500
10
20
Time(s)
hη k
θ(q k
)
π
π2
‖ωi‖ 2
L2
Figure 4.15. Both types of noise andhysteretic control.
188
Chapter 5
Conclusion
5.1 Summary
In Chapter 2, we examined fundamental obstructions to global asymptotic
stability of a compact set when the control objective and the state space are not
topologically compatible. We reviewed known results for differential equations
that generate a flow and then generalized these results to differential inclusions
that satisfy certain regularity properties that ensure the robustness of asymptotic
stability, when present. The main result was that compact sets that cannot be
globally stabilized by means of a continuous feedback cannot be robustly globally
stabilized by means of a discontinuous feedback.
As a solution, we proposed a hybrid control design based on switching between
feedbacks induced by an artificial potential energy in Chapter 3. The crucial
component to this design was a synergistic family of potential functions whose
behavior at desired critical points is sufficiently dissimilar. This method was
applied to common compact manifolds in engineering, where a synergistic family
189
of potential functions was constructed by applying a diffeomorphism to the space
that sufficiently altered the critical behvaior while leaving the desired equilibrium
a fixed point.
Finally, we examined rigid body attitude control using the quaternion repre-
sentation in Chapter 4. We found that performing analysis in the covering space
was justified; however, some asymptotic stability results obtained in the cover-
ing space are simply not desired, as they leave the stability of the desired rigid
body attitude at the whim of the controller’s internal representation of the atti-
tude and induce the unwinding phenomenon. To solve this issue, we developed a
hybrid control methodology that achieves global asymptotic stabilization of rigid
body attitude in a kinematic setting that avoids unwinding and is not susceptible
to small measurement noise. This result was extended to the tracking problem
with dynamics, two output feedback cases (with and without a bias on angular
velocity measurements), and attitude synchronization of a network of rigid bodies.
5.2 Future Directions
While the method of synergistic potential functions examined in this work was
constrained to fully actuated trivial gradient flows and a few choice systems, the
method can be extended to arbitrary fully actuated simple mechanical systems in
a differential geometric framework using the methodology of [18,60]. This follows
from the inherent passivity of simple mechanical systems and their basic cascade
structure. The limiting factor in this extension is the knowledge of synergistic
families of potential functions.
The diffeomorphisms (3.34), (3.53), and (3.101), for S1, S
2, and SO(3), used for
190
generating synergistic potential functions can likely be generalized in a common
structure. In particular, SO(n) is a Lie group that can act on Sn−1. In a general
setting, one may define a transformation from Sn → S
n as T (x) = ekP (x)Sx, where
S is a skew-symmetric matrix belonging to so(n+1). Analogously, one may define
a transformation from SO(n) → SO(n) as T (X) = ekP (x)SX. It is obvious that
such a map will be a diffeomorphism for small enough k when P (x) is continuously
differentiable.
One might wonder how to construct synergistic potential functions without
using the diffeomorphisms studied in this work. This might be possible by consid-
ering more general potential functions than the “height” function. For example,
for Sn, one can define PA(x) = 1
2(x − r)⊤A(x − r), where A is a positive def-
inite symmetric matrix. When A = I, we have PI(x) = P ∗(x) = 1 − x⊤r.
On SO(n), one might consider the inner product P(A,B) = 〈I −R, I −R〉(A,B) =
〈(I −R)B,A(I −R)〉 = trace(B⊤(I −R)⊤A(I −R)
). These functions are fun-
damentally different than the standard height functions, as they define general
quadratic functions that may not agree with any linear function on the manifold.
Of course, one can see that the reference point is a critical point of these func-
tions; however, it may be challenging to characterize the critical behavior of these
functions on the manifold, making the task of verifying synergism difficult.
Finally, we note that the method of synergistic potentials can be applied to
autonomous vehicle navigation in the presence of obstacles as well. Often, an
artificial potential function P (x) is used to steer autonomous vehicles in the di-
rection of its negative gradient to a goal location (e.g., x = 0). Obstacle avoid-
ance is then added by using barrier functions. That is, the negative gradient of
V (x) = P (x) +∑K
i=1 bi(x) is used to steer the vehicles, where bi(x) increases to
191
infinity as x approaches the boundary of an obstacle. The introduction of the
functions bi into the feedback introduces saddle points, where the gradient of the
feedback vanishes; however, these saddle points can be moved, either by changing
bi or by changing P (x).
192
Appendix A
Hybrid Systems Framework
A hybrid system is a dynamical system that allows for both continuous and
discrete evolution of the state. In this work, we appeal to the hybrid systems
framework of [77,78] for control design and analysis. In this framework, a hybrid
system H is defined by four objects: a flow map, F , governing continuous evo-
lution of the state by a differential inclusion, a jump map, G, governing discrete
evolution of the state by a difference inclusion, a flow set, C, dictating where
continuous state evolution is allowed, and a jump set, D, dictating where discrete
state evolution is allowed. Given a state x ∈ Rn, we write a hybrid system in the
compact form
H
x ∈ F (x) x ∈ C
x+ ∈ G(x) x ∈ D.
Often, we will refer to a hybrid system by its data as H = (F,G,C,D).
Solutions to hybrid systems are defined on hybrid time domains and are
parametrized by t, the amount of time spent flowing and j, the number of jumps
that have occurred. A compact hybrid time domain is a set E ⊂ R≥0 ×Z≥0 of the
193
form
E =J⋃
j=0
([tj, tj+1], j), (A.1)
where 0 = t0 ≤ t1 ≤ · · · ≤ tJ+1. We say that E is a hybrid time domain if, for each
(T, J) ∈ E, the set E ∩ ([0, T ] × 0, 1, . . . , J) is a compact hybrid time domain.
On every hybrid time domain, points are naturally ordered as (t, j) (s′, k′) if
t+ j ≤ s+ k and (t, j) ≺ (s, k) if t+ j < s+ k.
A hybrid arc is a function x : domx → Rn, where domx is a hybrid time
domain and, for each fixed j, the map t→ x(t, j) is a locally absolutely continuous
function on the interval
Ij = t : (t, j) ∈ domx. (A.2)
Hybrid arcs may have various properties. A hybrid arc x : domx→ Rn is
• nontrivial if dom x is not a singleton,
• complete if domx is unbounded,
• Zeno if it is complete and bounded in the t direction,
• eventually discrete if T = supt : (t, j) ∈ domx, j ∈ N < ∞ and domx ∩
(T × N) is not a singleton.
A hybrid arc x is a solution to the hybrid system H = (F,G,C,D) if
1. x(0, 0) ∈ C ∪D,
2. for each j ∈ Z≥0 such that Ij has nonempty interior, x(t, j) ∈ F (x(t, j)) for
almost all t ∈ Ij and x(t, j) ∈ C for all t ∈ [min Ij, sup Ij),
194
3. for each (t, j) ∈ domx such that (t, j + 1) ∈ domx, x(t, j + 1) ∈ G(x(t, j))
and x(t, j) ∈ D.
A solution x to H is maximal if it is not a truncation of another solution.
The set of maximal solutions to H with initial condition ξ is SH(ξ). For some
set X ⊂ Rn, the set of maximal solutions to H with initial conditions in X
is denoted as SH(X). Given a hybrid arc x that is not eventually discrete, we
define its time projection as follows. Let J(t) = maxj : (t, j) ∈ domx and let
T = supt : (t, j) ∈ domx, j ∈ N (possibly, T = ∞). Then we define the time
projection of x as the function x↓t : [0, T ) → Rn as
x↓t (t) = x(t, J(t)). (A.3)
We assume that the data of the hybrid system H satisfy three basic assump-
tions1that provide for robustness of stability to small perturbations. A hybrid
system H = (F,G,C,D) is said to satisfy the hybrid basic conditions if
1. C and D are closed sets in Rn.
2. F : Rn
Rn is an outer semicontinuous set-valued mapping, locally bounded
on C, and such that F (x) is nonempty and convex for each x ∈ C.
3. G : Rn
Rn is an outer semicontinuous set-valued mapping, locally bounded
on D, and such that G(x) is nonempty for each x ∈ D.
A compact set A ⊂ Rn is stable for H if for each open set Uǫ ⊃ A, there exists
an open set Uδ ⊃ A such that for each solution x to H satisfying x(0, 0) ∈ Uδ,
1A set-valued map F : X Y ( denotes a map to the subsets of the codomain) is outersemicontinuous if for all x ∈ X and all sequences xi → x, yi ∈ F (xi) such that yi → y, we havey ∈ F (x). It is locally bounded on C if for each compact K ⊂ C, F (K) is bounded.
195
it follows that x(t, j) ∈ Uǫ for all (t, j) ∈ domx. A compact set A is unstable if
it is not stable. A compact set A is attractive if there exists a neighborhood of
A from which each solution is bounded and converges to A, i.e. there exists an
open set U ⊃ A such that for each x ∈ SH(U) and each open set Uǫ ⊃ A, there
exists T > 0 such that x(t, j) ∈ Uǫ for all (t, j) ∈ domx such that t+ j ≥ T . The
set of points in Rn from which each solution is complete, bounded, and converges
to A is called the basin of attraction of A. Note that each point in Rn \ (C ∪D)
belongs to the basin of attraction, since no solutions exist from these points.
Finally, we remark that while the above definitions are written in terms of Rn,
they equally apply to manifolds embedded in Rn. In particular, they apply to the
state spaces that we will be using in this work: Sn, SO(n), and discrete sets of
logic variables.
196
Appendix B
Topology
In essence, a topology endows a set of points with a particular structure. Once
this structure is specified, a primary concern becomes whether this structure is
preserved when the set is deformed.
Definition B.1. Given a set X, a topology on X is a collection T of subsets of
X that has the following properties:
1. ∅ and X are in T .
2. The union of the elements of any subcollection of T is in T .
3. The intersection of the elements of any finite subcollection of T is in T .
The pair (X, T ) consisting of a set X and its topology T is a topological space
and any element U ∈ T is called an open set.
That is, a topological space is a set X, together with a collection of subsets
of X, called open sets, such that ∅ and X are open, and such that arbitrary
197
unions and finite intersections of open sets are open. Endowed with a topology,
an arbitrary set X is no longer a loose collection of elements - it now has a
structure that is amenable to analysis. Often, we may refer to some space X as
a topological space, assuming that it equipped with some topology that we don’t
specify directly.
Example B.2. Let X be a set. The trivial topology on X is ∅, X. The discrete
topology on X is 2X , that is, the set of all subsets of X.
Example B.3. Let (X, d) be a metric space, that is, d : X × X → R≥0 is a
metric on X. Consider the ǫ-ball centered at x ∈ X, defined as Bd(x, ǫ) = y ∈
X : d(x, y) < ǫ. The metric topology on X (induced by d) is the set of all
subsets of X that can be written as an arbitrary union or finite intersection of
sets Bd(x, ǫ). The standard topology on Rn is induced by metric defined as the
Euclidean norm between two elements.
Example B.4. Given a topological space (X, T ) and a subset S, one can define
the subspace topology as TS = S ∩ U : U ∈ T .
Now, we recall several other common definitions in analysis from a topological
viewpoint.
Definition B.5. Let (X, T ) be a topological space.
1. An element V ∈ T is a closed set if X \ V is open, that is, (X \ V ) ∈ T .
2. A neighborhood of x ∈ X is some open set U ∈ T such that x ∈ U .
3. Given a subset S ⊂ X, its interior, S is the largest open subset contained
in S, or
S =⋃
U ∈ T : U ⊂ S.
198
4. Given a subset S ⊂ X, x ∈ X is a limit point of S if for every neighborhood
U of x, U ∩ S 6= ∅.
5. Given a subset S ⊂ X, the closure of S, denoted S, is the smallest closed
subset containing S. That is,
S =⋂
V : V ⊂ S, (X \ V ) ∈ T .
6. The boundary of a subset S ⊂ X is defined as ∂S = S ∩X \ S.
7. A cover of a subset S ⊂ X is a set of subsets Uaa∈A (A is an arbitrary
index set) such that S ⊂ ∪a∈AUa. A subcover is a set of subsets Uaa∈Bsuch that B ⊂ A and S ⊂ ∪b∈BUb.
Topological spaces can also have several properties. We recall a few here that
are important for our discussion.
Definition B.6. Let (X, T ) be a topological space.
1. (X, T ) is compact if every open cover has a finite subcover.
2. (X, T ) is connected if, for any subset S ⊂ X, if S is both open and closed,
then S ∈ ∅, X. If (X, T ) is not connected, then it is called disconnected.
3. A subset S ⊂ X is dense if S = X.
One of the most fundamental concepts in topology and mathematical analysis
is the notion of a continuous function: a map between two spaces that has a basic
smoothness property.
199
Definition B.7. Let (X, TX) and (Y, Ty) be topological spaces. A function f :
X → Y is continuous if for each open subset V ⊂ Y , the set f−1(V ) is an open
subset of X.
Note that the continuity of a function depends on the topology of the underly-
ing topological spaces. Also, there are several equivalent definitions of continuity.
Theorem B.8 ( [113]). Let X and Y be topological spaces and let f : X → Y .
Then, the following are equivalent:
1. f is continuous.
2. For every subset A ⊂ X, it follows that f(A) = f(A).
3. For every closed set B ⊂ Y , the set f−1(B) is closed in X.
4. For every x ∈ X and every open neighborhood V ∋ f(x), there exists an
open neighborhood U ∋ x such that f(U) ⊂ V .
With this definition in place, we can describe a condition that draws an equiv-
alence between two topological spaces.
Definition B.9. Let (X, TX) and (Y, TY ) be topological spaces. If a continuous
function f : X → Y is injective (one-to-one), surjective (onto), and the inverse
function f−1 : Y → X is continuous, then f is a homeomorphism.
When V ⊂ Y is open, the continuity of f ensures that U = f−1(V ) is open,
but then the inverse image of U under the map f−1 is the same as the image of
U under f . Thus, a homeomorphism not only provides a bijection (both injective
and surjective) between the elements of X and Y , but their open sets as well. As
200
a result, when a property of some set X is expressed in terms of its topology, a
homeomorphism f : X → Y also endows Y (and its topology) with this property.
That is, a homeomorphism preserves topological structure. In fact, we can equate
topological equivalence to the existence of a homeomorphism.
Definition B.10. Let (X, TX) and (Y, TY ) be topological spaces. If there exists
a homeomorphism f : X → Y , then (X, TX) and (Y, TY ) are said to be homeo-
morphic.
At times, two topological spaces may be identical in a small region. We en-
capsulate this idea in the following definition.
Definition B.11. Let (X, TX) and (Y, TY ) be topological spaces and let x ∈ X. A
map f : X → Y is a local homeomorphism at x if there exists open neighborhoods
U of x and V = f(U) such that the restriction of f to U , denoted f |U : U → V ,
is a homeomorphism. When f is a local homeomorphism at every x ∈ X, then it
is said to be everywhere a local homeomorphism.
At times, the notion of a homeomorphism may be a fairly restrictive mech-
anism for comparing two topological spaces. Also, one might wonder how to
compare two continuous functions and when they might be thought of as topo-
logically similar. The following definition provides a method for these comparison
tasks by asking that one function can be continuously deformed into the other.
Definition B.12. Let X and Y be topological spaces. Two continuous functions
f, g : X → Y are said to be homotopic if there exists a continuous function
h : X × [0, 1] → Y such that, for every x ∈ X, h(x, 0) = f(x) and h(x, 1) = g(x).
The function h is called a homotopy. If f is homotopic to a constant map, then
it is said to be null homotopic.
201
Note that when two maps f and g are homotopic, h provides a family of “in-
termediate” continuous functions. That is, one could define ht : X → Y as the
continuous function x 7→ h(x, t) for each t ∈ [0, 1]. Also, the condition of being
homotopic is an equivalence relation on the set of all continuous functions from
X to Y [113, 184]. The notion of homotopy provides for an important topologi-
cal invariant, that is, a topological property of a set that is unchanged under a
homeomorphism.
Definition B.13. A topological space X is contractible if there exists x0 ∈ X
and a continuous map h : X × [0, 1] → X such that h(x, 0) = x and h(x, 1) = x0
for every x ∈ X.
Another way to state Definition B.13 is that the identity map is homotopic
to the constant map, or that the identity map is null homotopic. Thus, when a
topological space is contractible, it can be continuously deformed into a point.
We now recall useful results from topology relating covering spaces, simple
connectivity, and homeomorphisms. Most of the following material deals with
the question of when a function that is everywhere a local homeomorphism is
a homeomorphism. First, we note that a property of mappings related to local
homeomorphisms is notion of properness.
Definition B.14. Let X and Y be topological spaces. A map f : X → Y is
proper if for every compact subset K ⊂ Y , the set f−1(K) is compact.
Requiring a map to be proper is essentially requiring that an arbitrarily “large”
region in the domain cannot be mapped to a “small” region in the codomain.
When this property is paired with the property of being a local homeomorphism,
the result is that the map must be surjective (onto).
202
Lemma B.15 ( [130, 185–188]). Let X and Y be topological spaces. If a map
f : X → Y is proper and is a local homeomorphism, then it is surjective.
Often, the topological properties of a set are studied through loops in the
space.
Definition B.16. Let X be a topological space. A loop in X is a continuous map
p : [0, 1] → X such that p(0) = p(1) = p0. The point p0 ∈ X is called the base
point. The path p is a trivial loop if p(t) = p0 for all t ∈ [0, 1].
Loops with the same base point can be concatenated to form another loop
with the same base point, giving rise to the fundamental group. While we refer
the reader to [113,184] for a rigorous treatment of this topic, we pause to extract
a particular topological invariant from this discussion.
Definition B.17. A topological space X is path connected if for every x, y ∈ X,
there exists a continuous function p : [0, 1] → X such that p(0) = x and p(1) = y.
Definition B.18. A path-connected topological space X is simply connected if
every loop in X is null homotopic.
Intuitively, a topological space is simply connected when there are no “holes”
that cannot be avoided by a continuous deformation.
Example B.19. The compact manifold Sn is path connected when n ≥ 1, but
not simply connected for n = 1. It is simply connected when n ≥ 2.
Example B.20. The compact manifold SO(n), n ≥ 2, is path connected, but not
simply connected.
203
The notion of simple connectedness allows us to extend Lemma B.15 to a quite
useful result.
Theorem B.21 ( [188]). Let X and Y be path connected and Hausdorff and let Y
be simply connected. Then, if f : X → Y is everywhere a local homeomorphism,
then f is a homeomorphism if and only if f is proper.
We note that this theorem is a generalization of the results in [187], where
X and Y are Rn and that [189] provides a historical perspective of the result in
the context of Banach spaces. Related results appear in [130,186,190], where the
local homeomorphism property is satisfied by the local inverse function theorem
for maps with non-vanishing Jacobian matrices.
When a topological space is not simply connected, it is sometimes helpful to
consider a simpler topological space that is intimately related to the original space.
With this inspiration, we explore the notion of a covering space.
Definition B.22. Let p : E → B be a continuous surjective map. An open set
U ⊂ B is evenly covered by p if p−1(U) can be written as the union of disjoint
sets Vα ⊂ E such that for each α, the restriction of p to Vα is a homeomorphism
of Vα onto U .
Definition B.23. Let p : E → B be continuous and surjective. If every point
b ∈ B has a neighborhood U that is evenly covered by p, then p is called a covering
map, and E is called a covering space of the base space, B. If additionally, E is
simply connected, it is said to be the universal covering space of B.
Example B.24. The universal covering of S1 is R, with covering map p(x) =
(cos x, sin x) (see, e.g., [113, Theorem 53.1]).
204
E E
B B
f ∗
p
f
p
Figure B.1. Commutative diagram of lifts of a function.
Example B.25. The universal covering space of SO(3) is S3. See [142,143].
Related to Theorem B.21, we have the following well-known result. It is men-
tioned, for instance, in [191].
Theorem B.26. Let X and Y be path connected topological spaces and let Y be
simply connected. Then, a map f : X → Y is a homeomorphism if and only if X
is a covering space of Y with covering map f .
Finally, we conclude this appendix with a lemma that allows one to analyze
a particular function defined in a base space by is “lift” in a covering space. As
we will show later, this can be particularly useful when trying to determine when
a local homeomorphism is a homeomorphism from a simply connected space to
itself.
Definition B.27. Let f : B → B and suppose that p : E → B is a covering map.
Then, a function f ∗ is a lift of f over p if f p = p f ∗, or, the diagram Fig. B.1
commutes.
The following lemma and its corollary are a result of the author, used to prove
Theorem 3.3.4.
205
Lemma B.28. If p : E → B is a covering map and f ∗ : E → E is a homeomor-
phism that is a lift of a function f : B → B, then f is a homeomorphism.
Proof. Suppose that f ∗ is bijective. Let b ∈ B. Since p is surjective, let p(e) = b.
Then, since f ∗ is surjective, there exists e′ ∈ E such that f(e′) = e and since f ∗
is a lift of f , p (f ∗ (e′)) = p(e) = f(p(e′)) = b, so that f is surjective.
Let b1, b2 ∈ B, E1 = p−1(b1), E2 = p−1(b2), and suppose that b1 6= b2. This
implies that E1 ∩ E2 = ∅. Since f ∗ is injective, it follows that f ∗(E1) ∩ f ∗(E2) = ∅
and p (f ∗(E1))∩p((f ∗(E2)) = ∅. Then, since f ∗ is a lift of f , f(b1) 6= f(b2). Hence,
f is injective. The fact that f and f−1 are continuous follows from the local
properties of f ∗ and p.
Corollary B.29. Let E be the universal covering space of B and let f ∗ : E → E
be a lift of f : B → B over the covering map p : E → B. If f ∗ is everywhere a
local homeomorphism and proper, then f ∗ and f are homeomorphisms.
Proof. This is a direct extension of applying Theorem B.21 to f ∗, given that the
universal covering space of B is simply connected. Then, Lemma B.28 provides
the result.
206
Appendix C
Calculus, Manifolds, and
Differential Geometry
Moving from the smoothness of continuity found in topology to differentiability
we first make some notational conveniences. When a function f : Rn → R is
differentiable, we denote the derivative of f at x as the (co-)vector of partial
derivatives
Df(x) =
[∂f(x)
∂x1
· · · ∂f(x)
∂xn
]. (C.1)
The gradient of f at x ∈ Rn is defined as the vector
∇f(x) = (Df(x))⊤ . (C.2)
207
When f : Rn → R
m, the derivative or Jacobian matrix of h is given as the matrix
of partial derivatives
Df(x) =
Df1(x)
...
Dfm(x)
=∂f(x)
∂x. (C.3)
The higher derivatives of f (should they exist) are denoted as Drf (meaning the
rth derivative of f). A differentiable homeomorphism f : Rn → R
n whose inverse
is also differentiable is called a diffeomorphism. With these definitions in place, we
can now introduce the basic object of study in differential geometry: the manifold.
Loosely speaking, a manifold is somewhat of a generalization of a surface in
Rn. At each point in the manifold, it appears, at least locally, to be just like R
n;
however, this local viewpoint may not reflect the global picture.
Definition C.30. Let X be a set and n ∈ N. A chart for X is a pair, (U, φ) such
that U ⊂ X, V = φ(U) is an open subset of Rn, and φ is a diffeomorphism. An
atlas for X is a collection A = (Ua, φa)a∈A of charts such that X = ∪a∈AUaand whenever Ua ∩ Ub 6= ∅, it follows that
1. φa(Ua ∩ Ub) and φb(Ua ∩ Ub) are open subsets of Rn and
2. φab := φb φ−1a is a diffeomorphism from φa(Ua ∩ Ub) to φb(Ua ∩ Ub).
Two atlases A1 and A2 are equivalent if A1 ∪ A2 is also an atlas. A manifold M
of dimension n is a set X equipped with an equivalence class of atlases under this
equivalence relation.
When a map takes points in some manifold M to another manifold N , it
becomes important to characterize it in terms of the charts that make up M and
N .
208
Definition C.31. Let f : M → N be a map between manifolds, let x ∈ M , let
(U, φ) be a chart for M where U is a neighborhood of x, and let (V, ψ) be a chart
for N , where V is a neighborhood of f(x). Then, the local representative of f
with respect to these charts is the map fφψ : U → V defined as
fφψ = ψ f φ−1. (C.4)
A local representative is then a map between open subsets in Euclidean spaces,
perhaps not of the same dimension. Now that we can identify open subsets of a
manifold with open subsets of Euclidean space, it is straightforward to define what
it means for a map between manifolds to be differentiable.
Definition C.32. Let f : M → N be a map between manifolds. The map f is
differentiable if for every x ∈M , there exists charts (U, φ) and (V, ψ) such that U
is a neighborhood of x, V is a neighborhood of f(x), and the local representative of
f with respect to these charts is differentiable. The map f is a diffeomorphism if it
is bijective, differentiable, and the inverse map, f−1 : N →M is also differentiable.
Definition C.33. A subset S of an n-dimensional manifold M is a submanifold
if, for each x ∈ S, there exists an admissible chart (U, φ) for M with x ∈ U such
that
1. φ : M → Rk × R
n−k
2. φ(U ∩ S) = φ(U) ∩ (Rk × 0).
If additionally, the integer k is independent of x ∈ M , then S is said to be of
dimension k.
209
With these definitions in place, we define the tangent space of a manifold and
a vector field. Following [15], we define an equivalence class of curves on the
manifold according to their derivative. Given a manifold M , a curve at x is a
curve c : I → M where I is an interval, 0 ∈ I, and c(0) = x. Then, two curves
c1 and c2 are equivalent at x if, in some coordinate chart (U, φ), where U is a
neighborhood of x, the local representatives of c1 and c2 have the same derivative
at 0. We denote the equivalence class of curves at x as [γ]x. When two curves
are equivalent at x, we write c1x∽ c2.
Definition C.34. Given a manifold M , a tangent vector at x is an equivalence
class of curves under the equivalence relationx∽. The set of all tangent vectors at
x is called the tangent space of M at x and is denoted TxM . The disjoint union
TM =⋃
x∈M(x × TxM) (C.5)
of all tangent spaces is called the tangent bundle. The tangent bundle projection
is the map πTM : TM →M defined as πTM(v) = x when v ∈ TxM .
We note that the tangent bundle of a manifold is also a manifold.
Dual to the tangent space and tangent bundle are the cotangent space and
cotangent bundles.
Definition C.35. Let M be a manifold and let x ∈ M . The cotangent space of
M at x is the set of linear functionals on TxM , denoted T∗xM . That is, every
element v ∈ T∗xM , referred to as a cotangent vector is a linear map v : TxM → R.
The action of a covector v on a vector u is denoted v · u.
Definition C.36. Given a differentiable map between manifolds f : M → N , the
210
tangent map, Tf : TM → TN is the map Tf([γ]x) = [f γ]f(x). The restriction
of Tf to TxM is denoted Txf .
A special case of the tangent map is the differential of a function.
Definition C.37. Let M be a manifold and let f : M → R be differentiable. The
cotangent vector αf ∈ T∗xM satisfying Tf(v) = (f(x), αf · v) is the differential of
f at x, denoted df(x).
Definition C.38. Let f : M → N be a differentiable map between manifolds
M,N .
1. If Txf is injective, then f is an immersion at x. If f is an immersion for
every x ∈M , then it is an immersion.
2. If f is an injective immersion with f(M) a submanifold of M , we say that
it is an embedding.
Definition C.39. Let M be a manifold. A vector field is a continuous map
F : M → TM such that for each x ∈M , F (x) ∈ TxM .
Definition C.40. Let M be a differentiable manifold. A Riemannian metric G
is family of positive definite inner products Gx : TxM × TxM → R such that
for all differentiable vector fields F,G on M , the map x 7→ Gx(F (x), G(x)) is
differentiable. The pairing of a manifold with a Riemannian metric (M,G) is a
Riemannian Manifold.
When manifold M is endowed with a Riemannian metric G, there are natural
isomorphisms between the tangent and cotangent spaces, denoted as Gx : TxM →
T∗xM and G
#x : T∗
xM → TxM . Taken point-wise, these maps define isomorphisms
211
between the tangent and cotangent bundles, denoted as G : TM → T∗M and
G# : T∗M → TM .
Definition C.41. Let M be a manifold and let V : M → R be differentiable.
The gradient of a function V is defined as
gradV (x) = G#x (dV (x)). (C.6)
Note that in the special case, when V : Rn → R, we use the symbol ∇V :
Rn → R
n to denote the gradient of V , the (column) vector of partial derivatives
(see Appendix D).
Definition C.42. Let (M,G) be a Riemannian manifold and set S ⊂ M be a
submanifold. The normal space of S at x ∈ S is the set
NxS = v ∈ TxM : 〈v, w〉 = 0 for all w ∈ TxS, (C.7)
where 〈·, ·〉 is the inner product Gx. The normal bundle is the disjoint union
NS =⋃
x∈Sx × NxS. (C.8)
The normal bundle projection is the map πNS : NS → S defined as πNM(v) = x,
when v ∈ NxS.
Definition C.43. Let M be a manifold and let S ⊂ M be a submanifold. A
tubular neighborhood of S is an open neighborhood U of S in M such that U is
diffeomorphic to an open neighborhood of the set (x, 0) ∈ NS.
Theorem C.44 ( [192,193]). Let S ⊂M be a compact submanifold of M . Then,
S has a tubular neighborhood.
212
Appendix D
Matrix Calculus by Vectorization
and the Kronecker Product
In this work, we employ the matrix calculus described in [194], which yields a
useful Jacobian matrix, a chain rule, and a product rule through matrix vectoriza-
tion. These properties are closely tied to the Kronecker product of two matrices.
We begin by recalling some identities related to the Kronecker product, inner
products, and vectorization (see [195, 196], for example). Given matrices A, B,
and C of appropriate sizes, we have
vecABC = (C⊤ ⊗ A) vecB (D.1a)
(vecA)⊤ vecB = 〈vecA, vecB〉 = trace(A⊤B) = 〈A,B〉 . (D.1b)
Given a function f : Rm×n → R
p×q, we define the Jacobian matrix of f at
213
X ∈ Rm×n as the mn× pq matrix of partial derivatives
Df(X) =∂ vec f(X)
∂ vecX. (D.2)
That is,
Df(X) =
∂f 1(X)
∂x1
· · · ∂f 1(X)
∂xn...
. . ....
∂f q(X)
∂x1
· · · ∂f q(X)
∂xn
,
where
∂f i(X)
∂xj=
∂f1i
∂X1j
· · · ∂f1i
∂Xpj
.... . .
...
∂fmi∂X1j
· · · ∂fmi∂Xpj
.
Using this matrix calculus affords us the following chain and product rules.
Suppose that f : Rm×n → R
p×q, g : Rp×q → R
r×s, and h = f g : Rm×n → R
r×s.
Also, suppose that k : Rm×n → R
q×r and ℓ(X) = f(X)k(X). Then, we have
Dh(X) = Dg(f(X))Df(X) (D.3)
Dℓ(X) =∂ vec f(X)k(X)
vecX=(k(X)⊤ ⊗ Im
)Df(X) + (Ip ⊗ f(X)) Dk(X).
(D.4)
As special cases of Df , we consider when either the domain or range of f is R.
In these cases, we retain some helpful notation that groups the partial derivatives
together in a matrix, rather than applying vec to them. In this direction, let
214
f : R → Rp×q and let g : R
m×n → R. Then, we define
df(t)
dt= f(t) =
df11(t)
dt· · · df1q(t)
dt...
. . ....
dfp1(t)
dt· · · dfpq(t)
dt
(D.5)
∇g(X) =
∂g(X)
∂X11
· · · ∂g(X)
∂X1n...
. . ....
∂g(X)
∂Xm1
· · · ∂g(X)
∂Xmn
(D.6)
so that
Df(t) =d vec f(t)
dt= vec
df(t)
dt(D.7)
Dg(X) =∂g(X)
∂ vecX= (vec∇g(X))⊤. (D.8)
We use the gradient notation in (D.6) so that when X : R → Rm×n and
V = g X, we have
dV (t)
dt= Dg(X(t))DX(t)
= (vec∇g(X))⊤ vec X(t) = trace(∇g(X)⊤X) =⟨∇g(X(t)), X(t)
⟩.
(D.9)
This notation agrees with the case when γ : R → Rn, σ : R
n → R, and
dσ γ(t)dt
=dσ(γ(t))
dγ
dγ(t)
dt= ∇σ(γ(t))⊤γ(t) = 〈∇σ(γ(t)), γ(t)〉 , (D.10)
where, for y, z ∈ Rn, 〈y, z〉 = y⊤z denotes the natural inner product on R
n.
215
Appendix E
Properties of the Cross Product
The [·]× operator has several useful properties. In particular, for all y, z ∈ R3,
α, β ∈ R, k ∈ N, and every X ∈ SO(3),
[αy + βz]× = α [y]× + β [z]× (E.1a)
[y]⊤× = − [y]× (E.1b)
[y]× y = 0 (E.1c)
[y]× z = − [z]× y (E.1d)
[y]× [z]× = zy⊤ − y⊤zI (E.1e)
[[y]× z
]× = zy⊤ − yz⊤ (E.1f)
[y]2× = yy⊤ − y⊤yI (E.1g)
[y]2k+1× = (−1)k|y|2k [y]× (E.1h)
[y]2k× = (−1)k|y|2k [y]2× (E.1i)
X [y]×X⊤ = [Xy]× . (E.1j)
216
Also, recall that for any skew-symmetric matrix S ∈ R3×3 (satisfying S⊤ = −S),
it follows that for any x ∈ R3, x⊤Sx = 0, so z⊤ [y]× z = 0.
As a consequence of (E.1h) and (E.1i), the matrix exponential of [y]× is easy
to compute. In particular, let u ∈ S2 and θ ∈ R. We have that
e[θu]× = eθ[u]× = I +θ
1![u]× +
θ2
2![u]2× + · · ·
= I +∞∑
k=0
(−1)kθ2k+1
(2k + 1)![u]× +
∞∑
k=0
(−1)kθ2k+2
(2k + 2)![u]2×
= I + sin θ [u]× + (1 − cos θ) [u]2×
= R(θ, u).
(E.2)
This is exactly the (Euler) Rodrigues formula (3.45), used to represent the attitude
of a rigid body as a rotation about a fixed axis.
The cross product constitutes an isomorphism between so(3) and R3, with the
inverse map given by vec× : so(3) → R3. That is, vec× [y]× = y for all y ∈ R
3.
This map can be extended to all of R3 by projection to so(3) as follows. Recall
the projection of R3 to so(3), skew : R
3×3 → so(3), defined in (0.3) as
skewA =A− A⊤
2. (E.3)
We can now extend the vec× operation to all of R3×3 by taking its composition
with skew [13]. In this direction, we define ψ : R3×3 → R
3 as
ψ(A) = vec× skewA =1
2
A32 − A23
A13 − A31
A21 − A12
. (E.4)
217
The operator ψ has several useful properties. In particular (see [197] for more),
for any z ∈ R3, u ∈ S
2, θ ∈ R, and A,B ∈ R3×3,
ψ(A⊤) = −ψ(A) (E.5a)
ψ(AB⊤) =1
2
3∑
i=1
[bi]× ai (E.5b)
trace(A [z]×) = 2z⊤ψ(A⊤) (E.5c)
ψ([z]×) = z (E.5d)
‖ψ(A)‖22 =
1
2‖ skewA‖2
F (E.5e)
ψ(R(θ, u)) = u sin θ. (E.5f)
When dealing with derivatives of maps from Rm×n to R
p×q, it is convenient
to work in the framework of the matrix calculus in Appendix D. In this setting,
when using the vec operation on matrices that form products with [y]× for some
y ∈ R3, it is helpful to introduce the function Σ : R
3×3 → R9×3, defined as
Σ(A) =
[a1]×
[a2]×
[a3]×
. (E.6)
When equipped with certain algebraic properties, this map makes some calcu-
lations much easier to manage. With this definition and properties (E.1b) and
(E.1d), we can express (E.5b) as
ψ(AB⊤) =1
2Σ(A)⊤ vecB = −1
2Σ(B)⊤ vecA. (E.7)
218
Using properties (E.1d), (E.1j), and (D.1a) we note that when X ∈ SO(3), A ∈
R3×3, and z ∈ R
3,
(I ⊗X)Σ(A)X⊤ = Σ(XA) (E.8a)
vec [z]×A = (I ⊗ [z]×) vecA = −Σ(A)z (E.8b)
and so
vecX [z]× = vec [Xz]×X = −Σ(X)Xz. (E.8c)
219
Appendix F
Proofs
F.1 Proof of Theorem 2.1.2
Proof. Clearly, Φt is continuous, since Φ is continuous. Now, we show that Φt
is injective. Suppose that Φt(x) = Φt(y). By the appropriate axioms in the
definition of a flow, we have y = Φ(y, 0) = Φ(y, t − t) = Φ(Φ(y, t),−t) =
Φ(Φ(x, t),−t) = Φ(x, t − t) = Φ(x, 0) = x. Hence, Φt(x) = Φt(y) implies
that x = y. Now, we show that Φt is onto. Let y ∈ X. Then, let x = Φ(y,−t).
Clearly, Φt(x) = Φ(x, t) = Φ(Φ(y,−t), t) = Φ(y, t− t) = Φ(y, 0) = y. It remains
to be shown that the inverse function of Φt is also continuous. First, we note that
Φt1 Φt2 = Φt1+t2 . Hence, for any t ∈ R, the inverse map of Φt is Φ−t, since
Φt Φ−t = Φ0, which is the identity map. Hence, the inverse is also continuous,
since it is also a t-flow.
220
F.2 Proof of Lemma 2.1.7
Proof. LetW be an open neighborhood of A such thatW ⊂ BΦ(A) and Φ(W, t) ⊂
U for all t ∈ R≥0. Such an open neighborhood exists by the definition of asymp-
totic stability of A under Φ. Now, let x ∈ BΦ(A) so that, by attractivity of A,
there exists T ≥ 0 such that for all t ≥ T , Φ(x, t) ∈W .
Now, since ΦT is continuous (and ΦT−1= Φ−T ), it follows that V = Φ−T (W )
is open and for any y ∈ V , we have Φ(y, T ) ∈ W , and so, since W ⊂ BΦ(A), it
follows that V ⊂ BΦ(A) and so, BΦ(A) is open. Moreover, since Φ(W, t) ⊂ U
for all t ≥ 0 by assumption, it follows that Φ(V, T + t) ⊂ U for all t ≥ 0.
F.3 Proof of Theorem 2.1.8
Proof. To show that BΦ(x0) is contractible, (recalling Definition B.13) we must
construct a continuous function h : X → [0, 1] such that h(x, 0) = x and h(x, 1) =
x0 for every x ∈ X. We will use the flow Φ to construct this function as
h(x, t) =
Φ(x, t
1−t)
0 ≤ t < 1
x0 t = 1.
Since Φ is continuous on X × R, h is clearly continuous on X × [0, 1).
To show that h is continuous, must show that h is continuous at each (x, 1) ∈
X×1. Suppose that x ∈ X and let U be an open neighborhood of h(x, 1) = x0.
Then, since x0 is asymptotically stable under Φ, Theorem 2.1.8 provides the
existence of an open neighborhood V of x and T ∈ R≥0 such that for all y ∈ V ,
221
Φ(s, y) ∈ U for all s > T . Then, when t/(1−t) > T , or equivalently, 1−δ < t ≤ 1,
where δ = 1/(1 + T ), it follows that Φ(
t1−t)∈ U . Hence, h−1(U) is open and so,
h is continuous on X × 1.
F.4 Proof of Lemma 2.2.9
Proof. Clearly, (2.5) is statisfied for any x ∈ M . Now, we show the semigroup
property ΦF (ΦF (x, t1), t2) ⊂ Φ(x, t1 + t2). Let p ∈ ΦF (ΦF (x, t1), t2). That is,
there exist φ1 ∈ SF (x, t1) and φ2 ∈ SF (φ1(x, t1), t2) such that p = φ2(φ1(x, t1), t2).
Now, define φ : M × [0, t1 + t2] as
φ(x, t) =
φ1(x, t) 0 ≤ t ≤ t1
φ2(φ1(x, t1), t− t1) t1 ≤ t ≤ t2,
it follows that φ ∈ SF (x, t1+t2) and that φ(x, t1+t2) = p, hence p ∈ ΦF (x, t1+t2).
Conversely, suppose that q ∈ ΦF (x, t1 + t2), that is, there exists φ ∈ SF (x, t1 +
t2) such that φ(x, t1 + t2) = q. Now, define φ1, φ2 as follows:
φ1(x, t) = φ(x, t) 0 ≤ t ≤ t1
φ2(φ1(x, t1), t) = φ(x, t+ t1) 0 ≤ t ≤ t2.
It follows that φ1 ∈ SF (x, t1), φ2 ∈ SF (φ1(x, t1), t2), and φ2(φ1(x, t1), t2) = q ∈
ΦF (ΦF (x, t1), t2). The outer semicontinuity of ΦF on M × [0,∞) follows from
Corollary 2.2.8.
222
F.5 Proof of Theorem 3.3.3
Proof. Clearly, the fact that T (e1) = e1 is obvious, since P (e1) = 0 by assumption,
which implies that exp(0S) = I and so T (e1) = exp(kP (e1)S)e1 = Ie1 = e1. This
proves (3.36).
The expression (3.37) can be verified by seeing that the Jacobian ∂∂xeAt(x) =
eAt(x)(I + Ax∇t(x)⊤) for any x ∈ Rn, A ∈ R
n×n, and differentiable ∇t : Rn →
R. The calculation of the determinant in (3.38) follows from the fact that for
two matrices A,B ∈ Rn×n, det(AB) = det(A) det(B), that for any R ∈ SO(2),
det(R) = 1, and from the formula for the determinant of “rank-one updates.” In
particular, that for two vectors x, y ∈ Rn, det(I + xy⊤) = 1 + x⊤y (see [129, Ch.
6.2]). Then, (3.39) and (3.40) follow from the fact that exp(At) commutes with
A, so that, exp(kP (x)S)S = S exp(kP (x)S) and so
DT (x)Sx = exp(kP (x)S)(I + kSx∇P (x)⊤
)Sx
= S exp(kP (x)S)x (1 + k 〈∇P (x), Sx〉)
= det DT (x)ST (x).
By the chain rule of differentiation, this identity implies both (3.39) and (3.40).
Clearly, (3.40) implies (3.41).
F.6 Proof of Theorem 3.3.4
Proof. Let p : R → S1 be given as p(θ) = [cos θ sin θ]⊤ and define T ∗ : R → R
as
T ∗(θ) = θ + kP (ρ(θ)).
223
We now verify that T ∗ is a lift of T over p. Applying the covering map p to T
and T ∗ appropriately, we see that
p (T ∗(θ)) = exp(θS + kP (p(θ))S)e1
= exp(kP (p(θ))S) exp(θS)e1
= exp(kP (p(θ)))p(θ)
= T (p(θ)).
So, we have shown that p T ∗ = T p, meaning that T ∗ is a lift of T over p.
Now, we compute the derivative of T ∗ with respect to θ as
dT ∗(θ)
dθ= 1 + k 〈∇P (p(θ)), Sp(θ)〉
= det DT (p(θ)).
(F.1)
It follows from (3.38) and (3.42) that DT (x) is nonsingular for all x ∈ S1 and so
(F.1) is nonzero for all θ ∈ R. By the inverse function theorem, T ∗ is everywhere
a local diffeomorphism. Moreover, since |θ| → ∞ implies that |T ∗(θ)| → ∞, T ∗
is a diffeomorphism by the results in [187]. Appealing to Lemma B.28, it follows
that T is a diffeomorphism.
Remark. While it may seem circuitous to analyze the proposed diffeomorphism in
the covering space and then apply Lemma B.28, topological difficulties of S1 pre-
vent us from applying existing global inverse function theorems directly to T . In
particular, S1 has a nontrivial fundamental group, preventing it from being simply
connected. Indeed, [187] applies to functions on Rn, which is simply connected.
This is reflected in the proof of the main theorem of [187].
The trouble in applying such a global inverse function theorem to a space that
224
is not simply connected arises in the proof of injectivity. As noted by [130,185,198],
so long as the map in question is proper, i.e., the inverse image of any compact
set is compact, it is surjective; however, the existing injectivity proofs rely on
the codomain being simply connected [130, 187, 188, 190]. Alas, such a winding
argument could be avoided if the inverse of T is known; however, finding the
inverse currently proves to be elusive.
F.7 Proof of Theorem 3.4.3
Proof. First, (3.55) follows from the fact that P (x) = 0 by assumption and so
T (x) = e0x = x. The expression (3.56) can be verified by calculating the Jacobian
of eAt(x)x as ∂∂xeAt(x)x = eAt(x)(I + Ax∇t(x)⊤) for x ∈ R
n, A ∈ Rn×n and a
differentiable t : Rn → R. The calculation of the determinant in (3.57) follows
from the fact that for two matrices A,B ∈ Rn×n, det(AB) = det(A) det(B),
that for any R ∈ SO(3), det(R) = 1, and from the formula for the determinant
of “rank-one updates” [129, Ch. 6.2]. In particular, for two vectors x, y ∈ Rn,
det(I + xy⊤) = 1 + x⊤y.
Both (3.58) and (3.59) follow from the following property of DT (x). First, we
recall some properties of [x]×. In particular, for any y, z ∈ R3 and R ∈ SO(3), we
225
have that [y]× z = − [z]× y and R [y]×R⊤ = [Ry]× [114]. It follows that
DT (x) [x]× = Φ(x)(I + k [u]× x∇P (x)⊤) [x]×
= Φ(x)(I − k [x]× u∇P (x)⊤) [x]×
= Φ(x) [x]× Θ(x)
= Φ(x) [x]× Φ(x)⊤Φ(x)Θ(x)
= [Φ(x)x]× Φ(x)Θ(x)
= [T (x)]× Φ(x)Θ(x).
By the chain rule, we have
− [x]⊤× ∇V T (x) = − [x]⊤× DT (x)⊤∇V (T (x))
= −(DT (x) [x]×)⊤∇V (T (x))
= −Θ(x)⊤Φ(x)⊤ [T (x)]⊤× ∇V (T (x))
and
T (x) = DT (x) [x]× ω
= [T (x)]× Φ(x)Θ(x)ω.
This proves (3.58) and (3.59).
Finally, when det DT (x) 6= 0, (3.60) follows from the Sherman-Morrison for-
mula [129, Ch. 6.2]. The identity (3.61) follows from the fact that Φ(x) is always
invertible, that Θ(x)−1 exists when det DT (x) 6= 0, and the definition of CritV
in (3.47).
226
F.8 Proof of Theorem 3.4.9
Proof. We provide a proof of this theorem, as it involves an invariance principle
and is not a direct corollary of Theorem 3.2.6. With this said, we let ξ = (Γ, ω, q) ∈
S2 × R
3 ×Q and write the closed-loop system (3.76) with ǫ = 0 as
ξ = F (ξ) ξ ∈ C
ξ+ ∈ G(ξ) ξ ∈ D,
where F (x, q) = (f(x, κq(x, q)), 0) and G(x, q) = (x, g(π(x))). Then, consider the
Lyapunov function V ∗ : S2 × R
3 ×Q→ R≥0, defined as
V ∗(ξ) = cVq(Γ) +1
2ω⊤Jω.
Since every Vq ∈ P, it follows that V ∗(S3 × R3 × A) ≥ 0 and V ∗(ξ) = 0 if and
only if ξ ∈ A. Now, we calculate the change in V ∗ along flows of (3.76) as
〈∇V ∗(ξ), F (ξ)〉 = ω⊤ [Γ]⊤× ∇Vq(Γ) + ω⊤ ([Jω]× ω +mg [ν]× Γ + κq(Γ, ω))
Since [Jω]× is a skew symmetric matrix, it follows that ω⊤ [Jω]× ω = 0. Then,
cancelling terms from κq, it follows that
〈∇V ∗(ξ), F (ξ)〉 = −ω⊤Ψ(ω) ≤ −ζ(|ω|),
where ζ : R3 → R≥0 is some class-K function.
227
Now, evaluating the change in V ∗ over jumps, we find that for every g ∈ G(ξ),
V ∗(g) − V ∗(ξ) = cVg(Γ) − cVq(Γ)
= cρ(Γ) − cVq(Γ),
so that for all ξ ∈ D and all g ∈ G(ξ), it follows that V ∗(g)−V ∗(ξ) ≤ −cδ. Hence,
V ∗ is strictly decreasing along jumps. This and the fact that V ∗ is nonincreasing
along flows establishes that the set A = (Γi, 0) × Q is stable, by [112, Theo-
rem 7.6]. We now establish an equivalence between global attractivity of A and
the synergism of V by applying an invariance argument.
By [112, Theorem 4.7], it follows that solutions must converge to the largest
weakly invariant set in W = (Γ, ω, q) ∈ C : ω ≡ 0 = (Γ, ω, q) : ρ(Γ) − Vq(Γ) ≥
−δ, ω ≡ 0. Appealing to the dynamics of the closed-loop system in (3.76),
we see that ω ≡ 0 implies that Γ = 0, ω = 0, and so, − [Γ]⊤×∇Vq(Γ) = 0, or
Γ ∈ CritVq. This implies that solutions converge to the set W ′ = (A ∪ X ) ∩ C,
where X = (Γ, 0, q) : Γ ∈ CritVq \ Γi. Since A ⊂ C, it is obvious that
Lemma 3.2.5 and Lemma 3.2.7 apply in this case (despite that C and D are
defined slightly differently here), so that V is synergistic to degree δ if and only
if X ∩ C = ∅, or equivalently, A is globally attractive.
The class-KL estimate and the statement of robustness follow from [77, The-
orem 6.6] and the fact that S2 is compact.
228
F.9 Proof of Theorem 3.5.4
Proof. We provide a proof of this theorem, as it involves an invariance prin-
ciple and is not a direct corollary of Theorem 3.2.6. With this said, we let
ξ = (R,ω, q) ∈ TSO(3)×Q and write the closed-loop system (3.90) with ǫ = 0 as
ξ = F (ξ) ξ ∈ C
ξ+ ∈ G(ξ) ξ ∈ D,
where
F (R,ω, q) =
R [ω]×
J−1([Jω]× ω − 2ψ(R⊤∇Vq(R) − Ψ(R)
)
0
G(R,ω, q) =
R
ω
g(R,ω)
Then, consider the Lyapunov function V ∗ : TSO(3) ×Q→ R≥0, defined as
V ∗(ξ) = Vq(R) +1
2ω⊤Jω.
From the properties of potential functions, it follows that V ∗(TSO(3) × Q) ≥ 0
and V ∗(ξ) = 0 if and only if ξ ∈ A. Moreover, the sublevel sets of V ∗ are compact.
Now, we calculate the change in V ∗ along flows of (3.90) as
〈∇V ∗(ξ), F (ξ)〉 =⟨∇Vq(R), [ω]×
⟩+ ω⊤ ([Jω]× ω − 2ψ(R⊤∇Vq(R) − Ψ(ω)
)
229
Then, since [Jω]× is skew-symmetric for any ω ∈ R3, it follows that
〈∇V ∗(ξ), F (ξ)〉 = 2ω⊤ψ(R⊤∇Vq(R)) + ω⊤ ([Jω]× ω − 2ψ(R⊤∇Vq(R)) − Ψ(ω))
= −ω⊤Ψ(ω) ≤ −ζ(|ω|).
where ζ : R3 → R≥0 is some class-K function.
Now, evaluating the change in V ∗ over jumps, we find that for every g ∈ G(ξ),
V ∗(g) − V ∗(ξ) = Vg(R) − Vq(R)
= ρ(R) − Vq(R),
so that for all ξ ∈ D and all g ∈ G(ξ), it follows that V ∗(g)−V ∗(ξ) ≤ −δ. Hence,
V ∗ is strictly decreasing along jumps. This and the fact that V ∗ is nonincreasing
along flows establishes that the set A = (I, 0) × Q is stable, by [112, Theo-
rem 7.6]. We now establish an equivalence between global attractivity of A and
the synergism of V by applying an invariance argument.
By [112, Theorem 4.7], it follows that solutions must converge to the largest
weakly invariant set in W = (R,ω, q) ∈ C : ω ≡ 0 = (R,ω, q) : ρ(R)−Vq(R) ≥
−δ, ω ≡ 0. Appealing to the dynamics of the closed-loop system in (3.76), we see
that ω ≡ 0 implies that R = 0, ω = 0, and so, ψ(R⊤∇Vq(R)) = 0, or equivalently,
R ∈ CritVq. This implies that solutions converge to the set W ′ = (A ∪ A) ∩ C,
where A = (R, 0, q) : Γ ∈ CritVq\I. It is obvious that Lemma 3.2.5 applies in
this case (despite that C and D are defined slightly differently here), so that if V
is synergistic to degree δ, then A ⊂ D \C, but then this implies that A∩W ′ = ∅,
so that solutions must converge to A.
Now, if A is globally attractive, it must be attractive from the set A, but A
230
is invariant under the closed-loop flow dynamics. This implies that A ⊂ D \ C,
which implies that V is synergistic to degree δ, by Lemma 3.2.5. The class-KL
estimate then follows from [77, Theorem 6.6].
F.10 Proof of Lemma 3.5.5
Proof. By an obvious calculation, we have that
∇PA = −A
CritPA = R ∈ SO(3) : R⊤A = AR.
Then, since R−1 = R⊤, it follows that
A−1RA = ARA−1
RA2 = A2R.
Then, since RR⊤ = R⊤R = I for every R ∈ SO(3), it follows that R is normal
(that is, R⊤R = RR⊤) and so it is diagonalizable [129, Ch. 7.5]. Clearly, both A2
and A are also normal (and diagonalizable). Then, by [199, Theorem 1.3.19], since
A2 and R commute, they are simultaneously diagonalizable and hence, have the
same set of eigenvectors. Moreover, since A commutes with A2, they, as normal
matrices, must also have the same set of eigenvectors. Hence, A and R must have
the same set of eigenvectors.
In this direction, let R = R(θ, v) for some θ ∈ R and v ∈ S2. Then, Eλ(R) =
231
1, eiθ, e−iθ. Let (φ, u) ∈ E (R) and let (λ, u) ∈ E (A). It follows that
ARR⊤Au = λ2φ2u = A2u = λ2u.
Then, since A is positive definite, it follows that λ > 0 and so, φ2 = 1. This
implies that θ ∈ 0, π. Finally, since v ∈ Ev(A), it follows that R is either the
identity, or a 180 rotation about an eigenvector of A. This proves (3.98).
When A has 3 distinct eigenvalues, for any (λ, v) ∈ E (A) with v ∈ R3, it
follows that the dimension of the null space of A − λI is one (see [129, Ch. 7]).
Since R(π,−v) = R(−π, v) = R(π, v), it follows that R(π,E R
v (A)) has only 3
points. Hence PA has four critical points, making it a perfect Morse function.
F.11 Proof of Theorem 3.5.6
Proof. First, recalling Lemma 3.5.5, we have that CritVq \ I = CritPAq\ I =
R(π,Ev(Aq)). Then, it follows from (3.92) that for any p, q ∈ 1, . . . , N, with
R ∈ CritPAq(so that R = R(π, u), where u ∈ Ev(Aq)), that
PAp(R(π, u)) − PAq
(R(π, u)) = 2(trace(Ap) − u⊤Apu− trace(Aq) + λ).
Then, asking that V is well posed is equivalent to asking that for every q, λ, and
u satisfying (λ, u) ∈ E (Aq), there exists p such that
trace(Ap) − u⊤Apu− trace(Aq) + λ < 0.
232
In fact, this is impossible to satisfy. To show this, we let
η(q) = trace(Aq) − max Eλ(Aq).
Since the set AqNq=1 is finite, let
q∗ = argminq∈1,...,N
η(q).
Then, let λ∗ = max Eλ(Aq∗) and let u∗ be a unit eigenvector corresponding to λ∗
for Aq∗ . Then, it follows that
trace(Ap)−u⊤Apu−trace(Aq)+λ ≥ trace(Ap)−max Eλ(Ap)−trace(Aq∗)+λ∗ ≥ 0
for every p ∈ 1, . . . , N. That is, there exists q∗, λ∗, and u∗ satisfying (λ∗, u∗) ∈
E (Aq∗) such that for every p,
trace(Ap) − u⊤Apu− trace(Aq) + λ ≥ 0.
This completes the proof.
F.12 Proof of Theorem 3.5.8
Proof. Property (3.103) is obvious since P (I) = 0 by assumption, so exp 0 = I
and T (I) = I. To prove (3.104), we appeal to the product and chain rules for
matrix differentiation, (D.4) and (D.3), respectively. We have
DT (R) =(R⊤ ⊗ I
)D exp(kP (R) [u]×) + (I ⊗R) DR.
233
It’s obvious that DR = I. Next, recalling that d/dt exp(At) = A exp(At) =
exp(At)A and using the chain rule, we evaluate
D exp(kP (R) [u]×) =d vec exp(t [u]×)
dt
∣∣∣∣t=kP (R)
∂kP (R)
∂ vecR
= vec(k exp(kP (R) [u]×)
)[u]× (vec∇P (R))⊤.
So, recalling property (D.1a), we have
DT (R) =(R⊤ ⊗ I
)vec(k exp(kP (R) [u]×) [u]×
)(vec∇P (R))⊤
+(I ⊗ exp(kP (R) [u]×)
)
= k(I ⊗ exp(kP (R) [u]×)
)vec [u]×R(vec∇P (R))⊤
+(I ⊗ exp(kP (R) [u]×)
)
=(I ⊗ exp(kP (R) [u]×)
) (I + k vec [u]×R(vec∇P (R))⊤
).
This proves (3.104).
Recalling that for two matrices A,B ∈ Rn×n, we have detAB = detA detB,
det exp(A) = exp(traceA) [129], and that for any skew-symmetric matrix S⊤ =
−S, trace(S) = 0 (also, one can see that exp(S) ∈ SO(3), so det exp(S) = 1), it
follows that
det DT (R) = det(I + k vec [u]×R(vec∇P (R))⊤
).
The value of this determinant is given for the determinants of “rank-one updates”:
for any y, z ∈ Rn, det(I + yz⊤) = 1 + z⊤y [129], so, recalling (D.1b) and (E.5c),
234
we have
det DT (R) = 1 + k⟨vec∇P (R), vec [u]×R
⟩
= 1 + k trace(∇P (R)⊤ [u]×R)
= 1 + 2k⟨u, ψ(∇P (R)R⊤)
⟩.
This proves (3.105).
Continuing, we now show (3.107). First, we show that
DT (R)Σ(R) = Σ(T (R)) exp(kP (R) [u]×)Λ(R),
where
Λ(R) = (I + kuψ(∇P (R)R⊤)) = RΘ(R)R⊤.
In the following development, we let Φ = exp(kP (R) [u]×). Indeed, applying
(E.8b) we have
DT (R)Σ(R) = (I ⊗ Φ)(I + k vec [u]×R(vec∇P (R))⊤
)Σ(R)
= (I ⊗ Φ)(I − kΣ(R)u(vec∇P (R))⊤
)Σ(R)
= (I ⊗ Φ)Σ(R)(I − ku(vec∇P (R))⊤Σ(R).
)
Then, applying (E.5a), (E.7), (E.8a), and (E.8b), we have
DT (R)Σ(R) = Σ(ΦR)Φ(I + 2kuψ(∇P (R)R⊤)
)
= Σ(T (R)) exp(kP (R) [u]× Λ(R).
235
Now, since vec R = vecR [ω]× = vec [Rω]×R = −Σ(R)Rω, it follows that
vec˙︷ ︸︸ ︷
T (R) = DT (R(t))DR(t)
= DT (R(t)) vecR [ω]×
= −Σ(T (R))ΦΛ(R)Rω
= −Σ(T (R))ΦRΘ(R)ω
= vec T (R) [Θ(R)ω]× .
This proves (3.107).
Noting that
dV (T (R(t)))
dt= 2ω⊤ψ(R⊤∇(V T )(R))
=⟨∇V (T (R)), T (R) [Θ(R)ω]×
⟩
= 2ω⊤Θ(R)⊤ψ(T (R)⊤∇V (T (R))
),
it follows that ψ(R⊤∇(V T )(R)) = Θ(R)⊤ψ(T (R)⊤∇V (T (R))
). This proves
(3.106).
Finally, (3.108) follows from the follows from the Sherman-Morrison formula
(see [129, Ch. 3.8]) when det DT (R) 6= 0, and (3.109) follows from the fact that
Θ(R) has full rank when det DT (R) 6= 0.
F.13 Proof of Theorem 3.5.9
The question of when a local diffeomorphism is a global one has been studied
extensively in the literature; however, topological difficulties prevent us from ap-
236
plying existing results to prove that T is a diffeomorphism because the codomain,
SO(3), is not simply connected.
The trouble in applying existing global inverse function theorems to a space
that is not simply connected arises in the proof of injectivity. As noted in [130,
185, 198], so long as the map in question is proper, i.e., the inverse image of any
compact set is compact, it is surjective; however, the existing injectivity proofs
rely on the codomain being simply connected [130,187,188,190].
As an example, the work [187] applies to functions on Rn, which is simply
connected. While the proof of surjectivity uses standard topological arguments,
the proof of injectivity directly exploits the fact that Rn is simply connected by
constructing an explicit homotopy that maps all loops in Rn to the origin. This
is not possible in SO(3).
In the following proof, we will borrow ideas from differential topology (in
particular, from [96] and [200]) to complete the proof that T is a global diffeo-
morphism, provided that k satisfies the bound (3.110).
Proof. It follows from (3.105) that if detDT (R) = 1 + 2k⟨u, ψ(∇P (R)R⊤)
⟩6= 0
for all R ∈ SO(3), then T is everywhere a local diffeomorphism. A sufficient
condition for this is clearly 2|k||⟨u, ψ(∇P (R)R⊤)
⟩|2 < 1, for all R ∈ SO(3). It
follows from the general CBS inequality ( [129, Ch. 5.3]) that
|⟨u, ψ(∇P (R)R⊤)
⟩| ≤ |u|2|ψ(∇P (R)R⊤)|2
= |ψ(∇P (R)R⊤)|2.
237
Then, applying (E.5e) and noting that ‖ skewA‖F ≤ ‖A‖F , we have
|ψ(∇P (R)R⊤)|2 =1√2‖ skew∇P (R)R⊤‖F
≤ 1√2‖∇P (R)R⊤‖F
But then, for any matrix A ∈ Rn× n and an orthogonal matrix U , we have
‖AU‖F =√
trace((AU)⊤AU) =√
trace(U⊤A⊤AU) =√
trace(A⊤AUU⊤) =√
trace(A⊤A) = ‖A‖F . This implies that ‖∇P (R)R⊤‖F = ‖∇P (R)‖F .
So, if 2|k|‖∇P (R)‖F/√
2 =√
2|k|‖∇P (R)‖F < 1 for all R ∈ SO(3), it follows
that det DT (R) 6= 0 for all R ∈ SO(3). This is clearly satisfied if
|k| < 1√2 maxR∈SO(3)
‖∇P (R)‖F=
√2
2 maxR∈SO(3)
‖∇P (R)‖F,
which is (3.110). Moreover, when detDT (R) 6= 0 for all RinSO(3), Θ(R)−1
exists for all R ∈ SO(3). At this point, the inverse function theorem guarantees
that T (R) is everywhere a local diffeomorphism. We now prove that T is a
diffeomorphism when k satisfies (3.110).
First, since SO(3) is compact, T is a proper map, that is, the inverse image of
any compact set is compact. This implies that T is surjective [130]. Henceforth,
we verify that T is injective.
We note that when P and u are fixed parameters of T , each instance of T
(given by the value of k) is homotopic to any other instance. That is, we can
continuously change k to get any other instance of T . In particular, each T is
homotopic to the identity map, by decreasing the absolute value of k to zero
(exp(0) = I). We now exploit this structure.
238
Suppose that P ∈ P and u ∈ S2 are fixed parameters and let Tk denote a
particular instance of T , with the specified value of k. Suppose that k∗ satisfies
(3.110). Define
τ = supk′ ∈ [0, |k∗|] : Tk is a diffeomorphism ∀k ∈ [−k′, k′]. (F.2)
Now, if Tτ is a diffeomorphism, there exists ǫ > 0 such that Tk is a diffeomorphism
for all k ∈ (τ − ǫ, τ + ǫ) [96, Ch. 1, “Stability Theorem”]. But this contradicts
the definition of τ in (F.2). We now continue under the assumption that Tτ is not
injective.
Define the function W : SO(3) × R → SO(3) × R, defined as
W(R, k) = (Tk(R), k). (F.3)
Using (3.104) of Theorem 3.5.8 and recalling again that ddt
exp(At) = A exp(At) =
exp(At)A, we calculate the partial derivatives of W as
DW(R, k) =
DTk(R) vecP (R) [u]× Tk(R)
0 1
. (F.4)
Now, since DT (R) is nonsingular whenever (3.110) is satisfied, by the inverse
function theorem, it is also a local diffeomorphism.
Since Tτ is not injective, let R1, R2, R∗ ∈ SO(3) satisfy Tτ (R1) = Tτ (R2) = R∗.
But now, since W is a local diffeomorphism, there exist disjoint open sets Ui ⊂
SO(3), and ǫ > 0 such that Ri ∈ Ui, and that W restricted to Ui× (τ − ǫ, τ + ǫ) is
a diffeomorphism. But then, there exist R′1 6= R′
2 and k′ < τ such that Tk′(R′1) =
239
Tk′(R′2) = R∗. This again contradicts the definition of τ in (F.2). Hence, for all k
satisfying (3.110), Tk must be a diffeomorphism.
F.14 Proof of Theorem 4.1.6
Proof. Since we are studying Krasovskii solutions to (4.24), we might normally
need to find the Krasovskii regularization of (4.24); 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,ω) 7→ R [ω]× is continu-
ous, its Krasovskii regularization is identical to the original map. Also note that,
by definition of ∆ and φi, the map (R,ω) 7→ [Jω]× ω − κ∗(φi(∆(R,ω)R), ω) is
continuous on the set (R(θ, u), ω) : cos θ < cos(π + δ), ω 6= 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
2ω⊤Jω. (F.5)
Expressed in terms of rotation angle, we have equivalently,
V (R(θ, u), ω) =a
2(1 + cos θ) +
1
2ω⊤Jω
since trace(I−R(θ, u)) = 2(1−cos θ), so that V (SO(3)×R3) ≥ 0 and V (R,ω) = 0
if and only if R = R(π, v) and ω = 0. Moreover, the level sets of V are compact.
240
Define the function ψ : R3×3 → R
3 as
ψ(A) =1
2
A32 − A23
A13 − A31
A21 − A12
. (F.6)
Then, ψ satisfies traceA [ω]× = −2ω⊤ψ(A) and ψ(R(θ, u)) = u sin θ. Employing
the Krasovskii regularization, we calculate the time derivative of V as
V (R,ω) ∈ −a4
trace(−R [ω]×) + ω⊤ (−K cΛ(φi(∆(R,ω)R))⊤i − L(ω))
= −ω⊤L(ω) + ω⊤(−a
2ψ(R) − K cΛ(φi(∆(R,ω)R))⊤i
),
(F.7)
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 = R(θ, u) and henceforth constrain our analysis to the case
where cos θ < cos(π+δ) and ω 6= 0, so that ∆(R,ω)R = R(θ−δ sgn(ω⊤u), u) and
φi(∆(R,ω)R) is single-valued. Also, in this region, the Krasovskii regularization of
(4.24) is identical to (4.24). Recalling that φi selects the quaternion with positive
scalar component and noting that R(φ, u)R(θ, u) = R(θ+φ, u), we can now write
φi(∆(R,ω)R) = sgn(cos((θ − δ sgn(ω⊤u))/2
))
cos((θ − δ sgn(ω⊤u))/2
)
sin((θ − δ sgn(ω⊤u))/2
)u
,
and in particular,
Λ(φi(∆(R,ω)R))⊤i = sgn(cos((θ − δ sgn(ω⊤u))/2
))sin((θ − δ sgn(ω⊤u))/2
)u.
(F.8)
241
Applying (F.8) to (F.7),
V (R(θ, u), ω) = −ω⊤L(ω) − ω⊤ua
2sin θ
− ω⊤u(c sgn
(cos((θ − δ sgn(ω⊤u))/2
))sin((θ − δ sgn(ω⊤u))/2
)). (F.9)
Note that when ω⊤u = 0, it follows that V (R(θ, u), ω) ≤ 0, so we further constrain
our analysis from this point to the case when ω⊤u 6= 0. Now, without loss of
generality, we assume that π − δ < θ < π + δ, where
sgn(cos((θ − δ sgn(ω⊤u))/2
))= sgn
(π − (θ − δ sgn(ω⊤u))
). (F.10)
Now, since sgn(ω⊤u)2 = 1 and s sgn(s) = |s|, we factor this term to arrive at
V (R(θ, u), ω) = −ω⊤L(ω) − |ω⊤u|a2
sgn(ω⊤u) sin θ
− |ω⊤u|c sgn(ω⊤u) sgn(π − (θ − δ sgn(ω⊤u))
)sin((θ − δ sgn(ω⊤u))/2
).
(F.11)
Moreover, for any r, s ∈ R, it follows that sgn(s) sgn(r) = sgn(r sgn(s)). Applying
this relation to (F.11), we have
V (R(θ, u), ω) = −ω⊤L(ω) − |ω⊤u|a2
sgn(ω⊤u) sin θ
− |ω⊤u|c sgn((π − θ) sgn(ω⊤u) + δ)
)sin((θ − δ sgn(ω⊤u))/2
).
(F.12)
242
It follows that V (R(θ, u), ω) < 0 whenever
c sgn((π − θ) sgn(ω⊤u) + δ)
)sin((θ − δ sgn(ω⊤u))/2
)+a
2sgn(ω⊤u) sin θ > 0.
(F.13)
Now, we can apply trigonometric inequalities to analyze (F.13). In particular,
we have that | sin θ| ≤ |θ− π| and since 1− cos θ ≤ 12θ2, we can use the properties
of sin and cos to deduce that sin(12(θ − δ sgn(ω⊤u))) ≥ 1 − 1
8(θ − π)2. Hence,
(F.13) holds when
c sgn((π − θ) sgn(ω⊤u) + δ)
) (1 −
(θ − π − δ sgn(ω⊤u)
)2)/8 >
a
2|θ−π|. (F.14)
Now, since δ > |π− θ| by a previous assumption, sgn((θ − π) sgn(ω⊤u) + δ
)= 1.
This assumption also implies that 1 − 18(θ − π − δ sgn(ω⊤u))2 ≥ 1 − 1
2δ2. Hence,
(F.13) holds when
c(1 − δ2/2
)> aδ/2 ⇐⇒ 0 > δ2 + (a/c)δ − 2. (F.15)
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. Hence, we have that V (R(θ, u), ω) ≤ 0 on the set
W = (R,ω) : cos θ < cos(π + δ) or ω = 0 ⊃ R(π,S2) × 0, where 0 <
δ <(−(a/c) +
√(a/c)2 + 8
)/2. This implies that R(π,S2) × 0 is stable.
We note that this last inequality implies that 0 < δ <√
2, since, if µ(x) =
12
(−x+
√x2 + 8
), it follows that
dµ(x)
dx=
1
2
(1√
x2 + 8− 1
)< 0.
243
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
(R(θ, u), ω) : V (R(θ, u), ω) ≤ a2(1 + cos(π+ δ)). Moreover, B ⊂ W and so it is
invariant.
F.15 Proof of Theorem 4.1.7
Proof. First, note that (4.26) satisfies the hybrid basic conditions. In particular,
the map R 7→ R [MB]× is nonempty, locally bounded, outer semicontinuous,
and convex-valued. Moreover, (q, R) 7→ Φ(q, R) is outer semicontinuous, locally
bounded, and nonempty. To see this fact, note that Φ(q, R) is continuous on the
set (q, R) : dist(q,Q(R)) < 1 and that Φ(q, R) = Q(R) when dist(q,Q(R)) = 1.
Now, we verify that all maximal solutions are complete. Since R [ω]× ∈ TRSO(3)
for all (R,ω) ∈ SO(3)×R3 and 0 ∈ TqS
3, the set S3×SO(3) is viable under the flow
(i.e. there exists a nontrivial solution from any initial condition in Cℓ). Moreover,
we have that Cℓ ∪Dℓ = S3 × SO(3) and that SO(3) × S
3 is compact, preventing
finite escape. Finally, since jumps map the state to Cℓ \ Dℓ (the distance from
q to Q(R) is zero after a jump), it follows from [77, Proposition 2.4] that every
solution is complete.
Now, we prove 2). Suppose that Ij × j ⊂ dom q. Then, for all (t, j) ∈
Ij × j, it follows that (q(t, j), R(t, j)) ∈ Cℓ so that dist(q(t, j),Q(R(t, j))) ≤
α < 1. This fact combined with Lemma 4.1.2 implies that t 7→ q(t, j) is absolutely
continuous on Ij, R(q(t, j)) = R(t, j), and q(t, j) = 12q(t, j) ⊗ ν(ω(t)) for some
244
Lebesgue measurable ω : Ij →MB and for almost all (t, j) ∈ Ij × j.
Recalling Lemma 4.1.1, we have dist(q(t, j),Q(R(t, j))) = 1 − q(t, j)⊤q(t, j),
which implies (dropping arguments),
·︷ ︸︸ ︷dist(q,Q(R)) =
·︷ ︸︸ ︷1 − q⊤q = −q⊤q ≤ ‖q‖2‖q‖2 = ‖q‖2.
It follows that
·︷ ︸︸ ︷dist(q,Q(R)) ≤ ‖q‖2 =
1
2|Λ(q)ω|2 =
1
2‖ω‖2 ≤
M
2.
Since dist(q(t, j),Q(R(t, j))) = 0 whenever (t, j − 1) ∈ dom q, it follows that the
minimum time between jumps is 2α/M .
To show 3), we recall our previous conclusion that for every Ij×j ⊂ dom q,
t 7→ q(t, j) is absolutely continuous on Ij and satisfies R(q(t, j)) = R(t, j).
Recalling the definition of the time projection, we now need only show that
the value of q does not change over jumps (note also that jumps occurring at
t = 0 are ignored). Now, suppose that (t, j), (t, j + 1) ⊂ dom q. Then,
Φ(q(t, j + 1), R(t, j + 1)) = Φ(q(t, j + 1), R(t, j)) = Φ(Φ(q(t, j), R(t, j)), R(t, j)),
and by Lemma 4.1.3, it follows that Φ(q(t, j + 1), R(t, j + 1)) = Φ(q(t, j), R(t, j)).
By the definition of q in (4.26b), it follows that q(t, j) = q(t, j + 1) so that
R(q↓t (t)) = R↓t (t). This concludes the proof.
245
F.16 Proof of Lemma 4.1.8
Proof. First, we assume the existence of a solution (R1, ω1, q1, ξ1) : E1 → SO(3)×
R3 × S
3 ×X to (4.28) such that dist(q1,Q(R1))|(0,0) < 1. Now, we will recursively
define the solution (q2, ω2, ξ2) and its associated hybrid time domain in terms of
(R1, ω1, q1, ξ1) and E1. In this direction, we define E−12 = ∅, T 0 = 0, and J0
1 = 0.
Now, for each k ∈ Z≥0 we define
(T k+1, Jk+11 ) = min(t, j) ∈ E1 : (t, j − 1) ∈ E1, j > Jk1
ξ1(t, j) ∈ Gc(Φ(q1, R1), ω1, ξ1)|(t,j−1),(F.16)
where min is taken with respect to the natural ordering on E1. In particular,
(T k+1, Jk+11 ) ∈ E1 is the time immediately after the first jump due to the controller
after j = Jk1 .
There can be two cases. If (T k+1, Jk+11 ) 6= ∅, then a jump due to the controller
occurs and we define
Ek+12 = Ek
2 ∪ ([T k, T k+1], k) (F.17)
and for every t ∈ [T k, T k+1] and Jk1 ≤ j ≤ Jk+11 −1 such that (t, j) ∈ E1, we define
the solution
(q2, ω2, ξ2)|(t,k) = (Φ(q1, R1), ω1, ξ1)|(t,j) (F.18)
We now verify that this is indeed a solution to (4.29). Note that Φ(q1(t, j), R1(t, j))
is single-valued for every (t, j) ∈ E1, since dist(q1(0, 0),Q(R1(0, 0))) < 1 by as-
sumption and then Theorem 4.1.7 provides that dist(q1(t, j),Q(R1(t, j))) ≤ α < 1
for each (t, j) (0, 0). When k 6= 0, we consider the jump from (T k, k − 1) to
(T k, k). By (F.18), we have that (q2, ω2, ξ2)|(Tk,k−1) = (Φ(q1, R1), ω1, ξ1)|(Tk,Jk1−1)
246
and (q2, ω2, ξ2)|(Tk,k) = (Φ(q1, R1), ω1, ξ1)|(Tk,Jk1). From the definition of (T k, Jk1 )
in (F.16), it follows that
(R1, ω1, q1, ξ1)|(Tk,Jk1) ∈ (R1, ω1, q1, Gc(Φ(q1, R1), ω1, ξ1))|(Tk,Jk
1−1),
which implies
(Φ(q1, R1), ω1, ξ1)|(Tk,Jk1) ∈ (Φ(q1, R1), ω1, Gc(Φ(q1, R1), ω1, ξ1))|(Tk,Jk
1−1),
and so, (q2, ω2, ξ2)|(Tk,k) ∈ (q2, ω2, Gc(q2, ω2, ξ2))|(Tk,k−1). Thus, (q2, ω2, ξ2) satisfies
the jump dynamics of (4.29) for each pair (t, j), (t, j+1) ⊂ Ek2 when j+1 ≤ k.
Now, we verify that (F.18) is a solution to (4.29) for all t ∈ [T k, T k+1]. First
note that along solutions of (4.28), if Jk1 < Jk+11 − 1, there are jumps due to the
lifting system. That is, q1(t, j+1) ∈ Φ(q1(t, j),Q(R1(t, j))) for some t ∈ [T k, T k+1]
and Jk1 ≤ j < Jk+11 , while other states are unchanged. Theorem 4.1.7 then implies
that over any such jumps of the lifting system, Φ(q1, R1)|(t,j+1) = Φ(q1, R1)|(t,j).
So, the definition of (q2, ω2, ξ2)|(t,k) is well-defined in the sense that there is no
ambiguity in the definition due to possible jumps of the lifting system.
Furthermore, over the interval t ∈ [T k, T k+1] and Jk1 ≤ j ≤ Jk+11 − 1 such
that (t, j) ∈ E1, Theorem 4.1.7 provides that t 7→ Φ(q1, R1)|(t,j) (where j is taken
implicitly from t) is a continuous trajectory satisfying Q(Φ(q1, R1)|(t,j)) = R1(t, j)
and so it also satisfies (4.5). Since ω1 and ξ1 do not change over jumps due to the
lifting system and obey the same differential inclusions for (4.28) and (4.29), this
implies that (F.18) is a solution to (4.29) on Ek2 for all k such that (T k, Jk1 ) 6= ∅.
247
If there is no such k ∈ Z≥0 such that (T k, Jk1 ) = ∅, we let
E2 =∞⋃
k=0
([T k, T k+1], k).
Then, (q2, ω2, ξ2) is a solution to (4.29) on E2. Moreover, since jumps from the
lifting system are not counted in solutions to (4.29), we have that for every (t, j) ∈
E1 there exists j′ ≤ j such that (t, j′) ∈ E2 and
(R1,Φ(q1, R1), ω1, ξ1)|(t,j) = (R(q2), q2, ω2, ξ2)|(t,j′).
Now suppose that for some k∗ ∈ Z≥0, (T k∗+1, Jk
∗+11 ) = ∅. That is, after T k
∗
,
there are no further jumps due to the controller. In this case, we let
E2 = Ek∗
2 ∪ ([T k∗
, T ), k∗) =
(k∗−1⋃
k=0
([T k, T k+1], k)
)∪ ([T k
∗
, T ), k∗),
where T = supt : ∃j ∈ Z≥0(t, j) ∈ E1 and we allow T = ∞ when E1 is
unbounded in the t direction. Then, for all t ∈ [T k∗
, T ), we define the solution
(q2, ω2, ξ2)|(t,k∗) = (Φ(q1, R1), ω1, ξ1)yt(t). (F.19)
Similar to previous arguments, we note that Theorem 4.1.7 assures that the func-
tion Φ(q1, R1)yt(t) is continuous and satisfies R(Φ(q1, R1))
yt(t) = R1↓t (t) for
every t ∈ [0, T ) and so also satisfies (4.5). Then, since the ω and ξ components of
solutions to (4.28) don’t exhibit changes over jumps due to the lifting system and
otherwise have identical dynamics to solutions of (4.29) when there are no jumps
due to the controller, it follows that the hybrid arc defined in (F.18) and (F.19)
248
is a solution to (4.29) on E2.
In particular, it follows that (q2, ω2, ξ2) is a solution to (4.29) on E2 and for
every (t, j) ∈ E1 there exists j′ ≤ j such that (t, j′) ∈ E2 and
(R1,Φ(q1, R1), ω1, ξ1)|(t,j) = (R(q2), q2, ω2, ξ2)|(t,j′).
This concludes the first part of the lemma. We now provide a “converse.”
We assume the existence of a solution (q2, ω2, ξ2) : E2 → S3×R
3×X to (4.29).
Now, we recursively construct a solution to (4.28) such that (4.30) is satisfied. In
this direction, let E−11 = ∅, T 0 = 0, and J0
1 = J02 = 0. Also, we let q(0, 0) = q2(0, 0)
so that dist(q(0, 0), q2(0, 0)) = 0. Although it will not be part of the solution, we
define q1(0,−1) = q2(0, 0) = q1(0, 0) as well for use in the recursion. Now, for
each k ∈ Z≥0, we define
T k+1 = mint ≥ T k : dist(q(T k, k), q2(t, Jk2 )) = α or (t, Jk2 + 1) ∈ E2. (F.20)
That is, T k+1 is the next time at which a jump occurs, due to either the lifting
subsystem or the controller. Assuming that T k+1 6= ∅, we keep track of which
subsystem jumped at T k+1 by defining
(Jk+11 , Jk+1
2 ) =
(Jk1 + 1, Jk2 ) dist(q(T k, k), q2(Tk+1, Jk2 )) = α
(Jk1 , Jk2 + 1) otherwise.
(F.21)
Note that since J01 = J0
2 = 0, it follows from (F.21) that Jk1 + Jk2 = k. Then, we
249
define our hybrid time domain up to time T k+1 as
Ek+11 = Ek
1 ∪ ([T k, T k+1], k). (F.22)
If T k 6= ∅ for all k ∈ Z≥0, we set
E1 =∞⋃
k=0
([T k, T k+1], k) =∞⋃
k=0
([T k, T k+1], Jk1 + Jk2 ).
If, for some k∗ ∈ Z≥0 it follows that T k∗+1 = ∅, then we let
E1 = Ek∗
1 ∪ ([T k∗
, T ), k∗) =
(k∗−1⋃
k=0
([T k, T k+1], k)
)∪ ([T k
∗
, T ), k∗),
where T = supt : ∃j ∈ Z≥0(t, j) ∈ E2 and we allow T = ∞ when E2 is
unbounded in the t direction.
Now, we can partially define our solution as, for every k ∈ Z≥0 and t ∈ Ik(where Ik henceforth refers to E1)
(R1, ω1, ξ1)|(t,k) = (R(q2), ω2, ξ2)|(t,Jk2). (F.23)
Now, we complete the solution definition as, for every k ∈ Z≥0 and t ∈ Ik,
q1(t, k) =
q2(Tk, Jk2 ) dist(q1(T
k, k − 1), q2(Tk, Jk2 )) = α
q1(Tk, k − 1) otherwise.
(F.24)
We now verify that the solution proposed above is indeed a solution to (4.29).
First, if k 6= 0 and T k−1 6= ∅, we consider the jump over (T k, k− 1) to (T k, k). By
250
(F.21), we see that either (Jk−11 , Jk−1
2 ) = (Jk1 − 1, Jk2 ) or (Jk−11 , Jk−1
2 ) = (Jk1 , Jk2 −
1). We first consider the case (Jk−11 , Jk−1
2 ) = (Jk1 − 1, Jk2 ) so that, by (F.21),
dist(q1(Tk−1, k − 1), q2(T
k, Jk2 )) = α. Now, since Jk2 = Jk−12 , it follows that this
jump is not due to the controller and (F.23) implies that
(R1, ω1, ξ1)|(Tk,k) = (R(q2), ω2, ξ2)|(t,Jk2)
= (R(q2), ω2, ξ2)|(t,Jk−1
2)
= (R1, ω1, ξ1)|(Tk,k−1).
Hence, the R1, ω1, and ξ1 solution components satisfy the jump dynamics of
(4.28) when the jump is due to the lifting system. Now, we verify that the jump
dynamics of q1 do as well.
From (F.24), we have that q1(Tk, k) = q2(T
k, Jk2 ) and that dist(q1(Tk, k −
1), q2(Tk, Jk2 )) = α < 1. By Lemma 4.1.1 and (F.23), it follows that Φ(q1(T
k, k −
1),Q(R(q2(Tk, Jk2 )))) = Φ(q1(T
k, k−1),Q(R1(Tk, k−1))) = q2(T
k, Jk2 ) = q1(Tk, k)
so that q1 satisfies the jump dynamics of (4.28) for every jump of the lifting system.
Now, we consider the jump from (T k, k − 1) to (T k, k) when (Jk−11 , Jk−1
2 ) =
(Jk1 , Jk2 −1). That is, the kth jump occurs due to the controller. Since q1 does not
change over jumps due to the controller (and nor doesR1), it follows from Theorem
4.1.7 that dist(q1(t, j),Q(R1(t, j))) < 1 for all (t, j) ∈ E2. In particular, by the
definition of q1, we have that dist(q1(t, j),Q(R1(t, j))) = dist(q1(t, j), q2(t, Jj2)) <
1 so that Φ(q1(t, j),Q(R1(t, j))) = Φ(q1(t, j), q2(t, Jj2)) = q2(t, J
j2). Now, from
251
(F.23) we have
(R1, ω1, ξ1)|(Tk,k) = (R(q2), ω2, ξ2)|(Tk,Jk2)
= (R(q2), ω2, ξ2)|(t,Jk−1
2+1)
∈ (R(q2), ω2, Gc(q2, ω2, ξ2))|(t,Jk−1
2)
so that (R1, ω1, ξ1)|(Tk,k) ∈ (R1, ω1, Gc(Φ(q1,Q(R1)), ω1, ξ1))|(Tk,k−1). Moreover, it
follows from (F.24) that q1(Tk, k) = q1(T
k, k−1). Thus, (R1, ω1, q1, ξ1)|(t,j) satisfies
the jump dynamics of (4.28) for every (t, j) ∈ E2 such that (t, j + 1) ∈ E2.
Now, from (F.23), since t 7→ q2(t, Jk2 ) satisfies (4.5) and R1(t, k) = R(q2(t, J
k2 ))
for each t ∈ Ik, it follows that t 7→ R1(t, k) satisfies (3.79a) for each t ∈ Ik.
Moreover, since the ω1 and ξ1 components are directly copied from ω2 and ξ2
during flows, they obviously satisfy the required differential inclusions of (4.28).
Finally, it follows from (F.24) that q1(t1, j) = q1(t2, j) for any t1, t2 ∈ Ij, so that
˙q1 = 0. This implies that (R1, ω1, q1, ξ1) is a solution to (4.28) as defined above
on E1 and satisfies, for each (t, j′) ∈ E2, there exists j ≥ j′ such that (t, j) ∈ E1
and (4.30) is satisfied.
F.17 Proof of Theorem 4.1.9
Proof. First, we note that since R : S3 → SO(3) is a covering map and in particu-
lar, is everywhere a local diffeomorphism, we can easily write open neighborhoods
of A in terms of open neighborhoods of Aℓ. In particular, an open neighborhood
U ǫ ⊃ A can be written as
U ǫ = (R,ω, q, ξ) : (Φ(q, R), ω, ξ) ∈ U ǫℓ , dist(q,Q(R)) < α+ ǫ,
252
where U ǫℓ is an open neighborhood of Aℓ, whenever every (R,ω, q, ξ) ∈ U ǫ satisfies
dist(q,Q(R)) < 1. Since α < 1, this holds true for small open neighborhoods of
A, where ǫ < 1 − α.
Suppose that Aℓ is stable for (4.29). Let U ǫℓ be an open neighborhood of Aℓ.
then, there exists an open set U δℓ ⊂ U ǫ
ℓ such that for any solution (q2, ω2, ξ2) : E2 →
S3 × R
3 × X satisfying (q2, ω2, ξ2)|(0,0) ∈ U δℓ , it follows that (q2, ω2, ξ2)|(t,j) ∈ U ǫ
ℓ
for all (t, j) ∈ E2. Without loss of generality, suppose that (R1, ω1, q1, ξ1) : E1 →
SO(3)×R3 × S
3 ×X is a solution to (4.29) satisfying dist(q1(0, 0),Q(R1(0, 0))) <
α + ǫ < 1 for some ǫ > 0 and (Φ(q, R1), ω1, ξ1)|(0,0) ∈ U δℓ . Then, Lemma
4.1.8 guarantees the existence of a solution (q2, ω2, ξ2) : E2 → S3 × R
3 × X
such that for every (t, j′) ∈ E2, there exists j ≥ j′ such that (t, j) ∈ E1 and
(R1,Φ(q1, R1), ω1, ξ1)|(t,j) = (R(q2), q2, ω2, ξ2)|(t,j′).
Now, since (Φ(q1, R1), ω1, q1, ξ1)|(0,0) ∈ U δℓ , this implies that (q2, ω2, ξ2)|(0,0) ∈
U δℓ and so, (q2, ω2, ξ2)|(t,j′) ∈ U ǫ
ℓ for all (t, j′) ∈ E2. But then, this implies
that (Φ(q1, R1), ω1, ξ1)|(t,j) ∈ U ǫℓ for all (t, j) ∈ E1. Finally, by Theorem 4.1.7,
dist(q1(0, 0),Q(R1(0, 0))) < 1 implies that dist(q1(t, j),Q(R1(t, j))) ≤ α, and so,
A is stable.
Proceeding, we suppose that A is stable. Let
U ǫ = (R,ω, q, ξ) : (Φ(q, R), ω, ξ) ∈ U ǫℓ , dist(q,Q(R)) < α+ ǫ
be an open neighborhood of A, where ǫ + α < 1. Now, there exists 0 < δ < ǫ <
1 − α and an open set U δ ⊂ U ǫ written as
U δ = (R,ω, q, ξ) : (Φ(q, R), ω, ξ) ∈ U δℓ , dist(q,Q(R)) < α+ δ
253
where U δℓ ⊂ U ǫ
ℓ such that for any solution (R1, ω1, q1, ξ1) : E1 → SO(3) × R3 ×
S3 × X satisfying (R1, ω1, q1, ξ1)|(0,0) ∈ U δ, it follows that (R1, ω1, q1, ξ1)|(t,j) ∈ U ǫ
for all (t, j) ∈ E1. Or, equivalently, we have (Φ(q1, R1), ω1, ξ1)|(0,0) ∈ U δℓ and
dist(q1(0, 0),Q(R1(0, 0))) < α + δ implies that (Φ(q1, R1), ω1, ξ1)|(t,j) ∈ U ǫℓ and
dist(q1(0, 0),Q(R1(0, 0))) < α+ ǫ for all (t, j) ∈ E1.
Now, suppose (q2, ω2, ξ2) : E2 → S3 × R
3 × X is a solution to (4.29) sat-
isfying (q2, ω2, ξ2)|(0,0) ∈ U δℓ . Then, Lemma 4.1.8 guarantees the existence of a
solution (R1, ω1, q1, ξ1) : E1 → SO(3) × R3 × S
3 × ξ1 such that for every (t, j) ∈
E1, there exists j′ ≤ j such that (t, j) ∈ E2 and (R1,Φ(q1, R1), ω1, ξ1)|(t,j) =
(R(q2), q2, ω2, ξ2)|(t,j′). But then, it follows that (Φ(q1, R1), ω1, ξ1)|(0,0) ∈ U δℓ and
dist(q1(0, 0),Q(R1(0, 0))) < α + δ, implying that (Φ(q1, R1), ω1, ξ1)|(t,j) ∈ U ǫℓ and
dist(q1(0, 0),Q(R1(0, 0))) < α + ǫ for all (t, j) ∈ E1. Finally, this implies that
(q2, ω2, ξ2)|(t,j) ∈ U ǫℓ for all (t, j) ∈ E2 and that Aℓ is stable.
From the arguments above, the proofs of instability follow directly. While
we do not prove attractivity here, we emphasize that the proofs are largely the
same in character and ultimately rely on comparing solutions of (4.29) with (4.28)
through Lemma 4.1.8.
F.18 Proof of Theorem 4.3.2
Proof. Consider the functions Vi : Xi → R≥0 in (4.68). For i = 1, 2, 3, Vi satisfies
Vi(Xi \ Ai) > 0, Vi(Ai) = 0, and for any a > 0, V −1i (a) is compact. Now, written
254
in terms of the input vector Ui, we have that
〈∇Vi(xi), Fi(xi, Ui)〉 =
ω⊤ (−τff + chǫ+ τ)
i = 1
−chǫ⊤u2 + ω⊤(−τff + chǫ+ chǫ+ τ
)i = 2
−chǫ⊤u2 + ω⊤(−τff + chǫ+ chǫ+ τ
)+ b⊤u3 i = 3.
(F.25)
To see this, we note from (4.5) and (4.49) that 2c(1− h ˙η)) = chω⊤ǫ. Furthermore,
recalling that x⊤Sx = 0 for any x ∈ R3 and skew-symmetric matrix S, it follows
that ω⊤Ξω = 0. Finally, since [x]× x = 0 for any x ∈ R3, we have the property
that R(q)ǫ = ǫ, for any q = (η, ǫ) ∈ S3. It follows that 2c(1− h ˙η) = chǫ⊤(ω−u2).
Now, since ω = ω + b− b = ω + b− b− ωd + b = ω − ωd + b, setting Ui = Ki
yields
⟨∇Vi(xi), F i(xi)
⟩=
−ω⊤Ψ(ω) i = 1
−cǫ⊤Kǫ i = 2
−cǫ⊤Kǫ− (ω − ωd)⊤Ψ(ω − ω) i = 3
≤ 0.
(F.26)
So, we have that⟨∇Vi(xi), F i(xi)
⟩≤ 0 for all xi ∈ Xi ⊃ Ci.
Now, we examine the change in Vi along jumps. Noting that xsgn(x) = |x|,
we have that, for every xi ∈ Xi and x′i ∈ Gi(xi)
Vi(x′i) − Vi(xi) =
2c(hη − |η|) i = 1
2c(hη − |η|) + 2c(hη − |η|) i = 2, 3.
(F.27)
255
Then, by virtue of xi ∈ Di, it follows that when i = 1, hη ≤ −δ and −|η| ≤ −δ,
so 2c(hη − |η|) ≤ −4cδ. For, i = 2, 3, we have either that 2c(hη − |η|) ≤ −4cδ or
that 2c(hη − |η|) ≤ −4cδ, and the other term can be upper bounded by zero. So,
it follows that Vi(x′i) − Vi(xi) ≤ −4 minc, cδ < 0 for all xi ∈ Di, all x′i ∈ Gi(xi),
and i = 1, 2, 3.
So far, we have established that the function Vi is monotonically nonincreas-
ing along flows of the closed-loop system and is strictly decreasing along jumps.
Applying [112, Theorem 7.6] asserts that Ai is stable for Hi. Moreover, it follows
that solutions are complete (have an unbounded time domain) and bounded, since
the sub-level sets of Vi are compact.
Now, to complete the proof of the theorem, we will apply an invariance prin-
ciple for hybrid systems. In this direction, let
Wi = xi ∈ Ci :⟨Vi(xi), F i(xi)
⟩= 0
=
x1 ∈ X1 : ǫ = ω = 0, hη ≥ −δ i = 1
x2 ∈ X2 : ǫ = 0, hη ≥ −δ, hη ≥ −δ i = 2
x3 ∈ X3 : ǫ = ω − ωd = 0, hη ≥ −δ, hη ≥ −δ i = 3.
(F.28)
By our previous results, applying [112, Theorem 4.7] asserts that xi must converge
to the largest invariant set in Wi. We proceed with this argument for i = 3, as it
is the most involved and note that the cases for i = 1, 2 are quite similar.
In this direction, constraining ǫ ≡ 0 implies that q = ±i. Since hη ≥ −δ,
it must follow that q = hi. Continuing, we must have that ˙q ≡ 0. Then, since
R(q)⊤ = R(hi)⊤ = I, from (4.67), we see that this can only occur when ω ≡ 0
and so, ˙ω = 0. But, since ω − ωd ≡ 0 and ω − ωd = ω − b, it follows that
256
b ≡ 0. Finally, from the evolution of ω, it follows that ǫ ≡ 0, and since hη ≥ −δ,
we have q = hi. This proves that A3 is globally attractive and hence, globally
asymptotically stable.
As previously mentioned, one can conduct similar “signal chasing” arguments
combined with the conditions on the flow set to conclude that Ai is globally
attractive for i = 1, 2 as well, although we do not pursue this here for economy of
space.
F.19 Proof of Theorem 4.3.5
Proof. (i = 2, 3) First, we note a helpful characterization of Gα
i (Dαi ). Using
properties of quaternions, a calculation shows that
Dαi = xi ∈ Xi : hη ≤ −δ + α or hη ≤ −δ + α.
h, h, q and q do not enter into the constraints defining Dαi and since q and q do
not change over jumps, we only examine the jump equations for h and h when
perturbed by measurement noise. As before, we can employ basic properties of
quaternions to arrive at
h+ ∈ sgn(η + αB) h+ ∈ sgn(η + αB). (F.29)
It is helpful to note that (F.29) is equivalent to writing h+η ≥ −α and h+η ≥ −α.
257
With this observation, we can write Gα
i (Dαi ) as
Gα
i (Dαi ) =
xi ∈ Xi : hη ≥ −α and hη ≥ −α ∩ xi ∈ Xi : |η| ≥ δ − α or |η| ≥ δ − α.
In preparation for computing dist(Dαi , G
αi (D
αi )), we decompose Dα
i and Gα
i (Dαi )
into the unions
Dαi = ∆α
i,1 ∪ ∆αi,2 G
α
i (Dαi ) = Γαi,1 ∪ Γαi,2,
where
∆αi,1 = xi ∈ Xi : hη ≤ −δ + α
∆αi,2 = xi ∈ Xi : hη ≤ −δ + α
Γαi,1 = xi ∈ Xi : hη ≥ −α and hη ≥ −α ∩ xi ∈ Xi : |η| ≥ δ − α
Γαi,2 = xi ∈ Xi : hη ≥ −α and hη ≥ −α ∩ xi ∈ Xi : |η| ≥ δ − α.
Intending to break the distance computation into simpler pieces, we note that
dist(Dαi , G
α
i (Dαi )) = min
j,k∈1,2dist(∆α
i,j,Γαi,k).
Let
Γαi = xi ∈ Xi : hη ≥ −α and hη ≥ −α.
Then, it follows that Gα
i (Dαi ) ⊂ Γαi and
dist(Dαi , G
α
i (Dαi )) ≥ dist(Dα
i ,Γαi ) = min
j∈1,2dist(∆α
i,j,Γαi ).
Using the norm |h1−h2| for elements h1, h2 ∈ H and ‖q1− q2‖2 for q1, q2 ∈ S3,
258
it follows that for q1 = (η1, ǫ1) and q2 = (η2, ǫ2), ‖q1 − q2‖2 ≥ |η1 − η2|. Finally,
noting that only h, h, η, and η impose constraints on the points in Dαi , we see
that
dist(∆αi,1,Γ
αi ) ≥ min
h,k∈−1,1−1≤hη≤−δ+α
−α≤kξ≤1
|h− k| + |η − ξ| (F.30a)
dist(∆2α,Γα) ≥ min
h,k∈−1,1−1≤hη≤−δ+α
−α≤kξ≤1
|h− k| + |η − ξ| (F.30b)
Note that the right-hand side of (F.30a) and (F.30b) have an identical form. In
this direction, examine (F.30a). Since h, k ∈ −1, 1, we break the minimization
into four cases. First, suppose that h = k. It follows that −2 ≤ h(η−ξ) ≤ −δ+2α.
Now suppose that h ∈ sgn(η − ξ) so that −2 ≤ |η − ξ| ≤ −δ + 2α, in which case,
min−2≤|η−ξ|≤−δ+2α
|h− k| + |η − ξ| =
∅ δ > 2α
0 δ ≤ 2α.
Now supposing that h ∈ −sgn(η − ξ), it follows that 2α− δ ≤ |η − ξ| ≤ 2 and
min2α−δ≤|η−ξ|≤2
|h− k + |η − ξ| = max(0, 2α− δ).
We handle the other two cases in a similar fashion. Let h = −k and suppose
that h ∈ sgn(η − ξ), then −1 − α ≤ |η − ξ| ≤ 1 + α− δ and
min−1−α≤|η−ξ|≤1+α−δ
|h− k| + |η − ξ| = 2.
259
Similarly, when h ∈ −sgn(η − ξ), it follows that δ − 1 − α ≤ |η − ξ| ≤ 1 + α and
minδ−1−α≤|η−ξ|≤1+α
|h− k| + |η − ξ| = 2.
Finally, since
dist(Dαi , G
α
i (Dαi )) ≥ min
j∈1,2dist(∆α
i,j,Γαi )
≥ min(max(0, 2α− δ), 2)
= max(0, 2α− δ),
selecting δ > 2α yields dist(Dαi , G
α
i (Dαi )) > 0 and Dα
i ∩Gα
i (Dαi ) = ∅.
F.20 Proof of Theorem 4.4.3
Proof. Consider the Lyapunov function
V (x) = 21⊤L (1 −Hη) +1
2ω⊤J ω
= 2∑
k∈Mℓk(1 − hkηk) +
1
2
∑
i∈Nω⊤i Jiωi
Since ℓk > 0 for all k ∈ M and Ji = J⊤i > 0 for all i ∈ N , V (X \ A) > 0 and
V (A) = 0. We now examine the evolution of V along solutions of (4.89).
First, we calculate the change in V along flows as
〈∇V (x), F (x)〉 = ω⊤(HL ⊗ I)ǫ
+ ω⊤ (S (ω)ω − (BHL ⊗ I)ǫ− K ω) .
Recalling from (4.78) that ω = B⊤(q)ω and noting that HL is diagonal, we apply
260
Lemma 4.4.1 and see that
ω⊤(HL ⊗ I)ǫ = ω⊤B(q)(HL ⊗ I)ǫ = ω⊤(BHL ⊗ I)ǫ.
Then, noting that S ⊤(ω) = −S (ω), it follows that ω⊤S (ω)ω = 0, and
〈∇V (x), F (x)〉 = −ω⊤K ω + ω⊤(BHL ⊗ I)ǫ
− (ω − 1 ⊗ ωd)⊤ (BHL ⊗ I)ǫ.
Finally, applying the property that
(1 ⊗ ωd)⊤(BHL ⊗ I) = (1⊤BHL ⊗ ωd),
and recalling that 1⊤B = 0, it follows that
〈∇V (x), F (x)〉 = −ω⊤K ω.
Since Ki = K⊤i > 0 for all i ∈ N , 〈∇V (x), F (x)〉 ≤ 0 for all x ∈ C \ A and so V
is nonincreasing along flows.
Let I(x) = i ∈ N : x ∈ Di. Examining V over jumps, we see that
V (G(x)) − V (x) ∈⋃
i∈I(x)
2
M∑
k=1
ℓk(hk − γik(x))ηk
.
261
Then, since
2M∑
k=1
ℓk(hk − γik(x))ηk = 2∑
k∈M+
i
ℓk(hk − hksgn(hkηk − α))ηk
= 2∑
k∈M+
i
ℓkhkηk(1 − sgn(hkηk + α))
and for i ∈ I(x), there exists k ∈ M+i such that hkηk ≤ −δ, it follows that for
every x′ ∈ G(x),
V (x′) − V (x) ≤ −4ℓkδ ≤ −4δmink∈M
ℓk < 0
so that V (x′) − V (x) < 0 for all x ∈ D and x′ ∈ G(x). It follows from [112,
Theorem 7.6] that A is stable.
Applying an invariance principle for hybrid systems, [112, Theorem 4.7], we see
that closed-loop trajectories approach the largest weakly invariant set contained
in
W = x ∈ C : 〈∇V (x), F (x)〉 = 0
= x ∈ C : ω = 0.
Since holding ω ≡ 0 implies that ˙ω = 0, it follows from (4.89) that xmust converge
to E = x ∈ C : (BHL ⊗ I)ǫ = 0, ω = 0. The result then follows from Lemma
4.4.2.
262
Bibliography
[1] N. P. Bhatia and G. P. Szego, Stability Theory of Dynamical Systems.
Springer, 1970.
[2] S. P. Bhat and D. S. Bernstein, “A topological obstruction to continuous
global stabilization of rotational motion and the unwinding phenomenon,”
Systems & Control Letters, vol. 39, no. 1, pp. 63–70, Jan. 2000.
[3] E. Sontag, “Stability and stabilization: discontinuities and the effect of
disturbances,” in Nonlinear analysis, differential equations and control, ser.
NATO Science Series C: Mathematical and Physical Sciences. Kluwer
Academic Publishers, 1998, vol. 528, pp. 551–598.
[4] O. Hajek, “Discontinuous differential equations, I,” Journal of Differential
Equations, vol. 32, no. 2, pp. 149–170, May 1979.
[5] A. F. Filippov, Differential Equations with Discontinuous Righthand Sides.
Kluwer Academic Publishers, 1988.
[6] J. Aubin and A. Cellina, Differential Inclusions: Set-Valued Maps and Vi-
ability Theory. Springer-Verlag, 1984.
[7] J.-P. Aubin, Viability Theory. Birkhauser Boston, 2009.
263
[8] K. Deimling, Multivalued Differential Equations. Walter de Gruyter, 1992.
[9] R. G. Sanfelice, R. Goebel, and A. R. Teel, “A feedback control motivation
for generalized solutions to hybrid systems,” Hybrid Systems: Computation
and Control, vol. 3927, pp. 522–536, 2006.
[10] ——, “Generalized solutions to hybrid dynamical systems,” ESIAM: Con-
trol, Optimisation, and Calculus of Variations, vol. 14, no. 4, pp. 699–724,
2008.
[11] D. Maithripala, J. Berg, and W. Dayawansa, “Almost-global tracking of
simple mechanical systems on a general class of Lie groups,” IEEE Trans-
actions on Automatic Control, vol. 51, no. 2, pp. 216–225, Jan. 2006.
[12] R. Abraham and J. E. Marsden, Foundations of Mechanics, 2nd ed.
Addison-Wesley, 1978.
[13] D. E. Koditschek, “The application of total energy as a Lyapunov function
for mechanical control systems,” in Dynamics and Control of Multibody Sys-
tems, ser. Contemporary Mathematics, J. E. Marsden, P. S. Krishnaprasad,
and J. C. Simo, Eds. American Mathematical Society, 1989, vol. 97, pp.
131–157.
[14] F. Bullo and R. M. Murray, “Tracking for fully actuated mechanical systems:
a geometric framework,” Automatica, vol. 35, no. 1, pp. 17–34, Jan. 1999.
[15] F. Bullo and A. D. Lewis, Geometric Control of Mechanical Systems, ser.
Texts in Applied Mathematics. Springer, 2005, vol. 49.
[16] J. Baillieul, “The geometry of controlled mechanical systems,” in Mathe-
matical Control Theory. Springer-Verlag, 1999, ch. 9, pp. 322–354.
264
[17] A. Lewis, “Simple mechanical control systems with constraints,” IEEE
Transactions on Automatic Control, vol. 45, no. 8, pp. 1420–1436, Aug.
2000.
[18] N. A. Chaturvedi, A. M. Bloch, and N. H. McClamroch, “Global stabi-
lization of a fully actuated mechanical system on a Riemannian manifold:
controller structure,” in Proceedings of the 2006 American Control Confer-
ence, 2006.
[19] H. Goldstein, Classical Mechanics. Addison-Wesley, 1980.
[20] O. Egeland, M. Dalsmo, and O. Sordalen, “Feedback control of a nonholo-
nomic underwater vehicle with a constant desired configuration,” The In-
ternational Journal of Robotics Research, vol. 15, no. 1, pp. 24–35, Feb.
1996.
[21] D. M. Boskovic and M. Krstic, “Global attitude/position regulation for
underwater vehicles,” in Proceedings of the 1999 IEEE International Con-
ference on Control Applications, vol. 2, 1999, pp. 1768–1773.
[22] S. Ge and Y. Cui, “Dynamic motion planning for mobile robots using po-
tential field method,” Autonomous Robots, vol. 13, no. 3, pp. 207–222, Nov.
2002.
[23] Y. Nakamura and S. Savant, “Nonlinear tracking control of autonomous
underwater vehicles,” in Proceedings of the IEEE International Conference
on Robotics and Automation, 1992, pp. A4–A9 vol.3.
[24] R. Kelly, V. S. Davila, and A. Lorıa, Control of Robot Manipulators in Joint
Space. Springer-Verlag, 2005.
265
[25] J. Luh, M. Walker, and R. Paul, “Resolved-acceleration control of mechani-
cal manipulators,” IEEE Transactions on Automatic Control, vol. 25, no. 3,
pp. 468–474, Jun. 1980.
[26] F. Miyazaki and S. Arimoto, “Sensory feedback for robot manipulators,”
Journal of Robotic Systems, vol. 2, no. 1, pp. 53–71, 1985.
[27] G. Meyer, “Design and global analysis of spacecraft attitude control sys-
tems,” NASA, Tech. Rep. R-361, Mar. 1971.
[28] J. T.-Y. Wen and K. Kreutz-Delgado, “The attitude control problem,” IEEE
Transactions on Automatic Control, vol. 36, no. 10, pp. 1148–1162, Oct.
1991.
[29] A. S. Shiriaev, H. Ludvigsen, and O. Egeland, “Swinging up the spherical
pendulum via stabilization of its first integrals,” Automatica, vol. 40, no. 1,
pp. 73–85, Jan. 2004.
[30] D. Angeli, “Almost global stabilization of the inverted pendulum via con-
tinuous state feedback,” Automatica, vol. 37, no. 7, pp. 1103–1108, Jul.
2001.
[31] K. J. Astrom, J. Aracil, and F. Gordillo, “A new family of smooth strate-
gies for swinging up a pendulum.” in Proceedings of the 16th IFAC World
Congress, 2005.
[32] J. Shen, A. K. Sanyal, N. A. Chaturvedi, D. S. Bernstein, and N. H. Mc-
Clamroch, “Dynamics and control of a 3D pendulum,” in Proceedings of the
43rd IEEE Conference on Decision and Control, vol. 1, 2004, pp. 323–328.
266
[33] G. Hoffmann, D. G. Rajnarayan, S. L. Waslander, D. Dostal, J. S. Jang,
and C. J. Tomlin, “The Stanford testbed of autonomous rotorcraft for multi
agent control (STARMAC),” in Proceedings of the the 23rd Digital Avionics
Systems Conference, 2004.
[34] A. Taybei and S. McGilvray, “Attitude stabilization of a VTOL quadrotor
aircraft,” IEEE Transactions on Control System Technology, vol. 14, no. 3,
pp. 562–571, May 2006.
[35] A. Rue, “Stabilization of precision electrooptical pointing and tracking sys-
tems,” IEEE Transactions on Aerospace and Electronic Systems, vol. AES-5,
no. 5, pp. 805–819, 1969.
[36] J. Osborne, G. Hicks, and R. Fuentes, “Global analysis of the double-gimbal
mechanism,” IEEE Control Systems Magazine, vol. 28, no. 4, pp. 44–64,
2008.
[37] M. Masten, “Inertially stabilized platforms for optical imaging systems,”
IEEE Control Systems Magazine, vol. 28, no. 1, pp. 47–64, 2008.
[38] D. Halliday, R. Resnik, and J. Walker, Fundamentals of Physics, 6th ed.
John Wiley & Sons, 2001.
[39] W. F. Riley and L. D. Sturges, Enginering Mechanics Dynamics, 2nd ed.
John Wiley & Sons, 1996.
[40] J. E. Marsden, A. J. Tromba, and A. Weinstein, Basic Multivariable Calcu-
lus. Springer-Verlag, 1993.
[41] J. L. Lagrange, Mechanique Analytique. Gautheir-Villars, 1788.
267
[42] S. W. Thompson and P. G. Tait, Treatise on Natual Philosophy. University
of Cambridge Press, 1886.
[43] A. M. Lyapunov, “The general problem of the stability of motion,” Inter-
national Journal of Control, vol. 55, no. 3, pp. 531–534, 1992.
[44] R. Kalman and J. Bertram, “Control system analysis and design via the
second method of Lyapunov: (I) continuous-time systems (II) discrete time
systems,” IRE Transactions on Automatic Control, vol. 4, no. 3, pp. 112–
112, 1959.
[45] O. Khatib and J.-F. Le Maitre, “Dynamic control of manipulators operating
in a complex environment,” in Proceedings of the Third Interational CISM-
IFToMM Symposium, 1978, pp. 267–282.
[46] M. Takegaki and S. Arimoto, “A new feedback method for dynamic control
of manipulators,” Journal of Dynamic Systems, Measurement, and Control,
vol. 103, no. 2, pp. 119–125, Jun. 1981.
[47] D. E. Koditschek, “Natural motion for robot arms,” in The 23rd IEEE
Conference on Decision and Control, vol. 23, 1984, pp. 733–735.
[48] O. Khatib, “Real-time obstacle avoidance for manipulators and mobile
robots,” The International Journal of Robotics Research, vol. 5, no. 1, pp.
90–98, Mar. 1986.
[49] D. E. Koditschek, “Exact robot navigation by means of potential functions:
Some topological considerations,” in Proceedings of the 1987 IEEE Interna-
tional Conference on Robotics and Automation, vol. 4, 1987, pp. 1–6.
268
[50] D. E. Koditschek and E. Rimon, “Robot navigation functions on manifolds
with boundary,” Advances in Applied Mathematics, vol. 11, no. 4, pp. 412–
442, Dec. 1990.
[51] E. Romon and D. E. Koditschek, “Exact robot navigation in geometrically
complicated but topologically simple spaces,” in Proceedings of the Interna-
tional Conference on Robotics and Automation, 1990, pp. 1937–1942 vol.3.
[52] E. Rimon and D. E. Koditschek, “Exact robot navigation using artificial po-
tential functions,” IEEE Transactions on Robotics and Automation, vol. 8,
no. 5, pp. 501–518, Oct. 1992.
[53] A. J. van der Schaft, “Stabilization of Hamiltonian systems,” Nonlinear
Analysis, vol. 10, no. 10, pp. 1021–1035, Oct. 1986.
[54] D. E. Koditschek, “Strict global Lyapunov functions for mechanical sys-
tems,” in Proceedings of the American Control Conference, 1988, pp. 1770–
1775.
[55] B. Maschke, R. Ortega, and A. Van Der Schaft, “Energy-based Lyapunov
functions for forced Hamiltonian systems with dissipation,” IEEE Transac-
tions on Automatic Control, vol. 45, no. 8, pp. 1498–1502, Aug. 2000.
[56] R. Ortega, A. Van Der Schaft, I. Mareels, and B. Maschke, “Putting energy
back in control,” IEEE Control Systems Magazine, vol. 21, no. 2, pp. 18–33,
2001.
[57] R. Ortega, A. van der Schaft, B. Maschke, and G. Escobar, “Interconnection
and damping assignment passivity-based control of port-controlled Hamil-
tonian systems,” Automatica, vol. 38, no. 4, pp. 585–596, Apr. 2002.
269
[58] A. Bloch, D. E. Chang, N. Leonard, and J. Marsden, “Controlled La-
grangians and the stabilization of mechanical systems II: Potential shaping,”
IEEE Transactions on Automatic Control, vol. 46, no. 10, pp. 1556–1571,
Oct. 2001.
[59] D. H. S. Maithripala, W. P. Dayawansa, and J. M. Berg, “Intrinsic observer-
based stabilization for simple mechanical systems on Lie groups,” SIAM
Journal on Control and Optimization, vol. 44, no. 5, pp. 1691–1711, Jan.
2005.
[60] N. A. Chaturvedi, A. M. Bloch, and N. H. McClamroch, “Global stabi-
lization of a fully actuated mechanical system on a Riemannian manifold
including control saturation effects,” in Proceedings of the 45th IEEE Con-
ference on Decision and Control, 2006, pp. 6116–6121.
[61] L. Lusternik and L. Schnirelmann, “Methodes topologiques dan les
problemes variationnels,” Paris: Hermann, 1934.
[62] R. H. Fox, “On the Lusternik-Schnirelmann category,” The Annals of Math-
ematics, vol. 42, no. 2, pp. 333–370, Apr. 1941.
[63] I. M. James and W. Singhof, “On the category of fibre bundles, Lie groups,
and Frobenius maps,” in Higher Homotopy Structures in Topology and Math-
ematical Physics, ser. Contemporary Mathematics, J. McCleary, Ed. Amer-
ican Mathematical Society, 1999, vol. 227, pp. 177–189.
[64] N. Iwase, M. Mimura, and T. Nishimoto, “Lusternik-Schnirelmann cate-
gory of non-simply connected compact simple Lie groups,” Topology and its
Applications, vol. 150, no. 1-3, pp. 111–123, May 2005.
270
[65] M. Morse, The Calculus of Variations in the Large, ser. Colloquium Publi-
cations. American Mathematical Society, 1934, vol. 18.
[66] J. Milnor, Morse Theory. Princeton University Press, 1963.
[67] A. Banyaga and D. Hurtubise, Lectures on Morse Homology. Kluwer Aca-
demic Publishers, 2004.
[68] L. I. Nicolaescu, An Invitation to Morse Theory, S. Axler and K. A. Ribet,
Eds. Springer, 2007.
[69] A. S. Morse, D. Q. Mayne, and G. C. Goodwin, “Applications of hysteresis
switching in parameter adaptive control,” IEEE Transactions on Automatic
Control, vol. 37, no. 9, pp. 1343–1354, 1992.
[70] J. Hespanha and A. Morse, “Scale-independent hysteresis switching,” in
Lecture Notes in Computer Science. Springer Berlin / Heidelberg, 1999,
vol. 1569, pp. 117–122.
[71] J. Malmborg, B. Berhardsson, and K. J. Astrom, “A stabilizing switching
scheme for multi-controller systems,” in Proceedings of the Triennial IFAC
World Congress, vol. F, 1996, pp. 229–234.
[72] R. Fierro, F. Lewis, and A. Lowe, “Hybrid control for a class of under-
actuated mechanical systems,” IEEE Transactions on Systems, Man and
Cybernetics, Part A: Systems and Humans, vol. 29, no. 6, pp. 649–654,
Nov. 1999.
[73] J. Malmborg and J. Eker, “Hybrid control of a double tank system,” in
Proceedings of the IEEE International Conference on Control Applications,
1997, pp. 133–138.
271
[74] M. Branicky, “Multiple Lyapunov functions and other analysis tools for
switched and hybrid systems,” IEEE Transactions on Automatic Control,
vol. 43, no. 4, pp. 475–482, Apr. 1998.
[75] R. Decarlo, M. Branicky, S. Pettersson, and B. Lennartson, “Perspectives
and results on the stability and stabilizability of hybrid systems,” Proceed-
ings of the IEEE, vol. 88, no. 7, pp. 1069–1082, 2000.
[76] S. Pettersson and B. Lennartson, “Stabilization of hybrid systems using a
min-projection strategy,” in Proceedings of the American Control Confer-
ence, vol. 1, 2001, pp. 223–228 vol.1.
[77] R. Goebel and A. Teel, “Solutions to hybrid inclusions via set and graphical
convergence with stability theory applications,” Automatica, vol. 42, no. 4,
pp. 573–587, Apr. 2006.
[78] R. Goebel, R. G. Sanfelice, and A. R. Teel, “Hybrid dynamical systems,”
IEEE Control Systems Magazine, vol. 29, no. 2, pp. 28–93, Apr. 2009.
[79] N. A. Chaturvedi and N. H. McClamroch, “Almost global attitude stabiliza-
tion of an orbiting satellite including gravity gradient and control saturation
effects,” in Proceedings of the 2006 American Control Conference, 2006, pp.
1748–1753.
[80] ——, “Asymptotic stabilization of the hanging equilibrium manifold of the
3D pendulum,” International Journal of Robust and Nonlinear Control,
vol. 17, no. 16, pp. 1435–1454, 2007.
[81] R. Mahony, T. Hamel, and J.-M. Pflimlin, “Nonlinear complementary filters
272
on the special orthogonal group,” IEEE Transactions on Automatic Control,
vol. 53, no. 5, pp. 1203–1218, Jun. 2008.
[82] A. Sanyal, A. Fosbury, N. A. Chaturvedi, and D. S. Bernstein, “Intertia-
free spacecraft attitude trajectory tracking with internal-model-based dis-
turbance rejection and almost global stabilization,” in Proceedings of the
2009 American Control Conference, 2009.
[83] D. Cabecinhas, R. Cunha, and C. Silvestre, “Almost global stabilization of
fully-actuated rigid bodies,” Systems & Control Letters, vol. 58, no. 9, pp.
639–645, Sep. 2009.
[84] S. Bertrand, T. Hamel, H. Piet-Lahanier, and R. Mahony, “Attitude track-
ing of rigid bodies on the special orthogonal group with bounded partial
state feedback,” in Proceedings of the 48th IEEE Conference on Decision
and Control, 2009.
[85] J. Stuelpnagel, “On the parametrization of the three-dimensional rotation
group,” SIAM Review, vol. 6, no. 4, pp. 422–430, Oct. 1964.
[86] B. Wie and P. M. Barba, “Quaternion feedback for spacecraft large angle
maneuvers,” Journal of Guidance, Control, and Dynamics, vol. 8, no. 3, pp.
360–365, 1985.
[87] O. Egeland and J.-M. Godhavn, “Passivity-based adaptive attitude control
of a rigid spacecraft,” IEEE Transactions on Automatic Control, vol. 39,
no. 4, pp. 842–846, Apr. 1994.
[88] S. M. Joshi, A. G. Kelkar, and J. T.-Y. Wen, “Robust attitude stabilization
273
of spacecraft using nonlinear quaternion feedback,” IEEE Transactions on
Automatic Control, vol. 40, no. 10, pp. 1800–1803, 1995.
[89] F. Lizarralde and J. T. Wen, “Attitude control without angular velocity
measurement: a passivity approach,” IEEE Transactions on Automatic
Control, vol. 41, no. 3, pp. 468–472, Mar. 1996.
[90] A. Tayebi, “Unit quaternion-based output feedback for the attitude tracking
problem,” IEEE Transactions on Automatic Control, vol. 53, no. 6, pp.
1516–1520, Jul. 2008.
[91] E. A. Coddington and N. Levinson, The Theory of Ordinary Differential
Equatons. McGraw-Hill, 1955.
[92] J. K. Hale, Ordinary Differential Equations. Wiley-Interscience, 1969.
[93] A. R. Teel and L. Praly, “A smooth Lyapunov function from a class-KL
estimate involving two positive semidefinite functions,” ESAIM: Control,
Optimisation, and Calculus of Variations, vol. 5, pp. 313–367, 2000.
[94] J. M. Lee, Introduction to Smooth Manifolds, ser. Graduate Texts in Math-
ematics. Springer, 2003, vol. 218.
[95] J. E. Marsden, T. Ratiu, and R. Abraham, Manifolds, Tensor Analysis, and
Applications. Springer-Verlag, 2001.
[96] V. Guillemin and A. Pollack, Differential Topology. Prentice-Hall, Inc.,
1974.
[97] F. W. Wilson, “The structure of the level surfaces of a Lyapunov function,”
Journal of Differential Equations, vol. 3, pp. 323–329, 1967.
274
[98] F. H. Clarke, Y. S. Ledyaev, and R. J. Stern, “Asymptotic stability and
smooth Lyapunov functions,” Journal of Differential Equations, vol. 149,
no. 1, pp. 69–114, Oct. 1998.
[99] J.-P. Aubin and H. Frankowska, Set-Valued Analysis. Birkhauser, 1990.
[100] R. T. Rockafellar and R. J. B. Wets, Variational Analysis. Springer-Verlag,
1997.
[101] R. G. Sanfelice, A. R. Teel, and R. Goebel, “Supervising a family of hybrid
controllers for robust global asymptotic stabilization,” in Proceedings of the
47th IEEE Conference on Decision and Control, 2008, pp. 4700–4705.
[102] C. Cai, R. Goebel, and A. Teel, “Smooth Lyapunov functions for hybrid sys-
tems part II: (pre)asymptotically stable compact sets,” IEEE Transactions
on Automatic Control, vol. 53, no. 3, pp. 734–748, 2008.
[103] O. Cornea, G. Lupton, J. Opera, and D. Tanre, Lusternik-Schnirelman Cate-
gory, ser. Mathematical Surveys and Monographs. American Mathematical
Society, 2003, vol. 103.
[104] E. Pitcher, “Inequalities of critical point theory,” Bulletin of the American
Mathematical Society, vol. 64, no. 1, pp. 1–30, Jan. 1958.
[105] J. Milnor, Lectures on the h-Cobordism Theorem. Princeton University
Press, 1965.
[106] R. Bott, “Lectures on Morse theory, old and new,” Bulletin of the American
Mathematical Society, vol. 7, no. 2, pp. 331–358, Sep. 1982.
[107] E. H. Spanier, Algebraic Topology. McGraw-Hill, 1966.
275
[108] R. Bott and L. W. Tuna, Differential Forms in Algebraic Topology.
Springer-Verlag, 1982.
[109] H. Samelson, “Topology of Lie groups,” Bulletin of the American Mathe-
matical Society, vol. 58, pp. 2–37, 1952.
[110] D. R. J. Chillingworth, J. E. Marsden, and Y. H. Wan, “Symmetry and
bifurcation in three-dimensional elasticity, part I,” Archive for Rational Me-
chanics and Analysis, vol. 80, no. 4, pp. 295–331, Dec. 1982.
[111] I. A. Dynnikov and A. P. Veselov. (1995, Sep.) Integrable gradient flows
and Morse theory. [Online]. Available: http://arxiv.org/abs/dg-ga/9506004
[112] R. G. Sanfelice, R. Goebel, and A. R. Teel, “Invariance principles for hybrid
systems with connections to detectability and asymptotic stability,” IEEE
Transactions on Automatic Control, vol. 52, no. 12, pp. 2282–2297, Dec.
2007.
[113] J. R. Munkres, Topology. Prentice Hall, 2000.
[114] R. M. Murray, Z. Li, and S. S. Sastry, A Mathematical Introduction to
Robotic Manipulation. CRC Press, 1994.
[115] M. D. Shuster, “A survey of attitude representations,” The Journal of the
Astronomical Sciences, vol. 41, no. 4, pp. 439–517, 1993.
[116] T. J. Koo and S. Sastry, “Output tracking control design of a helicopter
model based on approximate linearization,” in Proceedings of the 37th IEEE
Conference on Decision and Control, vol. 4, 1998, pp. 3635–3640.
276
[117] P. Castillo, A. Dzul, and R. Lozano, “Real-time stabilization and tracking
of a four-rotor mini rotorcraft,” IEEE Transactions on Control Systems
Technology, vol. 12, no. 4, pp. 510–516, Jul. 2004.
[118] A. M. Bloch, P. S. Krishnaprasad, J. E. Marsden, and G. S. de Alvarez,
“Stabilization of rigid body dynamics by internal and external torques,”
Automatica, vol. 28, no. 4, pp. 745–756, Jul. 1992.
[119] H. Schaub, S. R. Vadali, and J. L. Junkins, “Feedback control law for vari-
able speed control moment gyros,” Journal of the Astronomical Sciences,
vol. 46, no. 3, pp. 307–328, 1998.
[120] F. Repoulias and E. Papadopoulos, “Planar trajectory planning and track-
ing control design for underactuated AUVs,” Ocean Engineering, vol. 34,
no. 11-12, pp. 1650–1667, Aug. 2007.
[121] C. G. Mayhew, R. Sanfelice, and A. Teel, “Robust hybrid source-seeking
algorithms based on directional derivatives and their approximations,” in
Proceedings of the 47th IEEE Conference on Decision and Control, 2008,
pp. 1735–1740.
[122] K. J. Astrom and K. Furuta, “Swinging up a pendulum by energy control,”
Automatica, vol. 36, pp. 287–295, 2000.
[123] P. Tsiotras, “New control laws for the attitude stabilization of rigid bod-
ies,” in Proceedings of the 13th IFAC Symposium on Automatic Control in
Aerospace, 1994.
[124] C. I. Byrnes and A. Isidori, “On the attitude stabilization of rigid space-
craft,” Automatica, vol. 27, no. 1, pp. 87–95, Jan. 1991.
277
[125] N. Chaturvedi, N. McClamroch, and D. Bernstein, “Stabilization of a 3D
axially symmetric pendulum,” Automatica, vol. 44, no. 9, pp. 2258–2265,
Sep. 2008.
[126] N. A. Chaturvedi, N. H. McClamroch, and D. S. Bernstein, “Asymptotic
smooth stabilization of the inverted 3-D pendulum,” IEEE Transactions on
Automatic Control, vol. 54, no. 6, pp. 1204–1215, 2009.
[127] N. Chaturvedi and H. McClamroch, “Asymptotic stabilization of the in-
verted equilibrium manifold of the 3-D pendulum using non-smooth feed-
back,” IEEE Transactions on Automatic Control, vol. 54, no. 11, pp. 2658–
2662, Nov. 2009.
[128] C. G. Mayhew and A. R. Teel, “Global asymptotic stabilization of the in-
verted equilibrium manifold of the 3D pendulum by hybrid feedback,” in
Proceedings of the 49th IEEE Conference on Decision and Control, 2010.
[129] C. D. Meyer, Matrix analysis and applied linear algebra. Society for Indus-
trial and Applied Mathematics, 2000.
[130] W. B. Gordon, “On the diffeomorphisms of Euclidean space,” The American
Mathematical Monthly, vol. 79, no. 7, pp. 755–759, Aug.–Sep. 1972.
[131] C. G. Mayhew, R. G. Sanfelice, and A. R. Teel, “Robust global asymptotic
attitude stabilization of a rigid body by quaternion-based hybrid feedback,”
in Proceedings of the 48th IEEE Conference on Decision and Control and
28th Chinese Control Conference, 2009, pp. 2522–2527.
[132] R. G. Sanfelice, M. J. Messina, S. E. Tuna, and A. R. Teel, “Robust hy-
brid controllers for continuous-time systems with applications to obstacle
278
avoidance and regulation to disconnected set of points,” in Proceedings of
the American Control Conference, 2006, pp. 3352–3357.
[133] C. Prieur, R. Goebel, and A. Teel, “Hybrid feedback control and robust sta-
bilization of nonlinear systems,” IEEE Transactions on Automatic Control,
vol. 52, no. 11, pp. 2103–2117, Nov. 2007.
[134] N. Chaturvedi, T. Lee, M. Leok, and N. McClamroch, “Nonlinear dynamics
of the 3D pendulum,” Journal of Nonlinear Science, pp. 1–30, 2010.
[135] E. Fasse and J. Broenink, “A spatial impedance controller for robotic ma-
nipulation,” IEEE Transactions on Robotics and Automation, vol. 13, no. 4,
pp. 546–556, Aug. 1997.
[136] P. Y. Li and R. Horowitz, “Passive velocity field control (PVFC). part II–
application to contour following,” IEEE Transactions on Automatic Control,
vol. 46, no. 9, pp. 1360–1371, Sep. 2001.
[137] T. Frankel, “Critical submanifolds of the classical groups and Stiefel mani-
folds,” in Differential and Combinatorial Topology: A Symposium in Honor
of Marston Morse, S. S. Cairns, Ed. Princeton University Press, 1965, pp.
37–53.
[138] E. Frazzoli, M. Dahleh, and E. Feron, “Trajectory tracking control design
for autonomous helicopters using a backstepping algorithm,” in Proceedings
of the 2000 American Control Conference, vol. 6, 2000, pp. 4102–4107.
[139] P. Pounds, T. Hamel, and R. Mahony, “Attitude control of rigid body dy-
namics from biased IMU measurements,” in Proceedings of the 46th IEEE
Conference on Decision and Control, 2007, pp. 4620–4625.
279
[140] J. F. Vasconcelos, A. Rantzer, C. Silvestre, and P. Oliveira, “Combination of
Lyapunov functions and density functions for stability of rotational motion,”
in Proceedings of the 48th IEEE Conference on Decision and Control, 2009.
[141] J. C. K. Chou, “Quaternion kinematic and dynamic differential equations,”
IEEE Transactions on Robotics and Automation, vol. 8, no. 1, pp. 53–64,
Feb. 1992.
[142] S. L. Altmann, Rotations, Quaternions, and Double Groups. Oxford Uni-
versity Press, 1986.
[143] J. K. Kuipers, Quaternions and Rotation Sequences. Princeton University
Press, 1999.
[144] C. Grubin, “Derivation of the quaternion scheme via the Euler axis and
angle,” Journal of Spacecraft and Rockets, vol. 7, no. 10, pp. 1261–1263,
Oct. 1970.
[145] A. Klumpp, “Singularity-free extraction of a quaternion from a direction-
cosine matrix,” Journal of Spacecraft and Rockets, vol. 13, no. 12, pp. 754–
755, 1976.
[146] C. Grubin, “Quaternion singularity revisited,” Journal of Guidance, Con-
trol, and Dynamics, vol. 2, no. 3, pp. 255–266, May–Jun. 1979.
[147] I. Y. Bar-Itzhack, “New method for extracting the quaternion from a rota-
tion matrix,” Journal of Guidance, Control, and Dynamics, vol. 23, no. 6,
pp. 1085–1087, 2000.
[148] F. L. Markley, “Unit quaternion from rotation matrix,” Journal of Guid-
ance, Control and Dynamics, vol. 31, no. 2, pp. 440–442, Mar.–Apr. 2008.
280
[149] J. Erdong and S. Zhaowei, “Robust attitude synchronisation controllers de-
sign for spacecraft formation,” IET Control Theory & Applications, vol. 3,
no. 3, pp. 325–339, Mar. 2009.
[150] J. R. Lawton and R. W. Beard, “Synchronized multiple spacecraft rota-
tions,” Automatica, vol. 38, no. 8, pp. 1359–1364, Aug. 2002.
[151] R. E. Mortensen, “A globally stable linear attitude regulator,” International
Journal of Control, vol. 8, no. 3, pp. 297–302, 1968.
[152] B. Wie, H. Weiss, and A. Arapostahis, “Quaternion feedback regulator for
spacecraft eigenaxis rotations,” Journal of Guidance, Control, and Dynam-
ics, vol. 12, no. 3, pp. 375–380, 1989.
[153] J. Ahmed, V. Coppola, and D. Bernstein, “Adaptive asymptotic tracking
of spacecraft attitude motion with inertia matrix identification,” Journal of
Guidance, Control, and Dynamics, vol. 21, no. 5, pp. 684–691, 1998.
[154] F. Caccavale and L. Villani, “Output feedback control for attitude tracking,”
Systems & Control Letters, vol. 38, no. 2, pp. 91–98, Oct. 1999.
[155] H. Bai, M. Arcak, and J. T. Wen, “Rigid body attitude coordination without
inertial frame information,” Automatica, vol. 44, no. 12, pp. 3170–3175, Dec.
2008.
[156] C. G. Mayhew, R. G. Sanfelice, and A. R. Teel, “Robust global asymptotic
stabilization of a 6-DOF rigid body by quaternion-based hybrid feedback,”
in Proceedings of the 48th IEEE Conference on Decision and Control and
28th Chinese Control Conference, 2009, pp. 1094–1099.
281
[157] C. G. Mayhew, R. G. Sanfelice, M. Arcak, and A. R. Teel, “Robust global
asymptotic attitude synchronization by hybrid control,” in Proceedings of
the American Control Conference, 2010.
[158] O. E. Fjellstad and T. I. Fossen, “Singularity-free tracking of unmanned
underwater vehicles in 6 DOF,” in Proceedings of the 33rd IEEE Conference
on Decision and Control, vol. 2, 1994, pp. 1128–1133.
[159] J. Thienel and R. M. Sanner, “A coupled nonlinear spacecraft attitude con-
troller and observer with an unknown constant gyro bias and gyro noise,”
IEEE Transactions on Automatic Control, vol. 48, no. 11, pp. 2011–2015,
Nov. 2003.
[160] D. Fragopoulos and M. Innocenti, “Stability considerations in quaternion
attitude control using discontinuous Lyapunov functions,” IEE Proceedings
- Control Theory and Applications, vol. 151, no. 3, pp. 253–258, May 2004.
[161] R. Kristiansen, P. J. Nicklasson, and J. T. Gravdahl, “Satellite attitude
control by quaternion-based backstepping,” IEEE Transactions on Control
Systems Technology, vol. 17, no. 1, pp. 227–232, Jan. 2009.
[162] S. Salcudean, “A globally convergent angular velocity observer for rigid
body motion,” IEEE Transactions on Automatic Control, vol. 36, no. 12,
pp. 1493–1497, Dec. 1991.
[163] O. E. Fjellstad and T. I. Fossen, “Quaternion feedback regulation of un-
derwater vehicles,” in Proceedings of the 3rd IEEE Conference on Control
Applications, vol. 2, 1994, pp. 857–862.
282
[164] H. Hermes, “Discontinuous vector fields and feedback control,” in Differ-
ential Equations and Dynamic Systems, J. K. Hale and J. P. LaSalle, Eds.
Academic Press Inc., 1967, pp. 155–165.
[165] N. N. Krasovskii and A. I. Subbotin, Game-Theoretical Control Problems.
Springer-Verlag, 1988.
[166] P. Pisu and A. Serrani, “Attitude tracking with adaptive rejection of rate
gyro disturbances,” IEEE Transactions on Automatic Control, vol. 52,
no. 12, pp. 2374–2379, Dec. 2007.
[167] B. T. Costic, D. M. Dawson, M. S. De Queiroz, and V. Kapila, “A
quaternion-based adaptive attitude tracking controller without velocity
measurements,” in Proceedings of the 39th IEEE Conference on Decision
and Control, vol. 3, 2000, pp. 2424–2429.
[168] A. K. Sanyal and N. Nordkvist, “A robust estimator for almost global atti-
tude feedback tracking,” in Proceedings of the AIAA Guidance, Navigation,
and Control Conference, 2010.
[169] P. Tsiotras, “Further passivity results for the attitude control problem,”
IEEE Transactions on Automatic Control, vol. 43, no. 11, pp. 1597–1600,
Nov. 1998.
[170] R. Kristiansen, A. Lorıa, A. Chaillet, and P. J. Nicklasson, “Spacecraft rela-
tive rotation tracking without angular velocity measurements,” Automatica,
vol. 45, no. 3, pp. 750–756, Mar. 2009.
[171] A. Abdessameud and A. Tayebi, “Attitude synchronization of a group of
283
spacecraft without velocity measurements,” IEEE Transactions on Auto-
matic Control, vol. 54, no. 11, pp. 2642–2648, Oct. 2009.
[172] P. K. C. Wang, F. Y. Hadaegh, and K. Lau, “Synchronized formation ro-
tation and attitude control of multiple free-flying spacecraft,” Journal of
Guidance, Control, and Dynamics, vol. 22, no. 1, pp. 28–35, 1999.
[173] D. V. Dimarogonas, P. Tsiotras, and K. J. Kyriakopoulos, “Leader-follower
cooperative attitude control of multiple rigid bodies,” Systems & Control
Letters, vol. 58, no. 6, pp. 429–435, Jun. 2009.
[174] A. Sarlette, R. Sepulchre, and N. E. Leonard, “Autonomous rigid body
attitude synchronization,” Automatica, vol. 45, no. 2, pp. 572–577, Feb.
2009.
[175] T. Krogstad and J. Gravdahl, “Coordinated attitude control of satellites in
formation,” in Group Coordination and Cooperative Control, ser. Lecture
Notes in Control and Information Sciences. Springer, 2006, ch. 9, pp.
153–170.
[176] K. Lau, S. Lichten, L. Young, and B. Haines, “An innovative deep space
application of GPS technology for formation flying spacecraft,” in AIAA
Guidance, Navigation, and Control Conference, 1996, paper no. AIAA-96-
3819.
[177] A. Das, R. Cobb, and M. Stallard, “TechSat 21 a revolutionary concept in
space based sensing,” in AIAA Defense and Civil Space Programs Confer-
ence and Exhibit, 1998, paper no. AIAA-98-5255.
284
[178] J. P. How, R. Twiggs, D. Weidow, K. Hartman, and F. Bauer, “Orion:
A low-cost demonstration of formation flying in space using GPS,” in
AIAA/AAS Astrodynamics Specialist Conference and Exhibit, 1998, paper
no. AIAA-1998-4398.
[179] T. R. Smith, H. Hanssman, and N. E. Leonard, “Orientation control of
multiple underwater vehicles with symmetry-breaking potentials,” in Pro-
ceedings of the 40th IEEE Conference on Decision and Control, 2001.
[180] M. Arcak, “Passivity as a design tool for group coordination,” IEEE Trans-
actions on Automatic Control, vol. 52, no. 8, pp. 1380–1390, Aug. 2007.
[181] N. K. Philip and M. R. Ananthasayanam, “Relative position and attitude
estimation and control schemes for the final phase of an autonomous docking
mission of spacecraft,” Acta Astronautica, vol. 52, no. 7, pp. 511–522, Apr.
2003.
[182] S.-G. Kim, J. L. Crassidis, Y. Cheng, and A. M. Fosbury, “Kalman fil-
tering for relative spacecraft attitude and position estimation,” Journal of
Guidance, Control and Dynamics, vol. 30, no. 1, pp. 133–143, 2007.
[183] N. Biggs, Algebraic Graph Theory. Cambridge University Press, 1993.
[184] M. A. Armstrong, Basic Topology. Springer, 1983.
[185] A. Nijenhuis and R. W. Richardson, “A theorem on maps with non-negative
Jacobians,” Michigan Mathematical Journal, vol. 9, no. 2, pp. 173–176, 1962.
[186] W. B. Gordon, “Addendum to “on the diffeomorphisms of Euclidean
space”,” The American Mathematical Monthly, vol. 80, no. 6, pp. 674–675,
Jun.–Jul. 1973.
285
[187] F. Wu and C. Desoer, “Global inverse function theorem,” IEEE Transac-
tions on Circuit Theory, vol. 19, no. 2, pp. 199–201, Mar. 1972.
[188] C.-W. Ho, “A note on proper maps,” Proceedings of the American Mathe-
matical Society, vol. 51, no. 1, pp. 237–241, Aug. 1975.
[189] O. Gutu and J. Jaramillo, “Global homeomorphisms and covering projec-
tions on metric spaces,” Mathematische Annalen, vol. 338, no. 1, pp. 75–95,
May 2007.
[190] R. S. Palais, “Natural operations on differential forms,” Transactions of the
American Mathematical Society, vol. 92, no. 1, pp. 125–141, Jul. 1959.
[191] R. Plastock, “Homeomorphisms between Banach spaces,” Transactions of
the American Mathematical Society, vol. 200, pp. 169–183, Dec. 1974.
[192] M. Spivak, A Comprehensive Introduction to Differential Geometry, 3rd ed.
Publish or Perish Inc., 1999, vol. 1.
[193] S. Lang, Introduction to Differentiable Manifolds, 2nd ed. Springer, 2002.
[194] J. R. Magnus and H. Neudecker, “Matrix differential calculus with appli-
cations to simple, Hadamard, and Kronecker products,” Journal of Mathe-
matical Psychology, vol. 29, no. 4, pp. 474–492, Dec. 1985.
[195] H. Neudecker, “Some theorems on matrix differentiation with special ref-
erence to Kronecker matrix products,” Journal of the American Statistical
Association, vol. 64, no. 327, pp. 953–963, Sep. 1969.
[196] H. V. Henderson and S. R. Searle, “The vec-permutation matrix, the vec op-
erator and Kronecker products: a review,” Linear and Multilinear Algebra,
vol. 9, no. 4, pp. 271–288, 1981.
286
[197] O. Fjellstad, “Control of unmanned underwater vehicles in six degrees of
freedom: A quaternion feedback approach,” Ph.D. dissertation, Norwegian
Institute of Technology, 1994.
[198] S. Sternberg and R. G. Swan, “On maps with nonnegative Jacobian,” Michi-
gan Mathematical Journal, vol. 6, no. 4, pp. 339–342, 1959.
[199] R. A. Horn and C. R. Johnson, Matrix Analysis. Cambridge, 1985.
[200] J. W. Milnor, Topology from the Differentiable Viewpoint. The University
Press of Virginia, 1965.
287