Articulo de referencia

Método Milstein

En matemáticas , el método de Milstein es una técnica para la solución numérica aproximada de una ecuación diferencial estocástica . Recibe su nombre de Grigori Milstein , quien...

En matemáticas , el método de Milstein es una técnica para la solución numérica aproximada de una ecuación diferencial estocástica . Recibe su nombre de Grigori Milstein , quien lo publicó por primera vez en 1974. [ 1 ] [ 2 ]

Descripción

Consideremos la ecuación diferencial estocástica autónoma de Itō :dincógnitat=a(incógnitat)dt+b(incógnitat)dWt{\displaystyle \mathrm {d} X_{t}=a(X_{t})\,\mathrm {d} t+b(X_{t})\,\mathrm {d} W_{t}} con condición inicialincógnita0=incógnita0{\displaystyle X_{0}=x_{0}}, dóndeWt{\displaystyle W_{t}}denota el proceso de Wiener , y supongamos que deseamos resolver esta EDE en algún intervalo de tiempo. [0,T]{\displaystyle [0,T]}. Luego, la aproximación de Milstein a la solución verdaderaincógnita{\displaystyle X}es la cadena de MarkovY{\displaystyle Y}definido de la siguiente manera:

  • Dividir el intervalo[0,T]{\displaystyle [0,T]}ennorte{\displaystyle N}subintervalos iguales de anchoΔt>0{\displaystyle \Delta t>0}:0=τ0<τ1<<τnorte=T con τnorte:=norteΔt y Δt=Tnorte{\displaystyle 0=\tau _{0}<\tau _{1}<\dots <\tau _{N}=T{\text{ con }}\tau _{n}:=n\Delta t{\text{ y }}\Delta t={\frac {T}{N}}}
  • ColocarY0=incógnita0;{\displaystyle Y_{0}=x_{0};}
  • Definir recursivamenteYnorte{\displaystyle Y_{n}}para1nortenorte{\displaystyle 1\leq n\leq N}por:Ynorte+1=Ynorte+a(Ynorte)Δt+b(Ynorte)ΔWnorte+12b(Ynorte)b(Ynorte)((ΔWnorte)2Δt){\displaystyle Y_{n+1}=Y_{n}+a(Y_{n})\Delta t+b(Y_{n})\Delta W_{n}+{\frac {1}{2}}b(Y_{n})b'(Y_{n})\left((\Delta W_{n})^{2}-\Delta t\right)}dóndeb{\displaystyle b'}denota la derivada deb(incógnita){\displaystyle b(x)}con respecto aincógnita{\displaystyle x}y:ΔWnorte=Wτnorte+1Wτnorte{\displaystyle \Delta W_{n}=W_{\tau _{n+1}}-W_{\tau _{n}}}son variables aleatorias normales independientes e idénticamente distribuidas con valor esperado cero y varianzaΔt{\displaystyle \Delta t}. EntoncesYnorte{\displaystyle Y_{n}}se aproximaráincógnitaτnorte{\displaystyle X_{\tau _{n}}}para0nortenorte{\displaystyle 0\leq n\leq N}y en aumentonorte{\displaystyle N}dará como resultado una mejor aproximación.

Tenga en cuenta que cuandob(Ynorte)=0{\displaystyle b'(Y_{n})=0}(es decir, el término de difusión no depende deincógnitat{\displaystyle X_{t}}) este método es equivalente al método de Euler-Maruyama .

El esquema de Milstein tiene tanto orden de convergencia débil como fuerte.Δt{\displaystyle \Delta t}que es superior al método de Euler-Maruyama , que a su vez tiene el mismo orden de convergencia débil.Δt{\displaystyle \Delta t}pero orden de convergencia fuerte inferiorΔt{\displaystyle {\sqrt {\Delta t}}}. [ 3 ]

Derivación intuitiva

Para esta derivación, solo consideraremos el movimiento browniano geométrico (GBM), cuya ecuación diferencial estocástica viene dada por: dincógnitat=μincógnitadt+σincógnitadWt{\displaystyle \mathrm {d} X_{t}=\mu X\mathrm {d} t+\sigma XdW_{t}} con constantes realesμ{\displaystyle \mu }yσ{\displaystyle \sigma }Utilizando el lema de Itō obtenemos: dlnincógnitat=(μ12σ2)dt+σdWt{\displaystyle \mathrm {d} \ln X_{t}=\left(\mu -{\frac {1}{2}}\sigma ^{2}\right)\mathrm {d} t+\sigma \mathrm {d} W_{t}}

Por lo tanto, la solución al SDE de GBM es: incógnitat+Δt=incógnitatexp{tt+Δt(μ12σ2)dt+tt+ΔtσdW}incógnitat(1+μΔt12σ2Δt+σΔWt+12σ2(ΔWt)2)=incógnitat+a(incógnitat)Δt+b(incógnitat)ΔWt+12b(incógnitat)b(incógnitat)((ΔWt)2Δt){\displaystyle {\begin{aligned}X_{t+\Delta t}&=X_{t}\exp \left\{\int _{t}^{t+\Delta t}\left(\mu -{\frac {1}{2}}\sigma ^{2}\right)\mathrm {d} t+\int _{t}^{t+\Delta t}\sigma \mathrm {d} W_{u}\right\}\\&\approx X_{t}\left(1+\mu \Delta t-{\frac {1}{2}}\sigma ^{2}\Delta t+\sigma \Delta W_{t}+{\frac {1}{2}}\sigma ^{2}(\Delta W_{t})^{2}\right)\\&=X_{t}+a(X_{t})\Delta t+b(X_{t})\Delta W_{t}+{\frac {1}{2}}b(X_{t})b'(X_{t})((\Delta W_{t})^{2}-\Delta t)\end{aligned}}} dónde a(incógnita)=μincógnita, b(incógnita)=σincógnita{\displaystyle a(x)=\mu x,~b(x)=\sigma x}

La solución numérica se presenta en el gráfico para tres trayectorias diferentes. [ 4 ]

Solución numérica para la ecuación diferencial estocástica donde la deriva es el doble del coeficiente de difusión.

Implementación informática

El siguiente código Python implementa el método de Milstein y lo utiliza para resolver la EDE que describe el movimiento browniano geométrico definido por {dYt=μYdt+σYdWtY0=Yinicial{\displaystyle {\begin{cases}dY_{t}=\mu Y\,{\mathrm {d} }t+\sigma Y\,{\mathrm {d} }W_{t}\\Y_{0}=Y_{\text{init}}\end{cases}}}

# -*- coding: utf-8 -*-# Método Milsteinimport numpy as npimport matplotlib.pyplot as pltClase Modelo :"""Constantes del modelo estocástico."""mu = 3sigma = 1definición dW ( dt ):"Distribución normal de muestra aleatoria."return np.random.normal ( loc = 0.0 , scale = np.sqrt ( dt ) )def ejecutar_simulación ():""" Devuelve el resultado de una simulación completa."""# Un segundo y mil puntos de la cuadrículaT_INIT = 0T_END = 1N = 1000 # Calcular 1000 puntos de la cuadrículaDT = flotante ( T_END - T_INIT ) / NTS = np.arange ( T_INIT , T_END + DT , DT )Y_INIT = 1# Vectores para rellenarys = np.zeros ( N + 1 )ys [ 0 ] = Y_INICIOpara i en rango ( 1 , TS . tamaño ):t = ( i - 1 ) * DTy = ys [ i - 1 ]dw = dW ( DT )# Resumir los términos como en el método Milsteinys [ i ] = y + \ Modelo . mu * y * DT + \ Modelo . sigma * y * dw + \ ( Modelo . sigma ** 2 / 2 ) * y * ( dw ** 2 - DT )devolver TS , ysdef plot_simulations ( num_sims : int ):"""Representa varias simulaciones en una sola imagen."""para _ en rango ( num_sims ):plt.plot ( * run_simulation ( ) )plt.xlabel ( "tiempo (s ) " )plt.ylabel ( " y " )plt.grid ( )plt.show ( )Si __name__ == "__main__" :NUM_SIMS = 2trazar_simulaciones ( NUM_SIMS )

Véase también

Referencias

  1. ^ Mil'shtein, GN (1974). "Приближенное интегрирование стохастических дифференциальных уравнений" [ Integración aproximada de ecuaciones diferenciales estocásticas ] . Teoriya Veroyatnostei i ee Primeneniya (en ruso). 19 (3): 583–588 .
  2. Mil'shtein, GN (1975). "Integración aproximada de ecuaciones diferenciales estocásticas". Theory of Probability & Its Applications . 19 (3): 557– 000. doi : 10.1137/1119062 .
  3. Mackevičius, V. (2011). Introducción al análisis estocástico . Wiley. ISBN 978-1-84821-311-1.
  4. Picchini, Umberto. "SDE Toolbox: simulación y estimación de ecuaciones diferenciales estocásticas con Matlab" .

Lecturas adicionales

  • Kloeden, PE ; Platen, E. (1999). Solución numérica de ecuaciones diferenciales estocásticas . Berlín: Springer. ISBN 3-540-54062-8.