线性代数系列讲解第十篇 特征值和特征向量

特征向量和特征值(eigenvector,eigenvalue)

特征向量就是能使得
A X = λ X AX=\lambda X AX=λX
其中 λ \lambda λ是个数,而这个 λ \lambda λ就是特征值。 X X X是个非零向量。
其实特征向量 X X X就是经过 A X AX AX还是能使得与它本身平行。
我是这么想的,特征向量就代表着矩阵的正交基,矩阵对正交基的操作其实还是落在正交基上,因为其他的正交基与本正交基正交而得0,因此,矩阵最终使得正交基伸缩。

如果矩阵 A A A是个奇异矩阵,按照我们之前的知识,我们必然可以找到非零向量使得
A X = 0 AX=0 AX=0
则必然我们可以找到
λ = 0 \lambda = 0 λ=0

如果矩阵 A A A是个投影矩阵,我们将其写成 P P P,则有如下两种情况:
如果 X X X在该投影平面内,则 P X = X PX=X PX=X,此时 λ = 1 \lambda = 1 λ=1
如果 X X X垂直投影平面内,则 P X = 0 PX=0 PX=0,此时 λ = 0 \lambda =0 λ=0

求解特征值和特征向量

从定义出发:
A X = λ X AX=\lambda X AX=λX
我们将其写成
( A − λ I ) X = 0 (A-\lambda I)X=0 (AλI)X=0
我们求解 X X X是不为零的向量,因此 A − λ I A-\lambda I AλI是奇异矩阵才有非零解。
我们将问题改写如下,来求解 λ \lambda λ
d e t ( A − λ I ) = 0 det(A-\lambda I)=0 det(AλI)=0
举个例子:
A = [ 3 1 1 3 ]    d e t ( A − λ I ) = ∣ 3 − λ 1 1 3 − λ ∣ = ( 3 − λ ) 2 − 1         = λ 2 − 6 λ + 8 = ( λ − 4 ) ( λ − 2 ) = 0 A=\begin{bmatrix}3&1\\1&3\end{bmatrix}\\\;\\det(A-\lambda I)=\begin{vmatrix}3-\lambda &1\\1&3-\lambda\end{vmatrix}=(3-\lambda)^2-1\\\;\\\qquad\qquad\qquad\;\;=\lambda^2-6\lambda+8=(\lambda-4)(\lambda-2)=0 A=[3113]det(AλI)=3λ113λ=(3λ)21=λ26λ+8=(λ4)(λ2)=0
我们可以得到 λ 1 = 4 \lambda_1=4 λ1=4 λ 2 = 2 \lambda_2=2 λ2=2。还可以发现 6 6 6是矩阵 A A A的迹,而 8 8 8是矩阵 A A A的行列式。

矩阵的迹(trace):矩阵的对角线元素之和,而且它也等于特征值之和。比如上面矩阵 A A A的迹 = 3 + 3 = 6 =3+3=6 =3+3=6

好了,接下来我们求解特征向量。
A − 4 I = [ − 1 1 1 − 1 ]    ( A − 4 I ) X = 0 A-4I=\begin{bmatrix}-1&1\\1&-1\end{bmatrix}\\\;\\(A-4I)X=0 A4I=[1111](A4I)X=0
则其实就是求解零空间,解的
x 1 = [ 1 1 ] x_1=\begin{bmatrix}1\\1\end{bmatrix} x1=[11]
同理求解 ( A − 2 I ) X = 0 (A-2I)X=0 (A2I)X=0,得 x 2 = [ − 1 1 ] x_2=\begin{bmatrix}-1\\1\end{bmatrix} x2=[11]
当我们给矩阵 A A A加上 3 I 3I 3I,我们会发现特征值加3,但是特征向量不变。

我们来看看矩阵的特征值不一定是实数,如下 9 0 ∘ 90^{\circ} 90的旋转矩阵,还是正交。
Q = [ c o s 9 0 ∘ − s i n 9 0 ∘ s i n 9 0 ∘ c o s 9 0 ∘ ] = [ 0 − 1 1 0 ] Q=\begin{bmatrix}cos90^{\circ}&-sin90^{\circ}\\sin90^{\circ}&cos90^{\circ}\end{bmatrix}=\begin{bmatrix}0&-1\\1&0\end{bmatrix} Q=[cos90sin90sin90cos90]=[0110]
通过计算我们得到两个特征值是 i i i − i -i i,其实特征值表现出了虚数,其实表示就是旋转 9 0 ∘ 90^{\circ} 90的意思。
我们可以得出结论当矩阵越接近对称或对称,特征值为实数,否则为虚数。
以上讨论的是特征值都没有重复的,下列讨论特征值有重复的,我们一般叫做重根。
A = [ 3 1 0 3 ]    d e t ( A − λ I ) = ∣ 3 − λ 1 0 3 − λ ∣ = ( 3 − λ ) 2 → λ 1 = λ 2 = 3    ( A − λ ) X = [ 0 1 0 0 ] [ X ] = [ 0 ] A=\begin{bmatrix}3&1\\0&3\end{bmatrix}\\\;\\det(A-\lambda I)=\begin{vmatrix}3-\lambda&1\\0&3-\lambda\end{vmatrix}=(3-\lambda)^2\rightarrow\lambda_1=\lambda_2=3\\\;\\(A-\lambda)X=\begin{bmatrix}0&1\\0&0\end{bmatrix}[X]=[0] A=[3013]det(AλI)=3λ013λ=(3λ)2λ1=λ2=3(Aλ)X=[0010][X]=[0]

x 1 = [ 1 0 ] x_1=\begin{bmatrix}1\\0\end{bmatrix} x1=[10]
没有 x 2 x_2 x2,因为它们的特征值相同,对应的特征向量是相同的。

矩阵的对角化

矩阵的对角化的条件:矩阵 A A A n n n个不相关的特征向量(保证 S S S可逆),即特征值没有重根。
我们把 n n n个不相关特征向量放到 S S S中,将 A A A S S S相乘
     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 Λ \;\;AS=A\begin{bmatrix}|&|&&|\\x_1&x_2&\cdots&x_n\\|&|&&|\end{bmatrix}=\begin{bmatrix}|&|&&|\\\lambda_1x_1&\lambda_2x_2&\cdots&\lambda_nx_n\\|&|&&|\end{bmatrix}\\\;\\=\begin{bmatrix}|&|&&|\\x_1&x_2&\cdots&x_n\\|&|&&|\end{bmatrix}\begin{bmatrix}\lambda_1&0&\cdots&0\\0&\lambda_2&\cdots&0\\\vdots&\vdots&\ddots&\vdots\\0&0&\cdots&\lambda_n\end{bmatrix}=S\Lambda AS=Ax1x2xn=λ1x1λ2x2λnxn=x1x2xnλ1000λ2000λn=SΛ
由于 S S S可逆,因此我们能够写成如下
S − 1 A S = Λ    A = S Λ S − 1 S^{-1}AS=\Lambda\\\;\\A=S\Lambda S^{-1} S1AS=ΛA=SΛS1
我们可以将 A A A进行对角化,而且我们能够通过第二个式子进而计算矩阵的幂。
A 2 = S Λ S − 1 S Λ S = S Λ 2 S − 1 A^2=S\Lambda S^{-1}S\Lambda S=S\Lambda^2 S^{-1} A2=SΛS1SΛS=SΛ2S1
前提: S S S是可逆。
其实我们也可以看如下,如果 A X = λ X AX=\lambda X AX=λX,则 A 2 X = λ A X = λ 2 X A^2X=\lambda AX=\lambda^2 X A2X=λAX=λ2X
结论: A k = S Λ k S − 1 A^k = S\Lambda^k S^{-1} Ak=SΛkS1
如果当 k k k趋于∞, A k → 0 A^k\rightarrow 0 Ak0,当且仅当所有的 ∣ λ ∣ < 1 |\lambda|<1 λ<1

u k + 1 = A u k u_{k+1}=Au_k uk+1=Auk(差分方程)

我们从向量 u 0 u_0 u0开始
u 0 = c 1 x 1 + c 2 x 2 + ⋯ + c n x n = S c u_0=c_1x_1+c_2x_2+\cdots+c_nx_n=Sc u0=c1x1+c2x2++cnxn=Sc
x i x_i xi为特征向量, u 0 u_0 u0为特征向量的线性组合。
我们可以写出 u 1 = A u 0 u_1=Au_0 u1=Au0 u 2 = A 2 u 0 u_2=A^2u_0 u2=A2u0, u k = A k u 0 u_k=A^ku_0 uk=Aku0

u k = A k u 0 = c 1 λ 1 k x 1 + c 2 λ 2 k x 2 + ⋯ + c n λ n k x n = Λ k S c u_k=A^ku_0=c_1\lambda_1^kx_1+c_2\lambda_2^kx_2+\cdots+c_n\lambda_n^kx_n=\Lambda^kSc uk=Aku0=c1λ1kx1+c2λ2kx2++cnλnkxn=ΛkSc
有个例子就是我们可以验证斐波那契数列的增长速度
斐波那契数列: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
我们有个小技巧
u k = [ F k + 1 F k ]    u k + 1 = [ 1 1 1 0 ] u k = A u k u_k=\begin{bmatrix}F_{k+1}\\F_k\end{bmatrix}\\\;\\u_{k+1}=\begin{bmatrix}1&1\\1&0\end{bmatrix}u_k=Au_k uk=[Fk+1Fk]uk+1=[1110]uk=Auk
我们发现 A A A是可以对角化的,我们通过计算得出
λ 1 = 1 + 5 2 = 1.618 λ 2 = 1 − 5 2 = − 0.618 \lambda_1=\frac{1+\sqrt{5}}{2}=1.618\\\lambda_2=\frac{1-\sqrt{5}}{2}=-0.618 λ1=21+5 =1.618λ2=215 =0.618
我们发现 ∣ λ 2 ∣ < 1 |\lambda_2|<1 λ2<1,由于 u k = A k u 0 u_k=A^ku_0 uk=Aku0,随着幂指数的增长,将趋于0,而 λ 1 \lambda_1 λ1会继续增长,因此斐波那契数列的增长速度取决于 λ 1 \lambda_1 λ1

d u / d t = A u du/dt=Au du/dt=Au(微分方程)

我们可以知道它的解形式是:
u ( t ) = c 1 e λ 1 t x 1 + c 2 e λ 2 t x 2 + ⋯ + c n e λ n t x n u(t)=c_1e^{\lambda_1t}x_1+c_2e^{\lambda_2t}x_2+\cdots+c_ne^{\lambda_nt}x_n u(t)=c1eλ1tx1+c2eλ2tx2++cneλntxn
x x x为特征向量,类比与差分方程 u k = c 1 λ 1 k x 1 + c 2 λ 2 k x 2 + ⋯ + c n λ n k x n u_k=c_1\lambda_1^kx_1+c_2\lambda_2^kx_2+\cdots+c_n\lambda_n^{k}x_n uk=c1λ1kx1+c2λ2kx2++cnλnkxn
我们检测一下微分方程中一个解是否符合要求:
d u / d t = A u    λ 1 e λ 1 t x 1 = A e λ 1 t x 1    λ 1 x 1 = A x 1 du/dt=Au\\\;\\\lambda_1e^{\lambda_1t}x_1=Ae^{\lambda_1t}x_1\\\;\\\lambda_1x_1=Ax_1 du/dt=Auλ1eλ1tx1=Aeλ1tx1λ1x1=Ax1得证。
举个例子
d u 1 d t = − u 1 + 2 u 2    d u 2 d t = u 1 − 2 u 2 \frac{du_1}{dt}=-u_1+2u_2\\\;\\\frac{du_2}{dt}=u_1-2u_2 dtdu1=u1+2u2dtdu2=u12u2
u 0 = [ 1 0 ] u_0=\begin{bmatrix}1\\0\end{bmatrix} u0=[10]
我们将有右边的系数写成矩阵 A A A
A = [ − 1 2 1 − 2 ] A=\begin{bmatrix}-1&2\\1&-2\end{bmatrix} A=[1122]
矩阵 A A A是个奇异矩阵,因此它的一个特征值等于0,因而矩阵另一个特征值为-3。我们计算出它们分别的特征向量
x 1 = [ 2 1 ] , x 2 = [ 1 − 1 ] x_1=\begin{bmatrix}2\\1\end{bmatrix},x_2=\begin{bmatrix}1\\-1\end{bmatrix} x1=[21],x2=[11]
我们的解如下形式:
u ( t ) = c 1 [ 2 1 ] + c 2 e − 3 t [ 1 − 1 ] u(t)=c_1\begin{bmatrix}2\\1\end{bmatrix}+c_2e^{-3t}\begin{bmatrix}1\\-1\end{bmatrix} u(t)=c1[21]+c2e3t[11]
我们通过 u 0 u_0 u0计算出 c 1 c_1 c1 c 2 c_2 c2
u ( t ) = c 1 [ 2 1 ] + c 2 [ 1 − 1 ] = [ 1 0 ] u(t)=c_1\begin{bmatrix}2\\1\end{bmatrix}+c_2\begin{bmatrix}1\\-1\end{bmatrix}=\begin{bmatrix}1\\0\end{bmatrix} u(t)=c1[21]+c2[11]=[10]
得出 c 1 = c 2 = 1 / 3 c_1=c_2=1/3 c1=c2=1/3
我们可以看出解中稳态 u ( ∞ ) = 1 / 3 [ 2 1 ] u(∞)=1/3\begin{bmatrix}2\\1\end{bmatrix} u()=1/3[21]
下面我们可以讨论稳态条件:当 t → ∞ t\rightarrow ∞ t u ( t ) → 0 u(t)\rightarrow 0 u(t)0,因而我们要使 e λ t → 0 e^{\lambda t}\rightarrow 0 eλt0,则 R e λ < 0 Re\lambda < 0 Reλ<0以及 λ = 0 \lambda=0 λ=0
总的来说:
稳 态 稳态 λ = 0 \lambda=0 λ=0 R e λ < 0 Re\lambda<0 Reλ<0
发 散 发散 R e λ > 0 Re\lambda>0 Reλ>0
下列看看如何将 A A A解耦化(对角化),我们令 u = S v u=Sv u=Sv,则
S d v d t = A S V    d v d t = S − 1 A S v = Λ v S\frac{dv}{dt}=ASV\\\;\\\frac{dv}{dt}=S^{-1}ASv=\Lambda v Sdtdv=ASVdtdv=S1ASv=Λv
我们能够得出 v ( t ) = e Λ t v ( 0 ) ( v ( 0 ) = S − 1 u ( 0 ) ) v(t)=e^{\Lambda t}v(0)(v(0)=S^{-1}u(0)) v(t)=eΛtv(0)v(0)=S1u(0)
u ( t ) = S e Λ t S − 1 u ( 0 ) = e A t u ( 0 ) u(t)=Se^{\Lambda t}S^{-1}u(0)=e^{At}u(0) u(t)=SeΛtS1u(0)=eAtu(0)
我们就知道如何计算一个矩阵的指数了
e A t = S e Λ t S − 1 e^{At}=Se^{\Lambda t}S^{-1} eAt=SeΛtS1
我们可以用泰勒级数证明
e A t = I + A t + ( A t ) 2 2 + ⋯ + ( A t ) n n ! + ⋯                = S S − 1 + S A S − 1 t + S Λ 2 S − 1 t 2 2 + ⋯ = S e Λ t S − 1 e^{At}=I+At+\frac{(At)^2}{2}+\cdots+\frac{(At)^n}{n!}+\cdots\\\;\\\qquad\qquad\;\;\;\;\,\,\,=SS^{-1}+SAS^{-1}t+\frac{S\Lambda^2 S^{-1}t^2}{2}+\cdots=Se^{\Lambda t}S^{-1} eAt=I+At+2(At)2++n!(At)n+=SS1+SAS1t+2SΛ2S1t2+=SeΛtS1
以上讨论的是一阶微分方程,那我们如何解决二阶微分方程或者多阶微分方程,以二阶为例,我们可以将二阶降为一阶。举个例子
y ′ ′ + b y ′ + k y = 0 y''+by'+ky=0 y+by+ky=0
首先我们令
u = [ y ′ y ] u=\begin{bmatrix}y'\\y\end{bmatrix} u=[yy]
我们还增加一个条件 y ′ = y ′ y'=y' y=y

u ′ = [ y ′ ′ y ′ ] = [ − b − k 1 0 ] [ y ′ y ] u'=\begin{bmatrix}y''\\y'\end{bmatrix}=\begin{bmatrix}-b&-k\\1&0\end{bmatrix}\begin{bmatrix}y'\\y\end{bmatrix} u=[yy]=[b1k0][yy]

你可能感兴趣的:(线性代数)