Lie Group Foundations

637 阅读6分钟

作者: 边城量子 ( shihezichen@live.cn )

Lie Group Foundations

简介

本文介绍了李群、李代数的基本概念、映射关系、伴随、Jacobian等重要的性质和公式,作为对李群、李代数的相关信息的总结。

基本概念

  • 李群 M\mathcal M 是一个群同时也是一个光滑的(可微的)的流形, 定义其上的群乘法和求逆运算都是可微的;

  • 李代数 m\mathfrak mM\mathcal M 的在单位元 1\mathbf 1 处的正切空间;

  • 最常见的李群就是 SO(n)SO(n)SE(n)SE(n)

映射关系

  •  :Rmm\ ^\wedge: \mathbb R^m \longrightarrow \mathfrak m : 把正切向量 τ\boldsymbol \tau 映射到李代数中的元素 τ\boldsymbol \tau^\wedge , 即: 向量\longrightarrow反对称矩阵

  •  :mRm\ ^\vee: \mathfrak m \longrightarrow \mathbb R^m :  \ ^\wedge 的逆运算, 把李代数中的元素 τ\boldsymbol \tau^\wedge 映射到正切向量 τ\boldsymbol \tau, 即: 反对称矩阵\longrightarrow 向量

  • exp(τ):RnM \exp (\boldsymbol \tau^\wedge): \mathbb R^n \longrightarrow \mathcal M : 把正切向量 τ\boldsymbol \tau 映射到李代数后, 然后再映射为李群中的元素 X\mathcal X

  • log(X):MRm\log(\mathcal X)^\vee: \mathcal M \longrightarrow \mathbb R^m : exp\exp 的逆运算, 把李群中的元素 X\mathcal X 映射到李代数中的元素后, 再映射为正切向量 τ\boldsymbol \tau 其中 Rm\mathbb R^m 代表m维向量空间, m\mathfrak m 代表李代数,M\mathcal M 代表李群

tangent_mapping.png

伴随

  • 伴随的本质

    相比视觉SLAM十四讲, 文献 A micro Lie theory for state estimation in robotics 中的伴随定义更能体现伴随的本质。

    • 对李代数的伴随变换

      如下定义所示, 假设已知李群元素 TT, 则它的对其李代数的伴随变换被定义为如下形式(即从李代数到李代数的线性映射):

      Ad(T)mm;ξTAd(T)ξTTξTT1Ad(T): \mathfrak m \longrightarrow \mathfrak m; \quad \boldsymbol \xi_{T}^\wedge \longmapsto Ad(T) \boldsymbol \xi_{T}^\wedge \triangleq T \boldsymbol \xi_{T}^\wedge T^{-1}

      从上述定义可以看出,上述伴随含义是: 一个非李群幺元 ϵ\boldsymbol \epsilon 处的李代数元素 ξT\boldsymbol \xi^\wedge_T , 被映射为李群幺元对应的李代数元素 TξTT1T \boldsymbol \xi_{T}^\wedge T^{-1}

      我们继续。

    • 对切向量的伴随变换

      此外, 我们还知道李代数元素可以通过  \ ^\vee 运算符得到正切向量。

      因此, 在上述变换两边都施加  \ ^\vee 操作符,则可以得到一个从正切向量到正切向量的变换,重新定义为 Ad(T)\mathbf {Ad}(T)(由于是对向量的变换,此处应为矩阵), 如下:

      Ad(T):RmRm;ξTAd(T)ξT=(TξTT1)\mathbf {Ad}(T): \mathbb R^m \longrightarrow \mathbb R^m;\quad \boldsymbol \xi_{T} \longmapsto \mathbf {Ad}(T) \boldsymbol \xi_{T} = (T \boldsymbol \xi_{T}^\wedge T^{-1} )^\vee

      此时,已经比较接近其本质了。

      这个伴随变换的含义就是: 一个不是李群幺元处的正切空间里的向量 ξT\boldsymbol \xi_{T}, 被映射到了李群幺元处的正切空间里的向量 (TξTT1)(T \boldsymbol \xi^\wedge_{T} T^{-1} )^\vee

      这个对向量进行变换作用的矩阵 Ad(T)\mathbf {Ad}(T) ,则被称为 TT 的伴随变换矩阵

    • 等价

      上面的式子和视觉SLAM十四讲中的式子是等价的, 如下:对上面的式子两边先取 ^\wedge 操作, 再取 exp()\exp(), 即可变为形式一样。:

      Ad(T)ξT=(TξTT1) exp(Ad(T)ξT)=exp(TξTT1)=Texp(ξT)T1\begin{aligned} \mathbf {Ad}(T) \boldsymbol \xi_{T} &= (T \boldsymbol \xi_{T}^\wedge T^{-1} )^\vee \\ \ \\ \exp ( \mathbf {Ad}(T) \boldsymbol \xi^\wedge_{T} ) &= \exp( T \boldsymbol \xi_{T}^\wedge T^{-1} ) = T \exp( \boldsymbol \xi^\wedge_T) T^{-1} \end{aligned}
  • 伴随的性质

    Ad(T1)=Ad1(T)\mathbf {Ad}(T^{-1}) = \mathbf {Ad}^{-1}(T)

    Ad(T1T2)=Ad(T1)Ad(T2)\mathbf {Ad}(T_1 T_2) = \mathbf {Ad}(T_1) \mathbf {Ad}(T_2)

    • 伴随的逆变换,根据其其定义就是把李群幺元处正切空间里的向量,映射到李群其他元素处的正切空间里的向量
    • 上面的式子,等号左边往往比右边计算起来更快。
    • 对李代数做伴随变换和对切向量做伴随变换是等价的,但往往后者更容易。
  • 结语 tangent_space.png

    在李群中有很多元素,每个元素都对应有正切空间,这些正切空间中的向量,可以通过伴随这种线性变换,被映射到李群幺元处的正切空间中。

  • 参考阅读

    这里的伴随是指李群, 并不是Eigen库中的伴随adjoint()的含义, 那个伴随是共轭+转置的联合作用的意思: 实数域中, 实数的共轭是自己, 所以只有转置在起作用.

    关于李群伴随这部分进一步信息,可阅读文献: A micro Lie theory for state estimation in robotics

李群、李代数表示总览

lie group summary.png

SO(3)专题

  • 切空间向量与李代数

    如切空间向量用笛卡尔坐标系表示: x=[x1,x2,x3]TR3\boldsymbol x = [x_1, x_2, x_3]^T \in \mathbb R^3, 它对应的反对称矩阵(即李代数):

    X=x=(0x3x2x30x1x2x10)X = \boldsymbol x^\wedge = \left ( \begin{matrix} 0 & -x_3 & x_2 \\ x_3 & 0 & -x_1 \\ -x_2 & x_1 & 0 \end{matrix} \right )

    反之, 已知反对称(李代数)求切空间向量:

    X=x=[x1,x2,x3]T X^\vee = \boldsymbol x = [x_1, x_2, x_3]^T

    性质: Xy=x×y,yR3X\boldsymbol y = \boldsymbol x \times \boldsymbol y, \quad \forall \boldsymbol y \in \mathbb R^3

  • 李群与李代数关系

    切空间向量还可以用旋转向量方式描述:x=θn\boldsymbol x=\theta \boldsymbol n , 其中 n\boldsymbol n 单位向量,则 x\boldsymbol x 对应的李群 RRq\boldsymbol q 为:

    R(x)=q(x)=Exp(x)=exp(x)=exp((θn)) =kθkk!(n)k=I+sinxxX+1cosxx2X2=I+nsinθ+(n)2(1cosθ)x=x12+x22+x32=θ\begin{aligned} \displaystyle R(\boldsymbol x) = \boldsymbol q(\boldsymbol x)= \mathrm {Exp}(\boldsymbol x) &= \exp(\boldsymbol x^\wedge) = \exp( (\theta \boldsymbol n)^\wedge) \ = \sum_k \dfrac{\theta^k}{k!} (\boldsymbol n^\wedge)^k \\\\ &= \mathbf I + \dfrac{ \sin \Vert \boldsymbol x \Vert}{ \Vert \boldsymbol x \Vert } X + \dfrac{ 1 - \cos \Vert \boldsymbol x \Vert }{ \Vert \boldsymbol x \Vert^2 } X^2 \\\\ &= \mathbf I + \boldsymbol n^\wedge \sin \theta + (\boldsymbol n^\wedge)^2 (1-\cos \theta) \\\\ \Vert \boldsymbol x \Vert &= \sqrt {x_1^2 + x_2^2 + x_3^2 } = \theta \end{aligned}

    其中的 R(x),q(x)R(\boldsymbol x),\boldsymbol q(\boldsymbol x) 代表李群元素(旋转), 四元数 q(x)cos(θ/2)+nsin(θ/2)\boldsymbol q(\boldsymbol x) \triangleq \cos (\theta/2) + \boldsymbol n \sin(\theta/2)

    反之, 已知旋转 RRq=(ω,v)\boldsymbol q = (\omega , \mathbf v), 求李代数 XX (反对称矩阵)和切空间向量 x\boldsymbol x ( 同时考虑旋转向量表示形式):

    X=log(R)=log(q) x=θn=X=Log(R)=(log(R))2varctan(v,ω)vR3θ=arccostrace(R)12Rn=n\begin{aligned} X &= \mathrm {log} (R) = \mathrm {log} ( \boldsymbol q)\\ \ \\ \boldsymbol x &= \theta \boldsymbol n = X^\vee = \mathrm {Log} (R) = ( \mathrm {log} (R))^\vee \triangleq 2 \mathbf v \dfrac{ \arctan (\Vert \mathbf v \Vert, \omega )}{\Vert \mathbf v \Vert} \in \mathbb R^3 \\ \theta &= \arccos \dfrac{trace(R) - 1 }{2} \\ R \boldsymbol n &= \boldsymbol n \end{aligned}
  • 伴随性质
    伴随矩阵: Ad(R)=Rad(X)=XAd(R) = R,\quad ad(X) = X

    推导过程: Ad(R)ϕ=(RϕRT)=((Rϕ))=RϕAd(R) \boldsymbol \phi = ( R \boldsymbol \phi^\wedge R^T)^\vee = ( (R\boldsymbol \phi)^\wedge )^\vee = R \boldsymbol \phi

  • 旋转轴、旋转角

    性质: R(x)x=xR(\boldsymbol x) \boldsymbol x = \boldsymbol x

    从代数计算, RRx\boldsymbol x 相乘后, 由于 X×x=0X \times \boldsymbol x = 0 , 所以只有 I\boldsymbol I 保留下来了。
    从几何角度理解, 如果把 x\boldsymbol x 理解为旋转向量 θn\theta \boldsymbol n, 则旋转轴在经过旋转后不变。

    性质: 若李代数(旋转向量) x\boldsymbol x 已知, 则旋转角度为模长: θ(R)=x\theta(R) = \Vert \boldsymbol x \Vert

    性质: 若旋转矩阵 RR 已知, 则旋转角度如下: θ(R)=arccos(trace(R)12)\theta(R) = \arccos(\dfrac{ \mathrm {trace}(R) - 1}{2})

  • BCH Jacobians:

    Stochastic Models, Information Theory, and Lie Groups, Vol. 2 中定义(P40)。

    假设已知代表旋转李代数向量 x=[x1,x2,x3]T=θn\boldsymbol x = [x_1, x_2, x_3]^T = \theta \boldsymbol n 情况下 (此时 θ=x\theta = \Vert \boldsymbol x \Vert ) :

    Jacobians for Exponential Coordinates of SO(3): (即BCH公式展开时用到的Jacobian)

    Jl(x)=I+1cosθθ2x+θsinθθ3(x)2(10.86)J_l(\boldsymbol x) = \boldsymbol I + \dfrac{1 - \cos \theta}{ \theta^2} \boldsymbol x^\wedge + \dfrac{ \theta - \sin \theta}{\theta^3} \boldsymbol (\boldsymbol x^\wedge)^2 \tag{10.86}
    Jl1(x)=I12x+(1θ21+cosθ2θsinθ)(x)2(10.86)J_l^{-1}(\boldsymbol x) = \boldsymbol I - \dfrac{1}{2} \boldsymbol x^\wedge + \left( \dfrac{1}{\theta^2} - \dfrac{ 1 + \cos \theta }{ 2 \theta \sin \theta } \right ) ( \boldsymbol x^\wedge )^2 \tag{10.86}
    Jr(x)=I1cosθθ2x+θsinθθ3(x)2(10.86)J_r(\boldsymbol x) = \boldsymbol I - \dfrac{1 - \cos \theta}{\theta^2} \boldsymbol x^\wedge + \dfrac{\theta - \sin \theta }{\theta^3} \boldsymbol (\boldsymbol x^\wedge)^2 \tag{10.86}
    Jr1(x)=I+12x+(1θ21+cosθ2θsinθ)(x)2(10.86)J_r^{-1}(\boldsymbol x) = \boldsymbol I + \dfrac{1}{2} \boldsymbol x^\wedge + \left( \dfrac{1}{\theta^2} - \dfrac{ 1 + \cos \theta }{ 2 \theta \sin \theta } \right ) ( \boldsymbol x^\wedge )^2 \tag{10.86}

    性质:

    Jl=JrTJl1=JrTJl(x)=Jr(x)J_l = J_r^{T} \\\\ J_l^{-1} = J_r^{-T} \\\\ J_l(\boldsymbol x) = J_r(- \boldsymbol x)
    det(Jl)=det(Jr)=2(1cosx)x2\vert \det(J_l) \vert = \vert \det(J_r) \vert = \dfrac{ 2 (1-\cos \Vert \boldsymbol x \Vert )} {\Vert \boldsymbol x \Vert^2}

SE(3)专题

  • 李代数与反对称

    李代数切空间向量用笛卡尔坐标系表示:

    ρ=[x1,x2,x3]T\boldsymbol \rho = [x_1, x_2, x_3]^T , ϕ=[x4,x5,x6]T\boldsymbol \phi =[x_4, x_5, x_6]^T , ξ=(ρ,ϕ)TR6\boldsymbol \xi = (\boldsymbol \rho , \boldsymbol \phi)^T \in \mathbb R^6, 它的反对称矩阵为:

    X=ξ=(ρϕ)(0x3x2x4x30x1x5x2x10x60000)=(ϕρ00)\begin{aligned} X = \boldsymbol \xi^\wedge = \left ( \begin{matrix} \boldsymbol \rho \\ \boldsymbol \phi \end{matrix} \right ) ^\wedge &\triangleq \left ( \begin{matrix} 0 & -x_3 & x_2 & x_4 \\ x_3 & 0 & -x_1 & x_5 \\ -x_2 & x_1 & 0 & x_6 \\ 0 & 0 & 0 & 0 \end{matrix} \right ) \\ &= \left ( \begin{matrix} \boldsymbol \phi^\wedge & \boldsymbol \rho \\ \mathbf 0 & 0 \end{matrix} \right ) \end{aligned}

    则有:

    X=ξ=(ρϕ)=[x1,x2,x3,x4,x5,x6]TX^\vee = \boldsymbol \xi = \left ( \begin{matrix} \boldsymbol \rho \\ \boldsymbol \phi \end{matrix} \right ) = [x_1, x_2, x_3, x_4, x_5, x_6]^T
  • 李群与李代数关系

    由李代数表示李群:

    T(ξ)=Exp(ξ)=exp(ξ)=(exp(ϕ)Jlρ0T1) =(Rt0T1) T1(ξ)=(RTRTt0T1)\begin{aligned} T(\boldsymbol \xi) = \mathrm{Exp}(\boldsymbol \xi) = \exp (\boldsymbol \xi^\wedge) &= \left ( \begin{matrix} \exp(\boldsymbol \phi^\wedge) & J_l \boldsymbol \rho \\ \mathbf 0^T & 1 \end{matrix} \right ) \\ \ \\ &= \left ( \begin{matrix} R & \boldsymbol t \\ \mathbf 0^T & 1 \end{matrix} \right ) \\ \ \\ T^{-1}(\boldsymbol \xi) &= \left ( \begin{matrix} R^T & -R^T \boldsymbol t\\ \mathbf 0^T & 1 \end{matrix} \right ) \end{aligned}

    其中 RR 代表由 exp(ϕ)\exp (\boldsymbol \phi^\wedge ) 生成的SO3旋转矩阵, JlJ_l 即为 RR 的雅可比, t=Jlρ\boldsymbol t = J_l \boldsymbol \rho 代表平移。

    反之,在李群T已知的情况下(即旋转R=exp(ϕ)R = \exp(\boldsymbol \phi^\wedge)、平移t=Jlρ\boldsymbol t = J_l \boldsymbol \rho 已知), 则可以求反对称矩阵和李代数切向量ξ\boldsymbol \xi :

    ϕ=LogRρ=Jl1t=Jl1((LogR))t X=logT=(ϕρ0T0)=(LogRJl1((LogR))t0T0) ξ=X=(ρϕ) =(Jl1((LogR))t (logR))\begin{aligned} \boldsymbol \phi^\wedge &= \mathrm {Log} R, \boldsymbol \rho = J_l^{-1} \boldsymbol t = J_l^{-1}( (\mathrm {Log } R)^\vee ) \boldsymbol t \\ \ \\ \therefore X = \log T &= \left ( \begin{matrix} \boldsymbol \phi^\wedge & \boldsymbol \rho \\ \mathbf 0^T & 0 \end{matrix} \right ) = \left ( \begin{matrix} \mathrm {Log} R & J_l^{-1}((\mathrm {Log} R)^\vee) \boldsymbol t \\ \mathbf 0^T & 0 \end{matrix} \right ) \\ \ \\ \boldsymbol \xi = X^\vee &= \left ( \begin{matrix} \boldsymbol \rho \\ \boldsymbol \phi \end{matrix} \right ) \\ \ \\ &= \left ( \begin{matrix} J_l^{-1}((\mathrm {Log} R)^\vee) \boldsymbol t \\ \ \\ (\log R)^\vee \end{matrix} \right ) \end{aligned}
  • 伴随

    伴随矩阵: 根据伴随的定义, 推导如下

    Ad(T)ξ=(TξT1)=(TϕTTRϕTTt+Rρ00)=([Tϕ]tRϕ+Rρ00)=(tRϕ+RρRϕ)=(RtR0R)(ρϕ) Ad(T)=(RtR0R)R6×6\begin{aligned} Ad(T) \boldsymbol \xi &= ( T \boldsymbol \xi^\wedge T^{-1} )^\vee \\ &= \left ( \begin{matrix} T \phi^\wedge T^T & -R \phi^\wedge T^T t + R \rho \\ 0 & 0 \end{matrix} \right )^\vee \\ &= \left ( \begin{matrix} [T \phi]^\wedge & t^\wedge R\phi + R \rho \\ 0 & 0 \end{matrix} \right )^\vee \\ &= \left ( \begin{matrix} t^\wedge R \phi + R\rho \\ R \phi \end{matrix} \right ) \\ &= \left ( \begin{matrix} R & t^\wedge R \\ 0 & R \end{matrix} \right ) \left ( \begin{matrix} \rho \\ \phi \end{matrix} \right ) \\ \ \\ \therefore Ad(T) &= \left ( \begin{matrix} R & \boldsymbol t^\wedge R \\ \mathbf 0 & R \end{matrix} \right ) \in \mathbb R^{6 \times 6} \end{aligned}

    过程中使用到了如下性质: [Rϕ]=RϕRT[R\phi]^\wedge = R \phi^\wedge R^Tab=baa^\wedge b = - b^\wedge a .

  • Jacobians:

    Stochastic Models, Information Theory, and Lie Groups, Vol. 2 中定义(P44)。

    Jacobians in Exponential Coordinates of SE(3):(即BCH公式展开时用到的Jacobian)

    Jr(x)=(Jr(ϕ)eXJl(ϕ)ρϕT 0Jr(ϕ))J_r(\boldsymbol x) = \left ( \begin{matrix} J_r(\boldsymbol \phi ) & e^{-X} \dfrac{\partial J_l(\boldsymbol \phi ) \boldsymbol \rho }{\partial \boldsymbol \phi^T} \\ \ \\ \mathbf 0 & J_r(\boldsymbol \phi) \end{matrix} \right )

    其中的 Jr(pϕJ_r(\boldsymbol p\phi 是SO(3)的雅可比,

    行列式性质: Jr(x)=Jr(ω)2\vert J_r(\boldsymbol x) \vert = \vert J_r(\boldsymbol \omega) \vert^2
    因为上式 Jr(x)J_r(\boldsymbol x) 矩阵左下角为0, 因此行列式就是对角线相乘。

    state estimation for robotics 的公式 (7.85)处也给出了类似的公式:

    Jr(ξ)=n=01(n+1)!(ξ)n=01Tαdα=[JrQr0Jr]J(ξ)=n=01(n+1)!(ξ)n=01Tαdα=[JQ0J]\begin{aligned} &\mathcal{J}_{r}(\boldsymbol{\xi})=\sum_{n=0}^{\infty} \frac{1}{(n+1) !}\left(-\boldsymbol{\xi}^{\curlywedge}\right)^{n}=\int_{0}^{1} \mathcal{T}^{-\alpha} d \alpha=\left[\begin{array}{cc} \mathbf{J}_{r} & \mathbf{Q}_{r} \\ \mathbf{0} & \mathbf{J}_{r} \end{array}\right]\\ &\mathcal{J}_{\ell}(\boldsymbol{\xi})=\sum_{n=0}^{\infty} \frac{1}{(n+1) !}\left(\boldsymbol{\xi}^{\curlywedge}\right)^{n}=\int_{0}^{1} \mathcal{T}^{\alpha} d \alpha=\left[\begin{array}{cc} \mathbf{J}_{\ell} & \mathbf{Q}_{\ell} \\ \mathbf{0} & \mathbf{J}_{\ell} \end{array}\right] \end{aligned}

    其中

    Q(ξ)=n=0m=01(n+m+2)!(ϕ)nρ(ϕ)m=12ρ+(ϕsinϕϕ3)(ϕρ+ρϕ+ϕρϕ)+(ϕ2+2cosϕ22ϕ4)(ϕϕρ+ρϕϕ3ϕρϕ)+(2ϕ3sinϕ+ϕcosϕ2ϕ5)(ϕρϕϕ+ϕϕρϕ),Qr(ξ)=Q(ξ)=CQ(ξ)+(Jρ)CJ\begin{aligned} &\mathbf{Q}_{\ell}(\boldsymbol{\xi})=\sum_{n=0}^{\infty} \sum_{m=0}^{\infty} \frac{1}{(n+m+2) !}\left(\phi^{\wedge}\right)^{n} \boldsymbol{\rho}^{\wedge}\left(\phi^{\wedge}\right)^{m}\\ &=\frac{1}{2} \boldsymbol{\rho}^{\wedge}+\left(\frac{\phi-\sin \phi}{\phi^{3}}\right)\left(\phi^{\wedge} \boldsymbol{\rho}^{\wedge}+\boldsymbol{\rho}^{\wedge} \boldsymbol{\phi}^{\wedge}+\boldsymbol{\phi}^{\wedge} \boldsymbol{\rho}^{\wedge} \boldsymbol{\phi}^{\wedge}\right)\\ &+\left(\frac{\phi^{2}+2 \cos \phi-2}{2 \phi^{4}}\right)\left(\phi^{\wedge} \phi^{\wedge} \boldsymbol{\rho}^{\wedge}+\boldsymbol{\rho}^{\wedge} \phi^{\wedge} \phi^{\wedge}-3 \phi^{\wedge} \boldsymbol{\rho}^{\wedge} \boldsymbol{\phi}^{\wedge}\right)\\ &+\left(\frac{2 \phi-3 \sin \phi+\phi \cos \phi}{2 \phi^{5}}\right)\left(\phi^{\wedge} \boldsymbol{\rho}^{\wedge} \boldsymbol{\phi}^{\wedge} \boldsymbol{\phi}^{\wedge}+\phi^{\wedge} \boldsymbol{\phi}^{\wedge} \boldsymbol{\rho}^{\wedge} \boldsymbol{\phi}^{\wedge}\right),\\ &\mathbf{Q}_{r}(\boldsymbol{\xi})=\mathbf{Q}_{\ell}(-\boldsymbol{\xi})=\mathbf{C} \mathbf{Q}_{\ell}(\boldsymbol{\xi})+\left(\mathbf{J}_{\ell} \boldsymbol{\rho}\right)^{\wedge} \mathbf{C} \mathbf{J}_{\ell} \end{aligned}

李群微分

  • 李群导数定义:李代数求导 此种导数的定义,就是 视觉SLAM十四讲 中提到的李代数求导。

假设 C=exp(ϕ)SO(3),vR3\boldsymbol C = \exp(\phi^\wedge) \in SO(3), \quad \mathbf v \in \mathbb R^3 , 则 (Cv)ϕ\dfrac{\partial (\boldsymbol C \mathbf v) }{ \partial \boldsymbol \phi } 为对于 ϕ=(ϕ1,ϕ2,ϕ3)\boldsymbol \phi=(\phi_1, \phi_2, \phi_3) 的导数。根据导数基本定义, 对某一个坐标系基 ei\boldsymbol e_i 的导数为:

(Cv)ei=limh0exp((ϕ+hei))vexp(ϕ)vh\dfrac{\partial (\boldsymbol C \mathbf v)}{ \partial \boldsymbol e_i} = \lim_{h \rightarrow 0} \dfrac{\exp( (\boldsymbol \phi + h \boldsymbol e_i)^\wedge) \mathbf v - \exp(\boldsymbol \phi^\wedge) \mathbf v }{ h }

使用 BCH 公式近似:

exp((ϕ+hei))exp((Jlhei))exp(ϕ)(I+h(Jlei))exp(ϕ)=(I+h(Jlei))C\exp((\boldsymbol \phi + h \boldsymbol e_i)^\wedge) \approx \exp((\mathbf J_l h \boldsymbol e_i)^\wedge) \exp(\boldsymbol \phi^\wedge) \approx (\boldsymbol I + h(\mathbf J_l \boldsymbol e_i)^\wedge) \exp (\boldsymbol \phi^\wedge) = (\boldsymbol I + h(\mathbf J_l \boldsymbol e_i)^\wedge) \boldsymbol C

根据上式代入到上式的导数定义,则导数为:

(Cv)ϕi=(Jlei)Cv=(Cv)Jlei=(exp(ϕ)v)Jlei\dfrac{\partial (\boldsymbol C \mathbf v) }{\partial \boldsymbol \phi_i} = (\mathbf J_l \boldsymbol e_i)^\wedge \mathbf C \mathbf v = (\mathbf C \mathbf v )^\wedge \mathbf J_l \boldsymbol e_i = (\exp(\boldsymbol \phi^\wedge) \mathbf v )^\wedge \mathbf J_l \boldsymbol e_i

扩展到整个坐标系

(Cv)ϕ=(Cv)Jl=(exp(ϕ)v)Jl\dfrac{\partial (\boldsymbol C \mathbf v) }{\partial \boldsymbol \phi} = (\mathbf C \mathbf v )^\wedge \mathbf J_l = (\exp(\boldsymbol \phi^\wedge) \mathbf v)^\wedge \mathbf J_l
  • 李群导数定义:左扰动

具体过程参见十四讲书上定义,直接写结论

(Cv)φ=(Cv)=(exp(ϕ)v)=(Rv)\dfrac{ \partial (\mathbf C \mathbf v)}{ \partial \boldsymbol \varphi} = -(\mathbf C \mathbf v)^\wedge = -(\exp(\boldsymbol \phi^\wedge) \mathbf v)^\wedge = - (\mathbf {Rv})^\wedge

e_i代表被求导的空间代表被求导的空间R^mi个空间基向量,如对笛卡尔三维坐标系下的个空间基向量, 如对笛卡尔三维坐标系下的\mathbf x$ 轴方向求导。

  • 对李群函数f(T)求导的右Jacobian

    先定义李群上特殊的加法和减法的运算:

    加法: TξTExp(ξ)MT \oplus \boldsymbol \xi \triangleq T \mathrm {Exp}(\boldsymbol \xi) \in \mathcal M , 这是对一个李群元素和切空间向量的“求和”, 结果仍然是一个李群元素

    减法: T1T2Log(T21T1)=ξT_1 \ominus T_2 \triangleq \mathrm {Log}( T_2^{-1} T_1 ) =\boldsymbol \xi , 结果是一个切空间向量(在李群元素 T2T_2 对应的李代数切空间中)

    根据上面标准的求导形式,也可以定义对李群的求导。形式上看起来是这样的:

    f(T)Tlimξ0f(Tξ)f(T)ξ=limξ0Log(f(T)1f(TExp(ξ)))ξJTf(T)=Log(f(T)1f(TExp(ξ)))ξξ=0\begin{aligned} \dfrac{\partial f(T)}{\partial T} &\triangleq \lim_{\boldsymbol \xi \rightarrow 0} \dfrac{f(T \oplus \boldsymbol \xi ) \ominus f(T) }{\boldsymbol \xi} \\ &= \lim_{\boldsymbol \xi \rightarrow 0} \dfrac{ \mathrm {Log}(f(T)^{-1} f(T \mathrm {Exp}(\boldsymbol \xi )) ) }{\boldsymbol \xi} \\\\ J^{f(T)}_T &= \left . \dfrac{ \partial \mathrm {Log}(f(T)^{-1} f(T \mathrm {Exp}(\boldsymbol \xi)) ) }{ \boldsymbol \xi} \right |_{\boldsymbol \xi = 0} \end{aligned}

    这被称为作用在f上的右 Jacoian。

    我们希望做的是针对李群 TTf(T)f(T) 求导,但最终我们得到的极限表达式却是在李群对应的李代数对应切空间上的向量变化求极限。 对李群元素 TT 做其对应切空间上的微小变量 ξ\boldsymbol \xi 的扰动。

    lie_pertubation.png

    举一个例子:

    JTT1=limξ0Log((T1)1(TExp(ξ))1)ξ=limξ0Log(TExp(ξ)T1)ξ=limξ0(T(ξ)T1)ξ=Ad(T)J_T^{T^{-1}} = \lim_{\boldsymbol \xi \rightarrow 0} \dfrac{\mathrm {Log}( (T^{-1})^{-1} ( T \mathrm {Exp}(\boldsymbol \xi) )^{-1} ) }{\boldsymbol \xi} \\ = \lim_{\boldsymbol \xi \rightarrow 0} \dfrac{\mathrm{Log} ( T \mathrm{Exp}(-\boldsymbol \xi) T ^{-1} ) }{ \boldsymbol \xi} \\ = \lim_{\boldsymbol \xi \rightarrow 0} \dfrac{ (T(-\boldsymbol \xi^\wedge) T^{-1} )^\vee }{\boldsymbol \xi} \\ = - \mathrm {Ad}(T)

    附录: 相关文献

  • A micro Lie theory for state estimation robotics. 前半部分详细介绍了李群、李代数基本概念,以及伴随,同时对李群微分等均做了定义;

  • Stochastic Models, Information Theory, and Lie Groups, Vol. 2 ,第10章介绍了李群的概念和公式,(10.86)给出了SO(3)的雅可比,(10.95)给出了SE(3)的雅可比

  • State Estimation for Robotics, 第7章讲解李群矩阵。 中间的大横表有李群的各种近似计算公式。

  • quaternion kinematics for the error-state kalman filter, 四元数讲解