9 votos

Simulación de un proceso Gaussiano (Ornstein Uhlenbeck) con una función exponencial que se decae de la covarianza

Estoy tratando de generar muchos proyectos (es decir, de realizaciones) de un proceso Gaussiano $e_i(t)$, $1\leq t \leq T$ con media 0 y covariación función $\gamma(s,t)=\exp(-|t-s|)$.

¿Hay una manera eficiente de hacer esto que no involucran la raíz cuadrada de una matriz de covarianza $T \times T$ de computación? ¿Alternativamente puede alguien recomendar un R paquete para hacer esto?

13voto

giulio Puntos 166

Sí. No es muy eficiente (tiempo lineal) algoritmo, y la intuición de que viene directamente de la uniformidad de la muestra de casos.

Supongamos que tenemos una partición de $[0,T]$ tal que $0=t_0 < t_1 < t_2 < \cdots < t_n = T$.

Muestreo uniforme caso

En este caso tenemos a $t_i = i \Delta$ donde $\Delta = T/n$. Deje $X_i := X(t_i)$ denotar el valor de la discreción muestreados proceso en el tiempo $t_i$.

Es fácil ver que el $X_i$ forma de un AR(1) con el proceso de correlación $\rho = \exp(-\Delta)$. Por lo tanto, podemos generar un recorrido de la muestra se $\{X_t\}$ para la partición de la siguiente manera $$ X_{i+1} = \rho X_i + \sqrt{1-\rho^2} Z_{i+1} \>, $$ donde $Z_i$ son iid $\mathcal N(0,1)$$X_0 = Z_0$.

Caso General

Podríamos entonces imaginar que podría ser posible hacer esto por un general de la partición. En particular, vamos a $\Delta_i = t_{i+1} - t_i$$\rho_i = \exp(-\Delta_i)$. Tenemos que $$ \gamma(t_i,t_{i+1}) = \rho_i \>, $$ y así, podríamos suponer que $$ X_{i+1} = \rho_i X_i + \sqrt{1-\rho_i^2} Z_{i+1} \>. $$

De hecho, $\mathbb E X_{i+1} X_i = \rho_i$, por lo que por lo menos tienen la correlación con el vecino término correcto.

El resultado se sigue ahora por telescópica a través de la torre de propiedades de la esperanza condicional. Es decir, $$ \newcommand{\e}{\mathbb E} \e X_i X_{i-\ell} = \e( \e(X_i X_{i-\ell} \mid X_{i-1} )) = \rho_{i-1} \mathbb E X_{i-1} X_{i-\ell} = \cdots = \prod_{k=1}^\ell \rho_{i-k} \>, $$ y el producto de los telescopios de la siguiente manera $$ \prod_{k=1}^\ell \rho_{i-k} = \exp\Big(-\sum_{k=1}^\ell \Delta_{i-k}\Big) = \exp(t_{i-\ell} - t_i) = \gamma(t_{i-\ell},t_i) \>. $$

Esto demuestra el resultado. Por lo tanto el proceso pueden ser generados en una partición arbitraria de una secuencia de iid $\mathcal N(0,1)$ variables aleatorias en $O(n)$ tiempo donde $n$ es el tamaño de la partición.

NB: Esta es una exacta técnica de muestreo en la que se ofrece una muestra de la versión de el proceso deseado con la exacta y correcta finito-dimensional de las distribuciones. Esto es en contraste a Euler (y otros) esquemas de discretización para obtener más general de la SDEs, que incurrir en un sesgo debido a la aproximación a través de la discretización.

1voto

Steven Puntos 306

Calcular la matriz de covarianza descompuesto por la descomposición de Cholesky incompleta o cualquier otra técnica de descomposición de la matriz. Descomposición de la matriz debe ser TxM, donde M es sólo una fracción de T.

http://en.wikipedia.org/wiki/Incomplete_Cholesky_factorization

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X