Processing math: 100%

线性代数 Cheat Sheet 2-5:矩阵因式分解

  矩阵 A因式分解是把 A 表示为两个或更多个矩阵的乘积。矩阵乘法是数据的综合,矩阵因式分解是数据的分解,分解后的结构可能更有用,或更便于计算。

1. LU 分解

  设 Am×n 矩阵,它可以行化简为阶梯形而不必进行行对换,则 A 可写成形式 A=LULm×m 下三角矩阵,主对角线元素全是 1UA 的一个 m×n 阶梯形矩阵。

A=LU=[1000100101][◼0◼000◼00000]

  其中矩阵 L 是可逆的,称为单位下三角矩阵

  当 A=LU 时,方程 Ax=b 可以写成 L(Ux)=b,把 Ux 写成 y,则可以由解下面一对方程来求解 x

Ly=bUx=y

首先解 Ly=b 求得 y,然后解 Ux=y 求得 x。由于 LU 都是三角矩阵,这两个方程都比较容易解。

2. LU 分解算法

  设 A 可以化为阶梯形 U,化简过程中仅使用行倍加变换,此时存在单位下三角矩阵 E1,,Ep,使

EpE1A=U

于是

A=(EpE1)1U=LU

其中

L=(EpE1)1

  可以证明,单位下三角矩阵的乘积和逆也是单位下三角矩阵,于是 L 是单位下三角矩阵。

  由 (2) 式有

EpE1L=I

可见 (1) 中的行变换 EpE1A 化为 U,也把 L 化为 I

  LU 分解的算法
1. 如果可能的话,用一系列的行倍加变换把 A 化为阶梯形 U
2. 填充 L 的元素使相同的行变换把 L 变为 I

  注意上面的第 1 步并不总是可能的,如果可能,则 LU 分解存在。