fminslp
NLopt.jl
fminslp | NLopt.jl | |
---|---|---|
2 | 1 | |
4 | 253 | |
- | 0.4% | |
0.0 | 5.7 | |
almost 4 years ago | about 2 months ago | |
MATLAB | Julia | |
- | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
fminslp
- Solver for nonlinear MPC
-
Mma Algorithm And Constraints Approximation
You can get some inspiration here. It is an SLP optimizer, wrapped around a convergence filter combined with an adaptive move limit scheme. You could in theory replace the linear optimizer with your mma version, and utilize the rest of the framework (convergence filter + adaptive move limits) I also handle constraints in a similar fashion as mma, so you should be able to see some similarities 😉
NLopt.jl
-
Help me to choose an optimization framework for my problem
So I usually fallback to NLopt.jl, it is an interface around the old NLopt library (written in C/FORTRAN/C++). It is not super hard to use but it is more bare bones than the alternatives you mentioned, however it has dozens of optimization methods and options, great documentation and it is super fast. I am sure it would work great with your problem if you are willing to spend the time to tweak its configuration option.
What are some alternatives?
Optimization.jl - Mathematical Optimization in Julia. Local, global, gradient-based and derivative-free. Linear, Quadratic, Convex, Mixed-Integer, and Nonlinear Optimization in one simple, fast, and differentiable interface.
JuMP.jl - Modeling language for Mathematical Optimization (linear, mixed-integer, conic, semidefinite, nonlinear)
DoubleFloats.jl - math with more good bits
prima - PRIMA is a package for solving general nonlinear optimization problems without using derivatives. It provides the reference implementation for Powell's derivative-free optimization methods, i.e., COBYLA, UOBYQA, NEWUOA, BOBYQA, and LINCOA. PRIMA means Reference Implementation for Powell's methods with Modernization and Amelioration, P for Powell.
ModelingToolkit.jl - An acausal modeling framework for automatically parallelized scientific machine learning (SciML) in Julia. A computer algebra system for integrated symbolics for physics-informed machine learning and automated transformations of differential equations