课程简介
18.06是Gilbert Strang教授在MIT开的线性代数公开课,课程视频以及相关资料请见https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/index.htm。
课程笔记
Strang先说了两个逆元的性质: (AB)−1=B−1A−1 以及 (AT)−1=(A−1)T 。证明都很简单,直接验证 A−1A=I 即可。
然后对高斯消元法做了矩阵化理解,从而引入 A=LU 分解,其中 U 是上三角矩阵。
1. 高斯消元法的矩阵化理解
如MIT18.06线性代数课程笔记3b:矩阵的逆元中所述,高斯消元法用于求解线性方程组
Eij 也很简单,即 [Eij]ij=−k,[Eij]nn=1 for all n=1,2,⋯
对矩阵做行变换等价于左乘变换矩阵。
综上高斯消元的结果是
EA=U
,其中
E
为
2. 对 E 的分析
在分析之前,先对
同时,因为
E
是从上向下的操作,所以
因为
Eij
是为了使得
A′ij
变为
0
,而变换的目标是使得
回忆最初的目的:对
A
做分解使得
若直接对
E
求逆,使用标准的求逆算法(Gauss-Jordan法),需要额外的
3. 求解 A=LU
这里就要用到前面所述的矩阵逆元的性质: (AB)−1=B−1A−1 . 例如上诉 A3×3 的例子,我们有 E−1=E−121E−131E−132 。而对消除矩阵求逆的操作非常简单,直接对 [Eij]ij 取反,其他位置不变。进而求取 E−1 等价于对 I 做一系列行变换。
进一步,记得我们对
具体地,计算 E−1 的操作等价于:
L=I
for i=n⋯1
for j=i−1⋯1
L=E−1ijL ,即 L 的第
i 行加上第 j 行return
L
分析循环体内的操作,
L
的第
综上,求解
L
的过程转换为对
这里还可以分析一下高斯消元的复杂度,因为衡量单元是矩阵维度
N
,所以考虑缩减矩阵的操作数,最后再整合。缩减矩阵维度的标准是第