■ Il existe les méthodes suivantes pour l'intégration des probabilités
Riemann sum formule) $ \sum_{j=0}^{N-1} h(t_j) (t_{j+1}-t_j) $
Ito integral. Méthode de processus stochastique étendue par Kiyoshi Ito formule) $ \sum_{j=0}^{N-1}h(t_j) (W(t_{j+1})-W(t_j)) $. <=> $ \int_0^{T} h(t)dW(t) $.
Stratonovich integrals
formule)
Lorsque $ h (t) \ equiv W (t) $, Ito intégrale est
\begin{align*}
\sum_{j=0}^{N-1} W(t_j) (W(t_{j+1})-W(t_j)) \\
&=\sum_{j=0}^{N-1} ({W(t_{j+1})}^2 - {W(t_{j+1})}^2 + 2 W(t_j) W(t_{j+1}) - {W(t_j)}^2 - {W(t_j)}^2) \\
&= \frac{1}{2} \sum_{j=0}^{N-1} ({W(t_{j+1})}^2 - {W(t_j)}^2 - (W(t_{j+1}) - W(t_j))^2 )\\
&= \frac{1}{2} (W(T)^2 - W(0)^2) - \frac{1}{2} \sum_{j=0}^{N-1} (W(t_{j+1}) - W(t_j))^2
\end{align*}
$ \ sum_ {j = 0} ^ {N-1} (W (t_ {j + 1}) --W (t_j)) ^ 2 $ est égal à la distribution de Wiener Process et peut être défini comme $ T
Calculons I à l'intégrale.
N=10000;
M=1;
T = 1.0
dt = T / N;
t = np.arange(0.0,1.0, dt);
dW = np.sqrt(dt)*randn(N,M); # (N, M)queue
W = np.cumsum(dW,axis=0);
e = np.array([[0]])
W_=np.concatenate((e,W[:-1]), axis=0) #Mettez 0 dans la valeur initiale W(0)Comme.
ito = np.dot(W_.T,dW) # (10000, 1).T * (10000, 1) => (1, 1)
np.abs(ito - 0.5*(W[-1]**2 - T) )[0][0]
## output
## 0.00414652405737
Article de référence
https://www.semanticscholar.org/paper/An-Algorithmic-Introduction-to-Numerical-Simulation-Higham/1c4126f96df7690dd40dab5f34ee4be5a5f95fbb
--Wikipedia "Kiyo Ito" https://ja.wikipedia.org/wiki/%E4%BC%8A%E8%97%A4%E6%B8%85
Recommended Posts