LU分解
对矩阵(A),有(E_{21}A = U):
[egin{pmatrix}
1 & 0 \
-4 & 1
end{pmatrix}
egin{pmatrix}
2 & 1 \
8 & 7
end{pmatrix}
=
egin{pmatrix}
2 & 1 \
0 & 3
end{pmatrix}
]
现在要转换成(A = LU)的形式,这里的(L)即为(E_{21}^{-1})。
[egin{pmatrix}
2 & 1 \
8 & 7
end{pmatrix}
=
egin{pmatrix}
1 & 0 \
4 & 1
end{pmatrix}
egin{pmatrix}
2 & 1 \
0 & 3
end{pmatrix}
]
这种分解形式相当于将一个矩阵分解为一个对角线全为(1)的下三角矩阵与一个对角线为主元的上三角矩阵的乘积。
另外一种分解方式是(A = LDU),其中(D)是一个对角线为主元的对角矩阵(diagonal),如:
[egin{pmatrix}
2 & 1 \
8 & 7
end{pmatrix}
=
egin{pmatrix}
1 & 0 \
4 & 1
end{pmatrix}
egin{pmatrix}
2 & 0 \
0 & 3
end{pmatrix}
egin{pmatrix}
1 & frac{1}{2} \
0 & 1
end{pmatrix}
]
为什么用(A = LU),而不是(U = EA)?
答:(L)容易计算,(E)不易计算:(L)是将消元的系数直接写到单位阵上得到的。因此,(L)只包含消去信息,(E)包含其他信息。
LU分解求线性方程组与计算量
(LU)分解一个比较重要的意义在于加速(多个)线性方程组的求解。首先将(A)分解为(LU)的形式,然后再计算(LUx = b)。计算(LUx = b),可以分为两步,即:(Ly = b, Ux = y)。这两个线性方程组的求解都是(O(n^2))的。
将(n)阶矩阵(A)通过初等行变换,变为(U),总共大概需要(n^2 +(n – 1)^2 + dots ,1^2 approx frac{1}{3}n^3)次操作。
LU分解的存在性和唯一性
存在性定理:设可逆矩阵(A)的顺序主子阵(A_k(k = 1, dots, n))均为可逆矩阵,则(A)有(LU)分解。
证明:对(A)的阶数(n)用数学归纳法。当(n = 1)时,(L = (1), U = A = (a_{11})
eq 0),定理成立!设(n = k)时定理成立,则(n = k + 1)时,设(A = pmatrix{A_k & eta \ alpha^T & a_{nn}}),其中(eta)是(k)维列向量,(alpha^T)是(k)维行向量。由(A_k)可逆,对(A)做消元:(pmatrix{I_k & 0 \ -alpha^TA_k^{-1} & 1}A = pmatrix{A_k & eta \ 0 & a_{nn} – alpha^TA_k^{-1}eta}),即:(A = pmatrix{I_k & 0 \ alpha^TA_k^{-1} & 1}pmatrix{A_k & eta \ 0 & a_{nn} – alpha^TA_k^{-1}eta})。因为此时右侧矩阵还未达到(U)的形式,因此需要继续分解。由归纳假设,(A_k = L_kU_k)。故:(A = pmatrix{I_k & 0 \ alpha^TA_k^{-1} & 1}pmatrix{L_k & 0 \ 0 & 1}pmatrix{U_k & L_k^{-1}eta \ 0 & a_{nn} – alpha^TA_k^{-1}eta} = LU)。定理得证!
唯一性定理:设(n)阶可逆阵(A = LU),其中(L)为下三角矩阵,(U)为上三角矩阵,且(l_{ii} = 1, u_{ii}
eq 0(1 leq i leq n)),则分解唯一。
证明:设可逆阵(A)有两个(LU)分解:(A = L_1U_1 = L_2U_2),则(L_1^{-1}L_2 = U_1U_2^{-1}),因为上(下)三角矩阵乘以上(下)三角矩阵也为上(下)三角矩阵,两者相等说明都为对角阵。因为(L_1, L_2)的对角元为(1),故(L_1^{-1}L_2)对角元全为(1),故(L_1^{-1}L_2 = U_1U_2^{-1} = I),即(L_1 = L_2, U_1 = U_2)
对称矩阵的(LDL^T)分解
设可逆对称矩阵(A)不需换行,只通过消元能化成上三角矩阵(U),有(A = LDU),则(A = A^T = U^TDL^T)。由(LDU)分解唯一性知(U = L^T),故(A = LDL^T)
置换矩阵
一个(n)元置换是(1, 2, dots, n)的一个排列,这诱导了(n)阶单位矩阵行的一个重排。单位阵行重排后得到的矩阵称为置换矩阵。
总共有(n!)个(n)阶置换阵。置换阵的逆还是置换阵,置换阵的乘积仍是置换阵。置换矩阵(P)满足(P^{-1} = P^T)。
(PA = LU)分解
设(A)是一个(n)阶可逆阵,则存在置换阵(P),使得(PA = LU)。
证明:对矩阵(A)的阶数(n)用数学归纳法。当(n = 1)时定理显然成立,假设(n = k)时定理成立。当(n = k + 1)时,(A)的第一列有非零元,否则(A)不可逆。设(a_{i1}
eq 0),则调换第(1)行和第(i)行,得矩阵(A’),于是(A’ = P_{i1}A)也可逆,对(A’)作消元得(A” = pmatrix{a_{i1} & * \ 0 & A_1}),且(A’ = pmatrix{1 & 0 \ t & I}A”)。(A_1)为(n – 1)阶可逆阵,由归纳假设知,存在(n – 1)阶置换阵(P_1)使得(P_1A_1 = L_1U_1),于是:
[egin{aligned}
P_{i1}A = A’ &= pmatrix{1 & 0 \ t & I}pmatrix{a_{i1} & * \ 0 & A_1} \
&= pmatrix{1 & 0 \ t & I}pmatrix{1 & \ & P_1^{-1}}pmatrix{1 & \ & L_1}pmatrix{a_{i1} & * \ 0 & U_1} \
&= pmatrix{1 & \ & P_1^{-1}}pmatrix{1 & 0 \ P_1t & I}pmatrix{1 & \ & L_1}pmatrix{a_{i1} & * \ 0 & U_1} \
end{aligned}
]
(注:最后一步的变换是为了凑出形式)
故,(pmatrix{1 & \ & P_1}P_{i1}A = pmatrix{1 & 0 \ P_1t & L_1}pmatrix{a_{i1} & * \ 0 & U_1} = LU)
最后令(P = pmatrix{1 & \ & P_1}P_{i1}),则(PA = LU)