Skip to content

Releases: JuliaControl/ModelPredictiveControl.jl

v0.15.0

21 Dec 22:33
Compare
Choose a tag to compare

ModelPredictiveControl v0.15.0

Diff since v0.14.1

  • 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 for MovingHorzionEstimator 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

09 Dec 18:52
Compare
Choose a tag to compare

ModelPredictiveControl v0.14.1

Diff since v0.14.0

  • changed: default P0 value not function of Q argument

v0.14.0

08 Dec 21:26
Compare
Choose a tag to compare

ModelPredictiveControl v0.14.0

Diff since v0.13.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

23 Nov 21:18
Compare
Choose a tag to compare

ModelPredictiveControl v0.13.0

Diff since v0.12.0

  • added: generic number types in all SimModel, StateEstimator and PredictiveController 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:

v0.12.0

17 Nov 02:18
Compare
Choose a tag to compare

ModelPredictiveControl v0.12.0

Diff since v0.11.2

  • added: linearization of NonLinModel based on ForwardDiff.jl
  • doc: example of linearize on the pendulum
  • doc: example of solving MPC with unstable plant model using DAQP
  • tests for linearize function

v0.11.2

11 Nov 03:02
Compare
Choose a tag to compare

ModelPredictiveControl v0.11.2

Diff since v0.11.0

  • added : time-varying weights over horizons
  • tests for time-varying weights

v0.11.1

09 Nov 22:19
Compare
Choose a tag to compare

ModelPredictiveControl v0.11.1

Diff since v0.11.0

  • Remove bridges in default JuMP optimizers
  • added: Solving time limit at Ts by default
  • reduce allocation for KalmanFilter
  • reduce allocation for NonLinMPC
  • debug : update current output estimation in ŶE argument of economic function JE

v0.11.0

02 Nov 21:12
Compare
Choose a tag to compare

ModelPredictiveControl v0.11.0

Diff since v0.10.3

  • Doc : add an economic MPC example on the inverted pendulum
  • Doc : update figures for the CSTR and the pendulum
  • Added : error log when the termination status means "no solution available"
  • Added : more precise log in REPL (warning: we keep the solution anyway, error: we take the last solution)
  • Added : do not compute input setpoints R̂u if mpc.noR̂u
  • Changed : time-varying ECR parameters with a capital C

v0.10.3

23 Oct 20:21
Compare
Choose a tag to compare

ModelPredictiveControl v0.10.3

Diff since v0.10.2

  • Debug: terminal constraints on NonLinMPC now work
  • Added: unit tests for terminal constraints on NonLinMPC
  • Added: reduce allocation for NonLinMPC based on NonLinModel

v0.10.2

22 Oct 02:20
Compare
Choose a tag to compare

ModelPredictiveControl v0.10.2

Diff since v0.10.1

  • Added: plant instrumentation figures in manual
  • default_nint returns 0 with nint_u for NonLinModel