GepocUS / Spcies

Suite of Predictive Controllers for Industrial Embedded Systems. A Matlab toolbox for automatic code generation of solvers for MPC controllers.
Apache License 2.0
14 stars 2 forks source link

MPCT with soft constraints and constrained outputs #51

Closed VictorManuelGracia closed 5 months ago

VictorManuelGracia commented 5 months ago

The changes included in this pull request are related to MPC for tracking formulation using ADMM with "semiband" submethod. Specifically, we have:

  1. New option named "soft_constraints", which allows us to set soft constraints replacing original hard inequality constraints. We consider every inequality constraint softened except the ones in the input to be applied, i.e., u_0.

  2. New options named "constrained_output", providing the possibility of setting constraints of kind LBy <= C*x <= UBy. Note that, for now, we cannot set D different to 0, as we need to add a new method to solve the cholesky decompositions used in the semiband structure for this spcific case.

  3. Addition of new documentation for this update. Still needs to be improved and reviewed.

Remark: Options "soft_constraints" and "constrained_output" are totally independent of one another. That is, they work for the four possible combinations, setting then either to true or false independently.