Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

improve MC sampling algorithm #6

Closed
kunyuan opened this issue Nov 27, 2021 · 0 comments
Closed

improve MC sampling algorithm #6

kunyuan opened this issue Nov 27, 2021 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@kunyuan
Copy link
Member

kunyuan commented Nov 27, 2021

The following is the roadmap

  1. Allow two different types of mesh: a) adaptive mesh from the vegas algorithm, b) user-defined mesh
  2. keep track of a histogram for the mesh points.
  3. sample the histogram to propose the variable, so that the acceptance ratio is optimized.

Remark:

  1. As long as one uses a high-quality mesh, the histogram will be relatively flat. Therefore, one could sample the histogram with a naive MC algorithm (namely, sample the variable uniformly, then reject or accept accordingly to the distribution derived from the histogram).
  2. If the histogram is not so flat, the variable sampled from the histogram may be strongly self-correlated. Then the integral evaluation (expansive!) with the variables could be strongly self-correlated, too. To avoid this problem, one could sample the histogram before actual MC integration to learn the autocorrelation time Nt. Then one may choose to do one integral evaluation per Nt histogram samplings (the latter is extremely efficient anyway).
@kunyuan kunyuan added the enhancement New feature or request label Nov 27, 2021
@kunyuan kunyuan self-assigned this Jul 17, 2022
@kunyuan kunyuan closed this as completed Nov 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant