数値解析

教科書 第2章 非線形方程式その1
第6章 連立一次方程式その3
非線形方程式
2次以上の代数方程式と非線形方程式を解く
方法を考える
⇒ 反復法
収束の問題
 二分法
 ニュートン法
ここでは,連立方程式
でない場合を考える
 Von Mises法(改良ニュートン法)
 加速法
 Aitken, Steffensen
第6章 連立一次方程式その3
二分法
 非線形方程式 f (x) = 0
 y = f (x) のx軸との交点を求める
 交点を含む区間 [x1, x2] を半分ずつ狭めて
いく
 特徴
y
 長所:必ず収束する
y = f(x)
 短所:反復回数が多い
解
x1
解をはさむ探索区間を設定
する.
O
第6章 連立一次方程式その3
xm
x2
x
探索区間
ニュートン法(Newton-Raphson法)
 関数を x0 のまわりでTaylor展開
f ( x0 )
2 f ( x0 ) 2
k f ( x0 ) k
f ( x)  f ( x0 ) 
x 
x    
x  
2
k
x
x
x
x  x  x0
 一次の項まで考慮すると
f ( x0 )
f ( x)  f ( x0 ) 
x
x
 f ( x0 )  f ( x0 )(x  x0 )
 f(x)=0となる解
f ( x0 )
x  x0 
f ( x0 )
反復式
第6章 連立一次方程式その3
点x0を通る接
線の方程式
f ( x0 )
f ( x0 ) 
x
f ( xk )
xk 1  xk 
f ( xk )
ニュートン法(Newton-Raphson法)
 接線と x 軸との交点に対する反復法
f ( xk )
xk 1  xk 
f ( xk )
y
y -f (x0) = f '(x0)(x-x0)
傾きf '(x0)
y = f (x)
O
x1
第6章 連立一次方程式その3
x0
x
ニュートン法 例題1
 f(x)=x2-2=0を解け
f’(x)=2xであるから,ニュートン法の公式より
xk 2  2 1 
2
xk 1  xk 
  xk  
2xk
2
xk 
初期値を x0=1.5 とすると
1
2  1
2 


x1   x0    1.5    1.41666667
2
x0  2 
1.5 
1
2  1
2



x2   x1    1.41666667
  1.41421569
2
x1  2 
1.41666667
小数点8位
まで一致
1
2  1
2

x3   x2    1.41421569
  1.41421356
2
x2  2 
1.41421569
1
2  1
2

x4   x3    1.41421356
  1.41421356
2
x3  連立一次方程式その3
2
1.41421356
第6章
ニュートン法と二分法の比較
二分法
ニュートン法
1 5.5000000000000000000e+00 1.138e+01
2 4.7500000000000000000e+00-3.953e+00
3 5.1250000000000000000e+00 2.393e+00
4 4.9375000000000000000e+00-1.090e+00
5 5.0312500000000000000e+00 5.713e-01
6 4.9843750000000000000e+00-2.791e-01
7 5.0078125000000000000e+00 1.412e-01
8 4.9960937500000000000e+00-7.018e-02
9 5.0019531250000000000e+00 3.519e-02
10 4.9990234375000000000e+00-1.757e-02
11 5.0004882812500000000e+00 8.791e-03
12 4.9997558593750000000e+00-4.394e-03
13 5.0001220703125000000e+00 2.197e-03
14 4.9999389648437500000e+00-1.099e-03
15 5.0000305175781250000e+00 5.493e-04
16 4.9999847412109375000e+00-2.747e-04
17 5.0000076293945312500e+00 1.373e-04
18 4.9999961853027343750e+00-6.866e-05
19 5.0000019073486328125e+00 3.433e-05
20 4.9999990463256835938e+00-1.717e-05
21 5.0000004768371582031e+00 8.583e-06
22 4.9999997615814208984e+00-4.292e-06
23 5.0000001192092895508e+00 2.146e-06
24 4.9999999403953552246e+00-1.073e-06
25 5.0000000298023223877e+00 5.364e-07
26 4.9999999850988388062e+00-2.682e-07
27 5.0000000074505805969e+00 1.341e-07
28 4.9999999962747097015e+00-6.706e-08
29 5.0000000018626451492e+00 3.353e-08
30 4.9999999990686774254e+00-1.676e-08
31 5.0000000004656612873e+00 8.382e-09
32 4.9999999997671693563e+00-4.191e-09
33 5.0000000001164153218e+00 2.095e-09
34 4.9999999999417923391e+00-1.048e-09
35 5.0000000000291038305e+00 5.239e-10
1
2
3
4
5
6
7
8
7.59562841530054644323400e+00
6.12571526494821849695427e+00
5.33895988477328398147392e+00
5.04548534982205953980383e+00
5.00099912463051943234404e+00
5.00000049873744956130395e+00
5.00000000000012434497876e+00
5.00000000000000000000000e+00
ニュートン法の方
が圧倒的早い
第6章 連立一次方程式その3
ニュートン法 収束の早さ
 収束の速さを調べる
f ( xk )   f ( xk )  (  xk ) f ( xk )
xk 1    xk   

f ( xk )
f ( xk )
f ( xk )
xk   2 .

2 f ( xk )
以下の関係を利用した
1

f ( )  f ( xk )    xk  f ( xk )    xk 2 f ( )
2
=0
区間 I1 において 0  A  f ( x) , f ( x)  B とできる
B
2
xk 1   
xk  
2A
第6章 連立一次方程式その3
2次収束
収束の速さ
 一般に,αに収束する反復列が
xk 1    ( A   k )( xk   )
A  1,  k  0
のとき,線形収束(一次の収束)
 また,次のとき
xk 1    M xk  
p
p  1, 0  M  
p次収束であるという
(ニュートン法は2次の収束)
第6章 連立一次方程式その3
ニュートン法の長所と短所
 ニュートン法の特徴
 収束し始めると,その後の収束は早い.
 必ずしも,収束しない.重根の場合等
 単根の場合は,収束性に優れる.遠く離れた初期
値からでも,必ず解に収束する.
 ニュートン法使用時の注意点
 解の見当をつけて初期値を選ぶ.
 近接した解は分離しにくい.2つの近接解があると
きは,その両側に初期値を選ぶと分離できることが
ある.
 収束判定が厳しすぎると,収束しないで無限に計算
を繰り返すことがある.
第6章 連立一次方程式その3
Von Mises(フォンミーゼ)法
 ニュートン法の改良法
発散を防ぐ改良を施した方法
f ( xk )
xk 1  xk 
f ( x0 )
直線の傾
きは不変
y
y = f(x)
x1
O
第6章 連立一次方程式その3
x2x1
x0
x
収束の加速法(Aitkenの加速法)
 反復 xk が線形収束のとき,十分大きいkに対し
て
xk 1    A( xk   )
xk 2    A( xk 1   )
Aを消去すると
( xk 1  xk )2
  xk 
xk 2  2 xk 1  xk
反復式
ニュートン法は線形
収束ではないので,
適用不可.二分法は
適用可能
( xk 1  xk )2
yk  xk 
xk 2  2 xk 1  xk
第6章 連立一次方程式その3
Steffensenの反復法
 反復 xk が線形収束のとき,十分大きいkに
対して

gg( zk )  g( zk )
zk 1  gg( zk ) 
gg( zk )  2g( zk )  zk
2
xk*  zk , xk*1  g( xk* ), xk*2  g( xk*1 )
に対してAitken加速したもの
ただし,g(x)は x=g(x) を満たす関数
f(x)=x2-2=0の場合は g(x)  x  x2  2  1  x  2 
2x
第6章 連立一次方程式その3
2
x
反復法の比較(1)
xk 1  a  exp( xk )
x  ae
x
a=1.0
Steffensen反復 Newton反復
Aitken加速
第6章 連立一次方程式その3
1次収束のものも加
速法の適用により
,ニュートン法並
みに早くなる!
反復法の比較(1)
x  ae
x
a=3.0
xk 1  a  exp( xk )
Steffensen反復
Newton反復
Aitken加速で発散する
場合でも,Steffensen
反復法なら収束する
Aitken加速
第6章 連立一次方程式その3
縮小写像の幾何学的意味
第6章 連立一次方程式その3