acados
hpipm
acados | hpipm | |
---|---|---|
5 | 2 | |
677 | 473 | |
2.5% | - | |
8.9 | 7.7 | |
2 days ago | about 1 month ago | |
C | C | |
GNU General Public License v3.0 or later | 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.
acados
-
How to understand Model Predictive Control
I would check out CasADi (specifically the opti framework) and or ACADOS. To code up a quick MPC in general is not hard, but to squeeze efficiency and exploit sparsity for good real-time performance is a little more involved and these tools really help with that.
-
Question about Model Predictive Control (MPC) cost function
Generally, nonlinear MPC uses either IPOPT (an interior point method) or sequential quadtraic programming based approaches (google GURBOI, qpoases, qrqp...). A good python framework is CasADi, or its sister project ACADOS. I think there is also a fair amount of literature on learning MPC cost functions from data you could probably find.
-
Show HN: prometeo – a Python-to-C transpiler for high-performance computing
Thanks for the question! My background is in numerical optimization for optimal control. Projects like this https://github.com/acados/acados motivated the development of prometeo. It's mostly about solving optimization problems as fast as possible to make optimal decisions in real-time.
-
Do you know a good free toolbox on mpc control for GNU Octave?
Look at Acados. I didn't use it with Octave, but according the readme it has a interface with Octave.
hpipm
What are some alternatives?
StaticCompiler.jl - Compiles Julia code to a standalone library (experimental)
blasfeo - Basic linear algebra subroutines for embedded optimization
pyomo - An object-oriented algebraic modeling language in Python for structured optimization problems.
OpenBLAS - OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
py2many - Transpiler of Python to many other languages
Octavian.jl - Multi-threaded BLAS-like library that provides pure Julia matrix multiplication
Metatheory.jl - General purpose algebraic metaprogramming and symbolic computation library for the Julia programming language: E-Graphs & equality saturation, term rewriting and more.
prometeo - An experimental Python-to-C transpiler and domain specific language for embedded high-performance computing
llvm-cbe - resurrected LLVM "C Backend", with improvements