-
Notifications
You must be signed in to change notification settings - Fork 79
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
Backwards compatibility issue with default use_simplex #1041
Comments
I understand your point, but relying on how iminuit and Minuit2 behave numerically in pathological edge cases is a major issue. There is no guarantee that your edges cases will be solved in the exact same way between versions for a number of reasons. For example, changing the numpy version could in principle change the outcome. If you want full reproducibility, you should pin iminuit and numpy versions, and potentially numba if you use the builtin cost functions. I do not plan to make another major release for breaking changes anytime soon, so if I follow your suggestion, Can you provide evidence that |
Indeed, we've pinned It's a bit complicated to reproduce our setup and fit data, though you can see the sequence of test results in icecube/skymap_scanner#272. Here's a partial output log where one of the fits timed out. Typically this completes in ~6 min.
Note that this is for performing a likelihood scan where each fit is a constrained minimization where a subset of the parameters (direction) are fixed. In many cases the constraint can cause the llh to be far from the global minimum and this can pose challenges for the minimizer in terms of convergence rate. |
#1009 changes the default migrad routine if iterations are necessary. This may help with convergence issues, but can lead to different results thus breaking backwards compatibility. There may also be cases where this introduces additional redundancy, such as where the user already runs simplex followed by migrad. Would it be possible to default
use_simplex=False
, at least until the next major version increment?The text was updated successfully, but these errors were encountered: