如何快速地写出方程组的解?

在教材上,通常求解方程组的时候,是将系数矩阵(coefficient matrix)或者增广矩阵(argument matrix)作初等行变换(row reduction)化成行阶梯形(row echelon form),然后写出它所对应的方程来求解。其实,这样的方法并不简便,特别是写回对应的方程,基本上是没有必要这样做。更有效的方法是将矩阵化成最简单的情形(Reduced row echelon form),然后根据系数直接写出解。我们用两个例子来说明这种方法。

我们行看一个齐次方程:

例1:求解线性方程组 \(A\vec{x}=0\),其中
\[A=
\begin{pmatrix}
1& 1& 2& 3\\
2& 0& 0& 2\\
3 &2& 4& 7
\end{pmatrix}\]

解:利用初等行变换,将系数矩阵化成行最简矩阵(我们省略具体步骤):

\[A=\begin{pmatrix}
1& 1& 2& 3\\
2& 0& 0& 2\\
3 &2& 4& 7
\end{pmatrix}
\sim
\begin{pmatrix}
1& 0& 0& 1\\
0 &1& 2& 2\\
0& 0&0& 0\\
\end{pmatrix}
\]

现在我们用一种比较快速的方法写出解。

我们知道每一个非零行的第一个非零元(pivot number) 所对应的未知元就是依赖元或者自由元(dependent variables),其它的叫自由元(free variables)。这里,自由元就是 \(x_3\) 和 \(x_4\),而非自由元是\(x_1,x_2\)。如果要快速地写出方程的解,可以这样作:

第一步,每次取一个自由元为 \(1\), 另外的所有自由元为 \(0\), 在这个题里,就是这样

\[\begin{pmatrix}
x_1\\
x_2\\
x_3\\x_4
\end{pmatrix}=x_3
\begin{pmatrix}
\\
\\
1\\
0
\end{pmatrix}+x_4
\begin{pmatrix}
\\
\\
0\\
1
\end{pmatrix}
\]

第二步,写出剩下的数字。剩下的数字怎么求呢? 我们只需要将自由元上的系数变个符号,就是非自由元的值。第一行,非自由元是 \(x_1\),它对应的 \(x_3\) 的系数是 \(0\),所以它在 \(x_3\) 那一部分的值是 \(0\);它对应 \(x_4\) 的系数是 \(1\),所以它对应于\(x_4\) 的部分是 \(-1\), 就是将 \(1\) 改个符号。就是这样:

\[\begin{pmatrix}
x_1\\
x_2\\
x_3\\x_4
\end{pmatrix}=x_3
\begin{pmatrix}
0\\
\\
1\\
0
\end{pmatrix}+x_4
\begin{pmatrix}
-1\\
\\
0\\
1
\end{pmatrix}
\]

而第二行,非自由元是 \(x_2\),它对应的 \(x_3\) 的系数是 \(2\),所以它在 \(x_3\) 那一部分的值是 \(-2\);它对应 \(x_4\) 的系数是 \(2\),所以它对应于\(x_4\) 的部分是 \(-2\)。所以方程的解就是

\[\begin{pmatrix}
x_1\\
x_2\\
x_3\\x_4
\end{pmatrix}=x_3
\begin{pmatrix}
0\\
-2\\
1\\
0
\end{pmatrix}+x_4
\begin{pmatrix}
-1\\
-2\\
0\\
1
\end{pmatrix}
\]

那么对于非齐次方程,怎么快速地写出解呢?由线性方程组解的理论可以知道,非齐次方程的解由两部分组成,一部分是对应齐次方程的解,另一部分就是非齐次方程的一个特解。这个特解其实也很好求的,我们用例子来说明。

例2:求解线性方程组 \(A\vec{x}=\vec{b}\),其中
\[A=
\begin{pmatrix}
1& 1& 2& 3\\
2& 0& 0& 2\\
3 &2& 4& 7
\end{pmatrix}\quad
\vec{b}=
\begin{pmatrix}
1\\
4\\
4
\end{pmatrix}
\]

解:利用初等行变换,将系数矩阵化成行最简矩阵:

\[
A=
\begin{pmatrix}
1& 1& 2& 3 &\vdots& 1\\
2& 0& 0& 2&\vdots& 4\\
3 &2& 4& 7 &\vdots& 4
\end{pmatrix}
\sim
\begin{pmatrix}
1& 0& 0&1 &\vdots&2\\
0& 1& 2& 2&\vdots& -1\\
0 &0& 0& 0&\vdots& 0
\end{pmatrix}
\]
我们知道,非齐次方程的通解是对应齐次方程的通解加上非齐次方程的一个特解。齐次方程的解,我们只要不看上式里最后一列,就跟前面的例子一样。所以对应齐次方程的通解是
\[\vec{x}=x_3
\begin{pmatrix}
0\\
-2\\
1\\
0
\end{pmatrix}+x_4
\begin{pmatrix}
-1\\
-2\\
0\\
1
\end{pmatrix}
\]

那么,非齐次方程的特解怎么得到呢?很简单,我们只要令自由元的值都为\(0\), 而非自由元的值就是对应的最后一列的值。所以,非齐次方程的一个特解就是
\[\vec{\eta}=\begin{pmatrix}
2\\
-1\\
0\\
0
\end{pmatrix}\]

所以,非齐次方程的通解是
\[
\vec{\xi}=\vec{x}+\vec{\eta}=x_3
\begin{pmatrix}
0\\
-2\\
1\\
0
\end{pmatrix}+x_4
\begin{pmatrix}
-1\\
-2\\
0\\
1
\end{pmatrix}+
\begin{pmatrix}
2\\
-1\\
0\\
0
\end{pmatrix}
\]

Posted in 线性代数.