Wiki

Clone wiki

mup / SOFT-CON

SOFT-CON Module

since MUP_R20160321

wiki20161207

We have developed a novel SOFT-CON module to implement the input and output soft constraints into the LMI-based robust MPC design. As a result, we can design robust MPC subject to the soft constraints in effective and uer friendly way.

Setup

To implement the soft constraints using MUP's module SOFT-CON, various additional parameters are necessary.

SOFT-CON requires structure PARAM of the following parameters related to soft constraints implementation:

  • param.u_sl = u_sl; % input soft constraints
  • param.y_sl = y_sl; % output soft constraints
  • param.Wsu = Wsu; % weighting matrix of input-related slack variables utilization
  • param.Wsy = Wsy; % weighting matrix of output-related slack variables utilization
  • param.Esu = Esu; % indication matrix of soft-constrained inputs
  • param.Esy = Esy; % indication matrix of soft-constrained outputs

where:

  • Symmetric input soft constraints: u_sl: [real-valued Nsu-dimensional vector is required] - vector of input soft constraints.
  • Symmetric output soft constraints: y_sl: [real-valued Nsy-dimensional vector is required] - vector of output soft constraints.
  • Cost Function Weight of input-slacks: Wsu: [semidefinite real-valued Nsu-dimensional diagonal square matrix is required] - the weight matrix of soft-constrained system inputs of quadratic cost function.
  • Cost Function Weight of output-slacks: Wsy: [semidefinite real-valued Nsy-dimensional diagonal square matrix is required] - the weight matrix of soft-constrained system oututs of quadratic cost function.
  • Input soft-constraints indication: Esu: [Nsu x Nu -dimensional matrix is required] - the one-element of this matrix indicates the soft-constrained system inputs.
  • Output soft-constraints indication: Esy: [Nsy x Ny -dimensional matrix is required] - the one-element of this matrix indicates the soft-constrained system oututs.

Note: RMPC_BLOCK Mask SOFT-CON enables to interpret the matrices in advanced way, i.e., it is sufficient to set the control inputs and/or system outputs that are not soft-constrained using the value inifinity (Inf) and these particular parameters will be skipped for soft-consraints implementation.

Supported robust MPC design methods

Here are listed currently supported robust MPC design methods (this list is going to be extended soon):

  • Kothare et al. (1996) - soft-con,
  • Wan et al. (2003) - soft-con,
  • Cao et al. (2005) - soft-con,
  • NSO and ACIS - soft-con,

Reference

The detail information about the considered form of soft constraint implementation from theoretical point of view can be found in the following paper. If you use the MUP's module SOFT-CON, then cite the paper, please.

@inproceedings{mup_soft_con,

author = {J. Oravec and M. Bako\v{s}ov\'a},

title = {Soft Constraints in the Robust MPC Design via {LMI}s},

booktitle = {IEEE American Control Conference},

pages = {3588-3593},

year = {2016},

address = {Boston, MA, USA},

}

RMPC_BLOCK Demo:

You can run the demo project of robust MPC design using the MATLAB/Simulink block RMPC_BLOCK to investigate the properties of the MUP's module SOFT-CON.

To run CLI-based demo of robust MPC design subject to soft constraints you can type:

mup_rmpc_soft_con_demo
or you can type:
mup_rmpcblock_soft_con_demo
to run demo of robust MPC design subject to soft constraints using the MATLAB/Simulink block RMPC_BLOCK.

Updated