矩阵分析系统学习笔记
本系列所有文章来自东北大学韩志涛老师的矩阵分析课程学习笔记,系列如下:
矩阵分析 (一) 线性空间和线性变换
矩阵分析 (二) 内积空间
矩阵分析 (三) 矩阵的标准形
矩阵分析 (四)向量和矩阵的范数
矩阵分析 (五) 矩阵的分解
矩阵分析 (六) 矩阵的函数
矩阵分析 (七) 矩阵特征值的估计
矩阵分析 (八) 矩阵的直积
相似变换是矩阵的一种重要的变换,本章研究矩阵在相似变换下的简化问题,这是矩阵理论的基本问题之一。这种分解简介形式在许多领域中都有重要的作用。
在开始之前说一下矩阵的一些基本概念,设矩阵 A = ( a i j ) n × n A=(a_{ij})_{n \times n} A=(aij)n×n,将矩阵 A A A的元素 a i j a_{ij} aij所在的第 i i i行第 j j j列划去后,剩余的各元素按原来的排列顺序组成的 n − 1 n-1 n−1阶矩阵所确定的行列式称为元素 a i j a_{ij} aij的余子式,记为 M i j M_{ij} Mij,称 A i j = ( − 1 ) i + j M i j A_{ij}=(-1)^{i+j}M_{ij} Aij=(−1)i+jMij为元素 a i j a_{ij} aij的代数余子式。
方阵 A = ( a i j ) n × n A=(a_{ij})_{n \times n} A=(aij)n×n的各元素的代数余子式 A i j A_{ij} Aij所构成的如下矩阵 A ∗ A^{*} A∗:
A 11 A 21 ⋯ A n 1 A 12 A 22 ⋯ x ⋮ ⋮ ⋮ A 1 n A 2 n ⋯ A n n \begin{array}{cccc}{A_{11}} & {A_{21}} & {\cdots} & {A_{n 1}} \\ {A_{12}} & {A_{22}} & {\cdots} & {x} \\ {\vdots} & {\vdots} & {} & {\vdots} \\ {A_{1 n}} & {A_{2 n}} & {\cdots} & {A_{n n}}\end{array} A11A12⋮A1nA21A22⋮A2n⋯⋯⋯An1x⋮Ann
该矩阵 A ∗ A^{*} A∗称为 A A A的伴随矩阵。具有以下性质: A ∗ A = ∣ A ∣ E A^{*}A=|A|E A∗A=∣A∣E。
哈密顿-凯莱定理以及矩阵的最小多项式
本节讨论特征多项式的性质,并讨论另一种重要的多项式-最小多项式。
哈密顿-凯莱定理
- 定理3.1:(哈密顿-凯莱定理)每个 n n n阶矩阵都是它的特征多项式的根,设 A A A为 n n n阶矩阵,
f ( λ ) = ∣ λ E − A ∣ f(\lambda)=|\lambda E - A| f(λ)=∣λE−A∣
= λ n + a n − 1 λ n − 1 + ⋯ + a 1 λ + a 0 = \lambda^{n} + a_{n-1} \lambda^{n-1} + \cdots +a_{1} \lambda +a_{0} =λn+an−1λn−1+⋯+a1λ+a0
则
f ( A ) = A n + a n − 1 A n − 1 + ⋯ + a 1 A + a 0 E = O f(A)=A^{n} + a_{n-1}A^{n-1} + \cdots + a_{1}A + a_{0} E =O f(A)=An+an−1An−1+⋯+a1A+a0E=O
- 例1 :设矩阵:
A = ( 1 0 2 0 − 1 1 0 1 0 ) A=\left(\begin{array}{ccc} {1} & {0} & {2} \\ {0} & {-1} & {1} \\ {0} & {1} & {0} \end{array}\right) A= 1000−11210
试计算:
φ ( A ) = 2 A 8 − 3 A 5 + A 4 + A 2 + 2 E \varphi(A)=2A^{8}-3A^{5}+A^{4}+A^{2}+2E φ(A)=2A8−3A5+A4+A2+2E
解 因为多项式为:
f ( λ ) = ∣ λ E − A ∣ = λ 3 − 2 λ + 1 f(\lambda)=|\lambda E- A| =\lambda^{3}-2\lambda+1 f(λ)=∣λE−A∣=λ3−2λ+1
再取多项式:
φ ( λ ) = 2 λ 8 − 3 λ 5 + λ 4 + λ 2 − 4 \varphi(\lambda)=2\lambda^{8} -3 \lambda^{5}+\lambda^{4}+\lambda^{2}-4 φ(λ)=2λ8−3λ5+λ4+λ2−4
以 f ( λ ) f(\lambda) f(λ)去除 φ ( λ ) \varphi(\lambda) φ(λ)可得余式:
r ( λ ) = 24 λ 2 − 37 λ + 10 r(\lambda)=24\lambda^{2}-37\lambda+10 r(λ)=24λ2−37λ+10
由哈密顿-凯莱定理, f ( A ) = O f(A)=O f(A)=O,所以:
φ ( A ) = r ( A ) = 24 A 2 − 37 A + 10 E \varphi(A)=r(A)=24A^{2}-37A+10E φ(A)=r(A)=24A2−37A+10E
= ( − 3 48 − 26 0 95 − 6 0 − 61 34 ) = \left(\begin{array}{ccc} {-3} & {48} & {-26} \\ {0} & {95} & {-6} \\ {0} & {-61} & {34} \end{array}\right) = −3004895−61−26−634
最小多项式
一般地说,若 A A A是一个方阵, φ ( A ) \varphi(A) φ(A)是一个多项式, φ ( A ) = O \varphi(A)=O φ(A)=O,这种多项式叫作矩阵 A A A的零化多项式,可见每一个矩阵都有零化多项式,并且零化多项式一定有无穷多个,因为特征多项式乘以任何一个多项式还是零化多项式。
那有没有一个次数最低的零化多项式呢?
-
定义3.1:设 A ∈ C n × n A \in C^{n \times n} A∈Cn×n,在 A A A的零化多项式中,次数最低的首项系数为1的多项式,称为矩阵 A A A的最小多项式,记作 m ( λ ) m(\lambda) m(λ)
-
定理3.2:矩阵 A A A的任何零化多项式都能被它的最小多项式整除。
-
定理3.3:矩阵 A A A的最小多项式唯一。
-
定理3.4 :矩阵 A A A的特征多项式的根一定是最小多项式的根,反过来,最小多项式的根也一定是特征多项式的根。
设矩阵 A ∈ C n × n A\in C^{n\times n} A∈Cn×n的所有特征值为 λ 1 , ⋯ , λ s \lambda_{1},\cdots,\lambda_{s} λ1,⋯,λs,又 A A A的特征多项式为:
f ( λ ) = ∣ λ E − A ∣ f(\lambda)=|\lambda E-A| f(λ)=∣λE−A∣
= ( λ − λ 1 ) k 1 ( λ − λ 2 ) k 2 ⋯ ( λ − λ s ) k s =(\lambda-\lambda_{1})^{k_{1}}(\lambda-\lambda_{2})^{k_{2}} \cdots (\lambda-\lambda_{s})^{k_{s}} =(λ−λ1)k1(λ−λ2)k2⋯(λ−λs)ks
则 A A A的最小多项式一定具有如下形式:
m ( λ ) = ( λ − λ 1 ) n 1 ( λ − λ 2 ) n 2 ⋯ ( λ − λ s ) n s m(\lambda)=(\lambda-\lambda_{1})^{n_{1}}(\lambda-\lambda_{2})^{n_{2}}\cdots(\lambda-\lambda_{s})^{n_{s}} m(λ)=(λ−λ1)n1(λ−λ2)n2⋯(λ−λs)ns
这里 n i ≤ k i n_{i} \leq k_{i} ni≤ki。
矩阵的相似对角
把矩阵化为对角形对于解决很多问题都有帮助,如解微分方程组:
d x 1 d t = λ 1 x 1 d x 2 d t = λ 2 x 2 } \left.\begin{array}{l} {\frac{\mathrm{d} x_{1}}{\mathrm{d} t}=\lambda_{1} x_{1}} \\ {\frac{\mathrm{d} x_{2}}{\mathrm{d} t}=\lambda_{2} x_{2}} \end{array}\right\} dtdx1=λ1x1dtdx2=λ2x2}
容易解出:
x 1 = C 1 e λ 1 t , x 2 = C 2 e λ 2 t x_{1}=C_{1}e^{\lambda_{1}t},x_{2}=C_{2}e^{\lambda_{2}t} x1=C1eλ1t,x2=C2eλ2t
而
{ d x 1 d t = a 11 x 1 + a 12 x 2 d x 2 d t = a 21 x 1 + a 22 x 2 \left\{\begin{array}{l} {\frac{\mathrm{d} x_{1}}{\mathrm{d} t}=a_{11} x_{1}+a_{12} x_{2}} \\ {\frac{\mathrm{d} x_{2}}{\mathrm{d} t}=a_{21} x_{1}+a_{22} x_{2}} \end{array}\right. {dtdx1=a11x1+a12x2dtdx2=a21x1+a22x2
如果能化为上一个计算的形式,就很方便求解。
-
定理3.5:设 A ∈ C n × n A\in C^{n \times n} A∈Cn×n,则 A A A可以对角化的充要条件是 A A A有 n n n个线性无关的特征向量。
-
例6:矩阵
A = ( 0 1 0 0 0 1 − 6 − 11 − 6 ) A=\left(\begin{array}{ccc} {0} & {1} & {0} \\ {0} & {0} & {1} \\ {-6} & {-11} & {-6} \end{array}\right) A= 00−610−1101−6
是否可以对角化?
解 因为:
f ( λ ) = ∣ λ E − A ∣ = ( λ + 1 ) ( λ + 2 ) ( λ + 3 ) f(\lambda)=|\lambda E-A|=(\lambda+1)(\lambda+2)(\lambda+3) f(λ)=∣λE−A∣=(λ+1)(λ+2)(λ+3)
矩阵 A A A的特征值为-1,-2,-3。
由于 A A A的三个特征值互不相同,固 A A A有三个线性无关的特征向量, A A A可以对角化,进一步可以得到特征向量:
P 1 = ( 1 − 1 1 ) , P 2 = ( 1 − 2 4 ) , P 3 = ( 1 − 3 9 ) P_{1}=\left(\begin{array}{ccc} {1} \\{-1} \\{1} \end{array}\right), P_{2}=\left(\begin{array}{ccc} {1} \\{-2} \\{4} \end{array}\right), P_{3}=\left(\begin{array}{ccc} {1} \\{-3} \\{9} \end{array}\right) P1= 1−11 ,P2= 1−24 ,P3= 1−39
P = ( 1 1 1 − 1 − 2 − 3 1 4 9 ) , P=\left(\begin{array}{ccc} {1} & {1} & {1} \\ {-1} & {-2} & {-3} \\ {1} & {4} & {9} \end{array}\right), P= 1−111−241−39 ,
P − 1 A P = ( − 1 − 2 − 3 ) P^{-1}AP=\left(\begin{array}{ccc} {-1} \\ & {-2} \\ & & {-3} \end{array}\right) P−1AP= −1−2−3
约当标准形
并不是每个方阵都能够相似于对角矩阵,如果矩阵不能对角化,矩阵总可以通过相似变换化为约当标准形。
- 定义3.2:形如:
J i = ( λ i 1 λ i ⋱ 1 λ i ) r i × r i J_{i}=\left(\begin{array}{cccc} {\lambda_{i}} & {} & {} & {} \\ {1} & {\lambda_{i}} & {} & {} \\ {} & {} & {\ddots} & {} \\ {} & {} & {} & {1} & {\lambda_{i}} \end{array}\right)_{r_{i} \times r_{i}} Ji= λi1λi⋱1λi ri×ri
的矩阵称为 r i r_{i} ri阶约当块,由若干个约当块构成的分块对角矩阵:
J = ( J 1 J 2 ⋱ J s ) J=\left(\begin{array}{cccc} {J_{1}} & {} & {} & {} \\ {} & {J_{2}} & {} & {} \\ {} & {} & {\ddots} & {} \\ {} & {} & {} & {J_{s}} \end{array}\right) J= J1J2⋱Js
称为约当标准形。
- 定理3.6 :设 A ∈ C n × n A \in C^{n \times n} A∈Cn×n,则 A A A与一个约当矩阵 J J J相似,即存在 P ∈ C n × n P \in C^{n \times n} P∈Cn×n使得 P − 1 A P = J P^{-1}AP=J P−1AP=J这个约当矩阵 J J J除了约当块的排列次序外由矩阵 A A A唯一确定,称 J J J为 A A A的约当标准形。
求解约当标准形
下面我们介绍用行列式因子法确定约当标准形的方法:
设矩阵 A A A的元素都是 λ \lambda λ的多项式,则 A A A称为 λ \lambda λ矩阵,记作 A ( λ ) A(\lambda) A(λ),特殊地, A ∈ C n × n A \in C^{n \times n} A∈Cn×n, λ E − A \lambda E - A λE−A是 A A A的特征矩阵,这也是 λ \lambda λ矩阵。
公因式:一个多项式中每一项都含有的相同的因式,叫做这个多项式各项的公因式。
- 定义3.3: A ( λ ) A(\lambda) A(λ)中所有非零的 k k k阶子式的首项系数为1的最大公因式 D k ( λ ) D_{k}(\lambda) Dk(λ)称为 A A A的一个 k k k级行列式因子。
由定义 D n ( λ ) = ∣ λ E − A ∣ D_{n}(\lambda)=|\lambda E-A| Dn(λ)=∣λE−A∣,又因为 D k − 1 ( λ ) D_{k-1}(\lambda) Dk−1(λ)能够整除每一个 k − 1 k-1 k−1级子式,而每一个 k k k级子式可以展开为 k − 1 k-1 k−1级子式的线性组合,所以 D k − 1 D_{k-1} Dk−1能够整除 D k D_{k} Dk,即 D k − 1 ∣ D k D_{k-1}|D_{k} Dk−1∣Dk。
- 定义3.4:下列 n n n个多项式
d 1 = D 1 , d 2 = D 2 D 1 , ⋯ , d n = D n D n − 1 d_{1}=D_{1},d_{2}=\frac{D_{2}}{D_{1}},\cdots , d_{n}=\frac{D_{n}}{D_{n-1}} d1=D1,d2=D1D2,⋯,dn=Dn−1Dn
称为 A ( λ ) A(\lambda) A(λ)的不变因子。把每个次数大于零的不变因子分解为互不相同的一次因子的方幂的乘积,所有这些一次因子的方幂(相同的必须按出现次数计算)称为 A A A的初级因子。
- 例9:求下列矩阵的不变因子及初级因子。
A = ( − 1 − 2 1 2 ) A=\left(\begin{array}{ccc} {-1} & & &\\ & {-2} & &\\ & & {1}&\\ &&&{2}& \end{array}\right) A= −1−212
- f ( λ ) f(\lambda) f(λ)= ∣ λ E − A ∣ |\lambda E - A| ∣λE−A∣ = ( λ + 1 ) ( λ + 2 ) ( λ − 1 ) ( λ − 2 ) (\lambda+1)(\lambda+2)(\lambda-1)(\lambda-2) (λ+1)(λ+2)(λ−1)(λ−2)。
行列式因子:
D 3 = D 2 = D 1 = 1 , D 4 = f ( λ ) D_{3}=D_{2}=D_{1}=1, D_{4}=f(\lambda) D3=D2=D1=1,D4=f(λ)
不变因子:
d 1 = d 2 = d 3 = 1 , d 4 = f ( λ ) d_{1}=d_{2}=d_{3}=1,d_{4}=f(\lambda) d1=d2=d3=1,d4=f(λ)
初级因子:
λ + 1 , λ + 2 , λ − 1 , λ − 2 \lambda+1,\lambda+2,\lambda-1,\lambda-2 λ+1,λ+2,λ−1,λ−2
有了上述概念,就可以求得矩阵 A A A的约当标准形。设 A A A的全部初级因子是:
( λ − λ 1 ) k 1 , ( λ − λ 2 ) k 2 , ⋯ , ( λ − λ s ) k s (\lambda-\lambda_{1})^{k_{1}},(\lambda-\lambda_{2})^{k_{2}},\cdots , (\lambda-\lambda_{s})^{k_{s}} (λ−λ1)k1,(λ−λ2)k2,⋯,(λ−λs)ks
这里 λ 1 \lambda_{1} λ1, λ 2 \lambda_{2} λ2, ⋯ \cdots ⋯, λ s \lambda_{s} λs可能有相同的,指数 k 1 k_{1} k1, k 2 k_{2} k2, ⋯ \cdots ⋯, k s k_{s} ks也可能有相同的,对每个初级因子 ( λ − λ i ) k i (\lambda-\lambda_{i})^{k_{i}} (λ−λi)ki构成一个 k i k_{i} ki阶约当块:
J i = ( λ i 1 λ i ⋱ ⋱ 1 λ i ) ( i = 1 , 2 , ⋯ , 3 ) J_{i}=\left(\begin{array}{cccc} {\lambda_{i}} & {} & {} & {} \\ {1} & {\lambda_{i}} & {} & {} \\ {} & {\ddots} & {\ddots} & {} \\ {} & {} & {1} & {\lambda_{i}} \end{array}\right) \quad(i=1,2, \cdots, 3) Ji= λi1λi⋱⋱1λi (i=1,2,⋯,3)
由所有这些约当块构成的分块对角矩阵:
J = ( J 1 J 2 ⋱ J 1 ) J=\left(\begin{array}{cccc} {J_{1}} & {} & {} & {} \\ {} & {J_{2}} & {} & {} \\ {} & {} & {\ddots} & {} \\ {} & {} & {} & {J_{1}} \end{array}\right) J= J1J2⋱J1
称为矩阵 A A A的约当标准形。
- 定理3.7:每个 n n n阶复数矩阵 A A A都与一个约当标准形 J J J相似,即存在矩阵 P P P使得:
P − 1 A P = J P^{-1}AP=J P−1AP=J
除去约当块的排列次序外,约当形矩阵由矩阵 A A A唯一确定。
史密斯标准形
从上一节可以看到,求出矩阵的行列式因子、不变因子以及初级因子,就可以求出矩阵的约当标准形。而当矩阵阶数比较高时,求它的行列式因子比较麻烦。如果矩阵比较特殊,比方说是对角矩阵,就可以比较方便地求出行列式因子。所以考虑先把矩阵对角化,就可以比较方便地求出行列式因子。所以考虑先把矩阵化为对角形,问题是在把矩阵化为对角形时,矩阵的行列式因子是否改变。
- 定义3.5:下列变换称为矩阵 A A A的初等变换:
- 互换矩阵 A A A的任意两行(两列);
- 以非零的数 k k k乘 A A A的某一行(列);
- 以多项式 φ ( λ ) \varphi(\lambda) φ(λ)乘以 A A A的某一行(列)加到另一行(列)上。
可以看出,这三种变换不会改变行列式因子。
- 定义3.6:下面形式的矩阵:
A ( λ ) = ( d 1 ( λ ) d 2 ( λ ) ⋱ d r ( λ ) 0 ⋱ 0 ) A(\lambda)=\left(\begin{array}{ccccc} {d_{1}(\lambda)} & {} & {} & {} & {} \\ {} & {} & {d_{2}(\lambda)} & {} & {} \\ {} & {} & {} & {\ddots} & {} \\ {} & {} & {} & {} & {d_{r}(\lambda)} \\ {} & {} & {} & {} & {} & {0} \\ {} & {} & {} & {} & {} & {} & {\ddots} \\ {} & {} & {} & {} & {} & {} & {} & {0} \end{array}\right) A(λ)= d1(λ)d2(λ)⋱dr(λ)0⋱0
称为矩阵 A A A的史密斯标准形,其中:
d i ∣ d i + 1 ( i = 1 , 2 , ⋯ , r − 1 ) d_{i}|d_{i+1} (i=1,2,\cdots,r-1) di∣di+1(i=1,2,⋯,r−1)
我们有下面的结论。
- 定理3.8:任何一个非零多项式矩阵 A A A都可以经过初等变化为史密斯标准形。
下面讨论怎么把一个矩阵 A A A化为史密斯标准形。假设一个矩阵经过初等变换化为如下形式的标准形:
( d 1 d 2 ⋱ d r d r + 1 ⋱ d n ) \left(\begin{array}{cccccc} {d_{1}} \\ {} & {d_{2}} \\ {} & {} & {\ddots} \\ {} & {} & {} & {d_{r}} \\ {} & {} & {} & {} & {d_{r+1}} \\ {} & {} & {} & {} & {} & {\ddots} \\ {} & {} & {} & {} & {} & {}& {d_{n}} \end{array}\right) d1d2⋱drdr+1⋱dn
其中 d i ∣ d i + 1 d_{i}|d_{i+1} di∣di+1。
由上面所述,在这个过程中,行列式因子不变,所以变换后的矩阵与原来的矩阵有相同的行列式因子。而这个矩阵的行列式因子很容易得出:
D 1 = d 1 , D 2 = d 1 d 2 , ⋯ , D n = d 1 d 2 ⋯ d n D_{1}=d_{1},D_{2}=d_{1}d_{2},\cdots ,D_{n}=d_{1}d_{2}\cdots d_{n} D1=d1,D2=d1d2,⋯,Dn=d1d2⋯dn
由此可以得出,对角线上的元素正好是矩阵的不变因子。
特殊地,左上角的元素为一阶行列式因子,即矩阵的所有元素的公因子。这个公因子可以很容易求出。我们之后就可以利用这个结论求出史密斯标准形。
现在设矩阵 A ( λ ) A(\lambda) A(λ)是一个 λ \lambda λ矩阵
首先通过观察确定左上角第一个元素,如果矩阵中有这一项,就把它挪到左上角上去,如果没有这一项,可以通过初等变换得出这一项。因为它是所有元素的公因子,能够整除所有元素,也一定能够整除它们的组合,所以可以通过初等变换得到。
左上角的元素得到以后,可以利用初等变换把它所在的行和列的其他元素都消成零,矩阵变成如下形式:
( d 1 0 0 B 1 ( λ ) ) \left(\begin{array}{cccccc} {d_{1}} & {0} \\ {0} & {B_{1}(\lambda)} \\ \end{array}\right) (d100B1(λ))
这时对于矩阵 B 1 B_{1} B1来说,相当于一个新的矩阵,如果把它化成史密斯标准形,则左上角第一个元素仍然是 B 1 B_{1} B1的一阶行列式因子,可以用同样的方法求出,在这个过程中,使用的是初等变换,而 d 1 d_{1} d1能够整除所有元素,当然能够整除它们的组合,所以 d 1 ∣ d 2 d_{1}|d_{2} d1∣d2,这时矩阵可以通过初等变换化为下面的形式:
( d 1 d 1 B 2 ( λ ) ) \left(\begin{array}{cccccc} {d_{1}} \\ {} &{d_{1}} & {} \\ {} & {} & {B_{2}(\lambda)} \\ \end{array}\right) d1d1B2(λ)
重复这个过程,即可得到史密斯标准形:
( d 1 d 2 ⋱ d r 0 ⋱ 0 ) \left(\begin{array}{cccccc} {d_{1}} \\ {} & {d_{2}} \\ {} & {} & {\ddots} \\ {} & {} & {} & {d_{r}} \\ {} & {} & {} & {} & {0} \\ {} & {} & {} & {} & {} & {\ddots} \\ {} & {} & {} & {} & {} & {}& {0} \end{array}\right) d1d2⋱dr0⋱0
我的微信公众号名称:小小何先生
公众号介绍:主要研究分享深度学习、机器博弈、强化学习等相关内容!期待您的关注,欢迎一起学习交流进步!