Linear Algebra-矩阵消元-02

概要

这一节中我们介绍一下消元法,即是上一节中我们提到的“系统化”求解方程所用的方法,通过矩阵的消元运算可以很轻松地求解复杂方程。另外介绍了消元矩阵,即消元运算在矩阵乘法中所表现的形式。并从消元矩阵引入,介绍逆矩阵的基础知识。

消元法求解方程

消元法介绍

对于一些“好”的系数矩阵(可逆)A 来说,我们可以使用消元法来求解方程$Ax=b$,我们还是从一个例子开始谈起。

求解方程:$x+2y+z=2, 3x+8y+z=12, 4y+z=2$

还是使用矩阵运算,将方程写成矩阵的形式$Ax=b$,$\begin{bmatrix}
1 & 2 & 1 \\
3 & 8 & 1 \\
0 & 4 & 1
\end{bmatrix}\begin{bmatrix}
x \\
y \\
z
\end{bmatrix}=\begin{bmatrix}
2 \\
12 \\
2
\end{bmatrix}$

所谓矩阵的消元法,与我们初等数学中学习的解二元一次方程组的消元法其实师出同门,都是将不同行的方程进行消元运算来简化方程,最后能得到简化的方程组,只不过这里我们是将系数单独抽出来做运算,寻找一种矩阵情况下的普遍规律而已

消元针对的是系数矩阵 A:$\begin{bmatrix}
1 & 2 & 1 \
3 & 8 & 1 \
0 & 4 & 1
\end{bmatrix}$。首先注意,左上角的 1 是消元法的关键,被称为主元“1”,接下来通过我们熟悉的“将一行乘倍数加到另一行”的行化简方法将第一列中除了主元之外的元素全变为 0。

第一步目标达成,我们在第一列中只留下了主元 1,很好,接下来我们可以认为第一行与第一列已经“完工”了,再看去掉第一行第一列之后右下角剩下的部分:$\begin{bmatrix}
2 & -2 \\
4 & 1
\end{bmatrix}$,同样,我们将左上角的 2 视为主元,消元第一列,使其列上(不包括已经完成消元的第一行中的元素)除此主元 2 外都为 0。

这时候第三行只剩下 5,我们直接将其处理为主元即可。得:

由于矩阵 A 可逆,因此经过消元处理得到的上三角矩阵 $U=\begin{bmatrix}
1 & 2 & 1 \\
0 & 2 & -2 \\
0 & 0 & 5
\end{bmatrix}$ 中有三个主元。至此,消元结束,得到的 U 即为我们想要化简的形式。

TIPS:
并不是所有的矩阵都可以消元处理,需要注意在消元过程中,如果主元位置(左上角)为 0,那么意味着这个主元不可取,需要进行“换行处理”,首先看它的下一行对应位置是不是 0,如果不是,就将这两行位置互换,将非零数视为主元。如果是,就再看下下行,以此类推。若其下面每一行都看到了,仍然没有非零数的话,那就意味着这个矩阵不可逆,消元法求出的解不唯一。下面是三个例子:
$\begin{bmatrix}
0 & 2 & 1 \\
0 & 2 & -2 \\
0 & 0 & 5
\end{bmatrix}$,$\begin{bmatrix}
1 & 2 & 1 \\
0 & 0 & -2 \\
0 & 0 & 5
\end{bmatrix}$,$\begin{bmatrix}
1 & 2 & 1 \\
0 & 2 & -2 \\
0 & 0 & 0
\end{bmatrix}$

回带求解

其实回带求解应该跟消元法同时进行,只不过一些在一些软件的工作原理中他们是分别进行的,所以这里我们分开讨论,先介绍增广矩阵:

仍然是例一中的方程:$\begin{bmatrix}
1 & 2 & 1 \\
3 & 8 & 1 \\
0 & 4 & 1
\end{bmatrix}\begin{bmatrix}
x \\
y \\
z
\end{bmatrix}=\begin{bmatrix}
2 \\
12 \\
2
\end{bmatrix}$,我们先给出增广矩阵形式:

显然,就是把系数矩阵 A 和向量 b 拼接成一个矩阵就行了。

然后像我们之前说的那样消元,但是这次要带着增广的 $b=\begin{bmatrix}
2 \\
12 \\
2
\end{bmatrix}$ 一起进行:

之后,我们再带回方程$Ax=b$,变为:

从下向上开始求解,就很容易求出 x, y, z 的值了。

消元矩阵

行向量与矩阵的乘法

上面的消元法是从简单的变换角度介绍了消元的具体操作,接下来我们需要用矩阵来表示变换的步骤,这是十分必要的,因为这是一种“系统地”变换矩阵的方法。

首先介绍向量与矩阵之间的乘法,上一节中我们提到了矩阵和列向量之间的乘法,是矩阵中列向量的线性组合,如:

但这并不能解决我们现在的问题,因为我们在消元法中使用到的是行变换,那么我们就要思考,行向量和矩阵的乘积是什么呢?

从上面的过程可以看出,行向量和矩阵的乘积是矩阵中行向量的线性组合

至于行向量为什么放左边则是从矩阵乘法的维数匹配去考虑,以上式为例,行向量维数为 $1\times3$,矩阵维数为$3\times3$,因此行向量只能置于矩阵的左侧。

消元矩阵介绍

该部分内容是重点。学会了行向量与矩阵之间的乘法,我们就可以使用行向量对矩阵的行进行操作了。所谓消元矩阵,就是将消元过程中的行变换转化为矩阵之间的乘法形式。

首先需知下面三个式子成立:

此时将 $\begin{bmatrix}
1 & 0 & 0
\end{bmatrix}\begin{bmatrix}
0 & 1 & 0
\end{bmatrix}\begin{bmatrix}
0 & 0 & 1
\end{bmatrix}$构成一个矩阵:单位阵:$\begin{bmatrix}
1 & 0 & 0\\
0 & 1 & 0\\
0 & 0 & 1
\end{bmatrix}$,易得单位阵与矩阵相乘不改变矩阵。消元矩阵就是单位阵的变换形式,我们仍以例一中的矩阵说明:

首先明确:

消元过程的第一步是将第一行乘(-3)加到第二行,这是对第二行的操作,那么我们就从单位阵的第二行着手:

根据先前的结论,“行向量和矩阵的乘积是矩阵中行向量的线性组合”。因此

因此,经验证,这一步的消元矩阵就是 $\begin{bmatrix}
1 & 0 & 0\\
-3 & 1 & 0\\
0 & 0 & 1
\end{bmatrix}$,我们将其记为$E_{21}$,意义是将矩阵 A 中 2 行 1 列(2,1)位置变为 0 的消元矩阵。

同样,计算 $\begin{bmatrix}
1 & 2 & 1 & 2\\
0 & 2 & -2 & 6\\
0 & 4 & 1 & 2
\end{bmatrix}-(3,2)->\begin{bmatrix}
1 & 2 & 1 & 2\\
0 & 2 & -2 & 6\\
0 & 0 & 5 & -10
\end{bmatrix}$ 这一步的消元矩阵,即为:

得到:

其中 U 为上三角矩阵。使用矩阵乘法的结合律,先计算,即为 E,则 E 就是整个此次消元过程的消元矩阵。

核心:求消元矩阵就是从单位阵 I 入手,按照 A 每次变换的消元步骤操作 I 矩阵,能分别得到$E_{row,col}$,最后相乘得到 E 即可。

行交换矩阵与逆矩阵

行变换与列变换

有了上面消元矩阵的启发,易得能够交换 $2\times2$ 矩阵中两行的矩阵为:

而交换 $2\times2$ 矩阵中两列的矩阵为:

所以,左乘等同于行变换,右乘等同于列变换

逆矩阵初探

可以说我们学会了消元矩阵,就相当于我们可以用矩阵乘法对一个矩阵进行任何变化了,那么我们考虑一个逆过程,即我们如何把一个消元结束的矩阵 U 变为未经消元的矩阵 A 呢?答案就是乘上一个逆矩阵。

如例一中的$E_{21}$,是第一行乘以3到第二行,即

那么与之相反,我们在第二行加上第一行$\times3$就可以复原这一运算过程,即:$\begin{bmatrix}
1 & 0 & 0\\
3 & 1 & 0\\
0 & 0 & 1
\end{bmatrix}\begin{bmatrix}
1 & 0 & 0\\
-3 & 1 & 0\\
0 & 0 & 1
\end{bmatrix}=\begin{bmatrix}
1 & 0 & 0\\
0 & 1 & 0\\
0 & 0 & 1
\end{bmatrix}=I$。其中的I是单位矩阵。
此时的$\begin{bmatrix}
1 & 0 & 0\\
3 & 1 & 0\\
0 & 0 & 1
\end{bmatrix}$称为,就有了

学习感悟

本节从矩阵消元的角度,介绍解方程的通用做法,并介绍了消元矩阵,使我们从矩阵乘法层面理解了消元的过程,并延伸了消元矩阵的应用:就是基于单位阵 I 的变化,对矩阵 A 进行行列变换的过程。