A D A P T I V E P R E D I C T I V E C O N T R O L : A N A L Y S I S A N D E X P E R T I M P L E M E N T A T I O N By Abdel-Latif Elshafei B . Sc. Electrical Engineering, Cairo University, Egypt, 1983 M . Sc. Electrical Engineering, Cairo University, Egypt, 1986 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY in THE FACULTY OF GRADUATE STUDIES ELECTRICAL ENGINEERING We accept this thesis as conforming to the required standard THE UNIVERSITY OF BRITISH COLUMBIA August 1991 © Abdel-Latif Elshafei, 1991 In presenting this thesis in partial fulfilment of the requirements for an advanced degree at the University of British Columbia, I agree that the Library shall make it freely available for reference and study. I further agree that permission for extensive copying of this thesis for scholarly purposes may be granted by the head of my department or by his or her representatives. It is understood that copying or publication of this thesis for financial gain shall not be allowed without my written permission. Electrical Engineering The University of British Columbia 2075 Wesbrook Place Vancouver, Canada V6T 1W5 Date: Acknowledgement I praise and thank God for His help and guidance to make this research happen. I would like to express my deep gratitude to my supervisor Prof. Guy Dumont for providing scientific guidance and financial support throughout my Ph.D. research years. Through Prof. Dumont's course on self-tuning regulators, the ideas of predictive control and expert control have been introduced in such inspiring way that I have been motivated to carry out my research on these topics. I also thank all my instructors both at the University of British Columbia and Cairo University as they have contributed effectively in widening my scope of thinking. My thanks should also be directed to the P A P R I C A N not only for providing me with financial support during the last two years but also for providing an excellent research environment through the Pulp and Paper Centre. A l l the ideas and details of this thesis have been discussed, revised, or modified with my friend Ashraf Elnaggar. To Ashraf, I direct my deep and sincere gratitude. Finally, I would like to thank and congratulate my parents, brother and wife. This work is nothing but a result of their love, support, and care. To my little son, Ibraheem, I devote this thesis. n Abstract A generalized predictive controller has been derived based on a general state-space model. The case of a one-step control horizon has been analyzed and its equivalence to a pertur-bation problem has been emphasized. In the case of a small perturbation, the closed-loop poles have been calculated with high accuracy. For the case of a general perturbation, an upper bound on the permissible perturbation norm has been derived. A functional analysis approach has also been adopted to assess the closed-loop stability in the case of nonlinear systems. Both the plant-model match and plant-model mismatch cases have been analyzed. The proposed controller has proven to be so robust that an adaptive implementation based on Laguerre-filter modelling has been motivated. Both SISO and M I M O schemes have been analyzed. Using a sufficient number of Laguerre filters for modelling, the adaptive controller has been proven to be globally convergent. For low-order models, the robustness of the adaptive controller can be insured by increasing the prediction horizon. The convergence and robustness results have been extended to other predictive controllers. A comparative study has shown that the proposed con-troller would be superior to the other predictive controllers if the open-loop system is stable, well-damped, and of unknown order or time delay. To achieve a reliable control without deep user involvement, the adaptive version of the proposed controller has been implemented using the expert shell, G2. The resulting expert system has been used to orchestrate the operation of the controller, provide an interactive user interface, adjust the Laguerre-filter model using AI search algorithms, and evaluate the performance of the controller on-line. Based on the performance evaluation, the tuning parameters of the controller can be adjusted on-line using fuzzy-logic rules. iii Table of Contents Acknowledgement ii Abstract iii List of Figures vii 1 Introduction 1 1.1 Motivation 1 1.2 Literature Survey 3 1.2.1 Prediction 3 1.2.2 Non-parameteric predictive control 4 1.2.3 C A R M A / C A R I M A model based predictive control 5 1.2.4 Model reference predictive control 7 1.2.5 State-space based predictive control 7 1.2.6 Extensions 9 1.3 Review of basic predictive control algorithms 9 1.3.1 Model-sequence predictive control 9 1.3.2 Generalized Predictive Control 12 1.4 Thesis contribution 14 1.5 Thesis Outline 16 2 Generalized Predictive Control 18 2.1 Introduction 18 iv 2.2 G P C based on a state space modelling 19 2.2.1 General case 19 2.2.2 Case of a single-step control-horizon 28 2.3 Case of Plant-model match 36 2.3.1 Analysis of open-loop stable systems 36 2.3.2 Analysis of open-loop unstable systems 39 2.4 Case of plant-model mismatch 50 2.4.1 General plant-representation 50 2.4.2 Linear time-invariant plant-representation 56 2.5 Conclusions 58 3 Adaptive Generalized Predictive Control 59 3.1 Introduction 59 3.2 Modelling and identification 60 3.3 Analysis of single-input, single-output systems 63 3.3.1 Stability and convergence analyses in case of plant-model match . 64 3.3.2 Robustness analysis 67 3.3.3 Further analyses 72 3.4 Extensions to multivariable systems 83 3.4.1 Single-input, multi-output systems 84 3.4.2 Multi-input, multi-output systems 89 3.5 Comparative study 95 3.6 Conclusion 99 4 Expert Adaptive GPC Based on Laguerre-Filter Modelling 104 4.1 Introduction 104 4.2 The expert shell, G2 108 v 4.3 Implementation I l l 4.3.1 Overview I l l 4.3.2 User interface 113 4.3.3 Model adjustment 115 4.3.4 Tuning based on fuzzy logic 119 4.3.5 Illustrative examples 126 4.4 Conclusion 129 5 Conclusions 131 5.1 The main results of the thesis 131 5.2 Suggestions for further research 134 Bibliography 136 A Building an Expert System 146 A . l Definitions and characteristics 146 A.2 Major stages of knowledge acquisition 147 A.3 Techniques of knowledge representation 147 A.3.1 Semantic networks 147 A.3.2 Frame systems 148 A.3.3 Object-oriented programming 148 A.3.4 Rule-based representation 149 B Fuzzy-Logic Definitions and Terminology 150 vi Lis t of Figures 2.1 G P C n2 = 10, /3 = 1 and nu = 1 26 2.2 G P C n2 = 10,fi = 1 and nu = 2 26 2.3 G P C ra2 = 10, j3 = 1 and nu = 5 27 2.4 G P C n 2 = 10, /3 = 10 and n u = 5 27 2.5 G P C n 2 = 15, f3 = 1 and nu = 2 28 2.6 G P C of a first-order system 33 2.7 G P C of a nonminimum-phase system with one unstable pole 48 2.8 Using the perturbation analysis to choose n2 50 2.9 The control system in case of exact representation 51 2.10 The approximate control system 52 3.11 a- The open-loop response, b- The control signal, c- The closed-loop response 68 3.12 The estimates of the Laguerre-filters' gains 69 3.13 A comparison between the frequency responses of the true system (dotted line) and the identified model (solid line) 70 3.14 Robustness of the Laguerre-filters based G P C 73 3.15 Control of a nonlinear system, a- The open-loop response, b- The set-point, c- The manipulated variable, c- The closed-loop response 79 3.16 Control of an open-loop unstable system 82 3.17 Performance of the L A G - G P C in a noisy environment 84 3.18 Control of a single-input, multi-output system 88 vii 3.19 Control of a multi-input, multi-output system 96 3.20 Predictive control of a high order system 98 3.21 Predictive control of a poorly damped system - . . . 100 3.22 Predictive control of a nonminimum-phase system 101 3.23 Comparison of the robustness of the M A C , G P C and L A G - G P C 102 4.24 Expert control of an overdamped system with time delay 128 4.25 Expert control of an underdamped system . . . 129 viii Chapter 1 Introduction 1.1 Motivation Interest in adaptive control has been steady over the last two decades from both users and researchers of control systems. In the American Control Conference 1988, a whole session was devoted to explore how a designer can pick up a suitable adaptive control algorithm. Quoting Masten and Cohen, (1988) : "The adaptive control literature contains hundreds of technical papers on many approaches to the subject. However, engineers who are not specialists in adaptive control theory often have difficulties selecting which approach to use in a given problem." Quoting Wittenmark and Astrom, (1984) : " A non-specialist who tries to get an understanding of adaptive control is confronted with contradicting information such as : • Adaptive control works like a beauty in this particular application. • Adaptive control is ridiculous. Look how the algorithm behaves in this particular simulation. • You cannot possibly use adaptive control because there is no proper theory that guarantees stability and convergence of the algorithm." 1 Chapter 1. Introduction 2 Clarke, et al.,(1987-a) give some guidelines for the admissibility of an adaptive control algorithm. They state that the algorithm should be applicable to : • Nonminimum-phase plants. • A n open-loop unstable plant or plant with badly damped poles. • A plant with variable or unknown dead time. • A plant with unknown order. Consequently, it is necessary in practice to trade the performance of the control algorithm against its robustness to the above requirements. This is the real motive for introducing predictive control algorithms. In predictive control, the controller is detuned by using a control law based on an extended prediction horizon. In such a case, the process is allowed to reach its desired state after a time as long as the control designer wishes. This policy helps to overcome some difficulties like dealing with nonminimum phase plants or plants with unknown dead times. Although simulations show satisfactory results, it is true that more theoretical studies are still needed since most of the available results are only asymptotic. It is also noted that predictive controllers contain many knobs to be tuned. Rules of thumb, iheuristics\ and expertise play an important role in getting an adaptive predic-tive controller working. The design problem still needs an expert to tackle it. Artificial Intelligence (AI) techniques provide a reasonable solution for the tuning problem. This is natural as the tuning of controller parameters looks like a search process in AI . It may also be argued that AI can provide a sort of supervision to look after some impor-tant implementation issues such as : signal conditioning, estimator wind-up, ringing of controllers, etc. Chapter 1. Introduction 3 Assuming a single-stage prediction horizon, one-step control horizon and zero weight on the control actions, a predictive controller based on Laguerre-filter modelling is derived in Zervos, (1988). The initial success of the Laguerre-filter based predictive controller motivates us to develop a generalized predictive controller based on the same modelling technique. By using a multi-stage prediction horizon, rather than a single-stage one, the robustness of the resulting control system is enhanced. By introducing control weight, the increments of the control action are better controlled. Finally, by allowing a flexible control horizon, rather than a one-step horizon, systems which are not necessary well-damped can be controlled better. Since Laguerre-filter models are available in state-space form, it motivates us to derive a generalized predictive controller in state-space form. The flexibility of Laguerre-filter representations motivates us to apply it not only to SISO systems but also to SIMO and M I M O systems. Theoretical properties, including stability, robustness and convergence of the adaptive control system, are analyzed. Finally, motivated by the demand to make the proposed scheme more accessible to practitioners, the proposed scheme is implemented using expert-system and fuzzy-logic techniques. 1.2 Literature Survey In this section predictive control techniques are surveyed. A survey of the expert-control literature is given in Chapter 4. 1.2.1 Prediction In De Keyser and Van Cauwenberghe (1981), a self-tuning multistep predictor is pro-posed to predict the future output trajectory of a stochastic process over a finite horizon. Chapter 1. Introduction 4 The goal of the predictor is to help the operator decide the correct control action. The global convergence of adaptive predictors is studied in Goodwin et al. (1981). It is shown there that using a priori residuals in the regressor vector and knowing an upper bound on the system order, global convergence can be achieved. In Clarke, et al.(1983), predic-tion regulation against offsets such as those induced by load disturbances is dealt with using an incremental model. As a by-product the estimator becomes better conditioned numerically because it works on zero mean data. In Mosca, et al. (1989), effects of mul-tipredictor information in adaptive control are studied especially from the standpoint of structured and unstructured uncertainties. A review of k-step-ahead predictors for SISO stochastic systems is given in Family and Dubois (1990). A comprehensive review of prediction can be found in Goodwin and Sin (1984). 1.2.2 Non-parameteric predictive control The current interest of the process-control industry in predictive control can be traced back to a set of papers which appeared in the late 1970s. In Richalet, et al.(1978), a new algorithm called " Model Algorithmic control, (MAC) " is proposed. The new algorithm relies on three principles. First, the plant is represented by its impulse response coefficients which are to be used for long range prediction. Second, the behavior of the closed-loop system is prescribed by reference trajectories. Third, a heuristic approach is used to compute the control variables. In Cutler and Ramaker (1980), the Dynamic Matrix Control, (DMC) , algorithm evolves from representing process dynamics with step-response coefficients. Both feedback and feedforward are incorporated into the D M C algorithm to compensate for unmeasured and measured disturbances. In Martin (1981), the D M C and M A C algorithms are compared and similarity conditions to dead-beat control are pointed out. Chapter 1. Introduction 5 In Mehra, et al. (1979) and Rouhani and Mehra (1982), theoretical properties of M A C are discussed with emphasis on stability and robustness analysis. Of significance is the analytical explanation of the enhanced robustness of the control schemes as the reference trajectory is slowed down. A n interpretation of the M A C algorithm in terms of state feedback and pole-placement is also discussed there. In Warwick and Clarke (1986), the D M C algorithm is modified as follows : a set of control inputs is calculated and made available at each time instant, the actual input applied is a weighted summation of the inputs within the set. In Garcia, et al. (1989), a number of design techniques including D M C and M A C are compared. It is pointed out there that predictive control is not inherently more or less robust than classical feedback, but, that it can be adjusted more easily for robustness. Predictive control based on Laguerre-filter modelling is proposed in Zervos and Du-mont (1986), Zervos (1988), and Dumont and Zervos (1988). The predictive controller suggested there is based on a single stage prediction, a one step control horizon and zero weighting on the control actions. Tuning the model by making an optimal choice of the Laguerre-filter pole is derived in Dumont, et al. (1991) and Fu and Dumont (1991). Chapter 3 in this thesis is devoted to the use of Laguerre-filter based models in predictive control. 1.2.3 C A R M A / C A R I M A model based predict ive control The idea of predictive control is first introduced in Martin-Sanchez, (1976), where a multi-variable A R M A model is used for modelling. The control signal is generated by a control block which behaves as the inverse of the process and has as its input the desired output of the process. In Peterka (1984), the main ingredients of generalized predictive control, (GPC) , are presented. The internal representation of the system is based on linear finite-memory output predictors. Both CARMA-model and incremental-model Chapter 1. Introduction 6 based predictors are analyzed. A quadratic-optimum control method is used to calculate the control actions. Both regulator and servo problems are covered. In Van Cauwenberghe and De Keyser (1985), the properties of long-range predictive control are discussed. It is shown that the control action is independent of the process time-delay if the prediction horizon beyond the time delay is kept the same. It is also shown there that, for a second order system without delay, the control law can be written as a linear time-invariant feedback law and that the relation of the controller parameters to the control weighting factor and the prediction horizon is totally lost. G P C algorithms have acquired their present popularity due to a series of papers by Mohtadi and Clarke. In Mohtadi and Clarke (1986), G P C is suggested to incorporate the "Linear Quadratic, (LQ)" and pole-placement advantages in one scheme. In Clarke, et al. (1987-a), a novel approach to G P C is presented. It is shown there that by choosing particular values for of the tuning parameters various algorithms such as G M V (Clarke and Gawthrop, 1975), E P S A C (De Keyser, 1985), Peterka's predictive controller (1984), and E H A C (Ydstie, 1984) result in. In Clarke, et al. (1987-b), asymptotic properties of the G P C are studied and the vital role of the observer polynomial is pointed out. The robustness of the G P C approach to over- and under-parameterization and to fast sampling is demonstrated by simulation. In Mohtadi (1989), the roles of an observer polynomial and a parameter-estimator prefilter are emphasized and rules of thumb for designing them are stated. The G P C algorithm and its properties are reviewed in Clarke and Mohtadi (1989). In Mcintosh, et al. (1989), it is shown that the G P C control law can be written in an equivalent linear transfer function form. Tuning strategies of the G P C are explained in Mcintosh, et al.(1991). The use of only one tuning parameter to adjust the G P C performance during the commissioning stage is suggested. There are three strategies suggested to tune the G P C based on output horizon, control weight and detuned model. Chapter 1. Introduction 7 In Soeterboek, et al.(1990), an attempt is made to unify predictive control techniques. Using a general model and performance index, the designer can pick up a specific pre-dictive controller by a proper adjustment of the tuning parameters. Tuning procedures of the unified predictive controller are discussed in Soeterboek, et al.(1991). 1.2.4 Model reference predictive control In Irving, et al.(1986), an adaptive controller inspired by pole-placement, multiple ref-erence models and predictive control is presented. The advantages of model reference predictive control are : there is no need to solve the Diophantine equation to achieve pole-placement equivalence, the multiple reference model is not restricted to minimum phase systems, and the predictive control law is weakly sensitive to weighting factors. Robustness and stability problems associated with model reference predictive control are reported in Wertz (1987). In Wertz, et al.(1987) and Gorez, et al.(1987), two generalizations are brought to model reference predictive control. The first one applies the same filter to input as well as output errors so that the designer can impose the dominant poles of the closed-loop system. The second generalization introduces, in the performance index, weighting fac-tors which can be tuned according to the controlled process. In M'Saad, et al.(1988), model reference predictive control is used in a real-time experiment to control a flexible arm. Robustness is achieved by using a regularized least-squares algorithm in combina-tion with input-output data filtering and normalization. 1.2.5 State-space based predictive control In Lam (1982), the relationship between the k-step-ahead predictor approach and the state-space approach, based on minimizing an N-stage fixed-horizon cost function, is explored. The use of an N-stage receding-horizon cost function is proposed. Lam's work Chapter 1. Introduction 8 is based on C A R M A models. A state-space formulation based on C A R I M A models and minimization of multi-stage cost functions is reported in Clarke, et al.(1985). The algorithm reported there is claimed to be robust against wrong a priori assumptions made about the plant dead-time or order. In Little and Edgar (1986), an algorithm is proposed to enable the designer to constrain the system states and control actions. Little and Edgar's algorithm provides an alternative to the use of quadratic programming for predictive control. In Mohtadi and Clarke (1986), the relation between the G P C algorithm and the LQ problem is pointed out. In Bitmead, et al.(1989), this relation is examined in detail, with an attempt being made to analyze the G P C algorithm theoretically from an opti-mal control perspective. The conclusion is that the G P C algorithm does not meet the sufficient stability conditions. In Bitmead, et al.(1989-b), an explicit connection is made between the adaptive G P C algorithm and the Linear Quadratic Gaussian control with Loop Transfer Recovery, ( L Q G / L T R ) . It is shown there that the G P C algorithm embod-ies the elements of L Q G / L T R design. It is shown also that adaptation and robustness may be mutually supportive in adaptive G P C . A detailed study of the link between G P C and L Q G / L T R can be found in Bitmead, et al.(1990). In Kwon and Byun (1989), a receding-horizon tracking controller based on state-space modelling is presented. The control law is shown to be a fixed-gain state feedback controller with a feedforward control term that provides the preview actions. For specific classes of weighting matrices and a prediction horizon greater than the system order, asymptotic stability is guaranteed. In Albertos and Ortega(1989), alternative solutions to the G P C problem are proposed. It is shown there that the prediction equation used for the G P C can be derived from the transfer function coefficients replacing the Diophantine equation recursions by the inversion of a lower triangle matrix. Chapter 1. Introduction 9 1.2.6 Extensions In Bequette (1991), a nonlinear predictive control strategy based on a nonlinear lumped parameter model of the process is suggested. Similar to linear predictive control, an optimal sequence of future control actions is calculated so that a certain performance index is minimized. Unmeasured state variables and load disturbances are estimated using a constrained approach. Model-process mismatch is handled by using an additional output term which is equivalent to the internal model approach. In Soeterboek, et al.(1991), a nonlinear predictive controller is proposed assuming the availability of a model of the process including its nonlinearity. Control of a pH process is given as an example. In Demircioglu and Gawthrop (1991), a continuous-time version of the discrete-time adaptive G P C is presented. A n important feature of the continuous G P C algorithm is that, unlike polynomial LQ and pole-placement controllers, it is not necessary to solve a Diophantine equation to compute the control law. It is also shown there that control weighting is not necessary to control nonminimum phase systems. As in the discrete-time G P C , L Q control can be considered as a subalgorithm of the continuous-time G P C . 1.3 Review of basic predictive control algorithms In this section the M A C and the CARIMA-model based G P C are reviewed. They will be used later on for comparison purposes. 1.3.1 Model-sequence predictive control M A C and D M C are referred to as model-sequence predictive control. In this section the basic M A C is explained in detail. Following Clarke and Zhang (1985), the M A C Chapter 1. Introduction 10 algorithm proceeds by assuming a model given by, y(t) = ^ mMt) + T ^ (L1) i= i 1 i where, y(t): the model output at time t. u(t): the control signal at time t. t : the discrete time index. gj-. the j t h impulse response coefficient. disturbance model with ((t) a white noise signal. This model implicitly assumes a stable and causal system. Using this representation, it can be shown that the predicted output y(t + i + 1) is given by, y(t + i + 1) = y{t +1) + gTAu(t + i), i = 0 , n 2 - 1 (1.2) where, y: predicted output £ T = [9i 92 - gn2] Au(t)= u(t)-u(t- 1) To obtain a prediction at time t of the output y(t-\-i), it is assumed that this prediction can be separated into two components: 1- Vi(t + i) which is the predicted response based on the assumption that future controls equal the previous control, u(t — 1). yx{t + i + 1) = yx{t + i) + gTAui(t + »') (1.3) Chapter 1. Introduction 11 where, Au^t + i) = [0, . . . ,0,Ati(<- 1),..., Au(t- n2 + 1 + i)]T 2. y2(t + i) which is the extra response due to future control actions. => y2(t + i + 1) = gTu2(t + i) (1.4) where, u2(t + i) = [u(t + i)- u(t - 1 ) , u ( t ) - u(t - 1), 0 , 0 ] It is required to drive the output y(t) smoothly to the set-point w at the end of the prediction horizon n2. This smooth transition can be achieved if the plant tracks a first-order model reference given by: ymr(t) = y(t) (1.5) ymr(t + i) = (1 - ct)w + ocymr(t + (1.6) where, ymr: model reference output. a: a constant of the model reference. The error reference vector, e, can be expressed as: z = y_mT-yx-G8_ (1.7) where, «f = [u(t) - u(t - 1), u(t + 1) - u(t - 1), ... , u{t + n2 - 1) - u(t - 1)] T Si 0 • • • 0 _ 92 gi ••• o Gr 9n2 9ri2—\ 9\ Chapter 1. Introduction 12 8 should be chosen to minimize some function of e. The performance index J is chosen as: J = eTe + f38T6 (118) where, /?:a weighting factor to trade performance against control effort. The control law is given by: 8^(GTG + ^I)-1GT(ymr-y1) (1.9) In the adaptive version of the M A C , the coefficients of the impulse response are obtained using a recursive identification procedure. 1.3.2 Genera l ized Pred ic t ive Con t ro l The G P C design uses a structured model, C A R I M A model, to represent the actual plant. Studying G P C is interesting because it is an umbrella under which many predictive con-trollers like the Extended Horizon (EHC) of Ydstie (1984), and the Extended Predictive Self Adaptive Controller (EPSAC) of De Keyser (1985), come as special cases. The G P C makes use of the different predictive control ideas in the literature. In contrast to M A C and D M C , G P C is able to handle unstable systems. The model used to design a G P C is given by: A f o - ' M O = - 1) + Ciq-'m/A (1.10) where, A(q~l) = a 0 + axq-x + • • • + anq~n B{q~x) = bo-rb1q-1 + --- + bnq-n A = 1-q-1 Chapter 1. Introduction 13 For simplicity C(q *) is taken to be 1. The ,7-step ahead predictor is given by: y(t + j\t) = Gj(q~l)Au(t + + Fjiq-^yit) + Ej((t + j) Gjiq-1) = Ejiq^Biq-1) (1.11) (1.12) Ej and Fj are calculated by solving the Diophantine equation given by: l = Ej(q-*)AA + q->Fj(q-1) (1.13) A significant contribution of the G P C is the recursive solution of Diophantine equation, Clarke, et al.(1987-a). In Clarke, et al.(1987-b) and Mcintosh (1991), two alternative solutions of the Diophantine equation are given for the case C(q~1) ^ 1. The control law is derived based on ignoring the future noise sequence £(t + j). Let f(t + j) be the component of y(t -f j) composed of signals which are known at t such that: /C + i) [G1(q-1)-g10]Au(t) + F1y(t) fit + 2) q^iq-1) - q~xg2X - g20)Au(t) + F2y{t) etc. where, Gi(q *) = ga + gnq 1 + ••• Then, the predicted output can be written in the form: y = GAu + f (1.14) where, y = [y(t + l), y(t + 2), y(t + n2)f Chapter 1. Introduction 14 Au = [Au(t), Au(t + 1), Au(t + n2 - 1)]T L = + /(* + 2), /(< + « 2] T So 0 ••• 0 9i 9o ••• 0 G = 9n2-l <7n2-2 '•• 9n2-nu and, #j =ft- for j = 0 , l , - - - , < ». prediction horizon. n„: control horizon. The control is chosen to minimize a cost function given by: J = H - lmr)T(y ~ U-mr) + P&3?&k (1-15) The control law is given by: AM = (GTG + m-1GT(ymr - / ) (1.16) 1.4 Thesis contribution A generalized predictive controller is derived based on state-space modelling. Not only is the case of plant-model match analyzed but also the case of plant-model mismatch. Analysis is carried out for open-loop stable as well as unstable systems. Three techniques are then introduced to analyze the proposed control scheme : 1. Perturbation analysis is effectively used to monitor the closed-loop poles and direct the choice of the controller tuning parameters. Chapter 1. Introduction 15 2. A new general lemma, which gives sufficient stability conditions of state-feedback control schemes, is derived and used efficiently to assess the stability of the proposed control scheme. 3. Functional analysis is used as a tool to assess the stability of nonlinear systems. The proposed controller is successfully implemented using Laguerre-filter models. Not only are SISO schemes implemented and analyzed but also SIMO and M I M O schemes. The main characteristics of the control system are : • The adaptive G P C based on Laguerre-filter modelling is globally convergent. This result is extended to other predictive controllers such as M A C . • Robustness can always be guaranteed by increasing the prediction horizon or the control weight. No SPR condition is required to guarantee stability. • Laguerre-filter based models can be modified to allow modelling and control of unstable systems. Expert-systems and fuzzy-logic techniques are adopted to produce a flexible, easy-to-use version of the Laguerre-filter based adaptive G P C . The main features of the expert controller are : • It has an interactive user interface. • To choose a model, a breadth-first strategy is used to adjust the pole of the Laguerre-filter model while a depth-first strategy is used to adjust the number of filters used in the model. • Linguistic rules are used on-line to adjust the controller tuning parameters. Chapter 1. Introduction 16 1.5 Thesis Outline In Chapter 1, the main prediction and predictive control techniques have been reviewed. In Chapter 2, a G P C formulation based on state-space modelling is derived and analyzed. The derivation of the control law is in Section 2.2.1. Tuning techniques and an illustrative example are also given there. In section 2.2.2, the case of a one-step control horizon is analyzed. First-order systems are studied followed by high order ones. The G P C problem is analyzed as a perturbation problem. Both small and large perturbations are studied. In section 2.3, the results of section 2.2 are used to study stable as well as unstable systems. New asymptotic as well as non-asymptotic results are reported. In Section 2.4, the case of plant-model match is considered. Nonlinear systems and linear time invariant systems are studied in Section 2.4.1 and Section 2.4.2, respectively. In Chapter 3, an adaptive G P C based on Laguerre-filter modelling is introduced. In Section 3.2, modelling and identification using the Laguerre filters are put into prospec-tive. In Section 3.3, stability and global convergence of SISO schemes are analyzed. Links with other predictive controllers such as M A C and Zervos' controller, Zervos (1988), are shown. Control of nonlinear systems and unstable systems is also considered. In Section 3.4, extensions to multivariable systems are introduced. Both SIMO and M I M O systems are studied. Stability and convergence analyses of the M I M O G P C are also considered. In Section 3.5, the Laguerre-filter based G P C is compared with the CARIMA-model based G P C and the M A C algorithms. In Chapter 4, the Laguerre-filter based G P C is implemented using expert-system and fuzzy-logic techniques. In section 4.1, a survey of the expert-control literature is provided. In Section 4.2, the expert shell "G2" is briefly reviewed. In section 4.3, an implementation of the adaptive Laguerre-filter based G P C is described in detail. In Section 4.3.1, an overview of the implementation is outlined. The user interface is explained in Section Chapter 1. Introduction 17 4.3.2. Model adjustment using AI search techniques is detailed in Section 4.3.3. On-line tuning and monitoring using fuzzy logic is described in Section 4.3.4. Two illustrative examples are given in Section 4.3.5 to demonstrate the main features of the expert G P C . In Appendix A , the major stages of knowledge acquisition and the main techniques of knowledge representation are pointed out. In Appendix B , the basic definitions of fuzzy logic are covered. Chapter 5 concludes this thesis and provides some suggestions for further studies. Chapter 2 Generalized Predictive Control 2.1 Introduction Since generalized predictive controllers (GPC) were introduced in Mohtadi and Clarke (1986), they have received considerable attention. GPCs have shown success in control-ling plants with : unknown dead-times, unmodelled dynamics, and nonminimum-phase responses. The design of a G P C proceeds by assuming a set point ysp which is known over the prediction horizon [t,t + n2]. A n auxiliary signal yc(t + i), i G [t,t + n2] is generated to provide a smooth transition from the actual plant output, y(t), to the set-point ysp(t). The control law which drives y(t) to ysp(t) is derived such that some function of the prediction error is minimized over the horizon. To generate the prediction error, output predictions are required. The mechanism for generating these predictions is similar to having a state estimator or an observer, Astrom and Wittenmark (1984). As hinted in Bitmead, et al.(1989-b), the predictive part of a G P C is seen as incorporating an observer associated with the state feedback solution of a receding-horizon linear quadratic problem. However, the state estimator is normally hidden since the calculations are based on input-output models. Also, it is shown in Bitmead, et al.(1989-a) that the predictive control problem has an equivalent optimal control one. The solution of the equivalent Riccati equation is monotonically increasing. Were the solution monotonically non-increasing, stability conditions could be obtained. 18 Chapter 2. Generahzed Predictive Control 19 There are two sources of difficulty in analyzing the G P C theoretically. First, the poles of the closed-loop system depend on the tuning parameters in a complex way which can be described only in a heuristic sense. Actually, there is no explicit expression to describe the relation between the closed-loop poles and the G P C tuning parameters. Second, a G P C utilizes a finite prediction horizon with a receding policy. So, it is not possible to make use of the readily available results in optimal-control literature. Assuming an infinite prediction horizon or a zero weight on the control increments are impractical but common assumptions to investigate the closed-loop poles. In this chapter, a version of the G P C is derived based on a state-space modelling. This enables us to put the closed-loop system in a form amenable for applying the perturbation analysis. Results from Dief (1982) are applied to give approximate formulas for the closed-loop eigenvalues. Using these formulas, it is possible to study the effect of varying the prediction horizon and/or the control weighting factor on the closed-loop poles.Furthermore, the limiting eigenvalues of the closed-loop system are derived. Also, bounds on the admissible perturbation are derived to ensure closed-loop stability. As a by-product of this formulation, the G P C can be put in an explicit observer plus state feedback form. 2.2 GPC based on a state space modelling 2.2.1 General case Let the plant be represented by a general SISO state space model in the form: x{t + 1) = Ax(t) + bu(t) (2.17) y{t) = cTx(t) (2.18) where, x, b, and c are n x 1 vectors. Chapter 2. Generalized Predictive Control 20 A is an n x n matrix. n is the model order. Using a j-step ahead predictor, the output is given by : y(t + j) = cTx(t + j) (2.19) where, x(t + j) = Ajx(t) + A^buit) + Aj-2bu(t + 1) + . . . + bu(t + j - 1) (2.20) Eq.(2.20) can be derived by recursive use of Eq.(2.17). Assuming a prediction horizon n 2 , the predicted output over that horizon can be written in the form : Y = l+Gu (2.21) where, / = [/i • • • fj • • • fn2]T fj = cTAix(t) go 0 0 . . . 0 9i 9o 0 . . . 0 G — 9n2-i g-n.2-2 ••• gi go u = [u(t), u(t + 1), . . . , u{t + n 2 - 1)]T Note that p,-, i = 0 , . . . , n 2 — 1 are the Markov coefficients of the system (2.17) and (2.18) and are given by g j = cTAjb The above derivation of the predicted output does not make use of the output mea-surement available at time t. It is more useful if y(t) is used as a base and the model Chapter 2. Generalized Predictive Control 21 is implicitly used to predict the increments of the output over the prediction horizon. This formulation insures an unbiased tracking of the reference in case of a plant-model mismatch, Mehra (1979). Eq.(2.21) leads to where, Eq.(2.22) can be rewritten as Y = l_+Gu l_=[h...lj...ln2]T lj = y(t) + cT(Ai -I)x(t) Y^L+Gui + Giu-u!) (2.22) (2.23) The vector ^ can be, in general, any reference input trajectory defined by the designer. However in the following derivation, ux is chosen as the input at (t — 1), i.e. ux = [u(t-l)...u(t-l)]"J Eq.(2.23) can be written as Y = I + Gux + S Au (2.24) where. A = 1 - q-1 S is a matrix of the step-response coefficients and is given by s0 0 0 ... 0 s = si s0 0 ... 0 sn2-l sn2-2 • • • - S i s0 Chapter 2. Generalized Predictive Control 22 The step-response coefficients are related to the impulse-response coefficients by so = go Si - gi + 5,-1, i = 1,... , n 2 - 1 The vector Au is given by Au = [Au(t), Au(t -f 1), . . . , Au(t + n 2 - 1)] T The three terms in the right hand side of Eq.(2.24) can be interpreted as follows • the first term represents the free response of the system. • the second term represents the forced response of the system if the control signal is kept constant at its value at (t-1). • the third term represents the future increments of the output due to the n2 incre-mental changes of the control signal. To provide a smooth transition from the output y(t) to the set point y3p, an auxiliary reference model is used to generate a signal yc which eventually converges to ysp. That model is given by ye(t + j) = a>y{t) + (1 - a j)y, p* (2.25) where, a is a tuning parameter chosen by the designer according to the required speed of convergence of y(t) to ysp. The control signal is chosen to minimize a quadratic performance index given by J= £ (y(t + j) -yc(t + j))2 + £ 0 ( A « ( t + j - i ) ) 2 (2.26) j-ni j=l Chapter 2. Generalized Predictive Control 23 n2, ral, and nu are the maximum output horizon, the minimum output horizon, and the control horizon respectively. The effects of these horizons and the rules of thumb to choose them are discussed in detail in Clarke, et al. (1987). The control law is derived by setting jj^ = 0 which leads to Au = (SfSi + iSI)-1^^ - I - Gux) (2.27) Si consists of the first nu columns of S. Using the receding action idea, the first component in u is applied to the system and the calculations are repeated at each sample. Comments • From Eq.(2.23), y[t + j) is given by y{t + j) = cTx(t + j)-ry(t)-cTx(t) = QT[Ajx(t) + A^buit) + ... + bu(t + j - 1) + kf{y{t) - QTx(t))] = cTx(t + j/t) (2.28) Where x(t + j/t) is the j-step ahead prediction of the state vector given measure-ments up to time t, and cTkf = 1 (2.29) Eq.(2.28) shows that the j-step ahead predictor implicitly uses an observer. • Choosing n\ = 1, n 2 = nu = n and A = 0, Eq.(2.24)-(2.27) lead to «(<) = -bfc(t + 1) - y(t) - cT(Aj - I)x(t)] (2.30) •So Eq.(2.30) is equivalent to the control law which minimizes J = [y(t + l)-ye(i+l)]2 (2.31) Chapter 2. Generalized Predictive Control 24 A similar result is shown in Rouhani, et al.(1982) for the model algorithmic control. Using this fact it will be shown below that the G P C can achieve an unbiased tracking of the set-point in the presence of unmodelled dynamics. In case of perfect plant-model match the control law uses the inverse of the model so the above tuning parameters cannot be used in controlling nonminimum-phase systems. Assume the plant is described by Y(z) = H{z)U{z) (2.32) and the control law is based on a model given by Ym = H(z)U(z) (2.33) The one-step predictor is given by zY{z) = zH(z)U(z) + [H(z) - H(z)]U(z) (2.34) and the command signal is zYc{z) = ocH(z)U{z) + (1 - a)Ysp (2.35) The control law satisfies Yc(z) = Y(z) (2.36) Eqs.(2.34)-(2.36) lead to (z - l)H(z) + (1 - a)H(z) Y(z) = {} ~ a ) H { z ) Ysp (2.38) ^ ) (z-l)H(z) + (l-a)H(z) SP K ' Eq.(2.38) shows that l i m ^ i = 1, i.e. the closed-loop system achieves perfect tracking. On the other hand if H(z) = H(z), then Eq.(2.37) gives Chapter 2. Generalized Predictive Control 25 It is clear that the control law uses the inverse of the plant transfer function. Hence, the plant should be a minimum phase one. • If the open-loop system is completely controllable and observable, choosing /? = 0, n\ = n, n2 > 2n — 1, and nu = n will result in a dead-beat controller. The proof is the same as in Clarke, et al.(1987). Illustrative example Consider the nonminimum-phase and unstable plant, Wertz (1987), given by y(t) - 2.7y(t - 1) + l.8y(t -2) = u(t - 1) + 5u(t - 2) + 6u(t - 3) (2.40) Assume the plant parameters are known. The effect of the G P C tuning parameters will be studied. Since, there are two unstable poles, nu should be at least two. This can be understood by noting that a plant of order n needs n different control values for dead-beat response. With a complex system these values may change sign so frequently that a short control-horizon does not allow enough degrees of freedom in the control action to stabilize the system, Clarke, et al.(1987). Indeed, choosing nu = l , n 2 = 10 and /3 — 1, leads to instability as shown in Fig.(2.1). By increasing nu to 2, the number of unstable modes, the closed-loop system becomes stable as shown in Fig.(2.2). Increasing nu results in a more active control signal and a faster output response with overshoot as in Fig.(2.3). Increasing /3 from 1 to 10 results in a great damping of the output response as can be seen by comparing Fig.(2.3) and (2.4). Of course, increasing /3 leads to a slower output response. If Figs.(2.2) and (2.5) are compared, the effect of increasing n2 can be noticed. The output response as well as the control action get slower and smoother as n2 increases. Chapter 2. Generalized Predictive Control 3 -.61 ' « ' « ' • • • • 1 0- 1- 2. 3 . A. 5 . 6. 7. 8. 9 . 10. Sees. Figure 2.1: G P C n 2 = 10, £ = 1 and n« = 1 ea C O O . <u -0.51 1 ' < 1 1 1 1 1 1 " 0. t . 2 . 3 . 4 . 5. « . 7 . 8. 9 . - 10 . Sees. 0.03 .02' ' ' ' ' 1 1 1 • 1 1 0. t. 2. 3. *. 5. 6. 7. 8. 9. 10. Sees. Figure 2.2: G P C n 2 = 10,0 = 1 and nu = 2 Chapter 2. Generalized Predictive Control 27 CO Figure 2.3: G P C n 2 = 10, £ = 1 and nu = 5 «.s c o ex. Figure 2.4: G P C n 2 = 10, £ = 10 and n u = 5 Chapter 2. Generalized Predictive Control 28 c u <ti 2 0.015 o.ota c JSP 0.005 "o t-i "a o a. ooo o -.005 1 1 1 « . — V 2 - 5 . 7. 9. 10. Sees. Figure 2.5: GPC n 2 = 15, /5 = 1 and n u = 2 2.2.2 C a s e o f a s i n g l e c o n t r o l - h o r i z o n Consider the regulator problem, = 0. Assume nu = 1 and a = 0. T h i s allows (112 — 1) steps of infinite weighting on the incremental changes of the control action followed b y one step of finite weight /?. T h i s choice is v a l i d as long as the plant is stable with fairly damped poles as shown i n Clarke, et a l . (1987). T h e advantages of choosing nu = l are • As shown later, the resulting control law is naturally robust against unmodelled dynamics. So, i t is attractive for adaptive control applications. • It may lead to a solution of the R i c c a t i Equation which is monotonically decreasing, Bitmead, et al. (1989-a). Whence, stabi l i t y would follow. • It is computationally efficient as no matr i x inversion is required. Chapter 2. Generalized Predictive Control 29 Under the above conditions, the control law given by Eq.(2.27) can be written as where, u(t) = e[kT x(t) + (3u{t - 1)] kT = - S ^ o 1 s , c T A , + 1 _ 1 sr = [s0 Si .. .5„ 2_ A] Using Eqs. (2.17) and (2.41), the closed loop system is where, Z[t + 1) = (A + eAi)Z(t) Z{t) = x(t) u(t) (2.41) (2.42) A = A b 0 0 Ai = 0 0 kTA kTb + p Equation (2.42) shows the GPC problem can be formalized as a perturbation problem. In case of ft — 0, the perturbed system will be : x(r + l) = (A + eAJxJlt) (2.43) where, e = sT s (2.44) Chapter 2. Generalized Predictive Control 30 = bkT (2.45) Eq.(2.44) indicates that in order to guarantee a finite value of e, the prediction horizon should be longer than the plant's dead time. Equation (2.45) shows that the prediction horizon should be greater than the non-minimum phase response to avoid the possibility of a feedback gain with a wrong sign. In the G P C literature, the analysis usually assumes that either the prediction horizon is infinite or it can be approximated as an infinite one. Practically, this assumption is not always realistic. For a first-order system without a delay, analytical analysis is possible. Specifically, the case of a first-order unstable system is analyzed below. For multi-variable systems, the perturbation analysis is introduced to deal with the case of a finite prediction horizon. As shown above, the G P C problem can be dealt with as a perturbation introduced to the open-loop system. If the perturbation is small, approximate formulas are derived to calculate the closed-loop eigenvalues. On the other hand, if the perturbation is not necessarily small, bounds on the perturbation which guarantee the closed-loop stability are derived. Case of a first-order system It is stated in Clarke, et al.(1987) that the G P C can stabilize any first-order open-loop stable system for any n2 > 0. A first-order unstable system is analyzed below. Let the system be given by 4^ = — , « > 1 (2-46) u(t) z — a We have the following claim. C l a i m : If a > 1, the G P C is still a stabilizing controller as long as n2 is finite. Chapter 2. Generalized Predictive Control 31 Proof : Choose /3 = 0. Using the predictive control law in Eq.(2.41), the system's closed-loop pole will be _ <m2(l - « 2 ) - q(l - «"»)(! + a) 2 + a 2 ( l - a 2"') n 2 ( l - a 2) - 2a(l + a)(l - a"*) + a 2 ( l - a 2" 2) ^ ' l ) By substituting, a = 1 + , /* > 0 (2.48) in Eq.(2.47), it is possible to show after some algebraic manipulations that both the numerator and the denominator of Eq.(2.47) are negative for any n2 > 2, (a = 0 for n2 = 1). Assuming that the closed-loop system is unstable; i.e a > 1, Eq.(2.47) leads to ^ = n 2 ( a - l ) + a ( l - a n 2 ) > 0 (2.49) Substituting Eq.(2.48) in Eq.(2.49) we get. ib = n2u - (1 + p.) Y, 7 = -^.-d+rtg^-^^ (2.50) It is clear that tp < 0 which forms a contradiction to the assumption a > 1. So, we conclude that a < 1 (2.51) By induction, it is easy to show that the above inequality holds for all values n2 < oo. • Note that the above analysis holds only if a > 1. This condition is naturally satisfied if Eq.(2.46) is obtained by sampling a continuous first-order unstable system. If a < —1, Theorem 2.3 guarantees that a —* 1 as n2 —* oo. However, stability cannot be guaranteed Chapter 2. Generalized Predictive Control 32 for any prediction horizon as in the case a > 1. Fig.(2.6) shows the typical behaviors of the G P C closed-loop pole for |a| < 1, a > 1, and a < — 1. The three-dimensional graph in Fig. (2.6) can be divided into three regions. The upper left corner of the graph corresponds to a < — 1. As n 2 changes, the closed-loop pole, a, exhibits an oscillating behavior. For some values of n 2 , a is outside the unit circle. As n 2 —* oo, a converges to one. The middle region corresponds to \a\ < 1. It is clear that a is inside the unit circle for any value n 2 . As n 2 —• oo, a converges to a. The lower right corner corresponds to a > 1. The closed-loop system is stable for any finite n 2 as all the curves converge to 1 from below. Typical curves from the three regions are shown in the lower graph of Fig.(2.6). Sma l l per turba t ion For sufficiently small e, the formulation of Eq.(2.42) suggests that the perturbation the-orem can be used to find the closed-loop poles, Elshafei, et. al. (1991). The immediate question is : how small should e be ? The practical experience with the G P C shows that it is sufficient to choose n 2 to correspond to the time which the plant's output needs to reach 90% of its steady-state value and /3 > 0 . The following lemmas, proved in Deif (1982), give, to a first approximation, the eigenvalues A of the perturbed system in Eq.(2.42) as related to the eigenvalues A of the matrix A. L e m m a 2.1 If A, is a distinct eigenvalue of a semi-simple matrix1 A with the corre-sponding eigenvector ul, the eigenvalue A,- of the perturbed matrix A + tA\ is given for the first order approximation by : Xi « A,- + e < v\ i4iu* > (2.52) 1 A matrix is semi-simple if it is diagonalizable. Chapter 2. Generalized Predictive Control 3 3 (2.6,1,0) T y p i c a l E f f e c t o f n 2 o n t l ie Pole L o c a t i o n 1 • 1 1 1 1 1 1 ' 1 c < -1 1 1 1 1 1 1 I 1 I 0. 2. 4. 6. 8. 10. 12. U. 16. 18. 20. X l 2 Figure 2.6: G P C of a first-order system Chapter 2. Generalized Predictive Control 34 where u},... ,un are the eigenvectors of A and u 1,....,t) n are their reciprocal basis. L e m m a 2.2 If X is a semi-simple eigenvalue 2 of multiplicity m of a matrix A with corresponding eigenvectors y},..., u m , the eigenvalues A i , . . . , A m of A + eAi are given for the first order approximation by : Xi ta A + eAf), i = where X[l\ ..., \$ are the eigenvalues of : . m (2.53) S = u u (2.54) u 1 , . . . , « n are the eigenvectors of A and u 1 * , . . . ,u n * are the conjugate transpose of their reciprocal basis. L e m m a 2.3 If X is a non-semi-simple eigenvalue 3 of multiplicity m of a matrix A, with the corresponding generalized eigenvectors u 1 , . . . , « m , the eigenvalues A , - , . . . , A m of A + tA\ will lie on the circumference of a circle with center z and radius r « | !y/eAJ1^|, where z « A + —Z?=1 < v», cAxy? > m J AS1} = \J< u m , A\v} > e^r, j = y/^l, i = 1,... , m (2.55) (2.56) The above lemmas provide a handy way to study the effect of n2 and /? on the closed-loop poles. The computational cost is small as the eigenvectors of A and their reciprocal bases are calculated only once and fcT, the main burden in forming Ai, is required anyway in Eq.(2.41). 2 An eigenvalue is semi-simple if the dimension of the associated Jordan block is 1 x 1. 3An eigenvalue is non-semi-simple of multiplicity m if the dimension of the associated Jordan black i s r a x m . i Chapter 2. Generalized Predictive Control 35 Genera l per turbat ion It is clear that the G P C control law has a state-feedback term. The following lemma gives a sufficient stability condition which will be used to assess the stability of our control scheme. L e m m a 2.4 Let z(t + 1) = Az(t) (2.57) BP > 0 VQ > 0 (2.58) such that ATPA -P = -Q (2.59) Then the perturbed system z(t + l) = (A + S)z(t) (2.60) is stable if Xmin{Q) (2.61) P r o o f : It is required to prove that (A + 8)TP(A + S)-P = -Q + STP6 + ATPS + 8TPA (2.62) such that (-Q + 8TP8 + ATP8 + 8TPA) < 0 (2.63) It is possible to write VTQV > Xmin(Q)vTV (2.64) Chapter 2. Generalized Predictive Control 36 Assume 11*11 €[0,- | |A| |+ . ||A||* + A m , n ( Q ) ll^ll (2.65) Then, it is easy to show that P | | |H | 2 -r2 | |P | | | |A | | |H | -A m t n <0 (2.66) This leads to Ami„ > \\STPS + ATP8 + 8T PA\\ (2.67) Using Eqs. (2.64) and (2.67) leads to vTQv > vT(8TP8 + ATP6 + 8TPA)v (2.68) And the proof is complete. • 2.3 Case of Plant-model match Eq.(2.41) is the state-space version of the GPC derived by Clarke, et al.(1987) for the case of a single-step control horizon and zero weighting on the control action. Analysis of the controller asymptotic behavior is available only for open-loop stable processes. Using the state space formulation, the controller asymptotic behavior will be studied below for both stable and unstable systems. Theorem 2.1 has been derived by Clarke, et al.[6]. However, we believe our proof is more straightforward. Theorem 2.2 presents a general case where asymptotic as well as arbitrary values of n 2 and /3 can be handled. Theorem 2.3 illustrates the asymptotic behavior of the GPC if the open-loop system is unstable 2.3.1 Analysis of open-loop stable systems Chapter 2. Generalized Predictive Control 37 Theorem 2.1 Let the system be given by Eqs.(2.17) and (2.18) and controlled using the control law in Eq.(2.41). Assume the eigenvalues of the open-loop system are Xi,i = 1,..., n where |A,| < 1. If j3 = 0 and n2 —* oo then A; —• Aj where Aj is the ith closed-loop eigenvalue. Proof : From Eqs.(2.43) and (2.45), the closed-loop eigenvalues are the eigenvalues of the matrix A - n 2 - l „2 E 2 -j=0 Since |A(A)| < 1, it is clear that lim^^co — ; ^ n 2 i i 2 = 0. So, the proof is complete. a Theorem 2.2 Let the system be described by Eq.(2.17) and controlled by the control law in Eq.(2.41). Assume the system is open-loop stable. Then, the closed-loop system described by Eq.(2-42) can be stabilized using Eq.(2-41). The closed-loop poles, A,-, i = 1,... , n -f 1, are given by either Lemma 2.1, Lemma 2.2, or Lemma 2.3, as appropriate. If e —• 0, then : • A,- —• A, , i = 1,... , n. • A n + i e/?. where Aj, i = l , . . . , n are the open-loop poles. P r o o f :According to the form of Eq.(2.42), it is clear that Lemma 2.1 - Lemma 2.3 can be applied to find the system's eigenvalues. Note that | | iL T | | is always finite because the system is open-loop stable. If e —> 0, then \\ekT\\ 0. Chapter 2. Generalized Predictive Control 38 i.e. The closed-loop equation will be : x(t + l) A b x(t) _ u(t + 1) 0 €0 _ (2.69) The result of the Theorem follows immediately. • Comments : • In Clarke, et al. (1987), it is proved that, for stable systems, the G P C is a mean level controller if the tuning parameters are chosen such that \3 — 0, nu = 1, and ri2 —* oo. The above theorem reaches the same conclusion without assuming j3 = 0 nor n.2 —• oo and so is less restrictive. • A„ +i is always such that 0 < A n+i < 1. As \3 —> oo then A n + i —• 1 which explains the well-known observation that the closed-loop response gets slower as the control weighting increases. If the case of \3 = 0 is considered, Lemma 2.1 and Lemma 2.2 can be elaborated to give computationally easier formulas to calculate the perturbed eigenvalues. Under the conditions of Lemma 2.1, the eigenvalues of Eq.(2.43) can be calculated using Eqs.(2.52) and (2.45) as follows : A, = A,- - ev'E^Sjb c T A i + 1 u ' (2.70) A,- = A,- + ei(n2)C« (2.71) where, £ l (n 2 ) = (2-72) Chapter 2. Generalized Predictive Control 39 (2.73) Under the conditions of Lemma 2.2, the eigenvalues of Eq.(2.43) can be calculated using Eqs.(2.53) and (2.45) as follows : S = ( - E ^ i i / A * 1 ) M i ... yT A,- - X + ei(n2)A,-(2.74) (2.75) where Ai is the iih eigenvalue of : S = 6 c3 u1 ... um (2.76) and ei(n2) is as given in Eq.(2.44). Theorem 2.2 is still valid with the exception that A n + i is disregarded as the order of the closed-loop system is n. 2.3.2 Analysis of open-loop unstable systems Using a GPC to control an open-loop unstable system is analyzed below. First, a heuristic approach is taken to give insight into the problem. Then, a formal analysis is given. Consider a first-order unstable system given by + 1) = Aixi(t) + 6iu(t), |Ai| > 1 (2.77) A GPC having nu = 1 and n2 —* oo is equivalent to using a constant control-signal u. The closed-loop system will not explode iff xi(t + l) = xi(*) (2.78) Chapter 2. Generalized Predictive Control 40 giving U = - X i »1 (2.79) It is clear from Eq.(2.78) that the closed-loop pole is at 1. Now, assume a general system that has one unstable pole Xi(t + 1) ' Ai Xl(t) x2(t + 1) x2(t) + J : _ xn(t + 1) _ xn(t) u(t) (2.80) where J is a Jordan canonical form with all diagonal elements less than 1. Using the same idea used for the first-order system given by Eq.(2.78), the closed-loop system does not explode if 1 - A i u = - X i 1 - A x &i 1 0 X i x 2 Xn (2.81) Substituting Eq.(2.81) in Eq.(2.80) shows that one closed-loop pole is at 1 and the others lie at the stable open-loop poles. To consider systems with more than one open-loop unstable pole, assume a system given by Eq.(2.77) and x2(t + 1) = A2x2(<) + b2u(t), | A 2 | > 1 (2.82) If the closed-loop system is not to explode, it is necessary and sufficient to satisfy Eq.(2.78) and x2(t + 1) = x 2(t) (2.83) Chapter 2. Generalized Predictive Control 41 using a constant control signal u. Generally, this is not possible as it requires one un-known, it, to satisfy two independent linear equations. Now, it is possible to proceed to a formal study of systems that have one unstable pole. Lemma 2.5 Let the system be given by Eqs.(2.17) and (2.18) . Assume the eigenvalues of the open-loop system, A,-,i = 1,... ,n, are distributed such that : • |A X |>1. • |A,| < 1 i - 2,...,n. then, (2.84) where kJ and e are given in Eq.(2-41) and Eq.(2.44)> respectively. Proof: Assume, for simplicity, that the system is diagonalizable, then Ci c 2 . . . Cn fc=0 fc=0t=l where, cti = Cibi , i = l,...,n l im ekT 7 1 2 — • O O 1 -A , A = Ai 0 . . . 0 h 0 A2 0 b2 : , h = 0 . . . 0 A„ bn (2.85) (2.86) Chapter 2. Generalized Predictive Control 42 Eq.(2.85) leads to «* = #> +I>Af+ 1 (2-87) «=i n a, where , A> = E T^Y (2.88) « = 1 1 _ A « A = ~7~T\~ ' t = l , . . . , n (2.89) Let cr = Ei=o X sh t h e n Ti2—1 n n n ' = E[/5o2 + E ^ 2 + 2 ^ o E A A r i + 2 A 5 : A ( A x A i ) i + 1 + ...+ j=0 t'=l t'=l i=2 2^n_1^n(A„_1Any+ 1] (2.90) The above equation leads to n 1 \ 2 n 2 n -i _ \r»2 * = ^ n 2 + E ^ A 2 Y ^ + 2 ^ o E A A , l — T " + »=1 1 ~ A i .=1 1 - A«" 2 / g 1 E A A i A j 1 ~ ( A ; A ; ) n 2 + . . . + 2 / 9 n - 1 / ? n A n _ 1 A n 1 ; ( A " - l A ? ) " 2 (2.91) ,_ 2 1 — A i A , " 1 — A n _ i A n Let <f,- = E"4oX 5 j A ^ ' + 1 , then ri2—1 n * = E l /^ 1 + E & ( i=o t=i = ^ ' T ^ + S / ^ ' r ^ r (2-92) Using Eqs.(2.91) and (2.92), it is possible to show that 7i = l im — = < T12 —+CO (J if«=-1 0 otherwise The result of the lemma follows directly from Eq.(2.93). • (2.93) Chapter 2. Generalized Predictive Control 43 T h e o r e m 2.3 Let the system be described by Eq.(2.17), with the corresponding open-loop poles A,-, i = l , . . . , n be controlled by the control law given in Eq.(2.41). Assume the system has one unstable pole, | A i | > 1 and (n — 1) stable poles, |A,| < 1, i = 2, . . . , n . Then, for a sufficiently small e, the closed-loop system described by Eq.(2.42) will have its closed-loop poles, A,-, i = l , . . . , n + 1, given by either Lemma 2.1, Lemma 2.2, or Lemma 2.3, as appropriate; Furthermore, if n2 —• oo, then the closed-loop poles will be such that : • Aj -> 1 . • A,- - f A,-, • A n + i -+ 0. i = 2 , . . . , n. P r o o f : According to Eq.(2.42), Lemma 2.1 - Lemma 2.3 can be applied to find the system's eigenvalues. Assume for simplicity that the system is diagonalizable. Then, it is possible to write : A = Ai 0 . . . 0 bi 0 A 2 0 .4 = b2 0 0 A n bn Using Lemma 2.5, it is possible to show that: l im efcr = 1 - A ^ 0 Eq.(2.94) leads to and, ekTA = Ci C 2 . . . Cn (2.94) (2.95) ekTb = 1 - A x (2.96) Chapter 2. Generalized Predictive Control 44 The closed-loop poles are the solutions of : \zl- A i | = 0 where , A i = Ai 0 0 A 2 . . . 0 6i 0 b2 0 A n bn A l < 1 ~ A l ) 0 . . . 0 1-Xi Consider the following identity, Kailath (1980) : M i M2 Mz MA = | M 4 | | M i - M2M-1M3\ , \MA\ ± 0 Choose, M2 M3 M4 zI-A -b Hence, k / - A i l = ( z - ( l - A i ) ) fenAl(l-Ai) 61(z-(l-A1)) = (Z-I)(z-\2)...(Z-Xn)z Mi(l-Ai) 6i(*-(l-Ai)) z — A 2 (2.97) (2.98) (2.99) (2.100) . . . 0 0 0 z-K (2.101) Chapter 2. Generalized Predictive Control 45 • Theorem 2.3 states that Ax = 1 + 8 as n 2 —> oo. Whether 8 is positive or negative can be assessed using either Lemma 2.1, Lemma 2.2, or Lemma 2.3. Theorem 2.3 is, in fact, a good tool to find the upper and lower bounds of n 2 for which the G P C remains a stabilizing controller. Comments: • Assume that the open-loop plant has m unstable poles such that |A^| > | A ; + i | , i = 1,... , m. It is easy to show that Ai —> 1 and Aj —> A,-, i = 2 , . . . , m. • Theorem 2.3 is true even if the system is non-diagonalizable as shown by the above analysis of Eq.(2.80). Example 1 demonstrates this fact. • It is logical to restrict the analysis to systems having one unstable pole because it is well known that a single-step control horizon is not adequate to stabilize systems having more than one unstable pole. Example 1: Consider the third-order non-diagonalizable system A x 0 0 A= 0 A 1 0 0 A where, |Ax| > 1 and |A| < 1. As shown in Brogan [7] b3 cT = C\ c 2 c 3 (2.102) 0 0 0 A'' j A ' " 1 (2.103) 0 0 A'' Chapter 2. Generalized Predictive Control The step-response coefficients are where, Note that Hence, :=0 = A) + p\X{ + & A ' + 83jXj C161 c 2 6 2 + C363 c 2 6 ; Po = :—r 1 - A i 1 - A ( 1 - A ) 2 c\b\\\ 1 -Ax (c 26 2 -f c 36 3)A c 2 6 3 1 - A ( 1 - A ) 2 c2b3 1 + A = A ^ 1 - A " 2 dX 1 - A d2 a 41 - A 2 " 2 d 1 - A 3 " 2 0 1 - A 2 " 2 " A ~ ~"T — .........— — 2,-<PX2 1-x2 dX 1 - A 3 1 - A 2 ri2—1 1 _ A 2 ™ 2 1 — A 2 ™ 2 1 — A " 2 1 -= "2$ + A 2 Y ^ T + & 2 V r V + W l i ^ + W 2 T 2 0 A ^ - ^ i 2 ^ 1 ~ ( A l A ) " 2 i?/?/?1"^2 1 v 2 / W J A 1 — AAi + ^ 3 f e A T T A T -Chapter 2. Generalized Predictive Control 47 d 1 - A 3 " 2 1 - A 2 " 2 2 T ^ A T dX 1 - A 3 i=o (2.111) = /3oAi 1 - A" 2 1 - A X + PiX 1 - A 2 " 2 1 1 - A 2 + &A; 1 - (AiA)" 2 1 - A j A + & A i A d 1 - (A x A)" 2 dX 1 - AiA ri2—1 j=0 1 - A " 2 1 = (30X- - + p\\-(2.112) /?3A : 0"3 1 - A , d 1 - A 2 " 2 dA 1 - A 2 T12—1 i=o 1 - A i A 1 - A 2 (2.113) = PoX d 1 — A" 2 dA 1 - A 1 - A 2 " 2 dA 2 1 - A 2 + . . d 2 1 - A 2 " 2 d l - A 3 " 2 1 - A 2 " 2 . PZVJTI X — "TT - i 1 r H (2.114) L dA 2 1 - A 2 dX 1 - A 3 1 - A 2 Note that the highest exponent value of Ai in Eq.(2.111) is 2n 2 while it is always less than 2n 2 in Eqs.(2.113)- (2.114). It is then possible to show that l im — ri2—»oo (j i = 1 0 i = 2,3 (2.115) Using Eq.(2.43), the closed loop poles are the eigenvalues of 1 0 0 A = (2.116) A 1 It is clear that A has its eigenvalues at 1, A, A.D It was conjectured, Clarke, et al.(1987), that the G P C would stabilize an unstable system if the-control horizon was chosen at least equal to the number of the system's Chapter 2. Generalized Predictive Control 48 0.6 o O-, o ( •o o co O - n2 Figure 2.7: G P C of a nonminimum-phase system with one unstable pole unstable poles. This conjecture together with the above result concerning first-order systems would seem to motivate the following claim. C l a i m : Given a SISO system with one unstable pole, it is always possible to find a prediction horizon n 2 such that the control law given by Eq.(2.41) results in a stable closed-loop system. However, as shown by the following counter-example, this-claim is not true. Counter example : Consider the following system 1- 2-5Z-2.75 « " 2 2 - 2 . 5 * + l [ } The above plant is non-minimum phase and has open-loop poles at 0.5 and 2. Fig.(2.7) shows that the control law given by Eq.(2.41) cannot stabilize the system whatever the value of n 2 is. Comment s Chapter 2. Generalized Predictive Control 49 • The source of the instability in the above example is the unstable pole. So, it would be sufficient to track the locus of that pole alone as the prediction horizon varies. • The closed-loop system can be described by Eq.(2.43) If e is small enough, the per-turbation analysis can be used to calculate the closed-loop eigenvalues efficiently as shown below. If perturbation analysis is used, the calculation of each eigenvalue will be separate from and independent of the calculation of the other eigenvalues. The following example demonstrates how the perturbation analysis can be used to monitor a particular eigenvalue and pick up* the prediction horizon which stabilizes the system. E x a m p l e 2: Consider a plant given by y = 20z* + 4.7z - 3.15 u z3 + 2Az2 -1 .75*+ 0.15 k ' ' The open-loop poles are at -3.0, 0.1, 0.5. The pole at -3 is monitored as the prediction horizon, n 2 , varies. Fig.(2.8) shows that there are only few choices of n 2 which result in a closed loop-pole inside the unit circle. The solid line represents the pole calculated using Lemma 1, while the dotted line represents the exact values. The following observations are worth noting. First, the perturbation analysis is always successful in predicting whether the pole is inside or outside the unit circle. Second, the accuracy of the calculations is acceptable even for small prediction horizons where t is not necessarily small. Third, the perturbation calculations give conservative values of the closed-loop pole. Chapter 2. Generalized Predictive Control 50 - 0 . 6 Figure 2.8: Using the perturbation analysis to choose 2.4 Case of p lant -model mismatch 2.4.1 Genera l plant-representation Let the plant be represented by a non-anticipative dynamic operator that maps the input time-function into the output time-function. The plant is controlled using the control law in Eq.(2.41).' If we consider a regulator problem and choose nu = 1 and (3 = 0, the control law will be : u(t) = e[m{y{t)-y(t)) + kTx(t)} (2.119) where, m = Er=o1 st e and fcT are given in Eq.(2.41) Chapter 2. Generalized Predictive Control 51 Plant </(0 u{t) + em ek7 + ffl Figure 2.9: The control system in case of exact representation Fig.(2.9) shows the complete system representation, while Fig.(2.10) is an approx-imation which assumes that the input to the plant is ej^x(t). This approximation imposes a severe situation on the controller as it deprives it of the correction term, em(y(t) — y(t)). On the other hand, Fig.(2.10) enables us to put the control law in a clear observer plus state-feedback form and makes it possible to apply directly the results in Safonov (1980). The investigation of the stability conditions for the system in Fig. (2.10) is tackled in three steps. First, the stability conditions in case of a direct state feedback are stated. This will be followed by studying the stability conditions for the observer, assuming disconnected state feedback. Finally, the stability of the overall system is concluded using the Separation of Estimation and Control theorem, Safonov (1980). Before going any further, the following definitions are stated. For more details, the reader is referred to Safonov's work. Chapter 2. Generalized Predictive Control 52 Plant K O emb •0-u(t) ->g— KO Figure 2.10: The approximate control system Definition 1: Graph (G) = {(w,cr) e ft x S | a = Geo} . Cl and E are normed vector-spaces. Definition 2: < C(*)>7(<) >= ^ =oCT(ib(0-Definition 3: Sector (F) = {(w,<r) € x E | F(LO,O,T) < 0 V r € T} where, .F(u;, <r, r ) =< . F n C + Fx2u>, F2iO + >. For convenience, we write F = Fu F12 F21 F22 The stability of the system in Fig.(2.10) will be established by the following lem-mas. Chapter 2. Generalized Predictive Control 53 L e m m a 2.6 Let the plant be described by x(t + l) = Ax(t) + bNiu{t) (2.120) where JV,- is a general operator which represents the mismatch between the plant and the linear model used to design the controller. Let the control law, u(t) = t^xft) be designed based on a model given by x(t + 1) = Ax(i) + bu(t) (2.121) (2.122) y(t) = cTx(t) Assume that 3PQ > 0 V Qo > 0 such that P0 = A PQA + Qo (2.123) (2.124) Then, as n2 —» oo, Graph(—Ni o efcT) is strictly inside the sector Ph P2A-P2 ph ptA + pl and the system is closed-loop finite-gain stable, where P is the unique solution of: P = (A-eb kT)TP(A - eb F ) + c c1 (2.125) Chapter 2. Generalized Predictive Control 54 P r o o f : Graph(-Ni o ek) = {(x,u)\u = -Ni o efcTx(*)} (2.126) Consider, $ = {(x, u)\ < Phu + (P^A - pi)x , Phu + (P*A + P* )x >} (2.127) Using Definition 2 and Eq.(2.126), Eq.(2.127) can be rewritten as $ = {(x(t),u(t))\-J2x(tf[(A - bNitkT)TP(A-bNiek) - P]x(t)} (2.128) T <=o According to Eq.(2.124) and noting that e —• 0 as n 2 —> oo then Eq.(2.128) leads to : Stability follows directly from the sector properties and Lemma (4.1) in Safonov (1980). Eq.(2.125) is based on the analogy between the G P C problem and the equivalent optimal control problem where they both minimize : ' t=o i.e Graph(—TV,- o tkj) is strictly inside the sector $ = {(x(t),u(t))\-J2xT(t)(ATPA - P)x(t) < 0} 1" *—n (2.129) Ph P2A-P2 PH PzA + P* • J = £ y ( * + i + l ) 2 t'=0 t l2 —1 = E + * + l)± + *' + !) + 8(i)Au2(t + i) (2.130) *=o where (3(0) = 0 and /?(i) = 00 for i = 1,... , n 2 — 1. • Chapter 2. Generalized Predictive Control 55 L e m m a 2.7 Let the plant be described by : x(t + 1) = Axft) +-bu(t) (2.131) y(t) = N0cTx{t) (2.132) where N0 is a general operator which represents the mismatch between the plant and the linear model used to implement the observer x(t + 1) = Ax(t) + bu(t) + brn(y(t) - y(t)). (2.133) y(t) = cTx(t) (2.134) Then, as n2 —> oo, Graph^—embocTNo) is strictly inside the sector P-2 P-2-A-P-* P-a P-^A + P-h and the observer is non-divergent, where P is the unique solution of P = (A- emb cT)TP(A - emb cT) + Q , Q > 0. (2.135) P r o o f : The proof is similar to that in Lemma 2.6. • It follows from Lemmas 2.6 and 2.7 that e £ T is bounded and x(t) is a non-divergent estimate of xjt). Consequently, using the Separation of Estimation and Control theorem, the closed-loop system, shown in Fig.(2.10), is finite gain stable. This shows that by increasing the prediction horizon the robustness of the closed-loop system increases as long as the open-loop plant is stable, Elshafei, et al.(1991). Chapter 2. Generalized Predictive Control 56 2.4.2 Linear time-invariant plant-representation The plant is assumed to be represented by x(t + 1) = Anx(t) + A12z(t) + blU(t) (2.136) z{t + 1) = A21x(t) + A22z(t) + b2u(t) (2.137) y(t) = gx(t) + gz(t) (2.138) where, x(t) represents the modelled dynamics. z(t) represents the unmodelled dynamics. A2i = 0 as the plant's representation is assumed to be in the Jordan canonical form. Let the control law be based on the following model x(t + 1) = Anx(r) + blU(t) (2.139) y{t)=gx(t) (2.140) Using Eqs.(2.119), (2.138) and (2.140), the control law is u(t) = -em(cj x(t) + c£z(t)) + e(mc£ + kT)x(t) (2.141) Substituting for u(t) in Eqs.(2.136), (2.137), and (2.139), we get x{t + 1) An 0 A12 x(t) x{t + 1) 0 An 0 m + z{t + 1) 0 0 A22 Chapter 2. Generalized Predictive Control 57 —mb^gT h^mcT -f kJ) —mbxcT x(t) —mb^cT ^ ( m c f + k?) —mbicT m (2.142) —mb2cT b2(mc? + fcT) -mb2cT C o m m e n t s : — The formulation of Eq.(2.142) shows that the problem can be dealt with using the perturbation analysis. — e —> 0 as n2 —• oo, i.e the control law turns to be a mean level controller. — Using the same approach used in section (2.4.1), the G P C can be interpreted as an observer plus state-feedback scheme. The above analysis leads to the following theorem. T h e o r e m 2.4 Let the plant be described by Eqs. (2.136) - (2.138) and the control law, Eq.(2.141), be based on the model given by Eqs.(2.139) - (2.140). Assume the following conditions are satisfied : — The plant is open-loop stable. — (3 = 0. — e is sufficiently small. Then, the closed-loop system described by Eq.(2.142) will have its closed-loop poles given by' either Lemma 2.1, Lemma 2.2, or Lemma 2.3 as appropriate. Further-more, if n2 —> oo, the closed-loop poles will be at the open loop poles of the plant, Eqs.(2.136)-(2.138), and its approximate model, Eq.(2.139). P r o o f : The proof is immediate from Eq.(2.142) and the subsequent comments. • Chapter 2. Generalized Predictive Control 58 2.5 C o n c l u s i o n s A generalized predictive controller has been derived based on state-space modelling. The case of one-step control horizon has been analyzed in detail. First, it has been shown that the G P C can stabilize any first:order system. Then, it has been shown that the G P C problem is equivalent to a perturbation problem. For the case of small perturbations, approximate formulas have been used to calculate the closed-loop poles. This approach has enabled us to relate the prediction horizon to the closed-loop poles so that specific poles would have been calculated without solving the whole eigenvalue problem. Consequently, prediction horizons and control-weighting factors which insure closed-loop stability have been picked up correctly. For the case of general perturbations, an upper bound on the perturbation norm has been derived to insure closed-loop stability. The G P C has always been able to satisfy the robustness bound by proper tuning of the prediction-horizon and control-weighting factor. In the next chapter, this robustness bound will be used to study the stability of the adaptive Laguerre-filter based G P C . Both the plant-model match and plant-model mismatch cases have been studied in this chapter. The main conclusion has been that the G P C can achieve arbitrary ro-bustness by increasing the prediction horizon. This result has been the motivation to implement an adaptive Laguerre-filter based G P C as shown in Chapter 3. Chapter 3 Adaptive Generalized Predictive Control 3.1 Introduction From the modelling point of view, it is possible to classify predictive control schemes into two main categories. The first uses a structured model representation, e.g. A R M A X or C A R I M A models. The second approach uses an unstructured model representation, e.g. an impulse-response based model or an orthonormal-series based model. In De Keyser, et al.(1981), an A R M A X model is used to derive the extended pre-diction self adaptive controller, (EPS A C ) . The EPS A C needs n-self tuning fc-step-ahead predictors in parallel, where n is the model order. Hence, the Diophantine equation has to be solved for each predictor. In Ydstie (1984), an A R M A model is used to derive the extended horizon predictive controller, (EHC), where the receding horizon idea is introduced. A n A R M A model is also used in Irving, et al.(1986) to derive a generalized predictive controller, (GPC), using input and output models. Difficulties in tuning G P C while preserving stability are shown in Wertz, et al.(1987). A C A R I M A model is used to derive another version of the G P C in Clarke, et al.(1987) where an elegant recursive solution of the Diophantine is introduced. Still , the theoretical properties of the adaptive G P C need further study. In model algorithmic control, ( M A C ) , the impulse response coefficients are used to model actual plants, Richalet, et al.(1978). The impulse-response coefficients are used to derive the step-response coefficients which are used in the dynamic matrix, (DMC), 59 Chapter 3. Adaptive Generalized Predictive Control 60 Cutler (1980). The use of the impulse-response coefficients is based on the assumption that the impulse response of the true plant converges to zero. This assumption means that the M A C and the D M C are applicable only to stable systems. Furthermore, if the open-loop system is poorly damped, the number of coefficients required to represent the system effectively is large. A new predictive controller which uses an unstructured model is proposed in Zervos and Dumont (1988). The new controller uses Laguerre functions for modelling. There are some advantages in using Laguerre-functions based models. First, any stable system can be modelled without the need for accurate information on the true plant order and time delay. Second, the Laguerre functions can represent signals which exhibit long time-delays because of their similarity to Pade approximants. Third, in the presence of unmodelled dynamics and colored noise, contrary to the A R M A X model, a Laguerre-function based model results in an unbiased estimate of the nominal plant when the input is white, Dumont, et al.(1991). Fourth, Laguerre functions can accurately model nonlinear plants, Lee (1968). In Zervos (1988) the theoretical properties of a SISO single-step ahead predictive controller are studied. This controller has a one-step control horizon and zero weight on the control actions. In this chapter a generalized predictive controller based on Laguerre-function modelling is derived. Allowing multi-step predictions and a non-zero weight on the changes of the control signal help avoid excessive control actions, too active control signal and sluggish output response. Both SISO and MIMO systems are analyzed. 3.2 Modelling and identification The following definitions establish the mathematical bases for the Laguerre-filter based models which are the main topic in this chapter. Chapter 3. Adaptive Generalized Predictive Control 61 Defini t ion 3.1 The signal y(t) is said to be in the Lebesgue space £2(0,00) iff /•oo / y2(t)dt < 00 (3.143) Jo Defini t ion 3.2 The sequence fi{t), i = 1,2, • • • ,n is orthonormal iff 1 i — j (3.144) 0 i + j f°° Mt)fj(t)dt = Jo Defini t ion 3.3 The orthonormal set {/«(<)} /«(*) G £2(0,6] J S called complete or closed if either of the following statements is true : 1. There exists no function x{t) G ^2(0,6] such that / x(t)fi(t)dt = 0, ,£ = 1,2, - • -. (3.145) Ja 2. For any piecewise continuous function y(t) E L?[a,b] and e > 0, however small, there exists an integer N and a polynomial N X > / i ( 0 (3.146) such that ["m-JTcimfdtKe .(3.147) J a i=i The study in most of this chapter is concerned with signals in the Lebesgue space, £2(0,00). The Laguerre functions, a complete orthonormal set, are used for signal mod-elling. In the time domain, the Laguerre functions are described by where i is the order of the function and p is the time-scale. Since forms a complete orthonormal set, the classical Riesz-Fisher theorem is applicable, Zemanian (1968). Chapter 3. Adaptive Generalized Predictive Control 62 T h e o r e m 3.1 Let {/;(£)} be a complete orthonormal set as specified above, and let {c,} be a sequence of real numbers such that E i ° |ci | 2 converges. Then, there exists a unique y(t) € £2(0,00) such that r°° d = / y{t)h{t)dt (3.149) Jo 00 y(t) = (3.150) t=i The above theorem means that the impulse response of any stable system can be repre-sented with arbitrary accuracy by a series of Laguerre functions. In the Laplace transform domain, the Laguerre filters are given by Li{3) = yffi (3.151) (s + Py The Laguerre filters can be implemented by a simple ladder network which has the following SISO discrete-time state-space representation, Zervos(1988). x(t + l) = Ax(t) + bu(t) (3.152) y(t) = cTx(t) (3.153) where A = - T l T ^ - T a T, 0 ( - 1 ) " - 1 T 9 " - 2 ( T I T 2 + T 3 ) bT = cT = Tr-r 0 0 —HT2—ra T, T l _T2 N-l T. (3.154) (3.155) (3.156) Ci C 2 . . . C J V The constants T i ,T 2,T 3 , and r 4 are give in terms of the sampling period Ts and the Laguerre-functions' time-scale p as TI = e-pT' (3.157) Chapter 3. Adaptive Generalized Predictive Control 63 r 2 = Ta + ^(e~p T* - 1) (3.158) r 3 = -TsepT> - ^(epT- - 1) (3.159) I—(l — epT,\ U = y V i (3.160) The Laguerre spectrum gains, c,-, i = 1,... , JV are identified on-line using recursive esti-mation. 3.3 A n a l y s i s of s i n g l e - i n p u t , s i n g l e - o u t p u t s y s t e m s An adaptive version of the control law derived in section (2.2.1) is applied to the system described by Eqs.(3.152)-(3.153). Assume a one-step control horizon, Eq.(2.27) can be written as (sUi + /3)Au(t) = g(v - / - slU(t ~ 1)) (3.161) where Hence, ! i r = [ S o , ^ , . . . , ^ - ! ] (3-162) t - i Si = J2cTA>b (3.163) i=0 i=0 u(t) = e{gy^ + m[y(t) - y(t)] - kTx(t) + j3u(t - 1)} (3.165) where Chapter 3. Adaptive Generalized Predictive Control 6 4 Tl2—1 t'=0 rp n 2 - l i=0 m ( 3 . 1 6 7 ) ( 3 . 1 6 8 ) Using E q s . ( 3 . 1 5 2 ) and ( 3 . 1 6 5 ) , the closed-loop system is x(t + l) u(t + l) A b -ekA -etfb + efl 0 x(t) u(t) + [m(y(t + l)-y(t+l)) + sTy] ( 3 . 1 6 9 ) 3.3.1 Stability and convergence analyses in case of plant-model match The following theorem, Payne ( 1 9 8 7 ) , is essential to prove the stability of our adaptive scheme. Theorem 3.2 Consider the time-varying difference equation z(t + 1 ) = F(t)z{t) + v(t) ( 3 . 1 7 0 ) where z(t) and v(t) are real vectors of finite dimension. Suppose that the sequence of matrices {F(t)} and z ( 0 ) = Z Q are bounded and that the free system z(t + l) = F(t)z{t), t > 0 ( 3 . 1 7 1 ) is exponentially stable. Furthermore, suppose that there exist sequences of non-negative numbers {"f(t)} and {S(t)} and an integer N > 0 such that N la(*)ll<7W£ll*(<-0ll + «(0 ( 3 . 1 7 2 ) t'=0 Under these conditions, if {l(t)} converges to zero and {S(t)} is bounded, then {z(t)} and {v(t)} are bounded. If in addition, {S(t)} converges to zero, then {z} and {yjt)} also converge'to zero. Chapter 3. Adaptive Generalized Predictive Control 65 Using Theorem 3.2, the stability of the closed-loop system described by Eq.(3.169) is concluded. Theorem 3.3 Assume the plant is described by Eq.(3.152) and (3.173) where, sit) u(t) (3.174) Provided that a least-squares algorithm is used to find c j such that dim(c£) = dim(cT), then the closed-loop system described by Eq.(3.169) is stable, i.e. {y(t)} and {u(t)} are bounded for all t. P r o o f : Using the recursive-least squares estimator, the parameters' estimates have the following properties, Goodwin and Sin (1984) 1. {£„(<)} is bounded 2. lirn^oo \£a(t) - c „ ( t - l ) | = 0 3. There exist nonnegative sequences {£(0) a n d {^(t)} that converge to zero such that \m-y(t)\<at)\\m\+m Consider the closed-loop system given by Eq.(3.169). Choose A b -ekT -c^b+eP (3.175) F(t) = v(t) = 0 e [m(y(t + 1) - y(t + l ) ) + j j , « ] Chapter 3. Adaptive Generalized Predictive Control 66 Theorem (2.2) shows that there always exist n2 and (3 such that the free system z(t + 1) = F(t)z(t) (3.176) is stable. Using Eqs. (3.152) and (3.175) leads to HfiWII < H\™\l(\k(t + + *(«)] + 11^11} < l i r - ' W I K T W I I ^ O I I+ *(*)} (3-177) where T(t) = I-0 m ( £ - £ ) (3-178) 7(t) = e\m\at)\\F(t)\\ (3.179) 6(t) = i{\mW) + \\£lL\\] (3-180> and / is the identity matrix. The above properties of the recursive least-squares estimator clearly mean that j(t) converges to zero and 6(t) is bounded. Theorem 3.2 leads to the conclusion that the system described by Eq.(3.169) is stable. • E x a m p l e Consider the 8r/i-order system given by G W " (TTT)1 The system is sampled using a 1.0 sec. sampling period. The open-loop response, Fig.(3.11), is highly overdamped with a very slow initial response. There is an im-plicit dead time of roughly 4 sees. The model uses 8 Laguerre filters. The filters' gains are estimated using RLS with an initial covariance matrix P0 = 100 x / where I is the identity matrix. Fig.(3.12) shows the convergence of the Laguerre gains which agrees well with the assumptions of Theorem 3.3. In Fig.(3.13), the frequency response of the identified model (solid line) is compared to that of the true system (dotted line). Up to Chapter 3. Adaptive Generalized Predictive Control 67 the Nyquist frequency, i.e. 7r rad/sec, the model achieves an almost perfect match with the plant. The G P C is tuned such that n 2 = 8, n„ = 1, and 0 = 0.5. The closed-loop re-sponse is shown in Fig.(3.11). It is clear that the system achieves a perfect tracking of the reference signal. The rise time of the closed-loop response is faster than the open-loop. The overshoot is acceptable. 3.3.2 Robustness analysis As mentioned before, any stable plant can be represented by an infinite Laguerre series. However, a finite but large truncated Laguerre series can model a stable plant with any specified accuracy. In practice, it is desirable to use a low order model. So, the robustness problem should be studied. The following theorem addresses this issue. Theorem 3.4 Let the plant be represented by a large truncated Laguerre series. u(t) (3.181) (3.182) xx{t + 1) Ai 0 3a(0 'ki ' + . x2(t + 1) A2i A2 y(t) = <? .*i(0 Assume that the above plant is modelled using a low order model given by x.i(t + l) = Aixi(t) + kiu{t) y = Qi ': Q (3.183) (3.184) Assume the system is controlled by the control law given by Eq.(3.165), using cf. Then, the closed-loop system is stable if e | | < f - / | | < 1 -m (3.185) Chapter 3. Adaptive Generalized Predictive Control 68 o.oo o.so 1 1.00 1.50 T M O 2 2.00 2 . SO o o O . ID I . . . t\r-} H 4 UTTUTTUrXJ7 0.00 q.so 1.00 l.so T «io 2 2.00 2. SO Figure 3.11: a- The open-loop response, b- The control signaL c- The closed-loop response. Chapter 3. Adaptive Generalized Predictive Control in <_i 2. SO '0.00 0.00 T «102 2. SO '0.00 0.00 T *io2 2. SO 4 0.00 T - a * Figure 3.12: The estimates of the Laguerre-filters' gains Chapter 3. Adaptive Generalized Predictive Control 70 10 -2 10 -4 10 10 •9 • > < « * « r ~ r-_ l I I l _ _ l l 1_ 10 .01 . 1 1 Frequency in rad/sec. 10 500. 0.000 -500. -1000. -1500. -2000 T 1 r -• « _ i « « : o i 10 Frequency in rad/sec. Figure 3.13: A comparison between the frequency responses of the true system (dotted line) and the identified model (solid line). Chapter 3. Adaptive Generalized Predictive Control 71 where A = Ai - ebxkj 0 A2i — eb2kr A2 b = c = S k cx 0 cf is obtained using RLS P r o o f : Assume for simplicity that /3 = 0 and yc = 0. let T T •El $-2 (3.186) Using Eqs.(3.165) and (3.184), the closed-loop system can be described by X(t + 1) = AX(t) + emb[y(t) - y(t)] (3.187) Using Eqs.(3.184), (3.186) and (3.187), it is easy to show that \\K(t + 1)|| < [||A|| + e|m|||6||||c r - cT\\]\\X(t)\\ (3.188) Eq.(3.188) shows that if the condition given by Eq.(3.185) is satisfied, then the closed-loop system given by Eq.(3.187) is stable. • E x a m p l e : Consider the following system, (Rohrs et al. 1982), G(s) = 2 2 2 9 K } s + 1 s2 + 30s + 229 To demonstrate the robustness of the Laguerre filters based G P C , assume that only one filter is used to model the above system. The time scale of the Laguerre filter is chosen as l.Osec. The reference signal has the form yc = sin(wt) Chapter 3. Adaptive Generalized Predictive Control 72 As a start, assume that w = l.Orad./sec. Choose the sampling interval, Ts = O.lsec. The controller is tuned such that /? = 0 and n2 = 13 . Fig(3.14-a) shows that the output of the system is stable and tracks the reference. To study the effect of fast sampling, T„ is reduced to 0.01 sec. If the tuning parameters are kept unchanged, the system becomes unstable. As theorem 3.4 predicts, by increasing n2 to 40 and keeping everything else the same, the closed-loop system regains its stability, see Fig.(3.14-b). It is also interesting to check the performance of the closed-loop system at w = I6.lrad./sec. At this frequency a first order model cannot match the actual system, Astrom (1983). It is also shown in Zervos (1988) that the minimum number of Laguerre filters required to model the system at this frequency is 2. Here, the number of filters is kept equal to 1. By choosing Ta = 0.03, 8 = 0.19 and n2 = 13, Fig. (3.14-c) shows that the closed-loop system is stable. Because of the poor representation of the system, the output tracking of the reference signal is poor. However, this example demonstrates that the G P C robustness can be improved be decreasing e. This is achieved by increasing n2 or p. 3.3.3 Fu r the r analyses 1. Ex tens ion to D M C :Assume that the plant can be represented by a moving average model or a truncated series of the impulse-response coefficients ( as in Dynamic Matrix Control, Cutler (1980) ). Then y(t) = hu(t - 1) + b2u(t - 2) + . . . + bnu{t - n) (3.189) Chapter 3. Adaptive Generalized Predictive Control 73 Figure 3-14: Robustness of the Laguerre-filters based G P C Chapter 3. Adaptive Generalized Predictive Control 74 A state-space representation similar to Eqs.(3.152) and (3.153) can be derived where A b So, an adaptive system which uses the model given by Eq.(3.189), a recursive least-squares algorithm to find c T , and the G P C given by Eq.(3.152) is stable. The proof is the same as in Theorem 3.2. 2. More on robustness : Choosing 0 = 0 and a single-step prediction horizon of length d, Eq.(3.165) becomes u{t) = -J—{sd-iyc + Sd-i [y(t) - y(t)] - sd-iQT Adx(t)} sd-l = J-{yc-y(t)-cT(Ad-I)x(t)} (3.190) Sd-l In Zervos (1988), Eq.(3.190) is derived by forcing the constraint y(t + d) = yc (3.191) The above derivation is the state-space form of the single-step predictive controller which is derived based on an A R M A model in Goodwin and Sin (1984). It is clear that d should be greater than the dead-time and the non-minimum phase response of the plant to insure the stability of the closed-loop system. To show the effect of plant-model mismatch, Dumont (1991), let the system be given by Eqs.(3.152)-(3.153) and the model given by ym(t) = clx(t) (3.192) 0 . . . 0 0 / 0 0 1 0 6i b2 . . . 6„ Chapter 3. Adaptive Generalized Predictive Control 75 where, Cml ••• C m N 0 . . . 0 dim(c^) = dim^cj) The control law, Eq.(3.190), can be rewritten as If d —• oo, then u(t) = -k^x(t) + Ncyc (3.193) *e = — [ ( / - £ ) + clA*} (3.194) Sd-l Nc = — (3.195) Sd-l S4-1 = ' E 1 ^ ^ t=0 = c^(J - Ad)(7 - A)~lb (3.196) «(<) = —(cT - ol)x{t) + Ncyc Sd-l 1 (y - j/m) + A ^ c (3.197) Sd-l It is easy to show that y - ym = AGu(t) = (cT - cl)(I - Aq-^bq'Mt) (3-198) The closed-loop system described by Eqs.(3.197) and (3.198) is stable if AG is strictly positive real (SPR). The above discussion shows a fundamental differ-ence between the control law which is based on a single-step prediction horizon, Eq.(3.193) and that which is based on a multi-step prediction horizon,Eq(3.165). The former may lead to instability if the prediction horizon increases while the latter becomes more robust as the prediction horizon increases. Chapter 3. Adaptive Generalized Predictive Control 76 3. Nonl inear systems : Consider the discrete-time nonlinear dynamic system x(t + l) = A.x(t) +B.u(t) (3.199) y(t) = C.x(t) (3.200) where A, B and C are nonanticipative, differential, dynamic, nonlinear operators. Assume that the nominal plant is represented by Eq.(3.152) and controlled using Tl2 — 1 u(t) = ~ £ SiCTAi+1x(t) i=0 = -kTx(t) (3.201) The stability of the closed-loop system is assessed by the following lemma, Savonof (1980). L e m m a 3.1 Let the constant matrices P 6 $tnXn and S € 3ftn X n be symmetric, positive definite solutions of the discrete Lyapunov equation P = (A- bkTfP{A - bkT) + S (3.202) If uniformly for all (x(t) , u(t) ) Graph(P°-5[A -bkT + AA + AB(-kT)}) is strictly inside (0, P 0 ' 5 ) , then, the system described by Eq.(3.199) with state feed-back given by Eq. (3.201) is closed-loop stable. The above lemma gives a sufficient stability condition for the actual nonlinear state-feedback system. However, fcT is chosen such that the linearized model is stable, not the actual plant. It has been shown that there always exists a prediction horizon n2 such that the control law given by Eq.(3.201) stabilizes the model given Chapter 3. Adaptive Generalized Predictive Control 77 by Eq.(3.152). So, Eq.(3.202) can always be satisfied. On the other hand, Lemma (3.1) is satisfied if the deviation of the model from the actual plant, ( A A , AB) is sufficiently small. Since the Laguerre functions form a complete orthonormal set, ( A A , AB) can be made arbitrarily small so that the stability of the closed-loop system is insured. E x a m p l e : Consider the problem of controlling the temperature of an exothermic catalytic reaction. Assuming a constant flow, the system equations are ^ = ^(CA0-CA)-kCA (3.203) Ki = Vapscps + pjCpjVj (3.205) K2 = F0pfcpf (3.206) „ 13000 k = 5 x 1 0 8 e — (3.207) -AH = -35000 - 200 x T (3.208) where, Fo : volumetric flow rate = 1 X 10 _ 4 m 3 /sec. V : total volume = 1.0 TO3. Vs : volume of catalyst = 0.7 m 3 . Vj : volume of fluid = 0.3 TO3. cpf : heat capacity of the fluid = 1500 J/kg°K. pj : density of fluid = 10 kg/m3. cps : heat capacity of catalyst = 6000 J/kg°K. pa : density of catalyst = 2500 kg/m3. CAO '• initial concentration = 10 moles/m3. Chapter 3. Adaptive Generalized Predictive Control 78 To : initial temperature = 400°K. The above system is nonlinear due to the term JCCA- At low temperatures there is practically no reaction, e.g. at 400°K, k = 3.8 x 10~6, while at 500°K, k = 2.5 x 1 0 - 3 . The controlled variable, y(t), is chosen to be the temperature, T, and the manipulated variable, uc(t),\s Q. Figure (3.15-a) shows the open-loop response to the series of step changes shown in Fig. (3.15-b). The open-loop response suggests that the plant can be modelled using Eq.(3.152) and Ay(t) = cTx(t) (3.209) The j-step-ahead predictor is j y(t + j) = + £ Ay(* + 0 = y(0+ £ £ * £ ( * + *) (3-210) t=l Having a set of output predictions, a performance index similar to Eq.(2.26) is minimized. The resulting control law is «(<) = (sTs + / ? / ) - V f e , - / ) (3.211) where, ' y(t)' cTA y{t) + . E t i c rA« (3.212) The control signal and the output are shown in Figs.(3.15-c) and (3.15-d) respec-tively. Chapter 3. Adaptive Generalized Predictive Control 79 o.oo 0.2-4 0.-48 0.72 0.96 1.20 <_) ZD « 0.00 o'.2-< 0.-48 0.72 T .102 0.96 7.20 0.00 0.24 0.-48 0.72 T «102 0.96 1.20 Figure 3.15: Control of a nonlinear system, a- T h e open-loop response, b- T h e set-point, c- T h e manipulated variable, c- T h e closed-loop response. Chapter 3. Adaptive Generalized Predictive Control 80 4. Ex tens ion to unstable systems : Use of the Laguerre filters is limited to Te-stable systems. It is possible to model unstable systems as follows n y(* + 1) = £ a i , i y ( < - 0 + + 1) (3-213) t=l The above model can be interpreted as follows • The term J27=i ^i,iJ/(^ — i) c a n D e used to model the unstable dynamics or the dominant dynamics of a plant. • The term c r x(t) can be used to model the stable dynamics, the time-delay as well as the high order dynamics. Using Eq. (3.213), a j-step ahead prediction of the output gives n j—1 + J) = £aitjy(t - i + 1) + £ a l t j _ i C T x ( t + i) + cTx(t + j) (3.214) t'=i t=i where <*i,j = Ol,j-l«l,l + ®2,j-l «n - i,j = ai,j-ia»i-i,i + o n j _ i «n,j = Oij-iOn.! (3.215) E x a m p l e Consider the unstable system given by _ O.OUz 2 + 0.04z + 0.007 ( ^ ~ (z - 1.28)(z2 - 0.737z + 0.165) The future output is predicted based on the following model y(t + l) = ay{t) + cTx(t-rl) x(t + 1) = Ax(t) + bu(t) Chapter 3. Adaptive Generalized Predictive Control 81 The model is chosen to have 4 Laguerre filters. The G P C is tuned such that n2 = 15, nu = 2, and 3 = 1. Fig.(3.16) shows that the system is successfully stabilized with a zero steady-state error. 5. Stochastic systems : Consider a stochastic system given by A f o - 1 ^ ) = £(<TX<) + Ciq-^Cit) (3.216) where ((t) is a white-noise signal. The control law given by Eq.(3.165) is valid in case of C(<7 - 1) = 0, i.e. a deterministic system, or C(q~l) = 1, i.e. a white noise input. In case of colored noise, a filtered model is recommended, Lam (1989). The optimal choice of the filter polynomial, T(<7_1), is T ^ - 1 ) = C(q~l), Astrom and Wittenmark, (1984). In the G P C literature, e.g Clarke, et al.(1987), T(q~x) is one of the design parameters. Design guidelines for choosing T(q~l) are given in Mohtadi, (1989). The example which is given below shows the performance of the L A G - G P C in a noisy environment. E x a m p l e Consider the stochastic process y(t) = 0.9y(t - 1) + 3u{t - 2) + ((t) - O.S((t - 1) (3.217) where ((t) is the noise signal with zero mean and 1.0 standard deviation. The reference signal is set to 1.0 for 100 samples, then, it is set to zero. The Laguerre-filter model is implemented using 6 filters and 1.0 second time scale. The controller is~ tuned such that n 2 = 6, nu = 1, and 8 = 0.1. The controller performance based on a deterministic design, i.e. using T(^ 1 ) = 1, is compared with that based on an optimal filter design, i.e T(q~x) = 1 — 0.3<7_1. Note that the filtered input, u/,and output, t/j, measurements are used to estimate the gains of the Laguerre-filters, Chapter 3. Adaptive Generalized Predictive Control 8 2 Figure 3.16: Control of an open-loop unstable system Chapter 3. Adaptive Generalized Predictive Control 83 where The filtered model is used to derive the control signal, which is fed to Eq.(3.219) to calculate the actual control signal, u(t). In the table given below, these two designs are compared with the open-loop performance. The figures given in the table are based on the last 256 samples in Fig. (3.17). Note that the output variance achieved using a minimum-variance controller is 1.36. The main conclu-sion is that a deterministic design does not drive the system to instability and it gives a reasonable output variance. Average Variance open-loop 0.080 2.23 Optimal filter design 0.004 1.69 Deterministic design 0.043 1.74 Statistics of the process output 3.4 Extensions to multivariable systems A G P C based on a Laguerre-functions model has been analyzed in section 3.3 for SISO plants. In this section, the extensions to SIMO and M I M O systems are considered. If a Laguerre-function based model is used to derive a multivariable G P C , there will be no need to define the delay matrix of the system. This is Chapter 3. Adaptive Generalized Predictive Control 84 samples Figure 3.17: Performance of the LAG-GPC in a noisy environment considered a major advantage as the delay matrix for a MIMO system has no unique structure. 3.4.1 Single-Input, Multi-Output systems Let the system be +1) ^ 1 = . s2(') + h .£m (*+i r Am = . AX(<) + bu(t) (3.219) Chapter 3. Adaptive Generalized Predictive Control 85 yi(t) T S i T Q.\2 T • • -lm V2(t) — L21 CT • • £ Z m ym(t) _ T £ m l T 2 • T c —mm (3.221) The above representation means that we have m Laguerre blocks where the zth block has JV,- filters. The states of each block are fed to a summing network to yield the the m outputs. Consider a one-step control horizon. Assume that the prediction horizon of the ith. output, yi(t), is d,-. Using the same approach used in section 3.3, it is easy to show that Vi(t + j) = Vi-Ui) + 'iiM^(t) + ^ 2A2^(t) + ...+^mAlx^(t) + <Tiju(t-l) + (TijAu(t), i = l,2 , . . . m (3.222) w here Hence, k=l (3.223) £ = Ui -y.i + KiX{t) + ouu(t - 1) + SiAu(t) (3.224) where yi(t+l) y,-(< + 2) h = yi(t) yi(t) . . . yi(t) T it = yi(t). yi(t) ••• T K(t) = xj(t) xT(t) ... slit) T T an <r,-2 . . . aidi Chapter 3. Adaptive Generalized Predictive Control 86 Ki = cJxAx cJ2A2 T A2 TA2 r1 A r T A2 (3.225) RT Adi rT Adi r T Adi The performance index is chosen to be 1 m J = * EKe. - n T v u - n + v o l (3.226) where is the vector which contains the future values of the ith command signal. The control law is chosen such that dJ dAu(t) = 0 (3.227) Eq.(3.227) leads to where u{t) = e[3u(t - 1) + a - kTX(t)} m •=i m 1=1 m (3.228) (3.229) (3.230) (3.231) t=i Using Eqs.(3.220) and (3.228), it is possible to show that the closed-loop system is * ( 0 0 + a u(t) _ e A b •ekTA -ekTb + ed Assume that P is the positive definite solution of the Lyapunov equation TTPT -P = -Q (3.232) (3.233) Chapter 3. Adaptive Generalized Predictive Control 87 where Q > 0 (3.234) (3.235) A b 0 0 Let \min(Q) be the minimum eigenvalue of Q and 0 0 - c k T A -ekTb + e(3 Using lemma(2.4), the closed-loop system given by Eq.(3.232) is stable provided that o<||A||<-||r-|| + |ri| + ll^ll (3.236) It is clear that e can be made arbitrarily small by appropriate choices of rf,-, i = 1,2,..., m and 3. This insures that the condition given in Eq.(3.236) is satisfied . Consequently, the closed-loop system given by Eq.(3.232) is stable. E x a m p l e Let the open-loop plant be x(t + l) = y(t) = - 1 0.1 x(t) + 0.25 0.1 -0.5 0.11 u(t) 1 0 0 1 l(t) The model uses two Laguerre blocks. Each block has two filters. The time scale of the first block is 1 and that of the second block is 0.5. The sampling period is 0.1 sec. The G P C is tuned such that d\ = 2, d2 = 3 and 3 = 0.8. The initial estimates of the Laguerre gains are zeros. The initial covariance matrix is Po = 100 x I where I is the identity matrix. The closed-loop response is shown in Fig.(3.18). It is well known that one input cannot drive two outputs to track two arbitrary command signals. This explains the behavior of the system in the intervals t € [30,40] and t € [90,100]. Chapter 3. Adaptive Generalized Predictive Control 88 o o fr o >-CD O CM" < o o CM • 0.00 0.24 "i r 0.48 0.72 T *io2 0.96- 1.2( o o ' 0.00 0.24 0.48 0.72 T *102 0.96 1.20 Figure 3.18: Control of a single-input, multi-output system Chapter 3. Adaptive Generalized Predictive Control 89 3.4.2 Multi-input, multi-output systems Assume a M I M O system that can be represented by ra Laguerre blocks. For simplicity, assume that the system has ra inputs and ra outputs. The state-space model is + 1) x2(t + 1) = Ai X_2 + 3Lm k2 km «l(<) u2(t) « m(t) (3.237) The output vector is given by Eq.(3.221). Assume a one-step control horizon. The j-step ahead prediction of the output is k=l m = Vi(t) - Vi: + E cf^Xkit) + <Tkijuk(t - 1) + (Tkij Auk(t) (3.238) k-l where ^ = + A{~2 + ... + I)bk (3.239) The predictions of yi, i = 1,2,..., ra, over a prediction horizon that extends from dn to di2 are given by Y: = yi(t + dn) yi(t + dn+i) ... yi{t + di2) (3.240) where 2C« = y,-(t) y,-(t) . . . yi(t) xj(t) xT(t) ... x£(t) Chapter 3. Adaptive Generalized Predictive Control 90 u(t - 1) Au(t) u^t-1) u2(t-l) ... um(t-l) Aui(t) Au2(t) ... Aum(t) Ki = Qil-^1 r T 4^ .1+1 T 4*1+1 £i2™2 rT Ad y2 / 12 „ T Adi2 l A a Q i l - ^ l Q.i2A2 Olidn 02idn ^ l t d i l + l a2idn+i J 4 * 2 Adi2 The performance index is chosen to be Omidu Omidn+i Omidi2 (3.241) i m z i = i (3.242) where $ is a diagonal matrix of dimension mxm with the ith element <f>, > 0, i = 1,... , m, and y^., is the vector which contains the future values of the zth command signal. The control law is chosen such that dJ dAu(t) = 0 (3.243) Eq. (3.243) leads to tn m m = (JX* + - 1) + E^(^- + I - Vj -Y°Il<m)} (3-244) 1=1 i = l 1=1 The stability of the M I M O non-adaptive G P C is assessed in the following theorem. T h e o r e m 3.5 Let the system he described by Eqs. (3.237) and (3.221) and controlled by the control law given in Eq.(3.244)- Assume that the system is output controllable and Chapter 3. Adaptive Generalized Predictive Control 91 that yci,i = l , . . . , m , are constant. Then, there always exist minimum and maximum prediction horizons, du and c^ 2 and a weighting matrix 3> such that the control system is stable and l im ?/,•(*) = yci, t = l , 2 , . . . , r o P r o o f : In case of plant-model match yi(t) = Ht) So, Eq.(3.244) can be written as m u{t) = {$u(r - 1) - KX(t) + E aJZa) i= i where m m A- = E ^ i = l To study the closed-loop stability, consider the free system given by ' X(t + l ) ' . M.(t + 1) A B -VKA -VKB + QV 2L(t) u(t) (3.245) (3.246) (3,247) (3.248) (3.249) (3.250) Note that A{,i = 1,2,... ,m , are stable matrices, i.e. limjt_ 0 O \\Ak\\ = 0. So, 0 0 -VKA -WKB + QV can be made arbitrarily small by choosing dn,i = 1,2,..., m, big enough and | |$ | | small enough. This means that Lemma (2.4) can be satisfied and the closed-loop system is stable. Chapter 3. Adaptive Generalized Predictive Control 92 Let then lim u(t) = u t-+oo— v ' ~ lim <Tj[KiXit) - y(t)] = FiU t—•oo — where (3.251) (3.252) Ft = r,A r, Tt^o-uj&iAi-I) . . . T ^ d n ^ { A \ - I ) . . . E ^ ^ c L ^ - 7 ) A = T.%tlo-mijcJx{Ai-I) . *n«j£(Ai -I) ... T^dil O-mijcLiAl ~ I) (I - A / ) - 1 6/ **yc£(A{ - /) . . . £ ^ ^ ( 4 - 7 ) . . . £ ^ d i l a f c i j cL(A4 - / ) (/ - Am)-Hm Let /jt/ be the element in the fcth row and the /th column of Fi, then fu = E O-^cliA] - / ) ( / - A ; ) - 1 ^ = - E ^ ( A / - 1 + • • • + /)( / - A,)(I - At)-1!* j=dn = - E aki3aiij j=dn So, we conclude that (3.253) Fi = -ajai (3.254) Chapter 3. Adaptive Generalized Predictive Control 93 Taking the limit of Eq.(3.244) as t —> oo and using Eqs.(3.252) and (3.254), it is easy to show that lim yi(t) = yci (3.255) t—t-OO Note that lim u(t) = u t—KX> = [C(I - A) B] Yj. (3.256) Eq.(3.256) shows that [C(I — A ) _ 1 B ] _ 1 should exist. This corresponds to the output controllability condition as stated by Goodwin and Sin (1984). • It is straightforward to design an explicit adaptive control scheme based on the above formulation. The recursive least-squares estimator is used to identify the parameter vector gj associated with the ith output y,. * w • - 1 1 +1+P'mrit - I U ) m - S { t - 1 ) - w l ( 3- 2 5 7 ) w v ' 1 + XT(t)P(t - l)X(t) v ; where cT kil Qi2 . . . Cim i = 1,2,..., m This means that the adaptive scheme uses m estimators running in parallel. The control law is then computed every sample. The stability of the adaptive scheme is given by the following theorem. Theorem 3.6 Assume the plant is described by Eq.(3.237) and yi(t) = £iZ, i = l , . . . , m (3.259) Chapter 3. Adaptive Generalized Predictive Control 94 where Z(t) = XT(t) uT(t) (3.260) Provided that the least-squares algorithm is used to estimate cj,-,i = 1,... ,m, such that dim — dim cj,-, then the closed-loop system described by Eqs.(3.237) and (3.244) ? s stable, i.e. {y(t)} and {u(t)} are bounded for all t. P r o o f : The proof is similar to that of Theorem 3.2 • . Comment s • If the number of inputs exceeds the number of outputs, the outputs can be con-trolled to track arbitrary command signals as long as the system is output control-lable. • If the number of inputs is less than the number of outputs, then, in general, the outputs cannot be controlled to track arbitrary command signals, Goodwin and Sin (1984). E x a m p l e The control of the headbox of a paper machine is a bench-mark problem to examine a controller in a multi-input, multi-output environment. The controlled variables are the stock level, yi(t), and the total head pressure, y2(t). The controlling variables are the stock volume flow rate, Ui(t), and the air mass flow rate, U2(t). The purpose of the control is to change the turbulent flow in the approaching piping system to a sheet flow out of the headbox. The linearized state-space model, Zervos and Dumont (1988), is x(t + l) = -0.0115 -0.1411 0.1 0 x(t) + -0.0373 -0.527 0.324 0.2 Chapter 3. Adaptive Generalized Predictive Control 95 y(t) = 1 0 1 12.2412 x(t) where *(*) = Xi X2 xi(t) is the stock level. x2(t) is the air pad density. The above system is modelled using two Laguerre blocks. Each block has 8 filters. The first block has a time scale pi = 0.06 and the second block has a time scale p2 = 0.6. The system is sampled using a sample interval of 1.0 sec. The control law, Eq.(3.244) is applied such that dn = 1, di2 = 4, d2i = 1, d22 = 4, 3\ = 1 and 32 = 1. The closed-loop response is shown in Fig.(3.19). 3.5 Comparative study To compare the performance of the Laguerre-filter based G P C ( L A G - G P C ) , the C A R I M A -model based G P C (GPC), and the model algorithmic control (MAC) , three sets of simu-lations are presented below. Table 1 shows the tuning parameters for each example set. Note that np represents the number of parameters to be estimated. Table Example G P C M A C L A G - G P C np 0 nu np n 2 a np 8 n2 nu 1 8 0.5 10 1 8 0.5 10 0.0 8 0.5 10 1 2 5 0.2 10 2 20 0.1 3 0.3 5 0.2 10 2 3 4 10 5 1 10 100 2 0.3 4 0.0 3 1 1 Numerical values of the tuning parameters usee in t le comparative study. Chapter 3. Adaptive Generalized Predictive Control 96 o o o CD O o ^0.00 0.80 1.60 2.<Q 3.20 < 00 T «I02 Figure 3.19: Control of a multi-input, multi-output system Chapter 3. Adaptive Generalized Predictive Control 97 E x a m p l e 1 : A high-order system. Assume the open-loop system is given by G(s) = (3.261) The system is sampled using a sample interval of 1.0 sec. The open-loop system is over-damped with a very slow initial response. Each controller uses an 8-parameter model. The C A R I M A model has two poles and an extended numerator polynomial of 6 param-eters. Figure (3.20) shows the output responses and the control signals for the different controllers. It is noted that the L A G - G P C has the least overshoot, the fastest settling time, and the smoothest control signal. The reason for the superior performance of the L A G - G P C is the ability of the Laguerre filters to model overdamped systems. By choosing the Laguerre pole optimally, the rate of decay of the Laguerre spectrum can be enhanced, Fu and Dumont (1991) . This is an essential difference between Laguerre-filter models and model-sequence models. In the later case, the rate of convergence of the impulse-response coefficients cannot be controlled and depends on the controlled system. The CARIMA-model based G P C should have been the best, had the model order been equal to that of the actual system. E x a m p l e 2 : A poorly damped system. Assume the open-loop system is given by G M = s r h r * ( 3 - 2 6 2 ) Assuming the plant order is known, a 5-parameter model suffices to model the system. Again, because of the poor convergence properties of the impulse-response coefficients, the M A C fails to stabilize the system in case of £ = 0. If ( = 0.1, the M A C gives a poor Chapter 3. Adaptive Generalized Predictive Control 98 LAG-GPC c o &, co o Oi 0.0 SO. 100. 150. 200. 250. Sees. d fl o fl o o V 0.0 50. 100. 150. 200. 250. Sees. M A C CJ CO o CL, CO CJ « Cu, - CJ GO co c! o Cu, CO cu OS O. 0) CO fl fl o 0.0 50. 100. 150. 200. 250. Sees. G P C •a A -SP co "o t— -^J fl o CJ> 0.0 50. 100. 150. 200. 250. Sees. 2. i . 0 . - l . 1 fin i V v 0.0 50. 100. 150. 200. 250. Sees. 0.0 50. 100. 150. 200. 250. Sees. Figure 3.20: Predictive control of a high order system Chapter 3. Adaptive Generalized Predictive Control 99 but stable closed-loop system as shown in Fig.(3.21). Both the G P C and the L A G - G P C manage to stabilize the system with £ = 0. The performance of the G P C is better than the L A G - G P C as the Laguerre-filter model theoretically requires an infinite* number of filters to represent an oscillatory system. The superiority of the L A G - G P C over the M A C is evident. E x a m p l e 3 : Nonminimum-phase and time-varying systems. Consider a nonminimum-phase system described by the discrete equation This system is used to demonstrate the robustness of a pole-placement self-tuner in Clarke, (1984) and to demonstrate the robusness of a predictive controller in Zervos, (1988). Figure (3.22) shows that all the predictive controllers in our study are able to drive the output signal to track the set-point. Suppose the plant changes to The new plant dynamics include the the first order system given by Eq.(3.263). The tuning parameters are kept the same to check the robustness of each controller. Figure (3.23) shows that the M A C destabilizes the system while the L A G - G P C and the G P C stabilize the system. 3.6 Conclus ion A n adaptive G P C based on Laguerre-filter modelling, (LAG-GPC) , has been derived. Analyses have started with SISO systems. It has been shown that stability and con-vergence conditions would have been satisfied by proper tuning of the controller. The results have been extended to D M C and M A C . In case of plant-model mismatch, the y(k) = Q.7y(k - 1) + u(k - 1) + 2u(k - 2) (3.263) y(k) = l.ly(k - 1) - 0.72y(k - 2) + 0.1u(jfc - 1) + Q.2u(k - 2) (3.264) Chapter 3. Adaptive Generalized Predictive Control LAG-GPC o <A G o cu m <u o a o o a; cu o CO CO o C L , <o <u O S C L , 1 . 5 -0.5 0.0 20. 40. 60. 80. 100. 120. S e e s . M A C 0.0 20. 40, 60. 80. 100. 120. S e e s . G P C 1.5 -0.5 Q.O 20. 44. 60. 80. 100. 120. See's. • 100 Figure 3.21: Predictive control of a poorly damped system Chapter 3. Adaptive Generalized Predictive Control 101 L A G - G P C o C L . CO to Cd C L , • o C o C L , co <o Oi C L , CO C ! o c u CO <u OS C U - o> «.-» CO <?.G 100. 2<?0-300. 4<K?.500. 600. M A C 6 0 . 4 0 . 2 0 . 0 . 0 1 0 0 . 200.300.-4<50.500. 8 0 0 . K G P C eo. 4 0 , 2 0 . 0 . 0 1 0 0 . 2<30. 3 0 0 . 4QQ. 500. 6<?<?. K Figure 3.22: Predictive control of a nonminimum-phase system. Chapter 3. Adaptive Generalized Predictive Control 102 LAG-GPC C J CO o C L , CO <u Oi CL, • CJ a o C L , CO C J <K C L , CJ C J CO C ! o C L , CO CJ OS C L , C J CO l O O O . O.OO O.Q 50. l<?0.150. 200.250. 300. K G P C 60. 40. 20. 0. 0 . 0 1 0 0 . 2<J0- 3 0 0 . 4 0 0 . 5 0 0 . 6 0 0 . K Figure 3.23: Comparison of the robustness of the MAC, GPC and LAG-GPC. Chapter 3. Adaptive Generalized Predictive Control 103 robustness conditions would have been met by increasing the prediction horizon. It has been shown that a L A G - G P C based on a multi-step prediction horizon is more robust than a L A G - G P C based on a single-step prediction horizon. The L A G - G P C has been modified to control unstable systems, nonlinear systems, and stochastic systems. The L A G - G P C implementation has been extended to SIMO and M I M O systems. It has been shown that the stability and convergence properties of the SISO schemes have been car-ried over to M I M O systems. Finally, the L A G - G P C has been compared with the M A C and the CARIMA-model based G P C . For well damped systems and in the presence of plant-model mismatch, the L A G - G P C has been the best. The L A G - G P C has always been superior to the M A C . For a poorly damped plant, the CARIMA-model based G P C has outperformed the L A G - G P C and the M A C . C h a p t e r 4 E x p e r t A d a p t i v e G P C B a s e d o n L a g u e r r e - F i l t e r M o d e l l i n g 4 . 1 I n t r o d u c t i o n The term "Expert Control" was introduced in Astrom, et al.(1986). It means that an Expert System is used to emulate the role of a human expert in control operation. The motive for using an artificial intelligence approach is that there are some aspects in con-trol design which are not naturally amenable to numerical representation or which can be more efficiently represented by heuristics or rules of thumb. Expert control is imple-mented by adding, to an existing feedback loop, an expert system. The expert system consists of heuristics and theoretical control knowledge concerning tuning, adaptation, monitoring, and diagnosis. In this chapter, an adaptive G P C based on Laguerre-filter modelling is implemented using expert-system and fuzzy-logic techniques. The expert system is meant to provide the user interface, model adjustment, on-line monitoring of the control system, and con-trol commands. Fuzzy logic is used to implement the on-line tuning rules of the controller. This section reviews the main expert controllers reported in the literature. Section 4.2 gives a general overview of the expert shell G2, Gensym (1989). G2 is used to imple-ment the expert system in this application. The actual implementation of the expert controller is explained in Section 4.3. Appendix A reviews the main characteristics of an expert system, knowledge acquisition procedures, and knowledge representation tech-niques. The material of this review is based on Arzen (1986) and Hayes-Roth (1983). 104 Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 105 The review is not claimed to be comprehensive but gives enough background as a basis for our implementation. Appendix B provides basic definitions and terminologies of fuzzy logic. There are two main approaches to implement expert-system techniques in control systems. One approach concentrates on the development of good control heuristics. These heuristics are often expressed in terms of " if - then " rules which are implemented with standard programming techniques. The other approach is to include expert-system techniques in the implementation. Several studies concerning the implementation of expert control systems are reported in the literature. Some examples are given below. However, it should be mentioned that a complete implementation is still missing. An example of a system focused on control heuristics but implemented with conven-tional techniques is E X A C T which is a self-tuning controller based on pattern identifica-tion of transients in the control error caused by load disturbances or set-point changes, Bristol, (1977). Heuristics and theoretical knowledge are used to adjust the controller parameters to achieve acceptable damping and overshoot. A n example of a system which is focused on control heuristics and implemented using expert system techniques is reported in Astrom, et al. (1986). Most of the work reported in this area concerns smart auto-tuning of fixed, typically PID, controllers and supervision of adaptive controllers. In the auto-tuning approach, the step response analysis, (Ziegler and Nichols 1943), and the relay feedback method (Astrom and Hagglund, 1984), are the most common. OPS4, a rule-based expert system is used for expert control by Astrom, et al.(1986). The task of the expert system is to orchestrate the application of different numerical algorithms to the controlled plant. The expert system is used for the auto-tuning of a PID controller using a relay controller in the tuning mode and the tuned PID controller afterwards. OPS4 is not ideal for expert control. The system has no capability of backward chaining or reasoning with uncertainty. The most important Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 106 drawback regarding OPS4 is that it is not designed for real time operation. In Salle and Astrom (1991), another PID auto-tuner is proposed. It combines two approaches : analysis of process transient responses and estimation of the process critical point through a relay feedback experiment. The system selects among a PI, a PID or a PI regulator coupled with a Smith predictor. However, the processes are assumed to be stable, to have a globally monotonic step response and to give stable oscillations under relay feedback. In Arzen (1989), relay auto-tuning of PID controllers is implemented using the object-oriented system, " F L A V O R S " , and the forward chaining production system, " Y A P S " . However, as reported in Arzen (1989) and (1986), the limitations of this implementation are : the process is assumed to have a finite positive steady-state gain, the tuning tech-nique is based on a relay experiment so it cannot deal with all types of processes, and it is sensitive to load disturbances. A n expert system for real-time control is reported in Moore, (1986). P I C O N which stands for "Process Intelligent CONtrol" is a system meant for real-time applications, Moore (1987). A space-control expert system is described by Leinweber, (1987) as a prototype using P I C O N . The difficulties in using an expert system such as P I C O N are : knowledge requirements are unstructured and may be broad in scope, the knowledge base is highly specific to the individual plants, and the number of rules may exceed the practical limitations. In Doraiswami and Jiang (1989), a real-time expert controller is implemented on PC-A T microcomputer and is interfaced to an analogue simulation of a hydraulic turbine generator. The turbine is controlled using a digitally tunable analogue PI controller. Under normal conditions, the gains of the controller are obtained using conventional techniques. Under contingencies, the knowledge-based controller should be able to detect, classify and correct system failures. Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 107 In Haest, et al. (1989), system identification is carried out using an expert system called "ESPION". ESPION is written using OPS85 rule-based language and is used for identification of linear MISO systems in A R M A X forms. Provided with a set of data, the system will organize a search through the set of candidate structures and end up with a "best" model according to a " quality index" set by the system developers. In Lebow and Blankenship (1987), a microcomputer based expert controller is sug-gested. The control algorithm, a PID controller, resides in a separate microprocessor and the expert system resides in another. The controller is tuned using fuzzy logic, Zadeh (1973). Fuzzy logic provides a method for assigning a measure of how good a response is. Each specific criterion, e.g. the output overshoot, the settling time, etc., has its own membership function. A score is defined for each response as the sum of all the criteria's membership values. The objective of the expert system is to optimize this score. Fuzzy logic can be used to implement linguistically expressed control policies, King and Mamdani (1977). The calculations of the control algorithm are composed of the four stages. First, the error and its rate of change are calculated. Second, the error and its rate of change are converted to fuzzy variables. Third, fuzzy-logic decision rules are applied to get a fuzzy control variable. Fourth, a deterministic control action is calculated. In Pocky and Mamdani (1979), a self organizing controller which is based on fuzzy logic is presented. The algorithm has a performance measure to evaluate the controller decisions. If a poor performance results in, a credit assignment procedure is used to translate the output deviations into corrections of the inputs that have been applied and caused this poor performance. A learning mechanism makes use of this performance measure and credit assignment to upgrade the system control rules. Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 108 4.2 The expert shell, G2 G2 is an expert shell designed for real time process control. The key element of G2 is an item. A n item is a piece of knowledge in an application. Workspaces, objects, functions, rules, and displays are examples of items. By creating instances of the different items, a knowledge base can be built. Associated with each item is a table of attributes which contains knowledge about that item. For example, it is possible to define an item called Controller as an object and create G P C as an instance of Controller. The attributes of G P C can be control-horizon, prediction-horizon, and control-weight. A l l items in G2 are arranged in an item hierarchy. Each item in the hierarchy can inherit attributes from its superior and any rules that apply to an item apply to all items below it. For example, it is possible to design C A R I M A - G P C , Laguerre-GPC, and Dynamic-Matrix-Control as subclasses of the object Controller. The new items inherit the attributes of the item Controller. A brief description of the items used in building our expert system is given below. A workspace is like a shell which accommodates the knowledge base. It can contain rules, objects, displays, etc. A subworkspace is a workspace that is associated with an item. A subworkspace can hold items that in turn have their own subworkspaces and so on. This allows a hierarchical organization of knowledge. If an item is given the capability 11 activatable-subworkspace", the associated workspace can be activated or deactivated on-line. This capability will be used later on to enhance the efficiency of our expert system. A n object is a representation of some part of an application. Each class of objects is defined by an object definition. The object definition is an abstraction of the object. Actual application objects are instances. Each object has a table of attributes. Whereas the definition of an attribute specifies the allowable type of data, each instance of the Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 109 class has values of the given type. The types of data provided with G2 are quantitative, symbolic, logical and text. There are many object classes provided with G2. The one that is used in our application is the variable-or-parameter class which has Variables and Parameters as subclasses. A variable is an object that has values that change and can expire. A variable may have no current value at times. It can trigger data seeking. A parameter is an object that has a changing value that never expires. It always has a value and never causes data seeking. A function is a predefined named sequence of operations that are not performed until the function is called. G2 has many built-in functions, e.g. max(i , y, z), cos(x), etc. G2 has also a foreign function interface which allows C and Fortan functions to be called within G2. To use a foreign function, two steps must be carried out. First, the C or Fortran object file that contains the foreign function is loaded within G2. Second, the foreign function is declared within G2 knowledge base. The declaration of the foreign function indicates the function language, whether its value is real or integer, the function name, and the arguments to be passed from G2 to the function. A rule establishes the way that G2 responds to various conditions in the application. A rule has two parts : an antecedent which specifies the conditions and a consequent which specifies the actions. There are five types of rules provided with G2 : • if rules : A n if rule is fired (executed), if the inference engine can evaluate the antecedent of that rule. The if rules can be invoked through backward and forward chaining. A n if rule can be scanned periodically which makes them suitable for real time applications, e.g. monitoring the closed-loop stability, the output error, etc. • when rules : A when rule is similar to an if rule except that G2 does not invoked a when rule through forward or backward chaining. A when rule can be invoke periodically. Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 110 • initially rules : These rules are invoked when the knowledge is started or when an object which has the capability activatable subworkspace is activated. • whenever rules : A whenever rule is fired if special kinds of events occur, e.g. emergency situations. • unconditional rules : This kind of rules is carried out unconditionally each time the rule is invoked. A display is a screen item that shows the value of a variable or parameter. There are four types of displays : readout tables, graphs, meters, and dials. In our expert system, readout tables are used to display the values of a parameter or a variable, while, graphs are used to show a plot of the values of a parameter or a variable over time. The on-line communication between the expert system within the G2 environment and the outside world is carried out using the "G2 Standard Interface ", GSI, Gensym (1991). GSI is made up of three basic components : • GSI base process : The base process is a G2 running program with the GSI option enabled. • GSI extension process : The extension process is composed of the calling code, the GSI extension code, the application bridge code, and the external application. • ICP communication link : This is a communication link between the base process and the extension process. To. build a full application that uses GSI, the developer must develop two application-specific pieces of the system in addition to developing the G2 knowledge base : • The configuration specification which configures the knowledge base to communi-cate with the external application. Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 111 • The application bridge code which the GSI extension uses to interact with the external application. Our expert system uses the bridge code developed in Zhou, et al. (1991). 4.3 Implementation 4.3.1 Overview The hardware platform of the proposed expert system is a VAX-station 3100 running V M S and D E C windows. The expert shell G2 is used for implementing the expert system. G2 can exchange information with the real world outside its environment using foreign functions, which can be in C or Fortran, or using the the standard interface GSI. Both the expert shell and the numerical algorithms run on the same VAX-station. The system starts by initiating a dialogue with the user to extract the available information. Then, a search algorithm is executed to adjust the parameters of the Laguerre-filter model. After adjusting the model, the adaptive L A G - G P C , euipped with fuzzy-logic tuning rules, is applied to the process. The implementation details are explained below. To achieve an efficient reasoning and fast decision making, the knowledge base is spread over a number of subworkspaces. These subworkspaces are activated or de-activated according to the current state of the expert system. A master workspace called INITIAL-RULES orchestrates the switching to the different subworkspaces. INITIAL-RULES has 6 subworkspaces that can be activated. The functions of these subworkspaces are described below. 1. The subworkspace INI-RULE-1 has 7 rules to extract information concerning the system settling time. 2. The subworkspace INI-RULE-2 has 8 rule to extract information concerning the Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 112 dead time. 3. The subworkspace INI -RULE -3 has 6 rule to extract information concerning the rise time. 4. The subworkspace M O D E L L I N G has 9 rules and 10 instances of a quantitative parameter called L A G U E R R E . The function of this part of the knowledge base is to choose the number of Laguerre filters used for modelling and the Laguerre time constant. The mechanism of adjusting the model will be explained in details later in this section. 5. The subworkspace T U N I N G has 3 rules designed to initially tune the G P C . 6. The subworkspace G P C has 9 rules and 2 subworkspaces which have 9 more rules. This part of the knowledge base is responsible for monitoring and tuning the con-troller on line to insure closed-loop stability and achieve acceptable closed-loop settling time and overshoot. In addition to I N I T I A L - R U L E S and its associated subworkspaces, there are 5 workspaces as explained below. 1. The workspace S E N S O R - D E F I N I T I O N S contains three object definitions. Two of them define the sensors which will send/get integer and floating numbers to/from the external application. The third object definition defines the GSI interface. This object has one instance called INTERFACE-1 which defines to G2 the GSI con-nection configuration, the attributes which identify a sensor, and a remote process initialization which identifies the sensors' names and types. 2. The workspace F U N C T I O N S contains 10 function declarations; 5 of them are in Fortran and the rest are in C. These functions are responsible for extracting the Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 113 system dead-time, settling time and rise time from step-response data if available or carrying out a step-response experiment if allowable. These functions also store the system information and the controller tuning parameters in external files. These external files are accessible to G2 as well as the numerical algorithms outside the G2 environment. These functions contain also 72 fuzzy rules that are used on line to improve the controller performance. 3. The workspace VARIABLE-AND-PARAMETER-DEFINITION contains icon definitions for quantitative variables, qualitative parameters, and text variables. Instances of these classes are used through out the knowledge base to represent information about the system. 4. The workspace LAGUERRE-PARAMETERS contains 14 quantitative param-eters which are used to get information about the plant as well as the controller, e.g. the number of Laguerre filters, the plant dead time, the prediction horizon, etc. 5. The workspace SIGNAL-DISPLAY contains graphs to display the output and the control signals as well as readout tables to display the settling time and the maximum overshoot. 4.3.2 User interface A user-interface facility is an essential feature of any expert system. It brings the com-puter close to emulating a human expert who tries to help the user solving his/her prob-lem. The user interface developed for this application is meant to achieve the following objectives : 1. To show the user how to use the system. Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 114 2. To explain to the user in simple terms the expressions used by the experts in the control field. 3. To ask the user questions to extract information to initialize the controller. 4. To give logical interpretation of the decisions taken by the system. 5. To inform the user on the current tasks carried out by the system. It is explained below how the developed interface achieves the above objectives. When the user starts the knowledge base, a " welcome " screen appears followed by initial dialogue screens. Each screen is self explanatory and instructs the user on how to deal with it. For example, the " welcome " screen tells the user that the system is meant to control a stable well-damped process and asks him/her to click on a certain button to proceed. Each initial-dialogue screen instructs the user on the expected answer, the format of that answer, and where to type it. The top right corner of the computer screen has a message that tells the user how to start, stop, restart, or reset the knowledge base. During the initial dialogue stage, the user is asked some questions, e.g. Do you know how long it takes the process step-response to reach steady state ?, Does the open-loop response have a dead time ?, etc. Each question has an "explain" option which the user can use to define terminology used in the control field, e.g. steady-state response, dead time, rise time, etc. According to the user's answers to these questions, he/she is prompted to give numerical values to some values to some variables, e.g. dead time, or step-response data are used to get the required information. During the model-adjustment stage, a screen appears that shows the execution of the different rules. So, the user can follow the search process. Using "readout" tables, the user gets an explanation why a certain model parameter has changed. The membership function of the controller tuning rules are typed and the tuning actions based on those Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 115 membership functions are indicated in a window. A message board that appears at the top left corner of the computer screen is used to inform the user that a certain task is being carried out, e.g. the model tuning is on, or has been completed, e.g. the model has been tuned. It is also used to inform the user about the output status, e.g. steady state has been reached. 4.3.3 Model adjustment Search techniques A search problem is characterized by an initial-state and a goal-state description. To go from the initial state to the goal state, the search process passes through several intermediate states. This search procedure proceeds using operators. A single operator transforms the state into another which is hopefully closer to a goal state. The problem may require finding the best solution or just any satisfactory solution. The objective is to search until a solution is found or the algorithm is satisfied that no solution exists, Charniak and McDermott (1987). A search algorithm may contain : an operator-ordering function to order the appli-cable operators at each state from best to worst and a state-evaluation function to give the estimated distance of each state from the nearest goal state. If the search is based on rules of thumb, it is called a heuristic search, Nilsson (1980). There are two basic approaches of systematic search : depth-first approach and breadth-first approach. Depth-first search corresponds to "last-in / first-out" strategy. This means that if two states 51 and 52 are produced by applying operators to a state 5, then every state reachable from 51 will be examined before any state reachable from 52. If there is an infinite number of states reachable from 51 then 52 will never be examined. In this case, some kind of depth cut-off should be imposed. On the other Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 116 hand, breadth-first search corresponds to a "first-in / first-out" strategy. This means that the search algorithm explores all states that are n operator applications from the initial state before any that n + 1 away. The search for a set of parameters that characterize a Laguerre-filter based model can be described in the above context. The initial state represents the initial parameters chosen for the model. The goal state represents the final parameters which are actually implemented. The operators are the decisions taken by the designer to change one or some of the model parameters. The state-evaluation function is the model prediction-error. The search algorithm used in this application is explained in detail below. Search implementation The knowledge source for choosing the Laguerre-model parameters is a workspace called Modelling. Modelling has 10 instances, called P,POPT, P l , P8, of an object definition called LAGUERRE. The definition of L A G U E R R E is LAGUERRE, an object definition Notes ok User restrictions none Superior class object Attributes specific to class Laguerre-pole is given by a quantitative variable lag-model-error is given by a quantitative variable Capabilities and restrictions none A n example of an instance definition is Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 117 P l , a LAGUERRE Notes ok User restrictions none Name P l Laguerre-pole * * * Laguerre-model-error * * * Each one of the attributes-Laguerre-pole and lag-model-error has a subtable associated with it as follows. a quantitative variable, the Laguerre-pole of P l Options breadth first backward chaining Notes ok Validity interval supplied Formula the Laguerre-pole of P + the Laguerre-pole of P/3.0 Data server inference engine Default update interval 2 seconds Note that the formula attribute is different in each subtable of the instances, P l , . . . , P8. This attribute defines the search space around P. It is possible to extend the search space by creating more instances of LAGUERRE. The instances P and POPT have no formula in the formula attributes of their subtables. Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 118 a quantitative variable, the lag-model-error of P l Options breadth first backward chaining Notes ok Validity interval supplied Formula modell (n-lag-f , the laguerre-pole of Pl, sampling-time-value) Data server inference engine Default update interval 2 seconds Note that modell is a foreign function that G2 calls. The arguments passed to modell are the number of Laguerre filters, the Laguerre pole, and the sampling interval. Modell has a built-in RLS estimator and returns the model error corresponding to the suggested parameters. There are similar calls associated with the instances, P2,...,P8. In the subtable of POPT , the formula attribute has a call for a G2 built in function that picks up one instance out of the instances, P l , . . . , P8, that has the minimum model error. Given the sampling interval, the search algorithm starts with the initial number of filters and Laguerre pole. These values are calculated based on the user information and the experiments carried out during the initial dialogue stage. The goal state is represented by the number of filters and Laguerre pole which result in an error model less than a threshold value. The operators that are applied to a state to obtain a new one are the formulas in the formula attribute of the subtable of laguerre-pole. The formulas in the formula attribute of the subtable of lag-model-error are the state-evaluation functions that give the estimated distance of each state from the goal state. Fixing the model order and using the pole of the Laguerre filters as the only tuning parameter may fail to yield the required model error. Another operator that can be applied is to increase the number of filters. Because of the theoretical properties of the Laguerre filters, it is certain that the whole search problem will end up finding a goal state. The search for Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 119 the Laguerre-filter pole is carried out in a breadth first fashion while the adjustment of the number of filters adopts a depth first strategy. The search algorithm can be summarized as follows 1. Initially conclude that the Laguerre-pole of P = the initial value supplied from the initial dialogue stage and calculate the lag-model-error. 2. Generate new states in the search space by applying operators to get the Laguerre-pole of P l , . . . ,P8. 3. Apply the state-evaluation function to get the lag-model-error corresponding to each state in step 2. 4. Choose POPT to correspond to the nearest state to the goal state. 5. If the lag-model-error of POPT < the lag-model-error of P then copy POPT to P. 6. If the standard deviation of the Laguerre-pole of P < 10~2 for 10 trials and the lag-model-error of P > 5 x 1 0 - 5 then increase the number of filters by one. Go to step 2. 7. If the lag-model-error of P > 5 x 1 0 - 5 then go to step 2. 8. If the standard deviation of the Laguerre-pole of P < 10~2 for 5 trials and the lag-model-error of P < 5 x 1 0 - 5 then conclude that the model has been tuned and end the model adjustment algorithm. 4.3.4 Tuning based on fuzzy logic There are four steps to design a fuzzy logic tuner. Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 120 1- Defining the input and output spaces A linguistic variable in the antecedent of a fuzzy rule forms a fuzzy input space with a certain universe of discourse, while that in the consequent of the rule forms a fuzzy output space. In this implementation, there are two fuzzy input spaces associated with the linguistic variables; Overshoot and Settling-time and two fuzzy output spaces associated with the linguistic variables; Output-horizon and Control-weight. 2- Fuzzy partition Each linguistic variable is associated with a term set. Each term in the term set is defined on the same universe of discourse. A fuzzy partition determines how many terms should exist in a term set. In this application the term sets are defined as T(x) = {very — acceptable, acceptable, more — or — less — acceptable, more — or — less — unacceptable, unacceptable, very — unacceptable} T(y) = {big — increase, medium — increase, small — increase, no — change, small — decrease, medium — decrease, big — decrease} x can be the input linguistic variable Overshoot or Settling-time, y can be the output linguistic variable Prediction-horizon or Control-weight . For example, the universes of discourses of Overshoot, Settling-time, Prediction-horizon, and Control-weight are defined, respectively, as follows : t7i = {7,8,9,10,11,12,13,14,15,16,17} The elements of this discourse represent the percentage maximum overshoot. U2 = {0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5} The elements of this discourse represent the settling time relative to the open-loop one. Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 121 U3 = { -8 , -4 , -2 ,0 ,2 ,4 ,10} The elements in this discourse represent the possible change in the output prediction horizon. UA = {0.1,0.5,0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,2.0,5.0,10.0} The elements in this discourse represent the factors by which the current value of the control weighting factor is multiplied. 3- Defining the membership functions There are two methods used for defining fuzzy sets; numerical and functional. In the numerical definition, a grade of membership function of a fuzzy set is represented as a vector of numbers whose dimension depends on the number of elements in the corre-sponding universe of discourse. In the functional definition, the membership function of a fuzzy set is expressed analytically. The functional definition is chosen to define the fuzzy term "acceptable" both for Overshoot and Settling-time because it can adapt easily to changes in the normaliza-tion of the corresponding universes. The form of the membership function used is u{Xi) 1 < Xf (4.265) xn normalizes x,- so that it can be mapped to the universe of discourse, x/ defines the edge between the values which have full membership and those which have partial membership, k defines the crossover point in the membership function. Consequently, the membership of the fuzzy terms very acceptable, more or less ac-ceptable, unacceptable, more or less unacceptable, and very unacceptable are p2, y/p,, 1 — p., y/1 — fi, and (1 — fi)2, respectively. Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 122 The membership function of the fuzzy term "acceptable" in case of the fuzzy variable O v e r s h o o t has k = 100, #/ = 0.02, and xn = 3, while that of the fuzzy variable S e t t l i n g - t i m e has k = 25, xj = 0.7, and the open-loop settling time as xn. 1 The numerical definition is chosen to define the sets of the fuzzy terms associated with the fuzzy variables; P r e d i c t i o n - h o r i z o n and C o n t r o l - w e i g h t as shown in tables 1-2. The symbols B D , M D , SD, NC, SI, MI , and BI stand for big-decrease, medium-decrease, small-decrease, no-change, small-increase, medium-increase, and big-increase. Table 1 The fuzzy sets used with the Note that u G U3 . u BI MI SI NC SD MD BD 10 1.0 0.5 0.1 0.0 0.0 0.0 0.0 5 0.5 1.0 0.5 0.0 0.0 0.0 0.0 2 0.1 0.5 1.0 0.0 0.0 0.0 0.0 0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 -2 0.0 0.0 0.0 0.0 1.0 0.5 0.1 -4 0.0 0.0 0.0 0.0 0.5 1.0 0.5 -8 0.0 0.0 0.0 0.0 0.1 0.5 1.0 inguistic variable " Prediction-horizon". Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 123 u BI MI SI NC SD MD BD 0.1 0.0 0.0 0.0 0.0 0.0 0.2 1.0 0.5 0.0 0.0 0.0 0.0 0.1 0.5 0.7 0.6 0.0 0.0 0.0 0.0 0.3 0.9 0.4 0.7 0.0 0.0 0.0 0.0 0.5 0.7 0.2 0.8 0.0 0.0 0.0 0.0 0.8 0.3 0.1 0.9 0.0 0.0 0.0 0.0 0.9 0.1 0.0 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.1 0.0 0.1 0.9 0.0 0.0 0.0 0.0 1.2 0.0 0.2 0.8 0.0 0.0 0.0 0.0 1.3 0.1 0.4 0.5 0.0 0.0 0.0 0.0 1.4 0.2 0.7 0.2 0.0 0.0 0.0 0.0 1.5 0.3 0.9 0.1 0.0 0.0 0.0 0.0 2.0 0.6 0.2 0.0 0.0 0.0 0.0 0.0 5.0 0.8 0.1 0.0 0.0 0.0 0.0 0.0 10.0 1.0 0.1 0.0 0.0 0.0 0.0 0.0 Table 2 The fuzzy sets used with the linguistic variable " Control-weight". Note that u (E U\. 4- The rule base The fuzzy-logic tuner is characterized by a set of linguistic statements based on expert knowledge. The expert knowledge is usually in the form of " I F - T H E N " rules. The collection of these fuzzy-logic rules forms the rule base. The rules depend on the lin-guistic variables chosen in the first step. This choice is based on engineering judgement. The derivation is heuristic and relies on the qualitative knowledge gained through this research. Tables 3-4 show the linguistic rules which will be used on-line to adjust the Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 124 output prediction horizon and the control weighting factor. The symbols ST and OS stand for the linguistic variables; Settling-time and Overshoot, respectively. While the symbols; M L A C , A C , V A C , M L U A C , U A C , and V U A C stand for the fuzzy terms; more-or-less acceptable, acceptable, very-acceptable, more-or-less-unacceptable, unaccept-able, and very-unacceptable, respectively. Note that the tuning rules reflect the fact the open-loop plant is assumed stable and well-damped. ST/OS M L A C A C V A C M L U A C U A C V U A C M L A C N C NC NC SI SI M I A C N C NC N C MI MI BI V A C N C N C N C MI M I BI M L U A C SD SD SD SI SI SI U A C M D M D M D SI SI SI V U A C B D BD BD SI SI SI i The fuzzy-logic rules used to adjust the ou tput prediction h ST/OS M L A C A C V A C M L U A C U A C V U A C M L A C N C NC NC SI MI M I A C N C NC NC SI BI BI V A C NC N C NC MI BI BI M L U A C SD SD SD SD SD SD U A C M D BD BD SD SD SD V U A C M D BD BD SD SD SD Table 4 The fuzzy-logic rules used to adjust the control weighting actor. Consider the fuzzy-logic rules in Table 3, the linguistic form of these rules is Ri : IF Overshoot is acceptable A N D Settling-time is acceptable T H E N Output-horizon is no-change Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 125 i?36 : also, IF Overshoot is very-unacceptable A N D Settling-time is very-acceptable T H E N Output-horizon is big-increase So, given that Overshoot is A and Settling-time is £?, Output-horizon is deduced to be C as 36 C ={J(A,B)oRi (4.266) 4 = 1 By interpreting o as the sup-min operator and the connective "also" as the union operator, it is possible to show that Eq.(4.266) is equivalent to, Lee (1990), : 36 C = (A,B)o{J Ri (4.267) 4 = 1 Consequently, the rules associated with each output variable can be summed up in one matrix of three dimensions. This is carried out off-line. Tables 3-4 result in two matrices which are used to infer the tuning action on-line. The inference mechanism in this case becomes efficient time-wise. The rules in the subworkspace G P C monitor the closed-loop system. If the tuned controller results in an unstable closed-loop system, the control signal is set to zero and the output prediction horizon is increased by 5. After the system states settle to zero, the controller is switched on again using the new parameters. On the other hand, if the closed-loop system is stable, the expert system fires some rules to calculate the percentage maximum overshoot and the settling time. The expert system judges that steady state has been reached if the output error is less than ee and the standard deviation of the output error is less than oe for a time t, where ee, oe and t are dependent on the controlled plant. Once the settling time and the percentage maximum overshoot are calculated, a fuzzification operator is applied to convert each of them from a crisp value into a fuzzy Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 126 singleton within the corresponding universes of discourse. Then, the fuzzy tuning rules are applied. The expert-system rules are designed such that the controller is tuned first using the output prediction horizon. The change in the output horizon is constrained such that the controller can look behind the system dead-time and nonminimum phase response. The control weight is tuned if the output-horizon tuning rules fail or if finer tuning is needed. The result of applying the fuzzy logic tuning rules is a fuzzy set specifying a possibility distribution of tuning actions. To obtain a crisp (non-fuzzy) tuning action, defuzzification is required. Following Mamedani (1974), the max criterion method is adopted. The max criterion method produces the point at which the possibility distribution of the tuning action reaches a maximum value. 4.3.5 Illustrative examples Example 1 Let the plant be given by y_ _ u 0.16z -3 (4.268) 1 - 1.4*-1 + 0.48z- 2 The above plant is qverdamped with a time delay. It is assumed that no information, but a rough estimate of the open-loop settling time, is available. The open-loop settling time is used to set the initial value of the Laguerre-filter pole and to compare the closed-loop settling time with the open-loop one. The details of the search algorithm, which is used to tune the model, are given below. Assuming a three-filter model, the first state in the search space is given by the following table. t 1 2 3 4 5 6 7 8 Pi 0.133 0.15 0.2 0.3 0.4 0.5 0.08 0.075 e; 2.64X10 - 3 7.90 X l O - 4 8.09 X l O - 5 1.111 X l O - 4 1.115 XlO" 4 1.115 X l O - 4 4.32 X l O - 2 5.00 X l O - 2 The algorithm picks P 3 as the model pole, P. A new state is generated as follows Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 127 t 1 2 3 4 5 6 7 8 Pi 0.267 0.30 0.40 0.60 0.80 1.00 0.16 0.15 e. 1.095 X l O " 4 1 . 1 1 1 X 1 0 - 4 1.115 X l O - 4 1.115X10 - 4 1.115X10- 4 1.115X10- 4 3.66 X l O - 4 7.9 X l O - 4 The algorithm picks i \ . However, since the model error, e l 5 corresponding to P i is greater than that corresponding to P , the model pole remains unchanged. The search algorithm continues using a three-filter model. After 5 iterations it is clear that P can not be adjusted to yield an acceptable model error. The algorithm decides to increase the number of filters by one. A new state is introduced as follows t 1 2 3 4 5 6 7 8 Pi 0.267 0.30 0.40 0.60 0.80 1.00 0.16 0.15 ei 1.068 X l O - 4 1 . 1 0 3 X 1 0 - 4 1.114 X l O - 4 1 . 1 1 5 X 1 0 - 4 1 . 1 1 5 X 1 0 - 4 1 . 1 1 5 X 1 0 - 4 1.39 X l O - 4 5.97 X l O - 4 Again, using 4 filters, the search algorithm fails to produce an acceptable model error. The same conclusion is true for the cases of 5-filter and 6-filter models. Eventually, a 7-filter model produces an acceptable result as shown below. t 1 2 3 4 5 6 7 8 Pi ei 0.267 4 . 0 X 1 0 - 5 0.30 6 . 8 7 x 1 0 - * 0.40 1.107 X l O - 4 0.60 1 . 1 1 5 X 1 0 - 4 0.80 1 . 1 1 5 X 1 0 - 4 1.00 1 . 1 1 5 X 1 0 - 4 0.16 5 . 1 9 X 1 0 " 3 0.15 6.14 X l O - 3 The algorithm chooses P i as the new P . A new state is generated to insure that the search space in the neighborhood of P does not have a better tuning pole P,. i 1 2 3 4 5 6 7 8 Pi e t 0.356 1.06 X l O - 4 0.40 1.1 X l O - 4 0.53 1.11 X l O - 4 0.80 1 . 1 1 5 X 1 0 - 4 1.067 1 . 1 1 5 X 1 0 - 4 1.33 1 . 1 1 5 X 1 0 - 4 0.213 1.05 X l O - 3 0.20 1.73 X l O " 3 Figure (4.24), shows the performance of the adaptive G P C based on Laguerre-filter modelling. The controller is initially tuned such that ra2 = 6 and Q = 0.1. The set-tling time of the closed-loop system is 60% of that of open-loop system. The maximum overshoot is less than 1%. Consequently, the fuzzy-logic rules do not change the initial settings. Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 128 50 100 150 200 250 300 350 time in Sees. 400 f f r r 50 100 150 200 250 300 350 400 time in Sees. Figure 4.24: Expert control of an overdamped system with time delay Example 2 Let the open-loop system be given by y(0 = y(t - 1) - 0.26y(t - 2) + u(t - 1) (4.271) The open-loop system is underdamped. The expert system is provided with a rough estimate of the open-loop settling time. A search algorithm is implemented as shown in the last example. Consequently, the model is tuned such that the number of filters is 3 and the Laguerre-filter pole is at 1.47 . The fuzzy-logic rules are used to tune the controller on-line. The tuning actions are shown in the table below. t 0 < t < 90 90 < t < 170 170 < t < 250 250 < t < 400 7 5 3 2 0.1 0.1 0.1 0.08 Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 129 & time in Sees. Figure 4.25: Expert control of an underdamped system Figure (4.25) shows the closed-loop response as well as the control signal. It is clear that the settling time and the rise time of the closed-loop system are successively improved. The final settling time is 4.0 seconds and the maximum over shoot is 6 %. 4.4 Conclus ion The adaptive L A G - G P C has been implemented using fuzzy-logic and expert-system tech-niques. G2, an expert shell, has been used as a platform for the real-time implementation. The main features of the implementation have been : • A user interface that allows a system-user interaction. The user has been given the capability to provide information and ask for explanations. • A combination of depth-first and breadth-first techniques which has been used to tune the Laguerre-filter models. Chapter 4. Expert Adaptive GPC Based on Laguerre-Filter Modelling 130 • Linguistic rules that have been implemented on-line to monitor the closed-loop performance and tune the controller accordingly. Chapter 5 Conclusions 5.1 The main results of the thesis Motivated by the flexibility of the Laguerre-filter based models and the feasibility of the generalized predictive control algorithms, a G P C based on state space models is derived in Chapter 2. The control law has feedback and feedforward terms. Typical effect of the controller tuning parameters are shown by an illustrative example in Section 2.2.1. The case of a one-step control horizon is analyzed in details in Section 2.2.2. The conclusions of that analysis are : • The proposed G P C can stabilize any sampled first-order continuous system. • The G P C problem can be studied as a perturbation problem. For the case of a small perturbation, the closed-loop poles can be calculated as perturbed eigenvalues of the open-loop system. In case of a general perturbation, an upper bound on the perturbation norm is derived to insure the closed-loop stability. • Assuming an open-loop stable system, the case of plant-model match is studied in Theorem 2.2. It is shown that there always exists a prediction horizon and a control-weighting factor such that the G P C scheme is stable. Asymptotically, as the perturbation becomes very small, n closed-loop poles approach the corresponding open-loop ones and one closed-loop pole approaches zero or one. 131 Chapter 5. Conclusions 132 • Systems which have one unstable pole are studied in Theorem 2.3. As the prediction horizon approaches infinity, one closed-loop pole approaches unity, (n — 1) closed-loop poles approach the corresponding open-loop stable poles, and one closed-loop pole approaches zero. If the open-loop system has ra unstable poles such that |A,-1 > |A,+i| , i = l , . . . , r a , then the closed-loop poles A,-,i = l , . . . , r a , are such that Ai —* 1, and A,- —> A,-, i = 2 , . . . , ra. • There is no guarantee that the G P C with one-step control horizon can stabilize a system which has one open-loop unstable pole. • The plant-model mismatch case is studied in Section 2.4.1 using a functional anal-ysis approach. Stability analysis is tackled in three steps. First, assuming direct state feedback, it is shown that stability conditions can be satisfied by increasing the prediction horizon. Second, assuming a disconnected feedback, it is shown that stability conditions of the state observer, embodied in the G P C scheme, can always be satisfied by increasing the prediction horizon. Third, the stability of the over all scheme is concluded. • The robustness of the linear time-invariant G P C schemes in the presence of plant-model mismatch is studied in Section 2.4.2. The results give a solid motive to use Laguerre-filter models in the implementation. The resulting controller is called L A G - G P C . Adaptive L A G - G P C is implemented in Chapter 3. The main conclusions are • Assuming plant-model match, the adaptive L A G - G P C scheme is convergent and globally stable as shown in Theorem 3.3. • Assuming a plant-model mismatch, the robustness condition of the adaptive L A G -G P C is insured by increasing the prediction horizon as shown in Theorem 3.4. Chapter 5. Conclusions 133 • The conclusions drawn for the adaptive L A G - G P C are equally valid for other pre-dictive controllers such as the M A C . • In contrast to the case of zero control weighting and single-stage prediction horizon, the adaptive L A G - G P C does not require the plant-model mismatch to satisfy an SPR condition. • Laguerre-filter models are extended to control unstable systems. • The implementation simplicity of the adaptive L A G - G P C carry over to SIMO and M I M O schemes. It is shown in Theorem 3.5 that there always exist prediction horizons such that the M I M O L A G - G P C is stable and tracks constant set-points with zero steady state error. • It is shown in Theorem 3.6 that the M I M O adaptive L A G - G P C is convergent and globally stable. • Comparing the adaptive L A G - G P C , M A C , and CARIMA-model based G P C , simu-lations show that the adaptive L A G - G P C is superior if the plant is well-damped, un-modelled dynamics are present and the dead time is unknown. For poorly damped systems, the CARIMA-model based G P C comes first and the L A G - G P C comes second. The M A C fails to control systems with zero damping using a reasonable model order. The adaptive L A G - G P C is augmented with fuzzy-logic and expert-system techniques in Chapter 4. The main features of that implementation are • A flexible, interactive user interface is implemented. Through that interface, the user understands how to use the system, understand the terminologies, gives infor-mation about the plant, and asks for interpretation of some decisions taken by the Chapter 5. Conclusions 134 expert system. • The Laguerre-model parameters are tuned using AI search techniques. A breadth-first strategy is implemented to adjust the pole of a Laguerre-filter model, while, a depth-first strategy is implemented to adjust the number of filters used in the model. • Linguistic rules are implemented using fuzzy-logic techniques to emulate a human expert while tuning the L A G - G P C . 5.2 Suggestions for further research Throughout this thesis, an attempt has been made to understand and analyze one of the promising adaptive control techniques, namely, generalized predictive control. The goal has been to produce an adaptive controller that performs satisfactorily in practice and still has a sound theoretical basis. It has been our belief that the final implementation of the controller should be using expert system techniques. Along the above lines, further research can be carried out. The following suggestions give some guidelines : • The expert-system implementation can be extended to include other predictive controllers, e.g. M A C , D M C , and G P C . • Meta rules should be implemented to give the user better understanding of the inference mechanism. • The model adjustment and on-line tuning techniques should be modified to handle stochastic systems. Chapter 5. Conclusions 135 • The expert system should be applied to a pilot plant to find out its weaknesses and strengths. The final goal is to apply it to an industrial plant. Bibliography Albertos, P. and R. Ortega, (1989). On Generalized Predictive Control: Two alternative Formulations. Automatica, Vol. 25, No. 5, pp. 753-755. Astrom, K.,(1983). Analysis of Rohrs' Counter-Example of Adaptive Control. Pro-ceedings of the 22nd C D C , pp. 982-987. Arzen, K.,(1989). A n Architecture for Expert System Based Feedback Control. Automatica, Vol. 25, No. 6, pp. 813-827. Arzen, K.,(1986a). Realization of Expert System Based Feedback Control. Ph.D. thesis, Department of Automatic Control, Lund Institute of Technology, Swe-den. Arzen, K.,(1986b). Expert System for Process Control. Application of AI in Engg. Problems, 1st International Conference, U K . Astrom, K . , T. Hagglund, (1989). Automatic Tuning of PID Controllers. Instru-ment Society of America, Research Triangle Park, N C . Astrom, K . , J . Anton, and K . Arzen, (1986). Expert Control. Automatica, Vol. 22, No. 3, pp. 277-286. Astrom, K . , B . Wittenmark, (1984). Computer Controlled Systems. Prentice-Hall, Inc., Englewood Cliffs, N . J . 07632. Bitmead, R., M . Gevers, and V . Wertz, (1990). Adaptive Optimal Control, The Thinking Man's G P C . Prentice Hall. Bitmead, R., M . Gevers, and V . Wertz, (1989). Adaptation and Robustness in 136 Bibliography 137 Predictive Control. Proceedings of the 28th C D C , Florida, pp. 2114-2119. Bitmead, R., M . Gevers, and V . Wertz, (1989). Optimal Control Redesign of Generalized Predictive Control. Proceeding of IFAC symposium on Adaptive Control and Signal Processing, Glasgow. Bristol, E.,(1977). Pattern Recognition : A n Alternative to Parameter Identifica-tion in Adaptive Control. Automatica, Vol. 13, pp. 197-202. Charniak, E . and D. McDermott, (1987). Introduction to Artificial Intelligence. Addison-Wesley Publishing Company. Clarke, D., L. Zhang, (1987). Long-range Predictive Control Using Weighting Sequence Models. IEE Proceedings, Vol. 134, Pt. D, No. 3, pp. 187-195. Clarke, D., A . Hodgson, and P. Tuffs, (1983). Offset Problem and K-Increment Predictors in Self-tuning Control. IEE Proceedings, Vol. 130, Pt. D, No. 5, pp. 217-225. Clarke, D., P. Kanjilal, and C. Mohtadi, (1985). A Generalized L Q G Approach to Self Tuning Control. Part I. Aspects of Design. International Journal of Control, Vol. 41, No. 6, pp. 1509-1523. Clarke, D., P. Kanjilal, and C. Mohtadi, (1985). A Generalized L Q G Approach to Self Tuning Control. Part II. Implementation and Simulation. International Journal of Control, Vol. 41, No. 6, pp. 1525-1544. Clarke, D., C. Mohtadi, and P. Tuffs, (1987). Generalized Predictive Control -Part I. The Basic Algorithm. Automatica, Vol. 23, No. 2, pp. 137-148. Clarke, D., C. Mohtadi, and P. Tuffs, (1987). Generalized Predictive Control - Part II. Extensions and Interpretations. Automatica. Vol. 23, No. 2, pp. 149-160. Bibliography 138 Clarke, D. and C. Mohtadi, (1989). Properties of Generalized Predictive Control. Automatica, Vol. 25, No. 6, pp. 859-875. Cluett, W. and E . Goberdhansingh, (1990). Autotuning for Model-based Predic-tive Control. Automatica, Vol. 26, No. 4, pp. 691-697. Cutler C. and B. Ramaker, (1980). Dynamic Matrix Control - A Computer Control Algorithm. Proceedings of the J A C C , WP5-B. Deif, A.,(1982). Advanced Matrix Thoery for Scientists and Engineers. A B A C U S Press, Tunbridge Wells. De Keyser, R. and A . Van Cauwenberghe, (1981). A Self-tuning Multistep Pre-dictor Application. Automatica, Vol. 17, No. 1, pp. 167-174. De Keyser, R., Ph. Van De Velde and F. Dumortier, (1988). A Comparative Study of Self-adaptive Long-range Predictive Control Methods. Automatica, Vol. 24, No. 2, pp. 149-163. ; Demircioglu, H . and P. Gawthrop, (1991). Continuous-time Generalized Predictive Control. Automatica, Vol. 27, No. 1, pp. 55-74. Doraiswami, R., and J . Jiang, (1989). Performance Monitoring in Expert Control Systems. Automatica, Vol. 25, No. 6, pp. 799-811. Dumont, G. , (1991). Personal Notes. Dumont, G. , Y . Fu, and A . - L . Elshafei, (1991). Orthonormal Functions in Identifi-cation and Adaptive Control. Preprints of the IFAC international Symposium ITAC-91, Singapore. Dumont, G. and C. Zervos, (1986). Adaptive Controllers Based on Orthonormal Series Representation. 2nd. IFAC workshop on Adaptive Systems in Control and Signal Processing. Lund, Sweden. Bibliography 139 Elshafei, A . - L . , G. Dumont, and A . Elnaggar, (1991). Perturbation Analysis of G P C with One-Step Control Horizon. Automatica, Vol. 27, NO. 4, pp. 725-728. Favier, G. and D. Dubois, (1990). A Review of K-step-ahead Predictors. Auto-matica, Vol. 26, No. 1., pp. 75-84. Forgy, C , (1979). OPS4 User's Manual. Fu, Y . and G. Dumont, (1991). Optimal Laguerre Time Scale and Its On-Line Estimation. Submitted for publication. Goodwin, G. and K . Sin, (1984). Adaptive Filtering, Prediction, and Control. Prentice-Hall, Inc., Englewood Cliffs, New Jersey. Garcia, C , D. Prett and M . Morari, (1989). Model Predictive Control: Theory and Practice - a Survey. Automatica, Vol. 25, No. 3, pp. 335-348. Goodwin, G. , P. Ramadge and P. Caines, (1981). A Globally Convergent Adaptive Predictor. Automatica, Vol. 17, No. 1, pp. 135-140. Gorez, R., V . Wertz and Z. Kuan-Yi, (1987). On a Generalized Predictive Control Algorithm. Systems and Control Letters, Vol. 9, pp. 369-377. Gensym Corporation, (1989). G2 Reference Manual. Gensym, Cambridge, M A . Haest, M . , G. Bastin, M . Gevers, and V . Wertz, (1990). ESPION : an Expert System for System Identification. Automatica, Vol. 26, No. 1, pp. 85-95. Hayes-Roth, F. , D. Waterman, and D. Lenat, (1983). Building Expert Systems. Addison-Wesley Publishing Company, Inc. Irving, E . , C. Falinower, and C. Fonte, (1986). Adaptive Generalized Predictive Control with Multiple Reference Model. IFAC workshop, Lund, Sweden. Kailath, T., (1980). Linear Systems. Prentice-Hall, Inc. Bibliography 140 King, P. and E. Mamdani, (1977). The Application of Fuzzy Control Systems to Industrial Processes. Automatica, Vol. 13, pp. 235-242. Kwon, W. and D. Byun, (1989). Rededing Horizon Tracking control as a Predictive Control and its Stability Properties. Int. J . Control, Vol. 50, No. 5, pp. 1807-1824. Lam, K.,(1989). Using Filtered C A R M A and C A R I M A Models for State-Space Self-tuning Control. Int. J . Sci., Vol. 20, No. 12, pp. 2461-2470. Lam, K.,(1982). Design of Stochastic Discrete Time Linear Optimal Regulators: Part I. Relationship between Control Laws Based on a Time Series Approach and a State-Space Approach. Int. J . Systems Sci., Vol. 13, No. 9, pp. 979-1000. Lam, K.,(1982). Design of Stochastic Discrete Time Linear Optimal Regulators: Part II. Extension and Computational Procedure.Int. J . Systems Sci., Vol. 13, No. 9, pp. 1001-1011. Lebow, L . , and G. Blankenship, (1987). A Microcomputer Based Expert Con-troller for Industrial Applications. In "Knowledge Based Expert Systems for Engineering : Classification, Education and Control", edited by D. Sriram ' and R. Adey^p. 175-192, Computational Mechanics Publications. Lee, C , (1990). Fuzzy Logic in Control Systems. IEEE Transactions on Systems, Man, and Cybernetics, Vol. 20, No. 2, pp. 404-418. Lee, Y . , (1960). Statistical Theory of Communication. Wiley, New York. Leinweber, D.,(1987). Expert Systems in Space. IEEE Expert, pp.26-36. Little, D. and T. Edgard, (1986). Predictive Control Using Constrained Optimal Control. Proceedings of the A C C , pp. 1365-1371. Bibliography 141 Mamdani, E . , (1974). Applications of Fuzzy Algorithms for Simple Dynamic Plant. Proceeding of IEE, Vol. 121, no. 12, pp. 1585-1588. Martin-Sanchez, (1976). A New Solution to Adaptive Control. Proceeding of the IEEE, Vol. 64, No. 8, pp. 1209-1218. Martin G. , (1981). Long-Range Predictive Control. A I C H E Journal, Vol. 27, No. 5, pp. 748-753. Masten, M . and H . Cohen, (1988). Introduction to a Showcase of Adaptive Control Designs. Proceedings of the A C C 1988, pp. 2418-2422. Mcintosh, A . , S. Shah, and D. Fisher, (1989). Experimental Evaluation of Adap-tive Control in the Presence of Disturbances and Model-Plant Mismatch, in " Adaptive Control Strategies for Industrial Use ", S. Shah and G. Dumont Eds., Springer-Verlag, pp. 145-172. Mcintosh, A . , S. Shah, and D. Fisher, (1991). Analysis and Tuning of Adaptive Generalized Predictive Control. The Canadian Journal of Chemical Engineer-ing, Vol. 69, pp. 97-110. Mehra, R., R. Rouhani, A . Rault and J . Reid, (1977). Model Algorithmic Control: Theoretical Results on Robustness. Proceedings of the J A C C , pp. 387-392. Minsky, M . , (1975). A Framework for Representing Knowledge. In " The Psychol-ogy of Computer Vision", McGraw-Hill, New York, Edited by P. Winston. Moca, E . , G. Zappa and J . Lemos, (1989). Robustness of Multipredictor Adaptive Regulators: M U S M A R . Automatica, Vol. 25, No. 4, pp. 521-529. M'Saad, M . , E . Van Den Bossche, A . Montano and L. Dugrad, (1988). A Long Range Predictive Adaptive Control : Performance Enhancement and Exper-imental Evaluation. IFAC workshop on Robust Adaptive Control, Newcastle, Bibliography 142 Australia. Mohtadi, C , (1989). On the Role of Prefiltering in Parameter Estimation and Control. In " Adaptive Control Strategies for Industrial Use ", S. Shah and G. Dumont Eds., Springer-Verlag, pp. 261-280. Mohtadi, C. and D. Clarke, (1986). Generalized Predictive Control, L Q , or pole-placement: A Unified Approach. Proceedings of the 25th C D C , Athens, pp. 1536-1541. Moore,R., L . Hawkinson, M.Levin, A . Hofmann, B . Mathews and M . David, (1987). A n Expert System for Real-time Process Control. In "Knowledge Based Expert Systems for Engineering : Classification, Education and Control",pp.95-104, edited by D. Sriram and R. Adey. Moore, R., and M . Kramer, (1986). Expert Systems in On-line Process Control. The 3rd International Conference on Chemical Process Control, California. Nilsson, N . , (1980). Principles of Artificial Intelligence. Tioga Publishing Com-pany, California. Parks, T., (1971). Choice of Time Scale in Laguerre Approximations Using Signal Measurements. I E E E Trans. Automatic Control, AC-16, pp. 511-513. Payne, A . , (1987). Stability Result with Application to Adaptive Control. Inter-national Journal of Control, Vol. 1987, No. 1, pp. 249-261. Peterka, V . , (1984). Predictor-based Self-tuning Control. Automatica, Vol. 20, No. 1, pp. 39-50. Procyk, T. and E. Mamdani, (1979). A Linguistic Self-Organizing Process Con-troller. Automatica, Vol. 15, pp. 15-13. Richalet, J . , A . Rault, J . Testud and J . Papon, (1978). Model Predictive Heuristic Bibliography 143 Control: Applications to Industrial Processes. Automatica, Vol. 14, pp. 413-428. Rohrs, C , L. Valavani, M . Athans, and G. Stein, (1982). Robustness of Adaptive Control in the Presence of Unmodelled Dynamics. Proceeding of the 21st C D C , Orland, Florida. Rouhani, R. and R. Mehra, (1982). Model Algorithmic Control (MAC); Basic Theoretical Properties. Automatica, Vol. 18, No. 4, pp. 401-414. Salle, S., K . Astrom, (1991). Smart Synthesis of a PID Controller. Preprints of the IFAC International Symposium, ITAC 91, Singapore. Safonov, M . , (1980). Stability and Robustness of Multivariable Feedback Systems. The MIT press, Cambridge, M A . Soeterboek, A . , H . Verbruggen, P. den Bosch, and H . Butler, (1990). On the Unification of Predictive Control Algorithms. Proceedings of the 29th C D C , Honolulu, Hawaii, pp. 1451-1456. Soeterboek, A . , H . Verbruggen, and P. den Bosch, (1990). On the Design of the Unified Predictive Controller. ITAC conference, Singapore. Soeterboek, A . , H . Verbruggen, and J . Wissing, (1991). Predictive Control of Nonlinear Processes. ITAC conference, Singapore . Stefik, M . and D. Bobrow, (1986). Object Oriented Programming : Themes and Variations. AI Magazine 6, No. 4, pp. 40-62. Van Cauwenberghe and R. De Keyser, (1985). Self-adaptive Long-range Predictive Control. Proceedings of the A C C , pp. 1155-1160. Van Melle, W., A . Scott, J . Bennett, and M . Peairs, (1981). The E M Y C I N manual. Computer Science Department. Standford University. Bibliography 144 Warwick, K . and D. Clarke, (1988). Weighted Input Predictive Controller. IEE Proceedings, Vol. 135, Pt. D, No. 1, pp. 16-20. Wertz, V . , R. Gorez and Z. Kuan-Yi, (1987). A New Generalized Predictive Con-troller. Proceedings of the 26th C D C , Los Angeles, pp. 2168-2173. Wertz, V . , (1987). On the Stability of Generalized Predictive Control Algorithms. Technical Report EE8702, University of Newcastle, Australia. Wittenmark, B . and K . Astrom, (1984). Practical Issues in the Implementation of Self Tuning Control. Automatica, Vol. 20, No. 5, pp. 595-605. Ydstie, B . , (1984). Extended Horizon Adaptive Control. IFAC 9th Triennial World Congress, Budapest, pp. 911-915. Ydstie, B . , L . Kershenbaum, and R. Sargent, (1985). Theory and Application of an Extended Horizon Self-tuning Controller. A I C H E journal, Vol. 31, No. 1, pp. 1771-1780. Zadeh, L.,(1973). Outline of a New Approach to the Analysis of Complex Systems and Decision Processes. IEEE trans, on Systems, Man, and Cybernetics, Vol. SMS-3, No. 1, pp. 28-44. Zadeh, L . , (1984). Making Computers Think Like People. I E E E Spectrum, August 1984, pp. 26-32. Zemanian, A . , (1968). Generalized Integral Transformations. 1987 Republication, Dover, New York. Zervos, C , (1988). Adaptive Control Based on Orthonormal Series Representa-tion. Ph.D. thesis, Department of Electrical Engineering, The University of British Columbia. Zervos, C. and G. Dumont, (1988a). Deterministic Adaptive Control Based on Bibliography 145 Laguerre Series Representation. International Journal of Control, Vol. 48, pp. 2333-2359. Zervos, C. and G. Dumont, (1988b). Multivariable Self-Tuning Control Based on Lagueere Series Representation. Proceeding of Int. Workshop on Adaptive Strategies for Industrial Use, Banff, Canada. Ziegler, J . and N . Nichols, (1943). Optimum Settings for Automatic Controllers. Trans. A S M E 65, pp.433-444. Zhou, W., G. Dumont, and B. Allison, (1991). A Prototype Expert System Based on Laguerre Adaptive Control. Preprints of the IFAC international Sympo-sium ITAC-91, Singapore. Zhu, K . , R. Gorez, and V . Wertz, (1990). Alternative Algorithms for Generalized Predictive Control. Systems and Control Letters, Vol. 15, pp. 169-173. Appendix A Building an Expert System A. l Definitions and characteristics A n expert system can be defined as a program that solves problems within a specific, limited domain that normally would require a human expert. This definition is wide and vague since some programs satisfy the definition but are not considered expert systems, e.g. a F F T program. A n expert system can be better defined by its characteristics. A n important characteristic of expert systems is their capability to solve problems within limited application domains where conventional techniques are inadequate. This could be because the problem lacks a clear analytical algorithmic solution or the exist-ing algorithm is computationally intractable. Another characteristic is that the domain knowledge is represented explicitly in an identifiable, separate part of the program. The inference engine runs the program by operating a set of rules on the knowledge base. This is in contrast to conventional programming where the domain knowledge is expressed as program statements. This transparent feature of the expert system makes it understand-able to both the user and the developer. The explicit knowledge representation provides the bases for modularity. The knowledge base is built incrementally and can be expanded to more complex systems. Another aspect of expert systems is their ability to reason with uncertainty and explain their reasoning to the user. 146 Appendix A. Building an Expert System 147 A.2 Major stages of knowledge acquisition Knowledge acquisition is the transfer and transformation of the problem solving expertise from some knowledge source to a program. There are five major stages to accomplish this task. 1. Identification stage : This involves identifying the sources of information, the prob-lem characteristic, resources, and goals. 2. Conceptualizing stage : In this stage the concepts and relations mentioned during the identification stage are made explicit. 3. Formalization stage : The key concepts and relations are mapped into formal rep-resentations that can be utilized in the expert system . 4. Implementation stage : The domain knowledge, made explicit during the formal-ization stage, specifies the contents of the data structures, the inference rules and the control strategies. The ultimate product of this stage is a prototype expert system. 5. Testing stage : The prototype expert system is evaluated by trying it out on several examples. Weaknesses of the knowledge base and the inference structure are figured out. The expert system is revised to improve its performance. A.3 Techniques of knowledge representation A.3.1 Semantic networks Semantic networks represent knowledge as a network of nodes. A node could represent the concept of objects, events, ideas, etc. Associative links represent the relations among Appendix A. Building an Expert System 148 the nodes. Semantic networks represent the combination of a superclass-subclass hierar-chy and the description of properties (attribute-value pairs). Superclass-subclass can be thought of as generalization versus specialization. Another aspect of the network formal-ism is the instance relation that associates a particular piece of knowledge with a class of which it is a member. A.3.2 Frame systems The idea of frame systems, a variation of the semantic networks, was introduced in Minsky (1975). A frame system consists of three main blocks : frames, slots, and facets. A frame is the equivalent to a node in a semantic network, i.e. it represents the concept of objects, events, etc. A slot describes the properties or attributes of a certain frame. Facets describe the different slots, e.g. the value of the slot, the type of the slot value, the default value of the slot, etc. Frames can describe classes or individual instances. Frames can be organized in a superclass-subclass fashion. An important characteristic of semantic networks and Frame systems is that the subclasses can inherit the attributes of their superclasses besides their own. A.3.3 Object-oriented programming The basic entity of object-oriented programming is the object which has a local state and a behavior. Objects are asked to perform operations by sending appropriate messages to them. Objects have associated with the procedures called "Methods" that respond to the messages. Message passing supports data abstraction and generic algorithms. A protocol, i.e. a set of messages, is defined which specifies the external behavior of the object. Objects are divided into classes and instances of classes. The classes build up a superclass-subclass hierarchy with inheritance. A n overview of object-oriented programming is given in Stefik and Bobrow (1986). Appendix A. Building an Expert System 149 A.3.4 Rule-based representation The main parts of a rule based expert system are : database, rulebase and inference engine. The database is used to represent facts about the application domain. Data structures can be in the form of lists, as in 0PS4 (Forgy 1979), object-oriented data, as in E M Y C I N (Vanmodele 1981), or simple collections of variables that can take different values. The rulebase contains the rules of the system. A typical rule looks like " if < antecedent > then < consequent > ". The inference engine applies the rules to the data base according to some strategy. The most common strategies are forward chaining and backward chaining. Appendix B Fuzzy-Logic Definitions and Terminology According to Zadeh (1984), fuzzy logic is a kind of logic which uses graded or qualified statements rather than ones that are strictly true or false. Fuzzy logic is a concept which is meant to bring the reasoning used by computers close to that used by people. This approach has three main distinct features, Zadeh (1973) : 1. The use of linguistic variables : A liguistic variable is a variable whose values are sentences in a natural or an artificial language. 2. The characterization of the relations between variables by fuzzy conditional state-ments. Fuzzy conditional statements are expressions of the form " IF A T H E N B " where A and B have fuzzy meaning, e.g. " IF x is small T H E N y is large" 3. Characterization of complex relations by fuzzy algorithms. A fuzzy algorithm is an ordered sequence of instructions which may contain fuzzy assignments and con-ditional statements, e.g. " x is very smalF and " IF x is very small T H E N y is large". In what follows, the definitions and properties of fuzzy sets, which are used in chapter 4, are summarized. Definition B.l The universe of discourse U is a collection of objects denoted generically by {u} where u is a generic element in U. 150 Appendix B. Fuzzy-Logic Definitions and Terminology 151 Definition B.2 A fuzzy subset A of a universe of discourse U is characterized by a membership function PA'-U —+ [0,1]. So, UA(U) represents the grade of membership of u in A. Definition B.3 The support of a fuzzy set A is the crisp set of all u £ U such that f*A(U) > 0. The element u at which PA(U) = 0.5 is call the crossover point. A fuzzy set whose support is a single point in U with UA(U) = 1.0 is referred to as a fuzzy singleton. Definition B.4 A linguistic variable is characterized by a quintuple (x,T(x),U,G, M) in which x is the name of the variable; T(x) is the term set of x, that is, the set of names of linguistic values of x with each value being a fuzzy number defined on U; G is a syntactic rule for generating the names of values of x; and M is a semantic rule for associating with each value its meaning. Definition B.5 Let A and B be two fuzzy sets in U with membership functions PA o-nd PB, respectively. The set theoretic operations of union, intersection and complement for fuzzy set are defined as • The membership function PA\JB * pointwise defined for all u £ U by PA\JB(u) = max{ muA(u),pB(u)} (B.270) • The membership function PA(^\B i S pointwise defined for all u £ U by VAC\B(u) = min{pA{u), UB{U)} (B.271) • The membership function p^ of the complement of a fuzzy set A is pointwise defined for all u £ U by uA(u) = 1 - pA(u) (B.272) Appendix B. Fuzzy-Logic Definitions and Terminology 152 Definition B.6 If At, A2, AN are fuzzy sets in U\, U2, UN, respectively, the Cartesian product of A\,A2, ..., AN is a fuzzy set in the product space U\ x U2 x . . . x UN with membership function VA1X...XAN{U1,...,Un) = min^A^u-i),..., PAn(UN} (B.273) A fuzzy relation R from a set U\ to a set U2 is a fuzzy subset of the Cartesian product Ui x U2. Definition B.7 If R and S are fuzzy relations in U x V and V x W, respectively, the composition of R and S is a fuzzy relation denoted by Ro S and is defined by RoS = {[(«,tLj),sup(^(u,t;) * us(v,w))],u € U,v e V,w G W} (B.274) V where * is the minimum operator.
- Library Home /
- Search Collections /
- Open Collections /
- Browse Collections /
- UBC Theses and Dissertations /
- Adaptive predictive control : analysis and expert implementation
Open Collections
UBC Theses and Dissertations
Featured Collection
UBC Theses and Dissertations
Adaptive predictive control : analysis and expert implementation Elshafei, Abdel-Latif 1991
pdf
Page Metadata
Item Metadata
Title | Adaptive predictive control : analysis and expert implementation |
Creator |
Elshafei, Abdel-Latif |
Publisher | University of British Columbia |
Date Issued | 1991 |
Description | A generalized predictive controller has been derived based on a general state-space model. The case of a one-step control horizon has been analyzed and its equivalence to a perturbation problem has been emphasized. In the case of a small perturbation, the closed-loop poles have been calculated with high accuracy. For the case of a general perturbation, an upper bound on the permissible perturbation norm has been derived. A functional analysis approach has also been adopted to assess the closed-loop stability in the case of nonlinear systems. Both the plant-model match and plant-model mismatch cases have been analyzed. The proposed controller has proven to be so robust that an adaptive implementation based on Laguerre-filter modelling has been motivated. Both SISO and MIMO schemes have been analyzed. Using a sufficient number of Laguerre filters for modelling, the adaptive controller has been proven to be globally convergent. For low-order models, the robustness of the adaptive controller can be insured by increasing the prediction horizon. The convergence and robustness results have been extended to other predictive controllers. A comparative study has shown that the proposed controller would be superior to the other predictive controllers if the open-loop system is stable, well-damped, and of unknown order or time delay. To achieve a reliable control without deep user involvement, the adaptive version of the proposed controller has been implemented using the expert shell, G2. The resulting expert system has been used to orchestrate the operation of the controller, provide an interactive user interface, adjust the Laguerre-filter model using AI search algorithms, and evaluate the performance of the controller on-line. Based on the performance evaluation, the tuning parameters of the controller can be adjusted on-line using fuzzy-logic rules. |
Genre |
Thesis/Dissertation |
Type |
Text |
Language | eng |
Date Available | 2011-01-24 |
Provider | Vancouver : University of British Columbia Library |
Rights | For non-commercial purposes only, such as research, private study and education. Additional conditions apply, see Terms of Use https://open.library.ubc.ca/terms_of_use. |
DOI | 10.14288/1.0065458 |
URI | http://hdl.handle.net/2429/30802 |
Degree |
Doctor of Philosophy - PhD |
Program |
Electrical and Computer Engineering |
Affiliation |
Applied Science, Faculty of Electrical and Computer Engineering, Department of |
Degree Grantor | University of British Columbia |
Campus |
UBCV |
Scholarly Level | Graduate |
AggregatedSourceRepository | DSpace |
Download
- Media
- 831-UBC_1991_A1 E42.pdf [ 6.9MB ]
- Metadata
- JSON: 831-1.0065458.json
- JSON-LD: 831-1.0065458-ld.json
- RDF/XML (Pretty): 831-1.0065458-rdf.xml
- RDF/JSON: 831-1.0065458-rdf.json
- Turtle: 831-1.0065458-turtle.txt
- N-Triples: 831-1.0065458-rdf-ntriples.txt
- Original Record: 831-1.0065458-source.json
- Full Text
- 831-1.0065458-fulltext.txt
- Citation
- 831-1.0065458.ris
Full Text
Cite
Citation Scheme:
Usage Statistics
Share
Embed
Customize your widget with the following options, then copy and paste the code below into the HTML
of your page to embed this item in your website.
<div id="ubcOpenCollectionsWidgetDisplay">
<script id="ubcOpenCollectionsWidget"
src="{[{embed.src}]}"
data-item="{[{embed.item}]}"
data-collection="{[{embed.collection}]}"
data-metadata="{[{embed.showMetadata}]}"
data-width="{[{embed.width}]}"
async >
</script>
</div>
Our image viewer uses the IIIF 2.0 standard.
To load this item in other compatible viewers, use this url:
https://iiif.library.ubc.ca/presentation/dsp.831.1-0065458/manifest