188 F. Zhao, Y. P. Gupta / ISA Transactions 44 (2005) 187–198observer-based MPC with the consideration of a In this paper, a simple disturbance predictordisturbance model, but sometimes it may be unre- ͑SDP͒ is proposed for a simpliﬁed MPC ͑SMPC͒alistic to model the disturbances of chemical pro- algorithm described in the next section. The pro-cesses as ﬁltered white noise. Muske and posed disturbance predictor exploits the advantageBadgwell ͓6͔ and Pannocchia and Rawlings ͓7͔ offered by the SMPC algorithm since the predic-have proposed that improved regulatory perfor- tion for the disturbance needs to be made for amance can be obtained by the use of state or input single point on the prediction horizon. Initially, thedisturbance models and they have derived condi- effect of the disturbance on the process output istions guaranteeing zero steady-state offset. For assumed to be the step response of a ﬁrst-ordersimplicity, Chien et al. ͓8͔ have proposed to pre- system. Then the applicability of the proposed pre-dict the effects of external disturbances through dictor is extended to other disturbances by em-linear extrapolation of the slope of the unmodeled ploying a tuning parameter and using the availablesignals. A tuning parameter is proposed to handle information on the unmodeled signals. The tuningdifferent disturbances. However, the adverse effect parameter can be obtained online using an optimi-of measurement noise on the prediction is not con- zation scheme. The effect of the measurementsidered. A method for eliminating the steady-state noise on the disturbance prediction is considered.offset caused in the control of integrating pro- The regulatory performance of the proposed pre-cesses due to sustained disturbances has been pro- dictor is presented by considering three differentposed by Gupta ͓9͔. transfer functions for the disturbance, namely,
F. Zhao, Y. P. Gupta / ISA Transactions 44 (2005) 187–198 189ﬁrst-order, second-order, and one containing inte-gration. A comparison is also made with the com-monly used disturbance prediction.2. SMPC algorithm The standard MPC is composed of a predictor Fig. 1. Estimation of the effects of unmeasured disturbance.and an optimizer. The predictor provides the pre-dictions for the process output through a processmodel. Based on these predictions, the optimizer ment noise and deterministic disturbances. Mea-generates a sequence of control moves to satisfy a surement noise often has high frequency, its detri-speciﬁed objective function. For a SISO system, mental effects can be effectively reduced by low-the objective function to be minimized may be pass ﬁlters. Deterministic disturbances ͑measuredformulated as and unmeasured͒ usually have low frequency and Np can cause controlled variables to seriously deviate J MPC͑ k ͒ ϭ ͚ ͓ R ͑ kϩi ͒ Ϫy ͑ kϩi ͔͒ 2 ˆ from their set points. The measured disturbances iϭ1 may be handled effectively through feed-forward Nm control. But chemical processes often experience ϩ ͚ ⌬u ͑ kϩ jϪ1 ͒ 2 , ͑1͒ the deterministic disturbances which are not mea- jϭ1 sured or not measurable. The handling of unmea-where y ( kϩi ) and ⌬u ( kϩ jϪ1 ) are related ˆ sured disturbances presents a challenge for imple-through the process model and there are con- menting model-based control schemes because thestraints on process variables. The solution of the future effects of disturbances over the predictionearlier optimization problem may be obtained horizon are needed. The disturbance transfer func-through linear programming ͑LP͒. However, the tion, G d , and its input d ͑Fig. 1͒ are often un-computational effort for solving the LP problem is known. In the standard MPC algorithms, the dif-a strong function of the prediction horizon N p and ference between the current process output and thethe control horizon N m . Since this optimization current model output, D ( k ) , is calculated and as-problem needs to be solved at every control in- sumed to be constant over the prediction horizon.stant, a SMPC algorithm ͓10,11͔ has been pro- The original SMPC algorithm ͓10,11͔ also makesposed in the literature. It reduces the computa- this assumption and calculates the effect of distur-tional effort signiﬁcantly because in this algorithm bances at P steps ahead from the following equa-only one control move into the future needs to be tion:calculated and the error is minimized usually at ˆ D ͑ kϩ P ͒ ϭD ͑ k ͒ ϭy ͑ k ͒ Ϫy m ͑ k ͒ . ͑3͒one point P steps ahead. P is a tuning parameter inthis algorithm. As P is increased, the control In the following section, a SDP is proposed to pro-moves become smaller and the robustness of the vide a more reasonable prediction for D ( kϩ P ) .control system increases. As P is decreased, thereverse happens. For this algorithm, the objective 3.1. A simple disturbance predictorfunction in Eq. ͑1͒ simpliﬁes to Consider Fig. 1 and assume that the process J SMPC͑ k ͒ ϭ ͓ R ͑ kϩ P ͒ Ϫy ͑ kϩ P ͔͒ 2 . ˆ ͑2͒ model is perfect, i.e., G m ϭG p , and G d is a ﬁrst-The robust stability of the SMPC algorithm has order transfer function of the form: G dbeen analyzed and has been found to be essentially ϭK d / ( d sϩ1 ) . We make these assumptions toequivalent to the DMC algorithm ͓11͔. The viabil- derive an expression for a disturbance predictor.ity of the SMPC algorithm has been demonstrated These assumptions will be relaxed later. If a stepon an industrial distillation column ͓12͔. disturbance of magnitude A enters the block G d at time instant k 0 , its effect on the process output is3. Proposed disturbance predictor given by Chemical processes are usually operated under D ͑ k 0 ϩi ͒ ϭAK d ͑ 1Ϫe ϪiT/ d ͒ , iϭ0,1,2,... .disturbances, which can be classiﬁed as measure- ͑4͒
190 F. Zhao, Y. P. Gupta / ISA Transactions 44 (2005) 187–198From Eq. ͑4͒, the effect of the disturbance on the lim ␣ ϭ1. ͑10b͒process output at different times can be expressed d →ϱas When ␣ϭ1, Eq. ͑8͒ provides a linear change in D ͑ kϪ1 ͒ ϭAK d • ͓ 1Ϫe Ϫ ͑ kϪk 0 Ϫ1 ͒ T/ d ͔ , ͑5a͒ D ( kϩ P ) . To relax the assumptions made at the beginning D ͑ k ͒ ϭAK d • ͓ 1Ϫe Ϫ ͑ kϪk 0 ͒ T/ d ͔ , ͑5b͒ of this subsection, the parameter ␣ in Eq. ͑8͒ can be considered a tuning parameter. This parameter D ͑ kϩ P ͒ ϭAK d ͓ 1Ϫe Ϫ ͑ kϩ PϪk 0 ͒ T/ d ͔ can be set between 0 and 1.0 for different distur- bances and for model mismatch. With a value for ϭg•e ϪT/ d • ͑ 1Ϫe Ϫ PT/ d ͒ ϩD ͑ k ͒ , ␣, Eq. ͑8͒ can be used for disturbance prediction if ͑6͒ there is no noise on the process output signals. Since measurement noise is unavoidable, its effectwhere on D ( k ) and D ( kϪ1 ) will make the prediction of D ( kϩ P ) difﬁcult. To reduce the adverse effect of gϭAK d e Ϫ ͑ kϪk 0 Ϫ1 ͒ T/ d . measurement noise on the prediction, the term g inBecause A, K d , d , and k 0 are unknown, the term Eq. ͑6͒ can be estimated based on a number ofD ( kϩ P ) cannot be calculated directly. However, samples L ( Lу2 ) instead of only two samples:A, K d , and k 0 can be eliminated by using the dif- D ( k ) and D ( kϪ1 ) , as follows.ference between D ( k ) and D ( kϪ1 ) . These terms Deﬁne: Q ( kϪ j ) ϭD ( kϪ j ) ϪD ( kϪLϩ1 ) ; 0are known at the current control instant and the р jрLϪ1. Then,difference between them from Eqs. ͑5a͒ and ͑5b͒ Q ͑ k ͒ ϪQ ͑ kϪ1 ͒ ϭg• ͑ 1Ϫe ϪT/ d ͒ . ͑11͒can be expressed as Assume the time series ͕ Q ( kϪ j ) ,0р jрLϪ1 ͖ D ͑ k ͒ ϪD ͑ kϪ1 ͒ ϭg• ͑ 1Ϫe ϪT/ d ͒ . ͑7͒ can be ﬁtted by a straight lineBy substituting the value of the term g from Eq. Q ͑ kϪ j ͒ ϭ ␦ • ͑ LϪ1Ϫ j ͒ ; 0р jрLϪ1.͑7͒ into Eq. ͑6͒, D ( kϩ P ) and ␣ can be expressed ͑12͒as The coefﬁcient ␦, representing the slope of the D ͑ kϩ P ͒ ϭ ␣ • P• ͓ D ͑ k ͒ ϪD ͑ kϪ1 ͔͒ ϩD ͑ k ͒ , line, can be estimated by minimizing ͑8͒ LϪ1 J ͑ ␦ ͒ ϭ ͚ ͓ Q ͑ kϪ j ͒ Ϫ ␦ ͑ LϪ1Ϫ j ͔͒ 2 . ͑13͒ ˆ 1Ϫe Ϫ PT/ d jϭ0 ␣ϭ T/ d . ͑9͒ P͑ e Ϫ1 ͒ Because Q ( k ) ϪQ ( kϪ1 ) ϭ ␦ , the term g in Eq. ˆIf one happens to know d then the parameter ␣ ͑11͒ can be expressed asneeded in Eq. ͑8͒ can be calculated from Eq. ͑9͒,otherwise it needs to be set. There are two special ␦ ˆ gϭ . ͑14͒cases for parameter ␣: step output disturbance and 1Ϫe ϪT/ dramp output disturbance. If the disturbance causesa step change in output, then from Eq. ͑9͒: By substituting the value of g from Eq. ͑14͒ into Eq. ͑6͒, the prediction of D ( kϩ P ) can be ex- lim ␣ ϭ0. ͑10a͒ pressed as d →0 D ͑ kϩ P ͒ ϭ ␣ • P• ␦ ϩD ͑ k ͒ . ˆ ˆ ͑15͒When ␣ϭ0, Eq. ͑8͒ degenerates to: D ( kϩ P )ϭD ( k ) . This is the value used in the original The tuning parameter ␣ has the same expressionSMPC and in this case, the assumption made in as shown in Eq. ͑9͒. The physical interpretationthe SMPC is valid because the effect of the distur- for Eq. ͑15͒ is that the slope of the process/modelbance is indeed a constant over the prediction ho- mismatch signals is estimated based on D ( k ) andrizon. However, if the disturbance affects the out- its historical data. Then the future effect of theput in a ramp fashion, then external disturbance at next P steps ahead is pre-
F. Zhao, Y. P. Gupta / ISA Transactions 44 (2005) 187–198 191dicted through linear extrapolation. The tuning pa- match, D ( kϩ P ) can be well predicted with anrameter ␣ is used to counteract the prediction error appropriate ␣ value. However, if the contributionscaused by the linear approximation. If the time to D ( k ) were primarily due to fundamental errorsconstant of the disturbance transfer function can in the process model structure or measurementbe estimated, ␣ can be determined from Eq. ͑9͒. If noise ͓2͔, it will be beneﬁcial to set ␣ϭ0 becausethis time constant is unavailable, it is proposed the uncertainty in the value of D ( kϩ P ) is high.that it be set equal to the dominant time constant To achieve an improved regulatory performance,of the process model. As an alternative, ␣ can be the tuning parameter ␣ can be searched within thetuned through trial and error. It can be expected range ͑0,1͒ by trying different values of ␣ overthat a large L will result in a smooth but sluggish successive time periods between one ‘‘steady-prediction of D ( kϩ P ) . A trade off is needed in state’’ to another. The objective function to bethe selection of an appropriate value of L. minimized over the time periods was chosen as Equation ͑15͒ is the mathematical model for the Ͳ M Mproposed disturbance predictor. Considering its 1simplicity, it is referred to as a SDP, which can be J ͑ ␣ ͒ ϭ ͚ i• ͉ RϪy ͑ i ͒ ͉ ͚ ͉ D ͑ i ͒ ϪD 0͉ , iϭ1 M iϭ1incorporated into the SMPC algorithm directly. ͑16͒The parameters ␣ and L need to be determined inusing the SDP. A simple way to obtain ␣ and L is where y ( i ) is the controlled process output, and Mto assume that the disturbance model is ﬁrst-order is the number of control intervals in the time pe-and estimate d from the observed values of riod over which a value of ␣ is used. Each timeD ( k ) . Then ␣ and L can be directly obtained from period represents one iteration and D 0 is theEqs. ͑9͒ and ͑20͒, respectively. A better value of ␣ model mismatch signal at the beginning of eachmay be obtained by using the optimization algo- iteration. The numerator term in Eq. ͑16͒ repre-rithm proposed in following section if new distur- sents the integral of time-weighted absolute errorbances do not enter the process too frequently. ͑ITAE͒. The denominator term in Eq. ͑16͒ is intro- duced to allow for different magnitudes of the dis- turbance that may be encountered. After an opti-3.2. Determination of ␣ and L online mum value of ␣ is found, one may check if the number of sample data, L, is appropriate. This de- The tuning parameter ␣ depends on P and d as termination may be done as follows.shown in Eq. ͑9͒. For a certain disturbance, the At each control interval, the disturbance predic-tuning parameter ␣ decreases/increases as the pre- ˆ tion, D ( kϩ P ) , is obtained. As time goes on, thediction length P increases/decreases. However, if a ˆ prediction forms a time series ͕ D ( kϩ PϪi ) , idisturbance on the process output produces a step у0 ͖ , which is estimated based on the noisy signalchange or a ramp change, ␣ should be set equal to D ( k ) and its historical data. Therefore, the time0 or 1, respectively, and should not be affected by ˆthe value of the tuning parameter P. The control series ͕ D ( kϩ PϪi ) , iу0 ͖ will ﬂuctuate if theinterval T and parameter P are set when one sample data for estimating ␦ is not long enough.implements the SMPC algorithm. So ␣ only de- This ﬂuctuation can be regarded as noise. A prac-pends on the dynamics of external disturbances. tical method for investigating the noise level of ˆ time series, ͕ D ( kϩ PϪi ) , iу0 ͖ , is to estimateThe value of the tuning parameter ␣ decreases/increases as the dynamics of a disturbance be- its covariance . Considering the time series to becomes fast/sluggish. Since a ﬁxed ␣ may not pro- non-stationary, one can estimate as follows ͓13͔:vide satisfactory disturbance prediction for a time- ˜ ˆvarying d , it is better to update ␣ periodically. n ͑ k ͒ ϭn ͑ kϪ1 ͒ ϩ • ͓ ͉ D ͑ kϩ PϪ2 ͒ ϪD ͑ kϩ P The SDP is developed based on the available Ϫ2 ͒ ͉ Ϫn ͑ kϪ1 ͔͒ , ͑17a͒signal D ( k ) and its history data. The contributionsto signal D ( k ) include deterministic disturbances, ϭ1.78n ͑ k ͒ , ͑17b͒model mismatch and measurement noise. If thecontributions to D ( k ) were primarily due to low- where n ( k ) is the average noise level of time se-frequency deterministic disturbances and model ˆ ries ͕ D ( kϩ PϪi ) , iу0 ͖ , is an exponentialparameter mismatch, such as the process gain mis- smoothing constant, which is usually chosen be-
192 F. Zhao, Y. P. Gupta / ISA Transactions 44 (2005) 187–198 ˜ ˆtween 0 and 0.3. D ( kϩ PϪ2 ) , smoothed D ( k Step 3: Does one of the value of objective func-ϩ PϪ2 ) , is determined from ͓13͔ tions found in step 2 lower than the value found previously, i.e., using ␣ ( iϪ1 ) ? If yes, go to step 1 5; if not, go to step 4.˜ ˆ ˆD ͑ kϩ PϪ2 ͒ ϭ • ͓ Ϫ3D ͑ kϩ PϪ4 ͒ ϩ12D ͑ k Step 4: Check if, ͉⌬␣͉Ͻ⑀? If yes, an optimized ␣ 35 has been found. If not, set ⌬␣ϭ⌬␣/ and go to ˆ ϩ PϪ3 ͒ ϩ17D ͑ kϩ PϪ2 ͒ step 2. Step 5: Set ␣ ( i ) ϭ2 ␣ ( i ) Ϫ ␣ ( iϪ1 ) and set L ˆ ˆ ϩ12D ͑ kϩ PϪ1 ͒ Ϫ3D ͑ kϩ P ͔͒ . according to Eq. ͑20͒. Then go to step 6. Step 6: Check if, J ͓ ␣ ( i ) ͔ ϽJ ͓ ␣ ( iϪ1 ) ͔ ? If yes, ͑18͒ set ␣ ( iϪ1 ) ϭ ␣ ( i ) and go to step 5; if not, then go to step 4.It is desirable to have a small covariance , whichcan be achieved by increasing the data length forestimating ␦. However, a large L will result in un-timely predictions of the disturbances. The data 4. Analysis of steady-state offsetlength, L, can be determined by satisfying the fol-lowing requirement: Many model-based control schemes result in steady-state offset under ramp output disturbances, / 0р ␤ , ͑19͒ which often occurs in case of an integrating pro- cess. In this section, we analyze the offset of thewhere 0 is the covariance of measurement noise, SMPC algorithm, which uses the proposed SDP␤ ͑␤у1͒ is a threshold. Note from Eq. ͑15͒, the under the following assumptions.ratio / 0 depends on ␣ and P. It is obvious that ͑1͒ The plant-model mismatch is not larger / 0 ϭ1 if ␣ϭ0. Simulations show that if one enough to make the system unstable.selects Lϭ P and ␤ϭ2, Eq. ͑19͒ is always satisﬁed ͑2͒ Under a deterministic disturbance, the con-irrespective of the value of ␣. However, if ␣ is trol system reaches a steady state ( y ss ,u ss) ,small, Eq. ͑19͒ is still satisﬁed if one selects L where there are no active constraints.Ͻ P. This is because with a small value of ␣, the ͑3͒ Set point R is a constant.ﬂuctuation of ␦ will contribute little to increase ˆcovariance . So the selection of L depends on ␣. The SMPC algorithm minimizes the predictedA guideline for selecting L is as follows: error at P steps ahead, that is J SMPC͑ k ͒ ϭe 2 ͑ kϩ P ͒ . ͑21͒ Set, LϭCeil͓ ␣ ͑ PϪ2 ͒ ϩ2 ͔ , ͑20͒ When the manipulated variable is unconstrained, the predicted error e ( kϩ P ) will be driven to zero.where Ceil( x ) is a function that rounds x to the In other words,next higher integer. Therefore, with a certain ␣value, a corresponding L can be determined. Con- RϪy ͑ kϩ P ͒ ϭe ͑ kϩ P ͒ ϭ0. ˆ ͑22͒sidering its simplicity and good convergence prop-erty, the Hooke-Jeeves pattern search method ͓14͔ With the SDP, the predicted output of the SMPCwas used to search for the tuning parameter ␣. The algorithm at P steps ahead isproposed procedure for determining ␣ and L is as y ͑ kϩ P ͒ ϭy m ͑ kϩ P ͒ ϩD ͑ k ͒ ϩ ␣ • P• ͓ D ͑ k ͒ ˆfollows. Step 1: Initialize L ͓ LϭCeil( P/2ϩ1 ) ͔ , ␣, step ϪD ͑ kϪ1 ͔͒ . ͑23͒size ⌬␣, step size reduction factor ͑Ͼ1͒, termi-nation tolerance ⑀ on ␣ ͑⑀Ͼ0͒, exponential Now, D ( k ) ϭy ( k ) Ϫy m ( k ) and at steady-state,smoothing constant and iteration number of op- y ( k ) ϭy ( kϪ1 ) ϭy ss . By substituting this expres-timization ( iϭ0 ) . Then ﬁnd the value of objective sion for D ( k ) , Eq. ͑23͒ can be written asfunction using ␣ ( iϭ0 ) . y ͑ kϩ P ͒ ϭy m ͑ kϩ P ͒ ϩy ssϪy m ͑ k ͒ ϩ ␣ • P• ͓ D ͑ k ͒ ˆ Step 2: Set iϭiϩ1. Find the two values of ob-jective function using ␣ ( i ) ϭ ␣ ( iϪ1 ) Ϯ⌬ ␣ . ϪD ͑ kϪ1 ͔͒ . ͑24͒
F. Zhao, Y. P. Gupta / ISA Transactions 44 (2005) 187–198 193By substituting y ( kϩ P ) from Eq. ͑24͒, Eq. ͑22͒ ˆ earlier two SMPC algorithms. In this study, thecan be written as performance of a MPC algorithm with objective function given in Eq. ͑1͒ was also checked. In the Rϭy ssϩy m ͑ kϩ P ͒ Ϫy m ͑ k ͒ ϩ ␣ • P• ͓ y m ͑ kϪ1 ͒ MPC algorithm, the effects of disturbance were Ϫy m ͑ k ͔͒ . ͑25͒ assumed to be constant throughout the prediction horizon as is commonly done. To provide a similar For a self-regulating process, when the control tuning in the MPC algorithm, the move suppres-system reaches steady state after regulating a regu- sion was chosen such that the response of thelar disturbance, it is obvious that MPC algorithm to a step change in set-point matched the corresponding response of the SMPC y m ͑ kϩ P ͒ ϭy m ͑ k ͒ ϭy m ͑ kϪ1 ͒ ϭK m u ss . algorithm. To avoid confusion among the various ͑26͒ response curves, only the performance indicesBased on Eq. ͑26͒, Eq. ͑25͒ reduces to y ssϭR. In ͑ITAE values͒ for the standard MPC algorithm areother words, there will be no offset. reported. In ﬁnding the optical values of ␣ and L, For an integrating process, under steady state, the magnitudes of the disturbance and periods be-the following expressions can be written: tween steady states were allowed to vary within speciﬁed limits. The magnitude A of the distur- y m ͑ kϩ P ͒ Ϫy m ͑ k ͒ ϭ PK m Tu ss , ͑27a͒ bance was selected randomly to be in the range of y m ͑ k ͒ Ϫy m ͑ kϪ1 ͒ ϭK m Tu ss . ͑27b͒ Ϯ͑1,2͒ for the SISO examples and to be in the range of Ϯ͑0.1,0.2͒ for the MIMO example. TheIf the disturbance is a regular output disturbance, duration of each new disturbance was selectedthen u ssϭ0. Therefore, Eq. ͑25͒ reduces to y ss randomly to consist of 100–200 control intervals.ϭR, irrespective of the value of ␣. If the distur- The value of M in Eq. ͑16͒ was taken as 100. Inbance is a ramp output disturbance, then ␣ϭ1. general, M is selected to cover the transient por-With this value of ␣, Eq. ͑25͒ again reduces to: tion for each disturbance. The effectiveness of they ssϭR. values obtained for ␣ and L was tested through the It can be seen from the earlier analysis that the following three examples. In the simulations, theproposed SMPC algorithm achieves zero steady disturbance and noise were started at kϭ5. Thestate offset no matter whether the disturbance is time period for each of these tests consisted of 200self-regulating or nonself-regulating. It may be control intervals.noted that a self-regulating process cannot reach asteady state if it is subjected to a ramp output dis- 5.1. Example 1—Regular SISO processturbance because the system would be uncontrol-lable. This example considers the following process and disturbance models:5. Control examples Ke Ϫ s G p͑ s ͒ ϭ , ͑28͒ ͑ 1 sϩ1 ͒͑ 2 sϩ1 ͒ The proposed SDP was incorporated into theSMPC algorithm and the effectiveness of theSMPC algorithm thus improved was investigated 4.0 G d͑ s ͒ ϭ . ͑29͒on three example problems. In order to provide an ͑ 10sϩ1 ͒ 2indication of the performance improvement in apractical situation, we have considered time de- The values of the process parameters are: Klays, interactions between variables ͑MIMO case͒, ϭ2.0, 1 ϭ15, 2 ϭ10, and ϭ5. The control in-model mismatch, measurement noise, varying terval Tϭ1. The number of intervals for the open-magnitudes of disturbances, and different distur- loop response to settle is taken as Nϭ75. The pa-bance models. The regulatory performance of the rameter Pϭ13. The control parameters for theproposed SMPC is compared with that of the MPC algorithm are N p ϭ75, N m ϭ2, andoriginal SMPC where the effect of disturbances at ϭ0.125. A unit step change in disturbance d ( AP steps ahead is calculated from Eq. ͑3͒. The same ϭ1 ) is considered. The following three cases areprocess model and parameter P were used in the considered.
194 F. Zhao, Y. P. Gupta / ISA Transactions 44 (2005) 187–198Fig. 2. Suppression of a regular disturbance without noise, Fig. 3. Suppression of a regular disturbance with measure-example 1. ment noise, example 1. Case 1. In this case we assume that G d is un- posed SDP provides better disturbance suppres-known and the process output is noise free. To sion than the commonly used disturbance predic-choose ␣, we assume d ϭ 1 ϭ15. Then from Eq. tion.͑9͒, ␣ϭ0.64 and we set Lϭ2. The results obtainedby the two SMPC algorithms are shown in Fig. 2. 5.2. Example 2—Integrating SISO processThe subscripts p and o on the variables in this andall the following ﬁgures refer to the proposed and This example considers two disturbance modelsoriginal SMPC algorithms, respectively. The ITAE and the following process model:values for the proposed SMPC, original SMPCand the MPC algorithms were 465.9, 1738.2, and Ke Ϫ s1784.1, respectively. G p͑ s ͒ ϭ . ͑30͒ s ͑ sϩ1 ͒ Case 2. In this case we consider noise on theprocess output. The noise is assumed to be nor- The values of the process parameters are Kϭ0.5,mally distributed with zero mean and covariance ϭ20, and ϭ5. The control interval Tϭ1. The 0 ϭ0.03. Starting from an initial value of 0.2, the measurement noise is normally distributed withparameter ␣ was found to be 0.49 by using 18 zero mean and covariance 0 ϭ0.03. The param-iterations of the proposed optimization procedure, eter Pϭ16. The control parameters for the MPCand the corresponding L was 8. The results ob- algorithm are N p ϭ75, N m ϭ3, and ϭ0.08. A unittained by the two SMPC algorithms are shown in step change in disturbance d ( Aϭ1 ) is consid-Fig. 3. For the proposed SMPC, ITAEϭ1146.2, ered. The following three cases are investigated. / 0 Ϸ1.67 and for the original SMPC, ITAE Case 1. This case considers a second-order dis-ϭ2143.9. For the MPC, ITAEϭ2186.9. turbance as described in Eq. ͑29͒. Starting from an Case 3. In this case we investigate the robust- initial value of 0.2, the parameter ␣ was found toness of the proposed SMPC for disturbance rejec- be 0.42 by using 17 iterations of the proposed op-tion under process uncertainties. The process pa- timization procedure, and the corresponding L wasrameters ͑K, 1 , and ͒ were changed by Ϯ20%, 10. The results obtained by the two SMPC algo-one at a time while the other two parameters were rithms are shown in Fig. 4. For the proposedmaintained at their nominal values. The other con- SMPC, ITAEϭ1631.7, / 0 Ϸ1.47 and for theditions were the same as in case 2. The ITAE val- original SMPC, ITAEϭ2679.9. For the MPC,ues for the proposed SMPC, the original SMPC ITAEϭ2786.9.and the MPC algorithms are presented in Table 1. Case 2. This case considers a disturbance whichThe results for this example show that the pro- contains an integration as follows:
F. Zhao, Y. P. Gupta / ISA Transactions 44 (2005) 187–198 195Table 1ITAE values for example 1—Regular SISO process. New values of process parametersAlgorithm Kϭ2.4 Kϭ1.6 1 ϭ18 1 ϭ12 ϭ6 ϭ4Proposed SMPC 985.1 1438.2 1415.2 1129.4 1231.5 1165.1Original SMPC 1762.8 2780.0 2203.0 2234.5 2097.5 2191.5Standard MPC 1796.9 2836.6 2231.2 2278.6 2141.5 2232.7 0.1 Table 2. The results for this example show that the G d͑ s ͒ ϭ . ͑31͒ proposed SDP provides better disturbance sup- s ͑ 10sϩ1 ͒ pression than the commonly used disturbance pre-Starting from an initial value of 0.2, the parameter diction.␣ was found to be 1.0 by using 14 iterations of theproposed optimization procedure, and the corre- 5.3. Example 3—MIMO processsponding L was 16. Figure 5 shows the results ofthe two SMPC algorithms. As expected for this This example considers a two-product distilla-situation, the original SMPC results in an offset. tion column separating a binary feed. Based onThe proposed SMPC brings the controlled vari- energy balance, the column has the following dy- namics ͓15͔: ͫ ͬable back to its set point. For the proposed SMPC,ITAEϭ1413.2, / 0 Ϸ1.81 and for the originalSMPC, ITAEϭ33587.0. For the MPC, ITAE 0.0747e Ϫ3s Ϫ0.0667e Ϫ2sϭ33430.0. Case 3. In this case we investigate the robust- ͫ ͬ y1 12sϩ1 15sϩ1 y 2 ϭ 0.1173e Ϫ3.3s Ϫ0.1253e Ϫ2s ͫ ͬ u1 u2ness of the proposed SMPC for disturbance rejec- 11.75sϩ1 10.2sϩ1 ͫ ͬtion under process uncertainties. Again, the pro-cess parameters ͑K, 1 , and ͒ were changed by 0.70e Ϫ5sϮ20%, one at a time while the other two param- 14.4sϩ1eters were maintained at their nominal values. The ϩ 1.3e Ϫ3s •A. ͑32͒other conditions were the same as in case 2. TheITAE values for the proposed SMPC, the original 12sϩ1SMPC, and the MPC algorithms are presented inFig. 4. Suppression of a regular disturbance with measure- Fig. 5. Suppression of an integrating disturbance with mea-ment noise, example 2. surement noise, example 2.
196 F. Zhao, Y. P. Gupta / ISA Transactions 44 (2005) 187–198Table 2ITAE values for example 2—Integrating SISO process. New values of process parametersAlgorithm Kϭ0.6 Kϭ0.4 ϭ24 ϭ16 ϭ6 ϭ4Proposed SMPC 1268.0 2030.8 1794.6 1529.6 1465.0 1460.2Original SMPC 28110.0 41648.0 34002.0 33175.0 33655.0 33517.0Standard MPC 27996.0 41415.0 33859.0 33005.0 33502.0 33357.0In this example, the manipulated variables are re- bottom product compositions are considered to beﬂux ﬂow rate ( u 1 ) and reboiler ﬂow rate ( u 2 ) , and equally important, their ITAE values are weightedthe controlled variables are distillate composition equally and added together. The following two( y 1 ) and bottoms composition ( y 2 ) . The major cases are investigated.disturbance is a change in feed composition ͑A͒. Case 1. Starting from an initial value of 0.5, theThe control interval Tϭ1 min. To express the time parameters ␣ 1 and ␣ 2 were found to be 0.550 anddelays in Eq. ͑32͒ as multiples of the control in- 0.587, respectively, by using 59 iterations of theterval, the time delay 3.3 is changed to 3. All the proposed optimization procedure, and the corre-initial states are zero. The constraint on the control sponding number of samples were L 1 ϭL 2 ϭ8.move is ͉ ⌬u max͉р0.2. The control parameters for Considering the interaction between the two con-the SMPC algorithm for both controlled variables trolled variables, one half of the optimized valuesare considered equal: Pϭ12. The control param- of ␣ 1 and ␣ 2 were used, that is, ␣ 1 ϭ0.275, ␣ 2eters for the MPC algorithm are N p ϭ60, N m ϭ3, ϭ0.294. Figs. 6 and 7 show the control resultsand ϭ0.036. The disturbance is a step change, obtained by the two SMPC control algorithms. ForAϭ0.1, to the light key in the feed. The measure- the proposed SMPC, ITAEϭ55.2 with / 0ment noise is normally distributed with zero mean Ϸ1.15 and for the original SMPC, ITAEϭ76.7.and covariance 0 ϭ0.0007. Because the top and For the MPC, ITAEϭ74.0.Fig. 6. Regulatory response of the controlled variables of the proposed and original SMPC for a MIMO process, example 3.
F. Zhao, Y. P. Gupta / ISA Transactions 44 (2005) 187–198 197Fig. 7. Regulatory response of the manipulated variables of the proposed and original SMPC for a MIMO process, example3. Case 2. To investigate the robustness of the pro- Subcase 6: the time constants of main-diagonalposed SMPC, the following six subcases are con- elements increase by 20% and the time delays ofsidered: ﬁrst column elements decrease by 33% ͑one con- Subcase 1: all of the process gains increase by trol interval͒.40%. The control parameters are kept the same as in Subcase 2: all of the process gains decrease by case 1. The ITAE values of the proposed SMPC,40%. the original SMPC and the MPC algorithms are Subcase 3: the gains of main-diagonal elements presented in Table 3. Again, the results for thisincrease by 20% and the time constants of off- example show that the proposed SDP providesdiagonal elements decrease by 20%. better disturbance suppression than the commonly Subcase 4: the time constants of main-diagonal used disturbance prediction.elements increase by 20% and the gains of off-diagonal elements decrease by 20%. 6. Conclusions Subcase 5: all of the process gains increase by20% and the time delays of second column ele- A disturbance predictor is developed for thements increase by 50% ͑one control interval͒. SMPC algorithm to improve its ability to suppress Table 3 ITAE values for example 3—MIMO process. Subcase Algorithm 1 2 3 4 5 6 Proposed SMPC 48.0 84.0 55.3 60.0 48.3 58.2 Original SMPC 59.0 130.0 73.9 85.2 63.6 76.4 Standard MPC 56.0 126.7 75.5 93.2 61.8 94.3
198 F. Zhao, Y. P. Gupta / ISA Transactions 44 (2005) 187–198deterministic disturbances while preserving its adaptive inferential control. Comput. Chem. Eng. 13,simplicity and lower computational requirements. 687–701 ͑1989͒. ͓6͔ Muske, K. R. and Badgwell, T. A., Disturbance mod-The tuning parameter employed in the predictor eling for offset-free linear model predictive control. J.helps in handling different disturbances and mea- Process Control 12, 617– 632 ͑2002͒.surement noise. Moreover, the tuning parameter ͓7͔ Pannocchia, G. and Rawlings, J. B., Disturbance mod-enables the predictor in achieving an improved els for offset-free model predictive control. AIChE J.regulatory performance by generating the required 49, 426 – 437 ͑2003͒. ͓8͔ Chien, I. L., Tang, Y. T., and Chang, T. S., Simpleover/under prediction when the dynamics of the nonlinear controller for high-purity distillation col-process and that of the disturbance is considerably umns. AIChE J. 43, 3111–3116 ͑1997͒.different. An optimization procedure is proposed ͓9͔ Gupta, Y. P., Control of integrating processes usingfor obtaining the tuning parameter online. A com- dynamic matrix control. Trans. Inst. Chem. Eng., Partparison with the commonly used disturbance pre- A 76, 465– 470 ͑1998͒.diction on three example problems shows that an ͓10͔ Gupta, Y. P., A simpliﬁed predictive control approach for handling constraints through linear programming.improved regulatory performance and zero offset Comput Ind. 21, 255–265 ͑1993͒.can be achieved under both regular and ramp out- ͓11͔ Gupta, Y. P., Characteristic equations and robust sta-put disturbances by using the proposed distur- bility of a simpliﬁed predictive control algorithm. Can.bance predictor. J. Chem. Eng. 71, 617– 624 ͑1993͒. ͓12͔ Abou-Jeyab, R. A., Gupta, Y. P., Gervais, J. R., Bran- chi, P. A., and Woo, S. S., Constrained multivariableReferences control of a distillation column using a simpliﬁed ͓1͔ Ricker, N. L., Model predictive control with state es- model predictive control algorithm. J. Process Control timation. Ind. Eng. Chem. Res. 29, 374 –382 ͑1990͒. 11, 509–517 ͑2001͒. ͓2͔ Ogunnaike, B. A. and Ray, W. H., Process Dynamics, ͓13͔ Seem, J. E., A new pattern recognition adaptive con- Modeling and Control. Oxford, New York, 1992. troller with application to HVAC systems. Automatica ͓3͔ Lundstrom, P., Lee, J. H., Morari, M., and Skogestad, 34, 969–982 ͑1998͒. S., Limitations of dynamic matrix control. Comput. ͓14͔ Reklaitis, G. V., Ravindran, A., and Ragsdell, K. M., Chem. Eng. 19, 409– 421 ͑1993͒. Engineering Optimization-Methods and Applications. ͓4͔ Wellons, M. C. and Edgar, T. F., The generalized ana- Wiley-Interscience, New York, 1983. lytical predictor for chemical process control. Ind. ͓15͔ Marlin, T. E., Process Control: Designing Processes Eng. Chem. Res. 26, 1523–1536 ͑1987͒. and Control Systems for Dynamic Performance, 2nd ͓5͔ Shen, G. C. and Lee, W. K., A predictive approach for ed. McGraw-Hill, New York, 2000, Chap. 20.