矩阵消元法(Elimination)是常用的方程组Ax=b求解方法,但是该如何利用矩阵变换的思想来理解消元法呢?
假设有方程组
对于上述方程组,系数矩阵A为,整个消元过程为
在用矩阵变换的思想理解矩阵消元之前,关于矩阵乘法的理解很重要,矩阵乘法可以从行的角度理解,列的角度理解,也可从矩阵单个元素的角度理解(这是我们通常的理解)。如果从行的角度,则相乘是矩阵行的线性组合,为了方便书写,这里给出的例子是向量与矩阵的相乘,因为矩阵-矩阵的相乘最终也是分解为矩阵-向量的相乘来实现的,如
这个过程表示对进行了行变换,也就是说,要对一个矩阵进行变换,需在该矩阵左侧乘以一个矩阵。
如果从列的角度,则相乘是矩阵列的线性组合,如
这个过程表示对进行了列变换,也就是说,要对一个矩阵进行列变换,需在该矩阵右侧乘以一个矩阵。
因此如果有矩阵A和矩阵B相乘A*B,我们可以理解为A对B进行了行变换,也可以理解为B对A进行了列变换。
回到矩阵的消元,有什么样的矩阵可以实现将A的第一行乘以-3加到第二行去,保持第一行不变?由于消元法进行的是行变换,因此上面的过程应该是在A的左侧乘以一个未知阵,即
设该未知消元矩阵E21为
则有
由上式易得E21=,E21表示将矩阵第2行第1列的数消去。
同样有什么样的矩阵可以实现将A的第二行乘以-2加到第三行去,保持第一、二行不变?即
按照上面的方法,可得消元矩阵E32=
也就是说上述的整个矩阵消元过程可以表示为 E32*(E21*A)=U
由于消元法中有可能涉及行之间的交换,因此还有一类重要的矩阵完成交换矩阵中两行次序的功能,称为置换矩阵(Permutation),同样按照上面矩阵相乘的思路,如果要交换行,则
如果要交换列,则
即如果要进行列交换,置换矩阵应放在右侧,如果进行行交换,置换矩阵放在左侧。