《机器人与数字人:基于MATLAB的建模与控制》——2.2节李群和李代数

简介:

本节书摘来自华章社区《机器人与数字人:基于MATLAB的建模与控制》一书中的第2章,第2.2节李群和李代数,作者[美]顾友谅(Edward Y.L.Gu),更多章节内容可以访问云栖社区“华章社区”公众号查看

2.2李群和李代数
在数学中[4,5],与集合论不同,群论在研究集合或者一组元素时,通常连同其某种运算一起研究。
定义1一个群是由一个集合G连同其布尔运算“”来定义的,并满足如下条件。

1闭合律:对于任意a, b∈G,ab=c∈G。
2结合律:对于所有a,b,c∈G,(ab)c=a(bc)。
3单位律:存在单位元ι∈G,对于所有g∈G,使得等式ιg=gι=g成立。
4交换律:对于每个g∈G,存在一个元素h∈G,使得gh=hg=ι。

所有实整数与加法相关联形成加法群,但与乘法因为违反了交换律条件而不成立。所有实数(复数)与加法或乘法分别组成加法群或者乘法群,它们也能成为域,称为实数域(复数域)。
20
如果集合连同某一运算满足所有条件(除了交换律之外),即使单位律条件仍能保持,那么,集合也只能形成半群。相比之下,三维实向量的集合在瘙綆3空间下的叉积既不是群也不是半群,因为它不满足结合律、单位律和交换律条件。
根据元素的个数和元素变换属性,群可以分为有限群和无限群、离散群和连续群。李群是典型的无限连续群。例如,所有n×n阶非奇异实数矩阵与乘法运算形成线性李群GL(n)。所有n×n阶正交实数矩阵与乘法运算形成正交李群O(n),进一步把正交李群O(n)的正交矩阵的行列式变为+1,它将变成特殊正交群。每一个旋转矩阵属于特殊正交群——SO(3)群。
然而,许多有用的集合在某种二元运算中违背任意一个或者更多群定义的条件时,即使它们非常有用,也不是群。为了对它们进行进一步研究和应用,就需要解除限制。李代数是最典型和重要的方法之一,可以挽救被群的定义排除的有用集合。
定义2李代数在实数域瘙綆或者复数域瘙綇上的向量空间,存在双线性映射(X,Y)→[X,Y]定义为×→,而且

1对所有X, Y∈,有[X,Y ]=-[Y,X]。
2对所有X,Y,Z∈,有[X,[Y,Z]]+[Y,[Z,X]]+[Z,[X,Y]]=0。

上述定义中的第二个方程称为雅可比恒等式。现在,所有的三维实向量连同叉积运算构成李代数,即使它们不是李群。对于a×b=[a,b]=c,可以改写为S(a)b=c,其中S(a)是向量a∈瘙綆3的3×3斜对称矩阵。也就是说,[a,·]=S(a)·=a×是一种运算。这种李代数常用小写字母定义为so(3)。例如,如果给定两个向量为

a=3
2
-1,b=-1
0
2
为求c=[a, b]=a×b,先为向量a构造一个斜对称矩阵

S(a)=a×=012

-10-3

-230∈so(3)
(23)
那么,很显然可以得到
21
c=[a,b]=a×b=S(a)b=4
-5
2
与使用常规微积分和物理学行列式的方法一样,可得到如下的结果:
c=a×b=ijk
32-1
-102=4i-5j+2k
李代数的典型例子还包括矩阵交换和向量场导数。所有n×n阶实方阵连同交换算子[A,B]=AB-BA构成了李代数。也可以证明:由光滑函数上任意点x∈瘙綆n所限制的n维实向量域,在如下李算式下也能组成李代数。
[f,g]=gxf-fxg(24)
下面来看一个有趣的特性:两个向量a和b,以及它们的斜对称矩阵S(a)=a×和S(b)=b×分别作为向量a和b的叉积。那么,[S(a), S(b)]=S(a)S(b)-S(b)S(a)交换算子代表了什么意义?首先,通过对两边取转置,得到的斜对称矩阵交换算子[S(a), S(b)]仍然是斜对称矩阵,并且满足闭合律条件。令v∈瘙綆3为任意向量,那么
S(a),S(b)v=S(a)S(b)v-S(b)S(a)v=a×(b×v)-b×(a×v)
这也是两个向量三重积的差值。根据式(21)可以得到
[S(a),S(b)]v=(aTv)b-(aTb)v-(bTv)a+(bTa)v

=(aTv)b-(bTv)a=(a×b)×v
由于v是任意向量,上面的方程表明
[S(a),S(b)]=(a×b)×=S(a×b)(25)
这也就是叉积运算a×b。
现在继续之前的数值实例,即S(a)由式(23)来确定,而
S(b)=b×=0-20
201
0-10

22
因此,
[S(a),S(b)]=S(a)S(b)-S(b)S(a)

=2-21
050
643-206
-254
103=0-25
20-4
540
这完全符合S(c)=c×=S(a×b)。

在数学史上,李群和李代数的最重要理论发现之一是如下的指数映射:
EXP:so(3)→SO(3)(26)
这种映射意味着,对于每个3×3斜对称矩阵S∈so(3),其指数函数exp(S)=R∈SO(3)始终是旋转矩阵。换句话说,指数映射可以将任何有限维度的李代数转化为李群。这种映射非常有用,作为机器人运动学的理论基础,可以用来表达坐标系旋转和姿态[4, 6, 8] 。

相关文章
|
13天前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
28 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
|
6天前
|
数据可视化 机器人 计算机视觉
MATLAB - 机械臂逆运动学进行轨迹控制建模
MATLAB - 机械臂逆运动学进行轨迹控制建模
15 0
|
1月前
|
监控
基于偏微分方程离散化计算的地下换热器建模与温度检测matlab仿真
**摘要:** 探索地下换热器的建模与温度检测,使用MATLAB2022a进行系统仿真,关注传热过程的热传导、对流和辐射。通过离散化偏微分方程建立数值模型,模拟温度场,考虑地质特性和水流影响。建模以网格单元描述温度变化,采用热电偶、红外和光纤测温技术验证模型并监控温度,各具优缺点。光纤测温法提供高精度和抗干扰的分布式监测。
|
14天前
|
算法
基于matlab的风力发电系统建模与详细性能仿真分析
本研究介绍风力发电原理与系统模型,使用MATLAB 2022a进行性能仿真。风力通过风轮转化为电能,涉及贝努利定理及叶素理论。仿真展示了风速与输出功率间的关系,包括风电利用系数、切入切出控制与MPPT控制效果。当风速超过25m/s时,系统自动停机保护设备。MPPT算法确保了在变化风速下获得最大功率。
|
12天前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
31 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
13天前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
39 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
3月前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
基于混合整数规划的微网储能电池容量规划(matlab代码)
基于混合整数规划的微网储能电池容量规划(matlab代码)
|
3月前
|
算法 调度
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
|
3月前
|
Serverless
基于Logistic函数的负荷需求响应(matlab代码)
基于Logistic函数的负荷需求响应(matlab代码)

热门文章

最新文章