授業ノート

応用数理工学特論:6 月 19 日講義ノート
担当:打田裕樹,山家慎一朗
2008 年 7 月 2 日
2.1
1 QR 法の収束定理
Ai の第(n,n)要素を σi とする.この要素
Ai は上三角行列に収束し,対角要素は λ1 ,
λ2 ,...,λn となる.Ai は第(k ,j )要素
(j < k )は,収束率
(aikj ≈
k| i
( |λ
|λj | ) )
シフト σi の選び方
|λk |
|λj | (<
は λn に収束するので,途中段階でも良い近似
aikj
値になっていると期待される.
1)で 0 に収束.
2.2
減次(デフレーション)
シフト付き QR 法より
~
A
A=
i
i
・・・・・・・・・・・・・・・・
| λ
 n
| λ
 j
|
|




000000000
*
λ
λ
i
|λn |
|λj |
n
j
λn
で0に収束
図 2 減次 (デフレーション)
図 1 QR 法の収束定理
もし,|λn | ≪ 1 ならば
i
*
*
*
*
*
*
*
*
n| i
≪ 1,( |λ
|λj | ) は
Ãi の固有値={λ1 ,λ2 ,...,λn−1 }
det(Ai − λI)=(λn − λ)det(Ãi -λIn−1 )
極めて速く 0 に近づく.よって,QR 法は絶対
値最小の固有値が 0 に近いほど早く収束する.
いま,λn の近似値 σi がわかっているとする
この 1 つ上の式は,左辺も右辺も λ1 ,
λ2 ,...
と,Ai − σi I の絶対値最小固有値は 0 に近い.
,λn が零点ですが,右辺は最初の因子が λn
を零点に持つので,残りの因子である det(Ãi -
2 シフト付き QR 法
λIn−1 ) が λ1 ,λ2 ,...,λn−1 を零点に持つのだ
今度は (n-1) × (n − 1) 行列 Ãi に対して,シ
A0 = A
do i=0,1,2,· · ·
フト付きの QR 法を適用すればよい.
(λn の近似値 σi を何らかの方法で計算)
3 密行列に対する QR 法
Ai − σi I → Qi Ri
シフト付き QR 法では 4 回程度の反復で 1
(全固有値を σi だけ小さくする)
Ai+1 =Ri Qi +σi I
個の固有値が求まる.
Ai → Qi Ri の演算量は O(n3 )
(全固有値を元に戻す)
end do
Ai+1 → Ri Qi の演算量は O(n3 )
⇒ 収束が加速
⇒全固有値を求める演算量は O(n4 )
ベッセンベルグ形の利用
1
図3
Givens 回転
(
1 回の Givens 回転は 2 列のみに作用
)(
)
− sin θ
x
cos θ
y
(
)
(
)
x cos θ − y sin θ
∗
=
=
(1)
0
x sin θ + y cos θ
cos θ
sin θ
演算量 O(n)
Ri Qi を求める演算量は O(n2 )
⇒ 全固有値を求める演算量は O(n3 )
4 マルチシフト QR 法
↓
・複数 (m 個) の固有値を同時に求める.
これが 0 になるよう θ を選ぶ.
⇔
x sin θ + y cos θ = 0
sin θ
cos θ
(
cos θ
sin θ

cos θ
 − sin θ





ヘッセンベルグ行列
=−
y
(3)
x
y
θ = tan−1 (− )
x
)
− sin θ
を n × n に拡大
cos θ
O
− sin θ
cos θ
O
(4)
左
右
GT
3 と G1 は同時に作用可能
GT
4 と G2 は同時に作用可能
..
.


GT
n−1 と Gn−3 は同時に作用可能


 = Gi (直交行列)


1
..
・QR 法の複数ステップを同時に実行
(2)
.
1
この領域は QR 反復終了後の状態になって
いる
⇒ これらの要素の使って次の QR 反復の
Givens 回転を決められる
1 回の Givens 回転は 2 行のみに作用
演算量 O(n)
上三角化の演算量は O(n2 )
1 つ前の反復で使ったデータがキャッシュに
Ri =Gn−1 · · · G3 G2 G1 Ai
Ai+1 =Ri Qi =Ri GT
1
GT
2
···
残っている.それを次の反復がすぐ使う.
GT
n−1
2