线性代数:矩阵消元
2017-03-04 17:30
295 查看
消元法
消元失效
回代
消元矩阵
扩展
单位矩阵
置换矩阵
本节是网易公开课上的麻省理工大学线性代数课程第二节:矩阵消元 的学习笔记。
线性方程组的系数矩阵如果是一个好的矩阵(good matrix)可以使用消元法来得到结果,否则无法得到结果。消元完成后,使用 回代 就可以得到方程组的解。
需要求解的方程组如下:
方程组使用矩阵可以表示为 Ax = b :
⎡⎣⎢130284111⎤⎦⎥⎡⎣⎢xyz⎤⎦⎥=⎡⎣⎢2122⎤⎦⎥
思考一个问题,方程一乘以多少,然后用方程二减去它能够将方程二的系数 x 消去。用矩阵语言描述即系数矩阵 A 的第一行乘以多少,然后用第二行减去它能够使得第二行第一列的元素为0。这里将系数矩阵 A 的第一个元素(1)称为主元,与方程中的 x 系数对应。 乘以的这个数称为消元乘数。
很简单,我们将第一行乘以3,然后用第二行减去它,就能够将 第二行第一列的元素变为0。
⎡⎣⎢130284111⎤⎦⎥→row2=row2−3row1⎡⎣⎢1002241−21⎤⎦⎥
这里我们将矩阵的第二行第一列的元素(
接下来我们要操作的是主元二,即保留第一个和第二个方程的系数 y ,将第三个方程的系数 y 都消去。对应到矩阵中的操作为将第三行第二列的元素变为0,代号为
⎡⎣⎢1002241−21⎤⎦⎥→row3=row3−2row2⎡⎣⎢1002201−25⎤⎦⎥
经过上面的操作,我们得到了一个新的上三角矩阵,我们称它为矩阵 U。它的对角线表示所有主元,主元之积(
注意:主元不能为0。
主元为0,不代表主元永远是0。如果主元为0,可以使用行交换,来重新得到一个主元。
例如,如果将原始的系数矩阵 A 中的第二行第二列元素由8改为6,这样经过第一步操作后得到如下结果:
⎡⎣⎢130264111⎤⎦⎥→row2=row2−3row1⎡⎣⎢1002041−21⎤⎦⎥
这时候,主元二为0,但是我们可以考虑将第二行和第三行进行交换,就可以解决这个问题。但是有时候主元下面的位置也为0,就没法通过这种方式解决了。例如将原始系数矩阵 A 的第三行第三列改为-4。
⎡⎣⎢13028411−4⎤⎦⎥→row2=row2−3row1⎡⎣⎢1002241−2−4⎤⎦⎥→row3=row3−2row1⎡⎣⎢1002201−20⎤⎦⎥
这时候,主元三为0,也就是说不存在主元三,矩阵因此不可逆。可逆矩阵是之后的一节内容,这里先简单的提下。
行交换可以解决主元为0的“暂时性失效”问题,但是当底下的行也没有非0元素时,消元就彻底失效了。
⎡⎣⎢130284111|||2122⎤⎦⎥→row2=row2−3row1⎡⎣⎢1002241−21|||262⎤⎦⎥→row3=row3−2row2⎡⎣⎢1002201−25|||26−10⎤⎦⎥
右侧向量 b 经过消元后的结果为一个向量 [2,6,−10]
,该向量称为 向量 c 。
将变换后的增广矩阵转为方程:
该方程表示为矩阵形式为 Ux=c 。
根据方程三求出
现在要做的是使用矩阵来完成上面代号为
⎡⎣⎢⎤⎦⎥⎡⎣⎢130284111⎤⎦⎥=⎡⎣⎢1002241−21⎤⎦⎥
观察下,只需要改变第二行就可以了。所以要求的矩阵的第一行和第二行分别为
⎡⎣⎢100001⎤⎦⎥⎡⎣⎢130284111⎤⎦⎥=⎡⎣⎢1002241−21⎤⎦⎥
然后求出第二行。
⎡⎣⎢1−30010001⎤⎦⎥⎡⎣⎢130284111⎤⎦⎥=⎡⎣⎢1002241−21⎤⎦⎥
求出的这个矩阵称为初等矩阵,记为 E21 。现在我们要使用矩阵来求除代号为
⎡⎣⎢10001−2001⎤⎦⎥⎡⎣⎢1002241−21⎤⎦⎥=⎡⎣⎢1002201−25⎤⎦⎥
上面的过程用可以表示为:
E32(E21A)=U
如果我想一次性将 A 变换为 U,有没有好的办法呢? 即
?A=U
我们可以使用矩阵的结合律来搞定,即:
(E32E21)A=U
[1001]
变换行,例如:
[0110][acbd]=[cadb]
变换列:
[acbd][0110]=[bdac]
消元失效
回代
消元矩阵
扩展
单位矩阵
置换矩阵
本节是网易公开课上的麻省理工大学线性代数课程第二节:矩阵消元 的学习笔记。
消元法
本节将讨论 消元法 来求解线性方程组。线性方程组的系数矩阵如果是一个好的矩阵(good matrix)可以使用消元法来得到结果,否则无法得到结果。消元完成后,使用 回代 就可以得到方程组的解。
需要求解的方程组如下:
x + 2y + z = 2 3x + 8y + z = 12 4y + z = 2
方程组使用矩阵可以表示为 Ax = b :
⎡⎣⎢130284111⎤⎦⎥⎡⎣⎢xyz⎤⎦⎥=⎡⎣⎢2122⎤⎦⎥
思考一个问题,方程一乘以多少,然后用方程二减去它能够将方程二的系数 x 消去。用矩阵语言描述即系数矩阵 A 的第一行乘以多少,然后用第二行减去它能够使得第二行第一列的元素为0。这里将系数矩阵 A 的第一个元素(1)称为主元,与方程中的 x 系数对应。 乘以的这个数称为消元乘数。
很简单,我们将第一行乘以3,然后用第二行减去它,就能够将 第二行第一列的元素变为0。
⎡⎣⎢130284111⎤⎦⎥→row2=row2−3row1⎡⎣⎢1002241−21⎤⎦⎥
这里我们将矩阵的第二行第一列的元素(
(2,1))变为了0,所以使用
(2,1)作为这一步的代号。下一步我们需要将第三行第一列变为0,代号为
(3,1)。很幸运的是,我们发现它已经是0了。以上的操作都是针对主元一来进行的,即保留第一个方程的系数 x ,将第二个和第三个方程的系数 x 都消去。
接下来我们要操作的是主元二,即保留第一个和第二个方程的系数 y ,将第三个方程的系数 y 都消去。对应到矩阵中的操作为将第三行第二列的元素变为0,代号为
(3,2)。操作过程为将第二行乘以多少,然后用第三行减去它,将第三行第二列元素变为0。答案很明显,消元乘数为2。
⎡⎣⎢1002241−21⎤⎦⎥→row3=row3−2row2⎡⎣⎢1002201−25⎤⎦⎥
经过上面的操作,我们得到了一个新的上三角矩阵,我们称它为矩阵 U。它的对角线表示所有主元,主元之积(
1 * 2 * 5 = 10)为它的行列式。消元的目的是为了根据系数矩阵 A 计算出 矩阵 U。
注意:主元不能为0。
消元失效
什么情况下消元会失效呢?失效在这里是指不能得到三个主元。主元为0,不代表主元永远是0。如果主元为0,可以使用行交换,来重新得到一个主元。
例如,如果将原始的系数矩阵 A 中的第二行第二列元素由8改为6,这样经过第一步操作后得到如下结果:
⎡⎣⎢130264111⎤⎦⎥→row2=row2−3row1⎡⎣⎢1002041−21⎤⎦⎥
这时候,主元二为0,但是我们可以考虑将第二行和第三行进行交换,就可以解决这个问题。但是有时候主元下面的位置也为0,就没法通过这种方式解决了。例如将原始系数矩阵 A 的第三行第三列改为-4。
⎡⎣⎢13028411−4⎤⎦⎥→row2=row2−3row1⎡⎣⎢1002241−2−4⎤⎦⎥→row3=row3−2row1⎡⎣⎢1002201−20⎤⎦⎥
这时候,主元三为0,也就是说不存在主元三,矩阵因此不可逆。可逆矩阵是之后的一节内容,这里先简单的提下。
行交换可以解决主元为0的“暂时性失效”问题,但是当底下的行也没有非0元素时,消元就彻底失效了。
回代
之前讨论的都只是系数矩阵 A 的变换,可以想象,在对方程进行消元时,右侧向量也会发生变化。如果把右侧向量加入到系数矩阵中会得到一个新的矩阵,称为增广矩阵。按照之前的逻辑,现在对增广矩阵进行变换。⎡⎣⎢130284111|||2122⎤⎦⎥→row2=row2−3row1⎡⎣⎢1002241−21|||262⎤⎦⎥→row3=row3−2row2⎡⎣⎢1002201−25|||26−10⎤⎦⎥
右侧向量 b 经过消元后的结果为一个向量 [2,6,−10]
,该向量称为 向量 c 。
将变换后的增广矩阵转为方程:
x + 2y + z = 2 2y - 2z = 6 5z = -10
该方程表示为矩阵形式为 Ux=c 。
根据方程三求出
z=-2,将
z=-2带入方程二中,求出
y=1,将
z=-2,y=1带入方程一种,求出
x=2。
消元矩阵
之前已经使用矩阵表示了消元的过程,但是它只是一种简化版,想要真正使用矩阵进行消元,需要学习下面的知识。即使用矩阵乘以矩阵来得到消元后的矩阵。现在要做的是使用矩阵来完成上面代号为
(2,1)的过程,即将第二行第一列的元素变为0。即求出等式中的最左边矩阵。
⎡⎣⎢⎤⎦⎥⎡⎣⎢130284111⎤⎦⎥=⎡⎣⎢1002241−21⎤⎦⎥
观察下,只需要改变第二行就可以了。所以要求的矩阵的第一行和第二行分别为
[1,0,0]和
[0,0,1]。
⎡⎣⎢100001⎤⎦⎥⎡⎣⎢130284111⎤⎦⎥=⎡⎣⎢1002241−21⎤⎦⎥
然后求出第二行。
⎡⎣⎢1−30010001⎤⎦⎥⎡⎣⎢130284111⎤⎦⎥=⎡⎣⎢1002241−21⎤⎦⎥
求出的这个矩阵称为初等矩阵,记为 E21 。现在我们要使用矩阵来求除代号为
(3,2)的过程。即求出初等矩阵 E32 。这儿不讲求解过程,直接给出结果。
⎡⎣⎢10001−2001⎤⎦⎥⎡⎣⎢1002241−21⎤⎦⎥=⎡⎣⎢1002201−25⎤⎦⎥
上面的过程用可以表示为:
E32(E21A)=U
如果我想一次性将 A 变换为 U,有没有好的办法呢? 即
?A=U
我们可以使用矩阵的结合律来搞定,即:
(E32E21)A=U
扩展
单位矩阵
如果如果矩阵 A 乘以矩阵 I 的结果还是矩阵 A,或者矩阵 I 乘以矩阵 A 的结果为矩阵 A。则矩阵 I 称为单位矩阵。单位矩阵的主对角线为1,其余位置为0。例如一个二阶单位矩阵:[1001]
置换矩阵
置换矩阵的作用是将矩阵的行或者列进行交换,变换行,例如:
[0110][acbd]=[cadb]
变换列:
[acbd][0110]=[bdac]
相关文章推荐
- 线性代数导论2——矩阵消元
- 线性代数--矩阵消元
- 线性代数Lec02: 矩阵消元
- 线性代数2——矩阵消元
- 【线性代数公开课MIT Linear Algebra】 第四课 从矩阵消元到LU分解
- 【线性代数公开课MIT Linear Algebra】 第二课 矩阵与高斯消元
- 线性代数 矩阵消元与回代
- 线性代数笔记-矩阵乘法的几种求法
- 线性代数导论2——矩阵消元
- 线性代数与矩阵
- 线性代数第八章 λ 矩阵 定理8 多项式最大公约数的性质
- Hrbust 1600 线性代数中的矩阵问题【区间dp】
- 线性代数的本质--对线性空间、向量和矩阵的直觉描述
- 线性代数 -- 矩阵空间、秩1矩阵、小世界图
- hlg1600线性代数中的矩阵问题【区间dp】
- 【线性代数公开课MIT Linear Algebra】 第三课 矩阵乘法和矩阵的逆
- 线性代数教程之一——矩阵乘法计算、理解及代码实现
- 连载|复习线性代数:矩阵
- MIT18.06线性代数课程笔记20:矩阵逆元计算、克里默法则 以及 行列式与volume、外积的关系
- 线性代数4:稀疏矩阵的十字链表表示法