Skip to contents

Set up a nested sampling run by specifying a likelihood- restricted prior sampling method.

unif_cube() is a region-based sampler, where points are generated by sampling uniformly within the unit hypercube, returning a point when a sampled point exceeds from the prior under a likelihood constraint is to sample randomly from the prior and reject the point if the likelihood constraint is not fulfilled. This method is horribly inefficient in even moderately-large dimensions, but is useful for testing and debugging.

rwmh_cube is a MCMC-based sampler, where points are generated by taking random steps within the unit hypercube. The step size is evolve over a walk to target an acceptance rate of 0.5.

Usage

unif_cube(max_loop = NULL)

rwmh_cube(steps = 25, target_acceptance = 0.5, epsilon = 1)

Arguments

max_loop

The maximum number of calls to the likelihood function a sampler will make when trying to propose a new point given one likelihood constraint. Once exceeded, ernest will abort and report an error to the user. If non-null, this overwrites the ernest.max_loop global option (default 1e6L).

steps

Number of steps to take when generating a proposal point.

target_acceptance

The targeted acceptance ratio from sampling. epsilon will be adjusted throughout the run to target this ratio.

epsilon

Step-size parameter, adjusted over the course of a run.

Value

an ErnestLRPS object that can be passed to nested_sampling()

Details

Nested sampling relies on generating independent live points from a prior space that all satisfy some minimum likelihood value or restriction. There are many ways to perform this likelihood restricted prior sampling, but ernest currently offers two foundational examples: A simple region-based sampler in uniform_cube, and a local-step algorithm in rwmh_cube.