Opened 15 years ago
Closed 15 years ago
#789 closed task (fixed)
Multiple-try Metropolis
Reported by: | Víctor de Buen Remiro | Owned by: | Víctor de Buen Remiro |
---|---|---|---|
Priority: | highest | Milestone: | Numerical methods |
Component: | Math | Version: | |
Severity: | blocker | Keywords: | |
Cc: |
Description (last modified by )
Habría que explorar las posibles ventajas del método MCMC descrito en http://en.wikipedia.org/wiki/Multiple-try_Metropolis
Es una generalización del Metropolis-hastings que consiste básicamente en que en cada simulación se mezclan muchos candidatos, que es lo rápido de calcular, para conseguir candidatos mejores y que el ratio de aceptación sea mayor y así hacer menos simulaciones.
Definición de las funciones usadas en la simulación de ensayo múltiple de Metropolis-Hastings
- : la función de densidad objetivo
- : la función de densidad del generador de candidatos que debe cumplir
- : una función simétrica no negativa, esto es,
- : la función de pesos
Algoritmo
- Sea el punto actual de la cadena de Markov
- Se toman muestras independientes
generadas con densidad
- Se selecciona aleatoriamente una de ellas de forma proporcional a sus pesos , a la que llamaremos
- Se genera el conjunto de referencia como muestras independientes
generadas con densidad y se toma
- Finalmente se acepta el candidato con probabilidad
Quizás habría que programarlo en C++ para que sea más eficiente, pero con una API centrada en efectuar una simulación aislada de un solo bloque, pasándole todos los argumentos necesarios cada vez, pues de esta manera es trivial enmarcarlo dentro de un proceso de simulación por bloques de MH o de Gibbs como BSR o cualquier otro posible. En esas tareas logísticas no es donde se gasta el tiempo de los simuladores y pueden estar perfectamente escritos en TOL como el propio BSR.
Change History (4)
comment:1 Changed 15 years ago by
comment:2 Changed 15 years ago by
Description: | modified (diff) |
---|
comment:3 Changed 15 years ago by
Description: | modified (diff) |
---|
En el ticket #890 se expone una especialización para una familia concreta de problemas: