MIT线性代数笔记04-矩阵A的LU分解

Linear Algebra-Lecture04 矩阵A的LU分解

Gilbert Strang

矩阵乘积的逆



A \bf A A都逆矩阵存在,则 A A − 1 = I = A − 1 A \bf A \bf A^{-1}=\bf I =\bf A^{-1} \bf A AA1=I=A1A

A \bf A A B \bf B B的逆矩阵都存在,则 ( A B ) − 1 = B − 1 A − 1 \bf {(AB)^{-1}}=\bf B^{-1}\bf A^{-1} (AB)1=B1A1
解释: ( A B ) B − 1 A − 1 = A ( B B − 1 ) A − 1 = I \bf{(AB)}\bf B^{-1}A^{-1}=\bf{A(BB^{-1})A^{-1}}=\bf I (AB)B1A1=A(BB1)A1=I,因此 A B \bf {AB} AB的逆矩阵为 B − 1 A − 1 \bf B^{-1}\bf A^{-1} B1A1

转置的逆

A A − 1 = I ⇒ ( A A − 1 ) T = I T ⇒ ( A − 1 ) T A T = I \bf A \bf A^{-1}=\bf I\qquad\Rightarrow\bf {(A A^{-1})^T}=\bold{I}^T\qquad\Rightarrow\bf {(A^{-1})^TA^T}=\bold{I} AA1=I(AA1)T=IT(A1)TAT=I,因此, A T \bf A^T AT的逆为 ( A − 1 ) T \bf (A^{-1})^T (A1)T,即 ( A T ) − 1 = ( A − 1 ) T \bf (A^T)^{-1}=\bf (A^{-1})^T (AT)1=(A1)T,换句话说,对于单个矩阵而言,转置和逆两种运算,其顺序可以颠倒。

LU分解

A = [ 2 1 8 7 ] \bf A=\begin{bmatrix}2&1\\8&7\end{bmatrix} A=[2817],用初等矩阵 E 21 = [ 1 0 − 4 1 ] \bf E_{21}=\begin{bmatrix}1&0\\-4&1\end{bmatrix} E21=[1401]进行行变换,可得到上三角矩阵 U = [ 2 1 0 3 ] \bf U=\begin{bmatrix}2&1\\0&3\end{bmatrix} U=[2013].
E 21 A = U [ 1 0 − 4 1 ] [ 2 1 8 7 ] = [ 2 1 0 3 ] \begin{array}{cccc} \bf E_{21}&\bf A&=&\bf U\\ \begin{bmatrix}1&0\\-4&1\end{bmatrix}&\begin{bmatrix}2&1\\8&7\end{bmatrix}&=&\begin{bmatrix}2&1\\0&3\end{bmatrix} \end{array} E21[1401]A[2817]==U[2013]

A = L U [ 2 1 8 7 ] = [ 1 0 4 1 ] [ 2 1 0 3 ] = [ 1 0 4 1 ] [ 2 0 0 3 ] [ 1 1 2 0 1 ] \begin{array}{cccc} \bf A&=&\bf L&\bf U\\ \begin{bmatrix}2&1\\8&7\end{bmatrix}&=& \begin{bmatrix}1&0\\4&1\end{bmatrix} &\begin{bmatrix}2&1\\0&3\end{bmatrix}\\\\ &=&\begin{bmatrix}1&0\\4&1\end{bmatrix}& \begin{bmatrix}2&0\\0&3\end{bmatrix}& \begin{bmatrix}1&\frac 1 2\\0&1\end{bmatrix} \end{array} A[2817]===L[1401][1401]U[2013][2003][10211]
此处U(Upper)表示上三角矩阵,L(Lower)表示下三角矩阵。

对于 3 × 3 3\times 3 3×3的矩阵 A A A,在没有行交换的情况下:
E 32 E 31 E 21 A = U A = E 21 − 1 E 31 − 1 E 32 − 1 U \begin{array}{c} \bold{E}_{32}\bold{E}_{31}\bold{E}_{21}\bold{A}=\bold{U}\\\\ \bold{A}=\bold{E}_{21}^{-1}\bold{E}_{31}^{-1}\bold{E}_{32}^{-1}\bold{U} \end{array} E32E31E21A=UA=E211E311E321U

这里计算 L = E 21 − 1 E 31 − 1 E 32 − 1 \bold{L}=\bold{E}_{21}^{-1}\bold{E}_{31}^{-1}\bold{E}_{32}^{-1} L=E211E311E321比计算 ( E 32 E 31 E 21 ) − 1 (\bold{E}_{32}\bold{E}_{31}\bold{E}_{21})^{-1} (E32E31E21)1要简单,如果没有行交换,可将消元乘数直接写入L中。可以在得到LU的过程中把A抛开。不妨设:
A = [ 1 2 1 3 8 1 3 4 1 ] \bold{A}=\begin{bmatrix} 1&2&1\\ 3&8&1\\ 3&4&1 \end{bmatrix} A=133284111

E 21 = [ 1 0 0 − 3 1 0 0 0 1 ] \bold{E}_{21}=\begin{bmatrix} 1&0&0\\ \boxed{-3}&1&0\\ 0&0&1 \end{bmatrix} E21=130010001 E 31 = [ 1 0 0 0 1 0 − 3 0 1 ] \bold{E}_{31}=\begin{bmatrix} 1&0&0\\ 0&1&0\\ \boxed{-3}&0&1 \end{bmatrix} E31=103010001 E 32 = [ 1 0 0 0 1 0 0 1 1 ] \bold{E}_{32}=\begin{bmatrix} 1&0&0\\ 0&1&0\\ 0&\boxed{1}&1 \end{bmatrix} E32=100011001,消元乘数分别为3,3,-1 。

易得: ( E 21 ) − 1 = [ 1 0 0 3 1 0 0 0 1 ] (\bold{E}_{21})^{-1}=\begin{bmatrix} 1&0&0\\ 3&1&0\\ 0&0&1 \end{bmatrix} (E21)1=130010001 ( E 31 ) − 1 = [ 1 0 0 0 1 0 3 0 1 ] (\bold{E}_{31})^{-1}=\begin{bmatrix} 1&0&0\\ 0&1&0\\ 3&0&1 \end{bmatrix} (E31)1=103010001 ( E 32 ) − 1 = [ 1 0 0 0 1 0 0 − 1 1 ] (\bold{E}_{32})^{-1}=\begin{bmatrix} 1&0&0\\ 0&1&0\\ 0&-1&1 \end{bmatrix} (E32)1=100011001

可以算出: L = E 21 − 1 E 31 − 1 E 32 − 1 = [ 1 0 0 3 1 0 3 − 1 1 ] \bold{L}=\bold{E}_{21}^{-1}\bold{E}_{31}^{-1}\bold{E}_{32}^{-1}=\begin{bmatrix} 1&0&0\\ \boxed{3}&1&0\\ \boxed{3}&\boxed{-1}&1 \end{bmatrix} L=E211E311E321=133011001

消元算法的复杂度 O ( n ) \text{O}(n) O(n)

假设有一 n × n n\times n n×n的方阵 A \bold{A} A,其中没有0,完成消元需要多少步?

第一步:将主元一下方全变成0,需要进行约 n 2 n^2 n2次乘法和加法;
第二步:将主元二下方全变乘0,需要进行约 ( n − 1 ) 2 (n-1)^2 (n1)2次乘法和加法;
第三步:将主元三下方全变乘0,需要进行约 ( n − 3 ) 2 (n-3)^2 (n3)2次乘法和加法;
⋯ \cdots
最后一步:将主元n-1下方全变乘0,需要进行约1次乘法和加法;
所以消元所需要进行的步骤数约为 s = ∑ i = 0 n i 2 ≈ 1 3 n 3 s=\sum\limits_{i=0}^n i^2\approx \frac 1 3 n^3 s=i=0ni231n3
因此, O ( n ) = n 3 \text{O}(n)=n^3 O(n)=n3

转置与置换

考虑所有 A 3 × 3 \bold{A}_{3 \times 3} A3×3的置换矩阵:
I = [ 1 0 0 0 1 0 0 0 1 ] \bold{I}=\begin{bmatrix} 1&0&0\\ 0&1&0\\ 0&0&1 \end{bmatrix} I=100010001

P 2 = [ 0 1 0 1 0 0 0 1 ] \bold{P}_{2}=\begin{bmatrix} 0&1&0\\ 1&0&0\\ &0&1 \end{bmatrix} P2=01100001,表示置换1,2行。得到该矩阵的方法只需将单位矩阵1,2行互换即可。
除此之外,还有 [ 0 0 1 0 1 0 1 0 0 ] \begin{bmatrix} 0&0&1\\ 0&1&0\\ 1&0&0 \end{bmatrix} 001010100 [ 1 0 0 0 0 1 0 1 0 ] \begin{bmatrix} 1&0&0\\ 0&0&1\\ 0&1&0\\ \end{bmatrix} 100001010 [ 0 1 0 0 0 1 1 0 0 ] \begin{bmatrix} 0&1&0\\ 0&0&1\\ 1&0&0\\ \end{bmatrix} 001100010
[ 0 0 1 1 0 0 0 1 0 ] \begin{bmatrix} 0&0&1\\ 1&0&0\\ 0&1&0\\ \end{bmatrix} 010001100,总共有 A 3 3 A_3^3 A33种置换矩阵,同理,若为n阶方阵,总的置换矩阵(包括单位阵),共有 A n n A_n^n Ann个。

不难发现,将任意两个置换矩阵相乘,结果仍在置换矩阵群中,并且每个置换矩阵的逆是其自身的转置。


课程资源

  • 主课:bilibli、网易公开课都可以搜到,关键字(麻省理工,线性代数)
  • 配套习题课:bilibli可以搜到,关键字(麻省理工,线性代数,陈莉楠)
  • 教材:Gilbert Strang.Introduction to Linear Algebra
  • 课程官网:http://web.mit.edu/18.06
    \qquad\qquad https://mitmath.github.io/1806/
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值