Skip to content

v0.21.0

Compare
Choose a tag to compare
@github-actions github-actions released this 26 Apr 02:32
· 936 commits to main since this release
dc8681a

ModelPredictiveControl v0.21.0

Diff since v0.20.2

BREAKING CHANGE
All the keyword arguments related to initial values e.g. σP0, x0 and x̂0 now require an underscore e.g. σP_0, x_0, x̂_0 (to differentiate from operating point deviation vectors)

  • Added: setmodel! for runtime model adaptation of controller/estimator based on LinModel
  • Added: linearize and setop! now support non-equilibrium points
  • Added: successive linearization MPC with the new setmodel! and linearize functions
  • Added: successive linearization MHE with the new setmodel! and linearize functions
  • Added: linearize! method for in-place model linearization (to reduce allocations)
  • Added: 6 args. LinModel constructor now support scalars (similarly to ss function)
  • Added: ExtendedKalmanFilter now compute the Jacobians in-place (to reduce allocations)
  • Changed: struct state data x and state estimate renamed to x0 and x̂0
  • Debug: ExplicitMPC with non-Float64 now works
  • Debug: accept integers in linearize arguments
  • Debug: call empty! on JuMP.Model to support re-construction of MPC instances
  • Doc: new setmodel!, setop! and linearize function documentation
  • Doc: example of model adaptation with successive linearization on the pendulum (very efficient!)

Merged pull requests:

  • Added: adaptatation of LinMPC model through setmodel! (#52) (@franckgaga)
  • Added: adaptation of controller/estimator based on LinModel (#54) (@franckgaga)
  • Added: setmodel! for MovingHorizonEstimator (#55) (@franckgaga)