Releases: JuliaControl/ModelPredictiveControl.jl
Releases · JuliaControl/ModelPredictiveControl.jl
v0.19.0
ModelPredictiveControl v0.19.0
BREAKING CHANGE
NonLinModel
constructor now supposes continuous dynamics by default. Use solver=nothing
for discrete-time models.
changelog:
- added: support for
NonLinModel
with continuous dynamics - added: 4th order Runge-Kutta solver with 0 allocation
- doc: the pendulum example now use the built-in Runge-Kutta solve
- added some tests with continuous
NonLinModel
Merged pull requests:
- starting support of continuous
NonLinModel
(RK4 only for now) (#38) (@baggepinnen)
v0.18.1
ModelPredictiveControl v0.18.1
- remove useless allocations for mutating
NonLinModel
s
Merged pull requests:
- minor doc correction (#36) (@franckgaga)
- Remove useless allocations for in-place
NonLinModel
(#37) (@franckgaga)
v0.18.0
ModelPredictiveControl v0.18.0
- added: support for mutating
f!
andh!
functions inNonLinModel
to reduce allocations - doc: added simple example of the
MovingHorizonEstimator
for the CSTR in the manual
Merged pull requests:
- Update README.md (#27) (@franckgaga)
- Added a MHE example on the CSTR in the manual (#28) (@franckgaga)
- fix wrong function signature ared (#29) (@baggepinnen)
- dummy commit to trigger doc deploy (#30) (@franckgaga)
- doc: minor correction MHE manual (#32) (@franckgaga)
- Added: mutating
NonLinModel
(#33) (@franckgaga) - Re-enable precompilation (#34) (@franckgaga)
- bump version (#35) (@franckgaga)
Closed issues:
v0.17.0
ModelPredictiveControl v0.17.0
- added: support for non-diagonal symmetric
M_Hp
,N_Hc
andL_Hp
weights, allowing terminal costs and LQR tuning - doc: added comment on a terminal weight
- reduce allocations for
PredictiveController
s andMovingHorizonEstimator
(with in-place operations)
Merged pull requests:
- Update README links (#21) (@baggepinnen)
- todo: add terminal costs (#23) (@franckgaga)
- Update README.md (#24) (@franckgaga)
- Added: terminal cost support (#25) (@franckgaga)
v0.16.1
ModelPredictiveControl v0.16.1
- added: reduce allocation
NonLinMPC
- doc: added internal function
optim_objective
- doc: various doc improvements
v0.16.0
ModelPredictiveControl v0.16.0
- added: MHE soft constraints with a single slack variable ϵ (a.k.a. equal concern for relaxation, disabled by default thus only hard constraints).
- changed: more concise MPC logging in REPL.
- removed: deprecated arguments for
setconstraint!
andNonLinMPC
. - doc: hide extended help with
details
admonition. - doc: more concise
setconstraint!
andExplicitMPC
documentation.
v0.15.0
ModelPredictiveControl v0.15.0
- added: MHE hard constraints on estimated process and sensor noises
- added: MHEs based on
LinModel
are now treated as a quadratic optimization instead of nonlinear - added: Plots recipe avoid repeat xlabels for MIMOs
- added:
getinfo
method forMovingHorzionEstimator
for troubleshooting - debug: update MHE arrival covariance with I/Os at arrival
- improved coverage
Merged pull requests:
- Added: MHE with quadratic optim + process and sensor noises bounds (#20) (@franckgaga)
v0.14.1
ModelPredictiveControl v0.14.1
- changed: default
P0
value not function ofQ
argument
v0.14.0
ModelPredictiveControl v0.14.0
- added:
MovingHorizonEstimator
that can handle constraints on estimation - added: tests for
MovingHorizonEstimator
Merged pull requests:
- Added:
MovingHorizonEstimator
with state constraints (#19) (@franckgaga)
v0.13.0
ModelPredictiveControl v0.13.0
- added: generic number types in all
SimModel
,StateEstimator
andPredictiveController
objects (see note below) - changed: faster
ΔU
->U
conversion using matrices of floats (instead of booleans) - new tests with
Float32
.
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.
Merged pull requests:
- Support non-
Float64
numbers in all objects (#17) (@franckgaga)