赞
踩
本文介绍了矩阵的三角分解,如LU分解,LDR分解,Cholesky分解等。
为博主在学习过程中,总结或者思考的记录,用于加深印象,不作为知识讲解和科普,如果理解有误还请指出。
对矩阵进行分解能够清晰反应出原矩阵的某些数字特征,在矩阵运算中可以起到化简的作用,其次在一些特定的场合将矩阵分解为合适的形式能够减少运算误差,在数值计算中有很重要的地位。
若矩阵A可以表示为:
A
=
[
2
1
4
4
3
13
2
2
20
]
=
[
1
2
1
1
1
1
]
⋅
[
2
1
4
1
5
11
]
=
L
⋅
R
A =
LR分解可以用于解线性方程组
A
x
=
b
Ax = b
Ax=b,若方阵A有LR分解,即
A
=
L
⋅
R
A = L\cdot R
A=L⋅R,令
R
x
=
y
Rx = y
Rx=y,则方程组等价于:
{
L
y
=
b
R
x
=
y
,
此
处
L
.
R
.
b
均
为
已
知
量
\left \{
由于L和R的特殊形式,
L
y
=
b
Ly = b
Ly=b 很容易利用高斯消元迭代求出y,然后代入
R
x
=
y
Rx = y
Rx=y,再次迭代求出x。
L
2
=
[
1
0
1
0
−
a
32
(
1
)
/
a
22
(
1
)
1
0
−
a
42
(
1
)
/
a
22
(
1
)
0
⋱
⋮
⋮
⋮
⋱
⋱
0
−
a
n
2
(
1
)
/
a
22
(
1
)
0
⋯
0
1
]
继
续
左
乘
在
L
1
A
处
,
有
L
2
L
1
A
=
[
a
11
a
12
a
13
⋯
a
1
n
a
22
(
1
)
a
22
(
1
)
⋯
a
2
n
(
1
)
⋮
a
33
(
2
)
⋯
a
3
n
(
2
)
0
⋮
⋱
⋮
0
a
n
3
(
2
)
⋯
a
m
(
2
)
]
L
n
−
1
⋯
L
2
L
1
A
=
[
a
11
a
12
a
13
⋯
a
1
n
a
22
(
1
)
a
22
(
1
)
⋯
a
2
n
(
1
)
a
33
(
2
)
⋯
a
3
n
(
2
)
⋱
⋮
a
m
(
n
−
1
)
]
≜
R
L_{n-1} \cdots L_{2} L_{1} A=\left[
记
L
n
−
1
⋯
L
2
L
1
=
L
−
1
,
则
有
L
−
1
A
=
R
,
L
也
是
下
三
角
矩
阵
,
且
为
单
位
下
三
角
矩
阵
L_{n-1}\cdots L_{2} L_{1}=L^{-1},则有L^{-1}A =R,L也是下三角矩阵,且为单位下三角矩阵
Ln−1⋯L2L1=L−1,则有L−1A=R,L也是下三角矩阵,且为单位下三角矩阵。(下三角矩阵的逆仍然为下三角矩阵)
之前说过,如果遇到某次变换后的主对角元素为0那么就不能继续进行变换,但是我们要是将下面的行移上来呢,那主对角元素不就非0了吗?
我们用增广矩阵的形式来描述上述过程:
[
A
I
n
I
n
]
→
[
P
A
P
I
n
]
→
[
P
A
Q
P
Q
]
=
[
L
P
Q
]
\left [
整个过程的目的就是将A变成下三角矩阵,由于每次只会将右边的列换到左边,所以
Q
Q
Q一定是上三角阵,P为置换阵(多个初等行变换相乘)。
P
A
=
L
Q
−
1
=
L
R
PA = LQ^{-1} = LR
PA=LQ−1=LR
若满秩方阵A有LR分解:
A
=
L
⋅
R
~
A = L\cdot \widetilde{R}
A=L⋅R
则
R
~
\widetilde{R}
R
也是满秩矩阵,且对焦元素不为0,有:
R
~
=
[
d
1
d
2
⋱
d
n
]
[
1
r
12
⋯
r
1
n
1
⋱
⋮
⋱
r
(
n
−
1
)
n
1
]
\widetilde{R}=\left[
从而
A
=
L
D
R
A = LDR
A=LDR,其中L为单位下三角阵,D为对角阵,R为单位上三角阵。
与LR分解对比,我们只需要知道如何分解得到:
R
~
=
D
R
\widetilde{R} = DR
R
=DR,举例说明:
R
~
=
[
2
1
4
1
5
11
]
=
[
2
1
11
]
⋅
[
1
1
/
2
2
1
5
1
]
\widetilde R = \left[
实际上就是除以该行的主对角元素,因为对角矩阵只是会缩放当前行(左乘时),将D分解出去相当于提出了一个系数。
若矩阵A是对称正定矩阵,其顺序主子式
Δ
k
>
0
\Delta_{k}>0
Δk>0,所以A具有唯一的LDR分解,即
A
=
L
D
R
A = LDR
A=LDR,其中D为对角阵:
D
=
(
d
1
⋱
d
n
)
D =
由于A是对称矩阵,则有
A
=
A
T
=
L
D
R
=
(
L
D
R
)
T
=
R
T
D
L
T
A = A^{T}=LDR=(LDR)^{T}=R^{T}DL^{T}
A=AT=LDR=(LDR)T=RTDLT,同时LDR分解是唯一的,说明:
L
=
R
T
L=R^{T}
L=RT,A也可以表示为:
A
=
L
D
R
=
L
D
1
2
D
1
2
L
T
=
L
D
1
2
(
L
D
1
2
)
T
=
G
G
T
A=LDR=LD^{\frac{1}{2}}D^{\frac{1}{2}}L^{T}=LD^{\frac{1}{2}}(LD^{\frac{1}{2}})^{T}=GG^{T }
A=LDR=LD21D21LT=LD21(LD21)T=GGT
这里需要说明,因为A是正定的,D作为对角阵所有元素都是大于零的 (理由我也讲不清楚,但是D的子行列式(
d
1
⋅
d
2
⋯
d
k
d_{1}\cdot d_{2}\cdots d_{k}
d1⋅d2⋯dk)是等于A对应的顺序主子式
Δ
k
\Delta_{k}
Δk的),所以
D
1
2
D^{\frac{1}{2}}
D21 相当于所有元素
d
i
d_{i}
di开方求得。
举例:
[
A
I
n
I
n
]
→
[
P
A
P
T
P
P
T
]
→
[
D
G
G
T
]
\left [
解释一下,这里对A同时进行行和列的变换,因为A是对称矩阵,那么行怎么化简消除,列也应该怎么化简消除,所以两边是转置的关系,又因为总是消除下面的行,消除右边的列,所以P是下三角矩阵,最后的G也是下三角矩阵。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。