考虑 n 元的线性方程组 (这里 x1,⋯,xn 是未知变量) ⎩⎨⎧a11x1+a12x2+⋯+a1nxna21x1+a22x2+⋯+a2nxn⋮am1x1+am2x2+⋯+amnxn=b1=b2⋮=bm这是最基本的一类代数方程组, 有广泛的应用. 我们在本节讨论线性方程组的求解方法.
消元法与初等变换
我们首先看一个具体例子. 考虑以下线性方程组: x+2y+z2x+5y+3zx+4y+6z=6=15=21(1)(2)(3)将 (1) 的 −2 倍加到 (2), (1) 的 −1 倍加到 (3), 得到等价的方程组x+2y+zy+z2y+5z=6=3=15(1)(2′)(3′)将 (2′) 的 −2 倍加到 (3′), 得到x+2y+zy+z3z=6=3=9(1)(2′)(3′′)
由 (3′′) 得到 z=3. 将 z=3 代入 (2′), 得到 y+3=3, 故 y=0. 将 y=0 和 z=3 代入 (1), 得到 x+0+3=6, 故 x=3. 方程组的解为x=3,y=0,z=3.
总结如上过程, 消元法给出线性方程组的三种初等变换:
1. | 交换两行: 将方程组中的两个方程交换位置. |
2. | 将方程组中的一个方程乘以一个非零常数. |
3. | 将一个方程乘以一个数加到另一个方程. |
这些初等变换不改变方程组的解, 可用来简化方程, 是求解线性方程组的基本方法. 具体而言a11x1+a12x2+⋯+a1nxna21x1+a22x2+⋯+a2nxnam1x1+am2x2+⋯+amnxn=b1=b2⋮=bm(r1)(r2)⋮(rm)三种初等变换可以表示为:
1. | 交换第 i 行和第 j 行: (ri)↔(rj) |
2. | 第 i 行乘以非零常数 λ: (ri)→λ(ri) |
3. | 第 i 行的 λ 倍加到第 j 行: (rj)→(rj)+λ(ri) |
x+2y2x+3y=4=7我们可以进行以下初等变换: 将第一行的 −2 倍加到第二行. 得到等价的新的方程组: x+2y−y=4=−1由此解出 y=1,x=2.
(谷神星的发现和轨道预测)
1801 年, 意大利天文学家皮亚齐发现了小行星谷神星 (Ceres) . 然而, 在观测了 40 天后, 谷神星运行到太阳背后, 从人们的视野中消失了, 要到年底才可能再次见到谷神星. 由于观测数据有限, 天文学家们无法确定谷神星的轨道, 从而无法预测它再次出现的位置.
高斯当时年仅 24 岁, 利用开普勒定律和皮亚齐的观测数据, 将谷神星的轨道计算转化和近似为一个线性方程组, 使用消元法求解该方程组, 预测出了谷神星的轨道参数. 高斯的预测非常精确, 谷神星在一年后被重新发现, 位置与高斯的预测非常接近. 这一事件使得高斯声名鹊起, 也大大推动了线性方程组和线性代数的理论和方法.
线性方程组的矩阵形式
线性方程组可以写成矩阵的形式
Ax=b⟺⎩⎨⎧a11x1+a12x2+⋯+a1nxna21x1+a22x2+⋯+a2nxn⋮am1x1+am2x2+⋯+amnxn=b1=b2⋮=bm这里A=⎣⎡a11a21⋮am1a12a22⋮am2⋯⋯⋯⋯a1na2n⋮amn⎦⎤x=⎣⎡x1x2⋮xn⎦⎤b=⎣⎡b1b2⋮bm⎦⎤
我们也可以把整个线性方程组的信息可以写成一个 m×(n+1) 矩阵A=[Ab]=⎣⎡a11a21⋮am1a12a22⋮am2⋯⋯⋯⋯a1na2n⋮amnb1b2⋮bm⎦⎤A 称为系数矩阵, A 称为增广矩阵.
线性方程组的初等变换, 等价于对 A 作行变换. 例如把第一个方程乘以 λ 加到第二个方程
⎣⎡a11a21⋮am1a12a22⋮am2⋯⋯⋯⋯a1na2n⋮amnb1b2⋮bm⎦⎤⟹⎣⎡a11a21+λa11⋮am1a12a22+λa12⋮am2⋯⋯⋯⋯a1na2n+λa1n⋮amn、b1b2+λb1⋮bm⎦⎤
对应于线性方程组的初等变换, 我们定义矩阵的三种初等行变换为
1. | 交换两行: 将矩阵的两行交换位置. |
2. | 将矩阵中的一行乘以一个非零常数. |
3. | 将矩阵的一行乘以一个数加到另一行. |
从而利用消去法解线性方程组的过程, 可以等价地用对增广矩阵作初等行变换来表示.
通过初等行变换可以把增广矩阵变为如下阶梯形
⎣⎡a1p1′⋯⋯a2p2′⋯⋯⋯⋯⋯⋯⋯⋯arpr′⋯⋯⋯⋯a1n′a2n′⋮arn′b1′b2′⋮br′br+1′⋮bm′⎦⎤其中空白处的矩阵元都是 0.
证明方法和用消去法解方程的过程是一致的.
考虑如下的线性方程组, 我们写成矩阵的形式⎩⎨⎧x+2y+z=62x+4y+5z=15x+4y+6z=21⟺⎣⎡12124415661521⎦⎤
我们可以通过如下的初等行变换变为阶梯形
⎣⎡12124415661521⎦⎤第1行×(−2)⟹加到第2行⎣⎡1012041366321⎦⎤第1行×(−1)⟹加到第3行⎣⎡1002021356315⎦⎤交换⟹第2,3行⎣⎡1002201536153⎦⎤
假如我们已经将一个线性方程组的增广矩阵化成了如下的阶梯形矩阵⎣⎡a1p1′⋯⋯a2p2′⋯⋯⋯⋯⋯⋯⋯⋯arpr′⋯⋯⋯⋯a1n′a2n′⋮arn′b1′b2′⋮br′br+1′⋮bm′⎦⎤那么阶梯形矩阵最后几行对应的方程为⎩⎨⎧0=br+1′⋯0=bm′如果其中 br+1′,⋯,bm′ 有非零元, 则原方程无解.
考虑如下的线性方程组, 将其写成增广矩阵的形式⎩⎨⎧x+y+z=32x+3y+5z=4x+2y+4z=2⟺⎣⎡121132154342⎦⎤通过初等行变换⎣⎡121132154342⎦⎤⇒⎣⎡1011121343−22⎦⎤⇒⎣⎡1001111333−2−1⎦⎤⇒⎣⎡1001101303−21⎦⎤因此原线性方程组无解.
线性方程组有解的充要条件是增广矩阵通过初等行变换化成阶梯形矩阵后br+1′=⋯=bn′=0.
证明: 我们上面已经说明了必要性. 下面我们证明充分性. 假设
br+1′=⋯=bn′=0, 则原线性方程组等价于如下的阶梯形方程
⎣⎡a1p1′⋯⋯a2p2′⋯⋯⋯⋯⋯⋯⋯⋯arpr′⋯⋯⋯⋯a1n′a2n′⋮arn′b1′b2′⋮br′⎦⎤这里
a1p1′,⋯,arpr′ 均不为
0. 从最后一个方程
arpr′xpr+⋯=br′可以解出
xpr, 然后代入前面方程解出
xpr−1. 依次类推可以找到方程的解 (解可能不唯一) .
考虑如下的线性方程组, 将其写成矩阵的形式⎩⎨⎧x+y+z=32x+3y+5z=4x+2y+4z=1⟺⎣⎡121132154341⎦⎤做初等行变换⎣⎡121132154341⎦⎤⇒⎣⎡1011121343−21⎦⎤⇒⎣⎡1001111333−2−2⎦⎤⇒⎣⎡1001101303−20⎦⎤最后这个增广矩阵对应于方程⎣⎡1001101303−20⎦⎤⟺{x+y+z=3 y+3z=−2由此可以解出 ⎩⎨⎧x=2c+5y=−2−3cz=c 这里 c 是任意常数.
总结上述讨论可知:
1. | 线性方程组可以通过初等变换化简. |
2. | 线性方程组可能没有解. |
3. | 线性方程组如果有解, 解可能不唯一. |
齐次线性方程组
如下方程称为齐次线性方程组⎩⎨⎧a11x1+a12x2+⋯+a1nxna21x1+a22x2+⋯+a2nxn⋮am1x1+am2x2+⋯+amnxn=0=0⋮=0即对应于 b1=⋯=bm=0 的情况. 矩阵表达为Ax=0.之前 bi 不全为 0 的情况称为非齐次线性方程组.
注意到齐次线性方程组总是有解的: x1=⋯xn=0是一个解, 称为零解或者平凡解. 一个值得关心的问题是, 齐次线性方程组是否有非平凡解?
这个问题和线性方程组解的唯一性密切相关. 设 x0,x1 是非齐次线性方程 Ax=b 的解, 即Ax0=bAx1=b两式相减我们得到 A(x1−x0)=0, 即 x1−x0 是齐次线性方程组的解.
反之, 如果 u 是齐次线性方程组的解 Au=0, x0 是非齐次线性方程组的解 Ax0=b. 则A(x0+u)=Ax0+Au=b+0=b即 x0+u 也是非齐次线性方程组的解.
因此非齐次线性方程组 Ax=b 的一般解是x=x0+u这里 x0 是非齐次方程组的一个特解 (Ax0=b) , u 是齐次方程组的一般解 (Au=0) . 即非齐次通解=非齐次特解+齐次通解当然如果特解不存在, 则非齐次方程组没有解.
如果齐次线性方程组只有零解, 则非齐次线性方程组的解是唯一的 (如果解存在) .