嗨,我是 Agnes。今天我们来聊一个线性代数里特别经典、也特别容易让人“头秃”的话题——怎么求逆矩阵。
很多同学在考试中遇到这道题,要么算到一半算错符号,要么两种方法混着用把自己绕晕了。其实,求逆矩阵并没有那么神秘,它只是线性代数大厦里的一块基石。今天我就带你把伴随矩阵法和初等变换法这两种主流方法掰开了、揉碎了讲清楚,顺便做个深度对比。
准备好了吗?咱们直接进入正题。
一、 什么是逆矩阵?(先建立直觉)
在动手算之前,我们先搞清楚“逆矩阵”到底是个啥。
想象一下算术里的除法。对于数字 \(5\),它的逆元是 \(\frac{1}{5}\),因为 \(5 \times \frac{1}{5} = 1\)。这里的 \(1\) 是乘法单位元。
在线性代数里,矩阵没有“除法”,但我们可以定义类似的运算。对于方阵 \(A\),如果存在一个方阵 \(B\),使得: $\(AB = BA = I\)\( 其中 \)I\( 是单位矩阵(对角线上全是1,其余全是0),那么 \)B\( 就是 \)A\( 的**逆矩阵**,记作 \)A^{-1}$。
关键点:不是所有方阵都有逆矩阵。只有行列式不为零的方阵(称为非奇异矩阵或可逆矩阵)才有逆。如果 \(|A| = 0\),那 \(A\) 就是奇异矩阵,没法求逆。
二、 方法一:伴随矩阵法
这是课本上最早介绍的方法,公式很漂亮,适合手算小型矩阵(2阶、3阶)。
1. 核心公式
\[A^{-1} = \frac{1}{|A|} A^*\]
其中:
- \(|A|\) 是矩阵 \(A\) 的行列式。
- \(A^*\) 是 \(A\) 的伴随矩阵。
2. 什么是伴随矩阵 \(A^*\)?
伴随矩阵是由代数余子式构成的矩阵的转置。 具体步骤:
- 求出 \(A\) 中每个元素 \(a_{ij}\) 的余子式 \(M_{ij}\)(划掉第 \(i\) 行和第 \(j\) 列剩下的行列式)。
- 计算代数余子式 \(A_{ij} = (-1)^{i+j} M_{ij}\)。
- 把代数余子式 \(A_{ij}\) 填到矩阵的第 \(j\) 行第 \(i\) 列的位置(注意:下标要转置!)。
3. 典型例题详解(3阶矩阵)
题目:求矩阵 \(A\) 的逆矩阵,其中 $\(A = \begin{pmatrix} 1 & 2 & -1 \\ 3 & 0 & 1 \\ 2 & 1 & 4 \end{pmatrix}\)$
第一步:计算行列式 \(|A|\) $\(|A| = 1 \times \begin{vmatrix} 0 & 1 \\ 1 & 4 \end{vmatrix} - 2 \times \begin{vmatrix} 3 & 1 \\ 2 & 4 \end{vmatrix} + (-1) \times \begin{vmatrix} 3 & 0 \\ 2 & 1 \end{vmatrix}\)\( \)\(= 1(0-1) - 2(12-2) - 1(3-0)\)\( \)\(= -1 - 20 - 3 = -24\)\( 因为 \)|A| = -24 \neq 0\(,所以 \)A$ 可逆。
第二步:计算所有代数余子式 \(A_{ij}\)
\(A_{11} = +\begin{vmatrix} 0 & 1 \\ 1 & 4 \end{vmatrix} = -1\)
\(A_{12} = -\begin{vmatrix} 3 & 1 \\ 2 & 4 \end{vmatrix} = -(12-2) = -10\)
\(A_{13} = +\begin{vmatrix} 3 & 0 \\ 2 & 1 \end{vmatrix} = 3\)
\(A_{21} = -\begin{vmatrix} 2 & -1 \\ 1 & 4 \end{vmatrix} = -(8+1) = -9\)
\(A_{22} = +\begin{vmatrix} 1 & -1 \\ 2 & 4 \end{vmatrix} = (4+2) = 6\)
\(A_{23} = -\begin{vmatrix} 1 & 2 \\ 2 & 1 \end{vmatrix} = -(1-4) = 3\)
\(A_{31} = +\begin{vmatrix} 2 & -1 \\ 0 & 1 \end{vmatrix} = 2\)
\(A_{32} = -\begin{vmatrix} 1 & -1 \\ 3 & 1 \end{vmatrix} = -(1+3) = -4\)
\(A_{33} = +\begin{vmatrix} 1 & 2 \\ 3 & 0 \end{vmatrix} = (0-6) = -6\)
第三步:写出伴随矩阵 \(A^*\) 注意转置:代数余子式 \(A_{ij}\) 放在第 \(j\) 行第 \(i\) 列。 $\(A^* = \begin{pmatrix} A_{11} & A_{21} & A_{31} \\ A_{12} & A_{22} & A_{32} \\ A_{13} & A_{23} & A_{33} \end{pmatrix} = \begin{pmatrix} -1 & -9 & 2 \\ -10 & 6 & -4 \\ 3 & 3 & -6 \end{pmatrix}\)$
第四步:代入公式 $\(A^{-1} = \frac{1}{-24} \begin{pmatrix} -1 & -9 & 2 \\ -10 & 6 & -4 \\ 3 & 3 & -6 \end{pmatrix} = \begin{pmatrix} \frac{1}{24} & \frac{3}{8} & -\frac{1}{12} \\ \frac{5}{12} & -\frac{1}{4} & \frac{1}{6} \\ -\frac{1}{8} & -\frac{1}{8} & \frac{1}{4} \end{pmatrix}\)$
验证一下(可选但推荐): $\(A A^{-1} = \frac{1}{-24} \begin{pmatrix} 1 & 2 & -1 \\ 3 & 0 & 1 \\ 2 & 1 & 4 \end{pmatrix} \begin{pmatrix} -1 & -9 & 2 \\ -10 & 6 & -4 \\ 3 & 3 & -6 \end{pmatrix}\)\( 第一行第一列:\)1(-1) + 2(-10) + (-1)(3) = -1 -20 -3 = -24\(。除以 \)-24\( 得 \)1$。正确!
三、 方法二:初等变换法(高斯-若尔当消元)
这种方法更实用,尤其是对于高阶矩阵或者编程实现。核心思想是:把 \([A | I]\) 通过行变换变成 \([I | A^{-1}]\)。
1. 原理
对增广矩阵 \((A | I)\) 施行初等行变换,当左边 \(A\) 变成单位矩阵 \(I\) 时,右边原来的 \(I\) 就变成了 \(A^{-1}\)。
2. 典型例题详解(同一道题目)
题目:求 \(A = \begin{pmatrix} 1 & 2 & -1 \\ 3 & 0 & 1 \\ 2 & 1 & 4 \end{pmatrix}\) 的逆矩阵。
第一步:写出增广矩阵 $\((A | I) = \left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 3 & 0 & 1 & 0 & 1 & 0 \\ 2 & 1 & 4 & 0 & 0 & 1 \end{array} \right)\)$
第二步:消元过程
目标:第一列下方变为0
- \(r_2 \leftarrow r_2 - 3r_1\)
- \(r_3 \leftarrow r_3 - 2r_1\) $\(\left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 0 & -6 & 4 & -3 & 1 & 0 \\ 0 & -3 & 6 & -2 & 0 & 1 \end{array} \right)\)$
目标:第二列下方变为0,并简化第二行
- 为了计算方便,先交换 \(r_2\) 和 \(r_3\)(或者直接用 \(r_2\) 消 \(r_3\))。这里我们直接用 \(r_2\) 消 \(r_3\),注意 \(r_2\) 是 \(-3\),\(r_3\) 是 \(-6\),所以 \(r_3 \leftarrow r_3 - 2r_2\)。 $\(\left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 0 & -6 & 4 & -3 & 1 & 0 \\ 0 & 0 & 2 & 4 & -2 & 1 \end{array} \right)\)$
- 把 \(r_2\) 除以 \(-2\)(或者 \(r_3\) 除以 \(2\)),让主元变1。
- \(r_3 \leftarrow r_3 / 2\)
- \(r_2 \leftarrow r_2 / (-2)\) 得到 \((0, 3, -2 | 1.5, -0.5, 0)\),好像分数有点麻烦,我们换种策略,先把 \(r_3\) 处理干净。
让我们重新整理一下,避免过早引入分数。 当前: $\(\left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 0 & -6 & 4 & -3 & 1 & 0 \\ 0 & 0 & 2 & 4 & -2 & 1 \end{array} \right)\)$
\(r_3 \leftarrow r_3 / 2\): $\(\left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 0 & -6 & 4 & -3 & 1 & 0 \\ 0 & 0 & 1 & 2 & -1 & 0.5 \end{array} \right)\)$
用 \(r_3\) 消去上方的元素:
\(r_2 \leftarrow r_2 - 4r_3\):\(4 - 4(1) = 0\);右边:\(-3 - 4(2) = -11\),\(1 - 4(-1) = 5\),\(0 - 4(0.5) = -2\)
\(r_1 \leftarrow r_1 + r_3\):\(-1 + 1 = 0\);右边:\(1 + 2 = 3\),\(0 - 1 = -1\),\(0 + 0.5 = 0.5\)
当前矩阵: $\(\left( \begin{array}{ccc|ccc} 1 & 2 & 0 & 3 & -1 & 0.5 \\ 0 & -6 & 0 & -11 & 5 & -2 \\ 0 & 0 & 1 & 2 & -1 & 0.5 \end{array} \right)\)$
目标:第二行主元变为1
- \(r_2 \leftarrow r_2 / (-6)\) $\(\left( \begin{array}{ccc|ccc} 1 & 2 & 0 & 3 & -1 & 0.5 \\ 0 & 1 & 0 & \frac{11}{6} & -\frac{5}{6} & \frac{1}{3} \\ 0 & 0 & 1 & 2 & -1 & 0.5 \end{array} \right)\)$
目标:用 \(r_2\) 消去 \(r_1\) 的第二列元素
- \(r_1 \leftarrow r_1 - 2r_2\)
- 第一列:\(3 - 2(\frac{11}{6}) = 3 - \frac{11}{3} = \frac{9-11}{3} = -\frac{2}{3} = \frac{-16}{24}\)? 等等,让我们用分母24来统一一下,避免小数误差。
让我们回溯到第一步,用整数运算可能更清晰。
重新计算初等变换(避免早期分数):
初始: $\(\left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 3 & 0 & 1 & 0 & 1 & 0 \\ 2 & 1 & 4 & 0 & 0 & 1 \end{array} \right)\)$
\(r_2 - 3r_1\), \(r_3 - 2r_1\): $\(\left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 0 & -6 & 4 & -3 & 1 & 0 \\ 0 & -3 & 6 & -2 & 0 & 1 \end{array} \right)\)$
\(r_2 \leftrightarrow r_3\) (让左上角小一点): $\(\left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 0 & -3 & 6 & -2 & 0 & 1 \\ 0 & -6 & 4 & -3 & 1 & 0 \end{array} \right)\)$
\(r_3 - 2r_2\): $\(\left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 0 & -3 & 6 & -2 & 0 & 1 \\ 0 & 0 & -8 & 1 & 1 & -2 \end{array} \right)\)$
现在回代:
\(r_2 \leftarrow r_2 / (-3)\): $\(\left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 0 & 1 & -2 & \frac{2}{3} & 0 & -\frac{1}{3} \\ 0 & 0 & -8 & 1 & 1 & -2 \end{array} \right)\)$
\(r_3 \leftarrow r_3 / (-8)\): $\(\left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 0 & 1 & -2 & \frac{2}{3} & 0 & -\frac{1}{3} \\ 0 & 0 & 1 & -\frac{1}{8} & -\frac{1}{8} & \frac{1}{4} \end{array} \right)\)$
\(r_2 \leftarrow r_2 + 2r_3\): 右边第三列:\(-\frac{1}{3} + 2(\frac{1}{4}) = -\frac{1}{3} + \frac{1}{2} = \frac{1}{6}\) 右边第一列:\(\frac{2}{3} + 2(-\frac{1}{8}) = \frac{2}{3} - \frac{1}{4} = \frac{5}{12}\) 右边第二列:\(0 + 2(-\frac{1}{8}) = -\frac{1}{4}\)
$\(\left( \begin{array}{ccc|ccc} 1 & 2 & -1 & 1 & 0 & 0 \\ 0 & 1 & 0 & \frac{5}{12} & -\frac{1}{4} & \frac{1}{6} \\ 0 & 0 & 1 & -\frac{1}{8} & -\frac{1}{8} & \frac{1}{4} \end{array} \right)\)$
\(r_1 \leftarrow r_1 + r_3\): 右边第一列:\(1 - \frac{1}{8} = \frac{7}{8}\)? 不对,$1 + (-\frac{1}{8
