acados
do-mpc
acados | do-mpc | |
---|---|---|
5 | 1 | |
677 | 856 | |
3.0% | - | |
8.9 | 7.6 | |
7 days ago | 3 months ago | |
C | Python | |
GNU General Public License v3.0 or later | GNU Lesser General Public License v3.0 only |
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.
do-mpc
What are some alternatives?
StaticCompiler.jl - Compiles Julia code to a standalone library (experimental)
pyomo - An object-oriented algebraic modeling language in Python for structured optimization problems.
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.
hpipm - High-performance interior-point-method QP and QCQP solvers
llvm-cbe - resurrected LLVM "C Backend", with improvements
prometeo - An experimental Python-to-C transpiler and domain specific language for embedded high-performance computing
raylib - A simple and easy-to-use library to enjoy videogames programming
OpenBLAS - OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
hoverboard-firmware-hack-FOC - With Field Oriented Control (FOC)