我们先从一个未知数,一个方程的1x1方程组Ax=b说起,他的解可以有三种情况:
(i)当a0时,对于任意的b都有解x=b/a,这时方程有唯一解。(这种情况叫相容且非奇异)
(ii)若a=0,b=0。无论x取多少,等式0x=0恒成立,有无穷多个解。(这种情况叫相容,但奇异)
(iii)若a=0,b0,无解。因为,没有x可以让等式0x=b成立。(这种情况叫不相容)
对于mxn的长方形矩阵而言,无论是m>n(方程的个数大于未知数的个数)还是m<n(未知数的个数大于方程的个数),也会出现上面所说的几种情况。
例:对如下的3x4矩阵进行高斯消元
主对角线上的值为0,且通过换行依然无法避免。就此可以判定A为奇异矩阵,方程组无解。我们继续消元,找到第二行的第一个非零元素,令他当作主元,并消去该主元下面的所有元素。最终得到一个行阶梯形矩阵U。(注:在阶梯型矩阵中,主元就是每个非零行第一个非零元素)
更一般的,对于任意mxn矩阵。若方程组不可逆/无解,都会得到形如下图的消元结果:(图中,圈起来的星号为每行的非零主元,而非零主元所在的列就称之为主元列或非零主元列)
这个行阶梯型上三角矩阵U,存在一个对应的还原矩阵L,使得A=LU,这就是我们常说的LU分解。注意:虽然A是长方形矩阵,但此处的L是方阵,他是一个m阶矩阵,等于A和U的行数。如果,在消元过程中有行交换的话,则需要引进置换矩阵P,得到PA=LU。
现在我们开始讨论mxn方程组长方形矩阵的解:
1,先考虑齐次方程Ax=0的解
对于b=0的情形,消元的过程中方程组的右端b是不变的。最终把Ax=0化简成行阶梯型矩阵Ux=0。
我们把四个未知数u,v,w,y分成两组。一组是对应非零主元列(columns with pivots)的变量,称为基本变量basic variables。基本变量在x中所对应的位置,就是这些主元列所对应的问题。在本例中,u和w是基本变量。另外一组,是对应于没有主元的列(columns without pivots)的变量,我们叫他自由变量free variables。在本例中,v,y为自由变量。
下面插播一个个人笔记,从中可以清楚的看到,主元列,自由列,以及他们分别对应的基本变量和自由变量。
为了求得Ux=0(Ax=0)的通解,自由变量v,y可以为任意值,也就说我们可以先把v,y当作已知量,再回代到化简后的方程中,基本变量w,y就可以用v,y来表示了。
最终求得:
可见,该齐次方程Ax=0有无穷多个解,又因为两个自由变量v,y都可以是任意数,该方程组的解具有”双无穷“的特性。也就是说,按住v不动(比如说,令v=1)去改变y,则y有无穷多个解。反之亦然。
可以看到,如果我们令v=0,y=1,则向量[-3 1 0 0]'就是齐次方程Ax=0的一个特解,如果令v=1,y=0,则向量[-1 0 -1/3 1]’是齐次方程的另一个特解。不难看出,不论怎么调整权重v,y,最终的结果都是Ax=0的解。齐次方程组Ax=0的所有解,都是这两个向量(两个特解)的线性组合。
现在我们可以做一个类比,回想一下Ax=b的列空间C(A)。矩阵的列空间指出,所有可解的右端b,都是通过对A中各列的线性组合得到的,且他们的组合填满了整个列空间。而到了这里,A中的各列不再需要组合成b,而是b=0的情况,且更重要的是,他们的组合结果不是零空间,组合的结果已经是确定且唯一的全零列向量,零空间是A的所有列向量合成全零列向量时的权重。
Ax=0的特解,我们叫他“零向量”或者叫他们“解向量(x)”,他们的维度也和A中列的维度不同。就拿本例来说,A中列的维度是3(等于方程组中方程的个数),而未知数x(也就是解)的维度是4。构成列空间C(A)的每个列向量的维度是m(等于b的维度=A中各列的维度=方程组中方程的个数),而这里构成零空间N(A)的解向量(x),他的维度是n(等于矩阵A中列的个数=未知数的个数)。(注意:这里我说的都是向量的维度)
对于这个例子,在四个未知数所构成的四维空间中,Ax=0的解,构成了一个二维子空间---A的零空间N(A)。这个空间是由[-3 1 0 0]'和[-1 0 -1/3 1]'所张成的一个二维平面。
因此,我们可以得出如下结论:对于一个列数大于行数的矩阵(未知数的个数大于方程个数的方程组),即n>m的矩阵。由于最多只能有m个非零主元(每行一个),因此,当U存在全零行时,至少有n-m个自由变量,且,自由变量的个数可以多余n-m个。就本例而言,自由变量的个数就大于n-m(n-m=4-3=1)个,但自由变量却有2个,事实上他就等于行阶梯型矩阵U非零行的个数rank 。
这里我们对齐次方程Ax=0的解,做一个重要小结,并给出对于秩(Rank)的定义:
1,Ax=0(Ux=0)的所有解,即A的零空间,就是n-r个特解的线性组合。
2,对于未知数个数大于方程个数的方程组(n>m),齐次方程组Ax=0,必有除了x=0以外的非平凡解。其中,零空间N(A)的维数等于自由变量的个数等于特解的个数,在本例中就是。
3,就mxn的矩阵A而言,经过高斯消元后得到阶梯矩阵U。如果U中有r个非零主元,那么矩阵U的底部会出现m-r个全0行。就本例而言,r=2(共两个非零主元,用红色方框框出),m=3,m-r=1。可以看到矩阵U的底部有一个全0行。
同时,根据r=2,说明有两个非零主元列,对应了r个基本变量。自由列的个数等于2,等于n-r,就本例而言,n=4,n-r=2,对应了n-r个自由变量。齐次方程组Ax=0的零空间N(A),由n-r个自由变量决定,零空间的维度=n-r。如果,r=n,也就是r的个数等于A的列的个数,表示该齐次方程组没有自由变量(也就没有自由列),A的零空间只有平凡解x=0(而在我们之前所学的知识里,只有平凡解的情况,只在我们平常所讨论的方阵中出现)。
4,这里,我们反复提及的数r叫做矩阵A的秩(Rank)。它等于矩阵U中非零行的行数,也等于矩阵U中非零主元的个数,它代表了矩阵A中真正独立的行的行数。在本例中,第三行实际上是前两行的线性组合。第二行乘以2减去第一行乘以5,得到第三行。
2,现在考虑非齐次方程组Ax=b的解
对于同样的矩阵A,我们有:
把等式右端b和A放在一起得到增广矩阵:
按照相同的步骤对增广矩阵化简,得到Ux=c
对于所有有解的b而言,应该是由A的各列所张成的。(注意:不是U的列)b属于A的列空间。
因为,列2可以由列1合成(col2=3*col1), 而列4可以由列1和列3组成(col4=col1+col3/3),其中,列2和列4就是前面提到的两个自由列。所以,这里虽然有四个列向量,但他们的线性组合只能张成三维空间中的一个平面。因此,对于A的列空间而言,一方面,可以把他看成是由col1和col3这两个主元列所张成的三维空间中的一个平面。另一方面,要想方程有解,则必须要保证最后一个方程b3-2b2+5b1=0成立(下图中用红色方框标出),因为,如果b3-2b2+5b10,则该方程组无解。这样一来A的列空间可以理解为,满足约束方程b3-2b2+5b1=0的所有b向量(b1,b2,b3),所构成的三维空间中的一个平面。这一平面和前面所张成的平面一模一样,A的四个列向量都满足这一约束。(我们暂且称这个平面为平面P)
此外,如果我们把满足方程组成立的约束方程b3-2b2+5b1=0的左边,看成是一个列向量x=[5,-2,1]'的转置与一个列向量b=[b1, b2, b3]'的乘积,那么我们会发现列向量x不仅垂直于b(他们的内积为0,如下图所示), 也垂直于我们上面提到的平面P,因而也垂直于A的每一列(P是由于A中的主元列所张成的,且自由列也在这一平面上)。实际上,只要方程组有解,b也一定在平面P内。
前面说到,列向量x垂直于A中的每一个列向量。根据向量内积的定义和向量正交的定义,我们来逐一验证一下:
现在,假定方程有解,即,b在A的列空间中,显然要保证最后一行方程0x=0成立。和前面一样,经过高斯消元后,用自由变量v,y(已知数)来表示基本变量u,w。
得到如下通解(为了便于比较,我把前面的齐次方程组的解也放在下面了):
(图为非齐次方程的解)
(图为齐次方程的解)
首先,我们可以看到非齐次方程Ax=b也有无穷多个解,且,也有“双无穷“的特性。与之前算出的齐次方程Ax=0的解相比,多了一组向量,用红色的方框标注,这个向量是Ax=b的一个特解(这个特解就是保证最后一个方程约束b3-2b2+5b1=0成立的一个解)。可见,非齐次方程Ax=b的通解,是Ax=b的这个特解和Ax=0的通解的和。从空间的角度讲,
注意,前面提到的"满足方程b3-2b2+5b1=0的所有点(b1,b2,b3)构成的一个平面。"平面上的任意一点,都可以作为Ax=b的特解。
例如,为满足b3-2b2+5b1=0,我们找到一个点b1=1,b2=5,b3=5,满足该约束。并得到如下矩阵Ax=b:
经过高斯消元后,得到:
最后一行满足0=0:
从空间的角度讲,Ax=b的通解是四维空间内的一个平面,但他不是一个子空间。因为,这个平面不通过原点。通解所构成的解平面和齐次方程Ax=0的解平面(也就是A的零空间)平行,但不重合。他沿着特解移动了一段。
这里我们对非齐次方程Ax=b的解,做一个重要小结:
1,非齐次方程Ax=b的通解,是Ax=b的一个特解和Ax=0的通解的和。
2,齐次方程组Ax=0的解构成了子空间。但非齐次方程组Ax=b的解构不成子空间,因为他不过原点。
3,当且仅当r=m时,Ax=b才对任何b都有解。此时,主元的个数为m,U不存在全0行。就本例而言,当r=m=3时,不存在全0行,可以用反向代入解Ux=c。
4,当r<m时,本例就是这种情况,(r=2)<(m=3),U有m-r个全0行,此时,如果要想Ax=b有解,b应该受到m-r个约束。在本例中m-r=3-2=1,共有一个约束。且,这m-r个约束由Ux=c的最后m-r行给出。如果有一个特解,那么Ax=b的任何一个解都是这个特解和A的零空间中一个向量的和。
数r叫做矩阵A的秩(Rank)。
补充:
Ax=b的解是经过一定水平位移(我猜:应该不会旋转,haha)后的Ax=0的解。
比如说下面这个矩阵,Ax=0的解是一条过零点的直线,而Ax=b的解是这条直线的平行线。
(全文完)
作者 --- 松下J27
格言摘抄:
要 愛 惜 光 陰 , 因 為 現 今 的 世 代 邪 惡 。
Redeeming the time, because the days are evil。
《圣经》---以弗所书,5章16节
参考文献(鸣谢):
1,Linear algebra and its application - GILBERT STRANG
2,线性代数及其应用 - 侯自新,南开大学出版社,1990版
(*配图与本文无关*)
版权声明:所有的笔记,可能来自很多不同的网站和说明,在此没法一一列出,如有侵权,请告知,立即删除。欢迎大家转载,但是,如果有人引用或者COPY我的文章,必须在你的文章中注明你所使用的图片或者文字来自于我的文章,否则,侵权必究。 ----松下J27