logo

ミルシュタイン法の導出 📂確率微分方程式

ミルシュタイン法の導出

メソッド 1

dX(t)=f(Xt)dt+g(Xt)dWt,t[t0,T] d X(t) = f \left( X_{t} \right) dt + g \left( X_{t} \right) d W_{t} \qquad , t \in [t_{0}, T] イートプロセスが、上に記述された自律確率微分方程式の解であるとする。間隔がhhで一定の等間隔時点{tiT:ti+1=ti+h}i=0N\left\{ t_{i} \le T : t_{i+1} = t_{i} + h \right\}_{i=0}^{N}において、計算されるYi:=Y(ti)Y_{i} := Y \left( t_{i} \right)は与えられた微分方程式の数値的解である。 Yi+1=Yi+f(Yi)h+g(Yi)hZ+12g(Yi)dg(Yi)dyh(Z21) Y_{i+1} = Y_{i} + f \left( Y_{i} \right) h + g \left( Y_{i} \right) \sqrt{h} Z + {{ 1 } \over { 2 }} g \left( Y_{i} \right) {{ d g \left( Y_{i} \right) } \over { d y }} h \left( Z^{2} - 1 \right) ここで、ZZ標準正規分布に従う確率変数である。

収束性

この解は強くγ=1\gamma = 1次に収束し、弱くβ=1\beta = 1次に収束する。

説明

ミルスタイン2次近似スキームmilstein 2nd-order Approximation Schemeは、オイラー・マルヤマスキームに2次補正項2nd-order correction termを加えて精度を向上させたメソッドだ。式が複雑に見えるが、インデックスが多いためで、少し省略すると次のようにきれいに書ける。 Xt+h=Xt+fth+gthZ+12gtgth(Z21) X_{t + h} = X_{t} + f_{t} h + g_{t} \sqrt{h} Z + {{ 1 } \over { 2 }} g_{t} g_{t}’ h \left( Z^{2} - 1 \right)

導出

ft:=f(Xt)gt:=g(Xt) \begin{align*} f_{t} &:= f \left( X_{t} \right) \\ g_{t} &:= g \left( X_{t} \right) \end{align*} 便宜上、上記のようにする。ffggは時間 ttに独立しているため、df/dt=dg/dt=0df / dt = dg / dt = 0であり、f(x)f ' (x)とすると、xxに関するffの導関数を表していることになる。

イートの公式: イートプロセス{Xt}t0\left\{ X_{t} \right\}_{t \ge 0}が与えられているとする。 dXt=udt+vdWt d X_{t} = u dt + v d W_{t} 関数V(t,Xt)=VC2([0,)×R)V \left( t, X_{t} \right) = V \in C^{2} \left( [0,\infty) \times \mathbb{R} \right)に対してYt:=V(t,Xt)Y_{t} := V \left( t, X_{t} \right)とすると、{Yt}\left\{ Y_{t} \right\}もまたイートプロセスであり、次が成り立つ。 dYt=Vtdt+VxdXt+12Vxx(dXt)2=(Vt+Vxu+12Vxxv2)dt+VxvdWt \begin{align*} d Y_{t} =& V_{t} dt + V_{x} d X_{t} + {{ 1 } \over { 2 }} V_{xx} \left( d X_{t} \right)^{2} \\ =& \left( V_{t} + V_{x} u + {{ 1 } \over { 2 }} V_{xx} v^{2} \right) dt + V_{x} v d W_{t} \end{align*}

dX(t)=f(Xt)dt+g(Xt)dWt d X(t) = f \left( X_{t} \right) dt + g \left( X_{t} \right) d W_{t} 与えられたイートプロセスでイートの公式を使用してdftd f_{t}を計算してみよう。V=fV = fとすると、イートの公式に従い dft=df(Xt)=(ftt+ftxft+122ftx2gt2)dt+ftxgtdWt=(0+ftft+12ft’’gt2)dt+ftgtdWt \begin{align*} d f_{t} =& d f \left( X_{t} \right) \\ =& \left( {{ \partial f_{t} } \over { \partial t }} + {{ \partial f_{t} } \over { \partial x }} f_{t} + {{ 1 } \over { 2 }} {{ \partial^{2} f_{t} } \over { \partial x^{2} }} g_{t}^{2} \right) dt + {{ \partial f_{t} } \over { \partial x }} g_{t} d W_{t} \\ =& \left( 0 + f_{t}’ f_{t} + {{ 1 } \over { 2 }} f_{t}’’ g_{t}^{2} \right) dt + f_{t}’ g_{t} d W_{t} \end{align*} となり、同様にV=gV = gとしてdgtd g_{t}を計算してみると dgt=gf(Xt)=(gtt+gtxft+122gtx2gt2)dt+gtxgtdWt=(0+gtft+12gt’’gt2)dt+gtgtdWt \begin{align*} d g_{t} =& g f \left( X_{t} \right) \\ =& \left( {{ \partial g_{t} } \over { \partial t }} + {{ \partial g_{t} } \over { \partial x }} f_{t} + {{ 1 } \over { 2 }} {{ \partial^{2} g_{t} } \over { \partial x^{2} }} g_{t}^{2} \right) dt + {{ \partial g_{t} } \over { \partial x }} g_{t} d W_{t} \\ =& \left( 0 + g_{t}’ f_{t} + {{ 1 } \over { 2 }} g_{t}’’ g_{t}^{2} \right) dt + g_{t}’ g_{t} d W_{t} \end{align*} となる。ttからssまでの積分形に変えてみると fs=ft+ts(fufu+12fu’’gu2)du+tsfugudWugs=gt+ts(gufu+12gu’’gu2)du+tsgugudWu \begin{align*} f_{s} =& f_{t} + \int_{t}^{s} \left( f_{u}’ f_{u} + {{ 1 } \over { 2 }} f_{u}’’ g_{u}^{2} \right) du + \int_{t}^{s} f_{u}’ g_{u} d W_{u} \\ g_{s} =& g_{t} + \int_{t}^{s} \left( g_{u}’ f_{u} + {{ 1 } \over { 2 }} g_{u}’’ g_{u}^{2} \right) du + \int_{t}^{s} g_{u}’ g_{u} d W_{u} \end{align*} となる。これをイートプロセスの積分形 Xt+h=Xt+tt+hfsds+tt+hgsdWs X_{t+h} = X_{t} + \int_{t}^{t+h} f_{s} ds + \int_{t}^{t+h} g_{s} d W_{s} に代入してみると、次を得る。 Xt+h=Xt+tt+h[ft+ts(fufu+12fu’’gu2)du+tsfugudWu]ds+tt+h[gt+ts(gufu+12gu’’gu2)du+tsgugudWu]dWs \begin{align*} X_{t+h} =& X_{t} + \int_{t}^{t + h} \left[ f_{t} + {\color{Red} \int_{t}^{s} \left( f_{u}’ f_{u} + {{ 1 } \over { 2 }} f_{u}’’ g_{u}^{2} \right) du + \int_{t}^{s} f_{u}’ g_{u} d W_{u} } \right] ds \\ & + \int_{t}^{t + h} \left[ g_{t} + {\color{Red} \int_{t}^{s} \left( g_{u}’ f_{u} + {{ 1 } \over { 2 }} g_{u}’’ g_{u}^{2} \right) du} + \int_{t}^{s} g_{u}’ g_{u} d W_{u} \right] d W_{s} \end{align*}

イートの掛け算テーブル: dtdtdWtd W_{t}の積は以下のようになる。 (dt)2=0dtdWt=0dWtdt=0(dWt)2=dt \begin{align*} \left( dt \right)^{2} =& 0 \\ dt d W_{t} =& 0 \\ d W_{t} dt =& 0 \\ \left( d W_{t} \right)^{2} =& dt \end{align*}

イートの掛け算テーブルにより、赤く塗られた部分はすべて00になる。結果としてftf_{t}gtg_{t}を定数として扱う項と、積分因子dWudWsdW_{u} dW_{s}の二重積分だけが残り、次のように書くことができる。 Xt+h=Xt+fttt+hds+gttt+hdWs+tt+htsgugudWudWs X_{t+h} = X_{t} + f_{t} \int_{t}^{t + h} ds + g_{t} \int_{t}^{t + h} d W_{s} + \int_{t}^{t + h} \int_{t}^{s} g_{u} g_{u}’ d W_{u} d W_{s} 最後の項tt+htsgugudWudWs\int_{t}^{t + h} \int_{t}^{s} g_{u} g_{u}’ d W_{u} d W_{s}は、イートの公式の系 abWsdWs=12[Wb2Wa2]12(ba) \begin{equation} \int_{a}^{b} W_{s} d W_{s} = {{ 1 } \over { 2 }} \left[ W_{b}^{2} - W_{a}^{2} \right] - {{ 1 } \over { 2 }} (b-a) \end{equation} およびウィーナープロセスの増分の正規性、すなわち (Wt+hWt)hN(0,1) \begin{equation} \left( W_{t+h} - W_{t} \right) \sim \sqrt{h} N \left( 0, 1 \right) \end{equation} により、標準正規分布に従う確率変数ZN(0,1)Z \sim N (0,1)に関して近似的に次のように計算される。 tt+htsgugudWudWsgtgttt+htsdWudWs=gtgttt+h(WsWt)dWs=gtgt[tt+hWsdWsWt(Wt+hWt)]=gtgt[tt+hWsdWsWtWt+h+Wt2]=gtgt[Wt+h22Wt22h2WtWt+h+Wt2](1)=12gtgt[Wt+h2+Wt2h2WtWt+h]=12gtgt[(Wt+hWt)2h]=12gtgt[hZ2h](2)=12gtgth(Z21) \begin{align*} & \int_{t}^{t + h} \int_{t}^{s} g_{u} g_{u}’ d W_{u} d W_{s} \\ \approx& g_{t} g_{t} ' \int_{t}^{t+h} \int_{t}^{s} d W_{u} d W_{s} \\ =& g_{t} g_{t} ' \int_{t}^{t+h} \left( W_{s} - W_{t} \right) d W_{s} \\ =& g_{t} g_{t} ' \left[ \int_{t}^{t+h} W_{s} d W_{s} - W_{t} \left( W_{t+h} - W_{t} \right) \right] \\ =& g_{t} g_{t} ' \left[ \int_{t}^{t+h} W_{s} d W_{s} - W_{t} W_{t+h} + W_{t}^{2} \right] \\ =& g_{t} g_{t} ' \left[ {{ W_{t + h}^{2} } \over { 2 }} - {{ W_{t}^{2} } \over { 2 }} - {{ h } \over { 2 }} - W_{t} W_{t+h} + W_{t}^{2} \right] & \cdots (1) \\ =& {{ 1 } \over { 2 }} g_{t} g_{t} ' \left[ W_{t + h}^{2} + W_{t}^{2} - h - 2 W_{t} W_{t+h} \right] \\ =& {{ 1 } \over { 2 }} g_{t} g_{t} ' \left[ \left( W_{t + h} - W_{t} \right)^{2} - h \right] \\ =& {{ 1 } \over { 2 }} g_{t} g_{t} ' \left[ h Z^{2} - h \right] & \cdots (2) \\ =& {{ 1 } \over { 2 }} g_{t} g_{t}’ h \left( Z^{2} - 1 \right) \end{align*} これを整理すると、次を得る。 Xi+1=Xi+fih+gihZ+12gigih(Z21) X_{i+1} = X_{i} + f_{i} h + g_{i} \sqrt{h} Z + {{ 1 } \over { 2 }} g_{i} g_{i}’ h \left( Z^{2} - 1 \right)


  1. Panik. (2017). Stochastic Differential Equations: An Introduction with Applications in Population Dynamics Modeling: p197, 218~219. ↩︎