1.共役勾配法
教科書計算例P113:行列Aの次数nをそれぞれ100、200、400として一次方程式系Ax=bを共役勾配法で解き、その計算結果が信頼できるかどうかを指摘せよ。
共役勾配法の解法結果は次のとおりです。
(1) n=100 の場合、
50 回の反復後に精度要件が満たされ、誤差曲線が下図に示されます。
(2) n=200 の場合、
100 回の反復後に精度要件が満たされ、誤差曲線が下の図に示されます。
(2) n=400 の場合、
200 回の反復後に精度要件が満たされ、誤差曲線が下の図に示されます。
(1) 結果の信頼性は
n=100、反復は 50 回、誤差は急速に減少し、1.07 10-12 に達し、最終結果 x=(1 1 ... 1)T が式に取り込まれます。 、これは質問の意味に準拠しています。
n=200、100 回の繰り返し、エラーは急速に減少し、6.23 10-12 に達し、最終結果 x=(1 1 ... 1)T が式に取り込まれ、質問の意味に一致します。
n=400, 200 回の繰り返しで、誤差は急速に減少し、2.14*10-11 に達し、最終結果 x=(1 1 ... 1)T が式に取り込まれ、質問の意味に一致します。
(2) 利点
構造が単純で、一貫性が高く、次数が大きい対称行列演算に適しています。
(3) 制限
このアルゴリズムは、A の一貫した対角要素を持つ疎な対称配列にのみ適用でき、矛盾した対角要素には適用できません。同様に、結果の b ベクトルは、個々の要素が非ゼロで他の要素がゼロの場合に適しています。
第二に、最急降下法
(1) n=100 の場合、
精度が 1*10-6 の場合、精度要件を満たすには 19465 回の反復が必要です。
(2) n=200 の場合、
精度が 1*10-6 の場合、精度要件を満たすには 68688 回の反復が必要です。
(3) n=400 の場合、
精度が 1*10-6 の場合、精度要件を満たすには 239671 回の反復が必要です。
上記の結果から、同じ精度が満たされる場合、最急降下法の反復回数は共役勾配法の反復回数よりもはるかに多いことがわかります。
3つ目は、両者の比較
n=200 を例に、共役勾配法と最急降下法の反復回数による誤差曲線を下図のように描きます。
分析の結果、共役勾配法の反復回数が n 回に達すると、誤差が急速に減少するのに対し、最急降下法の誤差はよりゆっくりと減少し、収束速度が遅くなることを示しています。