Processing math: 0%
MKZR:Stochastyczne równania różniczkowe

Z Skrypty dla studentów Ekonofizyki UPGOW

(Różnice między wersjami)
m (Schemat Milsteina)
m (Schemat Milsteina)
Linia 66: Linia 66:
Schemat Milsteina jest dany wzorem interacyjnym:
Schemat Milsteina jest dany wzorem interacyjnym:
-
:<math>\displaystyle X(t_i) = X(t_{i-1}) + F(X(t_{i-1}, t_{i-1}) h - </math>  
+
<math>\displaystyle X(t_i) = X(t_{i-1}) + F(X(t_{i-1}, t_{i-1}) h - </math>  
-
:<math>
+
<math>
\frac{1}{2}G(X(t_{i-1},t-1)G'(X(t_{i-1},t-1) h  + \sqrt{h}G(X(t_{t-1}), t_{t-1})  N(0,1)</math>.
\frac{1}{2}G(X(t_{i-1},t-1)G'(X(t_{i-1},t-1) h  + \sqrt{h}G(X(t_{t-1}), t_{t-1})  N(0,1)</math>.

Wersja z 14:49, 8 cze 2010

Spis treści

[ukryj]

Stochastyczne równania różniczkowe

W tym rozdziale zostaną opisane metody numeryczne, które służa do rozwiązywania stochastycznych równań różniczkowych typu:

gdzie F i G to dowolne funkcje, a \Gamma(t) jest procesem losowym. Najczęstszym przypadek to taki w którym \Gamma(t) to biały szum Gaussowski. Tak zapisane równanie nie jest precyzyjnie określone ze względu na dylemat Stratonowicza-Ito. Dlatego poprawne jest zapisanie równanie Ito w postaci:

dX(t)= F(X(t), t)dt + G(X(t), t) dW(t)\;

Nie zmienia to ogólności, gdyż jak wiadomo każde równanie zapisane w interpretacji Stratonowicza ma swój odpowiednik Ito. Dla potrzeb metod numerycznych będziemy rozpatrywać zawsze równania Ito, a jeśli pojawią się równania Stratonowicza to będziemy je transpormować do postaci Ito.



Schemat Eulera-Maruyamy dla równań stochastycznych

Najprostszą metodą aproksymacji numerycznej równania stochastycznego jest podobnie jak w przypadku równań różniczkowych zwyczajnych jest schemat Eulera. Część deterministyczną równania stochastycznego traktujemy w taki sam sposób jak w schemacie Eulera dla równań różniczkowych zwyczajnych. Niech h oznacza krok całkowania i oś czasowa będzie zdyskretyzowana na przedzialy t_{i-1},t_{i},t_{i+1} oraz h=t_{i}-t_{i-1}. Wtedy część deterministyczna równania stochastycznego przyjmuje postać:

X(t_i) = X(t_{i-1}) + \int_{t_{i-1}}^{t_{i}} F(X(t), t) dt \simeq X(t_{i-1}) + F(X(t_{i-1}, t_{i-1}) h


Aby całkować część stochastyczną potrzebujemy formuły na przyrost skończony procesu Wienera:

\int_{t_{i-1}}^{t_{i}} \Gamma(t) dt =\;\int_{t_{i-1}}^{t_{i}} dW(t) = W(t_{i})-W(t_{i-1})

Wiemy, że proces Wienera jest procesem o przyrostach niezależnych, które są gaussowską zmienna losową o zerowej wartości średniej i wariancji 2(t_{i} − t_{i-1})=2 h.

Tak więc widać, że w schemacie Eulera całkę typu \int_{t_{i-1}}^{t_{i}} \Gamma(t) dt należy zastąpić w każdym kroku całkowania gaussowską zmienną losową o wariancji proporcjonalnej do kroku całkowania h. Ponieważ z reguły dysponujemy gaussowskich generatorem liczb losowych o jednostkowej wariancji N(0,1), można zapisać:

\int_{t_{i-1}}^{t_{i}} \Gamma(t) dt = \sqrt{2 h} N(0,1)

Ten zapis pokazuje też ważną cechę przy obliczaniu aproksymacji rozwiązań stochastycznych - najniższy rząd w h jest nie O(h) ale O(h^{1/2}).

Ponadto z takiego sformułowania widać też, że zmiany procesu Wienera w stosunku do przyrostów czasu są rozbieżne w granicy h\to 0.


Korzystając w powyższych faktów, możemy zapisać pełny schemat Eulera-Maruyamy dla równania stochastycznego (Ito):

X(t_i) = X(t_{i-1}) + F(X(t_{i-1}, t_{i-1}) h  + \sqrt{h}G(X(t_{t-1}), t_{t-1})  N(0,1).


Gaussowskie zmienne losowe możemy otrzymać np. korzystając z algorytmu Box-a Mullera.

Schemat Eulera-Maruyamy dla układu równań stochastycznych

Schemat Eulera-Maruyamy można uogólnić na układy równań stochastycznych. Niech \mathbf X(t) będzie wektorem o składowych \mathbf X(t)=( X^1(t),X^2(t),...,X^n(t)). Układ równań stochastycznych (Ito) można zapisać w ogólnej postaci:

d X^i(t)= F^i(\mathbf X(t), t)dt + \sum_{j=1}^{n} G^{i,j}(\mathbf X(t), t) dW^j(t)\;\; j=1,2,...,n,

gdzie W^i(t),\;W^j(t) są niezależnymi procesami Wienera dla i\neq j, F^i oznacza wektor drytfu a G^{i,j} jest macierzą n \times n funkcji.

Wtedy schemat Eulera-Maruyamy ma postać:

X^j(t_i) = X^j(t_{i-1}) + F^j (\mathbf X(t_{i-1}), t_{i-1}) h + \sqrt{h} \sum_{k=1}^{n} G^{j,k}(\mathbf X(t), t) N^k(0,1)\;

Schemat Milsteina

Schemat Milsteina jest dany wzorem interacyjnym:

\displaystyle X(t_i) = X(t_{i-1}) + F(X(t_{i-1}, t_{i-1}) h -  

\frac{1}{2}G(X(t_{i-1},t-1)G'(X(t_{i-1},t-1) h  + \sqrt{h}G(X(t_{t-1}), t_{t-1})  N(0,1).

W stosunku do schematy Eulera-Maruyamy zawiera on dodatkowy składnik, proporcjonalny do O(h):

- \frac{1}{2}G(X(t_{i-1},t-1)G'(X(t_{i-1},t-1) h.

Ta poprawka powoduje, że powyższy schemat jest pierwszego rzędu w sensie silnym w przeciwieństwie do schematu Eulera-Maruyamy, ktry jest rzędu 1/2.