Home > Research > Universal Markov chain Sampler

Umacs: Universal Markov chain Sampler

Umacs (Universal Markov chain Sampler) attempts to make writing Markov chain samplers easier with R, and consequently attempts to make the life of statisticians everywhere easier.

Umacs is written in S4-style object-oriented R. (As an end-user, you don't have to care.) The objective is not to make the fastest possible sampler (which is a very admirable objective), but a general, user-expandable framework that is entirely written in R so that users may easily write their (possibly optimized) modules and let R do the bookkeeping and other stuff that is not speed-critical.

How Umacs works

You only supply the functions and data that are relevant to your problem, and leave the rest to Umacs. The program will return the simulations obtained from running the sampler. Umacs also computes convergence diagnostics (R-hat) automatically.

You can either write your own sampling function or give Umacs functions for Gibbs sampling or Metropolis sampling. The Metropolis sampler is optimized (in some sense), helping convergence. It is possible for users to add their own (object-oriented) sampling classes and integrate them to the Umacs framework. Your programs that access Umacs do not have to be modified.

Umacs does not have a modeling language (à la BUGS) but it is possible to write a model translator that returns functions that Umacs can use.

Draft of the paper


Mon Feb 27 14:02:21 2006

Download

Other related links