姿勢制御のための数理 - 3. 姿勢制御のためのリー群・リー代数

## 概要

1. [姿勢の記述 (群)](https://qiita.com/ymsk_CM/items/978594affaff1762cf43)
2. [姿勢変化の記述 (多様体)](https://qiita.com/ymsk_CM/items/55b84cd3291261e37584)
3. (ｺｺ) 姿勢制御のためのリー群・リー代数
4. [付録: 回転対称性を持つ剛体の姿勢](https://qiita.com/ymsk_CM/items/d3341ac89e63fcb6bb8e)

前回までで, 姿勢制御問題を扱うため,  

* 「姿勢」そのものを記述するための群,  
* 「姿勢の変化」を記述するための多様体,  

という二つの数学的対象を紹介し, 姿勢を扱うための $SE(d)$ と $SO(d)$ が群かつ多様体になっていることを述べた.  
今回はその二つの側面を併せ持つ数学的対象としてリー群を導入し, 多様体の接空間や指数写像といった抽象的な概念が群の演算によって具体的に書けることを見ていく.  
また, 対象のリー群より扱いやすいリー群上で計算を行い, 結果のみを目的のリー群で得るための概念として準同型性を導入し, その例としてクォータニオン・デュアルクォータニオンを示す.  

## 前提知識

前回までと同じく線型代数とユークリッド幾何の知識と, 前回までに紹介した群や多様体についての基礎を必要とする.  
行列指数関数や四元数等の代数的に少し立ち入った概念やクォータニオンと回転行列の相互変換についても一通り触れてあると読みやすいと思う.  

## 解説

### リー群

群と多様体の性質を併せ持つ集合を**リー群**と呼ぶ.  
当然, ただ「群でもあるし多様体でもある」というだけならいくらでもそのような例を作れてしまうので追加の条件もあるが, ここではあまり気にしないことにする.  

#### リー群・リー代数と指数写像

リー群は多様体でもあるので接空間を持ち, 接空間からリー群への指数写像を考えることができ, 単位元 (任意の要素 $g$ に対して $ge = eg = g$ となる要素 $e$) における接空間を**リー代数**と呼ぶ[^liealgebra].  
リー代数には慣例からリー群の記号に対応する小文字のフラクトゥール体が当てられ, 例えばリー群 $G$ に対応するリー代数は $\mathfrak{g}$ と書かれる.  
リー代数は**括弧積**と呼ばれる積を持ち, $X, X' \in \mathfrak{g}$ に対して $[X, X']$ という記号が使われる.  
積にわざわざ $[, ]$ という記号を持ち出すのは後述のように「通常の積」も同時に扱われることが理由の一つである.  

[^liealgebra]: 正確には括弧積が定義されたベクトル空間がリー代数で, リー群の接空間はリー代数となることが証明される.  

リー群に関しては, 群の演算を用いて単位元における接空間・指数写像から他の点におけるそれらを導くことができるため, リー代数としては単位元における接空間のみを考える.  
指数写像も同様に単位元におけるそれを代表的に扱い, 以降は単に $\exp := \exp_e$ と書くようにする.  
測地線の構成には, 例えばリー群 $G$ の二点 $g, g' \in G$ を通る測地線を得たい場合, $g^{-1}g' = \exp{(X)}$ となる $X \in \mathfrak{g}$ が得られれば $c(\tau) := g\exp{(\tau X)}$ が求める測地線になる[^geodesic].  

[^geodesic]: 転置の $t$ と被るため測地線のパラメータの記号を変えた.  

#### 線型リー群

リー群の例には可逆な $d$ 次正方行列全体 $GL(d)$ の部分群からなるものが多く知られており, そのようなものを**線型リー群**と呼ぶ[^linearliegroup].  
線型リー群のリー代数は**線型リー代数**と呼ばれ, 可逆とは限らない $d$ 次正方行列全体 $M(d)$ の部分空間として得られることが知られている.  
この時, 線型リー代数 $\mathfrak{g} \subset M(d)$ の括弧積は行列の四則演算を使って,  

[^linearliegroup]: 正確にはそのうち $GL(d)$ の閉集合となるものを指す.  

$$ 
[X, X'] = XX'-X'X, \quad X, X' \in \mathfrak{g}, 
$$

と具体的に書くことができる[^bracket].  
指数写像は**行列指数関数**に一致し,  

[^bracket]: これは一般の多様体の接空間が微分作用素からなるベクトル空間として解釈されることによる. 関数 $f$ の接空間のベクトルによる形式的な微分作用を考えると, $f$ に $X'$ と $X$ を続けて作用させる $XX'f = X(X'f)$ は, $X'f$ を積だと解釈することで $X(X'f) = (XX')f+X'(Xf)$ と書ける. これについて作用素としての積を $XX'$, $X$ による $X'$ への微分作用を $[X, X']$ と書き直せば $XX' = [X, X']+X'X$ であり, 移項すれば括弧積の定義式が得られる.  

$$ 
\exp{(X)} := \sum_{n=0}^\infty\frac{1}{n!}X^n, 
$$

と書けて, これは任意の $X \in M(d)$ に対して収束することが分かっている.  

### リー群としての $SO(d), SE(d)$

この節では $SO(d), SE(d)$ のリー群としての構造, 特にリー代数と指数写像について書き下していくが, 詳しい証明は省き, 他の文献に任せることにする.  

#### リー群としての $SO(d)$

$SO(d)$ は $gg^t = I$ 及び $\det{g} = 1$ という多項式方程式[^polynomial]で定まる群で, **線型代数群**[^linearalgebraicgroup]と呼ばれるリー群になることが知られている.  

対応するリー代数は $\mathfrak{so}(d)$ と書かれ,  

[^polynomial]: 転置や行列式も行列の成分による多項式で書けることに注意.  

[^linearalgebraicgroup]: 「線型代数/群」ではなく「線型/代数群」である.  

$$ 
\mathfrak{so}(d) = \\{X \in M(d) \ \vert \ X+X^t = O\\}, 
$$

という**交代行列**と呼ばれる行列全体に一致する.  
余裕があれば $X, X' \in \mathfrak{so}(d)$ に対して $[X, X'] \in \mathfrak{so}(d)$ となり, 括弧積が $\mathfrak{so}(d)$ の積として成立していることを確認しておこう.  

指数写像は固有値分解を利用するのが分かりやすいと思う.  
交代行列は対角化可能であることが知られており, $X \in \mathfrak{so}(d)$ に対して,  

$$ 
\begin{gather*} 
X = U^{-1}\mathrm{diag}(\lambda_0, \lambda_1, \dots, \lambda_{d-1})U, \\\\ 
\mathrm{diag}(\lambda_0, \lambda_1, \dots, \lambda_{d-1}) := \begin{bmatrix} \lambda_0 & 0 & \dots & 0 \\\\ 0 & \lambda_1 & \ddots & \vdots \\\\ \vdots & \ddots & \ddots & 0 \\\\ 0 & \dots & 0 & \lambda_{d-1} \\\\ \end{bmatrix}, \\\\ 
\end{gather*} 
$$

と対角化されるとすると,  

$$ 
\exp{(X)} = U^{-1}\mathrm{diag}(\exp{(\lambda_0)}, \exp{(\lambda_1)}, \dots, \exp{(\lambda_{d-1})})U, 
$$

と変形できて, $\exp{(X)}$ は固有値が元の行列 $X$ の固有値を指数関数で写したもので, 固有ベクトルは $X$ と同じである対角化可能な行列であることが分かる.  
この時, 実は交代行列の固有値は全て $0$ を含む純虚数であり, $\exp{(X)}$ の固有値は全て絶対値が $1$ となって回転行列に求められる条件を満たしていることも分かる.  

多様体の議論においてはしばしば指数写像が全射かどうかが重要になる.  
測地線が通る点が指数写像の像からなり, 指数写像が全射でなければどの測地線も通らない点が発生してしまうためである.  
$SO(d)$ の指数写像は全射になっており, それが後述のクォータニオンにおける球面線型補間で任意の二姿勢の補間ができる根拠になっている.  
証明には「$SO(d)$ は連結なコンパクトリー群なので指数写像が全射である」というリー群の一般論によるものの他, 上の指数写像から $g = \exp{(X)}$ となる $X$ を探す方法でも示すことができる.  

#### リー群としての $SE(d)$

$SE(d)$ は元の定義はアファイン変換からなる群だが, $d+1$ 次正方行列と同一視して,  

$$ 
SE(d) = \left\\{\begin{bmatrix} \widetilde{g} & v \\\\ 0 & 1 \end{bmatrix} \in GL(d+1) \ \middle\vert \ \widetilde{g} \in SO(d), \ v \in \mathbb{R}^d\right\\}, 
$$

と書ける群であった.  
これも左上小行列 (行列の左上 $d\times d$ 部分) を取る操作等を組み合わせて多項式方程式で書けるので線型代数群で, リー群である.  

$SE(d)$ に対応するリー代数 $\mathfrak{se}(d)$ は,  

$$ 
\mathfrak{se}(d) = \left\\{\begin{bmatrix} \widetilde{X} & \xi \\\\ 0 & 0 \end{bmatrix} \in M(d+1) \ \middle\vert \ \widetilde{X} \in \mathfrak{so}(d), \ \xi \in \mathbb{R}^d\right\\}, 
$$

で, 括弧積は,  

$$ 
\left[\begin{bmatrix} \widetilde{X} & \xi \\\\ 0 & 0 \end{bmatrix}, \begin{bmatrix} \widetilde{X}' & \xi' \\\\ 0 & 0 \end{bmatrix}\right] = \begin{bmatrix} \widetilde{X}\widetilde{X}'-\widetilde{X}'\widetilde{X} & \widetilde{X}\xi'-\widetilde{X}'\xi \\\\ 0 & 0 \end{bmatrix}, 
$$

となる.  

指数写像は行列指数関数を少し変形した関数を使い,  

$$ 
\begin{gather*} 
\exp{\left(\begin{bmatrix} \widetilde{X} & \xi \\\\ 0 & 0 \end{bmatrix}\right)} = \begin{bmatrix} \exp{(\widetilde{X})} & \epsilon(\widetilde{X})\xi \\\\ 0 & 1 \end{bmatrix}, \\\\ 
\epsilon(\widetilde{X}) := \sum_{n=0}^\infty\frac{1}{(n+1)!}\widetilde{X}^n, \\\\ 
\end{gather*} 
$$

で得られる.  
$\exp{(\widetilde{X})}$ は $SO(d)$ の指数写像そのままで, $\epsilon(\widetilde{X})$ の計算には $\exp{(\widetilde{X})}$ と同じく固有値を $\lambda \mapsto \epsilon(\lambda)$ に変換する方法を取ればいい.  
固有値を求める際の複素関数としての $\epsilon{(\lambda)}$ ($\lambda \in \mathbb{C}$) は,  

$$ 
\epsilon{(\lambda)} = \begin{cases} 1 & \lambda = 0, \\\\ \frac{\exp{(\lambda)}-1}{\lambda} & \lambda \neq 0, \\\\ \end{cases} 
$$

と書けることが利用できる.  

$SO(d)$ の場合と異なり, 指数写像の全射性の証明にリー群の一般的性質を使ったものは見つからなかった[^notfound].  
上で書き下した指数写像の具体形からの証明は可能だが $\epsilon(\widetilde{X})$ が可逆である条件等を考える必要があり, 少し工夫が要る[^proof].  

[^notfound]: 誰か知っていれば教えて欲しい.  

[^proof]: そのうち記事に書き起こすかもしれない.  

ただし, [前回](https://qiita.com/ymsk_CM/items/55b84cd3291261e37584)述べたように $SE(d)$ の測地線は必ずしもユークリッド空間内での最短変化を与えない.  
[参考資料の一つ目 (2) リー群・リー代数を使った3次元剛体変換](https://qiita.com/scomup/items/d82b35aeb1ecabd75e60)の中頃にあるロボットの並進の図が分かりやすく, 意味論として接空間のベクトル $X$ は「姿勢変化の相対的な角速度 & 平行移動速度」, 指数写像 $\exp{(X)}$ は「相対速度 $X$ で変化し続けた後の最終的な姿勢」と解釈できるため $SE(d)$ の測地線はカーブを描くようになる ($SO(d)$ は平行移動を含まないためこのような現象が起こらない).  
回転しながら直線運動するドリフトのような変化を表現したければ回転行列部分と平行移動部分について別々に曲線を設定しよう.  

### 異なるリー群による $SO(d), SE(d)$ の記述

前節で $SO(d), SE(d)$ の指数写像が明らかになり, 二点を通る測地線を扱うことが出来るようになったが, 測地線の構成に固有値分解が必要で計算コストの面から扱い辛い.  
そこで, 異なる扱いやすいリー群 $G$ から $SO(d), SE(d)$ への写像を考えることで, $G$ 上の曲線を $SO(d), SE(d)$ の測地線に写して計算を容易にすることを考えよう.  

#### リー群・リー代数の準同型写像

二つの群 $G, H$ の間の写像 $f: G \rightarrow H$ で群の演算を保つもの, つまり,  

$$ 
f(gg') = f(g)f(g'), \quad g, g' \in G, 
$$

を満たすものを **(群の) 準同型写像**と呼び, $G$ と $H$ は $f$ によって**準同型**であるという.  
準同型写像は他の数学的対象にも定義することができ[^morphism], 例えばベクトル空間は和とスカラー倍が定められた集合なのでそれらを保つ線型写像が準同型写像となり, 位相空間は連続性を定義できる空間なので連続写像が準同型写像と見なされる.  

[^morphism]: 圏論でいうところの射である.  

リー群は群と多様体の両方の構造を持つので, 群として準同型で, 多様体として微分可能[^differentiable]な写像がリー群としての準同型写像である.  
リー代数に関しても括弧積を保つ線型写像が準同型写像だと定められる.  
両者には「リー群の準同型写像の微分はリー代数の準同型写像である」という関係があり, さらに, リー群 $G, H$ の準同型写像 $f: G \rightarrow H$ の微分を $\delta_f: \mathfrak{g} \rightarrow \mathfrak{h}$ と書き, $\exp^G, \exp^H$ をそれぞれ $G, H$ の指数写像とすると,  

[^differentiable]: 実際はリー群の場合は連続であれば十分なことが知られている.  

$$ 
f(\exp^G{(X)}) = \exp^H{(\delta_f(X))}, \quad X \in \mathfrak{g}, 
$$

という関係が成り立つことが知られており, この等式からリー群の準同型写像を使って $G$ の測地線を $H$ の測地線に写せることが分かる.  

#### 四元数 (クォータニオン) のリー群

$d = 3$ の時, $SO(3), SE(3)$ の指数写像は**四元数 (クォータニオン)** と呼ばれる数の集合からなるリー群の準同型写像によって計算が簡単になることが知られている.  

複素数にさらに二つの虚数単位を追加した数の体系を四元数と呼び, 四元数全体の集合を $\mathbb{H}$ と書く.  
詳細は[参考文献の二つ目 (7) 四元数](https://swkagami.hatenablog.com/entry/lie_07quaternion)等を参照.  

四元数全体から $0$ を除いた集合を $\mathbb{H}^\times$ と書くと, これは四元数の積を演算とするリー群となることが知られている.  
ここではまだ姿勢制御問題におけるクォータニオンの議論で現れる $|q| = 1$ ($|q|$ は $4$ 次元ベクトルとしてのノルム) の制約は考えていないことに注意.  
対応するリー代数は $\mathbb{H}$ 全体で括弧積は線型リー代数の場合と同様に四元数の四則演算で $[q, q'] = qq'-q'q$ と書ける.  

$\mathbb{H}^\times$ の指数写像は四元数の指数関数に一致することが分かっており, 三つの虚数単位を $\mathbb{i}_1, \mathbb{i}_2, \mathbb{i}_3$ と書くと,  

$$ 
\begin{gather*} 
\exp{(\kappa)} = \exp{(\kappa_0)}\left(\cos{|\mathrm{Im}(\kappa)|}+\frac{\mathrm{Im}(\kappa)}{|\mathrm{Im}(\kappa)|}\sin{|\mathrm{Im}(\kappa)|}\right), \\\\ 
\kappa := \kappa_0+\kappa_1\mathbb{i}_1+\kappa_2\mathbb{i}_2+\kappa_3\mathbb{i}_3 \in \mathbb{H}, \quad \kappa_0, \kappa_1, \kappa_2, \kappa_3 \in \mathbb{R}, \\\\ 
\mathrm{Im}(\kappa) := \kappa_1\mathbb{i}_1+\kappa_2\mathbb{i}_2+\kappa_3\mathbb{i}_3, \\\\ 
\end{gather*} 
$$

という公式も知られていて, $SO(3)$ の場合と比べて初等関数と四則演算のみで済むので計算コストが抑えられることが分かるだろう.  
これにより測地線は $c(\tau) := \exp{(\tau\kappa)}$ で得られ, $\exp{(0)}$ と $\exp{(\kappa)}$ の補間式として書き直すと,  

$$ 
\begin{align*} 
c(\tau) & = \exp{(\tau \kappa)} = a_0\exp{(0)}+a_1\exp{(\kappa)}, \\\\ 
a_0 & = \exp{(\tau\kappa_0)}\frac{\sin{(1-\tau)|\mathrm{Im}(\kappa)|}}{\sin{|\mathrm{Im}(\kappa)|}}, \\\\ 
a_1 & = \exp{((\tau-1)\kappa_0)}\frac{\sin{\tau|\mathrm{Im}(\kappa)|}}{\sin{|\mathrm{Im}(\kappa)|}}, \\\\ 
\end{align*} 
$$

という後述の球面線型補間として知られた式によく似たものが得られる.  

#### 四元数 (クォータニオン) から $SO(3)$ への準同型写像

クォータニオンから回転行列への変換公式を $|q| \neq 1$ を踏まえて変形した,  

$$ 
\begin{gather*} 
P(q) := \frac{1}{|q|^2}\begin{bmatrix} q_0^2+q_1^2-q_2^2-q_3^2 & 2q_0q_3+2q_1q_2 & -2q_0q_2+2q_1q_3 \\\\ -2q_0q_3+2q_1q_2 & q_0^2-q_1^2+q_2^2-q_3^2 & 2q_0q_1+2q_2q_3 \\\\ 2q_0q_2+2q_1q_3 & -2q_0q_1+2q_2q_3 & q_0^2-q_1^2-q_2^2+q_3^2 \\\\ \end{bmatrix}, \\\\ 
q = q_0+q_1\mathbb{i}_1+q_2\mathbb{i}_2+q_3\mathbb{i}_3 \in \mathbb{H}^\times, \\\\
\end{gather*} 
$$

という写像は, $\mathbb{H}^\times$ から $SO(3)$ への全射な準同型写像になっており, [第一回](https://qiita.com/ymsk_CM/items/978594affaff1762cf43)の言葉を使えば全射なパラメータ付けである.  

この写像の微分, つまりリー代数の準同型写像は,  

$$ 
\begin{gather*}
\delta_P: \mathbb{H} \ni \kappa \mapsto 2\begin{bmatrix} 0 & \kappa_3 & -\kappa_2 \\\\ -\kappa_3 & 0 & \kappa_1 \\\\ \kappa_2 & -\kappa_1 & 0 \end{bmatrix} \in \mathfrak{so}(3), \\\\ 
\kappa = \kappa_0+\kappa_1\mathbb{i}_1+\kappa_2\mathbb{i}_2+\kappa_3\mathbb{i}_3, \\\\ 
\end{gather*} 
$$

で得られる.  
これを $SO(3)$ の指数写像と組み合わせると, $\delta_P(\kappa)$ の固有値が $0, \pm2|\mathrm{Im}(\kappa)|\mathbb{i}$ となることから,  

$$ 
\begin{align*} 
P(\exp{(\kappa)}) & = \exp{(\delta_P(\kappa))} \\\\ 
& = U^{-1}\begin{bmatrix} 1 & 0 & 0 \\\\ 0 & \exp{(2|\mathrm{Im}(\kappa)|\mathbb{i})} & 0 \\\\ 0 & 0 & \exp{(-2|\mathrm{Im}(\kappa)|\mathbb{i})}) \end{bmatrix}U, \\\\ 
\end{align*} 
$$

となる.  
この時, $P(\exp{(\kappa)})$ の固有値 $1$ に対応する固有ベクトルは $[\kappa_1, \kappa_2, \kappa_3]^t$ であり, 四元数 $\exp{(\kappa)}$ は $[\kappa_1, \kappa_2, \kappa_3]^t$ を回転軸として $2|\mathrm{Im}(\kappa)|$ だけ回転させる回転行列になり ([この記事](https://qiita.com/ymsk_CM/items/f1b5d8c8557895c4faee)等も参照), 四元数としての各成分の幾何的な意味付けが得られる.  
以上の議論に現れる角度 $2|\mathrm{Im}(\kappa)|$ の係数 $2$ が, クォータニオンを回転軸と回転角で書いた時に現れる角度の係数 $\frac{1}{2}$ の論拠である[^coefficient].  

[^coefficient]: 単なる線型写像の場合と異なり, リー代数の準同型には括弧積の保存が必要になるためこの係数は固定である.  

#### 単位クォータニオン

この $\mathbb{H}^\times$ から $SO(3)$ への準同型写像はパラメータ付けとして全射だが, $SO(3)$ が $3$ 次元多様体であるのに対して $\mathbb{H}^\times$ は $4$ 次元多様体であるため冗長な写像になっている.  
実際, リー代数の準同型写像を振り返ると,  

$$ 
\delta_P: \mathbb{H} \ni \kappa \mapsto 2\begin{bmatrix} 0 & \kappa_3 & -\kappa_2 \\\\ -\kappa_3 & 0 & \kappa_1 \\\\ \kappa_2 & -\kappa_1 & 0 \end{bmatrix} \in \mathfrak{so}(3), 
$$

と, 四元数の実部 $\kappa_0$ を使っていないのでこれが冗長なパラメータになっている.  

実は $\mathbb{H}$ のうち実部が $0$ である「純虚数」からなる空間はリー代数であり, 対応するリー群は絶対値が $1$ の正規化された四元数からなる集合になっていて, これが通常の議論で現れる **(単位) クォータニオン** (の集合) ということになる[^quaternion].  
これを $\mathbb{H}_1 := \\{q \in \mathbb{H} \ \vert \ |q| = 1\\}$ と書くと, 前述の $P(q)$ は $\mathbb{H}_1$ から $SO(3)$ への準同型写像にもなって, 特に常に $|q| = 1$ となるため通常のクォータニオンから回転行列への変換公式に一致する.  
指数写像についても前式に $\kappa_0 = 0$ を代入すればよく, 補間の式は,  

[^quaternion]: ここでは $\mathbb{H}_1 \sim SU(2)$ が $SO(3)$ の普遍被覆群であるという性質を必要としていないことに注意. 被覆群であることは同次元の全射準同型写像が存在するための必要条件だが, クォータニオンの計算面の利便性は被覆性とは独立している (はずである).  

$$ 
\begin{gather*} 
c(\tau) = \exp{(\tau \kappa)} = a_0\exp{(0)}+a_1\exp{(\kappa)}, \\\\ 
a_0 = \frac{\sin{((1-\tau)|\mathrm{Im}(\kappa)|)}}{\sin{|\mathrm{Im}(\kappa)|}}, \quad a_1 = \frac{\sin{|\mathrm{Im}(\tau \kappa)|}}{\sin{|\mathrm{Im}(\kappa)|}}, \\\\ 
\end{gather*} 
$$

となってこれを ($q_0 = \exp{(0)}$ と $q_1 = \exp{(\kappa)}$ の)**球面線型補間**と呼ぶ.  

#### 双対四元数 (デュアルクォータニオン)

以上のクォータニオンと同様のリー群を $SE(3)$ に対して与えたものが**双対四元数 (デュアルクォータニオン)** である.  

双対四元数とは $\mathbb{H}$ にさらに $\mathbb{e}$ という単位を加えて, 虚数単位が $\mathbb{i}^2 = -1$ を満たすところ $\mathbb{e}^2 = 0$ と定めたものを指す[^imaginaryunit].  
これを $\mathbb{H}[\mathbb{e}]$ と書くと $\mathbb{H}$ と同じくリー代数となり,  

[^imaginaryunit]: この $\mathbb{e}$ も虚数単位と呼ばれて紛らわしいのでここでは名付けない.  

$$ 
\begin{gather*} 
\delta(\kappa+\zeta\mathbb{e}) := \begin{bmatrix} \delta_P(\kappa) & \begin{matrix} \zeta_1 \\\\ \zeta_2 \\\\ \zeta_3 \end{matrix} \\\\ 0 & 0 \end{bmatrix}, \\\\ 
\kappa = \kappa_0+\kappa_1\mathbb{i}_1+\kappa_2\mathbb{i}_2+\kappa_3\mathbb{i}_3, \ \zeta = \zeta_0+\zeta_1\mathbb{i}_1+\zeta_2\mathbb{i}_2+\zeta_3\mathbb{i}_3 \in \mathbb{H}, \\\\ 
\end{gather*} 
$$

は $\mathbb{H}[\mathbb{e}]$ から $\mathfrak{se}(3)$ へのリー代数の準同型写像となる[^dualquaternion].  
対応するリー群は $\mathbb{H}^\times\times\mathbb{H}$ ($\mathbb{H}^\times$ と $\mathbb{H}$ の要素対の集合) で, その要素を $q\boxtimes u$ ($q \in \mathbb{H}^\times, u \in \mathbb{H}$) のように書いた時,  

[^dualquaternion]: 通常のデュアルクォータニオンは計算の簡単のため異なる構成法を取っていて, 以降の議論が少し変わる. 今回はそこまで手が回らなかったため扱わないことにした. ここの準同型を上手く構成すると, $\mathbb{H}[\mathbb{e}]$ の部分リー代数の指数写像の像において $q$ と $u$ が直交するようにできて $q\boxtimes u$ も双対四元数として記述できるようになるらしい.  

$$ 
q\boxtimes u\cdot q'\boxtimes u'  := (qq')\boxtimes(qu'q^{-1}+u), 
$$

という特殊な積を考えたものになり,  

$$ 
\mathbb{H}^\times\times\mathbb{H} \ni q\boxtimes u \mapsto \begin{bmatrix} P(q) & \begin{matrix} u_1 \\\\ u_2 \\\\ u_3 \end{matrix} \\\\ 0 & 1 \end{bmatrix} \in SE(3), 
$$

で $SE(3)$ への準同型写像が与えられる.  
指数写像は,  

$$ 
\exp{(\kappa+\zeta\mathbb{e})} = \exp{(\kappa)}\boxtimes(\epsilon(\kappa)\zeta\epsilon(-\kappa)), 
$$

となる.  

前節と同じくこのように構成した双対四元数も $SE(3)$ に対して冗長であり, $\mathbb{H}[\mathbb{e}]$ の成分が共に純虚数である要素からなるリー代数を考えることでパラメータを削減することができる.  

## 参考資料

より具体的計算を伴う解説はこちらから.  

ロボット技術者向け 速習(1) リー群・リー代数を使った3次元回転表現 - Qiita

https://qiita.com/scomup/items/fa9aed8870585e865117

CV・CG・ロボティクスのためのリー群・リー代数入門: (0) 目次 - swk's log はてな別館

https://swkagami.hatenablog.com/entry/lie_00toc

リー群の理論はほぼこれを参照しているが, $SE(d)$ については文献がほとんど見つからなかったためいろいろな文献を漁って記事に落とし込んでいる.  

リー群と表現論 / 小林 俊行, 大島 利雄 - 岩波書店

https://www.iwanami.co.jp/book/b265794.html

クォータニオンと特にデュアルクォータニオンの技術的な話はこちらから.  

ゲームプログラマのための数学の歩き方 - クォータニオンとリー群編

http://www.jp.square-enix.com/tech/library/pdf/CEDEC2021_SQEX_IMI_Quaternion_20210827_public.pdf

ゲームプログラマのための数学の歩き方 – デュアルクォータニオン編

http://www.jp.square-enix.com/tech/library/pdf/CEDEC2021_SQEX_IMI_DualQuaternion_20210826_public.pdf