第七章 特征值问题的迭代解法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
T Tm = Vm AVm
α1 β1 β ... 1 = .. .
βm−1 ˜ y ) 是 Tm 的一个特征对, 则有 设 (λ,
T ˜ A(Vm y ) = Vm Tm y + βm vm eT m y = λVm y + βm (em y )vm .
于是 ˜ = βm (eT y )vm , Ax − λx m 即 ˜ ∥2 = |βm (eT y )|, ∥Ax − λx m ˜ 其中 x = Vm y . 如果 |βm (eT m y )| 很小, 则我们就认为 λ 是 A 的某个特征值的很好的近似. 事实上, 关于 Ritz ˜ 值 λ, 我们有下面的性质.
It follows that ∥AVm − Vm R∥2 2 is minimized when Z = 0 and ∥AVm − Vm Tm ∥2 = V V T AVm − Vm Tm
2
· 7-6 · [ ] T Vm AVm − Vm Tm = (Vm , Vu ) T Vu AVm
T = Vu (Vu AVm ) T = Vu AVm 2
1: 2: 3: 4: 5:
Compute an orthonormal basis of K: Vm = [v0 , v1 , . . . , vm−1 ]. T Compute the eigenvalues of the matrix Tm = Vm AVm , i.e., the Ritz values of A. ˜ ˜ ˜ Select k desired ones: λ1 , λ2 , . . . , λk where k ≤ m. ˜ i , i = 1, 2, . . . , k . Compute the eigenvectors yi of Tm associated with λ Approximate the eigenvectors of A by the Ritz vectors x ˜i = Vm yi , i = 1, 2, . . . , k .
T 由于 A 对称的, 故 Tm = Vm AVm ∈ Rm×m 也是对称的. 此时, Ritz 值和 Ritz 向量具有下面的最优性质.
定理 7.1 设 A ∈ Rn×n 对称, 则对任意的对称矩阵 R ∈ Rm×m , 有 ∥AVm − Vm R∥2 ≥ ∥AVm − Vm Tm ∥2 ,
T 即 ∥AVm − Vm R∥2 在 R = Tm 处取最小值, 此时 ∥AVm − Vm R∥2 = ∥Vu AVm ∥2 .
∥AQ − QD∥2 ≥ ∥AVm − Vm Tm ∥2 , 且当 Q = Vm U , D = Λ 时等式成立. 证明. Because span(Q) = K = span(Vm ), it follows that there exist a matrix W ∈ Rm×m such that Q = Vm W . As Q is column orthogonal, we have
Choose a vector v0 such that ∥v0 ∥ = 1, and set β0 = 0 for j = 0, 1, . . . do Compute w = Avj − βj vj −1 αj +1 = (w, vj ) w = w − αj +1 vj βj +1 = ∥w∥2 if βj +1 = 0 then stop end if vj +1 = w/βj +1 Compute the eigenvalues and eigenvectors of Tj Check the convergence end for
7.2.1 对称矩阵
这里我们讨论 A 对称时, Rayleigh Ritz 算法的性质.
· 7-5 · 设 Vu ∈ Rn×n−m 是一个列正交矩阵, 且使得 V = [Vm , Vu ] ∈ Rn×n 是一个正交矩阵. 于是我们有 [ ] T T Vm AVm Vm AVu T T V AV = [Vm , Vu ] A[Vm , Vu ] = . T T Vu AVm Vu AVu
· 7-8 ·
7.3
Lanczos 算法
T 设 A ∈ Rn×n 是对称矩阵. Lanczos 就是利用 Lanczos 算法来计算 Km 的基和 Tm = Vm AVm , 然后计算 A 的 Ritz 值和 Ritz 向量.
算法 7.3 Lanczos Algorithm
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
Байду номын сангаас
· 7-2 ·
7.1
法.
投影算法
最简单的特征值问题就是仅仅计算一个特征值, 如计算模最大的特征值. 这时我们可以使用幂迭代算
算法 7.1 幂迭代: 计算最大特征值
1: 2: 3: 4: 5:
Given x(0) for i = 1, 2, . . ., until converge do y (i) = Ax(i−1) x(i) = y (i) /∥y (i) ∥2 end for 幂迭代所产生的迭代向量 x(0) , x(1) , . . . , x(m−1) 生成一个 Krylov 子空间 { } Km (A, x(0) ) = span x(0) , Ax(0) , . . . , Am−1 x(0) .
T I = QT Q = (Vm W )T Vm W = W T Vm Vm W = W T W,
which implies that W is orthogonal. Let W DW T = Tm + Z . en we have
2 ∥AQ − QD∥2 2 = ∥AVm W − Vm W D ∥2
T ˜ T Vm y. Wm AVm y = λW m
i = 1, 2, . . . , m,
(7.2)
这是一个广义特征值问题. 如果我们取 Lm = Km , 并令 Wm = Vm , 则 (7.2) 就化为 ˜ Tm y = λy, (7.3)
T ˜ y ) 是矩阵 Tm 的一个特征对. 由于 m 通常比较小, 因此我们可 其中 Tm = Vm AVm ∈ Rm×m . 这意味着 (λ, ˜ y ). 这样我们就可以计算出 A 的一个近似特征对 (λ, ˜ x 以使用先前讨论的方法 (如 QR 迭代) 来计算 (λ, ˜ ), 其 中x ˜ = Vm y .
第七章
特征值问题的迭代解法
当矩阵规模很大时, 计算其所有的特征值和特征向量是非常困难的. 而在实际应用中, 我们通常也只对 其中的某些特征值和特征向量感兴趣, 因此也没必要计算所有的特征值和特征向量. 本章讨论计算部分特征值和特征值向量的迭代解法. 这些算法的存储量要远小于 O(n2 ), 运算量也远 小于 O(n3 ).
· 7-9 · 在 Lanczos 算法 ?? 中, 迭代 m 步后, 向量 v0 , v1 , . . . , vm−1 构成子空间 { } Km (A, v0 ) = span v0 , Av0 , . . . , Am−1 v0 , 的一组基, 并且有 AVm = Vm Tm + βm vm eT m, 其中 em = [0, 0, . . . , 0, 1]T ∈ Rm , .. .. . . . βm−1 αm
· 7-4 ·
7.2
Rayleigh-Ritz 算法
事实上, 我们可以在 Km (A, x(0) ) 中找出 m 个最佳近似特征向量及相应的最佳近似特征值. 这些近似 特征值和近似特征向量就是 Ritz 值 和 Ritz 向量. 定义 7.1 设 Km 是 Rn×n 的 一 个 m 维 子 空 间, 它 的 一 组 标 准 正 交 基 为 v0 , v1 , . . . , vm−1 , 并 令 Vm = T ˜ y ) 是 Tm 的一组特征对, 即 Tm y = λy ˜ 且 ∥y ∥2 = 1. 则我们成 [v0 , v1 , . . . , vm−1 ]. 记 Tm = Vm AVm , 设 (λ, ˜ 是 A 的一个 Ritz 值, x λ ˜ = Vm y 是 A 的一个 Ritz 向量. Rayleigh-Ritz 算法 就是用 Ritz 值和 Ritz 向量来近似 A 的特征值与特征向量. 算法 7.2 Rayleigh Ritz procedure
· 7-3 · 这样的算法我们称为斜投影算法. 如果我们取 Lm = Km , 则上面的算法就是一个正交投影算法, 此时条件 (7.1) 称为 Galerkin 条件. 设 v0 , v1 , . . . , vm−1 和 w0 , w1 , . . . , wm−1 分别是 Km 和 Lm 的一组标准正交基. 令 Vm = [v0 , v1 , . . . , vm−1 ], Wm = [w0 , w1 , . . . , wm−1 ]. 则对任意 x ˜ ∈ Km , 存在向量 y ∈ Rn 使得 x ˜ = Vm y , 即 x ˜ 可以由 v0 , v1 , . . . , vm−1 线性表出. 根据条件 (7.1), 我们可得 ˜ m y, wi ) = 0, (AVm y − λV 即
在幂迭代中, 我们取 x(m−1) 为近似特征向量. 显然, 如果我们在 Km (A, x(0) ) 中找出 “最佳” 的近似特征向 量, 则收敛速度就可能会大大加快. 下面我们讨论如何在 Km = Km (A, x(0) ) 中寻找 “最佳” 的近似特征向量. 设 A ∈ Rn×n , 并设 Km 和 ˜ x Lm 是 Rn 的两个 m 维子空间. 投影算法就是在寻找 A 的近似特征对 (λ, ˜), 满足下面的 Petrov-Galerkin 条 件 ˜ ∈ C and x find λ ˜ ∈ Km such that ˜x Ax ˜−λ ˜ ⊥ Lm . (7.1)
2
. 2
2
注: 定理 7.1 中的 2-范数可以改成任意的酉不变范数, 如 F -范数.
T 定理 7.2 设 A ∈ Rn×n 对称, 并设 Tm = U ΛU T 是 Tm = Vm AVm 的特征值分解. 设 Q ∈ Rn×m 是满足 span(Q) = K 的任意列正交矩阵, D ∈ Rm×m 是任意对角矩阵. 我们有
· 7-7 · = ∥AVm − Vm W DW T ∥2 2
2 = ∥AVm − Vm Tm ∥2 2 + ∥Z ∥2
≥ ∥AVm − Vm Tm ∥2 2. If we choose W = U and D = Λ, then Z = W DW T − Tm = U ΛU T − Tm = 0 and, hence, the above equality 2 holds. is result shows that the minimum of ∥AQ − QD∥2 over all n-by-k column orthogonal matrices Q with span(Q) = K and over all diagonal matrices D is attained by Q = Vm U and D = Λ. 定理 7.1 和定理 7.2 表明, 在 ∥AQ − QD∥2 极小的意义下, Ritz 值是特征值的 “最佳” 近似. 所以我们用 Ritz 值作为特征值的近似是有道理的.
证明. Let R = Tm + Z where Z ∈ Rm×m is symmetric. Note that both A and Tm are symmetric and Tm = T AVm , we have Vm
T ∥AVm − Vm R∥2 2 = (AVm − Vm R) (AVm − Vm R) ( )T ( ) = AVm − Vm (Tm + Z ) AVm − Vm (Tm + Z ) T T = ∥AVm − Vm Tm ∥2 2 − Vm AVm Z + Tm Vm Vm Z T T T − ZVm AVm + ZVm Vm Tm + Z T Vm Vm Z 2 = ∥AVm − Vm Tm ∥2 2 + ∥Z ∥2 .