Final update to the post

This commit is contained in:
Dimitri Lozeve 2020-11-14 17:28:39 +01:00
parent 4070eaadc5
commit 85cf5b13b6
3 changed files with 1458 additions and 36 deletions

View file

@ -444,3 +444,13 @@
series = {Undergraduate Texts in Mathematics}, series = {Undergraduate Texts in Mathematics},
} }
@book{lafontaine2015_introd_differ_manif,
author = {Jacques Lafontaine},
title = {An Introduction to Differential Manifolds},
year = 2015,
publisher = {Springer International Publishing},
url = {https://doi.org/10.1007/978-3-319-20735-3},
DATE_ADDED = {Sat Nov 14 17:05:06 2020},
doi = {10.1007/978-3-319-20735-3},
isbn = 9783319207346,
}

1352
images/lie_exponential.svg Normal file

File diff suppressed because it is too large Load diff

After

Width:  |  Height:  |  Size: 266 KiB

View file

@ -27,12 +27,18 @@ Indeed, this is not a coincidence: the important structure that is
common to the set of rotation matrices and to the set of quaternions common to the set of rotation matrices and to the set of quaternions
is that of a /Lie group/. is that of a /Lie group/.
In this post, I want to explain why I find Lie theory interesting,
both in its theoretical aspects (for fun) and in its potential for
real-world application (for profit). I will also give a minimal set of
references that I used to get started.
* Why would that be interesting? * Why would that be interesting?
From a mathematical point of view, seeing a common structure like this From a mathematical point of view, seeing a common structure in
should raise alarm signals in our heads. Is there a deeper concept at different objects, such as quaternions and rotation matrices, should
play here? If we can find that two objects are two examples of the raise alarm signals in our heads. Is there a deeper concept at play
same abstract structure, maybe we'll also be able to identify that here? If we can find that two objects are two examples of the same
abstract structure, maybe we'll also be able to identify that
structure elsewhere, maybe where it's less obvious. And then, if we structure elsewhere, maybe where it's less obvious. And then, if we
prove interesting theorems on the abstract structure, we'll prove interesting theorems on the abstract structure, we'll
essentially get the same theorems on every example of this structure, essentially get the same theorems on every example of this structure,
@ -43,9 +49,7 @@ and /for free!/ (i.e. without any additional work!)[fn:structure]
in a fun rabbit hole to get into, and if you're interested, I in a fun rabbit hole to get into, and if you're interested, I
recommend the amazing [[https://www.math3ma.com/][math3ma]] blog, or recommend the amazing [[https://www.math3ma.com/][math3ma]] blog, or
cite:riehlCategoryTheoryContext2017 for a complete and approachable cite:riehlCategoryTheoryContext2017 for a complete and approachable
treatment. cite:fongSevenSketchesCompositionality2018 gives an treatment.
interesting perspective on why category theory is interesting in the
real world.
We can think of it as a kind of factorization: instead of doing the We can think of it as a kind of factorization: instead of doing the
@ -58,7 +62,8 @@ objects that we want to /combine/ and on which we'd like to compute
/derivatives/. Differentiability is an essentially linear property, in /derivatives/. Differentiability is an essentially linear property, in
the sense that it works best in vector spaces. Indeed, think of what the sense that it works best in vector spaces. Indeed, think of what
you do to with a derivative: you want to /add/ it to other stuff to you do to with a derivative: you want to /add/ it to other stuff to
represent increase rates or uncertainties. represent increase rates or uncertainties. (And of course, the
differential operator itself is linear.)
Once you can differentiate, a whole new world Once you can differentiate, a whole new world
opens[fn:differentiability]: optimization becomes easier (because you opens[fn:differentiability]: optimization becomes easier (because you
@ -89,7 +94,7 @@ identify?
compose rotations), have an identity element, along with nice compose rotations), have an identity element, along with nice
properties. properties.
2. Quaternions and rotation matrices can be differentiated, and we can 2. Quaternions and rotation matrices can be differentiated, and we can
map them with usual vectors. map them to and from usual vectors in $\mathbb{R}^m$.
These two group of properties actually correspond to common These two group of properties actually correspond to common
mathematical structures: a /group/ and a /differentiable manifold/. mathematical structures: a /group/ and a /differentiable manifold/.
@ -106,22 +111,23 @@ basic properties:
- For every element $x$ of $G$, there is a unique element of $G$ - For every element $x$ of $G$, there is a unique element of $G$
denoted $x^{-1}$ such that $x \cdot x^{-1} = x^{-1} \cdot x = e$. denoted $x^{-1}$ such that $x \cdot x^{-1} = x^{-1} \cdot x = e$.
A [[https://en.wikipedia.org/wiki/Differentiable_manifold][differentiable manifold]] is a more complex beast. Although the A [[https://en.wikipedia.org/wiki/Differentiable_manifold][differentiable manifold]] is a more complex
definition is more complex, we can loosely imagine it as a surface (in beast.[fn:differential_geometry] Although the definition is more
higher dimension) on which we can compute derivatives at every complex, we can loosely imagine it as a surface (in higher dimension)
point. This means that there is a tangent hyperplane at each point, on which we can compute derivatives at every point. This means that
which is a nice vector space where our derivatives will live. there is a tangent hyperplane at each point, which is a nice vector
space where our derivatives will live.
You can think of the manifold as a tablecloth that has a weird shape, You can think of the manifold as a tablecloth that has a weird shape,
all kinds of curvatures, but no edges or spikes. The idea here is that all kinds of curvatures, but no edges or spikes. The idea here is that
we can define an /atlas/, i.e. a local approximation of the manifold we can define an /atlas/, i.e. a local approximation of the manifold
as a plane. The name is telling: they're called atlases because they as a plane. The name is telling: they're called atlases because they
play the exact same role as maps. The Earth is not flat, it is a play the exact same role as geographical maps. The Earth is not flat,
sphere with all kinds of deformations (mountains, canyons, oceans), it is a sphere with all kinds of deformations (mountains, canyons,
but we can have maps that represent a small area with a very good oceans), but we can have planar maps that represent a small area with
precision. Similarly, atlases are the vector spaces that provide the a very good precision. Similarly, atlases are the vector spaces that
best linear approximation of a small region around a point on the provide the best linear approximation of a small region around a point
manifold. on the manifold.
So we know what a group and a differential manifold are. As it turns So we know what a group and a differential manifold are. As it turns
out, that's all we need to know! What we have defined so far is a /Lie out, that's all we need to know! What we have defined so far is a /Lie
@ -138,6 +144,12 @@ To take the example of rotation matrices:
of this trajectory! They would represent instantaneous orientation of this trajectory! They would represent instantaneous orientation
change, or angular velocities. change, or angular velocities.
[fn:differential_geometry] {-} For a more complete introduction to
differential geometry and differentiable manifolds, see
cite:lafontaine2015_introd_differ_manif. It introduces manifolds,
differential topology, Lie groups, and more advanced topics, all with
little prerequisites (basics of differential calculus).
[fn:lie] {-} Lie theory is named after [[https://en.wikipedia.org/wiki/Sophus_Lie][Sophus Lie]], a Norwegian [fn:lie] {-} Lie theory is named after [[https://en.wikipedia.org/wiki/Sophus_Lie][Sophus Lie]], a Norwegian
mathematician. As such, "Lie" is pronounced /lee/. Lie was inspired by mathematician. As such, "Lie" is pronounced /lee/. Lie was inspired by
[[https://en.wikipedia.org/wiki/%C3%89variste_Galois][Galois']] work on algebraic equations, and wanted to establish a similar [[https://en.wikipedia.org/wiki/%C3%89variste_Galois][Galois']] work on algebraic equations, and wanted to establish a similar
@ -150,36 +162,84 @@ material that you can find online.[fn:princeton_companion] I
especially recommend the tutorial by especially recommend the tutorial by
cite:sola2018_micro_lie_theor_state_estim_robot: just enough maths to cite:sola2018_micro_lie_theor_state_estim_robot: just enough maths to
understand what is going on, but without losing track of the understand what is going on, but without losing track of the
applications. There is also a [[https://www.youtube.com/watch?v=QR1p0Rabuww][video tutorial]] for the [[https://www.iros2020.org/][IROS2020]] applications. There is also a [[https://www.youtube.com/watch?v=QR1p0Rabuww][video tutorial]] made for the [[https://www.iros2020.org/][IROS2020]]
conference[fn::More specifically for the workshop on [[https://sites.google.com/view/iros2020-geometric-methods/][Bringing conference[fn:workshop]. For a more complete treatment,
geometric methods to robot learning, optimization and control]].]. For a cite:stillwell2008_naive_lie_theor is great[fn:stillwell].
more complete treatment, cite:stillwell2008_naive_lie_theor is
great.[fn::{-} John Stillwell is one of the best textbook writers. All Because of the group structure, the manifold is similar at every
his books are extremely clear and a pleasure to read. You generally point: in particular, all the tangent spaces look alike. This is why
read a book because you're interested in learning the topic; you begin the /Lie algebra/, the tangent space at the identity, is so
learning a topic just because Stillwell wrote a book on it.] important. All tangent spaces are vector spaces isomorphic to the Lie
algebra, therefore studying the Lie algebra is sufficient to derive
all the interesting aspects of the Lie group.
Lie algebras are always vector spaces. Even though their definition
may be quite complex (e.g. skew-symmetric matrices in the case of the
group of rotation matrices[fn:skewsymmetric]), we can always find an
isomorphism of vector spaces between the Lie algebra and
$\mathbb{R}^m$ (in the case of finite-dimensional Lie groups). This is
really nice for many applications: for instance, the usual probability
distributions on $\mathbb{R}^m$ translate directly to the Lie algebra.
The final aspect I'll mention is the existence of /exponential maps/,
allowing transferring elements of the Lie algebra to the Lie
group. The operator $\exp$ will wrap an element of the Lie algebra
(i.e. a tangent vector) to its corresponding element of the Lie group
by wrapping along a geodesic of the manifold. There is also a
logarithmic map providing the inverse operation.
[fn::{-} The Lie group (in blue) with its associated Lie algebra
(red). We can see how each element of the Lie algebra is wrapped on
the manifold via the exponential map. Figure from
cite:sola2018_micro_lie_theor_state_estim_robot.]
#+ATTR_HTML: :width 500px
[[../images/lie_exponential.svg]]
If all this piqued your interest, you can read a very short (only 14
pages!) overview of Lie theory in
cite:sola2018_micro_lie_theor_state_estim_robot. They also expand on
applications to estimation and robotics (as the title suggests), so
they focus on deriving Jacobians and other essential tools for any Lie
group. They also give very detailed examples of common Lie groups
(complex numbers, rotation matrices, quaternions, translations).
[fn:princeton_companion] {-} There is also a chapter on Lie theory in [fn:princeton_companion] {-} There is also a chapter on Lie theory in
the amazing /Princeton Companion to Mathematics/ the amazing /Princeton Companion to Mathematics/
[[citep:gowersPrincetonCompanionMathematics2010][::, §II.48]]. [[citep:gowersPrincetonCompanionMathematics2010][::, §II.48]].
[fn:workshop] More specifically for the workshop on [[https://sites.google.com/view/iros2020-geometric-methods/][Bringing geometric
methods to robot learning, optimization and control]].
The Lie group is a set of elements. At every element, there is a [fn:stillwell] I really like John Stillwell as a textbook author. All
tangent vector space. The tangent vector space at the identity is his books are extremely clear and a pleasure to read.
called the Lie algebra, and as we will see, it plays a special role.
TODO [fn:skewsymmetric] {-} [[https://en.wikipedia.org/wiki/Skew-symmetric_matrix][Skew-symmetric matrices]] are matrices $A$ such
that $A^\top = -A$:
\[ [\boldsymbol\omega]_\times = \begin{bmatrix}
0 & -\omega_x & \omega_y \\
\omega_x & 0 & -\omega_z \\
-\omega_y & \omega_z & 0
\end{bmatrix}. \]
* Applications * Conclusion
Lie theory is useful because it gives strong theoretical guarantees Lie theory is useful because it gives strong theoretical guarantees
whenever we need to linearize something. If you have a system evolving whenever we need to linearize something. If you have a system evolving
on a complex geometric structure (for example, the space of rotations, on a complex geometric structure (for example, the space of rotations,
which is definitely not linear), but you need to use a linear which is definitely not linear), but you need to use a linear
operation (if you need uncertainties, or you have differential operation (if you need uncertainties, or you have differential
equations), you have to approximate somehow. equations), you have to approximate somehow. Using the Lie structure
of the underlying space, you immediately get a principled way of
defining derivatives, random variables, and so on.
Using the Lie structure of the underlying space, you immediately get a Therefore, for estimation problems, Lie theory provides a strong
principled way of defining derivatives, random variables, and so on. backdrop to define state spaces, in which all the usual manipulations
are possible. It has thus seen a spike of interest in the robotics
literature, with applications to estimation, optimal control, general
optimization, and many other fields.
I hope that this quick introduction has motivated you to learn more
about Lie theory, as it is a fascinating topic with a lot of
potential!
* References * References