Skip to content

Releases: JuliaControl/ModelPredictiveControl.jl

v1.11.0

19 Sep 04:25
5ac89b4

Choose a tag to compare

ModelPredictiveControl v1.11.0

Diff since v1.10.0

  • added: multithreading with MultipleShooting and TrapezoidalCollocation
  • test: multithreading with MultipleShooting and TrapezoidalCollocation
  • bench: case studies with multithreading on the pendulum

Merged pull requests:

v1.10.0

11 Sep 14:59
0dbe0b9

Choose a tag to compare

ModelPredictiveControl v1.10.0

Diff since v1.9.3

  • added: covestim in MovingHorizonEstimator now supports SteadyKalmanFilter for a constant arrival covariance $\mathbf{\bar{P}}$

Merged pull requests:

v1.9.3

08 Sep 21:50
7bde163

Choose a tag to compare

ModelPredictiveControl v1.9.3

Diff since v1.9.2

  • debug: setmodel! now works with LinMPC based on MultipleShooting
  • test: new test for setmodel! with MultipleShooting
  • doc: using MultipleShooting in the manual on the unstable pendulum system

Merged pull requests:

  • doc: using MultipleShooting in the manual for the unstable pendulum system (#245) (@franckgaga)
  • debug: setmodel! now works with LinMPC based on MultipleShooting (#246) (@franckgaga)

v1.9.2

07 Sep 21:26
77163a7

Choose a tag to compare

ModelPredictiveControl v1.9.2

Diff since v1.9.1

  • added: clearer pretty-print of objects with a tree structure
  • added: print differentiation backends in NonLinModel, ExtendedKalmanFilter, MovingHorizonEstimator and NonLinMPC
  • changed: using $\varepsilon$ instead of $\epsilon$ for MovingHorizonEstimator slack variable (to clearly differentiate from MPC slack)

Merged pull requests:

  • added: clearer pretty-print with trees + print differentiation backends (#244) (@franckgaga)

v1.9.1

06 Sep 23:29
f2f5b2e

Choose a tag to compare

ModelPredictiveControl v1.9.1

Diff since v1.9.0

  • added: piecewise linear manipulated inputs $\mathbf{u}$ with TrapezoidalCollocation(1)
  • changed: now internally handle the operating points
  • debug: linearize! on NonLinModel with non-zero operating points now works
  • doc: describing the internal of the various prediction and transcription methods

Merged pull requests:

  • debug: linearize! on NonLinModel with non-zero operating points now works (#239) (@franckgaga)
  • doc: describing the internal of the various prediction and transcription methods (#240) (@franckgaga)
  • changed: 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)

v1.9.0

30 Aug 20:08
ffc3bda

Choose a tag to compare

ModelPredictiveControl v1.9.0

Diff since v1.8.2

  • added: TrapezoidalCollocation method for continuous-time nonlinear systems
  • added: dependabot.yml file to help with the CI dependencies
  • changed: new fields with the continuous state-space function model.f! and model.h! in NonLinModels (instead of model.solver_f! and model.solver_h!)
  • test: new test with TrapezoidalCollocation and Ipopt
  • bench: new case studies with TrapezoidalCollocation on the pendulum

Merged pull requests:

  • bench: increasing samples to reduce SD when needed (#228) (@franckgaga)
  • added: dependabot.yml file to help with CI dependencies (#230) (@franckgaga)
  • build(deps): bump julia-actions/setup-julia from 1 to 2 (#231) (@dependabot[bot])
  • build(deps): bump actions/checkout from 2 to 5 (#232) (@dependabot[bot])
  • changed: keep f! and h! functions available (#233) (@franckgaga)
  • added: simple TrapezoidalCollocation() transcription method (#234) (@franckgaga)
  • doc: clarifying model augmentation for NonLinMPC in f̂! docstring (#235) (@franckgaga)
  • added: show TranscriptionMethod when printing PredictiveController (#236) (@franckgaga)
  • added: unit tests and benchmarks for TrapezoidalCollocation (#237) (@franckgaga)

Closed issues:

  • Trapezoidal collocation transcription (#164)

v1.8.2

16 Jul 20:31
f0f8d2a

Choose a tag to compare

ModelPredictiveControl v1.8.2

Diff since v1.8.1

Merged pull requests:

v1.8.1

14 Jun 02:20
e7c8c89

Choose a tag to compare

ModelPredictiveControl v1.8.1

Diff since v1.8.0

  • added: new KalmanCovariance parametric struct to handle covariance sparsity efficiently
  • added: dispatch on repeatdiag to preserve Diagonnals
  • added: in-place and allocation-free inv! for MHE covariance matrices
  • changed: store P̃Δu, P̃u and Tu conversion matrices as SparseMatrixCSC
  • debug: support Hermitian weights in PredictiveController
  • debug: use dummy b vector in MHE setmodel! to avoid ±Inf values
  • test: verify setmodel! with He>1 for MHE
  • test: new integration with ManualEstimator and MPCs
  • doc: various improvements

Merged pull requests:

  • new ManualEstimator tests and minor doc corrections (#210) (@franckgaga)
  • doc : minor clarifications (#211) (@franckgaga)
  • Changed: store conversion matrices as SparseMatrixCSC (#212) (@franckgaga)
  • added: inv! for MovingHorizonEstimator covariance matrices (#214) (@franckgaga)
  • debug: support Hermitian weights in PredictiveController (#215) (@franckgaga)
  • added: new KalmanCovariance struct to handle covariance sparsity efficiently (#216) (@franckgaga)

v1.8.0

29 May 18:42
44a5589

Choose a tag to compare

ModelPredictiveControl v1.8.0

Diff since v1.7.0

Merged pull requests:

  • added: move blocking feature in LinMPC, ExplicitMPC and NonLinMPC (#201) (@franckgaga)

Closed issues:

  • Implement manipulated input blocking (#177)

v1.7.0

25 May 21:01
03cb818

Choose a tag to compare

ModelPredictiveControl v1.7.0

Diff since v1.6.2

  • added: ManualEstimator to turn off built-in state estimation and provide your own estimate

Merged pull requests:

  • added: ManualEstimator to turn off built-in state estimation (#206) (@franckgaga)
  • changed: moved lastu0 inside PredictiveController objects (#208) (@franckgaga)
  • Added tests and improve doc for ManualEstimator (#209) (@franckgaga)

Closed issues:

  • Create a CustomEstimator to ease interfacing with Low-level particle filter package (#142)
  • Support nonlinear estimator with linear model predictive control (#205)