Skip to content
Implementations of single and multi-ellipsoid nested sampling
Branch: master
Clone or download

Latest commit

mileslucas Merge pull request #20 from TuringLang/compathelper/new_version/2020-…

CompatHelper: bump compat for "StatsBase" to "0.33"
Latest commit 081ab57 Mar 30, 2020


Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows update ci Mar 25, 2020
src tests pass Mar 26, 2020
.gitignore small sampler typos and set up example test again Dec 17, 2019
LICENSE Files generated by PkgTemplates Dec 9, 2019
Project.toml Update Mar 26, 2020


Build Status Coverage

Primary Author: Miles Lucas (@mileslucas)

This package was heavily influenced by nestle and NestedSampling.jl.


  • Single Ellipsoidal sampler
  • Multi Ellipsoidal sampler
  • AbstractMCMC interface
  • Turing Interface (probably within Turing)
  • Tests
  • Optimization

Control Flow

  • Get samples from unit cube
  • Transform from unit cube to prior space
  • evaluate log likelihood at each point
  • Find lowest likelihood point
  • update evidence and information
  • add worst object to samples
  • For the Single method
    • Calculate bounding ellipsoid in prior space enlarged by some factor
    • Choose point within ellipsoid until it has likelihood greater than previous lowest likelihood
  • For the Multi method
    • Calculate largest bounding ellipsoid in prior space
    • Find the endpoints of the major axis
    • do K-means clustering with K=2 centered on the endpoints of the major axis
    • Fit ellipsoids to each cluster
    • If the volume of both ellipsoids is less than half the parent's volume, recurse into each
    • Else, return the current parent ellipsoid
    • Then, sample within the group of ellipsoids until finding a point with greater likelihood than the previous lowest
  • The final N-nactive points just add the current active points to sample list (no longer fitting ellipsoids)
You can’t perform that action at this time.