MIT线性代数笔记二 矩阵消元

  上节课讲的是如何从定性的方式(列向量)分析出对于任意的 b \bold {b} b,使得 A x = b \bold {Ax} = \bold {b} Ax=b有解。这节课我们要具体讲解如何求 A x = b \bold {Ax} = \bold {b} Ax=b方程组的解。

消元 Elimation

  高斯消元法是计算机软件求解线形方程组最常用的方法。高斯消元法(Gauss elimination)就是通过对方程组中的某两个方程进行适当的数乘加法(线性空间的两大基本运算),以达到将某一未知数系数变为零,从而削减未知数的目的。其中每一步的目标是消除未知数(保证主元不为0的前提下)。
  老师给出的线性方程组如下所示:

[ 1 2 1 3 8 1 0 4 1 ] [ x y z ] = [ 2 12 2 ] \left[ \begin{array} { c c } { 1} & { 2 } & { 1 } \\ { 3 } & { 8 } & { 1 } \\ { 0 } & { 4 } & { 1 } \end{array} \right] \left[ \begin{array} { l } { x } \\ { y } \\ { z } \end{array} \right] = \left[ \begin{array} { l } { 2 } \\ { 12 } \\ { 2 } \end{array} \right] 130284111xyz=2122
  我们将矩阵左上角的 1 称之为“主元一”(the first pivot),第一步要通过消元将第一列中除了主元之外的数字均变化为 0。操作方法就是用之后的每一行减去第一行的适当倍数,此例中第二行应减去第一行的 3 倍。之后应对第三行做类似操作,本例中三行第一列数字已经为 0,故不用进行操作。
MIT线性代数笔记二 矩阵消元_第1张图片
  处在第二行第二列的主元二为 2,因此用第三行减去第二行的两倍进行消元,得到第三个主元为 5。
  矩阵 A 为可逆矩阵(后面再表),消元结束后得到上三角阵 U(Uppertriangular matrix),其左侧下半部分的元素均为 0,而主元 1,2,5 分列在 U 的对角线上。主元之积即行列式的值(行列式只是方阵的一个性质)。

回代 Back-Substitution

  做方程的高斯消元时,需要对等式右侧的 b 做同样的加法和数乘运算。手工计算时中比较有效率的方法是应用“增广矩阵”(augmented matrix),将 b 插入矩阵的最后一列,然后进行相应的运算。
[ 1 2 1 2 3 8 1 12 0 4 1 2 ] → [ 1 2 1 2 0 2 − 2 6 0 4 1 2 ] → [ 1 2 1 2 3 8 1 12 0 0 5 − 10 ] \left[ \begin{array} { c c } { 1} & { 2 } & { 1 } & { 2 } \\ { 3 } & { 8 } & { 1 } & { 12 } \\ { 0 } & { 4 } & { 1 } & { 2 } \end{array} \right] \rightarrow \left[ \begin{array} { c c } { 1} & { 2 } & { 1 } & { 2 } \\ { 0 } & { 2 } & { -2 } & { 6 } \\ { 0 } & { 4 } & { 1 } & { 2 } \end{array} \right] \rightarrow \left[ \begin{array} { c c } { 1} & { 2 } & { 1 } & { 2 } \\ { 3 } & { 8 } & { 1 } & { 12 } \\ { 0 } & { 0 } & { 5 } & { -10 } \end{array} \right] 130284111212210022412126213028011521210
  此时我们将原方程 A x = b \bold {Ax} = \bold {b} Ax=b转化为了新的方程 U x = c \bold {Ux} = \bold {c} Ux=c,其中 c= [ 2 6 − 10 ] \left[ \begin{array} { c c } { 2} \\ { 6 } \\ { -10 } \end{array} \right] 2610
  从最后一行得到 z=-2,依次回代可以得到 x=2和y=1。以上高斯消元法的容基本是回忆求解线性方程的步骤,这些内容对于大多数人都是烂熟于心了。在线性代数中比较重要的就是将之前所说的“第二行减去第一行的 3 倍”这种操作条例变为矩阵化数学语言

消元矩阵 Elimination Matrices

  矩阵运算的核心内容就是对“”或者“”进行独立操作。
  如前一节课“列图像”部分所言,系数矩阵乘以未知数向量,相当于对系数矩
阵的列向量进行线性组合。
MIT线性代数笔记二 矩阵消元_第2张图片
  与之相对称,矩阵左乘行向量则是对矩阵的行向量进行线性组合。
MIT线性代数笔记二 矩阵消元_第3张图片
  “列”操作就像是把向量开进矩阵,而“行操作”这个就像把向量倒车进入矩阵(如图中箭头所示)
  矩阵消元的第一步是通过左乘矩阵 E 21 \bold {E_{21}} E21 来实现原矩阵 A \bold A A 的第二行减去第一行的3倍这一过程。 E 21 \bold {E_{21}} E21 的第二行使矩阵 A \bold A A 的行向量进行前述的线性组合,而其它两行为了保持与原矩阵相同,采用同阶单位阵 I I I 的行向量。左乘的这个矩阵为“初等矩阵”(Elementary Matrix),因此记做 E \bold E E。 我以为是消元矩阵,所以记做 E \bold E E 呢。 因为所乘行向量的倍数-3 出现在 E \bold E E 矩阵的第二行第一列,因此将之标注为 21。完成操作后矩阵变为 E 21 A \bold {E_{21}A} E21A
第 一 行 不 变 : [ 1 0 0 ] [ 1 2 1 3 8 1 0 4 1 ] = [ 1 2 1 ] 第一行不变: \left[ \begin{array} { c c } { 1} & { 0 } & { 0 } \end{array} \right] \left[ \begin{array} { c c } { 1} & { 2 } & { 1 } \\ { 3 } & { 8 } & { 1 } \\ { 0 } & { 4 } & { 1 } \end{array} \right] = \left[ \begin{array} { c c } { 1} & { 2 } & { 1 } \end{array} \right] [100]130284111=[121]
第 三 行 不 变 : [ 0 0 1 ] [ 1 2 1 3 8 1 0 4 1 ] = [ 0 4 1 ] 第三行不变: \left[ \begin{array} { c c } { 0} & { 0 } & { 1 } \end{array} \right] \left[ \begin{array} { c c } { 1} & { 2 } & { 1 } \\ { 3 } & { 8 } & { 1 } \\ { 0 } & { 4 } & { 1 } \end{array} \right] = \left[ \begin{array} { c c } { 0} & { 4 } & { 1 } \end{array} \right] [001]130284111=[041]
第 二 行 : [ − 3 1 0 ] [ 1 2 1 3 8 1 0 4 1 ] = [ 0 2 − 2 ] 第二行: \left[ \begin{array} { c c } { -3} & { 1 } & { 0 } \end{array} \right] \left[ \begin{array} { c c } { 1} & { 2 } & { 1 } \\ { 3 } & { 8 } & { 1 } \\ { 0 } & { 4 } & { 1 } \end{array} \right] = \left[ \begin{array} { c c } { 0} & { 2 } & { -2 } \end{array} \right] [310]130284111=[022]
[ 1 0 0 − 3 1 0 0 0 1 ] [ 1 2 1 3 8 1 0 4 1 ] = [ 1 2 1 0 2 − 2 0 4 1 ] \left[ \begin{array} { c c } { 1} & { 0 } & { 0 } \\ { -3 } & { 1 } & { 0 } \\ { 0 } & { 0 } & { 1 } \end{array} \right] \left[ \begin{array} { c c } { 1} & { 2 } & { 1 } \\ { 3 } & { 8 } & { 1 } \\ { 0 } & { 4 } & { 1 } \end{array} \right] = \left[ \begin{array} { c c } { 1} & { 2 } & {1 } \\ { 0 } & { 2 } & { -2 } \\ { 0 } & { 4 } & { 1 } \end{array} \right] 130010001130284111=100224121
E 21 A = E 21 A E_{21}\quad \quad \quad \quad \quad A\quad=\quad E_{21}A E21A=E21A
  其中 E 21 \bold {E_{21}} E21可以认为使得第二行第一列的元素为0。
  矩阵消元的第二步是完成矩阵 E 21 A \bold {E_{21}A} E21A 的第三行减去第二行的 2 倍, 通过左乘矩阵 E 32 A \bold {E_{32}A} E32A 来实现这一过程。
[ 1 0 0 0 1 0 0 − 2 1 ] [ 1 2 1 3 8 1 0 4 1 ] = [ 1 2 1 0 2 − 2 0 4 1 ] \left[ \begin{array} { c c } { 1} & { 0 } & { 0 } \\ { 0 } & { 1 } & { 0 } \\ { 0 } & { -2 } & { 1 } \end{array} \right] \left[ \begin{array} { c c } { 1} & { 2 } & { 1 } \\ { 3 } & { 8 } & { 1 } \\ { 0 } & { 4 } & { 1 } \end{array} \right] = \left[ \begin{array} { c c } { 1} & { 2 } & {1 } \\ { 0 } & { 2 } & { -2 } \\ { 0 } & { 4 } & { 1 } \end{array} \right] 100012001130284111=100224121
E 32 E 21 A = E 32 ( E 21 A ) E_{32}\quad \quad \quad \quad \quad E_{21}A\quad=\quad E_{32} (E_{21}A) E32E21A=E32(E21A)

  3*3 矩阵的消元本来应该分三步完成,最终得到 E 32 ( E 31 ( E 21 A ) ) E_{32}(E_{31}(E_{21}A)) E32(E31(E21A))。 本例中 E 31 = I E_{31}=I E31=I,所以结果变为 E 32 ( E 21 A ) = U E_{32}(E_{21}A)=U E32(E21A)=U,因为矩阵运算符合结合律,也可写作 ( E 32 E 21 ) A = U (E_{32}E_{21})A=U (E32E21)A=U。可以记作 E A = U EA=U EA=U。方程 A x = b \bold {Ax}=\bold{b} Ax=b 的解也满足方程 U x = E A x = E b = c Ux=EAx=Eb=c Ux=EAx=Eb=c,因此我们将问题转化为 Ux=c。

置换矩阵 Permutation

  左乘置换矩阵可以完成原矩阵的行变换,右乘置换矩阵则为列变换。
[ 0 1 1 0 ] [ a b c d ] = [ c d a b ] \left[ \begin{array} { c c } { 0} & { 1 } \\ { 1 } & { 0 } \end{array} \right] \left[ \begin{array} { c c } { a} & { b } \\ { c } & { d } \end{array} \right] = \left[ \begin{array} { c c } { c} & { d } \\ { a } & { b } \end{array} \right] [0110][acbd]=[cadb]
[ a b c d ] [ 0 1 1 0 ] = [ b a d c ] \left[ \begin{array} { c c } { a} & { b } \\ { c } & { d } \end{array} \right] \left[ \begin{array} { c c } { 0} & { 1 } \\ { 1 } & { 0 } \end{array} \right] = \left[ \begin{array} { c c } { b} & { a } \\ { d } & { c } \end{array} \right] [acbd][0110]=[bdac]
  上述变换简称左行右列。左边是行变换比较容易理解的话,则转置之后就可以理解右边是列变换。

逆矩阵 Inverse

  这里主要讨论消元矩阵的逆矩阵。消元矩阵之逆矩阵的实施效果就是抵消原矩阵的消元操作。消元矩阵实现了对原矩阵 A 的操作,使第二行行向量[3,8,1]减掉了第一行[1,2,1]的 3 倍变为[0,2,-2],则逆向操作就应该是把现在的第二行行向量[0,2,-2]加上第一行[1,2,1]的 3 倍,从而变回原来的第二行[3,8,1]。

所 以 对 于 E 21 = [ 1 0 0 − 3 1 0 0 0 1 ] , 有 E 21 − 1 = [ 1 0 0 3 1 0 0 0 1 ] 所以对于\bold {E_{21}} = \left[ \begin{array} { c c } { 1} & { 0 } & { 0 } \\ { -3 } & { 1 } & { 0 } \\ { 0 } & { 0 } & { 1 } \end{array} \right] ,有\bold {E_{21}^{-1}} = \left[ \begin{array} { c c } { 1} & { 0 } & { 0 } \\ { 3 } & { 1 } & { 0 } \\ { 0 } & { 0 } & { 1 } \end{array} \right] E21=130010001E211=130010001
满 足 E 21 − 1 E 21 = [ 1 0 0 − 3 1 0 0 0 1 ] [ 1 0 0 3 1 0 0 0 1 ] = [ 1 0 0 0 1 0 0 0 1 ] 满足\bold {E_{21}^{-1} E_{21}} = \left[ \begin{array} { c c } { 1} & { 0 } & { 0 } \\ { -3 } & { 1 } & { 0 } \\ { 0 } & { 0 } & { 1 } \end{array} \right] \left[ \begin{array} { c c } { 1} & { 0 } & { 0 } \\ { 3 } & { 1 } & { 0 } \\ { 0 } & { 0 } & { 1 } \end{array} \right] = \left[ \begin{array} { c c } { 1} & { 0 } & { 0 } \\ { 0 } & { 1 } & { 0 } \\ { 0 } & { 0 } & { 1 } \end{array} \right] E211E21=130010001130010001=100010001

这节课的核心点为:
  1.行变换对应的矩阵是什么?行变换对应的矩阵是什么?具体如下所示:
  2.清楚 E 21 \bold {E_{21}} E21或者 E 32 \bold {E_{32}} E32分别代表的含义是什么?

你可能感兴趣的:(线性代数)