(7)求解Ax=0,主变量和特解

这一节介绍求解Ax=0,主变量和特解。本节的内容重点将从定义转向算法(turning the definition into an algorithm)。让我们来看看求解Ax=0的算法是怎样的。

1. 求解\(Ax=0\)的基础算法

我们从一个例子着手

\( A=\begin{bmatrix}1&2&2&2\\2&4&6&8\\3&6&8&10\end{bmatrix}\)
对于矩阵\(A\)消元,在消元过程中它的零空间不会改变,通过消元解\(Ax=0\)


\( A \to \begin{bmatrix}1&2&2&2\\0&0&2&4\\0&0&2&4\end{bmatrix} \to \begin{bmatrix}1&2&2&2\\0&0&2&4\\0&0&0&0\end{bmatrix} = U \)
我们把矩阵\( U \)中主元所在的列称为主列(pivot columns),其它的列称为自由列(free columns)

这里可以看出,矩阵的秩在算法中的意义。矩阵中主元的数量就是矩阵的秩。
rank of \(A\) = number of pivots
对于上面的矩阵\(A\),它的主元的数量也就是它的秩为2。

自由列,顾名思义表示可以自由或任意分配数值,通常我们依次赋值为1和0。

原方程\(Ax=0\)就可以得出
\( \begin{bmatrix}*\\1\\*\\0\end{bmatrix}\)解得\( x=\begin{bmatrix}-2\\1\\0\\0\end{bmatrix}, 或\begin{bmatrix}*\\0\\*\\1\end{bmatrix}\)解得\( x=\begin{bmatrix}2\\0\\-2\\1\end{bmatrix} \)
两个特解

两个特解的所有线性组合
\( x=c \begin{bmatrix}-2\\1\\0\\0\end{bmatrix} +d \begin{bmatrix}2\\0\\-2\\1\end{bmatrix}\)
就是\(Ax=0\)的解

对本例子而言,矩阵\(A\)的秩\(r=2\),表示它的主变量的个数也就是主元的个数是2

对于\( (m\times n) \)矩阵,它有\(n\)个变量,若其秩为\(r\)即\(r\)个主变量,那么就有\( (n-r) \)个自由变量。

总结一下,求解\(Ax=0\)的完整算法

  • 首先是消元
  • 之后得到主元个数\(r\)
  • 剩下\( (n-r) \)个自由变量
  • 然后令自由变量依次取1和0,解出特解
  • 特解的线性组合构成\(Ax=0\)的解

2.简化行阶梯形式

\( R=reduced\; row\; echelon\; form \)

简化行阶梯形式中,主元上下全是\( 0 \),且主元为\(1\)

\( \begin{bmatrix}1&2&2&2\\0&0&2&4\\0&0&0&0\end{bmatrix} \to \begin{bmatrix}1&2&0&-2\\0&0&2&4\\0&0&0&0\end{bmatrix} \to \begin{bmatrix}1&2&0&-2\\0&0&1&2\\0&0&0&0\end{bmatrix}=R \)

Matlab中 rref( ) 就是求简化行阶梯形式的命令

简化行阶梯形式以最简形式包含了矩阵\(A\)的所有信息:
主行、主列、自由列,并且主行和主列的交汇处构成了一个单位阵\(I\)

这样方程\(\;Ax=0\;\)就进行了转化,\( Ax=0 \to Ux=0 \to Rx=0 \)

对于上面的例子,\(R\)的构成可以分解为
\( \qquad \begin{bmatrix}1&0\\0&1\end{bmatrix} \qquad \qquad \begin{bmatrix}2&-2\\0&2\end{bmatrix}\)
主列构成的单位阵\(I\) , 自由列构成的矩阵\(F\)

矩阵\(A\)的简化行阶梯形式(rref form)
\(R=\left[ \begin{array}{c|c} I & F \\ \hline 0 & 0 \end{array} \right],r个主行\)
\( \qquad r个主列,(n-r)个自由列\)
\( 若RN=0,则N=\begin{bmatrix}-F\\I \end{bmatrix} \)

再看一个例子:

\( A=\begin{bmatrix}1&2&3\\2&4&6\\2&6&8\\2&8&10\end{bmatrix} \to \begin{bmatrix}1&2&3\\0&0&0\\0&2&2\\0&4&4\end{bmatrix} \to \begin{bmatrix}1&2&3\\0&2&2\\0&0&0\\0&4&4\end{bmatrix} \to \begin{bmatrix}1&2&3\\0&2&2\\0&0&0\\0&0&0\end{bmatrix}=U \to \begin{bmatrix}1&0&1\\0&1&1\\0&0&0\\0&0&0\end{bmatrix}=R\)
\(r=2\),自由列数=3-2=1
\(x=c\begin{bmatrix}-1\\-1\\1\end{bmatrix}=c\begin{bmatrix}-F\\I\end{bmatrix},这里\begin{bmatrix}-F\\I\end{bmatrix}就是N\)