#numerical-optimization #convex-optimization #optimization #solver #convex #minimization

optimization-solvers

Numerical optimization solvers for unconstrained and simple-bounds constrained convex optimization problems

1 unstable release

new 0.1.0 Feb 16, 2025

#1233 in Math

Download history 73/week @ 2025-02-11

73 downloads per month

MIT/Apache

2MB
4.5K SLoC

Optimization-Solvers

Numerical optimization solvers for unconstrained and simple bound-constrained convex optimization problems. The solvers are implemented in Rust and are based on the ACM Collected Algorithms. The solvers are designed to be easy to use and to be easily integrated into existing codebases.

Note: Currently the unique non-rust solver is L-BFGS-B, which uses code bindings to the original Fortran implementation.

Modules and submodules of this crate follow the bipartition presented in [Nocedal, J., & Wright, S. J. (2006). Numerical optimization] regarding optimization algorithms:

  • Line search methods:
    • Steepest descent methods
    • Newton methods
    • Quasi-Newton methods
    • Conjugate gradient methods
  • Trust region methods:

Quadratic In the figure above: minimization of quadratic function using gradient descent solver

Todo

Books and articles on convex optimization:

Nice community questions

Dependencies

~23MB
~303K SLoC