This release entails a complete rewrite of the optimization code with many breaking
changes. In particular, some optimizers that were available before are not anymore.
Those will be re-introduced soon. The breaking changes include:
- The database is restructured. The new version simplifies the code,
makes logging faster and avoids the sql column limit.
- Users can provide closed form derivative and/or criterion_and_derivative where
the latter one can exploit synergies in the calculation of criterion and derivative.
This is also compatible with constraints.
- Our own (parallelized) first_derivative function is used to calculate gradients
during the optimization when no closed form gradients are provided.
- Optimizer options like convergence criteria and optimization results are harmonized
across optimizers.
- Users can choose from several batch evaluators whenever we parallelize
(e.g. for parallel optimizations or parallel function evaluations for numerical
derivatives) or pass in their own batch evaluator function as long as it has a
compatible interface. The batch evaluator interface also standardizes error handling.
- There is a well defined internal optimizer interface. Users can select the
pre-implemented optimizers by algorithm="name_of_optimizer" or their own optimizer
by algorithm=custom_minimize_function
- Optimizers from pygmo and nlopt are no longer supported (will be re-introduced)
- Greatly improved error handling.
- {gh}`169` Add additional dashboard arguments
- {gh}`168` Rename lower and upper to lower_bound and upper_bound
({ghuser}`ChristianZimpelmann`)
- {gh}`167` Improve dashboard styling ({ghuser}`roecla`)
- {gh}`166` Re-add POUNDERS from TAO ({ghuser}`tobiasraabe`)
- {gh}`165` Re-add the scipy optimizers with harmonized options ({ghuser}`roecla`)
- {gh}`164` Closed form derivatives for parameter transformations ({ghuser}`timmens`)
- {gh}`163` Complete rewrite of optimization with breaking changes ({ghuser}`janosg`)
- {gh}`162` Improve packaging and relax version constraints ({ghuser}`tobiasraabe`)
- {gh}`160` Generate parameter tables in tex and html ({ghuser}`mpetrosian`)