Dentro de las 3 variantes de BUGS (openBUGS/winBUGS, jags) jags parece ser la más prometedora en cuanto al desarrollo de características futuras, y openBUGS/winBUGS parecen ser proyectos muertos. Sin embargo, jags aún carece de algunas de las características presentes en openBUGS/winBUGS (también mira aquí ). Por otro lado, jags ha eliminado algunas limitaciones presentes en WinBUGS, por ejemplo
x ~ dnorm(0, tau)
tau ~ dgamma(1.0E-3, 1.0E-3) # in WinBUGS, you cannot do this, 1.0E-3 is too small
# for dgamma (use e.g. dgamma(0.01, 0.01))
La buena noticia es que con la mayoría de los modelos, puedes ejecutarlos en las 3 herramientas con apenas cambios mínimos, por lo que puedes cambiar de herramienta más adelante sin muchos problemas (eso es lo que yo hago).
Sin embargo, por algunas razones (por ejemplo, la falta de paralelismo y la naturaleza del intérprete) No es cierto que estas variantes de BUGS sean la forma más rápida de hacer un análisis bayesiano. De hecho, es todo lo contrario. Los proyectos BUGS son buenos para probar y desarrollar modelos complicados en conjuntos de datos pequeños . Una vez que se tiene el modelo desarrollado, y se necesita ejecutarlo repetidamente en grandes conjuntos de datos, es más eficiente utilizar diferentes herramientas.
Por ejemplo, el CppBugs / rcpp se dice que es 5-10 veces más rápido que las variantes de BUGS. El principio es que básicamente compila su modelo en un programa C++, que se ejecuta mucho más rápido. También puedes echar un vistazo a Blog de Dirk Eddelbuettel para Rcpp test - parece brutalmente rápido. También puedes jugar con el paralelismo.
También puedes hacer cálculos paralelos en WinBUGS usando bugsparallel .