zoukankan      html  css  js  c++  java
  • 李群与李代数它们之间的联系

    李群是什么

    李群就是一个矩阵的集合,为何有了矩阵还要弄个矩阵集合呢?因为矩阵它只是一个数,而像实际应用中我可能需要一系列数去描述某个事件的变化。而李群就是用来描述旋转平移上的变化,物体的旋转平移是连续的所以李群它也是随时间变化连续的。某个时刻下李群它是一个矩阵,但是一段时间内它是无数个矩阵的集合。

    旋转矩阵和齐次变换矩阵都是李群。旋转矩阵一般叫做特殊正交群简写为SO(3),Special orthogonal Group,齐次变换矩阵一般叫做特殊欧几里得群SE(3),Special euclidean Group。之所以字前面加个特殊是因为他们的行列式等于1,正交群是指他们是正交矩阵,欧几里得是指的是欧几里得变换这种变换是刚体变换(不会改变物体、向量的大小)

    李代数又是什么

    由于李群它是矩阵,而矩阵的元素是关于角度和时间的函数。某个时刻角度增加了一点点,并不能通过矩阵直接加减某个增量。这使得求导有困难。然后科学家就想到一个办法,那就是我对它自变量直接进行加减某个小的增量不就可以实现导数了么?李群就像一个函数,而李代数就是这个函数的自变量。只不过李群这个函数比较特殊,它是一个矩阵。李代数这个自变量也很特殊它是一个向量。

    李群与李代数之间的关系

    我们在前面提到了旋转矩阵SO(3)和齐次变换矩阵SE(3)都是李群。那么他们对应的李代数是什么呢?
    答:旋转矩阵SO(3)对应的李代数是旋转向量如果不懂旋转向量和旋转矩阵可以看这篇文章),齐次变换矩阵的李代数是一个六维的向量组成这个向量的内容是平移量和旋转角度量。前面我们提到了李群就相当于一个函数,李代数就是相当于李群的自变量。那么这个自变量与函数之间的变换关系是什么呢?答:他们是指数变换关系

    数学家是怎么发现李群与李代数他们是指数关系?

    我们知道旋转矩阵是李群,旋转矩阵是正交矩阵。正交矩阵意味着RRT=IRR^T=I,由于李群是随时间变化的矩阵,所以我们把那个矩阵加个时间自变量,于是前面那个式子就变成了R(t)R(t)T=IR(t)R(t)^T=I。然后我们对这个式子进行求导,自变量是t。然后上面那个式子变成了R˙(t)R(t)T+R(t)R˙(t)T=0dot R(t)R(t)^T + R(t)dot R(t)^T=0。然后有R˙(t)R(t)T=R(t)R˙(t)T=[R˙(t)R(t)T]Tdot R(t)R(t)^T = -R(t)dot R(t)^T = -[dot R(t)R(t)^T]^T,把R˙(t)R(t)Tdot R(t)R(t)^T看做一个整体记作H=R˙(t)R(t)TH=-dot R(t)R(t)^T。那么式子可以写作H=HTH=-H ^ T可以看到其实H他是反对称矩阵。我们知道反对称变换是可以产生反对称矩阵的我假设某个向量ϕphi经过反对称变换后是HH。用公式表示就是ϕ=Hphi ^wedge = H,其中ϕphi ^ wedge表示反对称变换,它可以把一个向量变成一个反对称矩阵。

    回到R˙(t)R(t)T=R(t)R˙(t)T=[R˙(t)R(t)T]Tdot R(t)R(t)^T = -R(t)dot R(t)^T = -[dot R(t)R(t)^T]^T这个公式,如果我们把ϕ=R˙(t)R(t)Tphi ^ wedge=-dot R(t)R(t)^T代入进去会发现R˙(t)=ϕR(t)dot R(t) = phi ^ wedge R(t)。这个李群R(t)R(t)导数很有意思,李群它的导数等于它自身然后乘上某个数,这个不就和eate^{at}很像吗?所以得到李群和李代数之间的变换关系为:R(t)=eϕtR(t)=e^{ phi ^ wedge t}
    但是有个问题,R(t)=eϕtR(t)=e^{ phi ^ wedge t}这个式子是进行矩阵的指数运算,矩阵的指数运算并不是直接把各个元素直接进行指数运算就行。一般是先把指数运算用泰勒展开,然后再进行计算。为什么用泰勒展开就好算了呢?答:如果我们假设ϕ=θaphi= heta a其中θ hetaϕphi的模,aa是单位向量那么有。有aa=aaTIa^wedge a^wedge=aa^T-Iaaa=aa^wedge a^wedge a^wedge=-a^wedge。所以ϕphi^wedge它的幂运算很方便
    在这里插入图片描述
    R(t)=eϕtR(t)=e^{ phi ^ wedge t}的泰勒展开为:
    在这里插入图片描述
    然后得到结果(其实这个结果就是罗德里格斯公式,ϕ=θaphi= heta a就是旋转向量):
    在这里插入图片描述
    然后对上面这个公式求迹运算(对角线元素之和)可以找到根据旋转矩阵反推李代数(旋转向量)的方法。
    在这里插入图片描述

    旋转矩阵的李代数ϕphi为:
    在这里插入图片描述

    齐次变换矩阵的李代数为ξ=[ρ,ϕ]xi=[ ho,phi],这个ϕphi就是上面那个旋转矩阵的李代数ϕphi
    在这里插入图片描述
    其中J是雅克比矩阵
    在这里插入图片描述

    总结

    在这里插入图片描述
    参考文献:
    [1] https://www.bilibili.com/video/av38496245/?p=2

    知乎 https://www.zhihu.com/people/yuanmuou/activities
  • 相关阅读:
    Flex 学习笔记 Remoting中的作用域(转)
    Flex 学习笔记 动态设置itemRenderer
    发现一个很好玩的网站个人漫画
    AjaxLoad动态生成加载图标的网站
    如何提高大字符串(是从文本文件读取出来的,有2M多)在网页中的显示速度
    CSS纵向居中问题
    用javascript进行xsl转换
    实现鼠标感应效果
    随笔写写
    execCommand指令集
  • 原文地址:https://www.cnblogs.com/ailitao/p/11047265.html
Copyright © 2011-2022 走看看