2024-07-12 –, Method (1.5)
JSOSuite.jl is a one-stop solution for optimization in Julia. Built on top of the Julia Smooth Optimizers (JSO) packages, this package provides a user-friendly interface for users who want a quick solution to their linear or nonlinear optimization problems. In the background, JSO provides research-level optimization and linear algebra modules, which JSOSuite.jl packages conveniently.
We bring JSOSuite.jl into the spotlight: a one-stop solution for optimization. This package provides an interface for users to quickly supply their optimization problem to one of our solvers. The solver is selected automatically, or selected by the user. This allows users to have access to research-level optimization solvers, most of which are written in pure Julia. This means that you can find solvers that handle multiple precision and custom types.
JSOSuite is powered by the Julia Smooth Optimizers ecosystem (https://jso.dev). This includes many optimization and linear algebra solvers, such as Percival.jl and Krylov.jl, as well as modeling interfaces---most notably, ADNLPModels.jl. With our modeling interfaces, you can supply the minimum information and use automatic differentiation, be explicit with all derivatives, or a mix of both. You can exploit the structure of the problems, for instance for Nonlinear Least Squares problems, or PDE-constrained optimization. Finally, you can integrate with JuMP and AMPL to keep using what you're familiar with.
The Julia Smooth Optimizers organization has been around since 2015. We have over 50 registered packages dealing with a variety of linear/nonlinear optimization and linear algebra topics. Many of our packages are in use in other ecosystems.
Research Software Engineer.
Co-creator of JuliaSmoothOptimizers.
YouTuber.
https://abelsiqueira.com