-
Notifications
You must be signed in to change notification settings - Fork 81
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
BIPOP should restart from re-sampled x0 #89
Comments
…p the best point from history, all for testing #89
FTR, comparison of three resampling schemes for x0 on
These results seem to suggest that we may want to provide a resampling (1) http://juban.free.fr/stuff/libcmaes/bipop_sampl_compar.pdf |
My understanding is that CMA's first step upon every restart already samples from a Gaussian bump around x0 of standard deviation 1 and scaled by the initial value of sigma. So it could make sense to either re-sample x0 itself from a distribution to be defined (or user-defined, though this seems error-prone), or to modify the initial standard deviation so that the initial population possibly spreads to a larger area. |
I agree, in contrast to the input to CMA-ES, which is an initial solution and a standard deviation, the standard input to BIPOP-CMA-ES should rather be a domain. (A distribution for X0 is not quite sufficient, because we need to be able to infer the initial standard deviation). Another common approach is to define a standard domain, where the user must transform the presented problem to be defined in. In BBOB our standard domain is [-5, 5]^dim, I have also regularly seen the use of [0, 1]^dim as standard domain. |
Yes, so the good news is that this is actually already in the lib as it does support setting [x0min,x0max] as the initial domain of x0. An initial candidate is then sampled uniformly from this domain upon (re-)creation of the initial (empty) CMASolution object. I kind of forgot about that, and from looking at the code, both IPOP and BIPOP are already taking advantage of this resampling if x0min and x0max are supplied. All I believe I have to do then is to update the documentation so the user is informed that BIPOP would yield potentially better results by giving an initial domain. |
Added a paragraph to https://github.com/beniz/libcmaes/wiki/Practical-hints |
I missed this in the original paper. This poses the question of how to specify a distribution on the initial x0 while not asking too much from the user.
The following points will be assessed before proceedings with a solution:
Benchmarking should especially check against the multi-modal functions of BBOB.
The text was updated successfully, but these errors were encountered: