close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 15 years ago

Last modified 14 years ago

#890 closed task

El método Multiple-try Metropolis de simulación de cadenas de Markov — at Initial Version

Reported by: Víctor de Buen Remiro Owned by: Víctor de Buen Remiro
Priority: highest Milestone: Numerical methods
Component: BSR Version: head
Severity: critical Keywords:
Cc:

Description

El método de simulación de cadenas de Markov Multiple-try Metropolis ofrece muchas posibilidades de aceleración de la convergencia cuando se tiene una forma rápida de evaluar la función de densidad conjunta.

Por ello podría ser muy útil su aplicación en el sistema BSR, especialmente para mejorar la eficiencia de la simulación del bloque ARMA o los bloques no lineales que actualmente se simulan escalarmente (con SLICE ó ARMS) con una gran sobrecarga de trabajo.

Concretamente, cuando se sabe que la función de densidad es unimodal, y se tiene una forma rápida de evaluar la pertenencia al dominio de un punto candidato arbitrario, es posible implementar una función de generación de candidatos independiente del punto de partida y multinormal, eventualmente truncada, que la aproxime. Para mayor eficiencia consideraremos incorrelada y más adelante nos ocuparemos de proponer el cálculo de sus parámetros

 Q\left(x,y\right) = Q'\left(y\right) \propto \exp\left(-\frac{1}{2}\overset{n}{\underset{i=1}{\sum}}\left(\frac{y_{i}-\mu_{i}}{\sigma_{i}}\right)^{2}\right)

Cuando el dominio es acotado, la función generadora de candidatos está truncada en una región cuya expresión algebraica no es conocida, y aunque lo fuera, sería muy costoso calcular su integral de forma exacta. Por ello se debe calcular de forma aproximada, y la forma más sencilla de hacerlo es generar  k' precandidatos hasta obtener  k que estén dentro del dominio y podamos llamar candidatos. La función de densidad generadora de candidatos se podría aproximar como sigue:

Q'\left(y\right)\propto \frac{k}{k'} \exp\left(-\frac{1}{2}\overset{n}{\underset{i=1}{\sum}}\left(\frac{y_{i}-\mu_{i}}{\sigma_{i}}\right)^{2}\right)

Tomando la función simétrica y positiva

 \lambda\left(x,y\right)=\frac{1}{\sqrt{Q'\left(y\right) Q'\left(x\right) }}

se obtiene la función de pesos

 w\left(x,y\right)=\pi\left(x\right)Q'\left(y\right)\lambda\left(x,y\right)=\pi\left(x\right)\sqrt{\frac{Q'\left(y\right)}{Q'\left(x\right)}}

que resulta ser independiente del factor  k/k' por lo que no tiene ninguna importancia si aproxima mejor o peor la integral de la densidad multinormal de precandidatos en el dominio. Esta es precisamente la razón por la que se toma una función de generación de candidatos independiente del punto de origen, en lugar de una simétrica que resulta más sencilla en el caso de dominio no acotado, pero que es inviable en el caso acotado cuando la moda se encuentra demasiado cerca de la frontera.

Para poder aplicar el método se comenzará tomando una media arbitraria  \mu interior al dominio que puede ser perfectamente el propio punto inicial de la cadena y desviaciones unitarias  \sigma_{i}=1 . Durante un número de iteraciones preliminares (burn-in) se irá desplazando la media al punto de mayor densidad objetivo de los  N candidatos evaluados por el camino y las desviaciones se aproximarán como

 \sigma_{i}^2=\frac{1}{N} \overset{N}{\underset{j=1}{\sum}}\left(y_{j,i}-\mu_{i} \right)^2 \pi \left(y_{j,i}\right)

Durante la fase de simulación propiamente dicha se podría estudiar la revisión de estos parámetros si se observa un aumento excesivo de los rechazos.

Change History (0)

Note: See TracTickets for help on using tickets.