介绍部分常用的基础数学知识(持续更新…)。
一、前言
泰勒级数、矩阵指数函数、向量的斜对称矩阵、向量叉乘是在机器人控制中常用的基本数学知识,本文对这些知识做一个汇总,为将来的机器人研究做铺垫。为了能正常浏览公式,推荐使用Chrome浏览器,并添加一款名为TeX All the Things
的插件。在Markdown文本中编写公式的语法参见如下链接:
通过上述语法规则所编写的大部分公式可以通过浏览器正常观看,但是矩阵除外。为了能正确显示矩阵,可以通过在线LaTeX公式编辑器(链接如下)将公式转为.png(建议分辨率为120),再插入文中。
个人博客的同步文章见:常用的数学基础知识集锦
二、矩阵指数函数及泰勒级数
常用的矩阵指数函数如下所示。
e A t = ∑ k = 0 ∞ A k t k k ! = I + A t + ( A t ) 2 2 ! + ( A t ) 3 3 ! + ⋯ (2-1) e^{\pmb A t} = \sum_{k=0}^\infty \frac{\pmb{A}^{k} t^k}{k!} = \pmb{I} + \pmb{A}^{t} + \frac{(\pmb{A}t)^2}{2!} + \frac{(\pmb{A}t)^3}{3!} + \cdots \tag {2-1} eAAAt=k=0∑∞k!AAAktk=III+AAAt+2!(AAAt)2+3!(AAAt)3+⋯(2-1)
sin A t = ∑ k = 0 ∞ ( − 1 ) k A 2 k + 1 t 2 k + 1 ( 2 k + 1 ) ! (2-2) \sin\pmb{A}{t} = \sum_{k=0}^\infty \frac{(-1)^k \pmb{A}^{2k+1} t^{2k+1}}{(2k+1)!} \tag {2-2} sinAAAt=k=0∑∞(2k+1)!(−1)kAAA2k+1t2k+1(2-2)
cos A t = ∑ k = 0 ∞ ( − 1 ) k A 2 k t 2 k ( 2 k ) ! (2-3) \cos\pmb{A}{t} = \sum_{k=0}^\infty \frac{(-1)^k \pmb{A}^{2k} t^{2k}}{(2k)!} \tag {2-3} cosAAAt=k=0∑∞(2k)!(−1)kAAA2kt2k(2-3)
正弦、余弦函数的泰勒级数展开如式(2-4)~(2-5)所示。
sin
x
=
∑
k
=
0
∞
(
−
1
)
k
(
2
k
+
1
)
!
x
2
k
+
1
(2-4)
\sin x = \sum_{k=0}^\infty \frac{(-1)^k}{(2k+1)!} x^{2k+1} \tag {2-4}
sinx=k=0∑∞(2k+1)!(−1)kx2k+1(2-4)
cos x = ∑ k = 0 ∞ ( − 1 ) k ( 2 k ) ! x 2 k (2-5) \cos x = \sum_{k=0}^\infty \frac{(-1)^k}{(2k)!} x^{2k} \tag {2-5} cosx=k=0∑∞(2k)!(−1)kx2k(2-5)
三、一阶线性微分方程的解法
给出一个一阶线性微分方程:
y ˙ ( t ) = x y ( t ) (3-1) \dot{y}(t) = xy(t) \tag {3-1} y˙(t)=xy(t)(3-1)
即:
d y ( t ) d t = x y ( t ) (3-2) \frac{\mathrm{d} y(t)}{\mathrm{d}t} = xy(t) \tag {3-2} dtdy(t)=xy(t)(3-2)
将式(3-2)变形,可得:
1 y ( t ) d y ( t ) = x d t (3-3) \frac{1}{y(t)}\mathrm{d}y(t) = x\mathrm{d}t \tag {3-3} y(t)1dy(t)=xdt(3-3)
对上式两边进行积分:
∫ 1 y ( t ) d y ( t ) = ∫ x d t (3-4) \int {\frac{1}{y(t)}\mathrm{d}y(t)} = \int {x\mathrm{d}t} \tag {3-4} ∫y(t)1dy(t)=∫xdt(3-4)
即:
ln y ( t ) = x t + C (3-5) \ln y(t) = xt + C\tag {3-5} lny(t)=xt+C(3-5)
上式中, C C C是常数,对上式两边取指数,有:
y ( t ) = e x t y ( 0 ) (3-6) y(t) = e^{xt}y(0) \tag {3-6} y(t)=exty(0)(3-6)
式(3-6)中, y ( 0 ) y(0) y(0)表示 y ( t ) y(t) y(t)在零时刻的取值。
四、斜对称矩阵的定义及性质
定义向量
ω
=
[
ω
1
ω
2
ω
3
]
T
\pmb\omega = \begin{bmatrix} \omega_1 & \omega_2 & \omega_3 \end{bmatrix}^{\mathrm T}
ωωω=[ω1ω2ω3]T 及其斜对称矩阵(又称为反对称矩阵)
ω
^
\pmb{\bf{\hat \omega }}
ω^ω^ω^ 为:
ω
^
=
[
0
−
ω
3
ω
2
ω
3
0
−
ω
1
−
ω
2
ω
1
0
]
(4-1)
\pmb{\bf{\hat \omega }}= \begin{bmatrix} 0 & -\omega_3 & \omega_2 \\ \omega_3 & 0 & -\omega_1 \\ -\omega_2 & \omega_1 & 0 \end{bmatrix} \tag{4-1}
ω^ω^ω^=⎣⎡0ω3−ω2−ω30ω1ω2−ω10⎦⎤(4-1)
斜对称矩阵的性质如下:
ω ^ T = − ω ^ (4-2) \pmb{\bf{\hat \omega }}^\mathrm{T} = -\pmb{\bf{\hat \omega }} \tag {4-2} ω^ω^ω^T=−ω^ω^ω^(4-2)
ω ^ 2 = ω ω T − ∥ ω ∥ 2 I (4-3) \pmb{\bf{\hat \omega }}^2 = \pmb{\bf{ \omega }}\pmb{\bf{ \omega }}^\mathrm{T} - {\lVert \pmb\omega \rVert}^2 \pmb{I} \tag{4-3} ω^ω^ω^2=ωωωωωωT−∥ωωω∥2III(4-3)
ω ^ 3 = − ∥ ω ∥ 2 A ω ^ (4-4) \pmb{\bf{\hat \omega }}^3 = -{\lVert \pmb\omega \rVert}^2 \pmb{A}\pmb{\bf{\hat \omega }} \tag{4-4} ω^ω^ω^3=−∥ωωω∥2AAAω^ω^ω^(4-4)
五、向量的叉乘
向量的叉乘,又称为向量积。
1.向量积的模长
两个平面向量 a \pmb a aaa、 b \pmb b bbb的叉乘记为 a × b \pmb a \times\pmb b aaa×bbb,模长的计算方法如下:
∣ a × b ∣ = ∣ a ∣ ⋅ ∣ b ∣ ⋅ sin θ (5-1) {\lvert \pmb a \times\pmb b\rvert} = {\lvert \pmb a\rvert} \cdot {\lvert \pmb b\rvert} \cdot \sin\theta \tag{5-1} ∣aaa×bbb∣=∣aaa∣⋅∣bbb∣⋅sinθ(5-1)
2.向量积的方向
方向为:向量积的方向与这两个向量所在平面垂直,且遵守右手定则。(一个简单的确定满足“右手定则”的结果向量的方向的方法是这样的:若坐标系是满足右手定则的,当右手的四指从 a \pmb a aaa 以不超过180度的转角转向 b \pmb b bbb 时,竖起的大拇指指向是叉乘的方向。)
在上图中, a × b \pmb a \times\pmb b aaa×bbb 的方向是垂直指向屏幕外侧。
3.向量积的物理意义
物理意义:向量的叉乘常用来表示平行四边形的面积。从上图可以看出:
a
×
b
\pmb a \times\pmb b
aaa×bbb 表示的是平行四边形面积,
a
×
c
\pmb a \times\pmb c
aaa×ccc 表示的是矩形面积,显然有:
a
×
b
=
a
×
c
(5-2)
\pmb a \times\pmb b = \pmb a \times\pmb c \tag{5-2}
aaa×bbb=aaa×ccc(5-2)
这意味着, a \pmb a aaa 与任意以 a \pmb a aaa 所在直线上一点为起点、以 b \pmb b bbb 的终点为终点的向量进行叉乘,得到的结果都是一样的。
4.向量积与斜对称矩阵
将二维平面内的向量拓展到三维空间,若
a
=
[
a
1
a
2
a
3
]
T
\pmb a = \begin{bmatrix} a_1 & a_2 & a_3 \end{bmatrix}^{\mathrm T}
aaa=[a1a2a3]T与
b
=
[
b
1
b
2
b
3
]
T
\pmb b = \begin{bmatrix} b_1 & b_2 & b_3 \end{bmatrix}^{\mathrm T}
bbb=[b1b2b3]T进行叉乘,则有如下结果:
a
×
b
=
[
a
2
b
3
−
a
3
b
2
a
3
b
1
−
a
1
b
3
a
1
b
2
−
a
2
b
1
]
=
[
0
−
a
3
a
2
a
3
0
−
a
1
−
a
2
a
1
0
]
[
b
1
b
2
b
3
]
=
a
^
b
(5-3)
\pmb a \times \pmb b = \begin{bmatrix} a_2b_3 - a_3b_2 \\ a_3b_1 - a_1b_3 \\ a_1b_2 - a_2b_1 \end{bmatrix} = \begin{bmatrix} 0 & -a_3 & a_2 \\ a_3 & 0 & -a_1 \\ -a_2 & a_1 & 0 \end{bmatrix}\begin{bmatrix} b_1 \\ b_2 \\ b_3 \end{bmatrix}=\pmb{{\hat a }}\pmb b \tag{5-3}
aaa×bbb=⎣⎡a2b3−a3b2a3b1−a1b3a1b2−a2b1⎦⎤=⎣⎡0a3−a2−a30a1a2−a10⎦⎤⎣⎡b1b2b3⎦⎤=a^a^a^bbb(5-3)
上式建立起了向量叉乘与向量斜对称矩阵之间的联系。