4.5 置换矩阵
是不是任意可逆矩阵都可进行 L D U LDU LDU 分解呢?其实不能,消元操作需要除以对角元素 a i i a_{ii} aii ,当其为 0 0 0 时,则会失败。这时可在下面行中选择任一对角元素不为 0 0 0 的行,对调这两行,则可继续消元。例如
A = [ 0 0 2 1 2 3 0 1 2 ] A= \left[ \begin{matrix} 0 & 0 & 2\\ 1 & 2 & 3\\ 0 & 1 & 2 \end{matrix} \right] A=⎣⎡010021232⎦⎤
第一行第一个元素
a
11
a_{11}
a11 为
0
0
0 ,无法消除第二行第一列的非零元素。矩阵后面两行中,第二行第一个元素
a
21
a_{21}
a21 非零,则对调这两行,矩阵变换为
[
1
2
3
0
0
2
0
1
2
]
\left[ \begin{matrix} 1 & 2 & 3\\ 0 & 0 & 2\\ 0 & 1 & 2 \end{matrix} \right]
⎣⎡100201322⎦⎤
此时第一列元素除对角线外已经都是 0 0 0 。同理消除第二列时,第二行对角线元素为 0 0 0 ,此时也需要对调后两行,矩阵变换为
[ 1 2 3 0 1 2 0 0 2 ] \left[ \begin{matrix} 1 & 2 & 3\\ 0 & 1 & 2 \\ 0 & 0 & 2 \end{matrix} \right] ⎣⎡100210322⎦⎤
成为上三角阵。
重要性质 对任意可逆矩阵,经过适当的行对调操作,可以分解为 L D U LDU LDU 。
类似消元操作,行对调操作也可以用矩阵乘法实现,该矩阵称为置换矩阵。
定义 置换矩阵 矩阵 P i j P_{ij} Pij 是单位矩阵 E E E 对调 i , j i,j i,j 两行所得。
例如
P
12
=
[
0
1
0
1
0
0
0
0
1
]
P
13
=
[
0
0
1
0
1
0
1
0
0
]
P
23
=
[
1
0
0
0
0
1
0
1
0
]
P_{12}= \left[ \begin{matrix} 0 & 1 & 0\\ 1 & 0 & 0 \\ 0 & 0 & 1 \end{matrix} \right] P_{13}= \left[ \begin{matrix} 0 & 0 & 1 \\ 0 & 1 & 0\\ 1 & 0 & 0 \end{matrix} \right] P_{23}= \left[ \begin{matrix} 1 & 0 & 0 \\ 0 & 0 & 1 \\ 0 & 1 & 0 \end{matrix} \right]
P12=⎣⎡010100001⎦⎤P13=⎣⎡001010100⎦⎤P23=⎣⎡100001010⎦⎤
矩阵
A
A
A 列向量左乘置换矩阵
P
i
j
P_{ij}
Pij 就是对调向量的
i
,
j
i,j
i,j 两个分量。
P
i
j
a
k
=
P
i
j
(
a
1
k
,
⋯
,
a
i
k
,
⋯
,
a
j
k
,
⋯
,
a
m
k
)
=
(
a
1
k
,
⋯
,
a
j
k
,
⋯
,
a
i
k
,
⋯
,
a
m
k
)
P_{ij}\mathbf{a}_k = P_{ij}(a_{1k},\cdots,a_{ik},\cdots,a_{jk},\cdots,a_{mk}) = (a_{1k},\cdots,a_{jk},\cdots,a_{ik},\cdots,a_{mk})
Pijak=Pij(a1k,⋯,aik,⋯,ajk,⋯,amk)=(a1k,⋯,ajk,⋯,aik,⋯,amk)
P i j A P_{ij}A PijA 就是对调矩阵 A A A 的 ( i , j ) (i,j) (i,j) 两行。
置换矩阵是正交矩阵, P T P = E P^TP=E PTP=E 。对矩阵进行多次行对调操作,就是多个置换矩阵连乘,记为 P P P , P P P 是单位矩阵 E E E 进行相应的多次行对调结果。
P = P 21 P 32 = [ 0 0 1 1 0 0 0 1 0 ] P=P_{21}P_{32}= \left[ \begin{matrix} 0 & 0 & 1\\ 1 & 0 & 0 \\ 0 & 1 & 0 \end{matrix} \right] P=P21P32=⎣⎡010001100⎦⎤
重要性质 对任意可逆矩阵 A A A,经过适当的行对调操作 P P P,可以分解为 P A = L D U PA = LDU PA=LDU 。
我们还可以换个角度看待 P A = L D U PA = LDU PA=LDU ,由于各矩阵均可逆,得 ( L D U ) − 1 P A = E (LDU)^{-1}PA = E (LDU)−1PA=E ,令 P ′ = ( L D U ) − 1 P P'=(LDU)^{-1}P P′=(LDU)−1P 则 P ′ A = E P'A=E P′A=E ,这说明 P ′ P' P′ 是逆矩阵 A − 1 A^{-1} A−1。通过高斯消元法可得到逆矩阵 A − 1 = U − 1 D − 1 L − 1 P A^{-1}=U^{-1}D^{-1}L^{-1}P A−1=U−1D−1L−1P ,对角阵 D D D 可逆,需对角元素均不为零,故矩阵 A A A 主元均不为零时,矩阵 A A A 可逆。
当矩阵 A A A 是对称矩阵时,假设没有行对调,则 S = L D U S = LDU S=LDU ,取转置, S T = ( L D U ) T = U T D T L T = U T D L T = S = L D U S^T = (LDU)^T=U^TD^TL^T=U^TDL^T=S=LDU ST=(LDU)T=UTDTLT=UTDLT=S=LDU ,所以有 L T = U L^T=U LT=U 成立。
重要性质 对称矩阵,假设没有行对调,则可以分解为 S = L D L T S = LDL^T S=LDLT 。