跳转到内容

线性代数/高斯-约旦消元

来自维基教科书,开放书籍,开放世界
线性代数
 ← 简化行阶梯形 高斯-约旦消元 行等价 → 

高斯消元法与回代法可以用来解线性方程组,但这并不是唯一可行的方法。这里介绍了高斯方法的一个扩展,它具有一些优势。

示例 1.1

为了解决

我们可以像往常一样先进行行阶梯形变换。

我们可以通过将主元转换为1来进行第二阶段

然后进入第三阶段,利用主元通过向上回代消去每列中的所有其他元素。

答案是 , , 以及 .

注意,第一阶段的主元操作从第一列进行到第三列,而第三阶段的主元操作从第三列进行到第一列。

示例 1.2

我们通常将中间阶段的操作组合成一个步骤,即使它们是对不同行的操作。

答案是 .

高斯方法的这种扩展称为 **高斯-若尔当消元法**。它超越了阶梯形,到达一个更精炼、更专业的矩阵形式。

定义 1.3

一个矩阵如果除了是阶梯形外,每个主元都是 1,并且是其所在列中唯一的非零元素,则称为 **简化阶梯形**。

使用高斯-若尔当消元法求解线性方程组的缺点是,额外的行操作意味着额外的算术运算。优点是可以直接从简化阶梯形中读出解集。

在任何阶梯形,无论是普通阶梯形还是简化阶梯形,我们都可以根据是否有矛盾方程来判断方程组是否有解,如果每个变量都是某一行的主元,则方程组只有一个解;如果至少有一个变量是自由变量,则方程组有无穷多个解。

在简化阶梯形中,我们可以读出方程组解集的类型及其描述。当然,如果方程组无解,无论阶梯形是否简化,我们都能很容易地描述解集。上面的两个例子表明,如果方程组只有一个解,则解可以从增广矩阵的最后一列中读出。在解集为无穷多个解的情况下,解集的参数形式也可以从简化阶梯形中读出。例如,考虑以下方程组,它被化简为阶梯形,然后又化简为简化阶梯形。

从中间矩阵(阶梯形版本)开始,回代法得到 ,因此 ,然后另一个回代得到 ,这意味着 ,最后回代得到 ,这意味着 。因此解集为:

现在,考虑到最后一个矩阵(简化阶梯形版本),注意通过将 项移到另一边来调整参数化,确实可以得到这个无限解集的描述。

这其中的部分原因很简单。虽然一个集合可以有多种参数化描述它,例如,以下两者也可以描述上述集合 (取 )

然而,我们在这本书中坚持使用未修改的自由变量(即 而不是 )进行参数化。我们可以很容易地看到,一个系统的简化阶梯形式版本等同于一个使用未修改的自由变量进行参数化的版本。例如,

(为了从左到右,我们还需要知道系统中包含多少个方程)。因此,用自由变量进行参数化的惯例(通过为每个方程求解其主变量,然后从其他所有方程中消除该主变量)恰好等同于简化阶梯形式条件,即每个主元必须为 1,并且必须是其列中唯一的非零元素。

不那么直观的另一部分原因是,简化阶梯形式版本允许我们读出如果我们在阶梯形式停止并进行回代所获得的参数化。前一段显示简化阶梯形式对应于某种参数化,但为什么是相同的参数化呢?一个解集可以用多种方式进行参数化,高斯消元法或高斯-约旦消元法也可以用多种方式进行,所以第一个猜测可能是我们可以推导出相同起始系统的许多不同的简化阶梯形式版本和许多不同的参数化。但我们从未这样做过。经验表明,从同一个系统开始,以许多不同的方式进行行操作,总是会得到相同的简化阶梯形式和相同的参数化(使用未修改的自由变量)。

在本节的剩余部分,我们将证明矩阵的简化阶梯形式版本是唯一的。因此,线性系统关于其未修改的自由变量的参数化是唯一的,因为两个不同的参数化将给出两个不同的简化阶梯形式。

我们将在这本书的其余部分使用这个结果,以及导致它的结果,但也许以一种更直接地显得有用的方式重新陈述会令人鼓舞。想象一下,我们求解一个线性系统,参数化,并在书的后面检查答案。但那里的参数化看起来不同。我们犯了错误,还是这些可能是对同一个集合的不同描述,就像上面对的三个描述一样?前一段指出,我们将在这里证明,不同外观的参数化(使用未修改的自由变量)描述了真正不同的集合。

这里有一个非正式的论据,即矩阵的简化行阶梯形式是唯一的。再次考虑本节开头矩阵的例子,它简化为三个不同的行阶梯形式矩阵。三个矩阵中的第一个是自然的行阶梯形式版本。第二个矩阵与第一个相同,只是其中一行被减半了。第三个矩阵也是第一个的化妆变体。简化行阶梯形式的定义禁止了这种胡闹。在简化行阶梯形式中,将一行减半是不可能的,因为这会将该行的首项更改为非 1,并且也不可能组合行,因为这样一来,首项将不再在它的列中独一无二。

这个非正式的论证不是证明;我们已经论证了,没有两个不同的简化行阶梯形式矩阵可以通过单一的操作步骤相关联,但我们还没有排除多个步骤可能会做到的可能性。在我们进行那个证明之前,我们将通过用一种有启发性的术语来改述我们的工作来结束本小节。

许多不同的矩阵产生相同的简化行阶梯形式矩阵。本节开头的三个行阶梯形式矩阵以及它们派生出的矩阵,都给出了这个简化行阶梯形式矩阵。

我们认为这些矩阵彼此相关。下一个结果说明了这种关系。

引理 1.4

初等行操作是可逆的。

证明

对于任何矩阵,交换行的效果可以通过交换回来来逆转,将一行乘以非零的可以通过乘以来撤销,将行 的倍数加到行 (其中 )可以通过从行 中减去相同的行 的倍数来撤销。

条件是必要的。参见问题 7。)

这个引理表明,“化简为”是误导性的——当 时,我们不应该认为 是 “在” 之后” 或 “比” 更简单”。相反,我们应该将它们视为相互可约或相互关联的。下面是这个想法的图示。本节开头出现的矩阵及其行最简形式版本显示在一个群集中。它们都是相互可约的;这些关系也显示出来。

我们说,彼此化简的矩阵是“关于行化简关系的等价矩阵”。下一个结果使用等价的定义来验证此语句。[1]

引理 1.5

在矩阵之间,“化简为”是一种等价关系。

证明

我们必须检查以下条件:(i)自反性,任何矩阵都化简为自身;(ii)对称性,如果 化简为 ,则 化简为 ;(iii)传递性,如果 化简为 并且 化简为 ,则 化简为

自反性很简单;任何矩阵在零次行运算后都化简为自身。

该关系是对称的是 引理 1.4——如果 通过一些行运算化简为 ,则 通过逆转这些运算化简为

为了传递性,假设 简化为 ,并且 简化为 。将来自 的简化步骤与来自 的简化步骤链接起来,就得到了从 的简化。

定义 1.6

通过初等行操作可以互相简化的两个矩阵称为**行等价**。

下图显示所有矩阵的集合作为一个盒子。在该盒子内部,每个矩阵都属于某个类别。当且仅当两个矩阵可以互相简化时,它们属于同一类别。这些类别是互斥的——没有矩阵属于两个不同的类别。 矩阵的集合被划分成**行等价类**。[2]

在这个划分中,其中一个类别是上面显示的矩阵簇,扩展到包括所有非奇异 矩阵。

下一小节证明了矩阵的简化行阶梯形是唯一的;每个矩阵都简化为一个且仅一个简化行阶梯形矩阵。用行等价关系重新表述,我们将证明每个矩阵都行等价于一个且仅一个简化行阶梯形矩阵。就划分而言,我们将证明的是:每个等价类包含一个且仅一个简化行阶梯形矩阵。因此,每个简化行阶梯形矩阵都作为其类别的代表。

在证明之后,正如在本节引言中提到的,我们将有办法判断一个矩阵是否可以通过行简化从另一个矩阵推导出。我们只需对两个矩阵都应用高斯-约旦过程,然后看看它们是否简化为同一个简化行阶梯形。

练习

[edit | edit source]
建议所有读者完成此练习。
问题 1

使用高斯-约旦简化法解每个方程组。

建议所有读者完成此练习。
问题 2

求每个矩阵的简化行阶梯形。

建议所有读者完成此练习。
问题 3

使用高斯-约旦消元法求解每个解集,然后读出参数化。

问题 4

给出此矩阵的两个不同的阶梯形式版本。

建议所有读者完成此练习。
问题 5

列出每个大小可能的简化阶梯形式。

建议所有读者完成此练习。
问题 6

对非奇异矩阵应用高斯-若尔当消元法会得到什么结果?

问题 7

引理 1.4 的证明中包含一个关于行主元操作的 条件的引用。

  1. 行操作的定义在交换操作 上有一个 条件。证明 中,这个条件是不必要的。
  2. 写一个 矩阵,该矩阵具有非零项,并证明操作 不能被操作 逆转。
  3. 扩展该引理的证明,明确说明在何处使用了关于主元操作的 条件。

解答


  1. 有关等价关系的更多信息在附录中。
  2. 有关分区和类代表的更多信息在附录中。
线性代数
 ← 简化行阶梯形 高斯-约旦消元 行等价 → 
华夏公益教科书