複素周回積分による非線形方程式の解法
2009SE306 山田 ひかる
指導教員：杉浦1

はじめに洋とかくと，方程式は,すなわち
f (x) = 0  
本論文では，閉曲線 C 内の解析関数のすべての零点をf1 (x)0求める方法について研究する．複素関数論におけるコー ・  ・  
シーの積分公式，コーシーの積分定理を用い，閉曲線 C   ・  = ・  
内の解析関数の零点のモーメントを求めることができる．
 ・  ・村井はそのモーメントから多項式因子の係数を求め，多fn (x)0
項式の零点を求めることで C 内のすべての零点を計算した．本研究では，求めたモーメントから多次元 Newton とかける．
(0)
今 x∗i = xi + di とすると，法によって直接零点を計算する方法を研究する．

2(0)

巻き網法

(0)

(1 ≤ i ≤ n).
(7)
ゆえに (7) で d1 ∼ dn が分かればよい．ここで (7) を一次近似すると，
fi (x1 + d1 , x2 + d2 , …, x(0)n + dn ) = 0

単純閉曲線 C の内部に存在する解析関数 f (z) の全ての零点を z1 , …, zm とする．これらの l 次モーメントはlµl = z1l + z2l + … + zm(1)(0)である．特に µ0 = m は，C 内の零点の個数である．コーシーの積分公式，コーシーの積分定理により，モーメン
トは，∫m∑1fn′ (z)z lµl =dz =zjl (0 ≤ l ≤ m). (2)2πi C fn (z)j=1pm (z) =m∏(z − zj ) =j=1m∑(0)∼= fi (x1 , …, x(0)n )+j=1n∑∂fi∂xjj=1 ∂f1(3)を解くことにより，直接的に zi を求める方法を追及する．

多次元 Newton 法
方程式(1 ≤ i ≤ n)∂xj

di = 0.

(8)∂fi∗ ∂xは x = x(0) での値．これより d1 ∼ dn に関するj
近似線形方程式

k=0の係数 bk (0 ≤ k ≤ m − 1) をモーメント µl (1 ≤ l ≤ m)から計算し，pm (z) の零点を求めることで，問題を解決した．
本研究では，代数方程式 pm (z) = 0 を経由せずに，モーメント方程式

fi (x1 , …, xn ) = 0n∑∂fi

di = −fi (x(0) )(9)が得られる．ここで Jacobian 行列

bk zk ，bm = 1z1i + z2i + … + zni = µi (1 ≤ i ≤ n)(0)

fi (x1 + d1 , x2 + d2 , …, x(0)n + dn )と積分表示される．
村井 [1] は (2) を数値積分で計算し，零点の個数 µ0 = mを知るとともに，m 次多項式3(6)(4)の解を xi = x∗i (1 ≤ i ≤ n) とする.
［考え方］
(0)
初期近似 xi ∼= x∗i (1 ≤ i ≤ n) を改良する．ベクトルx = (x1 , · · · , xn )T に対し，関数を 
f1 (x)
f1 (x1 ,・・・, xn )
 ・  ・  
f (x) =  ・  = (5)・ 
 ・  ・fn (x)
fn (x1 ,・・・, xn )

∂x1
 ∂f2
 ∂x1


・J =
・
・∂fn
∂x1

∂f1
∂x2
∂f2
∂x2

∂fn
∂x2

...
...

...

∂f1 
∂xn
∂f2 
∂xn 







(10)

∂fn
∂xnを定義すると，(9) はd1
f1 (x(0) ) d2 
 f2 (x(0) )  ・ ・  (0)
Jd = J   = −fi (x ) = − ・ ・  ・ ・ 
dnfn (x(0) )(11)とかける．そして (11) の解 d は，d = −J −1 f (x0 ) となる．d は，近似方程式 (11) の解だから，x∗ ∼= x(0) + d(12)となる．そして x(0) + d を x(1) と表し，改良された近似解が導けた．以上を Newton 法の一回反復という．まとめると以下のようなアルゴリズムになる．

＜ x(0) から x(1) を計算＞
1.
f = f (x(0) )∂fi) を計算. (x = x(0) )2.
J = ( ∂xj3.
d = −J −1 f を計算．(Jd = −f を解く)
4.
x(1) = x(0) + dx(1) の精度が不十分ならこれをくり返す．
そしてlim x(k) = xkk→∞(13)を期待する．

4モーメント問題の解法
Newton 法を使うので，モーメント方程式 (3) を
fi (z1 , …, zm ) =m∑

zil − µl = 0(1 ≤ l ≤ m)(14)i=1と変形する．この時 zil の項だけが zi を含む．残りの項は定数とみなして微分するから，∂fl= lzil−1∂zl(15)

これで Jacobian 行列の要素がわかる．以上より，アルゴリズムは以下のようになる．
＜モーメント方程式のための Newton 法＞＝初期化＝(0)(0) (0)0. z (0) = (z1 , z2 , …, zm )T ∼= (z1 , …, zm )T を初期近似とする．
＝ Newton 反復＝∑m1.
fl = fl (z (0) ) = i=1 zil − µl = 0f = (f1 , f2 , …, fm )T とする．(1 ≤ l ≤ m)
(0)
∂fl
2.
Jli = ∂z
= l(zi )l−1 (1 ≤ l ≤ m, 1 ≤ i ≤ m) を計i
算．
ただし J = (Jli ) とする．
3.
d = −J −1 f を計算．(Jd = −f を解く)
4.
z (1) = z (0) + d
残差は f (z (1) ) になる．
Newton 法は 2 次収束する．すなわち，正定数 C > 0 が存在して，十分大きな k で∥ z (k+1) − z ∥≤ C ∥ z (k) − z ∥2(16)である．
数値実験の結果，初期値が良いときには Newton 法は速やかに二次収束することが観察された．しかし特に零点数 m が大きいとき，Newton 法は初期値によって不安定になり，発散したり線形方程式 Jd = −f が数値的に解けなくなったりした．そこで，Newton 法の安定化のために減速パラメータを導入して，減速 Newton 法を試みることにした．

5

減速 Newton 法

Newton 法が不安定で，収束が得られないとき，修正ベクトルの方向は変えずに，長さを縮めて用いる．これを減速 Newton 法という．修正ベクトルの縮小率を減速パラメータという．ここでは減速パラメータを b (0 < b ≤ 1)として，Newton 法に組み込む．b = 1 のときは，普通のNewton 法である．
＜モーメント方程式のための減速 Newton 法＞＝初期化＝(0) (0)(0)
0. z (0) = (z1 , z2 , …, zm )T ∼= (z1 , …, zm )T を初期近似とする．
減速パラメータを b (0 < b ≤ 1) を適切に決める．
＝減速 Newton 反復＝∑m
1.
fl = fl (z (0) ) = i=1 zil − µl = 0f = (f1 , f2 , …, fm )T とする．(1 ≤ l ≤ m)
(0)
∂fl
2.
Jli = ∂z= l(zi )l−1 (1 ≤ l ≤ m, 1 ≤ i ≤ m) を計i
算．
ただし J = (Jli ) とする．
3.
d = −J −1 f を計算．(Jd = −f を解く)
4.
z (1) = z (0) + bd
残差は f (z (1) ) になる．減速パラメータ b ̸= 1 の減速
Newton 法は 1 次収束である．数値実験により，適切な減速パラメータをもつ減速 Newton 法で，モーメント方程式が安定に解けることがわかった．実験結果については，口頭で述べる．

6

まとめ

解析関数の与えられた単純閉曲線内の零点をすべて求める方法について研究した．単純閉曲線上の複素積分により，単純閉曲線内の解析関数の零点のモーメントを計算することができる．村井はモーメントからそれらの零点をすべて零点とする多項式の係数を計算し，代数方程式の解としてすべての零点を求めた．今回は，モーメン
トから直接零点を計算することを目指した．
まずモーメント方程式を多次元 Newton 法で解く実験法を行った．いくつかの例では，正常な二次収束が得られた．しかし初期値の設定が難しく，収束が安定しない例も発見された．そのような例に対しても，減速 Newton法を適用し，収束をさせることができることがわかった．
減速 Newton 法の減速パラメータの決定は，非常に微妙な問題である．小さすぎると収束が遅くなり，大きすぎると発散する．適切な決定法の構成が望まれる．

7

参考文献

参考文献
[1] 村井智:複素関数による多項式の因数分解，南山大学
数理情報学部情報システム数理学科 2011 年度卒業
論文 (2011)．
「複素解析」共立出版株式会社 (2010).
[2] 小寺平冶：[3] 岸 正倫，藤本担孝：「複素関数論」学術図書出版社(2008).