The Ensemble package implements in Julia various stochastic samplers based on the "stretch move" for ensembles of walkers described by Goodman & Weare (2010), and popularised in the emcee package from Foreman-Mackey, et al (2013).
In addition to a basic implementation of the Goodman & Weare MCMC
algorithm in the
EnsembleSampler module, this algorithm forms the
basis of a number of other stochastic sampling algorithms:
A nested sampling algorithm based around the stretch move from
Goodman & Weare in
A combination MCMC/Gibbs sampling method in
A parallel-tempered MCMC (PTMCMC) in
EnsemblePTSampler that automatically
tunes the chain temperature following an algorithm similar to Vousden, Farr,
A bare-bones implementation of the
kombine sampler described in Farr & Farr
EnesmbleKombine. This module is missing the automatic burnin
determination and the bells-and-whistles from the Python package described in
that paper, but is a fully-functional multi-modal KDE sampler.
Various support libraries for stochastic sampling with these packages:
Parameterizationsmodule. Most of these are taken from the Stan Users Manual.
logsumexpfunction in the
Ensemble module exports these various sub-modules as top-level identifiers.
8 months ago