线性代数 Cheat Sheet 5-8:特征值的迭代估计
Contents [show]
1. 幂算法
幂算法适用于 n×n 矩阵 A 由严格占优特征值(亦称主特征值)λ1 的情况。λ1 为主特征值的意思是 λ1 的绝对值比其他特征值的绝对值都大。此时,幂算法产生一个近似 λ1 的数列和一个近似对应主特征向量的向量序列。
为简单起见,假设 A 可对角化,特征向量 v1,⋯,vn 是 Rn 的基,并且 v1,⋯,vn 已经过排列,使对应的特征值 λ1,⋯,λn 的绝对值递减,λ1 是主特征值,即有
|λ1|>|λ2|≥|λ3|≥⋯≥|λn|
假设 x∈Rn,x=c1v1+⋯+cnvn,那么
Akx=c1(λ1)kv1+c2(λ2)kv2+⋯+cn(λn)kvn(k=1,2,⋯)
假设 c1≠0,等式除以 (λ1)k,
1(λ1)kAkx=c1v1+c2(λ2λ1)kv2+⋯+cn(λnλ1)kvn(k=1,2,⋯)
由 (1),所有分数 λ2λ1,⋯,λnλ1 的值都小于 1,因此,它们的幂趋于零,故
当k→∞时,1(λ1)kAkx→c1v1
因此对足够大的 k,Akx 的数量倍的方向几乎与特征向量 c1v1 的方向相同。由于正的数量倍不会改变向量的方向,因此若给定 c1≠0,则 Akx 的方向几乎与 v1 或 −v1 一致。
估计严格占优特征值的幂算法
1. 选择一个最大分量为 1 的初始向量 x0。
2. 对 k=0,1,⋯,
a. 计算 Axk。
b. 设 μk 是 Ax 中绝对值最大的一个分量。
c. 计算 xk+1=(1/μk)Axk。
3. 几乎对所有选择的 x0,序列 {μk} 近似于主特征值,而序列 {xk} 近似于对应的特征向量。
2. 逆幂法
在知道特征值 λ 的一个较好的初始估值 α 后,逆幂法可用来对任一特征值作近似估值。此时,令 B=(A–αI)−1,并对 B 应用幂算法,可以证明,若 λ1,⋯,λn 是 A 的特征值,则 B 的特征值是
1λ1–α,1λ2–α,⋯,1λn–α
而且 A 的对应于 λ1,⋯,λn 的特征向量是 B 的对应于上面这些特征值的特征向量。
估计 A 的特征值 λ 的逆幂法
1. 选择一个非常接近 λ 的初始估值 α。
2. 选择一个最大分量为 1 的初始向量 x0。
3. 对 k=0,1,⋯,
a. 从 (A–αI)yk=xk 中解出 yk。(实际上是计算 yk=(A–αI)−1xk,即 y=Bxk)
b. 设 μk 是 yk 中绝对值最大的分量。
c. 计算 vk=α+(1/μk)。(由 μk=1/vk–α,得 vk=α+(1/μk))
d. 计算 xk+1=(1/μk)yk。(xk+1 中的最大分量为 1)
4. 几乎对所有选择的 x0,序列 vk 趋向于 A 的特征值 λ,而序列 {xk} 趋向于对应的特征向量。