ModelPredictiveControl v0.13.0
I watched @baggepinnen presentation at JuliaCon 2023 (nice presentation Fredrik btw!) and it gave me the idea of a new cool feature : the linearize
function. Gain scheduling should be quite easy with this. It is not possible to modify the plant model of a LinMPC
instance right now, but I will probably add this feature soon. Gain scheduling is still possible using multiple LinMPC
objects.
Also, I did a major refactoring of the code to support generic number types across the package. Note that most solvers in JuMP
only support Float64
numbers. Thus, PredictiveController
objects still default to Float64
-based optimizers, even if the plant model or state estimator uses other number types.
In short, the new features are:
- added: linearization of
NonLinModel
based onForwardDiff.jl
- added: generic number types in all
SimModel
,StateEstimator
andPredictiveController
objects - doc: example of
linearize
on the pendulum - doc: example of solving MPC with unstable plant model using
DAQP
- tests for
linearize
function - tests with
Float32
numbers
I will register the new version soon.