Releases: SciML/Optimization.jl
Releases · SciML/Optimization.jl
v5.5.0
Optimization v5.5.0
Merged pull requests:
- Only override options if not provided in solver native way (#1148) (@baggepinnen)
- Update Installation section (#1150) (@ChrisRackauckas)
- Fix evolutionary optimizers not working with bounds (#1153) (@ChrisRackauckas-Claude)
- Allow Optim v2 (#1154) (@ChrisRackauckas)
- Allow Optim v2 (#1155) (@ChrisRackauckas-Claude)
- SciMLLogging Integration (#1157) (@jClugstor)
- CompatHelper: bump compat for Mooncake in [extras] to 0.5, (keep existing compat) (#1158) (@github-actions[bot])
- Fix deprecation warnings in CI (#1160) (@ChrisRackauckas-Claude)
- Bump minor versions for all sub-packages (OptimizationBase v5 compat) (#1161) (@ChrisRackauckas-Claude)
Closed issues:
v5.4.0
Optimization v5.4.0
Merged pull requests:
- CompatHelper: bump compat for OptimizationIpopt to 1 for package docs, (keep existing compat) (#1113) (@github-actions[bot])
- CompatHelper: bump compat for OptimizationMadNLP to 1 for package docs, (keep existing compat) (#1114) (@github-actions[bot])
- CompatHelper: bump compat for ModelingToolkit to 11 for package docs, (keep existing compat) (#1115) (@github-actions[bot])
- CompatHelper: bump compat for Symbolics to 7 for package docs, (keep existing compat) (#1116) (@github-actions[bot])
- CompatHelper: bump compat for OptimizationMOI to 1 for package docs, (keep existing compat) (#1117) (@github-actions[bot])
- Bump minimum SciMLBase compat to 2.130.0 to fix Downgrade CI (#1118) (@ChrisRackauckas-Claude)
- Documentation improvements: fix typos and add missing package pages (#1120) (@ChrisRackauckas-Claude)
- CompatHelper: bump compat for NLPModels to 0.22 for package docs, (keep existing compat) (#1121) (@github-actions[bot])
- Add precompilation workload to OptimizationBase (#1122) (@ChrisRackauckas-Claude)
- Fix type genericity in constraint Jacobian allocations for BigFloat support (#1123) (@ChrisRackauckas-Claude)
- CompatHelper: add new compat entry for OptimizationLBFGSB at version 1 for package docs, (keep existing compat) (#1124) (@github-actions[bot])
- Add SimpleOptimization.jl to solver pages (#1126) (@ChrisRackauckas-Claude)
- Add OptimizationSimpleOptimization sublibrary (#1127) (@ChrisRackauckas-Claude)
- Switch from JuliaFormatter to Runic.jl for code formatting (#1128) (@ChrisRackauckas-Claude)
- Bump actions/checkout from 4 to 6 (#1129) (@dependabot[bot])
- Add JET.jl static analysis tests and fix type instabilities (#1131) (@ChrisRackauckas-Claude)
- perf: Fix Core.Box closure type instability in OptimizationDIExt.jl (#1133) (@ChrisRackauckas-Claude)
- Skip failing tests and disable Downgrade Sublibraries CI (#1139) (@ChrisRackauckas-Claude)
- Fix SecondOrder AD closures (#1142) (@SebastianM-C)
- Rename OptimizationSimpleOptimization to SimpleOptimization (#1143) (@ChrisRackauckas-Claude)
- Add README for SimpleOptimization sublibrary (#1145) (@ChrisRackauckas-Claude)
- Mark certification.md as Draft to prevent Documenter build (#1146) (@ChrisRackauckas-Claude)
Closed issues:
v5.3.0
Optimization v5.3.0
Merged pull requests:
- Fix false convergence when LBFGSB encounters Inf/NaN at bounds (issue #1094) (#1102) (@ChrisRackauckas-Claude)
- Bump actions/cache from 4 to 5 (#1106) (@dependabot[bot])
- refactor: update to MTKv11 (#1107) (@AayushSabharwal)
- build: bump minor versions for packages changed in MTKv11 update (#1108) (@ChrisRackauckas-Claude)
- build: bump OptimizationIpopt, OptimizationMOI, OptimizationMadNLP to v1.0 (#1109) (@ChrisRackauckas-Claude)
Closed issues:
- OptimizationLBFGSB.LBFGSB() produces wrong results with retcode: Success (#1094)
v5.2.0
Optimization v5.2.0
Merged pull requests:
- Fix OptimizationIpopt & OptimizationMOI with OptimizationBase@v3 (#1087) (@SebastianM-C)
- fix Downgrade CI (#1089) (@SebastianM-C)
- Add explicit allowscallback everywhere (#1090) (@SebastianM-C)
- bump versions (#1091) (@SebastianM-C)
- Bump actions/checkout from 4 to 6 (#1096) (@dependabot[bot])
- Fix docs (#1097) (@SebastianM-C)
- CompatHelper: add new compat entry for DifferentiationInterface at version 0.7 for package docs, (keep existing compat) (#1099) (@github-actions[bot])
- CompatHelper: add new compat entry for OptimizationPyCMA at version 1 for package docs, (keep existing compat) (#1100) (@github-actions[bot])
Closed issues:
- OptimizationOptimJL fails to precompile in Julia 1.10- 1.12 (tested) (#1098)
v5.1.0
Optimization v5.1.0
Merged pull requests:
- Rewrite the progressbar part of
OptimizationOptimisers(#1060) (@prbzrg) - Add OptimizationMadNLP (#1061) (@SebastianM-C)
- CompatHelper: bump compat for OptimizationNLPModels to 1 for package docs, (keep existing compat) (#1063) (@github-actions[bot])
- CompatHelper: bump compat for Optimization to 5 for package docs, (keep existing compat) (#1064) (@github-actions[bot])
- Better handling of Base method movement (#1066) (@ChrisRackauckas)
- Clean up and update to OptimizationBase@v4 (#1067) (@SebastianM-C)
- Fix NLopt crash with gradient-based algorithms when no AD backend specified (#1068) (@ChrisRackauckas-Claude)
- Bugfix (#1069) (@SebastianM-C)
- Cleanup for OptimizationBase (#1071) (@SebastianM-C)
- Fix deprecated field names in MultistartOptimization result handling (#1072) (@ChrisRackauckas-Claude)
- Fix LBFGS/BFGS callback receiving Dual numbers instead of scalar loss values (#1075) (@ChrisRackauckas-Claude)
- Use the current OptimizationBase instead of the release (#1080) (@SebastianM-C)
- Skip gradient updates when gradients contain NaN or Inf (#1081) (@ChrisRackauckas-Claude)
- shorten the OptimizationMadNLP tests (#1082) (@SebastianM-C)
- Continue fixing CI (#1083) (@SebastianM-C)
- Fix OptimizationMadNLP version (#1084) (@SebastianM-C)
- add missing bumps (#1086) (@SebastianM-C)
Closed issues:
- OptimizationBase (v2) fails to precompile (#1056)
- [ERROR]
@logprogressmust be used inside@withprogressor with_idkeyword argument (#1059) - OptimizationPRIMA v0.3.2 fails to precompile (#1062)
- 1 dependency had output during precompilation (#1065)
- Did Optimization v5 break Optimization v4 somehow? (#1070)
- (L-)BFGS with bounds reports negatives loss to callback (#1073)
v5.0.0
Optimization v5.0.0
Breaking changes
- Solvers are no longer dependent on the top level Optimization.jl. Now they are built on OptimizationBase.jl, conforming to all other SciML libraries. Optimization.jl is thus preserved for a preference-based optimal setting in the form of other top level libraries.
- Sophia, LGBFGS (renamed to LBFGSB), and Auglag were moved to OptimizationX solver-specific libraries to be in line with the other solvers.
Merged pull requests:
- Added a new Subpackage for Augmented Lagrangian (#984) (@ParamThakkar123)
- New Subpackage for LBFGS (#986) (@ParamThakkar123)
- Added new subpackage for Sophia.jl (#988) (@ParamThakkar123)
- Improve the OptimizationManopt.jl interface (#1009) (@kellertuer)
- CompatHelper: add new compat entry for ADTypes at version 1 for package docs, (keep existing compat) (#1032) (@github-actions[bot])
- CompatHelper: bump compat for OptimizationManopt to 1 for package docs, (keep existing compat) (#1033) (@github-actions[bot])
- Fix dependency structure of solvers to OptimizationBase (#1037) (@ChrisRackauckas)
- Bump OptimizationBase requirement to v3 and increment sublibrary versions (#1040) (@ChrisRackauckas-Claude)
- CompatHelper: bump compat for OptimizationBase to 3 for package docs, (keep existing compat) (#1042) (@github-actions[bot])
- Fix dependency structure of OptimizationAuglag (#1046) (@ChrisRackauckas)
- Update OptimizationMultistartOptimization.jl to OptimizationBase backend (#1047) (@ChrisRackauckas)
- Add solve, solve!, init (#1049) (@jClugstor)
- Revert "Add solve, solve!, init" (#1050) (@ChrisRackauckas)
- Complete solve interface migration from SciMLBase to OptimizationBase (#1053) (@ChrisRackauckas-Claude)
Closed issues:
v4.8.0
Optimization v4.8.0
Merged pull requests:
- DAE optimizers added to OptimizationODE (#932) (@ParasPuneetSingh)
- [WIP] fix: fix tests (#1003) (@AayushSabharwal)
- Fix OptimizationOptimisers.jl progress bar (#1019) (@ChrisRackauckas)
- IpoptOptimizer now stores solver specific options and the callbacks are faster (#1021) (@SebastianM-C)
- bump OptimizationIpopt compat in docs (#1022) (@SebastianM-C)
- Relax Matrix type in IpoptCache (#1025) (@ErikQQY)
- Add error message when NLopt AUGLAG algorithms are used without local_method (#1026) (@ChrisRackauckas-Claude)
- General test fixes (#1028) (@ChrisRackauckas)
- Fix MOI Symbolic writing and docs (#1029) (@ChrisRackauckas)
- Omit known broken Enzyme Hessian-free AD test (#1031) (@ChrisRackauckas)
Closed issues:
v4.7.0
Optimization v4.7.0
Merged pull requests:
- Update the multistart optimization tutorial in
ensemble.md(#1005) (@francis-biocurie) - Fix Sophia optimizer: add Random import to resolve randn! error (#1006) (@ChrisRackauckas-Claude)
- Fix CMAEvolutionStrategy solution
u(#1008) (@gabrevaya) - Add missing solve interface to OptimizationBase from SciMLBase.jl (#1012) (@ChrisRackauckas-Claude)
- Create solver_missing_error_messages.jl (#1013) (@ChrisRackauckas)
- Add compatibility support for supports_opt_cache_interface (#1014) (@ChrisRackauckas-Claude)
Closed issues:
- [email protected] is not registered (#939)
- Sophia: undefined reference to rand! (#1004)
v4.6.0
Optimization v4.6.0
Merged pull requests:
- Add initial version of OptimizationIpopt (#915) (@SebastianM-C)
- Adding Mooncake to the AD list. (#936) (@yebai)
- Fix downgrade CI compatibility issues with version bumps (#983) (@ChrisRackauckas)
- Migrate OptimizationBase.jl as sublibrary (pure migration) (#993) (@ChrisRackauckas-Claude)
- Fix error when store_trace=true with OptimizationOptimJL (#994) (@ChrisRackauckas-Claude)
- Add comprehensive docstring for Sophia optimizer (#998) (@ChrisRackauckas-Claude)
- Fix Sophia optimizer shadow generation for ComponentArrays (#1000) (@ChrisRackauckas-Claude)
- Add docs for OptimizationIpopt (#1001) (@SebastianM-C)
- Clarify Rosenbrock examples documentation (#1002) (@mikeingold)
Closed issues:
v4.5.0
Optimization v4.5.0
Merged pull requests:
- Added fix for COBYLA example in docs (#931) (@AdityaPandeyCN)
- PyCMA Wrapper (#933) (@mxpoch)
- added pycma docs and python kwargs (#934) (@mxpoch)
- added callbacks to pycma wrapper (#935) (@mxpoch)
- Relax type in MOI NLP evaluator (#938) (@ErikQQY)
- Add optimization parameters to OptimizationState (#945) (@ChrisRackauckas)
- Add verbose parameter support to CMAEvolutionStrategyOpt (#946) (@ChrisRackauckas)
- Fix integer bounds error in OptimizationMOI (#947) (@ChrisRackauckas)
- Fix LBFGS iteration counter always showing 0 (#948) (@ChrisRackauckas)
- Add support for dual_ftol_rel parameter in NLopt (#949) (@ChrisRackauckas)
- Add documentation for reinit! function (#950) (@ChrisRackauckas)
- Improve test coverage for src/utils.jl (#952) (@ChrisRackauckas)
- Fix Sophia neural network training documentation example (#953) (@ChrisRackauckas)
- Remove Julia v1.9 version checks and associated AD tests (#956) (@ChrisRackauckas)
- Add spell checking configuration (#962) (@ChrisRackauckas)
- Fix spelling errors and add typos configuration (#963) (@ChrisRackauckas)
- Add downgrade CI workflow with Core test group (#964) (@ChrisRackauckas)
- Add downgrade CI for all sublibraries (#965) (@ChrisRackauckas)
- Update CI to test on Julia 1, lts, and pre versions (#966) (@ChrisRackauckas)
- Update code formatting with JuliaFormatter (#985) (@ChrisRackauckas)
Closed issues:
- Add description and usage example of
reinit(#502) - Error messages with integer constraint vectors (#528)
- Prevent printing when using CMAEvolutionStrategyOpt solver (#572)
- The help to solve does not explain the result. (#587)
- test: test coverage needs improvement for the ./src/utils.jl file (#868)
- Add optimization parameters to
OptimiationStsate(#891) - LBFGS iteration index is always 0? (#907)
- Add OptimizationSciPy wrapper package (#917)
- Add OptimizationPyCMA Wrapper Package (#918)
- Adding dual_ftol_rel keyword for NLopt (#922)
no method matching keys(::Nothing)when I forget to passlconsanduconsto a constrained problem (#959)