SOR法

提供: testwiki
ナビゲーションに移動 検索に移動

SOR法(SORほう、テンプレート:Lang-en-short逐次加速緩和法)とは n連立一次方程式A𝒙=𝒃反復法で解く手法の一つであり、 ガウス=ザイデル法に加速パラメータωを導入してその修正量を拡大することで、 更なる加速を図った手法である[1]

反復のスキーム

n正方行列Aは、上三角行列U、 下三角行列L対角行列Dの和に分離すると、

A=L+D+U

と書ける。

非対角成分に相当する項をすべて右辺に移項し、すべての量x1,x2,,xnに 各段階で得られている最新のデータを代入するようにする(ガウス=ザイデル法)。こうして計算された値を𝒙~(k+1) とすると、x~i(k+1)は次の形となる[1]

x~i(k+1)=1aii(bij=1i1aijxj(k+1)j=i+1naijxj(k))

この値を次段でそのまま採用せずに、ガウス=ザイデル法で本来修正される量x~i(k+1)xi(k)に1より大きい 加速パラメータ[1]では緩和因子緩和係数と呼ばれている)ωを乗じてこの修正量を拡大し、これを前段の近似値xi(k)に加えることで、新たな値は

xi(k+1)=xi(k)+ω(x~i(k+1)xi(k))

とできる[1]。ただし、桁落ちを防ぐ観点からこの式の通り計算するのではなく、

xi(k+1)=(1ω)xi(k)+ωx~i(k+1)

として計算するか、または本節の最後に書かれた式を用いるのがよい。

この漸化式を、上のA=L+D+Uを用いて行列で表現すると、

{𝒙~(k+1)=D1(𝒃L𝒙(k+1)U𝒙(k))𝒙(k+1)=𝒙(k)+ω(𝒙~(k+1)𝒙(k))

となり、この2式から𝒙~(k+1)を消去することで、次式が得られる。

𝒙(k+1)=(I+ωD1L)1{(1ω)IωD1U}𝒙(k)+ω(D+ωL)1𝒃

上式における𝒙(k)の係数 Mω=(I+ωD1L)1{(1ω)IωD1U}を反復行列という。

実際の数値計算においては、これを各成分について表した下の式が用いられる。

xi(k+1)=(1ω)xi(k)+ω1aii(bij=1i1aijxj(k+1)j=inaijxj(k))

収束性

反復行列の固有値をλとすると、

max|λ||ω1|ω

が成立することから、少なくとも0<ω<2でなければSOR法の収束性は保証されない [2]

さらに、正定値対称行列Aを係数にもつ方程式A𝒙=𝒃に対するSOR法は、 加速パラメータω0<ω<2のとき必ず収束する(Ostrowskiの定理)[1]

また、ω=1のときガウス=ザイデル法と同じになり[1]ω1より小さいとき ガウス=ザイデル法より収束が遅くなる。ただし、ガウス=ザイデル法で収束しないような問題には使える [3]

加速パラメータωの選択

一般に加速パラメータωの値をあらかじめ最適に定めることはできない。そのため、問題ごとに適当な値を選択する必要がある。

しかし、ωの最適な値を決定することができる例も存在する。それは、係数行列Aが、ある基本行列Pに 対して

PAP1=[D1M1M2D2]

という形の行列に相似変換することができ、さらにヤコビ法の反復行列MJ=D1(L+U)スペクトル半径ρ(MJ)が既知であるときである。 なお、上の行列内のD1,D2対角行列である。

このとき、SOR法の反復行列のスペクトル半径ρ(Mω)が最小となるωの最適値は、 次の形で得られる[4]

ω=21+1ρ(MJ)2

近年の研究

共役勾配法をはじめとしたクリロフ部分空間法の普及が進んだことでSOR法の使用が減ってしまったこともあったが[1]、離散勾配法 (構造保存型数値解法の一つ) との関係が明らかになったことで再び注目されている[5][6]

脚注

  1. 1.0 1.1 1.2 1.3 1.4 1.5 1.6 テンプレート:Cite book
  2. テンプレート:Cite report
  3. テンプレート:Cite web
  4. Varga, R. S. (2009). Matrix iterative analysis (Vol. 27). Springer Science & Business Media.
  5. 宮武勇登, 曽我部知広, & 張紹良. (2017). 微分方程式に対する離散勾配法に基づく線形方程式の数値解法の生成. 日本応用数理学会論文誌, 27(3), 239-249.
  6. Miyatake, Y., Sogabe, T., & Zhang, S. L. (2018). On the equivalence between SOR-type methods for linear systems and the discrete gradient methods for gradient systems. en:Journal of Computational and Applied Mathematics, 342, 58-69.

参考文献

関連項目

テンプレート:Linear algebra