NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo...

12

Click here to load reader

Transcript of NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo...

Page 1: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

Simulación Numérica de Modelos Estocásticos

Programa de Doctorado

Biometría y Estadística

NOTAS SOBRE LA GENERACIÓN DE PROCESOS ESTOCÁSTICOS

Jordi Ocaña Rebull

Marzo de 2001

Page 2: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

2

Contenido

1. Procesos de Poisson 3

1.1. Procesos de Poisson homogéneos 3

1.2. Procesos de Poisson no homogéneos 3

1.3. Procesos de Poisson bidimensionales 7

2. Generación de procesos gausianos 9

2.1. Método de Cholesky 9

2.2. Método condicional 9

2.3. Método de Fourier 11

2.4. Comparación de los métodos para generar procesos gausianos 12

Bibliografía 12

Page 3: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

3

GENERACIÓN DE PROCESOS ESTOCÁSTICOS

1. Procesos de Poisson

La generación de un proceso de Poisson o, más en general, un proceso de “vida”

y/o “muerte” es asimilable a la generación del correspondiente proceso de los

tiempos de “llegada”, T1, T2,….

1.1. Procesos de Poisson homogéneos

Como es bien conocido, un proceso de Poisson homogéneo, con tasa o frecuencia

de “llegadas” λ>0, constante, se puede simular a partir de la generación de una

serie de “tiempos” Ti= Ti-1+(logRi)/λ a partir de incrementos de tiempo iid con

distribución exponencial de parámetro λ, con densidad f(t)=λexp(−λt) para

t>0. Esto es equivalente a que el proceso complementario de “contajes” de

llegadas en un tiempo t, que indicaremos indistintamente Nt ó N(t), tenga

distribución de Poisson de parámetro λt.

1.2. Procesos de Poisson no homogéneos

A menudo son más realistas los modelos basados en procesos de Poisson no

homogéneos, en los que la tasa de llegadas es una función del parámetro de

tiempo, λ(t). Esta suposición se puede introducir estableciendo que la

probabilidad de una o más llegadas en un tiempo δt a partir de t, es

aproximadamente proporcional a δt,

{ } ( ) ( )

{ } ( )

0

1

tt t

tt t

P N N t t o t

P N N o t

δ

δ

λ δ δ

δ+

+

− > = +

− > =

En este caso resulta que, para un tiempo prefijado t0, ( ) ( )( )0 0N t t∆∼ P , con

( ) ( )0

tt u duλ∆ = ∫ .

Los tres métodos más conocidos de generación de un proceso de Poisson no

homogéneo de este tipo se basan en la modificación de la escala de tiempo, en el

condicionamiento y en una adaptación del método de rechazo.

Page 4: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

4

1.2.1. Cambio de la escala de tiempo

Supongamos que T1, T2, … son los tiempos de llegada según un proceso de

Poisson no homogéneo. Si se realiza el siguiente cambio de escala de tiempo:

( ) ( )0

Tu du Tτ λ= = ∆∫ ,

el proceso asociado a los tiempos τ1, τ2, … es un proceso de Poisson homogéneo

con tasa de llegadas 1. Inversamente, el proceso asociado a los tiempos

( ) ( )1 11 1 2 2, ,T Tτ τ− −= ∆ = ∆ … (1.1)

donde τ1, τ2, … corresponden a los tiempos asociados a un proceso homogéneo

de tasa 1, es un proceso de Poisson no homogéneo de tasa λ(t). Las

transformaciones (1.1) sugieren un método obvio de generación, cuya

aplicabilidad depende fuertemente de la forma de λ (y por lo tanto de ∆ etc.).

Se detendrá la generación del proceso homogéneo cuando deje de cumplirse la

condición ( )0i tτ ≤ ∆ .

Como ejemplo de este método supongamos que λ(t) = exp(α + βt). En este

caso,

( ) ( )0

1T

u teT e du eα

α β βτβ

+= ∆ = = −∫

y, por lo tanto,

( ) ( )1 1 log 1T e ατ βτβ

− −= ∆ = + .

1.2.2. Métodos basados en el condicionamiento

Condicionado a N(t0)=n, los tiempos de llegada corresponden a los valores del

estadístico ordinal T(1), T(2),…, T(n), generados a partir de la distribución

( )( )

( )

0 si 0

si 0

1 si .

u

uF u u tt

u t

<∆= ≤ ≤∆ >

(1.2)

Una vez generado el valor n a partir de una distribución de Poisson de

parámetro ∆(t0), el problema reside en cómo generar valores ordenados a partir

de la distribución (1.2). Una posibilidad está en el método de inversión:

Page 5: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

5

supongamos que hemos conseguido generar el estadístico ordinal uniforme,

U(0,1), ( ) ( ) ( )( )1 2

, , , nR R R… . Dado que

( )( )( ) ( )

i

i

TR

t

∆=

tenemos que

( )

( )( )( )1

i iT t R−= ∆ ∆ . (1.3)

Una forma eficiente de generar el estadístico ordinal uniforme (ascendente) se

basa en el método condicional. En efecto, la distribución marginal de R(1)

permite indicar:

( ) ( ){ } ( )

( )( ) ( )( ) ( )

1 1 1 11

1 1 11 1

1

1 , 0,1 ,

n

n

H r P R r r

R H R R R

= > = −

= = − ∼ U

de manera que

( ) ( ) 11

1 1 111 .nR H R R−= = − (1.4)

Por otra parte, cualquier distribución condicionada R(j+1)|R(j)=rj,…,R(1)=r1 es

equivalente a R(j+1)|R(j)=rj. Por lo tanto:

( ) ( ){ }

( ) ( )( ) ( )

( )

( )

11 1 11

11 1

1

1

1, 0,1 ,

1

n j

jj jj j jj

j

n j

jj j jj j j

j

rH r P R r R r

r

RR H R R R R

R

++ + ++

++ +

− = > = = − − = = = −

∼ U

de donde

( ) ( )( ) ( )

1

111 1 .n j

jj jR R R−

++= − − (1.5)

El método consistente en generar n variables aleatorias Ri iid U(0,1) y

ordenarlas es desaconsejable, por razones de eficiencia. Si en (1.3) no es posible

invertir ∆, hay que recurrir al procedimiento, muy poco eficiente, de generar los

n tiempos Ti y ordenarlos.

Page 6: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

6

1.2.3. Rechazo a partir de un proceso homogéneo

Supongamos que, a partir del instante s (seguramente el último punto temporal

al que ha llegado la simulación), se pretende generar el siguiente incremento de

tiempo, X, de manera que el proceso de simulación avanzará hasta el instante

s+X. Supongamos que existe y es finito el valor:

( ){ }0

* supss t t

tλ λ≤ ≤

= . (1.6)

Se puede demostrar que el siguiente algoritmo genera los momentos de llegada,

T1, T2,…, Ti , Ti-1, …, de un proceso de Poisson no homogéneo de tasa λ(t):

T = Ti-1

repetir:

1. Evaluar *Tλ según la expresión (1.6),

2. generar ( )0,1R ∼ U y un incremento de tiempo exponencial ( )*sX λ∼ ε , e

3. incrementar el tiempo T = T + X

hasta que se verifique que ( )*sR Tλ λ≤ ;

Ti = T.

Se continuarán generando valores de tiempo mientras Ti ≤ t0.

A costa de aumentar la probabilidad de rechazo, el punto 1 del algoritmo se

puede suprimir tomando como tasa constante del proceso homogéneo el valor

( ){ }0

*

0sup

t ttλ λ

≤ ≤= o (peor todavía) cualquier valor λ’≥λ*. El algoritmo también

es válido si en lugar de un proceso homogéneo se emplea un proceso no

homogéneo de tasa ( )* tλ tal que ( ) ( )* t tλ λ≥ para todo t. Si ( )* tλ es

cercana a λ(t) y el proceso asociado es fácil de generar, el algoritmo puede

resultar más eficiente que el basado en un proceso homogéneo.

Page 7: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

7

i−1

i Di−1

Di

1.3. Procesos de Poisson bidimensionales

Los procesos de Poisson con parámetro bidimensional (asimilable en general a

las coordenadas en una superficie) son una generalización natural de los procesos

de Poisson homogéneos. En ocasiones se desea

simular la distribución de puntos en el

espacio (organismos, yacimientos,

etc.), de manera que para una

región de superficie s (y con

cualquier forma) el número de

puntos Ns tenga distribución

de Poisson, P(λs). En estas

condiciones, siempre respecto

de un punto de partida o

centro arbitrario, consideremos

un punto, i−1, a una distancia

Di−1 de este centro y la corona

circular hasta el punto más próximo, a una

distancia Di del centro. Fijémonos en que la posición de cada punto puede ser

descrita mediante la distancia, o radio, Di, y un ángulo, θι. La distribución de la

superficie de esta corona circular, ( )2 21i i iS D Dπ −= − , es exponencial de

parámetro λ:

{ } { }"Ningún punto en la superficie " 1 siP S s P s e λ−≤ = = −

de manera que

( ) ( )2 21

1 log , 0,1i iR D D Rπλ −− = − ∼ U

de donde

( )

2 11

2 1 2

log

2 , , 0,1 , independientes,

ii i

i i i i

RD D

R R Rπλ

θ π−= −

= ∼ U (1.7)

sugiere un método de generación de las sucesivas coordenadas polares de los

puntos ( ) ( )1 1 2 2, , , ,D Dθ θ … a partir de un centro inicial cualquiera.

Para una región A, de forma irregular, el siguiente algoritmo “de rechazo”

generaría de forma apropiada los puntos:

Page 8: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

8

a Escójase un punto dentro de A (por ejemplo central). Se considerará como

el origen de coordenadas, con Di=0 para i=0 y no formará parte del proceso

generado.

b Repetir:

b.1 i=i+1,

b.2 determinación de las coordenadas polares del punto i según (1.7),

b.3 si el punto (Di,θi) pertenece a A, queda aceptado como punto generado (y

se almacena como parte del resultado final del algoritmo)

hasta que ( )iA B D⊂ , donde B(Di) indica la bola de radio Di.

El método anterior es independiente de la forma de la región a la cual deben

pertenecer los puntos. Existen métodos más eficientes para regiones de formas

específicas. Por ejemplo, para una región rectangular de lados de longitud x0,y0,

tenemos que s = x0y0 y Ns ∼ P(x0y0). En este caso suele ser preferible el

siguiente algoritmo:

Genérese un valor de Ns. Sea este valor n. Condicionado a Ns = n, las

coordenadas euclídeas de los puntos a generar, (X1,Y1),…,(Xn,Yn) corresponden

a los estadísticos uniformes ordinales

( ) ( ) ( )

( ) ( ) ( )1 0

1 0

, , para una 0,

, , para una 0, ,

n

n

X X x

Y Y y

U

U

que se pueden generar de acuerdo con el algoritmo descrito en el punto 1.2.2.

Alternativamente, se puede emplear el hecho de que los procesos proyectados

sobre cada eje son independientes y corresponden a procesos de Poisson

homogéneos de tasa λ.

Para una región circular de radio d0 la última idea anterior no es directamente

aplicable. Las proyecciones sobre los ejes x e y son procesos no homogéneos.

Considerando coordenadas polares, la proyección sobre el eje de los radios (que

antes hemos denominado D) es un proceso de Poisson no homogéneo, de tasa

integrada, para d ≤ d0,

( ) ( ) 20

.d

d u du dλ π∆ = =∫

Page 9: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

9

Por lo tanto, para generar los radios Di serían aplicables los algoritmos descritos

en 1.2. El algoritmo condicional 1.2.2 es especialmente adecuado puesto que

para este proceso estocástico la forma de la distribución condicionada (1.2) es

( )( )

2

00 0

, 0 .d d d dd d

∆ = ≤ ≤ ∆

Los radios generados se tendrían que complementar con componentes angulares

generadas como ( )2 , 0,1 .i i iR Rθ π= ∼ U

2. Generación de procesos gausianos

Uno de los procesos estocásticos con espacio de estados y parámetro continuo

más importantes en las aplicaciones es el proceso {Xt}, donde para todo n y

todo t1,…,tn, ( ) ( )1, , ,

n n nt tX X N=X … ∼ µ Σ . Aunque los instantes t1,…,tn para

los que se desea generar una realización del proceso pueden corresponder a

cualquier valor positivo, a menudo interesa el caso en el que son valores

equiespaciados. Sin pérdida de generalidad se puede suponer que se pretende

generar el caso µn = 0.

Aparentemente, el problema sigue siendo el de generar vectores con distribución

normal multivariante. Recordemos que los dos métodos principales son:

2.1. Método de Cholesky

1. Obtengamos la matriz L, triangular inferior, tal que Σn = L·L’,

2. generemos Z = (Z1,…,Zn) iid N(0,1),

3. finalmente, X = L·Z.

2.2. Método condicional

Para la distribución normal multivariante, todas las distribuciones condicionales

son también normales. En concreto, la matriz de varianzas-covarianzas de

( ) ( )1 11 1, , , ,

n nt t tn nX X X N++ +=X 0… ∼ Σ se puede expresar como:

11

1 11

'n n

nn

+

=

Σ ΣΣ

Σ Σ.

Page 10: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

10

Si ya se ha generado hasta el instante tn, es decir, se ha obtenido una realización

( )1, ,

nn t tx x=x … de ( ),n nNX 0∼ Σ , se tiene la siguiente distribución

condicionada

( )1

1 11 11 1 1, .

n

'n n n n nt n n nX N

+

− −= −X x x∼ Σ Σ Σ Σ Σ Σ

Los dos métodos son equivalentes en el sentido de que producirían la misma

secuencia de valores a partir de la misma secuencia de valores independientes

generados según una N(0,1). En principio el método de Cholesky es más

eficiente para n fijo, mientras que el método condicional permitiría generar una

secuencia de longitud indefinida. En realidad el problema de la generación de

procesos gausianos no coincide exactamente con el de generar vectores normales,

como mínimo por dos razones:

a) n puede ser muy grande; no solamente la velocidad puede ser un factor

limitante, también puede serlo la memoria, al tener que almacenar y

manipular matrices de varianzas-covarianzas enormes,

b) sería deseable poder continuar fácilmente una serie de longitud n

previamente generada.

En principio ninguno de los dos métodos anteriores admite muchas mejoras.

Pero aquí es donde puede ser decisiva la estructura precisa de la matriz de

varianzas-covarianzas: en general no interesa simular un proceso con matriz

cualquiera sino con una estructura concreta. El caso más interesante es el de un

proceso estacionario, con matriz de correlaciones con estructura de Toeplitz:

1 2 3 1

21 1 2

2 1 1

1

1

1

n

n

ρ ρ ρ ρρρ ρ ρ

ρ ρ ρ

………

especificada totalmente por el vector rn = (ρ1, ρ2,…,ρn). En este caso el algoritmo

condicional se puede mejorar bastante puesto que:

( ) ( )

( )1

1var 1

n

n

n n nt

n n nt

E X

X

+

+

= = −

′= = +

X x Wy x

X x r y

donde

Page 11: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

11

0 0 1

0 1 0

1 0 0n n×

=

W

e 1n n−=−y rΣ son las soluciones de las ecuaciones de Yule-Walker, n n= −y rΣ ,

obtenidas mediante el algoritmo de Durbin. Este algoritmo de generación no es

muy eficiente pero tiene pocos requerimientos de memoria. A costa de un

consumo mucho mayor de memoria, se convierte en un algoritmo rápido (en

cuanto a tiempos marginales de generación, es decir, para generar los valores

propiamente, sin contar el tiempo de inicialización) si se almacena previamente

una matriz con todas las soluciones de las ecuaciones de Yule-Walker:

21

31 32

41 42 43

yy yy y y

….

2.3. Método de Fourier

Este método requiere un tiempo de inicialización bastante grande pero es muy

rápido marginalmente. Si expandimos el vector rn en el vector hN definido como

( )0 1 1 2 2 2 1 2 111, , , , , , , ,n n nN Nh h h hρ ρ ρ ρ ρ ρ− − − −= = = = =h … …

N = 2(n-1), y calculamos la transformada de Fourier g de este vector

( )1

0

2exp , 0, , 1N

jkj

ikjg h k NNπ

== = −∑ …

(o, preferiblemente la transformada de Fourier rápida, FFT, que requiere que N

sea una potencia de 2, N = 2l), podremos almacenar finalmente el vector

= gφ de longitud N.

Una vez superada la fase anterior de inicialización, el proceso de generación de

la realización de tamaño n del proceso consiste en los siguientes pasos:

a) Generamos un vector ZN consistente en N valores iid N(0,1). La

transformada de Fourier discreta del vector ZN proporcionará el vector eN.

b) Obtenemos una realización del proceso normal estacionario mediante

Page 12: NOTAS SOBRE LA GENERACIÓN DE PROCESOS … DE PRO… · ... /λ a partir de incrementos de tiempo iid con distribución exponencial de parámetro λ, ... Los procesos de Poisson con

12

( )1

0

1 2exp , 0 1N

j k kk

ijkX e j nN N

πφ−

== ≤ ≤ −∑ .

2.4. Comparación de los métodos para generar procesos gausianos

Los tres métodos expuestos en los puntos anteriores tienen sus ventajas y sus

inconvenientes. En general se puede decir que cada investigador puede elegir

entre ellos en función de sus necesidades y de su valoración de tres

características: generalidad, eficiencia y estabilidad numérica. Si “–“ significa la

peor valoración, “x” una valoración intermedia y “+” la mejor, los tres métodos

estarían situados en la siguiente escala:

Método generalidad eficiencia estabilidad

Cholesky + − +

Condicional + algoritmo de Durbin x x x

Fourier − + −

Bibliografía

La sección dedicada a la generación de procesos de Poisson está basada,

principalmente, en:

Dagpunar, J. (1988). Principles of Random Variate Generation. Clarendon

Press.

Bratley, P., Fox, B.L. and Schrage, L.E. (1983). A Guide to Simulation.

Springer-Verlag.

La sección dedicada a la generación de procesos gausianos está basada en la

monografía:

Hauser, M.A., Hörmann, W. The Generation of Stationary Gaussian Time

Series. Institut f. Statistik, Wien, Austria.