Skip to content
ejackson edited this page Apr 25, 2013 · 10 revisions

We should look at HANSEI, Church, Prism, ProbLog, CLP(BN) and all of the other interesting approaches to probabilistic logic programming.

Markov Chain Monte Carlo & Gibbs Sampling seem to be the hot topic these days. It's interesting that some promising work has been done executing this stuff on GPUs.

Existing Projects in the space

Church

Infer.net

Infer.net is Microsoft's probabilistic programming language in F#

  • The webpage links to many good resources on the area.

Stan

New project based around Hamiltonian Monte Carlo, which has advantages in situations with correlated variables.

Bugs and JAGS

A probabilistic programming language, based on Gibbs Sampling, that has been in use for a long time is BUGS. A more recent implementation is JAGS, which largely supercedes BUGS. The beauty of these are that you can actually get them up and running in R without much effort.

  • The rjags R package lets you quickly do some probabilistic programming. In particular, you can actually run the examples in the blog post below.
  • A good blog post on the sort of model BUGS/JAGS can represent.
  • The jags repo
  • The jags user manual is easy to miss!