【线性代数及其应用】07 您所在的位置:网站首页 特征值求解应用题 【线性代数及其应用】07

【线性代数及其应用】07

2023-12-23 10:35| 来源: 网络整理| 查看: 265

特征值与特征向量

文章目录 特征值与特征向量1. 特征值1.1 什么是特征值1.2 特征值的求解方法1.3 特征方程1.4 特征向量的求解方法1.5 特征值、特征向量与矩阵之间的关系1.6 对称性与特征值之间的关系 2.特征值的应用2.1 对角化分解2.1.1 含义2.1.2 分解条件2.1.3 分解方法 2.2 A的幂次运算2.3 差分方程2.3.1 一阶差分方程2.3.2 高阶差分方程2.3.3 差分方程的用处 2.4 求解微分方程2.4.1 微分方程的求解2.4.2 微分方程的稳态2.4.3 解耦合(1)变量代换(2)解耦合(3)使用解耦合结果可以验证微分方程特征值公式 2.4.4 指数矩阵的意义2.4.5 求解二阶微分方程的原理和方法 2.5 马尔科夫链与稳态2.5.1 马尔科夫矩阵2.5.2 稳态

1. 特征值 1.1 什么是特征值

  有些矩阵对向量的线性变换是只改变其大小,而不改变向量的方向,这种向量叫做矩阵的特征向量,而改变的大小叫做特征值。也就是 A ∗ v 1 = λ ∗ v 1 A*v_1 = λ*v_1 A∗v1​=λ∗v1​   v1叫做特征向量,λ叫做特征值

1.2 特征值的求解方法

A ∗ V = λ ∗ V A*V = λ*V A∗V=λ∗V

( A − λ ∗ I ) ∗ v = 0 (A-λ*I)*v = 0 (A−λ∗I)∗v=0

即 求 d e t ( A − λ ∗ I ) = 0 即求 det(A-λ*I)=0 即求det(A−λ∗I)=0

1.3 特征方程

( A − λ ∗ I ) ∗ v = 0 (A-λ*I)*v = 0 (A−λ∗I)∗v=0

1.4 特征向量的求解方法

  特征向量就是求特征方程的零空间

1.5 特征值、特征向量与矩阵之间的关系

  假设A的特征值是λ,A的特征向量是v,则A+nI的特征向量是λ+n,特征向量不变

1.6 对称性与特征值之间的关系

  如果矩阵是对称的,那么特征值都是实根,如果矩阵是旋转矩阵样式的完全不对称的,特征值全部是虚根。对称性越高,实根比例越高。

2.特征值的应用 2.1 对角化分解 2.1.1 含义

  对角分解是基于特征值和特征向量的矩阵分解   我们知道,特征值具有这样的性质 A ∗ v 1 = λ 1 ∗ v 1 A*v_1 = λ_1*v1 A∗v1​=λ1​∗v1   v1是矩阵A的特征向量,λ1是矩阵A的特征值。如果有矩阵S是矩阵A的特征向量的合集 A ∗ S = A ∗ { v 1 . . . v n } = { λ 1 ∗ v 1 . . . λ n ∗ v n } = S ∗ λ A*S = A*\left\{\begin{matrix}v1& ...&vn \end{matrix}\right\} =\left\{\begin{matrix}λ1*v1& ...&λn*vn \end{matrix}\right\}=S*λ A∗S=A∗{v1​...​vn​}={λ1∗v1​...​λn∗vn​}=S∗λ

其 中 λ = ∗ { λ 1 . . . 0 . . . λ r . . . 0 . . . λ n } 其中λ = *\left\{\begin{matrix}λ1& ...&0\\...&λr&...\\0&...&λn \end{matrix}\right\} 其中λ=∗⎩⎨⎧​λ1...0​...λr...​0...λn​⎭⎬⎫​

  可得 A = S − 1 ∗ λ ∗ S A = S^{-1}*λ*S A=S−1∗λ∗S

2.1.2 分解条件

  可以看出来,只有A有n个线性无关的特征向量的时候,才能对角化,如果有n个不同的特征值,必定有n个线性无关的特征向量,但是没有n个不同的特征值,不一定不能进行对角化分解

2.1.3 分解方法

  分解方法就是,只要能够求得特征值和特征向量即可构造矩阵S和λ   先求特征值 A ∗ v = λ ∗ v A*v=λ*v A∗v=λ∗v

( A − λ ∗ I ) ∗ v = 0 (A-λ*I)*v=0 (A−λ∗I)∗v=0

求 d e t ∣ A − λ ∗ I ∣ = 0 即 可 解 得 特 征 值 求det|A-λ*I|=0即可解得特征值 求det∣A−λ∗I∣=0即可解得特征值   再求特征向量 求 得 的 特 征 值 代 入 ( A − λ ∗ I ) ∗ v = 0 求得的特征值代入(A-λ*I)*v=0 求得的特征值代入(A−λ∗I)∗v=0   求解其零空间即可获得特征向量。如果λ是重根,就看看重根能否在零空间内得到足够的特征向量,否则不能对角化

  有了特征值和特征向量即可实现对角化

2.2 A的幂次运算

  特征值和对角化的一个非常重要的应用是求矩阵A的幂次 A = S ∗ λ ∗ S − 1 A = S*λ*S^{-1} A=S∗λ∗S−1

A 2 = S ∗ λ ∗ S − 1 ∗ S ∗ λ ∗ S − 1 = S ∗ λ 2 ∗ S − 1 A^2 = S*λ*S^{-1}* S*λ*S^{-1}=S*λ^2*S^{-1} A2=S∗λ∗S−1∗S∗λ∗S−1=S∗λ2∗S−1

λ 2 = { σ 1 2 . . . 0 . . . σ r 2 . . . 0 . . . σ n 2 } λ^2 = \left\{\begin{matrix}σ_1^2&...&0\\...&σ_r^2&...\\0&...&σ_n^2\end{matrix}\right\} λ2=⎩⎨⎧​σ12​...0​...σr2​...​0...σn2​​⎭⎬⎫​   通过这种方式,利用特征值,可以非常方便的求A的高阶幂次 A n = ( S ∗ λ ∗ S − 1 ) n = S ∗ λ n ∗ S − 1 A^n = (S*λ*S^{-1})^n=S*λ^n*S^{-1} An=(S∗λ∗S−1)n=S∗λn∗S−1

2.3 差分方程 2.3.1 一阶差分方程

  一般来说差分方程对应着幂矩阵的应用(Ak),微分方程对应着指数矩阵的应用(eAk)。   一阶差分方程写作 X k + 1 = A ∗ X k = A X k = A k ∗ X 0 X_{k+1}= A*X_k = AX_k=A^k*X_0 Xk+1​=A∗Xk​=AXk​=Ak∗X0​   求解差分方程与A的幂次就有关系了,具体求解方法见2.3.3

2.3.2 高阶差分方程

  高阶差分方程是指带有多阶未知数的方程,一般需要增加一个恒等式,配成一阶差分方程

  比如:求解斐波那契数列 X k + 1 = X k + X k − 1 X_{k+1} = X_k + X_{k-1} Xk+1​=Xk​+Xk−1​

  引入恒等式 X k = X k X_k = X_k Xk​=Xk​

  变量代换 Y k + 1 = { X k + 1 X k } Y_{k+1} = \left\{\begin{matrix}X_{k+1}\\X_k\end{matrix}\right\} Yk+1​={Xk+1​Xk​​} Y k = { X k X k − 1 } Y_{k} = \left\{\begin{matrix}X_{k}\\X_{k-1}\end{matrix}\right\} Yk​={Xk​Xk−1​​}

  则 Y k + 1 = A ∗ Y k = { 1 1 1 0 } ∗ Y k Y_{k+1} = A*Y{k}= \left\{\begin{matrix}1&1\\1&0\end{matrix}\right\}*Yk Yk+1​=A∗Yk={11​10​}∗Yk

2.3.3 差分方程的用处

  特征值在差分方程中,可以用于描述一个系统的迭代的终态,或者描述稳定性问题。

  比如 X k + 1 = A X k = A k ∗ X 0 X_{k+1}=AX_k=A^k*X_0 Xk+1​=AXk​=Ak∗X0​   这个方程可以用于描述人口迁移、生物演化、运行系统等。

  如果A可以进行对角化,那么必定有n个特征向量,将X0分解为特征向量的线性组合

X 0 = c 1 ∗ v 1 + c 2 ∗ v 2 + . . . + c n ∗ v n X0 = c1*v1+c2*v2+...+cn*vn X0=c1∗v1+c2∗v2+...+cn∗vn   由于A可以对角化 A ∗ { v 1 , v 2 , v 3 . . . , v n } = { v 1 , v 2 , . . . v n } ∗ λ A*\{v_1,v_2,v_3...,v_n\}=\{v_1,v_2,...v_n\}*λ A∗{v1​,v2​,v3​...,vn​}={v1​,v2​,...vn​}∗λ   A的幂次乘以特征向量得到 A 2 ∗ v 1 = A ∗ A ∗ v 1 = A ∗ λ 1 ∗ v 1 = λ 1 ∗ A ∗ v 1 = λ 1 2 ∗ v 1 A^2*v_1 = A*A*v_1 = A*λ_1*v_1 = λ_1*A*v_1 = λ_1^2*v_1 A2∗v1​=A∗A∗v1​=A∗λ1​∗v1​=λ1​∗A∗v1​=λ12​∗v1​   所以,迭代方程可以表示为 X k = c 1 ∗ λ 1 k ∗ v 1 + . . . + c n ∗ λ n k ∗ v n X_k = c_1*λ_1^k*v_1+...+c_n*λ_n^k*v_n Xk​=c1​∗λ1k​∗v1​+...+cn​∗λnk​∗vn​   会有这些情况

如果有一个特征值为1,其他特征值全部小于1,最终系统会达到稳定状态,也就是特征值1的那个特征向量如果全部特征值都小于1,系统最终会退化,向量结果会全部趋近0。原点被称为吸引子如果特征值全部都大于1,系统最终会发散,向量结果全部趋于无穷大。向量会远离原点。这个时候原点称为排斥子如果部分特征值大于1,部分特征值小于1,向量的某些方向会趋近于原点,某些方向会远离原点,结果依然发散。原点被称为鞍点如果特征值部分含有虚数,必定具有旋转分量。如果v1和v2的共轭特征值的模大于1,会在v1和v2平面上远离原点旋转。如果共轭特征值的模小于1,会在v1和v2平面上靠近原点旋转。如果模等于1,就是圆旋转 2.4 求解微分方程 2.4.1 微分方程的求解

X ′ ( t ) = A ∗ X ( t ) X'(t)=A*X(t) X′(t)=A∗X(t)   回忆差分方程的求解是先找到了方程的特解X0,然后将特解用特征向量进行分解,Xk就是特征值与特征向量乘积的组合了 X ( 0 ) = c 1 ∗ v 1 + . . . + c n ∗ v n X(0)=c_1*v_1+...+c_n*v_n X(0)=c1​∗v1​+...+cn​∗vn​

X ( k ) = c 1 ∗ λ 1 k ∗ 1 + . . . . + c n ∗ λ k k ∗ v n X(k)=c1*λ_1^k*_1+....+cn*λ_k^k*v_n X(k)=c1∗λ1k​∗1​+....+cn∗λkk​∗vn​   在微分方程中,其实就是用特征值的指数替换了特征值的幂次而已 X ( 0 ) = c 1 ∗ v 1 + . . . + c n ∗ v n X(0)=c_1*v_1+...+c_n*v_n X(0)=c1​∗v1​+...+cn​∗vn​

X ( t ) = c 1 ∗ e λ 1 ∗ t + . . . . + c n ∗ e λ k ∗ t ∗ v n X(t)=c1*e^{λ_1*t}+....+cn*e^{λ_k*t}*v_n X(t)=c1∗eλ1​∗t+....+cn∗eλk​∗t∗vn​

2.4.2 微分方程的稳态

  与差分方程一样,微分方程也有稳态稳态。

如果有一个特征值为0,其余特征值小于0,则X(t)中当t趋近于无穷时,结果是一个稳态如果特征值全部大于1,X(t)是发散的,值趋于无穷,零点是一个排斥子如果特征值全部小于1,X(t)是退化的,值趋于0,零点是一个吸引子如果有的特征值大于0,有的特征值小于0,零点是一个鞍点

  因为特征值之和等于矩阵的迹,特征值之积等于矩阵的行列式值,对于2x2矩阵的稳定性判断,我们希望结果是收敛的,必有特征值都小于0,所以有如下判据 t r a c e ( A ) < 0 trace(A)0 det(A)>0

2.4.3 解耦合

  如果能够把X(t)中全部的变量单独分解开来,一个方程中都是自己的导数,就是一种解耦合。只要把系数矩阵A变成λ,就保证了每个变量的导数都只和自己有关,即实现了解耦合。使用特征向量可以实现解耦合。

  解耦合的作用是在原来混杂的微分方程中,分解出构成他们的独立的变量。找到了各个独立分量之后,原来的耦合的变量,就是根据特征向量重新组合的结果。

  在差分方程中,做的是对X0变成特征向量的线性次数的重新组合;在微分方程中,利用解耦得到独立变量,做的是X(t)变成特征向量的函数次数的重新组合。

(1)变量代换

  使用特征向量S来进行解耦合 令 X ( t ) = S ∗ Y ( t ) 令 X(t)=S*Y(t) 令X(t)=S∗Y(t)

其 中 S = { v 1 , v 2 , v 3 . . . . . , v n } 其中S=\{v_1,v_2,v_3.....,v_n\} 其中S={v1​,v2​,v3​.....,vn​}   把X替换后可以得到 S ∗ Y ′ ( t ) = A ∗ S ∗ Y ( t ) S*Y'(t)=A*S*Y(t) S∗Y′(t)=A∗S∗Y(t)

(2)解耦合

  下面求解函数Y(t)我们知道 A = S ∗ λ ∗ S − 1 A = S*λ*S^{-1} A=S∗λ∗S−1   可以得到 S ∗ Y ′ ( t ) = S ∗ λ ∗ Y ( t ) S*Y'(t)=S*λ*Y(t) S∗Y′(t)=S∗λ∗Y(t)

  两边同时乘以S-1,实现了微分方程的解耦 Y ′ ( t ) = λ ∗ Y ( t ) Y'(t)=λ*Y(t) Y′(t)=λ∗Y(t)

{ y 1 ′ ( t ) . . . . . y n ′ ( t ) } = { λ 1 . . . 0 . . . . . . . . . 0 . . . λ n } ∗ { y 1 ( t ) . . . . . y n ( t ) } \left\{ \begin{matrix} y_1'(t)\\ .....\\ y_n'(t) \end{matrix} \right\} =\left\{ \begin{matrix} λ_1 & ... & 0 \\ ... & ... & ... \\ 0 & ... & λ_n \end{matrix} \right\} *\left\{ \begin{matrix} y_1(t)\\ .....\\ y_n(t) \end{matrix} \right\} ⎩⎨⎧​y1′​(t).....yn′​(t)​⎭⎬⎫​=⎩⎨⎧​λ1​...0​.........​0...λn​​⎭⎬⎫​∗⎩⎨⎧​y1​(t).....yn​(t)​⎭⎬⎫​

  解得Y(t) Y ( t ) = { c 1 ∗ e λ 1 ∗ t . . . . . c n ∗ e λ n ∗ t } Y(t)= \left\{ \begin{matrix} c1*e^{λ1*t}\\ .....\\ cn*e^{λn*t} \end{matrix} \right\} Y(t)=⎩⎨⎧​c1∗eλ1∗t.....cn∗eλn∗t​⎭⎬⎫​

(3)使用解耦合结果可以验证微分方程特征值公式

  原来的变量x其实就是y的解耦合微分方程组的线性组合。Y(t)其实可以理解为X(t)在各个特征向量方向上的分量 X ( t ) = S ∗ Y ( t ) = c 1 ∗ e λ 1 ∗ t ∗ v 1 + . . . . + c n ∗ e λ n ∗ t ∗ v n X(t)=S*Y(t)=c1*e^{λ1*t}*v1+....+cn*e^{λn*t}*vn X(t)=S∗Y(t)=c1∗eλ1∗t∗v1+....+cn∗eλn∗t∗vn

2.4.4 指数矩阵的意义

  如果保留了矩阵求解微分方程可以得到一个指数矩阵 X ′ ( t ) = A ∗ X ( t ) X'(t)=A*X(t) X′(t)=A∗X(t)

X ( t ) = e A ∗ t ∗ X ( 0 ) X(t)=e^{A*t}*X(0) X(t)=eA∗t∗X(0)

  如果通过特征向量拆解为解耦合微分方程组 Y ′ ( t ) = λ ∗ Y ( t ) Y'(t)= λ*Y(t) Y′(t)=λ∗Y(t)

Y ( t ) = e λ ∗ t ∗ Y ( 0 ) Y(t)=e^{λ*t}*Y(0) Y(t)=eλ∗t∗Y(0)

X ( t ) = S ∗ Y ( t ) = S ∗ e λ ∗ t ∗ S − 1 ∗ X ( 0 ) X(t)=S*Y(t)=S*e^{λ*t}*S^{-1}*X(0) X(t)=S∗Y(t)=S∗eλ∗t∗S−1∗X(0)   如何理解这个指数矩阵呢?这个可以用个泰勒公式展开进行进一步表达 e A ∗ t = I + A ∗ t + ( A ∗ t ) 2 2 + . . . . + ( A ∗ t ) n n ! e^{A*t}=I+A*t+\frac{(A*t)^2}{2}+....+\frac{(A*t)^n}{n!} eA∗t=I+A∗t+2(A∗t)2​+....+n!(A∗t)n​   如果用SλS-1代替A e A ∗ t = I + S ∗ λ ∗ S − 1 + . . . . + S ∗ λ n ∗ S − 1 ∗ t n n ! = S ∗ e λ ∗ S − 1 e^{A*t}=I+S*λ*S^{-1}+....+\frac{S*λ^n*S^{-1}*t^n}{n!}=S*e^λ*S^{-1} eA∗t=I+S∗λ∗S−1+....+n!S∗λn∗S−1∗tn​=S∗eλ∗S−1

2.4.5 求解二阶微分方程的原理和方法

  二阶微分方程与二阶差分方程类似,也可以通过配一个恒等式的方法,把二阶微分方程变成一阶的微分方程

2.5 马尔科夫链与稳态 2.5.1 马尔科夫矩阵

  马尔科夫矩阵是一种求解演化问题的概率矩阵,比如每年城市人口和乡村人口都会发生变迁,城市人口有10%的流入农村,而农村人口会有20%流入城市,则可以构建下列的迁入迁出矩阵 T = { 0.1 0.8 0.9 0.2 } T=\left\{\begin{matrix}0.1&0.8\\0.9&0.2\end{matrix}\right\} T={0.10.9​0.80.2​}   具有以下特征

所有元素必定大于0所有列的和都为11必定是马尔科夫矩阵的一个特征值,其余都小于1

   A − λ I = { a 11 − λ a 12 a 21 a 22 − λ } A-λI=\left\{\begin{matrix}a11-λ&a12\\a21&a22-λ\end{matrix}\right\} A−λI={a11−λa21​a12a22−λ​}   把所有数都加到最后一列 A − λ I = { a 11 − λ a 12 a 21 + a 11 − λ a 12 + a 22 − λ } A-λI=\left\{\begin{matrix}a11-λ&a12\\a21+a11-λ&a12+a22-λ\end{matrix}\right\} A−λI={a11−λa21+a11−λ​a12a12+a22−λ​}   由各列之和为1可得 A − λ I = { a 11 − λ a 12 1 − λ 1 − λ } A-λI=\left\{\begin{matrix}a11-λ&a12\\1-λ&1-λ\end{matrix}\right\} A−λI={a11−λ1−λ​a121−λ​}   λ=1时有一行为0,必定使得行列式值为0,所以λ是一个特征值

2.5.2 稳态

  延续上面的人口迁移问题,若第一年城市人口x1,农村人口x2,第二年呢?

x 1 ′ = 0.9 ∗ x 1 + 0.2 ∗ x 2 x1' = 0.9*x1+0.2*x2 x1′=0.9∗x1+0.2∗x2

x 2 ′ = 0.1 ∗ x 1 + 0.8 ∗ x 2 x2' = 0.1*x1+0.8*x2 x2′=0.1∗x1+0.8∗x2

  可以写作差分方程

X 2 = T ∗ X 1 X_2 = T*X_1 X2​=T∗X1​   n年之后的人口为 X n = T n ∗ X 1 X_n = T^n*X_1 Xn​=Tn∗X1​

  所以差分方程对角化展开式可以写作 X n = c 1 ∗ λ 1 n ∗ v 1 + . . . + c k ∗ λ k n ∗ v k X_n = c_1*λ_1^n*v_1+...+c_k*λ_k^n*v_k Xn​=c1​∗λ1n​∗v1​+...+ck​∗λkn​∗vk​   因为其中一个特征值为1,其余所有特征值小于1,所以随着时间推移,最终人口总数会趋于恒定,是一个常量



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有