joshspeagle / dynesty

Dynamic Nested Sampling package for computing Bayesian posteriors and evidences
https://dynesty.readthedocs.io/
MIT License
346 stars 76 forks source link

Boundary updates #434

Open segasai opened 1 year ago

segasai commented 1 year ago

In #428 I've refactored the boundary update rules, but it's not 100% clear if everything there is optimal.

First, the boundary updates is something that's mildly important for non-uniform sampling, but critically important for uniform sampling.

Right now the boundary is updated ( https://github.com/joshspeagle/dynesty/blob/ab78939b8e5df809121c320f38bec338825cd661/py/dynesty/sampler.py#L294 )

Also the bound update is relevant when starting a new batch. There, a new sampler is created and it the bound is either used from a base run, or the run will start without the bound if logl< logl_first_bound_update. That's where things can be potentially inefficient as in the latter case the whole nlive set of pts has to be generated from unit cube.

Also it is still not clear to me if