贡献者: LittleFeng; int256; addis; Giacomo
1. 低维简单例子
二元一次方程组
在许多实际生活中,我们往往需要解决类似的问题:
小明拿着家长给的 $100$ 元去超市买饮料。超市里有 $3$ 元钱一瓶的可口可乐和 $5$ 元钱一瓶的奶茶,最后他带着 $28$ 瓶饮料回家过暑假了。求问小明买了多少瓶可口可乐,多少瓶奶茶?
这个问题实际上是一个二元一次方程组的问题,我们设小明买了 $x$ 瓶可口可乐,$y$ 瓶奶茶,可以列出一个方程组:
\begin{equation}
\left\{\begin{aligned}
100 &= 3x + 5y & &(a)\\
28 &= x + y & &(b)~.\\
\end{aligned}\right. \end{equation}
一个简单的解决方法是计算 $(a)-3 \cdot (b)$,得到 $16 = 0x + 2y$ 即 $y = 8$,进一步就知道 $x = 20$.
三元一次方程组
类似的在三维坐标系里面,考察三个平面:$S_1:x - 3y-2z=3$,$S_2:-2x+y-4z=-9$ 与 $S_3:-x+3y-z=-7$ 的交点。
那么这个问题等价于解决如下三元一次方程组:
\begin{equation}
\left\{\begin{aligned}
x - 3y - 2z &= 3\\
- 2x + y - 4z &= -9\\
- x + 3y - z &= -7~.\\
\end{aligned}\right. \end{equation}
解得
\begin{equation}
\left\{\begin{aligned}
x &= 2\\
y &= -1\\
z &= 1~.\\
\end{aligned}\right. \end{equation}
那么 $(2,-1,1)$ 就是三维坐标系中平面 $S_1$,$S_2$ 与 $S_3$ 的交点。
2. 一般情况下的定义
一般的,形如:
\begin{equation}
\left\{\begin{aligned}
a_{1,1}x_1 + a_{1,2}x_2 + \dots + a_{1,n}x_n &= y_1~,\\
a_{2,1}x_1 + a_{2,2}x_2 + \dots + a_{2,n}x_n &= y_2~,\\
\vdots \\
a_{m,1}x_1 + a_{m,2}x_2 + \dots + a_{m,n}x_n &= y_m~. \end{aligned}\right.
\end{equation}
的等式组统称为线性方程组,也可以根据其未知数的个数称为 $n$ 元一次方程组。
其中 $x_1\dots x_n$ 为 $n$ 个未知量(又称元),$y_1\dots y_m$ 与 $a_{1,1} ,a_{1,2}\dots a_{1,n},a_{2,1} \dots a_{n,m}$ 为给定的系数。(形如 $a_{i.j}$ 的系数表示它是方程组中第 $i$ 个方程的 $x_j$ 对应的系数,也即第 $i$ 行第 $j$ 列系数)
3. 求解线性方程组
对于一个 $n$ 元一次方程组:有 $n$ 个等式的一般可解且有唯一解;低于 $n$ 个等式的将会有自由元(也就是会有未知量可以取任意实数,解不唯一);多于 $n$ 个等式的,一般等式间有冲突,无冲突的有唯一解。
解不唯一的时候,可以通过假定某些未知量为常数,解出未知量之间的关系式。
求解线性方程组,我们考虑如下有 $n$ 个等式的 $n$ 元一次方程组,
\begin{equation}
\left\{\begin{aligned}
a_{1,1}x_1 + a_{1,2}x_2 + \dots + a_{1,n}x_n &= y_1~,\\
a_{2,1}x_1 + a_{2,2}x_2 + \dots + a_{2,n}x_n &= y_2~,\\
\vdots \\
a_{n,1}x_1 + a_{n,2}x_2 + \dots + a_{n,n}x_n &= y_n~. \end{aligned}\right.
\end{equation}
对于这样一个方程组,我们的做法是 “消元” 求解,不停地利用上面的行乘以某个倍数,使得可以与下面某行消掉一个或多个未知量(这个做法在将来会叫做初等行变换)。
首先我们可以通过交换各个方程(也就是各行)的顺序,让第一行的 $x_1$ 的系数非零。
我们让第一行的作用是消元掉第一行往后每行的 $x_1$,第二行的作用是消元掉第二行往后每行的 $x_2$(如果第二个未知数的系数为 $0$,我们考虑与下面的某行交换使得他不为 $0$),...,第 $k$ 行的作用是消元掉第 $k$ 行往后每行的 $x_k$。这样最终最后的一行(第 $n$ 行)将只剩 $x_n$ 这个未知数,可以解这个一元一次方程得到其值,将其反代回上面的各个方程,在倒数第二行此时将只剩下 $x_{n-1}$ 这个未知数,可以解得其值,再反代,...,依此类推,求得各个未知量 $x_i$ 的值。
如果中间的过程出现了某行是形如 “常数=常数” 的,这将对于一个恒成立的等式,要考虑这个方程组的其他方程,如果有解(或解不唯一)则这方程组解不唯一、如果其他方程无解则这方程组无解;如果这个等式是恒不成立的(例如得到了 $3=4$),则方程组无解。
下面通过举例说明解方程组的过程。
例 1
\begin{equation}
\left\{\begin{aligned}
& 4x_2 + 4x_3 + 3x_4= 2~, &\cdots (*1)\\
6x_1 + & 4x_2 + 9x_3 + 2x_4= 5~, &\cdots (*2)\\
3x_1 + & 2x_2 + 5x_3 + 4x_4= 7~, &\cdots (*3)\\
9x_1 + & 3x_2 + 7x_3 + 8x_4= 9~. &\cdots (*4)
\end{aligned}\right.
\end{equation}
解:
首先,考虑用 $(*1)$ 式消元掉未知数 $x_1$,发现 $(*1)$ 式的 $x_1$ 项系数为 $0$,与一个 $x_1$ 项系数非零的式子交换。不妨与 $(*2)$ 式交换,得到
\begin{equation}
\left\{\begin{aligned}
6x_1 + & 4x_2 + 9x_3 + 2x_4= 5~, &\cdots (*2)\\
& 4x_2 + 4x_3 + 3x_4= 2~, &\cdots (*1)\\
3x_1 + & 2x_2 + 5x_3 + 4x_4= 7~, &\cdots (*3)\\
9x_1 + & 3x_2 + 7x_3 + 8x_4= 9~. &\cdots (*4)
\end{aligned}\right.
\end{equation}
发现第二个式子 $(*1)$ 不带 $x_1$ 项,幸运的不用消元,跳过其,对第三个式子 $(*3)$ 做消元。
观察 $x_1$ 的系数比,$(*2)$ 是 $(*3)$ 的 $2$ 倍,故将 $(*2)/2$ 并与 $(*3)$ 相减,得到 $(*2)/2-(*3)$ 的结果为
$$
(6x_1 + 4x_2 + 9x_3 + 2x_4)/2 - (3x_1 + 2x_2 + 5x_3 + 4x_4) = 5/2 - 7~,
$$
即
$$-\frac12 x_3 - 3x_4 = - \frac 92 ~,$$
可以化为 $x_3 + 6x_4 = 9$,用这替换掉 $(*3)$ 得到原方程组化为
\begin{equation}
\left\{\begin{aligned}
6x_1 + 4x_2 +9x_3 + 2x_4&= 5~, &\cdots (*2)\\
4x_2 +4x_3 + 3x_4&= 2~, &\cdots (*1)\\
x_3 + 6x_4 &= 9~, &\cdots (*5)\\
9x_1 + 3x_2 +7x_3 + 8x_4&= 9~. &\cdots (*4)
\end{aligned}\right.
\end{equation}
类似的,观察系数比,发现应当将 $(*2)/2\times3$ 后与 $(*4)$ 相减,得到 $(*2)/2\times3-(*4)$,结果为
$$
(6x_1 + 4x_2 +9x_3 + 2x_4)/2\times3-(9x_1 + 3x_2 +7x_3 + 8x_4) = 5/2\times 3-9~,
$$
即
$$
3x_2+(13/2) x_3-5x_4 = -3/2 ~,
$$
可化为 $6x_2 + 13x_3 - 10x_4 = -3$,将其替换 $(*4)$ 后原方程组化为
\begin{equation}
\left\{\begin{aligned}
6x_1 + 4x_2 +~~9x_3 + ~~2x_4&= 5~, &\cdots (*2)\\
4x_2 +~~4x_3 + ~~3x_4&= 2~, &\cdots (*1)\\
x_3 + ~~6x_4 &= 9~, &\cdots (*5)\\
6x_2 + 13x_3 - 10x_4 &= -3~. &\cdots (*6)
\end{aligned}\right.
\end{equation}
接下来考虑用第二个式子消掉第二个未知量 $x_2$。第二个式子 $(*1)$ 的 $x_2$ 项系数不为零,不用交换。同时注意到第三个式子 $(*5)$ 的 $x_2$ 项系数幸运的刚好为 $0$ 不用消元,考虑对现在的第四个式子 $(*6)$ 做消元。
观察系数比,发现 $(*1)$ 的 $x_2$ 项系数是 $(*6)$ 的 $2/3$,故将 $(*1)/(2/3)$ 后与 $(*6)$ 相减,得到 $(*1)/2\times 3-(*6)$,结果为
$$
(4x_2 +4x_3 + 3x_4)/2\times3-(6x_2 + 13x_3 - 10x_4)=2/2\times3-(-3)~,
$$
即
$$
-7x_3 + (29/2) x_4 = 6 ~,
$$
可化为 $-14x_3 + 29x_4 = 12$,将其替换掉 $(*6)$,原方程组可化为
\begin{equation}
\left\{\begin{aligned}
6x_1 + 4x_2 +~~9x_3 + ~~2x_4&= 5~~~, &\cdots (*2)\\
4x_2 +~~4x_3 + ~~3x_4&= 2~~~, &\cdots (*1)\\
x_3 + ~~6x_4 &= 9~~~, &\cdots (*5)\\
-14x_3 + 29x_4&= 12~. &\cdots (*7)
\end{aligned}\right.
\end{equation}
接下来是用第三个式子 $(*5)$ 消元掉后面式子(实际仅有第四个式子 $(*7)$)的第三个未知量 $x_3$。对比 $(*5)$ 与 $(*7)$ 的 $x_3$ 项系数比,发现 $(*5) \times (-14)$ 后与 $(*6)$ 系数相同,于是考虑 $(*5)\times (-14) - (*7)$,得到
$$
(x_3+6x_4)\times (-14)-(-14x_3+29x_4)=9\times(-14)-12~,
$$
即 $ -113x_4 = -138 $,可化为 $113x_4=138$,将其替换掉原方程组的第四个式子,得到
\begin{equation}
\left\{\begin{aligned}
6x_1 + 4x_2 +9x_3 + 2x_4&= 5~~~, &\cdots (*2)\\
4x_2 +4x_3 + 3x_4&= 2~~~, &\cdots (*1)\\
x_3 + 6x_4 &= 9~~~, &\cdots (*5)\\
113x_4&= 138~. &\cdots (*8)
\end{aligned}\right.
\end{equation}
现在开始从下向上往回解,并反代各个未知量的值。
由 $(*8)$ 可知 $x_4 = 138/113$,将其代入其前面(在写的过程中体现为 “上面”)的式子 $(*2), (*1), (*5)$ 得
\begin{equation}
\left\{\begin{aligned}
6x_1 + 4x_2 +9x_3 + 2\cdot \frac{138}{113}&= 5~~~, &\cdots (*2)\\
4x_2 +4x_3 + 3\cdot \frac{138}{113}&= 2~~~, &\cdots (*1)\\
x_3 + 6\cdot \frac{138}{113} &= 9~~~, &\cdots (*5)\\
x_4 &= \frac{138}{113} ~.
\end{aligned}\right.
\end{equation}
解倒数第二式的方程可得,$x_3 = 189/113$,将其代入其前面的式子 $(*2), (*1)$ 得
\begin{equation}
\left\{\begin{aligned}
6x_1 + 4x_2 +9\cdot \frac{189}{113} + 2\cdot \frac{138}{113}&= 5~~~, &\cdots (*2)\\
4x_2 +4\cdot \frac{189}{113} + 3\cdot \frac{138}{113}&= 2~~~, &\cdots (*1)\\
x_3 &= \frac{189}{113} ~,\\
x_4 &= \frac{138}{113} ~.
\end{aligned}\right.
\end{equation}
解倒数第三式的方程可得,$x_2 = -236/113$,将其带入其前面的式子 $(*2)$ 得
\begin{equation}
\left\{\begin{aligned}
6x_1 + 4\cdot \left(-\frac{236}{113}\right)+9\cdot \frac{189}{113} + 2\cdot \frac{138}{113}&= 5~~~, &\cdots (*2)\\
x_2 &= -\frac{236}{113} ~,\\
x_3 &= \frac{189}{113} ~,\\
x_4 &= \frac{138}{113} ~.
\end{aligned}\right.
\end{equation}
解 $(*2)$ 的方程得 $x_1 = -78/113$。这就将所有的未知数解出,故原方程组的解为
\begin{equation}
\left\{\begin{aligned}
x_1 &= -\frac{78}{113}\\
x_2 &= -\frac{236}{113}\\
x_3 &= \frac{189}{113} \\
x_4 &= \frac{138}{113}
\end{aligned}\right. ~~
\end{equation}
可以代回检验得这结果是正确的。
对于一个方程组的解不唯一的情况,一个例子是:
\begin{equation}
\left\{\begin{aligned}
x_1 + 2x_2 &= 3 ~,\\
3x_1 + 6x_2 &= 6 ~.
\end{aligned}\right.
\end{equation}
我们发现上面的式子乘以 $3$ 之后与下面的式子完全相同,也就是第二个式子是 “毫无作用的”(以后会称第二个式子为可以被前面
线性表示)。实际情况还可能例如
\begin{equation}
\left\{\begin{aligned}
x_1 + ~~2x_2 + 3x_3&= 3 ~,\\
3x_1 + ~~6x_2 + 2x_3 &= 6 ~, \\
5x_1 + 10x_2 + ~~x_3 &= 9 ~.
\end{aligned}\right.
\end{equation}
我们发现第三个式子是可以被前面两个式子表示的(第二个式子的 $2$ 倍减去第一个式子),即他可以被
线性表示,所以这个方程组解不唯一。
类似的,如果仍为刚才这个方程组但是第三个式子右侧改为 $10$:
\begin{equation}
\left\{\begin{aligned}
x_1 + ~~2x_2 + 3x_3&= 3 ~,\\
3x_1 + ~~6x_2 + 2x_3 &= 6 ~, \\
5x_1 + 10x_2 + ~~x_3 &= 10 ~.
\end{aligned}\right.
\end{equation}
这将使得第三个式子与前面两个式子冲突,也就是对应方程组
无解的情况。
致读者: 小时百科一直以来坚持所有内容免费无广告,这导致我们处于严重的亏损状态。 长此以往很可能会最终导致我们不得不选择大量广告以及内容付费等。 因此,我们请求广大读者
热心打赏 ,使网站得以健康发展。 如果看到这条信息的每位读者能慷慨打赏 20 元,我们一周就能脱离亏损, 并在接下来的一年里向所有读者继续免费提供优质内容。 但遗憾的是只有不到 1% 的读者愿意捐款, 他们的付出帮助了 99% 的读者免费获取知识, 我们在此表示感谢。