Closed Solosneros closed 3 years ago
Splitting warmup into two methods, one for the check of the conditions and the other one for the setup when warmup ending has been detected. Furthermore add booleans for the conditions: "condition2 is no_recent_improvement_flag condition3 is no_longterm_improvement_flag condition4 is no_recent_trim_flag"
I think it looks good, coverage is at 100% and I tested the major cases for the two methods. You can have a look @lacerbi. :)
This is the implementation of check_warmup_end_conditions which is called vbmc_warmup.m in MATLAB.
This PR is still work in progress, we need to discuss some implementation details. :)
Discussion points:
stable_count_flag
that describe the conditions better instead of the below two lines in MATLAB. I need however names for the conditions as I am not fairly confident with the naming of those (e.g. what is the difference betweenSecond requirement, also no substantial improvement of max fcn value in recent iters (unless already performing BO-like warmup)
andAlternative criterion for stopping - no improvement over max fcn value