知道如何求解特征值后,下面介绍特征值的具体应用
类似消元法的LU分解、施密特正交化的QR分解,特征值部分可以引出对角化分解,但注意对角化的前提在于,矩阵A必须具有n个线性无关的特征向量(可能有/没有重复的特征值,没有重根 ⇒ \Rightarrow ⇒n个线性无关的特征向量,必要不充分条件)
ps. 当矩阵不具有n个线性无关的特征向量,则无法对角化,但可以三角化
假设已经找到所有特征向量,将它们作为列向量构成矩阵
S
=
[
x
1
x
2
⋯
x
n
]
\boldsymbol{S}=\left[
那么,根据特征值的特点,有
A
S
=
A
[
x
1
x
2
⋯
x
n
]
=
[
λ
1
x
1
λ
2
x
2
⋯
λ
n
x
n
]
=
[
x
1
x
2
⋯
x
n
]
[
λ
1
0
⋯
0
0
λ
2
0
⋮
⋱
⋮
0
⋯
0
λ
n
]
=
S
Λ
其中,所有特征值作为对角元,组成矩阵
Λ
=
[
λ
1
0
⋯
0
0
λ
2
0
⋮
⋱
⋮
0
⋯
0
λ
n
]
\boldsymbol{\Lambda}=\left[
再次强调,上述操作的前提是,矩阵A必须具有n个线性无关的特征向量,这样才保证
S
\boldsymbol S
S可逆
最终,矩阵对角化表示为
A
=
S
Λ
S
−
1
\boldsymbol{A}=\boldsymbol{S}\boldsymbol{\Lambda}\boldsymbol{S}^{-1}
A=SΛS−1
之前说过,若矩阵 A \mathbf A A经过初等变换能得到矩阵 B \mathbf B B,则 A \mathbf A A与 B \mathbf B B等价(相抵),记为 A ≅ B \mathbf A \cong \mathbf B A≅B
任何矩阵,有唯一的相抵标准形 A ≅ ( Ir 0 0 0 ) \mathbf A\cong\left(\right) A≅(Ir000),从而行秩=列秩" role="presentation" style="position: relative;"> Ir 0 0 0
消元和列操作能得到“相抵标准型”(只保留了最内核的秩信息),而这里得到“相似标准形”(保有矩阵操作的基本性质——特征值)
可以相似对角化的前提条件:
另外,方阵 A \mathbf A A为实对称矩阵的情况下,其特性带来一些特殊的性质:
对角化的应用之一,就是为我们提供了新的视角来看待矩阵的幂(前提:矩阵A具有n个线性无关的特征向量)
由于
A
=
S
Λ
S
−
1
\boldsymbol{A}=\boldsymbol{S}\boldsymbol{\Lambda}\boldsymbol{S}^{-1}
A=SΛS−1,我们都能轻易得到
A
\boldsymbol{A}
A的
k
k
k次幂的
A
k
\boldsymbol{A}^k
Ak的信息:
A
k
=
(
S
Λ
S
−
1
)
(
S
Λ
S
−
1
)
.
.
.
(
S
Λ
S
−
1
)
=
S
Λ
k
S
−
1
\boldsymbol{A}^k=(\boldsymbol{S}\boldsymbol{\Lambda}\boldsymbol{S}^{-1})(\boldsymbol{S}\boldsymbol{\Lambda}\boldsymbol{S}^{-1})...(\boldsymbol{S}\boldsymbol{\Lambda}\boldsymbol{S}^{-1})=\boldsymbol{S}\boldsymbol{\Lambda}^k\boldsymbol{S}^{-1}
Ak=(SΛS−1)(SΛS−1)...(SΛS−1)=SΛkS−1这就是说:
推论:
对于一个一阶差分方程( u k \mathbf{u}_{k} uk为向量, A \boldsymbol{A} A为系数矩阵) u k + 1 = A u k \mathbf{u}_{k+1}=\boldsymbol{A} \mathbf{u}_{k} uk+1=Auk后一项由前一项 u k \mathbf{u}_{k} uk给出,已知条件是初始的 u 0 \mathbf{u}_{0} u0,现在希望求 u k \mathbf{u}_{k} uk
首先,很容易求解得到 u k = A k u 0 \mathbf{u}_{k}=\boldsymbol{A}^k \mathbf{u}_{0} uk=Aku0,然而这样形式的解没有实际意义(仍需要计算大量矩阵的幂)
注意这里再次出现「矩阵的幂」,那么容易想到进行对角化,向特征值和特征向量上靠拢
具体而言,求解过程是:
直观理解:找到特征向量,则不论多少次矩阵幂,始终都是对于特征向量进行缩放,则容易获得 A u 0 = c 1 λ 1 x 1 + c 2 λ 2 x 2 + … + c n λ n x n \boldsymbol{A} \mathbf{u}_{0}=c_{1} \lambda_{1} \mathbf{x}_{1}+c_{2} \lambda_{2} \mathbf{x}_{2}+\ldots+c_{n} \lambda_{n} \mathbf{x}_{n} Au0=c1λ1x1+c2λ2x2+…+cnλnxn A k u 0 = c 1 λ 1 k x 1 + c 2 λ 2 k x 2 + … + c n λ n k x n \boldsymbol{A}^{k} \mathbf{u}_{0}=c_{1} \lambda_{1}^{k} \mathbf{x}_{1}+c_{2} \lambda_{2}^{k} \mathbf{x}_{2}+\ldots+c_{n} \lambda_{n}^{k} \mathbf{x}_{n} Aku0=c1λ1kx1+c2λ2kx2+…+cnλnkxn
斐波那契数列为0,1,1,2,3,5,8,13,其通项公式为 F k + 2 = F k + 1 + F k F_{k+2}=F_{k+1}+F_{k} Fk+2=Fk+1+Fk,需要求 F 100 F_{100} F100
首先要寻找/构造差分方程,由于通项公式给出的是二阶差分方程(同时出现了前后三项),我们可以额外增加一个方程,得到一个方程组(可表示为矩阵向量乘法),从而构造一阶的差分方程
{
F
k
+
2
=
F
k
+
1
+
F
k
F
k
+
1
=
F
k
+
1
\left\{
至此,转化为上面的问题
u
k
+
1
=
A
u
k
\mathbf{u}_{k+1}=\boldsymbol{A} \mathbf{u}_{k}
uk+1=Auk,其中
A
=
[
1
1
1
0
]
\boldsymbol{A} =\left[
这里求解特征向量时有一定技巧:
求解 [ 1 − λ 1 1 − λ ] x = 0 \left[\right]\boldsymbol x=0 [1−λ11−λ]x=0,由于 d e t ( A − λ I ) = 0 det \mathbf{( A-\lambda I)}=0 det(A−λI)=0,则矩阵 ( A − λ I ) = [ 1 − λ 1 1 − λ ] \mathbf{( A-\lambda I)}=\left[" role="presentation" style="position: relative;"> 1 − λ 1 1 − λ \right] (A−λI)=[1−λ11−λ]必然是二阶的不可逆矩阵,从而方程的两行一定线性相关,解这个方程只需满足其中任意一行即可(必然同时满足另一行),由此,我们直接从第二行得到方程的解,即特征向量 x = [ λ 1 ] \mathbf{x} =\left[" role="presentation" style="position: relative;"> 1 − λ 1 1 − λ \right] x=[λ1]" role="presentation" style="position: relative;"> λ 1
最后可以验证,对于第一行就是特征多项式 det ( A − λ I ) = ∣ 1 − λ 1 1 − λ ∣ = λ 2 − λ − 1 = 0 \operatorname{det}(\boldsymbol{A}-\lambda \boldsymbol{I})=\left|\right|=\lambda^{2}-\lambda-1=0 det(A−λI)=∣∣∣∣1−λ11−λ∣∣∣∣=λ2−λ−1=0" role="presentation" style="position: relative;"> 1 − λ 1 1 − λ
分析:
由于 ∣ λ 2 ∣ ≈ 0.618 < 1 |\lambda_2|\approx 0.618<1 ∣λ2∣≈0.618<1,则 k → ∞ 时 λ 2 k → 0 k\rightarrow \infty时\lambda_2^k\rightarrow 0 k→∞时λ2k→0;
而 ∣ λ 1 ∣ ≈ 1.618 > 1 |\lambda_1|\approx 1.618>1 ∣λ1∣≈1.618>1,故 λ 1 \lambda_1 λ1控制着Fibonacci数列的增长;
总体上,这个数列不断增长(不稳定),增长的速度由特征值决定