如何解线性方程组(三)之Minus-1 Trick,在下面,我们介绍了一个实用的技巧来读出一个齐次线性方程组Ax = 0的解x,其中A∈Rk×n,x∈Rn。
首先,我们假设A是行简化阶梯形,没有任何只包含0的行,例如:
![如何解线性方程组(三)之Minus-1 Trick 如何解线性方程组(三)之Minus-1 Trick](https://img.geek-docs.com/mathematical-basis/linear-algebra/trick-1.png)
在这里,∗ 可以是任意的实数,并且每一行的第一个非零项必须为1,而对应列中的所有其他项必须为0。列j1,…,jk与枢轴(粗体标记)是标准单位向量e1,...,ek∈R。我们通过添加n−k行下面这个形式把矩阵扩展到一个n×n矩阵A˜:
[0…0−10…0]
被增加的矩阵行
所以增广矩阵A˜的对角线包含1或- 1。
然后,以- 1为轴心的A˜的列为齐次方程组Ax = 0的解。更精确地说,这些列构成了Ax = 0的解空间的基础,我们稍后将其称为内核空间或空空间。
例:我们再来看看下面这个矩阵:
⎣⎡10030001000139−4⎦⎤
现在,我们通过在对角线上的枢轴缺失的地方添加[0…0−10…0]的行,将这个矩阵增广为5×5矩阵,得到:
![如何解线性方程组(三)之Minus-1 Trick 如何解线性方程组(三)之Minus-1 Trick](https://img.geek-docs.com/mathematical-basis/linear-algebra/trick-2.png)
从这个形式中,我们可以立即读出Ax = 0的解:取A˜对角线上含有-1的列:
![如何解线性方程组(三)之Minus-1 Trick 如何解线性方程组(三)之Minus-1 Trick](https://img.geek-docs.com/mathematical-basis/linear-algebra/trick-3.png)
计算逆
为了计算A∈Rn×n的逆A−1,我们需要找到一个满足AX=In的矩阵X。然后,X=A−1。我们可以把它写成一组线性方程组AX=In,其中我们解出X=[x1∣…∣xn]。我们用增广矩阵表示法来表示这组线性方程组的紧凑表示,并得到:
![如何解线性方程组(三)之Minus-1 Trick 如何解线性方程组(三)之Minus-1 Trick](https://img.geek-docs.com/mathematical-basis/linear-algebra/trick-4.png)
这意味着如果我们把增广方程组化成行简化阶梯形,我们就能读出方程组右边的逆矩阵。因此,确定矩阵的逆等价于求解线性方程组。
例:用高斯消元法计算逆矩阵
为了求得A的逆,其中A为:⎣⎡1111012120010011⎦⎤,我们写下增广矩阵:
,然后用高斯消元法把它化成行简化阶梯形
,这样所要求的逆就是它的右边:
A−1=⎣⎡−111−12−1−10−221−12−2−12⎦⎤
我们可以通过乘法AA−1来验证确实是逆:因为我们得到了AA−1=I4。
总结-如何解决线性方程组?
对于一个线性方程组Ax=b:
- 当矩阵A为方阵且可逆时,x=A−1b
- 矩阵A不是一个方阵,或者A是一个不可逆的方阵时,那么:x=(ATA)−1ATb。其中(ATA)−1AT为Moore-Penrose逆矩阵,也就是常说的伪逆。但由于上述方法耗费时间很久,所以实际运用时会使用迭代法来求解。