ARTICLE IN PRESS
Control Engineering Practice 11 (2003) 1371–1387
Performance evaluation of two industrial MPC controllers Jianping Gaoa, Rohit Patwardhana, K. Akamatsub, Y. Hashimotob, G. Emotob, Sirish L. Shahc,*, Biao Huangc a
Matrikon Inc. #1800, 10405 Jasper Avenue, Edmonton, AB, Canada T5J 3N4 b Mitsuibishi Chemical Corp., Mizushima, Japan c Department of Chemical and Materials Engineering, University of Alberta, 536 Chemical-Mineral Engineering Building, Edmonton, Canada T6G 2G6 Received 30 August 2002; accepted 4 April 2003
Abstract This paper presents case studies of the performance evaluation of two industrial multivariate model predictive control (MPC) based controllers at the Mitsubishi chemical complex in Mizushima, Japan: (1) a 6-output, 6-input para-xylene (PX) production process with six measured disturbance variables that are used for feedforward control; and (2) a multivariate MPC controller for a 6output, 5-input poly-propylene splitter column with two measured disturbances. A generalized predictive controller-based MPC algorithm has been implemented on the PX process. Data from the PX unit before and after the MPC implementation are analyzed to obtain and compare several different measures of multivariate controller performance. The second case study is concerned with performance assessment of a commercial MPC controller on a propylene splitter. A discussion on the diagnosis of poor performance for the second MPC application suggests significant model-plant-mismatch under varying load conditions and highlights the role of constraints. r 2003 Elsevier Science Ltd. All rights reserved.
1. Introduction The last decade has witnessed a growing interest by practitioners and academics alike in the field of controller performance monitoring (Harris, 1989; Desborough & Harris, 1992; Harris, Seppala, & Desborough, 1999; Harris, Boudreau, & MacGregor, 1996; Huang, Shah, & Kwok, 1996, 1997b; Huang, Shah, & Fuji, 1997a; Huang & Shah, 1999; Thornhill, Oettinger and Fedenczuk, 1999; Kozub, 1996). The basic idea in performance monitoring is to obtain a measure of ‘performance’ of a closed-loop system from routine closed-loop output and input data. In short, the role of performance evaluation is to see if the controller is doing its job satisfactorily and if not, further analyze closedloop data with process information to diagnose the causes of poor performance. Routine monitoring of controller performance ensures optimal operation of the regulatory control layers and the higher-level advanced process control (APC)
*Corresponding author. Tel.: +1-780-492-5162; fax: +1-780-4922881. E-mail address:
[email protected] (S.L. Shah).
applications. Model predictive control (MPC) is currently the main vehicle for implementing the higherlayer APC. The APC algorithms include a class of model-based controllers which compute future control actions by minimizing a performance objective function over a finite prediction horizon. This family of controllers is truly multivariate in nature and has the ability to run the process close to its limits. It is for these reasons that MPC has been widely accepted by the process industry. Various commercial versions of MPC have become the norm in industry for processes where interactions are of foremost importance and constraints have to be taken into account. Most commercial MPC controllers also include a linear programming stage that deals with steady-state optimization and constraint management. Several authors have proposed approaches for evaluation of the performance of multivariate controllers (see Harris et al., 1996; Huang et al., 1996, 1997a, b; Patwardhan, Shah, Emoto, & Fujii, 1998; Huang & Shah, 1999; Shah, Patwardhan, & Huang, 2001; Ko & Edgar, 2000; Patwardhan, Shah, & Qi, 2002). This paper is concerned with the application of some of these methods towards performance evaluation of two industrial MPC controllers. In this paper, a graphical
0967-0661/03/$ - see front matter r 2003 Elsevier Science Ltd. All rights reserved. doi:10.1016/S0967-0661(03)00115-1
ARTICLE IN PRESS 1372
J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
measure of multivariate controller performance is adopted. This is a generalization of the univariate impulse response plot (between the process output and the whitened disturbance variable) to the multivariate case, and defined as the ‘normalized multivariate impulse response’ (NMIR) plot. A particular form of this plot, that does not require knowledge of the process time-delay matrix, is used here. Such a plot provides a graphical measure of the multivariate controller performance in terms of settling time, decay rates, etc. This graphical measure is compared with the multivariate minimum variance benchmark in which the interactor or the time-delay matrix is first computed from the stepresponse model required for the design of the MPC controller. Other measures of multivariate performance are also explored in detail in this study: the use of the design or historical performance as a benchmark, and the use of the settling time as benchmark. The design objective function-based approach can be applied to constrained MPC-type controllers and is therefore a practical measure. However, it does not tell you how close the performance is relative to the lowest achievable limits. In this respect, the minimum variance-benchmarking index complements the objective function measure very well. In this paper, several MPC-specific monitoring methods are investigated for performance monitoring. Since MPC is a multivariate, constrained, optimizing, model-based controller, methods that consider all or some of these features of MPC are applied. For example, constraint analysis is performed to evaluate constraints violation, manipulated variables (MV) saturation properties and capability indices of controlled variables (CV) and MVs; optimization analysis is performed in terms of objective function to be minimized by MPC; interaction analysis is performed in the frequency domain to evaluate the interaction reduction properties of MPC; a new performance assessment method based on NMIR is proposed to look at performance of MPC in a graphical form; evaluation of MPC performance in terms of user-specified benchmarks is also discussed.
2. Introduction to MPC performance monitoring Performance assessment of univariate control loops is carried out by comparing the actual output variance with the minimum output variance. The latter term is estimated by simple time series analysis of routine closed-loop operating data. This idea has been extended to multivariate control-loop performance assessment resulting in the multivariate filtering and correlation (MFCOR) analysis algorithm (Huang & Shah, 1999). The concept of a delay term is important in minimum variance control. This idea obviously carries over to the
multivariate minimum variance control case as well. The generalization of the univariate delay term to the multivariate case is known as the interactor matrix or delay matrix. The difficulty in the multivariate case is the factorization of the delay matrix to design a multivariate minimum variance controller. The interactor matrix as proposed by (Wolovich & Falb, 1976), had a lower triangular form. However, the form of an interactor matrix is application-dependent, i.e. it may take an upper triangular form or a full matrix form. Huang and Shah (1999) has found that a unitary interactor matrix is an optimal factorization of time delays for multivariate systems in terms of minimum variance control and control-loop performance assessment. This unitary interactor is an all-pass term, and factorization of such a unitary interactor matrix does not change the spectral property of the underlying system. If a multivariate process can be represented as Yt ¼ TUt þ Vt ;
ð1Þ
where Tðn mÞ is a proper, rational transfer functions matrix in the backshift operator q1 ; Yt ; Ut and Vt are output, input and disturbance vectors of appropriate dimensions, there exists a unique, n n lower left triangular polynomial matrix D; such that jDj ¼ qr and ð2Þ lim DT ¼ lim T* ¼ K; q1 -0
q1 -0
where K is a full rank matrix and r is defined as the number of infinite zeros of T; and T* is the delay free (or Hermite canonical form) transfer function matrix of T (Wolovich & Falb, 1976; Goodwin & Sin, 1984). The matrix D is defined as the interactor matrix and can be written as D ¼ D0 qd þ D1 qd1 þ D2 qd2 þ ? þ Dd1 q;
ð3Þ
where d is denoted as the delay order and is unique for a given transfer function matrix, and Di s are constant coefficient matrices (Huang et al., 1997a, b). The interactor matrix D can be of any form: If D ¼ qd I; then the transfer function matrix T is regarded as having a simple interactor matrix. If D is a diagonal matrix, i.e., D ¼ diagðqd1 ; qd2 ; y; qdn Þ; the T is regarded as having a diagonal interactor matrix. Otherwise T is considered to have a general interactor matrix, which may be a full, lower triangular or upper triangular matrix. If the interactor matrix satisfies DT ðq1 ÞDðqÞ ¼ I;
ð4Þ
then this interactor matrix is denoted as the unitary interactor matrix (Huang et al., 1997a, b). It has been shown in Huang et al. (1997a, b) that multiplying a unitary interactor matrix to the output variables does not change the quadratic measure of the variance of the corresponding output variables, i.e. E½Y* t T Y* t ¼ E½Y T Yt ; ð5Þ t
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
where Y* t ¼ q
d
DYt :
ð6Þ
Therefore, in terms of the quadratic measure of the variance, performance assessment of Yt is the same as performance assessment of Y* t : In short, the interactor matrix is an equivalent form of the time delay in multivariate system. It needs the openloop model (at least the first few Markov Matrices) and an algorithm (Shah, Mohtadi, & Clarke, 1987; Peng & Kinnaert, 1992) to factor out the fewest number of Markov matrices to capture the delay terms. A key to performance assessment of multivariate processes using minimum variance control as a benchmark, is to estimate the benchmark performance from routine operating data with a priori knowledge of time delays or interactor matrices. The expression for the feedback controller-invariant (minimum variance) term is then derived by using the interactor matrices. It is shown that this term can be estimated from routine operating data using multivariate time series analysis (Huang et al., 1997a). Minimum variance characterizes the most fundamental performance limitation of a system due to existence of time delays. Practically, there are many limitations on the achievable control-loop performance. For example, a feedback controller that indicates poor performance relative to minimum variance control is not necessarily a poor controller. Further analysis of other performance limitations with more realistic benchmarks is usually required. For example, performance assessment in a more practical context such as a user-defined benchmark may be desirable. We will show the application of two practical
1373
user-defined benchmarks that do not require knowledge of the process on two industrial applications. Nevertheless, performance assessment using minimum variance control as benchmark does provide useful information such as what is the absolute lower bound of process variance, and whether the controller needs retuning or the process needs re-engineering.
3. Case study 1: MPC control of the para-xylene unit 3.1. Process description In order to achieve operational efficiency in terms of production costs, stable and reduced variance product composition and automated versus manual process operation, a multivariable model predictive controller was designed and implemented on the PX distillation unit at Mitsubishi Chemical Corporation’s, Mizushima plant in Japan. The distillation unit of the PX plant consists of three columns where raw Xylene is separated into the main product, ortho-xylene (OX) and other byproducts. A schematic of the process flow sheet is shown in Fig. 1. Xylene feed and recycled xylene from the isomerization section are mixed and fed to the light end column. In the light end column, the light components (C1–C5, toluene and benzene) are separated and the bottom products, composed of xylene and ‘heavies’, (more than C9), are fed to the OX column. In the OX column, the OX and heavy components show up as the bottom products whereas mixed PX and metaxylene are distillated to the overhead. The mixed xylenes in the overhead are fed to the crystallization section. The
Fig. 1. Process flow sheet of the para-xylene unit.
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
1374
OX and heavy components are fed to the OX purification column where the heavy components end up at the bottom and the pure OX, as a product, is distillated to the overhead. The heat furnace is used as a reboiler for the OX column, because high temperatures and significantly large heat duties are necessary for OX distillation. The separated light and heavy components are used as fuel to the heat furnace. In the conventional operation of this unit, reboiler steam at the light end column, heat furnace fuel and the OX column were all operated manually to keep the reflux ratio and column operational. Ambient temperature and fuel composition changes are the main disturbances to this unit. These disturbances forced manual operation of the column, one of the consequences of which resulted in high reflux ratio to keep product specification.
Table 1 Controller design parameters for the MPC-based multivariate objective function
3.2. Multivariable model predictive controller strategy
Table 2 Disturbance variables
A multivariable model predictive control software package based on the ‘Hitachi PS21 IMPACT’ controller was implemented on the PX unit. ARX models were identified from the plant input/output data and control adjustments are calculated based on the generalized predictive control algorithm to minimize the following cost function:
FF no.
Tag
FF1 FF2 FF3 FF4 FF5 FF6
Isomerization feed OX column feed Heat furnace fuel heat calorie residual OX purification column feed Cooling water temperature Ambient temperature
J¼k
N2 X
# þ jÞ wðt þ jÞÞ2 þ l ð yðt
j¼N1
Nu X
Duðt þ kÞ2 ; ð7Þ
k¼0
# þ jÞ is j-step ahead prediction of the system where yðt output on data up to time t; N1 and N2 are the minimum and maximum costing horizons, Nu is the control horizon, k and l are the weights and wðtÞ is the future reference. A list of controlled, manipulated and disturbance variables and the corresponding weights ðk; lÞ with the prediction horizons are given in Tables 1 and 2. Note that in Table 1, CV1 and MV1 are identical. This is frequently done under MPC either to square the system or alternately to maximize the feed as is the case here, and yet also be able to manipulate it, should circumstances dictate so, e.g., to prevent flooding. The implementation results of this GPC-based MPC control algorithm are shown in the left-hand column in Fig. 2. The right column shows the control results before the MPC was installed. 3.3. MPC performance monitoring 3.3.1. Data preprocessing The first and foremost step in data-driven analysis is to prepare the working data set for the analysis. It is always important to spend time previewing and processing the data set before proceeding to the analysis. The
Tag
Weight
CV no. CV1 CV2 CV3 CV4 CV5 CV6
Xylene feed Tray #5 temperature Internal reflux ratio OX hold up OX reflux drum level OX reflux ratio
MV no. MV1 MV2 MV3 MV4 MV5 MV6
Xylene feed Reboiler steam Internal reflux OX reflux OX distillate Fuel heat calorie
5.0 2.5 0.05 6.0 0.3 1.4
35 200 15 20 100 25
Horizon
Range
20 100 100 100 100 50
0–25 0–200 0–45 0–100 0–100 0–10
3 3 3 3 3 3
0–25 0–15000 0–45 0–180 0–125 0–200
quality of the results obtained during the analysis is directly related to the quality of the data used in the analysis. In general, certain procedures are required when performing data preprocessing relevant to MPC performance monitoring. Bad, null and non-numerical data in the data set need to be replaced; if the data is not evenly or regularly sampled, it needs interpolation to make it evenly sampled before any numerical analysis can proceed; before proceeding with time-series analysis to calculate performance metrics, the data needs to be mean-centered and all outliers should be removed. 3.3.2. Performance evaluation in terms of minimum variance benchmark Calculation of the unitary interactor matrix based on open-loop model: The current open-loop process model for the PX process as used in the Hitachi IMPACT MPC (with two MVs and one CV out of service this time) is listed below. The model is used to factor out the open-loop interactor matrix: 3 2 z1 0 0 0 0 0 7 6 6 s21 s22 s23 0 s25 0 7 7 6 6s s35 0 7 7 6 31 s32 s33 0 7; 6 7 60 0 0 0 s 0 45 7 6 6s s54 s55 s56 7 5 4 51 s52 0 0 0 0 0:2z1 0:1679z1 0
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
where s21 ¼ ð0:06809z
1
MFCOR algorithm with interactor matrix filtering is provided in the book by Huang and Shah (1999). Bar charts corresponding to the ‘ON’ and ‘OFF’ status of the IMPACT controller were generated. It is clearly seen that a significant improvement in performance resulted after the IMPACT controller was implemented. The multivariate performance index, for the same data, with MPC ‘ON’ is 0.3549 versus 0.1398 when MPC was ‘OFF’. This is clearly a significant improvement (over 200%). In Fig. 4, individual performance indices over a 30-day period are displayed. It is noted as well that the performance of a few controlled variables improved significantly while the performance of others degraded as a result of different controller weightings. It is to be expected that performance in some loops would improve at the expense of reduced performance in other loops. (Note the significant weightings in Table 1 for CVs: 1,4 and 6 and the corresponding improvement in performance for these three important CVs).
2
0:1408z Þ=
ð1 0:2845z1 0:6746z2 Þ; s22 ¼ ð0:06038z1 þ 0:2498z2 Þ= ð1 1:69z1 þ 0:6978z2 Þ; s23 ¼ ð0:02414z1 0:266z2 Þ= ð1 0:8188z1 0:153z2 Þ; s25 ¼ ð0:1297z1 þ 0:4256z2 Þ= ð1 1:301z1 þ 0:3159z2 Þ; s31 ¼ ð0:02498z1 þ 0:03939z2 Þ= ð1 1:868z1 þ 0:8764z2 Þ; s32 ¼ ð0:1092z1 0:1551z2 Þ= ð1 1:873z1 þ 0:8796z2 Þ; s33 ¼ ð0:01148z1 þ 0:01025z2 Þ= ð1 1:876z1 þ 0:8823z2 Þ; s35 ¼ ð0:0408z1 0:008103z2 Þ= ð1 1:814z1 þ 0:8235z2 Þ; s45 ¼ ð0:1968z1 Þ=ð1 0:99z1 Þ; s51 ¼ ð0:1464z2 Þ=ð1 0:99z1 Þ; s52 ¼ ð0:34z2 Þ=ð1 0:99z1 Þ; s54 ¼ ð1:399z2 Þ=ð1 0:99z1 Þ; s55 ¼ ð0:4911z2 Þ=ð1 0:99z1 Þ; s56 ¼ ð3:766z2 Þ=ð1 0:99z1 Þ: An unitary interactor matrix is obtained (for the algorithm, see Huang & Shah, 1999): 2
0:05925z
6 6 0:006454z 6 6 0:02356z 6 6 6 0:03354z 6 6 4 0:9974z 0
0:7234z
0:4z
0:5596z 0
0:9003z
0:0934z 0
0:3103z
0:09755z
0:4734z 0
0:4417z
0:1389z
0:6739z 0
0:4251z
1375
0:06791z
0:02491z
0
0
0
0
0
z2
0
3
7 7 7 0:8183z 7 7 7: 0:5748z 7 7 7 0 5 0
0
Time series analysis of closed-loop data via the MFCOR algorithm: The closed-loop data used for performance monitoring corresponding to PX MPC(IMPACT) ON and OFF was available at 1 min sampling rate with a length of 43,200 samples (over 30 days). It is assumed that the two data sets with and without IMPACT correspond to similar periods of operating conditions. To evaluate the daily performance, a moving window of 1440 data points without overlapping corresponding to each day was used to calculate the daily multivariate performance index (see Fig. 3) as well as individual performance indices at different channels or for different outputs. The definition of multivariate performance index and detailed
3.3.3. Performance evaluation via alternative methods Constraints analysis: An important feature of the MPC controller is that it can handle CV and MV constraints explicitly. By examining the CVs and MVs against their upper and lower constraints listed in Table 1, it is found that there is no MV saturation or CV violation of their constraint limits. This indicates that both MPC-ON and MPC-OFF are able to handle constraints effectively. Another method to analyze the variability of a variable against its upper and lower specification or constraints is the capability analysis in terms of Cp/Cpk and Pp/Ppk as articulated by Shunta (1995). If the values for Cp and Cpk are the same, this indicates a mean-centered process. If the Cp and Cpk values are not equal, this suggests that the process is not centered, and that a mean shift may have occurred. In this case, the Cpk value, which is adjusted to reflect an off-center distribution, should be used for analyzing the Cp/Cpk results. Pp and Ppk are process performance indices that represent the current process variability based on userdefined specifications. The Pp and Ppk values indicate the current level of performance for a specific variable. If the values for Pp and Ppk are the same, this indicates a mean-centered process. If the Pp and Ppk values are not equal, this suggests that the process is not centered. Therefore, the Ppk value should be used for analyzing the Pp/Ppk results. If Cp/Cpk of a variable is higher, it indicates that this variable has more room or capacity to perform better, while if its Pp/Ppk is higher, it indicates that such variable has lower variability relative to the specified range. For example, the Cp/Cpk element can be used to determine which variables have the most freedom or room to move to carry out the regulatory task.
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
1376
MPC was ON
MPC was OFF 20 CV1
CV1
20 15 0
1
2
3
4
0
1
2
3
4
2
3
4
40 1
2
3
4
CV5
60 50 1
2
3
4
1.5 1 1
2 3 Samples
4
0
1
2
3
4
5 4
0
1
2
3
4
5 4
x 10 40 0
1
2
3
4
5 4
x 10 1 0.5
5
5 4
1.5
4
0
4
40
20
5 x 10
0.5
3
60
4
0
2
x 10
30
5 x 10
40
1
50
4
x 10
0
0
x 10
5
5
CV4
CV4
50
5 4
CV3
6 1
4
10
4
0
3
x 10
120
5 x 10
8
2
140
CV5
CV3
10
1
160 CV2
140
30
0
4
x 10
120
CV6
5
CV6
CV2
160
15
0
1
4
x 10
2 3 Samples
4
5 4
x 10
Fig. 2. The result of MPC application to the distillation units of the para-xylene plant.
Performance when MPC was OFF
Performance index
0.6 0.5 0.4 0.3 0.2 0.1 0
0
5
10
15 Days
20
25
30
25
30
Performance when MPC was ON Performance index
0.6 0.5 0.4 0.3 0.2 0.1 0
0
5
10
15 Days
20
Fig. 3. Multivariate performance assessment, with minimum variance as a benchmark, of the para-xylene unit over 30 days (each bar indicates performance measure for 1 day).
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
1377
1 Performance of each output, MPC is ON Performance of each output, MPC is OFF 0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
1
2
3
4
5
6
Fig. 4. Individual loop performance assessment of the para-xylene control loops over 30 days (with multivariate minimum variance as a benchmark).
Table 3 Capability analysis of CVs/MVs when MPC is ON and OFF Cpk (MPC is ON) No. CV CV1 CV2 CV3 CV4 CV5 CV6 No. MV MV1 MV2 MV3 MV4 MV5 MV6
807.17 117.48 351.21 565.86 362.69 259.22
807.2 2123.2 321.4 262.7 328.9 812.0
Cpk (MPC is OFF)
Ppk (MPC is ON)
Ppk (MPC is OFF)
473.45 79.53 71.03 86.60 48.61 60.10
4.48 19.16 5.5 81.23 11.25 57.03
3.89 18.89 7.60 13.91 9.42 2.86
251.30 677.31 166.41 60.24 404.65 420.16
4.48 4.37 3.56 33.85 12.65 21.45
3.88 4.07 6.69 2.84 12.07 5.95
Given the engineering range of CVs and MVs listed in Table 1, Capability analysis in terms of Cp/Cpk and Pp/ Ppk was performed and the results are summarized in Table 3. It is reasonable to have all Cpk and Ppk of CVs and MVs greater than 1 because engineering ranges of CVs/ MVs were applied to perform the analysis and the engineering range is much wider than the practical range. The results in Table 3 indicate that after MPC was ON, the Cpk and Ppk of all CVs and MVs increased
significantly compared with those when MPC was OFF except CV3 or MV3 as a result of lower weightings. This result confirms that with MPC in ‘‘ON’’ mode, the capability or room for control improvement increased significantly while actual variability decreased within the engineering range. Optimization analysis: The objective of this MPC controller is to minimize the quadratic objective function, as specified in Eq. (7) and Table 1. In order to demonstrate that the current MPC controller is working
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
1378 350
MPC was OFF MPC was ON 340
function
320
cost
330
300
310
Quadratic
290
280
270
260
250
0
0.5
1
1.5
2
2.5
3
3.5
Samples
4
4.5 4
x 10
Fig. 5. Overall quadratic cost function is plotted versus time (based on the moving horizons and weights of CV and MV data).
effectively towards this objective, the values of this objective function corresponding to the state when MPC was ‘ON’ and ‘OFF’ were calculated. As shown in Fig. 5, the objective function corresponding to MPC-ON shows a significant decrease (ie. a lower cost) in the quadratic cost function compared with that corresponding to MPC-OFF. If contributions by different controlled variables were computed and compared as shown in Fig. 6, decreases in channels corresponding to CV1, CV4 and CV6 are obvious as a result of higher weighting for these variables as indicated in Table 1. Interaction analysis: Another objective of MPC is to reduce the interaction between different loops. Coherency analysis or the normalized cross spectrum between different controlled variables is a useful tool to assess the interaction between different control variables. In this industrial application, the coherency of six control variables during the MPC-ON versus MPCOFF periods were computed and compared with each other. Fig. 7 shows this plot where off-diagonal terms represent the coherency between the corresponding control variables. As shown in Fig. 7, all off-diagonal terms1 in the frequency domain are far below 1 which indicates that interactions between different loops are small. In particular, the magnitudes of some offdiagonal terms (see coherency plot of ‘CV2 versus 1
The diagonal term in coherency plot is always 1.
CV3’ and ‘CV4 versus CV5’) decrease significantly as a result of MPC application, which indicates that the MPC controller is effective in interaction reduction. 3.3.4. Normalized multivariate impulse response as a performance measure An impulse response curve represents the dynamic relationship between the whitened disturbance and the process output. In the univariate case, the first ‘d’ impulse response coefficients are feedback control invariant, where ‘d’ is the process time delay. Therefore, if the loop is under minimum variance control, the impulse response coefficients should be zero after ‘d’ lags. The NMIR curve reflects this idea for a multivariate controlled system. The first ‘d’ NMIR coefficients are feedback controller invariant, where ‘d’ is the maximum order of the interactor matrix. If the loop is under multivariate minimum variance control, then the NMIR coefficients should decay to zero after ‘d’ lags. The sum of squares under the NMIR curve is equivalent to the sum of the trace of covariance matrix of the data. If the output variance is Yt ¼ E0 at þ E1 at1 þ ? þ Ed1 atdþ1 þ Ed atd þ ? ð8Þ and the filtered output variance is Y* t ¼ qd DðF0 at þ F1 at1 þ ? þ Fd1 atdþ1 þ Fd atd þ ?Þ;
ð9Þ
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387 Comparison of T-112 FX feed
1379 MPC was off MPC was on
Comparison of T-112 #5 Temp
80
150
60
100
40 50
20 0
0
1
2
3
4
0
5
0
Comparison of T-112 Internal Reflux Ratio
1
2
3
4
Comparison of T-111 Hold up 4
x 10
0.2
5
4
x 10
150
0.15
100
0.1 50
0.05 0
0
1
2
3
4
0
5
0
Comparison of T-111 Reflux Drum Level
1
2
3
4
Comparison of T-111 Reflux Ratio 4
x 10
1
5
0
4
x 10
10
5
0.5
0
1
2 3 Samples
4
5
0
0
1
2 3 Samples
4
x 10
4
5 4
x 10
Fig. 6. Contributions towards the objective function (individual quadratic costs are plotted versus sample period). (solid line-MPC is ‘off ’ and dashed line-MPC is ‘on’.)
we have EðYtT Yt Þ ¼ EðY* Tt Y* t Þ ¼ trace F0
X
! F0T
a
þ trace F1
rationale for using the NMIRwof is that the two calculations are asymptotically equal (see Eq. (10) and Shah et al., 2001 for further details): ! ! ! X X lim trace E0 E0T þ trace E1 E1T þ ?
X
t-N
! F1T
þ ?;
ð10Þ
a
¼
a
trace F0
X a
where the first NMIR coefficient is given by qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi P traceðF0 0 F0T Þ and the second NMIR coefficient is pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi P given by traceðF1 a F1T Þ; and so on. The multivariate performance index is then equal to the ratio of the sum of the squares of the first ‘d’ NMIR coefficients to the sum of all NMIR coefficients. The NMIR outlined above requires apriori knowledge of the interactor matrix. In this specific application, the NMIR of the interactor filtered output from knowledge of the computed interactor matrix can be computed. As a complement, a similar normalized multivariate impulse curve without interactor filtering is also computed to serve a similar purpose. In this calculation, the NMIRwof coefficients are given by the E-matrices ðE0 ; E1 ; yÞ instead of the F -matrices ðF0 ; F1 ; yÞ: The
a
! F0T
þ trace F1
X
! F1T
! þ? :
a
The result is clearly shown in Fig. 8, which complies with the theoretical derivation for this specific industrial application. The NMIRwof curve corresponding to the MPC ‘‘ON’’ case decays quickly, which again leads to the conclusion that the MPC controller improves the performance of the multivariate controlled system significantly. 3.3.5. Performance evaluation in terms of user-specified benchmark Historical benchmark: Historical performance benchmark is the actual cost function for the closed-loop system over a specific period when it is considered to have a good response. A relative performance index in terms of historical benchmark can be calculated to
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
1380
MPC on MPC off 0.1
0.04
0.04
0.02
0.04
0.05
0.02
0.02
0.01
0.02
1 0.5 0
0
0.5
0
1
0.1
1
0.5 0
0.5
0
1
0.04
1
0.02
0.5
0
0.5
1
0.05 0
0
0
0.5
0
1
0.04
0
0.5
1
0
0
0.5
0
1
1
0.2
0
1
0
0.5
1
0
0.2
0.2
0.1
0.5
0.1
0.1
0.05
0
0
0.5
0
1
0.5 0.5
0.5
1
1
0
0
0
0
0.5
0.5
0
1
0
0.5
1
0
0.2
0.1
0.4
0.1
0.05
0.2
0
1
0
0
0.5
0
1
0.2
0
0.5
1
0.5
0
0
0.5
1
0
0.5
1
0
0.5
1
0
0.5
1
0
0.5
1
0
0.5
1
0.2
1 0.02 0
0.1 0
0.5
0
1
0.1 0
0.5
1
0
0.02
0.2
0.1
0.01
0.1
0.05
0
0
0.5
0
1
0
0.5
1
0
0.1
0.5 0
0.5
0
1
0
0.5
0
1
0.5
0
0.5
0
1
0
0.5
0
1
0.4
0.2
1
0.02
0.05
0.2
0.1
0.5
0
0
0
0
0
1
0
0.5
1
1
0
0.5
1
0
0.5
1
0 1 0.5
0.5
0.1
0.5
0.5
1
0.04
0
0
0
0.5
1
0
1 0.5 0
0.5
1
0
Fig. 7. Coherency analysis of control variables. The x-axis is the normalized frequency whereas the y-axis is the cohereny value. (solid line-MPC is ‘off ’ and dashed line-MPC is ‘on’.) Normalized Multivariate Impulse Response when MPC was off 0.8 NMIR NMIR-wof 0.6
0.4
0.2
0
0
5
10
15
20
25
30
Normalized Multivariate Impulse Response when MPC was on 2.5 NMIR NMIR-wof
2 1.5 1 0.5 0
0
5
10
15
20
Fig. 8. Plots of the NMIR versus time lags.
25
30
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
measure the current actual response speed in comparison with a historical benchmark. A relative performance index (RPI) relative to the historical benchmark can be defined as follows: RPIhis ¼
ð
Pn P k varðCVi Þ þ m l varðDMVi ÞÞbenchmark i¼1 i¼1 Pn i P i ; ð i¼1 ki varðCVi Þ þ m i¼1 li varðDMVi ÞÞact
where n and m are the number of CV and MV, respectively, and ki ; li are the weights of CVs and MVs. Similarly, for each CV, RPIhis for different j; j ¼ 1:n can be calculated as Pm ðkj varðCVj Þ þ l varðDMVi ÞÞbenchmark i¼1 Pm i : RPIj ¼ ðkj varðCVj Þ þ i¼1 li varðDMVi ÞÞact Such a relative measure of performance varies between 0 and infinity. *
*
*
RPI ¼ 1 implies that the control system performance is meeting benchmark specifications, RPI > 1 implies that the control system is performing better than the benchmark, RPIo1 implies that the control system is performing poorly relative to the benchmark.
The ratio between the benchmark controller energy consumption (CER) and energy consumed by the actual system is also a good metric to evaluate the performance of MPC since it gives a measure of the energy saving after MPC was ON. It is defined as Pm i¼1 li meanðMVi Þ ben : CER ¼ Pm i¼1 li meanðMVi Þ act If controller performance with MPC ‘OFF’ is chosen as a historical benchmark and it is assumed that the two data sets with and without IMPACT corresponded to similar periods of operation, then the relative improvements in performance are indicated as RPI to be 4.5 and CER to be 1.18, respectively. It is noted that both RPI and CER are greater than 1, which indicates that the relative performance of MPC is much better than the benchmark and MPC is very effective in reducing controller energy and output variability. Settling time benchmark: A settling time benchmark is a user-defined time period over which the controller should return to its set point after a disturbance. This idea has been widely applied in single-loop performance assessment as a compliment to the minimum variance benchmark. In this paper, a relative performance index in terms of settling time benchmark is proposed for multivariable case and can be calculated to measure the actual response speed in comparison with the target benchmark in multivariate controlled system (Patwardhan, 1999). In single-loop performance assessment, an ideal firstorder system with expected settling time is chosen to be
1381
the target benchmark. Its impulse response is compared with the closed-loop impulse response to calculate the relative performance index, e.g., if the benchmark impulse response coefficients are f1; g1 ; g2 ; y; g and the actual closed-loop impulse response coefficients are f1; f1 ; f2 ; y; g; respectively, then: RPIst ¼
ð1 þ g21 þ g22 þ ?Þ : ð1 þ f12 þ f22 þ ?Þ
This idea can be extended to multivariable controller performance evaluation if NMIR without filtering is calculated. The squared sum of NMIRwof can be compared with the squared sum of settling time benchmark to calculate the RPI. Therefore, the modified formula is P trace E0 a E0T ð1 þ g21 þ g22 þ ?Þ P T P RPIst ¼ : ððtrace E0 a E0 þ trace E1 a E1T þ ?ÞÞ P Note that term trace E0 a E0T is a normalization factor to make these two curves start at the same point. If 10 samples are chosen to be the expected settling time as a benchmark, the RPI in terms of settling time benchmark can be calculated. The RPI is 1.6 when MPC was ‘ON’ versus 1.2 when MPC was ‘OFF’. The improvement when MPC was ON also leads to the conclusion that the performance has improved in comparison with the operation when MPC was OFF. The advantage of these two proposed benchmarks is that the process model is no longer required. Without the process model, the NMIR without filter is able to provide a graphical measure of performance and the relative performance assessments versus settling time and historical benchmark metrics can also be calculated. This idea is promising for online application of performance assessment technology to be feasible without knowing the process model. Such tools should therefore promote more extensive industrial applications of performance assessment technology.
4. Case study 2: MPC control of a propylene splitter column The process under consideration is a propylene splitter ðC3 FÞ column. A schematic of the process is shown in Fig. 9. A commercial MPC controller is currently used to control the key variables of interest which, in this case, are the top and the bottom impurities. The natural logarithm of the top impurity is controlled as it shows a more linear response. There are a total of six controlled variables (CVs), five manipulated variables and two measured disturbances. The model was available in a step response form obtained from the identification algorithm. The measurements of the main CVs were available at the rate of 20 min each. The main CVs and MV considered in this
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
1382
GC
Conde nse r
Y1
once / 20 min Re flux
Distillate (D)
FC
U1
FC
LC
D2
FC
Ste am
D1
Re boile r
U2
FC
Bottoms
GC once / 20 min
Y2
Fig. 9. A schematic diagram of the distillation column showing the relevant controlled and manipulated variables.
4.1. Assessment results
Propylene production rate 8
Performance assessment was carried out for different load conditions. Two methods were used for performance assessment: (1) multivariable settling time benchmarking, and (2) historical benchmarking. The results of the performance assessment step are presented below.
High Load
7
Normal Load 6 5 4 3 2
Low Load
1 0
0
20
40 60 80 Days: July 1 to Oct. 28
100
120
Fig. 10. The production requirements in normalized units from July 1 to October 28.
analysis are highlighted in Fig. 9, i.e., the performance assessment is considered only for a subset of inputs and outputs, i.e. 2-inputs and 2-outputs problem with constraints. The controller in place is a multivariable MPC controller. The column is operated under normal, low- and high-load (feed flow rate) conditions depending upon the production requirements (see Fig. 10). The step response models were originally identified under normal load conditions.
4.1.1. Normal load data The operating data for the two main input and output variables under normal load conditions is shown in Fig. 11. The top part of the graph shows the outputs along with the setpoints and the bottom part shows the manipulated variables. The sampling time for control is 6 min and the data shown here correspond to each control sampling interval. A desired settling time of five samples was chosen for each of the outputs based on the open-loop settling time and the recommendation of the plant personnel. Since the settling time index was 0.86 for this data set, the normal load data as our benchmark data for historical benchmarking was chosen. For this MPC application the output weighting matrix is given by G ¼ diagð200; 2Þ: The performance indices for the cases where: (1) the weightings were taken into account and (2) the raw data was used are 0.8 and remain the same irrespective of whether the data is weighted or not. The top impurity is the economically important variable and is weighted by
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
a factor of 100 times more than the bottom. It is important to consider these weightings in any benchmarking scheme. For the normal data set the settling time measures show good performance irrespective of the weightings. The historical benchmark measure equals 1 since this data set itself is the benchmark data set. The achieved objective function could not be calculated due to insufficient data. For the remaining data sets we do not show the data trends but the assessment results are summarized below. The results for the normal high- and low-load data are reported below. The settling time and the historical measures are shown in Fig. 12. Both the measures indicate a significant drop in performance compared to the normal load conditions. In the later sections, we attempt to isolate the cause for this drop in performance. The achieved objective function for the last 60
1383
samples is shown in Fig. 13. The achieved objective function shows a decreasing trend, which implies improving performance. The output variance term is dominant compared to the offset and the input variance terms. For the first low-load data set, both the settling time and the historical measures indicate a drop in performance for the low-load case. For this case the achieved objective function was dominated by the offset term. The contribution of the input variance term is negligible. The overall performance assessment results are shown in Fig. 12. The settling time and historical benchmarks indicate good performance in the normal load region and poor performance in the high- and low-load regions. The first low-load data set showed poor performance due to the fact that constraints were active throughout this run. The second low-load data set showed satisfactory performance because Achieved objective function
2.66
7.15
42
40
40
38
38
36
y2
7.05 y1
42
7.1
2.64 2.62
7 2.6 2.58
Achieved output variance
44
6.95 0
50
100
6.9
150
36 0
50
100
0
20
40
60
80
34
0
Achieved Input variance 142
40
60
80
Achieved output bias/offset
3
0.76
0.5 0.4
141
2.5
0.3
u2
0.75
u1
140 139
0.2
2
138
0.1
0.74
1.5 0
50
100
150
0
50
100
150
Fig. 11. Input–output data for the normal load conditions. The solid line in the top two figures represents the setpoint.
Good
0.4 0.3 0.2 0.1
80
0
0
20
40
60
80
Fig. 13. The achieved objective and the contributing factors for the high-load data.
0.8 0.7 0.6
Poor 0.5 0.4
Poor
0.3 0.2 0.1
0
(a)
60
Satisfactory
Settling Time Benchmark
0.5
40
0.9
0.8
0.6
20
1
0.9
0.7
0
Historical Benchmark
137
20
150
0 1
2
3
4
(b)
1
2
3
4
Fig. 12. (a) The settling time performance indices and (b) the historical performance measures for different datasets (1—Normal, 2—High, 3—Low A, 4—Low-B).
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
1384
7.6
2.55
7.4 y2
7.8
2.6 y1
2.65
2.5
7.2
2.45
7
2.4
0
500
1000
6.8
1500 2000
116
0
500
1000
1500 2000
0.66 0.64
114 u2
u1
0.62 112
0.6 110 108
0.58 0
500
1000
1500 2000
0.56
0
500
1000
1500 2000
Fig. 14. The input–output data for the low-load data (A). The dotted line in the top two figures represents the setpoint change.
2.65 2.6
y1
2.55 2.5 2.45 2.4 0
100
200
300
400
500
600
700
800
900
1000
130 125
u1
120
Theoretically this is an uncontrollable system. Economically, the top impurity is more important than the bottom impurity, and due to the emphasis placed on this output, the bottom flow rate was devoted entirely to controlling output 1 during this period. An offset was observed in output 2 for a part of the low-load region (see Fig. 14). 4.2.2. Prediction errors in the closed-loop In order to investigate the reasons for poor performance, the prediction errors for the MPC controller were investigated. MPC uses a step response model of the process combined with an estimated disturbance to predict the process outputs over the prediction horizon as shown in Fig. 16. The disturbance is estimated through feedback: # # 1Þ; dðk=k 1Þ ¼ yðk 1Þ yðk where y is the measured value and y# is the predicted output. The open-loop predictions are updated with this disturbance estimate. This step in MPC allows us to rewrite the MPC controller in the IMC form. For the propylene splitter MPC, the step response model is also used to predict the compositions between two measurements. This is equivalent to an observer in control terminology. From Fig. 16, prediction errors in the closed-loop can be expressed as d ¼ DðI þ QDÞ1 w þ NðI þ QDÞ1 a
115
þ QDðI þ QDÞ1 r;
110 105 0
100
200
300
400
500
600
700
800
900
1000
Fig. 15. The input–output data for the low-load (B) data set. The reflux flow rate is at the lower operating limit as specified by the solid horizontal line.
constraints were active only for the initial part of this run (see Figs. 14 and 15). The historical benchmarking method confirmed the settling time approach based results except for the second low-load data set. For this data, the historical benchmark indicated no significant improvement in performance. This can be attributed to an increase in input variance or output offset, since the historical benchmark takes them into account explicitly.
where Q is MPC controller, D ¼ P P# is the model plant mismatch (MPM), a is disturbance, r is the setpoint and w is the dither signal or external excitation. a
4.2.1. Analysis of constraints During the low-load conditions, the lower constraint on reflux flow rate was activated. Material balance considerations can be used to explain this phenomenon. The lower limit on the input constraint was an operatorspecified quantity. Since the reflux flow rate was saturated at the constraint, the control system was effectively reduced to a single-input-two-output system.
N
w +
r Q
y
+
u+ +
4.2. Diagnostics
ð11Þ
P
-
+
+ P d
Fig. 16. The internal model control structure for MPC.
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
If w ¼ 0; we have,
predicted vs. actual output 0.04
d ¼ NðI þ QDÞ1 a þ QDðI þ QDÞ1 r
y1
0.02
¼ ðI þ DQÞ1 fDQr þ Nag:
0 -0.02 -0.04
0
20
40
60
80
100
120
140
0
20
40
60
80
100
120
140
0.02
y2
0.01 0 -0.01 -0.02
Fig. 17. Prediction errors for the MPC model: normal load. (- - -) and (—) represent predicted and actual values, respectively. predicted vs. actual output 0.1 0.05
y1
0 -0.05 -0.1 -0.15 0
50
100
150
200
250
0
50
100
150
200
250
0.15 0.1
y2
1385
0.05 0 -0.05
Fig. 18. Prediction errors for the MPC model under high-load conditions. (- - -) and (—) represent predicted and actual values, respectively.
Thus, the prediction errors, under closed-loop, are influenced by the controller, Q and the extent of MPM. However, note that if there is no MPM and no external signals (r and a), d ¼ 0 holds irrespective of the controller. For example, with r ¼ 0; the prediction errors could be compared under several different circumstances to determine if the changes in N and D are significant. This observation forms the basis for deciding if the model is satisfactory. If not, several factors, other than mismatch, could be held responsible—Q; N; r; a: In an effort to isolate the reasons of poor performance, the infinite horizon prediction errors of the step response model under closed-loop conditions were examined. The following Figs. 17 and 18 show the prediction errors for the normal and high-load conditions, respectively. The model seemed to worsen on a relative basis under high-load condition. It should be noted here that we are dealing with closed-loop data. Hence, the controller and/or unmeasured disturbances can affect the predictive capabilities significantly, under closed-loop. Low Load Data Set 1: The prediction errors for the low-load data are shown in Figs. 19 and 20. For the second low-load data set, the predictions for output 2 appear to have worsened considerably. Quantification of prediction errors is important in establishing model quality. Kozub (1997) proposed the use of minimum variance benchmarking on the prediction errors to obtain a prediction index. We applied this idea for the C3 F splitter MPC. This measure can be
0 .1 0 .0 5 0 - 0 .0 5 -0 .1 - 0 .1 5
0
200
400
600
800
1000
1200
1400
1600
1800
0
200
400
600
800
1000
1200
1400
1600
1800
0 .1 0 .0 5 0 - 0 .0 5 -0 .1
Prediction.
Actual Values.
Fig. 19. The prediction errors for low-load data set A.
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
1386 0.1 0.05 0 -0.05 -0.1 0
100
200
300
400
500
600
700
800
900
1000
0
100
200
300
400
500
600
700
800
900
1000
1
0.5
0
-0.5
Prediction.
Actual Values
Fig. 20. The prediction errors for low-load data set B.
Table 4 Performance measures and the prediction measures for the propylene splitter MPC application Normal load High load Low load 1 Low load 2 Performance measures Settling time benchmark 0.8572 Historical benchmark 1.000 Achieved objective — Constraints Input constraints Output constraints
Violations
Prediction measures Settling time based index 0.6841 Prediction error index 1.000 (historical) Overall performance
Good
0.4026
0.2423
0.6790
0.2637
0.2544
0.4181
42.24
105.07
25.2
Active
Active
Violations
about the model quality. For our data sets, the MVC measure indicated satisfactory model quality for the normal load case relative to the other data sets. However, MPC performance deteriorates under significant low-load conditions. Discussion: The statistics for assessment of control errors and the prediction errors are reported in Table 4. It should be noted that the different factors are often correlated. For example, during the high-load conditions there was a disturbance in the feed flow rate which caused a change in plant dynamics and the controller tunings could be inappropriate due to these changes. Constraints were shown to play an important role in the analysis of performance. Some evidence of MPM was found through prediction analysis at different loading conditions.
5. Concluding remarks 0.1440
0.1196
0.1647
0.0254
0.0620
0.0803
Poor
Poor
Satisfactory
treated as a necessary test for goodness of model quality. If it equals unity, then the model quality is perfect; if it is less than unity, several reasons can be listed for its deviation from unity and no statement can be made
Several measures of multivariate controller performance monitoring have been introduced and applied to performance evaluation of two MPC controllers. It is shown that routine monitoring of MPC application can ensure that corrective measures will be taken when control degrades to finally ensure good and optimal control. The authors hope that these two applications of the new multivariate performance assessment technology will advocate more extensive and intelligent use of performance assessment technology and eventually lead to automated monitoring of the design, tuning and upgrading of the control loops.
ARTICLE IN PRESS J. Gao et al. / Control Engineering Practice 11 (2003) 1371–1387
In the first application, MPC control was achieved and operator interventions were reduced by 87%. As a result, the OX column operation was stabilized as well as reflux ratio was reduced. The latter improvement resulted in significant reduction of fuel consumption. Finally, stable operation of OX product composition was achieved. In the second application, the diagnosis of poor performance for the MPC controller suggests significant model-plant-mismatch under varying load conditions as well as poor choices of constraints. Acknowledgements The project has been supported by the Natural Sciences and Engineering Research Council of Canada (NSERC), Matrikon Inc. (Edmonton, Alberta) and the Alberta Science and Research Authority (ASRA), through the NSERC-Matrikon-ASRA Senior Industrial Research Chair program at the University of Alberta. References Desborough, L., & Harris, T. (1992). Performance assessment measures for univariate feedback control. Canadian Journal of Chemical Engineering, 70, 1186–1197. Goodwin, G. C., & Sin, K. S. (1984). Adaptive filtering prediction and control. Englewood Cliffs, NJ: Prentice-Hall. Harris, T. (1989). Assessment of closed-loop performance. Canadian Journal of Chemical Engineering, 67, 856–861. Harris, T., Boudreau, F., & MacGregor (1996). Performance assessment of multivariate feedback controllers. Automatica, 32(11), 1505–1518. Harris, T., Seppala, C., & Desborough, L. (1999). A review of performance monitoring and assessment techniques for univariate and multivariate control systems. Journal of Process Control, 9, 1–17. Huang, B., & Shah, S. L. (1999). Performance assessment of control loops: Theory and applications. Berlin: Springer.
1387
Huang, B., Shah, S. L., & Fujii, H. (1997a). The Unitary interactor matrix and its estimation from closed-loop data. Journal of Process Control, 7(6), 195–207. Huang, B., Shah, S. L., & Kwok, K. (1996). How good is your controller? Application of control loop performance assessment techniques to MIMO processes. In Proceedings of the 13th IFAC world congress, San Francisco, Vol. M (pp. 229–234). Huang, B., Shah, S. L., & Kwok, K. (1997b). Good, bad or optimal? Performance assessment of multivariable processes. Automatica, 33, 1175–1183. Ko, B. S., & Edgar, T. F. (2000). Performance assessment of multivariable feedback control systems. In Proceedings of the American control conference, Chicago, Illinois. Kozub, D. (1996). Controller performance monitoring and diagnosis experiences and challenges. In Proceedings of the CPC-V, Lake Tahoe, CA. Patwardhan, R. S. (1999). Studies in the synthesis and analysis of model predictive controllers. Ph.D. thesis, Department of Chemical and Materials Engineering, University of Alberta. Patwardhan, R. S., Shah, S. L., Emoto, G., & Fujii, H. (1998). Performance analysis of model-based predictive controllers: An industrial case study. AICHE annual meeting, Miami, November 15–19. Patwardhan, R., Shah, S. L., & Qi, K. (2002). Assessing the performance of model predictive controllers. Canadian Journal of Chemical Engineering. Peng, Y., & Kinnaert, M. (1992). Explicit solution to the singular LQ regulation problem. IEEE Transactions of Automatic Control, 37(May), 633–636. Shah, S. L., Mohtadi, C., & Clarke, D. W. (1987). Multivariable adaptive control without a prior knowledge of the delay matrix. Systems & Control Letters, 9, 295–306. Shah, S. L., Patwardhan, R., & Huang, B. (2001). Multivariate controller performance analysis: Methods, applications and challenges. Presented at CPC-6, Tuscon, AZ, January 2001 (pp. 187–219). (Also in AIChE Symposium Series 326, Vol. 98, 2002.) Shunta, J.P. (1995). Achieving world class manufacturing through process control. Englewood Cliffs, NJ: Prentice-Hall PTR. Thornhill, N. F., Oettinger, M., & Fedenczuk, P. (1999). Refinery-wide control-loop performance assessment. Journal of Process Control, 9(2), 109–124. Wolovich, W. A., & Falb, P. L. (1976). Invariants and canonical forms under dynamic compensation. SIAM Journal on Control, 14, 996–1008.