Releases: JuliaControl/ModelPredictiveControl.jl
Releases · JuliaControl/ModelPredictiveControl.jl
v1.13.2
ModelPredictiveControl v1.13.2
- changed: new default sparse backend for
jacobianandhessianinNonLinMPCandMovingHorizonEstimator
It should be non-breaking in most cases. It's only a performance improvements to potentially reduce the number of colors for differentiation
Merged pull requests:
- Modify MPC setup to use MovingHorizonEstimator (#281) (@franckgaga)
- Fix typo in README for MovingHorizonEstimator (#282) (@franckgaga)
- changed: better
jacobianandhessiandefaults for the sparse case inNonLinMPCandMovingHorizonEstimator(#283) (@franckgaga) - bench: add custom constraint tests with
hessian=true(#284) (@franckgaga) - changed: sparse backends default to post-processing (#285) (@franckgaga)
Closed issues:
- Fiddling with the coloring (#280)
v1.13.1
ModelPredictiveControl v1.13.1
- debug: prepare AD with
randconstant contexts - debug: only fills non-zeros in
∇²fof@operator
Merged pull requests:
- debug: prepare AD with
randconstant contexts (#278) (@franckgaga) - debug: only fills non-zeros in
∇²fof@operator(#279) (@franckgaga)
Closed issues:
- Support exact Hessians of Lagrangian
NonLinMPCandMovingHorizonEstimator(#181)
v1.13.0
ModelPredictiveControl v1.13.0
- added:
hessianargument inNonLinMPCfor exact Hessian of Lagrangian 🎯 - added:
hessianargument inMovingHorizonEstimatorfor exact Hessian of Lagrangian 🎯 - added:
trunc_covfunction for MHE (to optimize perf. of dot in objective function) - added:
lastukeyword argument tomoveinput!
Merged pull requests:
- test: adding trivial tests with
oracle=false(#271) (@franckgaga) - added:
lastukeyword argument tomoveinput!(#274) (@franckgaga) - added:
hessiankeyword argument inNonLinMPC(#275) (@franckgaga) - added:
trunc_covfunction for MHE (to optimize perf. ofdotin objective function) (#276) (@franckgaga) - added:
hessiankeyword argument forMovingHorizonEstimator(#277) (@franckgaga)
v1.12.0
ModelPredictiveControl v1.12.0
- added:
oracle=trueoption inNonLinMPCto significantly improve performances under nonlinear constraints 🚀 (default withIpopt.jl) - added:
oracle=trueoption inMovingHorizonEstimatorto significantly improve performances under nonlinear constraints 🚀 (default withIpopt.jl)
Merged pull requests:
- Experimentation: testing
Ipopt._VectorNonlinearOracle(#229) (@franckgaga) - doc: minor precision in strictly proper system assumption (#263) (@franckgaga)
- debug: do not warn
cond(H̃)inNonLinMPCifEwt≠0(#264) (@franckgaga) - changed: differentiating only non-
Infconstraints inNonLinMPC(#267) (@franckgaga) - added: use
Ipopt._VectorNonlinearOracleinMovingHorizonEstimator(#268) (@franckgaga) - added: migration to
MOI.VectorNonlinearOracle(#269) (@franckgaga) - added:
oracleoption inNonLinMPCandMovingHorizonEstimator(#270) (@franckgaga)
v1.11.1
ModelPredictiveControl v1.11.1
- added:
progresskeyword argument insim!to disable progress logs - added: ill-conditioned QP warning at controller construction
- removed: less useful workload in
precompile.jlto accelerate precompilation
Merged pull requests:
- added:
progresskeyword argument insim!to disable progress logs (#260) (@franckgaga) - added: ill-conditioned QP warning at controller construction (#261) (@franckgaga)
- removed: less useful workload in
precompile.jl(#262) (@franckgaga)
Closed issues:
- Multi-threaded
MultipleShootingandTrapezoidalCollocation(#257)
v1.11.0
ModelPredictiveControl v1.11.0
- added: multithreading with
MultipleShootingandTrapezoidalCollocation - test: multithreading with
MultipleShootingandTrapezoidalCollocation - bench: case studies with multithreading on the pendulum
Merged pull requests:
- doc: update pendulum exemple to MTK v10 in the manual (#251) (@franckgaga)
- doc: details on proper systems in
LinModelextended help (#252) (@franckgaga) - bench: only run bench if
benchmarkappears in label (#254) (@franckgaga) - added: multithreading with
MultipleShootingandTrapezoidalCollocation(#258) (@franckgaga) - Update transcription.jl (#259) (@franckgaga)
v1.10.0
ModelPredictiveControl v1.10.0
- added:
covestiminMovingHorizonEstimatornow supportsSteadyKalmanFilterfor a constant arrival covariance$\mathbf{\bar{P}}$
Merged pull requests:
- doc: add arXiv badge (#247) (@franckgaga)
- added:
covestiminMovingHorizonEstimatornow supportsSteadyKalmanFilter(#248) (@franckgaga) - Bump version (#249) (@franckgaga)
v1.9.3
ModelPredictiveControl v1.9.3
- debug:
setmodel!now works withLinMPCbased onMultipleShooting - test: new test for
setmodel!withMultipleShooting - doc: using
MultipleShootingin the manual on the unstable pendulum system
Merged pull requests:
- doc: using
MultipleShootingin the manual for the unstable pendulum system (#245) (@franckgaga) - debug:
setmodel!now works withLinMPCbased onMultipleShooting(#246) (@franckgaga)
v1.9.2
ModelPredictiveControl v1.9.2
- added: clearer pretty-print of objects with a tree structure
- added: print differentiation backends in
NonLinModel,ExtendedKalmanFilter,MovingHorizonEstimatorandNonLinMPC - changed: using
$\varepsilon$ instead of$\epsilon$ forMovingHorizonEstimatorslack variable (to clearly differentiate from MPC slack)
Merged pull requests:
- added: clearer pretty-print with trees + print differentiation backends (#244) (@franckgaga)
v1.9.1
ModelPredictiveControl v1.9.1
- added: piecewise linear manipulated inputs
$\mathbf{u}$ withTrapezoidalCollocation(1) - changed:
f̂now internally handle the operating points - debug:
linearize!onNonLinModelwith non-zero operating points now works - doc: describing the internal of the various prediction and transcription methods
Merged pull requests:
- debug:
linearize!onNonLinModelwith non-zero operating points now works (#239) (@franckgaga) - doc: describing the internal of the various prediction and transcription methods (#240) (@franckgaga)
- changed:
f̂now internally handle the operating points (#241) (@franckgaga) - doc: changing the notation of transcription internals (#242) (@franckgaga)
- added: piecewise linear manipulated inputs with
TrapezoidalCollocation(1)(#243) (@franckgaga)