前面的文章关注的是方阵的逆矩阵,Ax=bAx=b有一个解的话它就是x=A−1bx=A^{-1}b,它可以通过消元法得到。一个长方形矩阵带来的新的可能性——UU可能没有所有的主元,本文我们就将UU 化为形式RR—— 消元法能给出的最简矩阵,RR立马给出所有解。

对于一个可逆矩阵,零空间只包含x=0x=0,列空间就是整个空间,当零空间不仅仅包含零向量而(或)列空间没有包含所有向量时新的问题出现了:

  1. 零空间里的任意向量xnx_n可以加到一个特解xpx_p 上,所有线性方程解的形式为x=xp+xnx=x_p+x_n:

    Axp=bAxn=0得到A(xp+xn)=b

    Ax_p=b\quad Ax_n=0\text{得到}A(x_p+x_n)=b

  2. 当列空间不包含RmR^m里的所有bb时,我们需要对bb添加限制使得Ax=bAx=b有解。

接下来我们举一个3×43\times 4的例子,将计算Ax=0Ax=0 的所有解,找出bb位于列空间(这样的话Ax=bAx=b就是可解的)的条件。首先考虑一个最简单的,对于1×11\times 1 系统的0x=b0x=b,一个方程和一个未知量有两种可能:

  1. 0x=b0x=b除了b=0b=0外无解,1×11\times 1矩阵的列空间只包含b=0b=0。
  2. 0x=00x=0有无限多个解,零空间包含所有的xx,一个个特解是xp=0x_p=0,完整解是x=xp+xn=x+(any x)x=x_p+x_n=x+(any\ x)

同样的现在开始考虑2×22\times 2的例子,对于第一行为1,第二行为2的矩阵是不可逆的:y+z=b1,2y+2z=b2y+z=b_1,2y+2z=b_2通常没有解。


图1

除了b2=2b1b_2=2b_1外没有其他解,AA的列空间只包含两元素比值为2的bb;当b2=2b1b_2=2b_1时,有无限多个解,y+z=2,2y+2z=4y+z=2,2y+2z=4的特解是xp=(1,1)x_p=(1,1),图1中AA的零空间包含(−1,1)(-1,1)以及它的倍数xn=(−c,c)x_n=(-c,c):

y2y++z2z==24完整解为xp+xn=[11]+c[−11]=[1−c1+c]

\begin{matrix} y&+&z&=&2\\2y&+&2z&=&4 \end{matrix}\quad \text{完整解为}\quad x_p+x_n= \begin{bmatrix} 1\\1 \end{bmatrix} + c \begin{bmatrix} -1\\1 \end{bmatrix}= \begin{bmatrix} 1-c\\1+c \end{bmatrix}

梯度形U和行最简形R

我们从3×43\times 4矩阵开始,首先得到UU进步一得到RR:

A=⎡⎣⎢12−136−3393274⎤⎦⎥

A=\begin{bmatrix} 1&3&3&2\\2&6&9&7\\-1&-3&3&4 \end{bmatrix}

主元a11=1a_{11}=1非零,通常的初等变换将使这个主元下面的元素变为零,而坏消息出现在第二列:

A→⎡⎣⎢100300336236⎤⎦⎥

A\to\begin{bmatrix} 1&3&3&2\\0&0&3&3\\0&0&6&6 \end{bmatrix}

第二个候选主元是零:我们不接受这种主元。我们试图找出它下面是否存在非零元素,从而通过交换即可,不幸的是下面都是零。如果AA是方阵,那么这个信号告诉我们矩阵时奇异的,而对于长方形矩阵,还没有结束,接下来我们能做的就是继续看下一列,发现主元是3,从第三行减去第二行的两倍就得到了UU:

U=⎡⎣⎢100300330230⎤⎦⎥

U=\begin{bmatrix} 1&3&3&2\\0&0&3&3\\0&0&0&0 \end{bmatrix}

严格来讲,我们接下来该处理第四列,因为第三个主元位置是零所以就不需要的。UU是上三角矩阵但是它的主元不在对角线上,UU的非零元素类似于阶梯形状,如图25×85\times 8所示,星号表示的元素可能为零也可能不是零。


图2

对任何矩阵我们都可以得到这种阶梯形式UU:

  1. 主元是每行第一个非零元素。
  2. 每个主元所在列的下面都是零。
  3. 每行的主元位于上面那行主元的右边,这样产生阶梯形式并且零行在最后。

因为我们从AA开始,到UU结束,大家可能会问:这和之前的A=LUA=LU 一样吗?答案是肯定的,因为消元步骤没有变,每一步都是下面一行减去上面行的倍数,每一步的逆都是加上所减行的倍数,这些逆操作以正确的方式组合到一起直接到的LL:

L=⎡⎣⎢12−1012001⎤⎦⎥andA=LU

L=\begin{bmatrix} 1&0&0\\2&1&0\\-1&2&1 \end{bmatrix} \quad and\quad A=LU

注意LL是方阵,它和A,UA,U有相同的行数。

一般情况下都需要置换操作,而我们的例子不需要用置换矩阵PP进行行变换,因为当主元不存在时,我们就进入下一列,不需要假设AA是非奇异的:

2、对于任意m×nm\times n矩阵AA,存在一个置换矩阵PP,单位下三角矩阵LL和m×nm\times n阶梯型矩阵UU,使得PA=LUPA=LU。

现在我们比UU更深入一点讨论行最简形RR,使矩阵更简单。第二行的除以3使得所有主元为1,然后令主元的上面都为零,这一次我们我们从上面的行减去下面行的倍数,那么最终的结果就是最简行阶梯行矩阵RR:

⎡⎣⎢100300330230⎤⎦⎥→⎡⎣⎢100300310210⎤⎦⎥→⎡⎣⎢100300010−110⎤⎦⎥=R

\begin{bmatrix} 1&3&3&2\\0&0&3&3\\0&0&0&0 \end{bmatrix} \to \begin{bmatrix} 1&3&3&2\\0&0&1&1\\0&0&0&0 \end{bmatrix} \to \begin{bmatrix} 1&3&0&-1\\0&0&1&1\\0&0&0&0 \end{bmatrix} =R

矩阵RR是AA消元得到的最终结果。

那么可逆方阵的行最简阶梯型是什么样的呢?答案是单位矩阵。他们有完整的主元集合且都为1,主元上下又都为零,所以AA可逆的情况下为单位矩阵。

对于5×85\times 8矩阵,图2给出了行最简形式RR,四个主元所在的行和列组成了一个单位矩阵,从RR中我们可以迅速找出AA的零空间,Rx=0Rx=0和Ux=0,Ax=0Ux=0,Ax=0 有相同解。

主元变量和自由变量

我们的目标是求出Rx=0Rx=0的所有解,主元是至关重要的:

Rx=⎡⎣⎢100300010−110⎤⎦⎥⎡⎣⎢⎢⎢uvwy⎤⎦⎥⎥⎥=⎡⎣⎢000⎤⎦⎥

Rx=\begin{bmatrix} 1&3&0&-1\\0&0&1&1\\0&0&0&0 \end{bmatrix} \begin{bmatrix} u\\v\\w\\y \end{bmatrix}= \begin{bmatrix} 0\\0\\0 \end{bmatrix}

未知量u,v,w,yu,v,w,y分成了两组,一组包含主元变量,他们对应主元所在的列,第一和第三列包含主元,所以u,wu,w是主元变量;另一组组成自由变量,对应于没有主元的列,他们是第二和第四列,所以v,yv,y是自由变量。

为了求出Rx=0Rx=0的通解,我们可能给自由变量分配任意值,假设我们已经分配了v,yv,y值,那么主元变量就完全可以用v,yv,y 的形式确定:

Rx=0u+3vw−+yy==00得到uw==−3v+−yy(1)

\begin{equation} Rx=0 \quad \begin{matrix} u&+&3v&-&y&=&0\\&&w&+&y&=&0 \end{matrix}\quad \text{得到}\quad \begin{matrix} u&=&-3v&+&y\\w&=&&-&y \end{matrix}\tag1 \end{equation}

完整解可以表示成这两个特殊解的组合:

x=⎡⎣⎢⎢⎢−3v+yv−yy⎤⎦⎥⎥⎥=v⎡⎣⎢⎢⎢−3100⎤⎦⎥⎥⎥+y⎡⎣⎢⎢⎢10−11⎤⎦⎥⎥⎥(2)

\begin{equation} x=\begin{bmatrix} -3v+y\\v\\-y\\y \end{bmatrix}= v\begin{bmatrix} -3\\1\\0\\0 \end{bmatrix} +y \begin{bmatrix} 1\\0\\-1\\1 \end{bmatrix}\tag2 \end{equation}

再次观察一下这个完整结,特殊解(−3,1,0,0)(-3,1,0,0)有两个自由变量v=1,y=0v=1,y=0,另一个特解(1,0,−1,1)(1,0,-1,1)为v=0,y=1v=0,y=1。所有解是这两个解的线性组合,求Ax=0Ax=0 解的最好方式是找出特解:

  1. 化简为Rx=0Rx=0后,确定主元变量和自由变量
  2. 将一个自由变量设置为1,另一个设置为0求Rx=0Rx=0,得到的xx是一个特解
  3. 第二步中每一个自由变量都会得到它对应的特解,这些特解的组合形成了零空间也就是Ax=0Ax=0的所有解。

在向量xx所在的四维空间里,Ax=0Ax=0的解形成一个二维子空间也就是AA的零空间。例如,N(A)N(A)由向量(−3,1,0,0),(1,0,−1,1)(-3,1,0,0),(1,0,-1,1)产生,他们的组合得到整个子空间。

这里有一个小技巧,使得从RR中求特解很容易。3,0,-1和1 在RR的非主元列,改变他们的符号找出特解中的主元。我们将方程(2)的特解放到矩阵矩阵NN中,这样就能看出这个想法了:

N=⎡⎣⎢⎢⎢−310010−11⎤⎦⎥⎥⎥

N= \begin{bmatrix} -3&1\\1&0\\0&-1\\0&1 \end{bmatrix}

自由变量是1和0,当自由变量移到方程(2)的右边时,他们的系数3,0,-1和1改变了符号,他们确定了特解中的主元变量。

这里给出一个重要的理论。假设矩阵列数比行数大n>mn>m,因为mm行最多有mm 个主元,所以至少存在n−mn-m个自由变量,如果RR的某些行是零,那么会有更多的自由变量;但是不管怎样,只有有一个是自由变量,这个自由变量可以分配任意值,由它得出下面的结论:

3、如果Ax=0Ax=0未知量比方程多,那么它至少有一个特解:除了平凡解x=0x=0外至少还有一个解。

肯定有无限多个解,因为任何常数cc都能满足A(cx)=0A(cx)=0,零空间包含通过xx 的直线,如果有额外的自由变量,那么零空间就不仅仅是nn维空间的一条线,零空间的维数和自由变量,特解的数目是一样的。

中心思想(子空间的维数)在下一篇文章里会精确给出,为了零空间我们处理自由变量,为了列空间我们处理变量。

解Ax=b,Ux=c,Rx=d

b≠0b\neq0的情况不同于b=0b=0,AA上的行运算也必须在右边bb上执行,我们先用字母(b1,b2,b3)(b_1,b_2,b_3)找出可解的条件,然后令b=(1,5,5)b=(1,5,5)找出所有解。

对于最开始的例子,我们令Ax=b=(b1,b2,b3)Ax=b=(b_1,b_2,b_3),两边都进行行运算得:

Ux=c⎡⎣⎢10030033023⎤⎦⎥⎡⎣⎢⎢⎢uvwy⎤⎦⎥⎥⎥=⎡⎣⎢b1b2−2b1b3−2b2+5b1⎤⎦⎥(3)

\begin{equation} Ux=c\quad \begin{bmatrix} 1&3&3&2\\0&0&3&3\\0&0&0& \end{bmatrix} \begin{bmatrix} u\\v\\w\\y \end{bmatrix}= \begin{bmatrix} b_1\\b_2-2b_1\\b_3-2b_2+5b_1 \end{bmatrix}\tag3 \end{equation}

右边执行完前向消去后得到向量cc。

对等式是否有解还不是很清楚,第三个等式比较麻烦,因为它的左边是零,除非右边b3−2b2+5b1=0b_3-2b_2+5b_1=0,否则方程就不一致。即便未知数的个数比方程多,但依然有可能无解。我们知道如果bb位于AA的列空间,那么Ax=bAx=b就有解,子空间来自AA的四个列:

⎡⎣⎢12−1⎤⎦⎥,⎡⎣⎢36−3⎤⎦⎥,⎡⎣⎢393⎤⎦⎥,⎡⎣⎢274⎤⎦⎥

\begin{bmatrix} 1\\2\\-1 \end{bmatrix} , \begin{bmatrix} 3\\6\\-3 \end{bmatrix} , \begin{bmatrix} 3\\9\\3 \end{bmatrix} , \begin{bmatrix} 2\\7\\4 \end{bmatrix}

虽然是四个向量,但是他们的组合只是三维空间中的一个平面,列2 是列1的三倍,第四列等于第三列减去第一列,这些相互依赖列如第二和第四列是没有主元的。

列空间C(A)C(A)可以用两种方式来描述,一方面,它是列1和3产生的平面,其他位于该平面的列不会得出新的列。等价的,它是满足(b3−2b2+5b1=0(b_3-2b_2+5b_1=0的所有向量bb组成的平面;如果系统是可解的,这就是约束条件。几何上我们会看到(5,−2,1)(5,-2,1)垂直于每个列。

如果bb属于列空间,Ax=bAx=b的解很容易找到,Ux=cUx=c的最后一个方程是0=00=0。对于自由变量v,yv,y,我们可以像以前一样分配任意值,主元变量u,vu,v依然通过回代确定。对于b3−2b2+5b1=0b_3-2b_2+5b_1=0这个特例,选择b=(1,5,5)b=(1,5,5):

Ax=b⎡⎣⎢12−136−3393274⎤⎦⎥⎡⎣⎢⎢⎢uvwy⎤⎦⎥⎥⎥=⎡⎣⎢155⎤⎦⎥

Ax=b\quad \begin{bmatrix} 1&3&3&2\\2&6&9&7\\-1&-3&3&4 \end{bmatrix} \begin{bmatrix} u\\v\\w\\y \end{bmatrix}= \begin{bmatrix} 1\\5\\5 \end{bmatrix}

前向消元在左边得到UU,右边得到cc:

Ux=c⎡⎣⎢100300330230⎤⎦⎥⎡⎣⎢⎢⎢uvwy⎤⎦⎥⎥⎥=⎡⎣⎢130⎤⎦⎥

Ux=c\quad \begin{bmatrix} 1&3&3&2\\0&0&3&3\\0&0&0&0 \end{bmatrix} \begin{bmatrix} u\\v\\w\\y \end{bmatrix}= \begin{bmatrix} 1\\3\\0 \end{bmatrix}

最后一个方程0=00=0,然后回代:

u+3v+3w3w++3y2y==31wu==1−2−−y3v+y

\begin{matrix} &&&&3w&+&3y&=&3\\u&+&3v&+&3w&+&2y&=&1 \end{matrix} \qquad \begin{matrix} w&=&1&-&y\\u&=&-2&-&3v&+y \end{matrix}

v,yv,y是自由变量:

x=⎡⎣⎢⎢⎢uvwy⎤⎦⎥⎥⎥=⎡⎣⎢⎢⎢−2010⎤⎦⎥⎥⎥+v⎡⎣⎢⎢⎢−3100⎤⎦⎥⎥⎥+y⎡⎣⎢⎢⎢10−11⎤⎦⎥⎥⎥(4)

\begin{equation} x=\begin{bmatrix} u\\v\\w\\y \end{bmatrix} =\begin{bmatrix} -2\\0\\1\\0 \end{bmatrix} +v\begin{bmatrix} -3\\1\\0\\0 \end{bmatrix} +y\begin{bmatrix} 1\\0\\-1\\1 \end{bmatrix}\tag4 \end{equation}

后两项可得出许多解,Ax=bAx=b的每个解是特解和Ax=0Ax=0解的和,方程(4)的特解通过将所有主元变量设为零得到。

几何上,这个解依然是一个二维平面,但是不是子空间,因为它不包含x=0x=0,它平行于我们之前得到的子空间。现在列出求解步骤:

  1. 将Ax=bAx=b化为Ux=cUx=c
  2. 将自由变量设为0,求出Axp=0,Uxp=cAx_p=0,Ux_p=c的一个特解。
  3. 求出Ax=0(Ux=0 or Rx=0)Ax=0(Ux=0\ or\ Rx=0)的解,对每一个自由变量轮流等于1即可,那么x=xp+xnx=x_p+x_n

当方程是Ax=0Ax=0时,特解是零向量!它满足上面的模式,但是xp=0x_p=0没有在(2)中写出来。

问题:化简形式RR如何让解更加清楚?从我们的例子中可以看出,方程1减去方程2然后方程2除以它的主元。左边得到RR,右边(1,3,0)(1,3,0)变成(−2,1,0)(-2,1,0):

⎡⎣⎢100300010−110⎤⎦⎥⎡⎣⎢⎢⎢uvwy⎤⎦⎥⎥⎥=⎡⎣⎢−210⎤⎦⎥(5)

\begin{equation} \begin{bmatrix} 1&3&0&-1\\0&0&1&1\\0&0&0&0 \end{bmatrix} \begin{bmatrix} u\\v\\w\\y \end{bmatrix} =\begin{bmatrix} -2\\1\\0 \end{bmatrix}\tag5 \end{equation}

我们的特解xpx_p的自由变量为v=y=0v=y=0,忽略掉2和4列,所以立马得到u=−2,w=1u=-2,w=1。

现在我们总结一下,消元揭示了主元变量和自由变量,如果有rr个主元,那么就有rr个主元变量和n−rn-r个自由变量,这个重要的数字rr有一个重要的名字——矩阵的秩。

4、假设消元Ax=bAx=b得到Ux=c,Rx=dUx=c,Rx=d,有rr个主元行和rr 个主元列。这些矩阵的秩是rr,U,RU,R的最后m−rm-r是零,所以如果c,dc,d的最后m−rm-r个元素也是零的话就存在解。

完整解是xp+xnx_p+x_n,一个是所有自由变量为零得特解xpx_p,它的主元变量是dd的rr个元素,所以RxpRx_p=d。

零空间解xnx_n是n−rn-r个解的组合,每一个自由变量为1。解中的主元变量可以在RR中对应的列中找到(符号相反)。

我们可以看出秩rr非常重要,它是行空间中主元行的数目,也是列空间中主元列的数目,零空间中有n−rn-r个解,对b,c,db,c,d有m−rm-r个可解条件。

漫步线性代数九——求Ax=0和Ax=b相关推荐

  1. 【线代】线性方程组:非齐次/齐次方解的个数、系数矩阵的秩、未知数个数的关系?为什么 Ax=0 比 Ax=b 少1个线性无关的解?

    目录 一.起因 二.概念理解 1. Ax=0 基础解系 2. Ax=b 线性无关解的个数 3. 为什么 Ax=0 比 Ax=b 少1个线性无关的解? 三.解题 四.小结 一.起因 上一篇文章主要讲了线 ...

  2. 超定方程的求解、最小二乘解、Ax=0、Ax=b的解,求解齐次方程组,求解非齐次方程组(推导十分详细)

    本篇主要介绍的是超定方程组的求解,如果你不想看繁琐的推导过程,你可以直接看红字部分的结论! 1. 齐次线性方程组 Ax = 0 对于方程Ax=0\bm A \bm x = 0Ax=0,在我们实际的使用 ...

  3. 线性代数 --- 如何求解不可逆的mxn长方形矩阵Ax=0的通解Null(A)和Ax=b的通解

    Solve Ax=0 and Ax=b 我们先看一个未知数一个方程ax=b的解的情况,他的解可以有三种情况: (i)当a0时,对于任意的b都有解x=b/a,这时方程有唯一解.(这种情况叫相容且非奇异) ...

  4. 漫步线性代数八——向量空间和子空间

    消元简化了线性方程组Ax=bAx=b,幸运的是它也简化了理论.存在性和唯一性的基本问题(一个解或没有解或无穷多个解)在消去之后很容易回答,我们现在就针对m×nm\times n系统讨论这些问题. 但消 ...

  5. 线性代数 --- Ax=0/Ax=b计算过程详解(个人学习笔记)

    已知:原矩阵为 Ax=0  Ax=0的求解步骤: 1,先把原始矩阵A化简到最简阶梯形R,主元为1,主元上方也全部消除为0. 2,在R矩阵中确定主元列和主元变量,自由列和自由变量.确定方程组的秩R和特解 ...

  6. 【代数之美】线性方程组Ax=0的求解方法

    在3D视觉中,我们常常会遇到这样一个问题:求解线性方程组Ax=0Ax=0Ax=0,从矩阵映射的角度来说,所有解组成了矩阵AAA的零空间.一个典型的场景比如用八点法求解本质矩阵EEE,参见我前面的博文: ...

  7. 07-求解Ax=0:主变量、特解

    一.定义转向算法 在第六节讲了空间,列空间,零空间的定义,这节主要讲解如何求出这些空间,即求解$Ax=0$的过程是怎么样的过程,以下面的矩阵$A$为例:(这里主要是长方阵) $A=\left[\beg ...

  8. 求解Ax=0:主变量、自由变量、特殊解

    上一篇简单介绍了列空间(column space)和零空间(null space),这一次主要介绍如何求出零空间内的向量,即主要讨论Ax=0.假设有矩阵A=,略微观察一下其行和列可看出,列2是列1的倍 ...

  9. Ax=0的非零解/马尔可夫链的平稳分布

    最近在学习马尔可夫链,要求其平稳分布,即对给定P,求满足的,也就是要求解满足的. 看起来很简单的问题,把我折腾的够呛,数学基础实在太渣了......那么就一起来看看遇到了什么问题吧: 首先给定转化矩阵 ...

最新文章

  1. 10万奖金:天池OCR大赛来了!
  2. RBF神经网络——直接看公式,本质上就是非线性变换后的线性变化(RBF神经网络的思想是将低维空间非线性不可分问题转换成高维空间线性可分问题)...
  3. ZOJ Monthly, November 2012
  4. 鸿蒙系统暗黑2,暗黑破坏神2为什么被称为神作!看看装备强化系统就知道有多完美...
  5. java 切换主线程_Java线程切换(一)
  6. python中文版软件下载-Python中文版下载_PyCharm官方最新版下载_3DM单机
  7. 四大经典大数据应用案例解析
  8. ubuntu下查看opencv版本
  9. 开源生产排程aps(Advanced Planning and Scheduling)软件介绍
  10. uci2019计算机录取,美国加州大学这九所分校2019最新录取数据
  11. workbench与SolidWorks联合划分六面体网格
  12. [PS视频][ps从入门到精通82课][mp4/327M]
  13. 最全面鸿蒙系统开发的相关资料收录
  14. 解决idea控制台中文乱码问题
  15. js如何保留对象中指定字段(太刁了)
  16. qt5的qk2dview
  17. 《外星人就在月球背面》值得一读
  18. (Ⅲ)使用七牛云作为图床获取外链方式总结(已更换为使用PicGO+腾讯云COS)...
  19. vs光标变成灰色方块的解决方法
  20. 拼多多-游戏化设计-彻底被撩到

热门文章

  1. 炫酷实用 7款jQuery/HTML5图片应用
  2. html和jsp的差异
  3. [转]C++的Json解析库:jsoncpp和boost
  4. OpenWares | Open Source and Free Matters » 为rm命令增加回收站功能
  5. 2005年2月24日(星期四) 中午,晴+煙 - Central Incubator。
  6. Git如何进行版本回退
  7. 使用PostgREST构建PostgreSQL数据库的REST风格API
  8. Nacos 快速开始
  9. MacOSX系统下HomeBrew安装指定版本的软件 IntelliJ IDEA 设置多个Go语言版本开发
  10. C# 使用TcpClient 测试网络连接是否正常