[线性代数]-2 矩阵消元


《线性代数》学习笔记

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


1. 消元法求解方程

1.1 消元法介绍

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

【例1】  \begin{cases}    x + 2y + z = 2 \\    3x + 8y + z = 12 \\    4y + z = 2 \end{cases}

\(    A = \begin{bmatrix}    1 & 2 & 1 \\    3 & 8 & 1 \\    0 & 4 & 1    \end{bmatrix}, \quad    b = \begin{bmatrix}    x \\    y \\    z    \end{bmatrix}, \quad    方程:     \quad 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;首先注意,左上角的 1是消元法的关键,称之为主元 1,接下来通过熟悉的“将一行乘倍数加到另一行”的行化简方法将第一列中除了主元之外的元素全变为 0。

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

$$
       \begin{bmatrix}
           \textcolor{red}{1} & 2 & 1 \\
           0 & \textcolor{red}{2} & -2 \\
           0 & 4 & 1
       \end{bmatrix}
       \xrightarrow{(3,2)}
       \begin{bmatrix}
           \textcolor{red}{1} & 2 & 1 \\
           0 & \textcolor{red}{2} & -2 \\
           0 & 0 & 5
       \end{bmatrix}
       $$

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

$$
       \begin{bmatrix}
           \textcolor{red}{1} & 2 & 1 \\
           0 & \textcolor{red}{2} & -2 \\
           0 & 4 & 1
       \end{bmatrix}
       \xrightarrow{(2,1)}
       \begin{bmatrix}
           \textcolor{red}{1} & 2 & 1 \\
           0 & 2 & -2 \\
           0 & 0 & 5
       \end{bmatrix}
       \xrightarrow{(3,2)}  
       \begin{bmatrix}
           \textcolor{red}{1} & 2 & 1 \\
           0 & \textcolor{red}{2} & -2 \\
           0 & 0 & 5
       \end{bmatrix}
       \xrightarrow{}
       \begin{bmatrix}
           \textcolor{red}{1} & 2 & 1 \\
           0 & \textcolor{red}{2} & -2 \\
           0 & 0 &\textcolor{red}{5}
       \end{bmatrix}
       $$

由于矩阵可逆,经过消元处理得到的上三角矩阵中有三个主元,至此,消元结束,得到的 即为想要化简的形式。


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

下面是三个例子:

\[
   \left[
   \begin{array}{ccc}
   \color{red}{0} & 2 & 1 \\
   0 & \color{red}{2} & -2 \\
   0 & 0 & \color{red}{5}
   \end{array}
   \right]
   ,
   \left[
   \begin{array}{ccc}
   \color{red}{1} & 2 & 1 \\
   0 & \color{red}{0} & -2 \\
   0 & 0 & \color{red}{5}
   \end{array}
   \right]
   ,
   \left[
   \begin{array}{ccc}
   \color{red}{1} & 2 & 1 \\
   0 & \color{red}{2} & -2 \\
   0 & 0 & \color{red}{0}
   \end{array}
   \right]
   \]


1.2 回带求解

还是【例1】中的方程:

$$ \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} $$

先给出增广矩阵形式:


$$ \\增广矩阵:\begin{bmatrix} 1 & 2 & 1 & 2 \\ 3 & 8 & 1 & 12 \\ 0 & 4 & 1 & 2 \end{bmatrix}$$

就是把系数矩阵 A和向量b拼接成一个矩阵就行了,然后像之前说的那样消元,但是这次要带着增广的 b(蓝色部分)一起进行:

\[
\begin{bmatrix}
1 & 2 & 1 & \textcolor{blue}{2} \\
3 & 8 & 1 & \textcolor{blue}{12} \\
0 & 4 & 1 & \textcolor{blue}{2}
\end{bmatrix}
\rightarrow \overset{(2,1)}{\longrightarrow}
\begin{bmatrix}
\textcolor{red}{1} & 2 & 1 & \textcolor{blue}{2} \\
0 & 2 & -2 & \textcolor{blue}{6} \\
0 & 4 & 1 & \textcolor{blue}{2}
\end{bmatrix}
\rightarrow \overset{(3,2)}{\longrightarrow}
\begin{bmatrix}
\textcolor{red}{1} & 2 & 1 & \textcolor{blue}{2} \\
0 & \textcolor{red}{2} & -2 & \textcolor{blue}{6} \\
0 & 0 & 5 & \textcolor{blue}{-10}
\end{bmatrix}
\rightarrow
\begin{bmatrix}
\textcolor{red}{1} & 2 & 1 & \textcolor{blue}{2} \\
0 & \textcolor{red}{2} & -2 & \textcolor{blue}{6} \\
0 & 0 & \textcolor{red}{5} & \textcolor{blue}{-10}
\end{bmatrix}
\]

带回方程Ax = b,变为: 

$$\begin{cases}    1x + 2y + z = 2 \\    2y - 2z = 6 \\     5z = -10 \end{cases}$$

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


2. 消元矩阵

2.1 行向量与矩阵的乘法

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

首先需要介绍向量与矩阵之间的乘法,上一节中提到了矩阵与列向量之间的乘法,例如:

这并不能解决现在的问题,因为消元法之中我们用到的是行变换,那么考虑这个问题,行向量与矩阵的乘积是什么呢?

2.2 消元矩阵介绍

学会了行向量与矩阵之间的乘法,就可以使用行向量对矩阵的行做操作了。所谓消元矩阵,就是将消元过程中的行变换转化为矩阵之间的乘法形式。

$$\begin{bmatrix}1 & 0 & 0\end{bmatrix} \begin{bmatrix}1 & 1 & 1 \\ ? & ? & ? \\ ? & ? & ?\end{bmatrix} = \begin{bmatrix}1 & 1 & 1\end{bmatrix}$$

$$\begin{bmatrix}0 & 1 & 0\end{bmatrix} \begin{bmatrix}? & ? & ? \\ 1 & 1 & 1 \\ ? & ? & ?\end{bmatrix} = \begin{bmatrix}1 & 1 & 1\end{bmatrix}$$

$$\begin{bmatrix}0 & 0 & 1\end{bmatrix} \begin{bmatrix}? & ? & ? \\ ? & ? & ? \\ 1 & 1 & 1\end{bmatrix} = \begin{bmatrix}1 & 1 & 1\end{bmatrix}$$

此时将[1 0 0],[0 1 0],[0 0 1]构成一个矩阵,单位矩阵:

$$\begin{bmatrix}1 & 0 & 0\\ 0 & 1 & 0 \\ 0 & 0 & 1\end{bmatrix} $$

我们很容易验证,这样的单位阵与矩阵相乘不改变矩阵。消元矩阵就是它的变换形式。仍是以例一中的矩阵说明:

\[
       \begin{bmatrix}
       ? & ? & ? \\
       ? & ? & ? \\
       ? & ? & ?
       \end{bmatrix}
       \begin{bmatrix}
       1 & 2 & 1 \\
       3 & 8 & 1 \\
       0 & 4 & 1
       \end{bmatrix}
       =
       \begin{bmatrix}
       1 & 2 & 1 \\
       0 & 2 & -2 \\
       0 & 4 & 1
       \end{bmatrix}
       \]

首先明确前提条件:

$$\left[\begin{array}{ccc}
       1 & 0 & 0 \\
       0 & 1 & 0 \\
       0 & 0 & 1
       \end{array}\right]
       \left[\begin{array}{ccc}
       1 & 2 & 1 \\
       3 & 8 & 1 \\
       0 & 4 & 1
       \end{array}\right] =
       \left[\begin{array}{ccc}
       1 & 2 & 1 \\
       3 & 8 & 1 \\
       0 & 4 & 1
       \end{array}\right] \text{ 本身}$$

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

所以,经验证,这一步的消元矩阵:(记为E21,意义是将矩阵 A之中2行 1列(2,1)位置变为0的消元矩阵)

$$\begin{bmatrix}1 & 0 & 0\\ -3 & 1 & 0 \\ 0 & 0 & 1\end{bmatrix} $$


使用结合律,先计算 E32 E21,记为E,则 E就是整个此消元过程的消元矩阵。核心:求消元矩阵就是从单位阵 I 入手,按照 A 每次变换的消元步骤操作 I 矩阵,能分别得到 E 某行某列,最后累积得到 E 即可。


2.3 行交换矩阵与逆矩阵

2.3.1行变换与列变换

有了上面消元矩阵的启发,不难得到,能够交换 2x2 矩阵中两行的矩阵为:

$$ \begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix} \begin{bmatrix} a & b \\ c&d  \end{bmatrix} = \begin{bmatrix} c&d \\ a&b\end{bmatrix} $$


而交换2x2矩阵中两列的矩阵为:

$$ \begin{bmatrix} a & b \\ c & d \end{bmatrix} \begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix} = \begin{bmatrix} b & a \\ d & c \end{bmatrix} $$

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


2.3.2 逆矩阵初探

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

比如【例1】中的 E21,是第一行*(-3)加到第二行,即:

$$ E_{21} = \begin{bmatrix} 1 & 0 & 0 \\ -3 & 1 & 0 \\ 0 & 0 & 1 \end{bmatrix}, $$

那么与之相反,我们在第二行上加上第一行 *3 就可以复原这一运算过程,即:

$$\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} = \mathbf{I}$$

其中的I乘矩阵 A不会造成影响。𝐸21−1E21= I,此时的𝐸21−1就是 E21的逆矩阵。




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


2024-07-23


声明:ZY|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - [线性代数]-2 矩阵消元