**4. Model predictive controller design**

MPC is one of the advanced control theories that have been studied extensively by the research community. MPC provides the optimal solutions for the open-loop manipulated input trajectory that minimizes the difference between the predicted plant behavior and the desired plant behavior. MPC diverges from other control techniques in that the optimal control problem is solved on-line for the current state of the plant, rather than off-line as a feedback control policy. MPC has been broadly used in industries because of its ability to deal with the input and output constraints in the optimal control problems.

The success of model predictive control is greatly depending on the exactness in the open-loop horizon predictions, which in turn rely on the exactness of the plant models. Several issues about MPC still remain open and are of interest to researchers due to the lack of a theoretical basis such as offset-free properties and robustness of MPC toward the environment distur‐ bances. In this research, we study the ability of MPC controllers for the HEVs subject to input and output constraints.

In this research, the duties of MPC are applied to control the output torques generated and transferred among the components and the velocities of each shafts for achieving smoother clutch engagements and higher driving comfort. The RMPC schemes for uncertain systems subject to input and output saturated constraints are referred to the reference in [16]. The predictive control with soften output constraints is referred to the reference in [17] when a new MPC controller with output regions is developed to improve the robustness of the controller for handling input and output constraints and rejecting disturbances. NMPC conditions for stability with soften output constraints are referred to in reference [15]. Development of fault detection for control system using MPC is referred to in reference [21] where the MPC schemes can be reconfigured as the real-time for detecting faults to maintain the error free for the system. Some other newer strategies of HEVs and MPC are referred to in references [25, 26], and [27].

The formula in (24) can now be discretized into the following format:

2 1 1 1 1

*T s s T I*

ê ú é ù æ ö ê ú = = ç ÷ <sup>+</sup> ê ú è ø - ê ú

ë û ë û

, with

1 1

ê ú æ ö é ù = = ç ÷ <sup>+</sup> ê ú è ø ë û

*E T s s*

*R J*

1 1

, *ye* <sup>=</sup> *<sup>ω</sup>*<sup>1</sup> *TTorque*<sup>1</sup> '

Using comprehensive HEV modeling equations from (24) to (28), we can develop MPC

MPC is one of the advanced control theories that have been studied extensively by the research community. MPC provides the optimal solutions for the open-loop manipulated input trajectory that minimizes the difference between the predicted plant behavior and the desired plant behavior. MPC diverges from other control techniques in that the optimal control problem is solved on-line for the current state of the plant, rather than off-line as a feedback control policy. MPC has been broadly used in industries because of its ability to deal with the

The success of model predictive control is greatly depending on the exactness in the open-loop horizon predictions, which in turn rely on the exactness of the plant models. Several issues about MPC still remain open and are of interest to researchers due to the lack of a theoretical basis such as offset-free properties and robustness of MPC toward the environment distur‐ bances. In this research, we study the ability of MPC controllers for the HEVs subject to input

In this research, the duties of MPC are applied to control the output torques generated and transferred among the components and the velocities of each shafts for achieving smoother clutch engagements and higher driving comfort. The RMPC schemes for uncertain systems subject to input and output saturated constraints are referred to the reference in [16]. The predictive control with soften output constraints is referred to the reference in [17] when a new MPC controller with output regions is developed to improve the robustness of the controller for handling input and output constraints and rejecting disturbances. NMPC conditions for

1

*<sup>k</sup> A B <sup>k</sup> <sup>k</sup> R*

b

é ù

1

b

*k k C D <sup>k</sup>*

ë û

é ù

0 1

*e ee ee e ee ee*

*x Ax Bu y Cx Du*

ìï = + <sup>í</sup> ï = + î

&

0 1

0

0

, *ue* <sup>=</sup> *<sup>V</sup>*<sup>1</sup> *MICE* '

controllers to this HEV in the next section.

**4. Model predictive controller design**

input and output constraints in the optimal control problems.

where, *xe* <sup>=</sup> *<sup>θ</sup>*<sup>1</sup> *<sup>ω</sup>*<sup>1</sup> '

44 New Applications of Electric Drives

and output constraints.

on shaft 1.

11 1

. *TTorque*1 is the output torque (unmeasured)

(28)

0 0 ; 0 0

0 0

; 1

V

*I*

*RJ J <sup>J</sup>*

$$\begin{cases} \mathbf{x}\_{t \mapsto 1} = A\mathbf{x}\_t + Bu\_t \\ \mathbf{y}\_t = \mathbf{C}\mathbf{x}\_t + Du\_t \end{cases} \tag{29}$$

where *xt*, *ut*, and *yt* are state variables, inputs and outputs, respectively; *A*, *B*, *C*, and *C* are static matrices.

The above system is subject to the following input and output constraints:

$$\mu\_t \in \mathcal{U}, \Delta \mu\_t = \mu\_t - \mu\_{t-1} \in \Delta \mathcal{U}, \text{and } y\_t \in \mathcal{Y} \tag{30}$$

The optimal problem for this MPC controller tracking some output setpoints can be presented in the following objective function:

{ 1 11} 1 ' ' | | ,..., <sup>0</sup> min max min max | min max min ( , ( )) ( ) ( ) , subj , , , , for 0,1,..., 1 , , for 0,1,..., 1 ect to : *y Nu N t kt t kt tk tk Uu u <sup>k</sup> t k t k u t kt y t JUxt y r Qy r u R u u uu u u u k N y yy k N u* + - - + + ++ D D <sup>=</sup> + + + + ì ü ï ï = - - +D D é ù í ý ë û ï ï î þ Î D ÎD D = - é ùé ù ë ûë û Î =- é ù ë û D å @ | 1| | | 1| | | | | 0, for 0,1,..., 1 ( ), , , *k y t t t k t t kt t k t kt t k t t kt t kt t kt t kt k N x x t x Ax Bu u u u y Cx Du* ++ + + + +- + + + + = = - = = + = +D = + (31)

is solved at each time *t*, where *xt*+*<sup>k</sup>* <sup>|</sup>*<sup>t</sup>* denotes the predicted state vector at time *t* + *k*, obtained by applying the input increment sequence, *<sup>U</sup>* <sup>≜</sup>{Δ*ut*, ..., <sup>Δ</sup>*ut*+*Nu*−1}, and the new inputs, *ut*+*<sup>k</sup>* <sup>|</sup>*<sup>t</sup>* =*ut*+*<sup>k</sup>* <sup>−</sup>1|*<sup>t</sup>* + Δ*ut*+*<sup>k</sup>* <sup>|</sup>*t*, to the model equation (29) starting from the state *xt* = *x*(*t*). *yt*+*<sup>k</sup>* <sup>|</sup>*t* and *r* are the predicted output variables and the output set-points, respectively. The output setpoints can now be reformulated depending on the desired speeds by the driver or *r* =*r*(*t*). The weighting matrices of *Q* =*Q* ' ≥0 and *R* =*R* ' >0 are applied for the predicted outputs and the input increments.

For MPC regulator tracking setpoints, the steady-state variables are kept equal to the target set-points when there are no disturbances and constraints. Formula (31) is the one that we apply for the remainder of this chapter to test the ability of MPC to control the HEV velocities. In this research, we assume that the MPC outputs horizon length is set equal to the inputs control horizon, i.e., *Nu* = *Ny* = *Np* (equal to the predictive lengths). The quadratic objective junction *J*(*U* , *x*(*t*)) in equation (4.3) is minimized over a vector *Np* future prediction inputs starting from the state *x*(*t*).

For the MPC with hard constraints, by substituting *xt*+*Np*|*<sup>t</sup>* <sup>=</sup> *<sup>A</sup> Np x*(*t*) + ∑ *k*=0 *Np*−1 *<sup>A</sup>kBut*+*Np*−1−*<sup>k</sup>* , equation (31) can be rewritten as a function of the current state *x*(*t*) and the current setpoints *r*(*t*):

$$\Psi^{\rm I}(\mathbf{x}(t), r(t)) = \frac{1}{2}\mathbf{x}'(t)Y\mathbf{x}(t) + \min\_{\mathbf{U}} \left\{ \frac{1}{2}\mathbf{U}^{\dagger}H\mathbf{U}I + \mathbf{x}'(t)r(t)F\mathbf{U} \right\},\tag{32}$$

subject to the hard combined constraints of *GU* ≤*W* + *Ex*(*t*), where the column vector *U* ≜ Δ*ut*, ..., Δ*ut*+*Np*−<sup>1</sup> '∈ΔU is the MPC optimization vector; *H* =*H* ' >0, and then, *H* , *F* , *Y G*, *W* and *E* are proceeding matrices obtained from *Q*, *R* and *x*(*t*), *r*(*t*) in equation (4.1). Because that we use only the optimizer *U* , other terms involving *Y* are normally removed from equation (32). Therefore, the optimal problem in (4.4) will be a purely quadratic formula and depending on only the current state variables *x*(*t*), and the current set-points *r*(*t*). Implementation of MPC always requires the real-time solution of each quadratic program for each discrete time steps.

In fact, the system may have always both input and output constraints. Difficulties will be arised due to the inability to respond to all output constraints because of the already input constraints. Since MPC is applied for the real-time implementation, any infeasible solution of the optimal control problems cannot be tolerated. Basically if the input constraints are set from the system physical limits and usually considered as the hard/unchanged constraints. At the same time, if the system outputs constraints are the measured velocities and the unmeasured torques which are not so much strictly imposed and can be violated somewhat during the movement of the vehicles. In order to guarantee the system stability if some outputs may violate the constraints, equation (32) can be transformed to some other soften constraints.

$$\begin{aligned} \Psi\left(\mathbf{x}(t), r(t)\right) &= \frac{1}{2}\mathbf{x}'(t)\mathbf{Y}\mathbf{x}(t) + \min\_{\mathcal{U}} \left\{ \frac{1}{2}\mathbf{U}H\mathbf{U} + \mathbf{x}'(t)r(t)F\mathbf{U} + \frac{1}{2}\boldsymbol{\varepsilon}\_{i}'(t)\boldsymbol{\Lambda}\boldsymbol{\varepsilon}\_{i}(t) \right\}, \\ \text{subject to } \boldsymbol{\varepsilon}\_{i}(t) &= \left[\boldsymbol{\varepsilon}\_{y}; \boldsymbol{\varepsilon}\_{u}\right]\_{1}\boldsymbol{y}\_{\text{min}} - \boldsymbol{\varepsilon}\_{y} \leq \boldsymbol{y}\_{t\*\text{k}\mathfrak{t}} \leq \boldsymbol{y}\_{\text{max}} + \boldsymbol{\varepsilon}\_{y} \text{ and } \boldsymbol{u}\_{\text{min}} - \boldsymbol{\varepsilon}\_{y} \leq \boldsymbol{u}\_{t\*\text{k}\mathfrak{t}} \leq \boldsymbol{u}\_{\text{max}} + \boldsymbol{\varepsilon}\_{u} \end{aligned} \tag{33}$$

The new weighting items, *ε<sup>i</sup>* (*t*), are added into the MPC soften objective function: Λ>0 (generally some small values) become the weighting factors, *ε<sup>i</sup>* (*t*) are represent the violation penalty terms (*ε<sup>i</sup>* (*t*)≥0) for the scheme objective function. These values will keep the output violations at low levels until the constrained solution can be appeared. Further reference of the MPC's subject to these soften state constraints can be read from reference [16].

In order to increase the ability of MPC to get on-line solutions for some critical times, some of the output set-points can be temporally deleted since if some output set-points are omitted, the system will become looser and then, the possibility that MPC can find some solutions will increase. Temporally omitting of some output set-points can also be performed by putting some zeros into the weighting matrix *Q* in equation (33). The robustness of MPC scheme can be also increased if some output set-points become relaxed into regions rather than in some hard values. If the system output constraints are set into output regions, the MPC scheme will need to change slightly because the set-points *r*(*t*) in equation (33) now turn regions. In this formula, output regions are defined by the minimum and maximum limits in a desired output range. The maximum value is the upper limit and the minimum value is the lower limit, *ylower* ≤ *yt*+*<sup>k</sup>* <sup>|</sup>*<sup>t</sup>* ≤ *yupper*. From this range, a modified MPC objective function for the output regions is developed as:

$$\begin{split} \min\_{\mathbf{U}\triangleq\big[\mathbf{A}\_{1\sim\cdots\sim\mathbf{A}\_{t\sim\mathbf{U}}}\big]} & \left\{ \mathbf{J}(\mathbf{U},\mathbf{x}(t)) = \sum\_{k=0}^{N\_{y}-1} \left[ \mathbf{z}\_{t\sim\mathbf{M}t} \big\Vert \mathbf{Q} \mathbf{z}\_{t\times\mathbf{M}t} + \mathbf{\Delta u}\_{t\times\mathbf{k}}^{\top} \mathbf{R} \Delta \mathbf{u}\_{t\times\mathbf{k}} \right] \right\}, \\ \text{where } \mathbf{z}\_{t\times\mathbf{M}t} \ge \mathbf{0}; \mathbf{z}\_{t\times\mathbf{M}t} = \mathbf{y}\_{t\times\mathbf{M}t} - \mathbf{y}\_{\text{upper}} \text{ for } \mathbf{y}\_{t\times\mathbf{M}t} > \mathbf{y}\_{\text{upper}}; \\ \mathbf{z}\_{t\times\mathbf{M}t} = \mathbf{y}\_{\text{lower}} - \mathbf{y}\_{t\times\mathbf{M}t} \text{ for } \mathbf{y}\_{t\times\mathbf{M}t} < \mathbf{y}\_{t\times\mathbf{M}t}; \mathbf{z}\_{t\times\mathbf{M}t} = \mathbf{0} \text{ for } \mathbf{y}\_{t\times\mathbf{M}t} \le \mathbf{y}\_{t\times\mathbf{M}t} \le \mathbf{y}\_{\text{upper}} \end{split} \tag{34}$$

When the system outputs are still laid inside the desired regions, there is no control action being taken, due to none of the control outputs are violated (*zt*+*<sup>k</sup>* <sup>|</sup>*<sup>t</sup>* =0). But if some outputs come to violate the desired regions, MPC regulator in equation (34) will activate the objective function, find out optimal inputs action to push the outputs back to the desired regions. Further MPC developments with output constraints deletion and output regions can be referred in reference [17]. We now illustrate the robustness of MPC for soften output constraints and the constraint regions in the following part.
