OPTIMIZATION-BASED CONTROLLER TUNiNG USING THE Q-PARAMETERIZATION By Alan F. Lynch B.A.Sc. University of Toronto, Toronto, Ont. 1991 A THESIS SUBMITTED IN PARTIA. FULFILLMENT OF THE REQUIREMENTS FOK PHE DEGREE OF MASTER OF APPLIED SCIENCE in PHE FACULTY F C DU E S DEPARTMEN OF ELI’:i IICAL I We accept this t to the requil s as iDlES GINEEBINC nforming standard THE UNIVERSITY OF BRITISH COLUMBIA December 1993 © Alan F. Lynch, December 31, 1993 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. Department of Electrical Engineering The University of British Columbia 2075 Wesbrook Place Vancouver, Canada V6T 1W5 Date: 3 / / Abstract We consider the problem of tuning a closed-loop linear controller for a continuous-time linear, lumped, exponentially stable plant using measurements. A two-step tuning method is proposed based on an “internal model” controller structure. The motivation for developing the method is to reduce the effect of modeling error on the design and to reduce the amount of computation required compared to a similar design performed off-line. The first step is to solve a controller design problem formulated as a sequence of convex optimization problems in which the cost and constraint functionals and their descent directions are computed directly from plant measurements. The designer is comfortable in specifying desired performance by adjusting the weights of a weighted-max cost function composed of a wide range of time and frequency domain performance functionals. To implement the “internal model” controller, a plant model is obtained in the second step. The identification objective makes the plant model depend on the desired closed-loop performance. To ensure a robust design, the model satisfies a worst-case error bound which depends on information about the plant, the experiment duration, the noise level, and the order of the model. 11 Table of Contents ii Abstract vii List of Figures x List of Tables xi Notation xiii Acknowledgements 1 2 1 Introduction 1.1 Feedback system 1 1.2 Control design step 2 1.2.1 Background on linear controller design methods 2 1.2.2 Using plant measurements to perform an optimization-based design 8 1.3 Control-oriented identification step 9 1.4 Statement of problem 10 1.5 Contributions 11 1.6 Thesis outline 11 Control design step of the tuning method 13 2.1 Closed-loop transfer matrix 13 2.2 Parameterization of the controller 13 2.3 Stable plant 2.2.1 Internal model controller structure 2.2.2 Implementation of the design parameter Q 14 for optimization-based controller design 15 17 Controller design problem 2.3.1 Performance functionals 17 2.3.2 Performance specifications 17 2.3.3 Form of the optimization problem 18 111 2.3.4 3 Tuning procedure . 19 2.4 Performing a design on P 20 2.5 Optimization algorithms 23 2.6 Internal model controller structure Unstable plant 24 Computing the performance functionals in the control design step 3.1 3.2 3.4 3.5 27 The step response functional 3.1.1 Using measurements to evaluate the step response functional 3.1.2 Using measurements to evaluate a subgradient of the step response functional 3.1.3 Computational cost 30 3.1.4 A step response functional example 31 29 . . Norms of particular response functionals 3.2.1 3.3 27 30 31 Using measurements to evaluate the norm of a particular response functional and its subgradient 35 3.2.2 Computational cost 35 3.2.3 An example of using the “L norm” functional 35 The “peak gain norm” functional 37 3.3.1 Using measurements to evaluate the “peak gain norm” functional 38 3.3.2 Using measurements to evaluate a subgradient of the “peak gain norm” functional 39 3.3.3 Computational cost 40 3.3.4 An example of using the “peak gain norm” functional 40 41 2 norm” functional The “H 3.4.1 2 norm” functional Using measurements to evaluate the “H 3.4.2 2 norm” functional Using measurements to evaluate the subgradient of the “H 3.4.3 Computational cost 43 3.4.4 2 norm” functional An example of using an “H 45 42 . . 43 45 The “H norm” functional 3.5.1 Using measurements to evaluate the “H, norm” functional 3.5.2 Using measurements to evaluate a subgradient of the “H,,, norm” functional 3.5.3 Computational cost 48 3.5.4 An example of using the “Hc,, norm” functional 48 iv 47 . . 47 50 4 Identification step of the tuning method 5 4.1 Identification method 50 4.2 Deriving the bound for the unweighted model error 51 Transformation to the z-plane via the bilinear transformation 52 4.2.2 Assumed knowledge about the plant 52 4.2.3 Approximation error of a linear spline interpolant 53 4.2.4 Error bound for truncating a Taylor series 54 4.2.5 An expression for the model error bound 54 56 Simulation examples 5.1 5.2 6 4.2.1 Example 1: Stable plant 56 5.1.1 An analytic solution 57 5.1.2 Open-loop tuning and another interpretation of the design problem 59 5.1.3 Results of the identification step Example 2 Unstable plant, the ACC’ benchmark problem 71 5.2.1 Statement of the design problem 71 5.2.2 Performance specifications 72 5.2.3 Results of the control design step 76 Conclusions/Future work 85 6.1 85 6.2 Conclusions 6.1.1 Control design step 85 6.1.2 Identification step 86 87 Future work 89 A Some rules for computing subgradients A.1 Basic definitions 89 A.2 Rules for computing subgradients 89 B A two-step design for strongly stabiizable plants ‘ACC stands for the American Control Conference. V 91 C Cost of evaluating the performance functionals 0.1 The step response functional 93 93 0.1.1 Evaluating the functional using a plant model 93 0.1.2 Evaluating the functional using measurements 97 0.2 Norms of a particular response functional 97 0.2.1 Evaluating the functional using a plant model 97 0.2.2 Evaluating the functional using measurements 100 100 C.3 The “peak gain norm” functional 0.3.1 Evaluating the functional using a plant model 100 0.3.2 Evaluating the functional using measurements 102 103 2 norm” functional 0.4 The “H 0.4.1 Evaluating the functional using the plant model 103 0.4.2 Evaluating the functional using measurements 105 109 0.5 The “H, norm” functional 0.5.1 Evaluating the functional using the plant model 109 0.5.2 Evaluating the functional using measurements 111 D Cost of computing a time domain response in MATLAB 114 Fl Loop Transfer Recovery (LTR) design method 115 E.1 Linear Quadratic Gaussian (LQG) design method 115 118 E.2 LTR design procedure F Obtaining the frequency response data for the identification step 119 Bibliography 121 vi List of Figures 1.1 Closed-loop system 2 1.2 Open-loop system 8 1.3 Tradeoff between uncertainty and achievable performance 9 2.4 Controller structure for a stable plant 14 2.5 An equivalent open-loop system 14 2.6 Parameterization of the design parameter 2.7 Iterations of the ellipsoid algorithm 25 2.8 Controller structure for a strongly stabilizable plant 26 3.9 Open-loop system 27 Q 15 3.10 The step response functional 28 3.11 Computational cost : The step response functional 31 The step response functional 32 3.12 Computational cost 3.13 A step response for the step response functional example 3.14 Computational cost The norm of a particular response functional 33 36 3.15 A step response for the norm of a particular response functional example 37 3.16 Actuator effort for the norm of a particular response functional example 38 3.17 Computational cost : The “peak gain norm” functional 40 3.18 A step response for the “peak gain norm” functional example 41 3.19 Actuator effort for the “peak gain norm” functional example 42 3.20 Computational cost The “H 2 norm” functional 44 3.21 Computational cost The “H 2 norm” functional 45 2 norm” functional example 3.22 A response due to white-noise excitation for the “H 3.23 Computational cost The “H® norm” functional 46 48 3.24 A Bode magnitude plot for the “H norm” functional example 49 5.25 Example 1: An augmented plant used in the LTR design method 58 vii 5.26 Example 1: A weighting transfer function used in the LTR design method 59 5.27 Example 1: Performing the analytic design method 60 5.28 Example 1: Another interpretation of the analytic design problem 61 5.29 Example 1 : Optimal cost function values versus the number of controller parameters. . 63 5.30 Example 1: Number of functional evaluations to obtain the solution 64 5.31 Example 1: A tradeoff curve 65 5.32 Example 1: Assumed information about the plant 66 5.33 Example 1 : Worst-case model error bounds 67 5.34 Example 1: A step response of the optimal controller 69 5.35 Example 1: Bode plots of the open-loop gain 70 5.36 Example 2: A benchmark problem 71 5.37 Example 2: Describing uncertainty in the plant 73 5.38 Example 2 : Measuring an impulse response 75 5.39 Example 2: A gain margin specification 76 5.40 Example 2 : Bode magnitude plots of the optimal solution 79 5.41 Example 2 : Bode magnitude plots of the optimal solution 80 5.42 Example 2 : Bode plots the optimal open-loop gain 81 5.43 Example 2 : Time domain responses of the optimal solution 82 5.44 Example 2: A tradeoff curve 83 5.45 Example 2: Convergence of the optimization algorithm 84 A.46 An example of a convex nondifferentiable functional 90 C.47 Cost of evaluating the step response functional 95 C.48 Cost of evaluating the norm of a particular response functional 98 C.49 Cost of evaluating the “peak gain norm” functional 101 2 norm” functional C.50 Cost of evaluating the “H 104 2 norm” functional C.51 Relative cost of evaluating the “H 109 C.52 Cost of evaluating the “H, norm” functional 112 C.53 Relative cost of evaluating the “H norm” functional 113 E.54 LQG controller structure 116 viii E.55 An augmented plant used in the LTR design method 117 F.56 Identification experiment setup 119 ix List of Tables 5.1 Example 1: An analytic solution 5.2 Example 1: An optimal controller 5.3 Example 2 5.4 Example 2: Optimal controller parameters . 61 68 Optimal values of the objectives x 77 78 Notation Notation Meaning arg mm A minimizer of the argument. arg inf An infimizer of the argument. C The complex numbers. Co+ {s e CIRs> O}, the open right-half plane. B,, {s e Clisi < p}. B 1 B FIX The expected value of a random variable X. Hba The closed-loop transfer function from signal a to signal b. = {s e Cilsi < 1}, the open unit disk. The imaginary part of the complex number s. inff The infimum of a function. .1 1 L One-sided inverse Laplace transform operator. max The maximum of a function or set. mm The minimum of a function or set. N The nonnegative integers. R, R The Real numbers and nonnegative Real numbers, respectively. RN The vector space of n-component real vectors. The space of functions {f: + 0 C The space of functions {f B —* —+ ÷ and sup 0 Cif is analytic in C €C+ 5 Cif is analytic in B and supEB RH,,, The space of proper real-rational transfer functions. 2 RH The space of strictly proper real-rational transfer functions. Js The real part of a complex number s. sgn(.) The signum function. sup The supremum of a function. If(z)L The complex conjugate of the complex number s. AH The complex conjugate transpose of the matrix A with complex entries. xi If(s)I <oo}. <oo}. with respect to x at a point x. Vf(x) The gradient of the function llll) 2 lull The vector space V endowed with a norm 2 lIHll The H 2 norm of a transfer function. If H C RH 2 then (V, f The L 2 norm of a function jj’° uQ) dt. 2 2 llHll = (acr IH(iw)l2dw) norm of a sequence I Iull The L ll-”ll €c÷ IH(s)I or sup 3 sup D 2 1/2 supkEN IH(z)l, or H,D. supjj IH(z)I. xii lu(k)l or depending function supR+ on luQ)l whether H is a belongs of H Acknowledgements I would like thank my supervisor Dr. S.E. Salcudean for his patience and support. Many of the ideas presented in the thesis are a result of our discussions. I would like to thank NSERC and ASI for providing me with the financial support to obtain my M.A.Sc. As well, I thank my friends and the students I have met at UBC while pursuing my degree. In particular, I am indebted to Peter Racksel, Brian Perkins, John Ru, and Joseph Yan for their help. Finally I thank Christine for her encouragement and for being able to put up with me. X1H Chapter 1 Introduction A standard approach to designing a feedback controller applies a design method to a plant model derived from laws of physics or experimental data. A particularly powerful design method solves a nonlinear programming problem where the cost and constraint functionals are determined by performance specifi cations (see for example [PMS84, GD83]). However, this design method is typically performed on a low order model of the plant to reduce the complexity of the design. The effects of ignoring the higher order dynamics of the plant on the performance of the system are uncertain. Hence, this design method has two drawbacks: computationally intensive optimization problems for high order plant models and low 1 method proposed in this thesis exploits performance due to design on a simplified model. The tuning the flexibility of an optimization-based design method while addressing its shortcomings by performing to a model) and then identifying the plant accounting a design using plant for desired closed-loop performance. In this chapter we first present the feedback system considered throughout the thesis followed by background on linear controller design methods stressing the benefits of a parameter optimization-based method. Next, motivation for designing using measurements from the plant as opposed to a model is discussed and an outline of an optimization-based tuning method consisting of a design and identification stage is presented. Finally, contributions of the thesis are given and its organization outlined. 1.1 Feedback system The unity-feedback system considere shown in Figure 1.1, where P is a plant, K a controller, r a reference signal, d a plant input disturbanc” y. a system output, iii a measurement noise, e an error signal, u a controller output, and w a plant state disturbance. We restrict our attention to plants and controllers which are linear, time-invariant (LTI), lumped, single-input, single-output (SISO), and operate in continuous-time. The time domain input-output ‘Tuning means designing the controller using measurements from the system and not the plant’s transfer function as is often the case in off-line design. 1 Chapter 1. Introduction 2 + + m Figure 1.1: Closed-loop system. properties of such systems are described by the convolution relation y = g * it, where the system’s impulse response is denoted by g and its (scalar valued) input and output are denoted by it and y respectively. Since the systems are lumped and LTI they have real-rational transfer functions. Throughout the thesis the upper case letter denotes both the system and its transfer function. The “real” plant with unknown transfer function F(s), is assumed strictly proper and exponentially stable. The latter restriction means there exists a a < 0 such that where p denotes the impulse response of the plant. Finally, the notation Hba is used to denote the system’s closed-loop transfer function from signal a t ;signal b. 1.2 1.2.1 Control design step Background on linear controller design methods The control design step of the tuning method is based on parameter optimization-based design methods. It is only recently, with development in optimization techniques and algebraic control theory, that the 3 Chapter 1. Introduction flexibility of such design methods can be fully exploited. This flexibility is understood by comparing the methods with synthetic and analytic design procedures. The division of methods into the classes of synthetic, analytic, and parameter optimization-based is due to [BBN9O]. Synthetic methods Synthetic methods, discussed in [NGK57, 11or63], are the oldest design methods in which the controller is constructed in sections which are added until design specifications are met. Although easy to use and understand, many of the design steps of these methods involve trial and error or applying rules of thumb. For example, consider the synthetic loop shaping technique discussed in [Hor63] which constructs the open-loop gain L = KP to achieve performance specifications and solves for K using K = L/P. If the design problem is to obtain a stabilizing controller which asymptotically tracks reference signals with energy uniformly concentrated over [0, 1] rad/s, and if the plant is minimum phase and has a relative degree of 1, a suitable choice for L is the low-pass filter L(s) = j—, (1.1) which attenuates frequencies outside the operating bandwidth of 1 rad/s [DFT9O]. Tracking performance is improved by multiplying (1.1) by a constant gain chosen small enough to ensure stability. The design must be repeated with some other choice of transfer functions to construct L if unsatisfactory performance is obtained. Hence, in cases where performance specifications are difficult to achieve, the rough guidelines available to obtain L are inadequate and the method fails. Although synthetic methods provide a simple way for designing a controller with understandable structure, each section having an identifiable purpose, their application is awkward and relies on the experience of the designer and undemanding design specifications. Analytic methods Analytic methods, the second type of design method, produce controllers that minimize some specific cost function. For example, the LQG method described in [BH75] minimizes the weighted-sum of the “steady-state” mean-squared value of the state and output in the presence of white Gaussian process and measurement noise. The designer chooses spectral factors of the noise and weights on the output and state so that the controller produced meets the performance specifications. Although the LQG method guarantees a controller which has desirable stability margin and minimizes the cost function (a Chapter 1. Introduction 4 measure of the system’s sensitivity to noise), it is rare that design specifications are directly related to the physical interpretation of the cost function (the mean-squared value of the weighted state and output due to white Gaussian noise inputs). Consequently, desirable performance is obtained by applying the LQG method in an iterative manner with the weighting matrices and noise spectral factors acting as tuning parameters. Loop Transfer Recovery (LTR) is an example of one iterative LQG design method which gives the designer a systematic procedure for loop shaping by solving a sequence of LQG problems [DS81, Mac89], The problem of weight selection is also common to fl-optimal control theory, introduced by Zames [Zam8l], which considers the problem of minimizing the H, norm of the closed-loop transfer matrix. The recent popularity of the H,-optimal method is due to its treatment of robustness specifications which limit the maximum variation in the performance of the closed-loop system due to a set of plant perturbations. To illustrate the difficulty of weight selection for H-optimal control methods, consider a special case of the standard problem which minimizes (jw)S(jw)1 1 max{IW 2 wcR + (jw)T(jw)1 1W } 2 , (1.2) where l41 and l42 are stable weighting trans’ f’.v:ions chosen by the designer and T = Hyr, S = Her are the complementary sensitivity and sensitivity functions respectively. This problem is known as the mixed sensitivity problem and was first solved for the multi-input, multi-output (MIMO) case in {Kwa85, VJ84]. A controller is said to provide robust performance if it has a cost function (1.2) less than one. In this case the nominal performance specification II14”i5II < 1 holds for all plants in the multiplicative perturbation set f where P P(iw)-PUw) P(jw) (jw)I,Vw 2 <1W — is a stable nominal plant rndel. ‘T.e.staudaid; approach is to chose at low (high) frequencies to force IS(jw;I (ITuwI) IWi(iw)I (1W (iw)I) 2 large t:. ‘;esniall there. The difficulty lies in incorporating a wide range of engineering specifications such as corv’aints on. the magnitudes of closed-loop frequency responses and on time domain responses into the weights Wi and W . In fact, there is no general way of 2 determining the weights directly from the performance specifications and, as with the LQG procedure, the weighting transfer functions end up being tuned until desirable performance is obtained. For example, [DFT9O] considers the problem of weight selection for time domain specifications on a flexible beam. Chapter 1. Introduction 5 The authors show how the framework of the mixed sensitivity problem cannot deal with constraints on the step response overshoot and peak value of the plant input precisely and an iterative procedure for tuning the transfer function design weights is required. Although tuning procedures are sometimes successful in practice, they may not be adequate if the optimization problem is sensitive to the choice of weights [PS89]. Moreover, the design weights should not be tuned on-line since it is sometimes difficult to predict their effects on performance. Hence, analytic method are more methodical than synthetic methods because they produce controllers which guarantee certain desirable feedback properties such as stability. On the other hand, they are difficult to apply when performance specifications are not related in an obvious way to the choice of design weights. Parameter optimization-based design methods and their advantages over analytic and synthetic methods are discussed next. Parameter optimization methods Much work has been done on parameter optimization-based design, see for example [ZA73, Edm79, DF81, 0D83, PMS84, 0D85, NT86, PS89, BB91]. The method involves selecting a controller structure and performance index which is minimized over the controller parameters. Since the designer is free to select the cost function, more complex and realistic design specifications can be dealt with. For example, the cost function can readily combine functionals measuring system performance in both the time and frequency domain. In addition to the benefits of a general cost function, recent developments in numerical optimization techniques and the emergence of the Q-parameterization theory have made parameter optimization-based methods particularly attractive. Recent development in optimization algorithms and design methods Only recently have optimization algorithms been developed which accommodate the nondifferentiable functionals specifying performance of a control system. For example, = sup y(z,t)I (1.3) measures the peak value of the output response y and is not differentiable with respect to the controller parameter x due to the supremum operation. Also, in many cases performance is specified by semi infinite inequalities such as = sup IHer(x,iW)I eR — K(w) 0, (1.4) Chapter 1. Introduction 6 which is equivalent to an infinite system of inequalities (indexed by w) in the finite-dimensional controller parameter. The optimization problem involving functionals such as (1.3) and (1.4) is called semi-infinite and because the functionals are not differentiable, a nondifferentiable optimization algorithm must be used {PMS84, Sal86, Po187]. Although flexibility in the choice of cost and Donstraint functionals allows an optimization-based design to deal directly with a wide range of specifications, the inherent difficulty in stating a realistic control problem requires a interactive procedure for its solution {NT86]. For instance, in many appli cations objectives compete with each other and the designer must decide on a satisfactory tradeoff. This compromise is obtained by performing a sequence of optimization runs with cost functions empha sizing different objectives. Additionally, specifications cannot always be quantified precisely: because there is insufficient information about the system or because the specifications are flexible. An interac tive procedure allows the designer to explore different tradeoffs between the objectives before deciding what constitutes an optimal design. For example, consider the problem of meeting specifications on the rise-time of the output step response and the peak value of the actuator output u. If the designer is flexible with the rise-time specification and wants to know how its slight violation can reduce the peak value of u, then the solution is obtained by exploring the tradeoff curve between the objectives until the best compromise is obtained, It is important to note that although computer-designer interaction is a key element to successfully applying an optimization-based design method, it is only recently that methodologies have been developed, e.g. the CAD system DELIGHT described in [NT86j. Formulation of a convex optimization problem 2 optimization problems can yield only local minima, and Numerical algorithms applied to nonconvex determining whether these minima are global is generally computationally intractable when there are more than a few design parameters. Only when the problem is convex can we guarantee that a global solution to the problem can be found. We believe this confidence in the solution to be an important attribute of the tuning method presented in this thesis. Although the idea of formulating a controller design problem as a convex optimization problem is old, only recently with the development of the so-called Q-parameterization theory has the importance of convexity been stressed [Sal86, PS89, BB91j. The original form of the Q-parameterization theory is due independently to [YBJ76, Kuc79] and parameterizes the set of internally stable closed-loop transfer matrices using a factorization in terms of An optimization problem is convex if the cost and constraint functions are convex. 2 Chapter 1. Introduction 7 polynomial matrices. The present form of the theory used in this thesis is due to [DLMS8O, Vid85] and parameterizes the set of internally stable closed-loop transfer matrices using a factorization in terms of stable transfer matrices. This parameterization has been widely used in controller design methods: [GD83, 0D85] describes an optimization-based design method, [MV87] presents a globally convergent adaptive control scheme, [NJM88] describes a controller design method detecting failures in the plant, and [MZ89] gives a robust control design method for the process control industry. The Q-parameterization theory has also been used in identification to parameterize all plants stabilized by a known controller: [11L87] uses it to parameterize the input-output dynamics of the plant, and [Han89] uses it to simplify the analysis of closed-loop identification, Most commonly used controller structures (e.g. proportional-integral-derivative (PID)) do not neces sarily lead to performance functionals that are convex in the controller parameter. Consider a controller that is convex in its parameters (a PID controller for example), the closed-loop transfer matrix is usually a nonconvex function of the controller parameter due to its linear fractional dependence on K. Hence, functions important for design such as the magnitude of the frequency response of a closed-loop transfer function at a specific frequency are not necessarily convex in the controller parameter [BBB+ 88]. On the other hand, by introducing the Q-parameterization ‘e transform the closed-loop transfer matrix into an Q which ranges over the set of stable rational transfer functions. For function of Q. Consequently, most important performance functionals affine function of the free parameter ‘ - example, Hy,. = PQ is a linear 1 norm functionals, are convex in , and L 2 associated with control design problems, including Hc,o, H Q. This observation is made explicitly in [PS 89]. As mentioned above, both the ideas of performing the design on Q as opposed to K and formulating ,. is a linear function 5 a control design problem as convex programming problem are old. The idea that H of Q is due to [NGK57], who suggest a design is simplified in terms of using K Q with the controller obtained Convex programming was first used to minimize the difference between a reference input and the system output of a discrete-time system in [Feg64]. To summarize, new optimization techniques allow a wide range of important performance functionals to minimized in an interactive design environment which enables the designer to solve realistic control problems. Furthermore, the development of the Q-parameterization theory has re-emphasized the im ) 3 portance of solving a convex problem and making the designer confident that a (approximately Pareto Pareto optimal solutions of an miiLtiobjective optimization problem are the desirable solutions that lie on the boundary 3 between unachievable and achievable performance. Chapter 1. Introduction 8 optimal design can be found. 1.2.2 Using plant measurements to perform an optimization-based design While parameter optimization is emerging as a flexible design method it has two drawbacks: low per formance due to modeling error in the plant and computationally intensive optimization problems. The traditional approach to designing a controller is based on a plant model. The design is performed robustly due to error in the nominal model and resulting performance is typically conservative. This thesis suggests that the control design step he performed directly from measurements on the plant to reduce the effect of modeling errors on performance. Further justification for using measurements as opj.osed to a model to directly perform the design is given in {GD85] in the form of an example which is repeated here. Consider the Routh-Hurwitz method and the Nyquist stability criterion for determining the stability of the closed-loop. Whereas the Nyquist stability criterion can be checked directly using the measured frequency response of the plant, the Routh-Hurwitz method requires the characteristic polynomial of the closed-loop system. It is usually difficult to obtain the characteristic polynomial and the effect of the approximations made in its calculation are unpredictable. In addition, measurements not only offer a more direct way of performing a design, they also reduce the cost of performing optimization for many important cost functions. This is particularly important when the plant model is high order or when many controller parameters are used. Hence, this thesis exploits the benefits of numerical optimization to solve a design problem on-line in which performance functionals of the “Youla parameter” Q and their descent directions are computed from measurements of an open-loop system shown in Figure 1.2. The motivation for this approach is to reduce the amount of computation required to perform the design (compared to an identical optimization-based design performed on a plant model) and reduce the effect of modeling errors on the solution. H__ Figure 1.2: The open-loop system used to compute the performance functionals from measurements. Chapter 1. Introduction 9 The optimal solution to this on-line design problem is denoted Q°,,t. Due to the controller structure used a transfer function expression of the plant is required to obtain the expression for K; the second step of the tuning method is therefore to perform identification. Control-oriented identification step 1.3 The relationship between uncertainty in the plant and achievable performance of the control system is shown in Figure 1.3 [HJN91b]. As the level of uncertainty increases, the achievable performance decreases. This implies that to guarantee the level of performance designed for in the control design step, uncertainty in the plant must be reduced to a certain level by performing identification. Evidently, this procedure is only possible if the measure of plant model error is compatible with the control design step. Limit of performance Largest acceptable level of uncertainty required to achieve a desired level of performance a 4? i system Is unstable Uncertainty system is unstable Figure 1.3: Tradeoff between uncertainty in the plant and achievable performance. After performing the control design step, the uncertainty in the plant must be reduced by identification to a level determined by the desired closed-loop performance. Many of the standard approaches to system identification are discussed in {Lju87j. These methods usually model uncertainty in the form of stochastic additive noise. As well, most methods ignore uncer tainty due to unmodeled dynamics of the plant [SD92]. However, for the control design step to guarantee robust performance the identification method presented here must not only account for additive noise but also provide H norm bound on the unmodeled dynamics. Chapter 1. Introduction 10 The upper bound on the model error derived for the identification method presented in this thesis is motivated by the series of papers [HJN92, HJNOO, HJN91a, 11JN89, IIJN91c] which discuss “controloriented identification in H,”. (This series of papers also refers to other similar relevant work on “identification in H”.) Identification methods are “control-oriented” if they provide bounds on the remaining uncertainty which are compatible with robust control design methods. “Identification in means the measure of the model error is the H norm, making the method compatible with controller design methods discussed in [Zam8l, Fra87j and the control design step discussed previously. In addition, the above papers do not assume any structure for the additive noise except that it is bounded in magnitude. Typically, the behaviour of a plant must be known accurately only over some finite interval of frequencies. Hence, it is logical to weight the model error strongly over the bandwidth of the closed-loop system. This is accomplished by mapping a set of frequency response data of the plant into a model P which minimizes the error — By using the weight the —1 point since Q= the model error is small at frequencies where the Nyquist plot of PK nears 1+PK This is important because the performance of the system depends highly on the accuracy of the model near the critical —1 point. The idea of weighting the model error with Q (which is obtained in a different manner than that presented here) appears in [BYM92] which describes an iterative control-identification design method. Note that as with the design for problem is convex in the design parameter P (provided 1.4 P Q, the optimization is stable). Statement of problem Loosely speaking, the tuning method is performed in two steps: 1. The control design step : Ideally we assume = argmin{(P,Q) exists, where the performance functional IQe and its descent direction are computed from measure ments of the open-loop system PQ. 2. The identification step: Ideally we assume Pop: = argmin{Q ( 0 F — )II I P € } 00 RH 11 Chapter 1. Introduction exist, where frequency response data of the plant is used to obtain the solution. The closed-loop controller is implemented as K(F , 0 1.5 Q°) = (1 0 Q — Contributions This thesis presents a new two-step parameter optimization-based tuning method, roughly outlined in Section 1.4, with the following properties: • Since the optimization problem in the design parameter Q is convex, assuming the estimated performance functionals are exact, an arbitrarily good approximation to the optimal (with respect to designer specified criteria) solution is obtained. • Computation of performance functionals and their descent directions from the open-loop system is computationally efficient because measurements are used. • The control design step for Q is performed directly from measurements of the plant and avoids the effect of modeling errors on the design. • It solves realistic control problems: since a wide rauge of performance functionals can be incorpo rated into the cost and constraint functiorials inJ because an interactive design procedure allows the designer to understand how the objectives ampete. • The identification step minimizes a frequency domain cost function which makes the plant model dependent on the desired closed-loop performance. • The stability of the system is guaranteed because the control design step is performed on the stable open-loop system in Figure 1.2 and because the identification step provides a model which satisfies a worst-case error bound. iS Thesis outline Chapter 1.2.1 describes the control design step of the tuning method by first describing how the controller is parameterized and specifying what is meant by the “controller design problem”. An interactive optimization-based procedure for solving the controller design problem is presented. Finally, some remarks about the optimization algorithms used are given, and the extension of the method to strongly stabilizable plants is discussed. Chapter 1. Introduction 12 As opposed to their vague description in Chapter 2, Chapter 3 precisely defines the performance func tionals and their subgradients used in the tuning method and how they are computed from measurements of the open-loop system in Figure 1.2. Furthermore, it compares the cost of computing functionals using measurements with the cost of computing them from a plant model. Chapter 4 describes the identification step for the plant model required for closed-loop operation and presents an expression for the bound on the unmodeled part of the plant. 4 which illustrate the properties of the Chapter 5 presents two simulation examples using MATLAB tuning method. Chapter 6 presents the conclusions and discusses possible future work that could be performed. Appendix A presents some elementary results from convex analysis. Appendix B gives details on a two-step design procedure to extend the “internal model” controller structure to strongly stabilizable unstable plants. Appendix C presents the details of how the computational costs of the performance functionals in Chapter 3 are obtained. Appendix D derives the cost of computing a time domain response using MATLAB. Appendix E explains the Loop Transfer Recovery design method used in Chapter 3, and Appendix F explains how the frequency response data assumed available for the identification method is obtained. MATLAB stands for matrix laboratory, interactive software for scientific computing. 4 Chapter 2 Control design step of the tuning method This chapter describes the control design step of the two-step tuning method outlined in Section 1.4. described first, followed by a description of The closed-loop transfer matrix of the feedback system the “internal model” controller structure, the controller design problem, and the optimization-based procedure for its solution. Finally, there are comments on the benefits derived from using the plant to perform the design, the optimization algorithms used, and how the controller structure is applied to unstable plants. 2.1 Closed-loop transfer matrix The system’s closed-loop transfer matrix contains all ci :sd-1oop transfer functions that are of interest to the designer and is defined as [ H(P, K) = rip (1 + PK’ -P K -1 1 , (2.5) d y j —K =H(P,K) rn e T and [d, The vector-valued signals [y, u, ej r rn, nT are the system’s exogenous inputs and regulated outputs respectively. The tuning method allows the designer to constrain any of the elements of (2.5). 2.2 Parameterization of the controller This section presents the “internal model” structure used for the controller, and how the design parameter contained in the structure is itself parameterized. 13 Chapter 2. Control design step of the tuning method 14 + Figure 2.4: The IMC controller K(P, Q) = - Q(1 PQy’ = for a stable plant. J 1 Figure 2.5: Equivalent open-loop system from r to y when P 2.2.1 — F, m = 0, d = 0, and w = 0 in Figure 2.4. Internal model controller structure: Stable plant The structure of the controller, which is referred to as Internal Model Control (IMC) in process control [MZ89J, is shown in Figure 2.4. The expression for A K(l, where P Q) = Q(1 is a stable model of the plant and Q — PQF’, QE RH, is a free design parameter. The feature of the IMC structure is that when P is exact, there is no measuiiient noise (m and w = (2.6) = 0), no plant disturbances (d = 0 0), the feedback signal fi is equal to f2 and the system is effectively open-loop. Under these conditions the equivalent system from r to y is shown in Figure 2.5 where it is obvious that any stable transfer function Hg,. can be obtained for some choice of As well, substituting (2.6) into (2.5) with P = Q. F, we can express the closed-loop transfer matrix as Chapter 2. Control design step of the tuning method 15 T I + L I Figure 2.6: The design parameter Q in the IMC controller is parameterized linearly in the controller parameters xk. This corresponds to the Nth Ritz approximation of Q. the affine function of Q “(1 - PQ) —PQ FQ -Q Q PQ-1 1-PQ H(P,K(P,Q) F(1-PQ) It can be shown, that a stable Q . (2.7) is a necessary and sufficient condition for the system to be (internally) stable [MZ89]. 2.2.2 Implementation of the design parameter Since the design parameter Q Q for optimization-based controller design belongs to an infinit’-dnnensional space of functions, and it is evident that we can not numerically optimize over all RHc,o functions. We must approximate RH by some finite-dimensional linear subspace spanned by functiops. Q’ of the form QN(x, s) := (2.8) XkBk(S), for some Bk E RH and controller parameters xk C B., k = 1,. . ., N. The parameterization of shown in Figure 2.6 and is known as the Nth Ritz approximation [BB91]. Q is Chapter 2. Control design step of the tuning method 16 Examples of basis functions are = B(s) B(s) ()k>oklN (2.9) (2.10) = ,_(s+IpI)((s_p)(s_p*))k_l — 32k_i(S) B — V P -(s Bk(s) ((s+p)(s+p*))k IpI)((sp)(sp*)) - , ?p> 0,k = 1,. . ., N/2. (2.11) The functions (2.9) are used in [PS89] and (2.10) are the Laplace transforms of the Laguerre functions. A more general form of (2.11) are used by Kautz in [Kau54] and allow It is important to note that the sets dense in (RH, II.II). {QN(x, s)Ix e RN, N QN to contain complex poles. N} with basis functions (2.9) are This implies that any element of RH can be approximated arbitrarily well, at all frequencies, by sums of the form (2.8) with N large enough. Intuitively this result result can be understood by considering the bilinear transformation f(z) = p (•4-) (2.12) which maps the closed left half-plane into tii. clos ‘iit disk. The composition of (2.12) with QN, QN(xr(z)) = yields a polynomial in z of order N. Weierstrass’ Approximation Theorem says that a continuous function on a compact set (the unit circle) can be approximated uniformly by a polynomial function [Str84]. Since (2.12) preserves the H norm N large enough. When Q QN can approximate any element of RH by choosing is known to be strictly proper then (2.10) and (2.11) are more appropriate choices of basis functions than (2.9). It can be shown that the sets {QN(z, , 2 basis functions (2.10) are dense in (RH 11.112) s)Ix e RN, N e N} with using the reasoning given above. Also, [Wah9l] contains an explanation of this result for the dis. rete-time equivalent of (2.11). It is important to note that the parameterization (2.8) typically requires a large number of controller parameters. shape. This is because QN has a fixed pole at s = —p and only its zeros can determine its Little work is known to have been performed on methods for the choice of basis functions and it is a possible area of future work. When faced with a high order QN the designer has two options: direct implementation or perform model order reduction. Due to advanced filter technology, it is possible to directly implement high ordered QN. For example, controllers are implemented using Chapter 2. Control design step of the tuning method 17 many-tap finite impulse response (FIR) filters in {BBB88] (where N = 30) and {0B90] (where N = 90). Alternatively, model order reduction can be performed on QN. If the basis functions (2.9) or (2.10) are used, QN composed with a bilinear transformation results in an FIR model for which simple model order reduction methods exist [HJN9O, GKL89]. Hence, due to its simple structure it is possible to implement high order QN; the reader should therefore not be alarmed by the number of controller parameters used in the designs presented later in this thesis. 2.3 Controller design problem Having specified the controller parameterization, performance functionals and specifications are intro duced to describe the controller design problem. A detailed description of the performance functionals is left until Chapter 3. As well, an interactive optimization-based procedure for the controller design problem’s solution is presented. 2.3.1 Performance functionals Performance functionals, convex in the controller parameter x, quantify some aspect of closed-loop ;d- performance with lower values corresponding jr ‘ / RMS(X) = or tighter designs. The performance functional bc —J 1 (T-+c,oT lim \1/2 u(x,t)2dt) j , (2.13) where u is the controller output signal due to a step reference input (with m = d = w = 0), measures the root-mean-squared of u and is constrained to prevent potential damage to the actuator caused by excessive heating. It is important to note that the performance functionals considered are convex because of the controller parameterization chosen. This is because the closed-loop transfer matrix (2.5) is a convex function of Q which is itself parameterized linearly in the controller parameters. Therefore (2.5) is a convex function of x and consequently functionals measuring some closed-loop quantity such as the RMS value of u in (2.13) are also convex in a,. 2.3.2 Performance specifications One method, due to [ZA73], of formulating a controller design problem is as a set of functional inequalities that must be satisfied. The designer adjusts the constraints until desirable performance is achieved. A Chapter 2. Control design step of the tuning method 18 more flexible approach is to divide the performance specifications into two classes where b and bkQc) ak,ke {1,...,n}, (2.14) I4(x) bk,kE{l,...,m},ak,bkER, (2.15) are performance functionals [NT86]. The inequalities (2.14) are soft constraints or speci fications about which the designer is flexible; the inequalities (2.15) are hard constraints or specifications that must be met. An obvious example of a hard constraint is stability of the system, whereas an exam ple of a soft constraint involves the gain margin. Small violations of the specification that the positive gain margin be greater than 5dB typically do not affect the quality of the design and can be tolerated. As opposed to the formulation in [ZA73], the approach of dividing the performance functionals into two categories addresses the designer’s flexibility with many specifications. Hence, the controller design problem is to find the set of parameters x which satisfy the inequalities (2.14) and (2.15). (Assuming the engineering specification can be formulated as these inequalities.) For every design there are two possibilities: either the inequalities (2.15) cannot be satisfied and no acceptable design exists, or (2.15) are satisfied and (2.14) are not satisfied and the designer must decide t on a best solution. The design procedure discusstH .Section 2.3.4 allows the designer to solve this controller design problem. As mentioned in Section 1.2.1, in many cases it is difficult to formulate performance specifications as functional inequalities (2.14) and (2.15). For instance, specifications are often given vaguely in words such as “the step response must contain little oscillation”. Additionally, in many cases there is insufficient knowledge about the system to specify exact levels of performance a priori. The interactive design procedure described in Section 2.3.4 gives the designer a way of obtaining a set of inequalities that best describe the optimal solution. 2.3.3 Form of the optimization problem The general form of the optimization problem sol ve&x determine whether the specifications (2.14) and (2.15) are achievable is mm max{’fr)I &‘(x) <O}. The functional ‘ is defined as = max{(x), k.e {1, . . ., (2.16) Chapter 2. Control design step of the tuning method 19 the functional “ is defined as = max{(x), k C {1, .. and the normalized objectives and constraints are given by — k #k—Gk Bk—Gk’ , — k — Vk—Gk Bk—Gk By chosing the weights Gk and Bk in (2.17) as “good” and “bad” values respectively for the performance functionals, the designer assigns a relative importance among the objectives c k Although other choices 5 for the normalization exist, the reason for using the one in (2.17) is because it tends to improve the objectives throughout the optimization the way the designer wants them to trade off [NT86j. This can be understood by quantifying the designer’s degree of satisfaction which is large (small) when the designer is satisfied (dissatisfied) with the current values of the objectives. The normalization (2.17) provides two levels of designer satisfaction at which the value of the normalized objectives are equal (0 (1) when the objective reaches its “good” (“bad”) value). Note that because of the way the weights Gk and Bk were chosen, it is likely that the level of designer satisfaction is linear in the normalized objective. That is, if allthe normalized objectives take on the :tiue 1/3, the level of designer satisfaction is typically 33% away ir from its “good” value. A linear relationship between Ui;: normalized objectives and the designer’s degree of satisfaction means that objectives decrease the way the designer wants them to trade off throughout the optimization. On the other hand, for the case when the relationship is nonlinear some interactive adjustment of the weights may be necessary when the design specifications (2.14) are not satisfied. For example, if the current weights leads to an optimal objective value that is too large then its good weight is decreased (or equivalently its bad weight decreased) It should be noted that the designer is comfortable with adjusting the good and bad weights since they have a predictable effect on the resulting design. This contrasts with the nonintuitive weight selection which can be required for the analytic dsign methods discussed in Section 1.2.1. 2.3.4 Tuning procedure This section presents the procedure for solving the controller design problem specified in Section 2.3 by solving a sequence of constrained minimax problems of the form (2.16). Procedure Chapter 2. Control design step of the tuning method 20 1. Select N, the number of controller parameters, and the basis functions used in the function 2. If the design has hard constraints, solve = where Gk = bk, Bk = 2bk, k = 1, . . ., argmin{’(x), x C The procedure stops if the hard constraints are not in. achievable. That is b’(x t) > 0. If a’vconstraints are satisfied and there are no soft constraints 0 then the procedure stops. Otherwise let a = , solve 0 3. Starting at x = where initially Gk = 0 k, Bk argmin{’(x)b’(x) = 2 ak, Ic = 1,. . . , n. 0, r e ) 0 If ‘(x RN}, (2.18) 0 then all soft constraints are met and the procedure stops. Otherwise select the objective with the most undesirable value. (Typically it is the functional with the largest normalized value which competes with at least one objective.) 4. Reassess what “good” and “bad” values of the selectee objective are and adjust its good and bad 0 weights. Repeat Step 3 with x = 00 until x the b-t tradeoff between objectives is achieved. Note that if the performance of the system is undesirable it is possible that N in Step 1 was chosen too small, and the procedure is repeated with larger N. Also, in Step 3 it is not always necessary to find a truly optimal solution. If the designer observes a feasible point with a negative cost function or satisfactory performance then optimization can be terminated. As well, if in Step 3 performance has not improved significantly after a few iterations the designer can stop the optimization run and select the worst objective. In this case 2.4 = T nop in Step 4, where is current value of the design vector. Performing a design on P As discussed in Section 1.2.2, one drawback of the traditional approach to controller design is that plant modeling errors lead to conservative performance. To motivate the tuning method which computes performance functionals from plant measurements, this section shows how the controller parameterization in Section 2.2.1 and a optimization-based design with an exact plant model P gives higher or equal performance to a design with an incorrect plant model. Chapter 2. Control design step of the tuning method 21 The performance functional was introduced in Section 2.3.1 as a function of the set of controller parameters x. In this section it is a function of the plant model P used to perform the design, F, and Q. Hence the notation (P, F, Q) is the evaluation of the performance of the system involving F, f (contained in the controller), and Q. Let inf çi(P,P,Q), QERH infA(F,P,Q), QERfL : 1 P = and define {(ppQN(x))IIIQNII mm Pk — O}, bN xE where {bN} E R+ and bN oo (the sequence diverges). It is a fact that sequences of optimization problems Pj with increasing number of controller parameters N can approximate arbitrarily well the 1 [PS89]. Equivalently, if x is a solution that achieves the minimum in infinite-dimensional problem P problem P, then {QN(x)} is a sequence of minimizers for F , i.e. 1 urn (P, p ON(XN N— )) = 71. The following theorem shows that the performance of any system containing P can be achieved with knowledge of an exact plant model P P. = Theorem 1 For any P,P E RH and stable } there exists an R Q E A, where A for e {Q E RHIH(P,K(P,Q)) is internally RH such that (P, Proof: Let P,P = RH, and let R , Q) = = (P, F, R). 1? is stable since Q E A. Substituting R into (2.7) Q we get -PQ PQ -QP -Q Q -P(1-PQ) FQ-1 1—PQ Ph H(P,K(P,R))=(1—Q(P-P))’ hence (P,P,Q) = cb(P,F,R). . PQ) , (2.19) 22 Chapter 2. Control design step of the tuning method Letting Q i 0 = arginf{q5(F,F,Q)Q C RH } and 0 Qopt2 = arginf{(F,P,Q)IQ C RH} (assum ing these infima are attained), we have shown that qS(F, F, Qopt2) = b(F, F, It) 6(F, F, Q i) 0 = 7i Equivalently, when designing for F, using an exact plant model always gives better or equal performance to a design performed on an incorrect model. To illustrate this idea, consider a simple design problem (with analytic solution) performed on the exact plant model : 1 F (F,F,Q), inf where IIWi1terIIoo, qS(F,F,Q) 1—s F(s) Defining Q i 0 = = (1+s)2’ P(s) = F(s), Wi(s) = (1+s)t argirif{qS(F,F,Q)IQ C RH } then qS(F, P,Qopn) = 1/2. Now consider the design problem on the incorrect model : 2 F inf sF,F,Q), . 0 QE RH where ( — 1.5—s (1.5+s)(1+s) and defining Qopt2 = arginf{q5(F,F,Q)Q C RH,}. The closed loop performance of K(F,Q ) is 02 inferior to that of K(F, Q i) which agrees with the conclusion obtained above. That is, 0 (F, P, Qopt2) = l4i 1 — FQOP:2 = 2/3> 1/2. (F-F) 02 1-Q To summarize, since performance functionals of the’ ‘ontrol design step are computed ftom measure ments of F and assuming the values of the estimated I unctionals are exact, the tuning method has a clear advantage in performance over the design performed off-line on an incorrect model. Chapter 2. Control design step of the tuning method 2.5 23 Optimization algorithms Two optimization algorithms were investigated to solve the optimization problem (2.16): the ellipsoid algorithm, and a modified sequential quadratic programming (SQP) method. This section discusses the advantages and disadvantages of both algorithms. Ellipsoid algorithm Recently the ellipsoid algorithm, which is thoroughly discussed in [GLS88 and the references therein, is receiving much attention in control system lzarature (see for example [BB91, Z093, BCFB93]). Roughly speaking, the ellipsoid algorithm generates a sequence of ellipsoids decreasing in volume; the minimizer is contained in the intersection of this sequence. At each iteration the algorithm requires the value of the objective and its subgradient. (See Appendix A for the definition of a subgradient.) The ellipsoid algorithm has the following merits: • It is simple to implement; the number of lines of code required are a fraction of that required for other algorithms [EK85]. • The functionals minimized need only be convex so that the algorithm is guaranteed to converge. • When the functionals are nonconvex exam eles have shown that in many cases the algorithm finds the global solution [EKS5]. However, the algorithm has disadvantages: • It requires a large number of functional and subgradient evaluations to obtain a small error in the solution [EK85]. • It is not a descent method; although at each iteration the distance to the solution decreases, functional values may increase. This is because the negative of the subgradient of a function is a descent direction for the distance to the minimizer and not a descent direction for the function itself. In addition, particularly on the first few iterations when the initial ellipsoid is large, the value of objective can vary wildly. Sequential quadratic programming method The modified sequential quadratic programming (SQP) method implemented in [GraOO] has the following benefit: Chapter 2. Control design step of the tuning method 24 • It requires less functional and gradient evaluations than other algorithms to obtain small errors in the solution [EK85]. The algorithm has the disadvantage: • The cost and constraint functional must be of the form max{cbk(x),1c where k 5 c C {1,...,n}}, must have continuous first and second derivatives for convergence to be guaranteed [Gra9O]. This implies that the convergence of a problem minimizing the L 1 norm (which is nondifferentiable) of a response of the system canuo be guaranteed using the SQP method. An example The behaviour of the two algorithms is illustrated with the following simple convex problem mm max{fri — 1)2, (z 2 — g(x) < 0}, 2 1) xeR2 gfr) 0 The solution to (2.20) is x = = 2+ x ni — 1. (2.20) [0.5, 0.5]. The ellipsoid method, with an initial sphere of radius 106 centered at [0,0], (using deep-cuts in both the constraint and objective iterations) finds the solution in 23 iterations. Figure 2.7 shows several iterations .$gorithm with the values of the cost function labeled. Note that for the second iteration the value ol the objective functional is large (1.09 x io). On the other hand, the SQP method converges in only 5 iterations with a maximum objective value over all iterations of 8. The absolute error in the cost and constraints functionals is 10—6 and the absolute error in the solution is 10i. Simulations have shown that for more useful control system design examples the SQP method still converges in less iterations than the ellipsoid algorithm. For this reason it is used in the simulation exam ples presented. However, either algorithm can be usEd and when discussing the performance functionals in Chapter 3 the ellipsoid method allows a wider range of functionals to be considered. 2.6 Internal model controller structure: Unstable plant As mentioned in Section 2.2.1, when the plant model is exact (P = F), then a necessary and sufficient condition for an IMC controller to provide internal stability is for F and Q to be stable. Hence the IMC Chapter 2. Control design step of the tuning method 25 C%I x -500 0 500 1000 x(1) Figure 2.7: Three iterations of the ellipsoid algorithm for the example problem (2.20). Note the large value of the cost function at the second iteration. structure shown in Figure 2.4 can not be used for unstable P. However, the IMC controller can still be used in a two-step design procedure if a nominal stabilizing stable controller exists (i.e. the plant is strongly stabilizable). (A condition for checki. bether a plant is strongly stabilizable is given in [DFT9O].) The first step of the design procedure is to obtain a nominal stable controller K 0 that stabilizes P. The second step is to modify the dynamics of the stabilized system using the IMC controller structure as shown in the Figure 2.8. The expression for the controller is K(P, Q) = 0 + Q(1 K - , 1 H(P)Q) Q e RII, where H(P) = . 1 P(i + KP) (2.21) Although not obvious, because the nominal controller is stable the two-step design procedure is over all stabilizing controllers when P= P (see [Mac89] or Appendix B for an explanation). Finally, it is important to note that when P = P the closed-loop transfer matrix in terms of P, K 0 Chapter 2. Control design step of the tuning method 26 + Figure 2.8: The IMC controller K(P, and Q Q) = 0 + Q(1 K — 1 for a strongly stabilizable plant. H(P)Q) is H(P,K(P,Q)) 2 ) 0 (1+PK = P((1 + PK ) 0 - PQ) (1 + P1< 0 -PK ) 0 —P((1 + PK ) 0 an affine function of Q - - PQ PQ) as for the stab1 plant. ) 0 (1 + PK 0 -PK - P1< + ) -(Ko(1 + 0 “t1 0 + PK — PQ Q) PQ) (1 + PK 0 PK ) + PQ 0 P1< + ) Ko(1 + 0 0 1+ PK - Q PQ Chapter 3 Computing the performance functionals in the control design step This chapter describes the performance functionals and their subgradients’ in detail. It gives the steps for computing the functionals and their subgradients for all entries of the closed-loop transfer matrix (2.5) from measurements of the open-loop system shown in Figure 3.9. As well, the amount of compu tation required to evaluate the functionals using a model is compared with that using measurements. Throughout the chapter it is assumed that the responses measured are exact, and to reduce the notation Q will be used instead of QN. U, HQix) H U3 Figure 3.9: Open-loop system used to evaluate performance functionals and their subgradients using measurements. 3.1 The step response functional Consider the step response functional = max max{s(x,t) a(t),,BQ) — s(x,t),0}, (3,22) where s is the unit step response of the transfer function H which is an entry of (2.5) {BB91]. The functions a and 3 are piecewise continuous upper and lower bound functions chosen by the designer. Figure 3.10 gives an example of a step response and typical bounding functions a and t(x) fi such that <0. ‘In this chapter it is assumed that the ellipsoid algorithm is used. For a definition of a subgradient see Appendix A. 27 Chapter 3. Computing the performance function als in the control design step I I I I I I 28 I P I 7 8 9 ct(t) /zY/ ‘/ 0 O.8 E it 0.2 p3(t) 0%/% 1 0 2 4 3 Figure 3.10: Typical bounding functions a and s satisfying (x) 0. The functional 8 5 Time (sees) fi for the step response functional st, 4 10 and a step response is used to meet specifications involving overshoot, rise-time, “steady-state” error, and settling-time of the step responses of the entries of (2.5). As well, it can be easily generalized to inputs other than steps, and in Chapter 5 it is used to bound the amplitude of the system’s impulse response. A subgradient of the maximum occurs, if can be determined using the rules in Appendix A. Letting to be a time at which st(x) = s(to, x) (st(x) — a(to) > 0 or the upper bound is violated then = V(s(x, to) = vr(L’ — a(to)) (:‘) (to)) 1 (fjjfJ) (to) L = 1 L (3.23) , . (“) (to) where Hk is the partial derivative of H with respect to xk. If sj(x) = ) 0 9(t — sfr,to) > 0, or the lower Chapter 3. Computing the performance function als in the control design step 29 bound is violated then = V(i3(to) = [ —L — s(x,to)) (4ü) (to) (3.24) . (!J 1 ±I) (to) —L’ 2 Finally, if &tfr) = 0 then = 0. (3.25) It is important to note the possibility there be several maximizers of (3.22). That is, there may be several times at which the maximum of the functional is attained. In this case any of the times can be used to compute a subgradient as described above. Using measurements to evaluate the step response functional 3.1.1 The following steps are used to evaluate (3.22) from measurements of the open-loop system. Step 1 is performed before optimization begins, and Steps 2—5 are performed at each iteration of the optimization algorithm. 1. A step input is applied at at u 3 for 0 <t ‘i (see Figure 3.9) with Q = <tmar. 2. A step input is applied at u 1 and the step responses of 0 Q and PQ are measured at 2 it and 3 it for tmaa,. 3. The response measured at is measured at 3 it for 0 <t 4. The step responses of P(l for 0 1 and the step response of P is measured t trfl 3 it in Step 2 is applied at 1 it with Q = 1, and the step response of P Q 2 tmar. TQ), —P(1 — PQ), —FQ, —Q, PQ — 1, and 1 — PQ are determined by adding £he step respon htained in Steps 1—3. 5. The functional is computed using (3.22) where s is one of the step responses (depending on which closed-loop transfer function is being considered) obtained in Steps 2 and 4. A time, to, at which the maximum occurs is determined. Chapter 3. Computing the performance function als in the control design step 30 Using measurements to evaluate a subgradient of the step response functional 3.1.2 Assuming a non-zero subgradient exists, the following steps are used to evaluate a subgradient of (3.22). Steps 1—3 are performed before optimization begins, and Step 4 is performed at each iteration of the optimization algorithm. 1. Let k = 1. The kth controller parameter is set to 1 and the remaining controller parameters are set to zero, a step input is applied 4: (see Figure 3.9), and the step responses of Bk and PBk 3 respectively for U are measured at u2 and u 2. The response measured at is measured at 3. lv = 3 it for 0 3 it t < I < trn. in Step 1 is applied to 1 it with Q = 1, and the step response of P Bk 2 t,flax. lv + 1. Repeat Steps 1 and 2 until lv = N + 1. 4. If the upper bound is violated, (3.23) is computed by selecting one of the vectors of step responses (depending on which closed-loop transfer function is being considered) computed in Steps 1 and 2 at to. If the lower bound is violated, (3.24) is computed by selecting the negative of one of the vectors of step responses (depending on which closed-loop transfer function is being considered) computed in Steps 1 and 2 at to. 3.1.3 Computational cost Using a model the cost, measured in floating point operations (flops), associated with computing (3.22) for ft = ,. and N 5 H = 20 before optimization begins versus the number of states in a plant model is shown in Figure 3.11. In comparison, using measurements requires no computation. At each iteration of the optimization algorithm, the relative cost of computation versus the number of controller parameters is shown in Figure 3.12. Since the relative cost is greater than 1 for all values of parameters, the cost of computing (3.22; is reducd i.; using measurements. The reason for this computational advantage is that when using nrasi; :qinents the only computation required is to subtract the measured step response from the bounding functions a and jY. It will be shown that particularly for performance functionals involving time domain response, using measurements substantially reduces the amount of computation required. The details of how Figures 3.11 and 3.12 were generated are in Appendix C. Chapter 3. Computing the performance functionals in the control design step 31 0 C 0 a)a. 0 C 0 a 0) C 0 LI Figure 3.11: The cost in flops of computing the step responses of PBk, ic = 1,.. , 20 versus the number of states in the plant model. These responses are required to compute the functional before optimization begins when using a plant model. . 3.1.4 A step response functional example This example illustrates how rise-time, overshoot, and “steady-state” tracking error specifications on the output step response can be satisfied using F(s) = 4. The plant is (52+065+1)(s+1) (3.26) , and the specifications are a rise-time of less than 4 seconds, no overshoot, and a “steady-state” error of .1%. The uncompensated and compensated plant’s step response, and the bounding functions are shown in Figure 3.13 using N = 20 and the basis functions (2.9) with p = 1 in Q. Clearly, the desired performance is achieved. 3.2 Norms of particular response functionals Different norms of signals can be combined with different inputs giving rise to a wide range of useful performance functionals. The following is a list of functionals and their subgradients that are norms of responses to a particular input, and can be used in the tuning method. The method used to evaluate Chapter 3. Computing the performance function als in the control design step 32 U) S CU a) 2 4 6 14 10 12 8 Number of controller parameters 16 18 20 Figure 3.12: The relative cost of computing the step response functional at each iteration of the optimiza tion algorithm using a model relative to using measurements versus the number of controller parameters N. The relative cost is greater than one for all N. the functional and its subgradient from measurements of the open-loop system in Figure 3.9 is similar to that used for the step response functional and is only outlined briefly. Throughout this section a particular input is assumed applied to the system and the resulting system output is denoted by y. As well, it is assumed that y is such that the functional exists. The “L norm” functional The “L norm” functional is used to measure peak values of a signal and is defined as #iGr)= sup tcR+ Iy(x,t)I. (3.27) Although (3.27) is not differentiable, a subgradiellt can be specified using the rules in Appendix A as (x) = 1 (p x), ))Vy(t 0 sgn(y(x,t , where t 0 is a time at which the maximum in (3.27) is attained. (3.28) Chapter 3. Computing the performance function als in the control design step 33 a) -D a E Time (secs) Figure 3.13: Output step response of compensated plant (solid), uncompensated plant (dash-dot) and bounding functions (dash) for Example 3.1.4. The step response meets the design specifications on the rise-time, overshoot and “steady-state” error. Chapter 3. Computing the performance function als in the control design step 34 The “L 2 norm” functional The L 2 norm of a signal can be interpreted as the square root of the total energy of the signal. The “L 2 norm” functional is defined as Y(, t)2dt) p2(X) (3.29) = which is differentiable, and its subgradient is equal to its gradient = fY(x,t)vY(x,t)dt. p2(X) p2(X) (3.30) j The “Li norm” functional The “L 1 norm” functional is defined as p3(X) = j y(,t)Idt. (3.31) Although (3.31) is not differentiable, a subgradient can be determined as (x) 3 = jsgn(y(x,t))Vxy(x,t)dt (3.32) [BB91]. Note that for persisting output signals the values of (3.29) and (3.31) are infinite, and we define the average-absolute value and the RMS value functionals for signals that do not decay to zero. Average-absolute value functional The average-absolute value functional is y(x, t)Idt. (3.33) sgn(y(x, t))Vy(x, t)dt (3.34) j urn 4(X) = A subgradient of (3.33) is 1 = j [BB91]. RMS value functional The RMS value of a signal is / RMS(X) = lim Too f 1 o T \i/2 Y(Xt)2dt) , (3.35) Chapter 3. Computing the performance function als in the control design step 35 the eventual average size of the signal and can be interpreted as a measure of average power of a signal. The functional (3.35) is differentiable and its subgradient is equal to its gradient (RMsfr) 3.2.1 = 1 lim IRMS(X) T—*c’o 1 T fT y(x,t)Vy(x,t)dt. — (3.36) .‘o Using measurements to evaluate the norm of a particular response functional and its subgradient The steps used to evaluate (3.27), (3.29), (3.31), (3.33), or (3.35) from measurements of the open-loop system are almost identical to those for the step response functional (described Section 3.1.1) and are not repeated. The differences being that a particular input is applied instead of a step, and one of (3.27), (3.29), (3.31), (3.33) or (3.35) is used to evaluate the functional. Similarly, the procedure for evaluating a subgradient of the norm of a particular response functional is almost identical to that of a step response functional and is not repeated. The differences being that the particular input is applied instead of a step, and one of (3.28), (3.30), (3.32), (3.34), or (3.36) is used to evaluate the subgradient in Step 4. 3.2.2 Computational cost The functional (3.35) is used to illustrate the computational cost of evaluating the norm of a particular response functional. Before optimization begins, the cost is approximately equal to that required for the evaluation of the step response functional. Hence, Figure 3.11 shows the cost versus the number of states in the model. Also, as with the step response functional, it is important to note no computation is required when using measurements. At each iteration of the optimization algorithm the cost of evaluation using a plant model relative to using measurements versus the number of controller parameters is shown in Figure 3.14. As with the step response functional, the relative cost is greater than one for all values of design parameters because the particular response is obtained without any computation ftom measurements. The details of how Figure 3.14 was generated are in Appendix C. 3.2.3 An example of using the “L norm” functional To illustrate how the norm of a particular response functional is used, consider Example 3.1.4 in which a constraint was imposed on the output step response. Since there was no specification on the size of Chapter 3. Computing the performance function als in the control design step 36 U, 0 V Cu a) Number of controller parameters Figure 3.14: The relative cost of computing the functional (3.35) at each iteration of the optimization algorithm using a plant model relative to using measurements versus the number of controller parameters N. The relative cost is greater than one for all N. the actuator effort a large peak value for u resulted. This example shows how the “L, norm” functional constrains the peak value of the actuator output. The design specifications are < 0, 1(x) = where the bound functions associated with 2(X) = (3.37) 1, ifr) the basis functions for Q, and N are the same as in Example 3.1.4. It is assumed that the designer is flexible with the specifications (i.e. the inequalities (3.37) are soft constraints) and, in an attempt to reduce = 1, and B 2 for 4i and 2 = 2 to 1, the designer selects the weights G 1 respectively. At this point the designer explores how #2 = .002, relatively large increases in can be decreased further while The weights G 2 are set to .5 and 1 respectively 2 and B which result in minimum functional values of 1.99 x 1O and .994 for #2 .001, B 1 2. Optimization yields minimum raw functional values of 9.98 x 1O and .998 accepting more violation of the constraint on to reduce = and #2 respectively. Clearly, 4 are required to achieve relatively small reductions in c2• In a last attempt 1 is increased to .01; the resulting values of i and B this point the procedure stops since further increase in #2 are .00982 and .979 respectively. At is considered unacceptable. The best output Chapter 3. Computing the performance function als in the control design step 37 -oa,z a. E 10 Time (secs) Figure 3.15: The output step response for the example in Section 3.2.3 (solid) and bounding functions (dash-dot). Note the step response’s violation of the lower bound function at “steady-state” (a 1% tracking error). step response is shown in Figure 3.15 and should be compared with that in Figure 3.13. Note the 1% violation of the lower bounding function at “steady-state”. The step response of the actuator output is shown in Figure 3.16 along that in Example 3.1.4. Note the peak value of u is reduced dramatically by a factor of about 15 at t 3.3 = 0. The “peak gain norm” functional Consider the performance functional pkgn 6 ç = j I(x,r)dr, where Ii is the impulse response of an element of (2.5) [BB91J. It can be shown that sup IIwII0 (3.38) pkgn 4 is equal to IIftwIIoo IIwII the peak gain of the transfer function H, which can be interpreted as the worst-case peak value of the 1 system output for all input signals with peak values less than or equal to one. Note that (3.38) is the “L norm” of a closed-loop impulse response and therefore a special case of the functional p2 (see (3.31)). Chapter 3. Computing the performance functionals in the control design step 38 16 14 12 10’• 8’ 6i 2 , :4:34 Time (secs) 5 Figure 3.16: Controller output step response in example in Section 3.2.3 (solid) and for Example 3.1.4 (dash). Note the large decrease in the actuator output peak value due to the constraint on A subgradient of (3.38) is (pkgn(X) = jVIi(sr)Idr f’° sgn(ui(c, r))hi(r)dr (3.39) j° sgn(I(x, T))hN(T)dT where hk is the partial derivative of Ii with respect to x. 3.3.1 Using measurements to evaluate the “peak gain norm” functional The following steps are used to evaluate (3.38) from measurements of the open-loop system. Step 1 is performed before optimization begins, and Steps 2—5 are performed at each iteration of the optimization algorithm. 1. An input of “unit-area” (i.e. at u 1 (see Figure 3.9) with Q f u(t)dt = = 1) with large magnitude and short duration is applied . 3 1, and the impulse response of P is measured at u Chapter 3. Computing the performance function als in the control design step 39 , and the impulse 1 2. An input of “unit-area” with large magnitude and short duration is applied at u responses of Q . 3 2 and u and PQ are measured at u 1 with 3 in Step 2 is applied to u 3. The response measured at u Q = 1, and the impulse response of . 3 Q is measured at u 2 P 4. The impulse responses of P(1 PQ), —P(l — — PQ), —PQ, —Q, PQ — 1, and 1— PQ are computed by adding the impulse responses obtained in Steps 1—3. 5. The functional is computed by performing the integration in (3.38) where h is one of the impulse responses (depending on which closed-loop transfer function is being considered) obtained in Steps 2 and 4. Using measurements to evaluate a subgradient of the “peak gain norm” functional 3.3.2 The following steps are used to evaluate the subgradient (3.39) of the “peak gain norm” functional. Steps 1—4 are performed before optimization begins, and Step 5 is performed at each iteration of the optimization algorithm. 1. Let k = 1. The kth controller parameter is set to 1 and the remaining controller parameters are set to zero. An input of “unit-area” with large magnitude and short duration is applied at (Figure 3.9) and the step responses of Bk and PBk are measured at 1 with 3 in Step 1 is applied at u 2. The response measured at u Q = U2 and t13 Ui respectively. 1, and the impulse response of . 3 Bk is measured at u 2 P 3. The impulse responses of —Bk , Bk are computed directly from the responses in 2 —PBk, and —P Steps 1 and 2. 4. k = Jr + 1. Repeat Steps 1—3 until Jr = N + 1. 5. The integration in (3.39) is performed, where h is the impulse responses used in the computation of the functional (obtained in Section 3.3.1) and Vh is one of the vectors measured in in Steps 1—3 (depending on which closed-loop transfer function is being considered). Chapter 3. Computing the performance functionals in the control design step 3.3.3 40 Computational cost Before optimization begins, the cost of computing the impulse responses is approximately equal to the cost required for the step response functional. Hence, Figure 3.11 shows the cost versus the number of states in the model. The cost of evaluating (3.38) using measurements relative to using a plant model at each iteration of the optimization algorithm versus the number of controller parameters N is shown in Figure 3.17. As with the previous two functionals, computational savings are possible for more than one controller parameter. 0) 0 C., a, > a, 2 4 6 8 10 12 14 Number of controller parameters 16 18 20 Figure 3.17: The relative cost of computing (3.38) at each iteration of the optimization algorithm using a plant model relative to using measurements versus the number of parameters in Q. Note that computational savings are possible for more than one controller parameter. 3.3.4 An example of using the “peak gain norm” functional This example illustrates the usefulness of the “peak gain norm” functional in reducing the oscillation in a response. The problem involves the design specifications (3.37) of Example 3.2.3 and = pkgn(2J) .3, (3.40) Chapter 3. Computing the performance functionals in the control design step a constraint on the peak gain of Hur. The basis functions for Q and N 41 are the same as in Example 3.2.3. 1 = .01, 02 = .5, B After a few design iterations the design weights are chosen as 01 = .001, B 2 = 1, 3 = 1. The resulting optimal output step response is shown in Figure 3.18 which shows 03 = .3, and B increased oscillation due to the new constraint on . The controller output is shown in Figure 3.19 (solid line) which has considerably less oscillation than the the output for Example 3.2.3 (dash-dot line). At the optimal solution only i 5 c and 4cj are competing; hence ) 2(x t 0 = 1.01 could be reduced further if desired. ci, V a E .< Time (secs) Figure 3.18: The output step response in Example 3.3.4 (solid line). Note the increased oscillation due to the constraint on peak gain of Hur. The bounding functions associated with 4 ’ are the dash-dot lines. 3.4 The “H 2 norm” functional Consider the “H 2 norm” performance functional = (1 w 1+2 (FEw = (fw)F2dw), 2 (Efr,jw)Wi(jw)+ W (3.41) where W 2 are stable weighting transfer functions selected by the designer [BB9 1). The functional 1 and W 1 + W . A physical interpretation of 2 measures the H 2 norm of the transfer function HW 2 w 1 iUw Chapter 3. Computing the performance function als in the control design step 42 10 Time (secs) Figure 3.19: The controller output step response in Example 3.3.4 (solid) and the controller output in Example 3.2.3 (dash-dot). Note the decrease in oscillation in the response due to the constraint on the peak gain of Hur. is the RMS value of the output of H for an input modeled as stationary stochastic process with power spectral density S(w) = Wi(jw)Wi(jw)*. If we assume = H3(X) (x) 2 ,bH 1 0, then (3.41) is differentiable with respect to x, and its gradient is J J (x)21r 2 2bH = 1 (jw)I Vft(x,jw)Wi(jw)+W d 2 w (W jw))*V(Hfr,jw)Wi(jw) + W (jw)))dw 2 (((xjw)Wi(jw) + 2 —oo = 1 (X) 1H 1 2 r (jw))*Hi(jw)Wi(jw))dw 2 f°°, R((fI(x,jw)Wi(jw) + W : (3.42) (jw))*H(jw)W 2 W ( jw))dL,J (jw) + 1 1 f° R((ft(x,jw)W where 3.4.1 “i” denotes the complex conjugate and Hk is the partial derivative of H with respect to xk. Using measurements to evaluate the “112 norm” functional The following steps are used to evaluate (3.41) from measurements of the open-loop system. Steps 1 and 2 are performed before optimization begins, and Steps 3 and 4 are performed at each iteration of Chapter 3. Computing the performance function ads in the control design step 43 the optimization algorithm. 1 (see Figure 3.9) with 1. An input with enough frequency content is applied to input u Q = 1; the response at u 3 is measured, and the frequency response of P is computed using the “tn-spectrum” average technique discussed in Appendix C. 2. Using the expression for Q and the weighting function W , the frequency responses of Wi F, 1 P, and W1P 1 Bk, 117 1 Bk, k 2 W1PBk, W = 1, . . . , N are obtained. 1 P( 1 3. The frequency responses of the weighted closed-loop transfer functions W F(1 1 -W - PQ) + W , W(1 2 1 Q + 142, and W — - PQ) + 1472, W (PQ 1 - — PQ) + W , 2 1) + P17 , 1 2 W P Q + W , -WPQ + P17 2 , 2 1 Q + 1472 are formed by multiplying and adding the frequency responses W obtained in Step 2, the controller parameter x, and the weighting function 1472. For example, (jw) 2 Wi(jw)P(jw)Q(x,jw) + W = 4. The integration in (3.41) is performed where (jw). 2 Wi(jw) (xkP(iw)Bk(iw)) + W ftfr, jw)Wi (jw) (jw) is one of the frequency 2 + W responses computed in Step 3 (depending on which closed-loop transfer function is being consid ered). 3.4.2 2 norm” functional Using measurements to evaluate the subgradient of the “H The following steps are performed at each iteration of the optimization algorithm to evaluate (3.42) from measurements of the open-loop system. 1. At each iteration of the optimization algorithm one of the frequency responses of the weighted closed-loop transfer functions (depending on which closed-loop transfer function is being consid ered) computed in Section 3.4.1, Step 3 is multiplied by its derivative, one of the vectors of frequency responses computed in Section 3.4.1, Step 2. 2. The subgradient is computed by performing the integration in (3.42) using one of the vectors of frequency responses computed in Step 1. 3.4.3 Computational cost Figure 3.20 shows the cost required before optimization begins using a plant model relative to using measurements versus the number of states in the plant model. Computational savings are possible when Chapter 3. Computing the performance functionals in the control design step 44 the number of frequency points used is large and the number of states in the plant model is large. For example, savings are possible when the model has more than 12 states and the response is computed at 370 frequency points. At each iteration of the optimization algorithm, the relative cost versus the number of controller parameters N is shown in Figure 3.21. Because of the simple method available for computing the func tional with a plant model there is no computational advantage to using measurements. It is important to note that note that (3.41) could be computed by integrating the impulse response of the system squared. Although this method would require less computation, in practice measuring the impulse response re sponse of a system is more difficult than obtaining its frequency response. Hence, at the cost of more computation (3.41) is computed in the frequency domain. The details of how Figures 3.20 and 3.21 were generated are in Appendix C. I I I I I I I I I / / / 1.0 / / 1.6 1.4 7 al 2 0 — 0.8 0.6 £ 6 10 12 14 8 Number of states in plant model 16 18 20 ,20 at 370 (dash) and 92 Figure 3.20: The cost of computing the frequency response of PBk, k = 1, (solid) points using a plant model relative to using measurements before optimization begins. Note that computational savings by using measurements are possible for 370 frequency points and when there are more than about 12 states in the model. . . . Chapter 3. Computing the performance function als in the control design step 45 0.2 0.15 Co 0 C) a) > . a) 01 0.05 V V V 2 4 6 10 8 12 14 16 18 20 Number of controller parameters Figure 3.21: The relative cost of computing (3.41) at each iteration of the optimization algorithm using a plant model relative to using measurements versus the number of parameters in Q. There is no computational advantage to using measurements. 2 norm” functional An example of using an “H 3.4.4 Consider the plant F(s) = --.06s+9)(s+1) 2 (s (3.43) , and the problem of minimizing the RMS value of the output due to a white-noise input applied at the plant input disturbance d. With N value of IIHydII2 = = 60 and the basis functions for Q as in Example 3.3.4 a minimum 1.29 is obtained. Figure 3.22 shows a sample of the “steady-state” output response due to a white noise excitation applied at d. The RMS value of the response is labeled with a dashed line. For comparison the theoretical minimum is 1.27 [DFT9Oj. 3.5 The “Hc,, norm” functional Consider the “H norm” performance functional Hinf(x) = 5 c sup wcR (jw) 2 (jw)if(x,jw) + W 1 IW (3.44) Chapter 3. Computing the performance fun ctionals in the control design step 46 a) V a. 2 Time (secs) Figure 3.22: A sample of the “steady-state” output response to a white-noise excitation applied to the plant input disturbance d (solid curve) for the optimal solution in Example 3.4.4. The RMS value of the signal is 1.29 and is labeled with a dotted line. [BB91]. By the Maximum Modulus Theorem, Hinf 5 q is the H,, norm of HW 1+W 2 ([Fra87]) and allows us to place hard bounds on the magnitudes of the frequency responses of the system. The H,,, norm can be interpreted as the worst-case RMS value of the output for all input signals with RMS values less than or equal to one. Although Hinf 5 q is not differentiable because of the supremum operation, it is convex and an expres sion for a subgradient can be determined using the rules in Appendix A. A subgradient of qSH1.r is (Hinf(X) = = = VrWi(jwo)H(x,jwo) + W (jwo)I 2 (jwo))(Wi(jwo)H(x,jwo) + 2 Vr((Wi(jwo)&fr,jwo) + W 1 (jwo))*) 2 (jwo))(Wi(jwo)Hfr,jwo) + W 2 V((Wi(jwo)H(x,jwo) + W 2çbjjf (a’) (jwo))*Wi(jwo)iti(jwo)) 2 IR((Wi(jwo)k(x, iwo) + W = 1 , #Hinf (a’) (jwo))*Wl(jwo)ftN(jwo)) 2 Jt((Wi(jwo)ftQr, iwo) + W (3.45) Chapter 3. Computing the performance functionals in the control design step where w 0 is any frequency such that c Hjnf(x) 5 ( 1 i’V ) ) 0 ft(jw j+ W (jwo)I. To obtain (3.45) it was 2 0. Also, ilk is the partial derivative of H with respect to assumed that IWi(iwo)ftCiwo) + W2(jwo)I 3.5.1 = 47 Using measurements to evaluate the “lI functional The following steps are used to evaluate (3.44) from measurements of the open-loop system. Steps 1 and 2 are performed before optimization begins, and Steps 3 and 4 are performed at each iteration of the optimization algorithm. Note that the method is similar to the one in Section 3.4.1. 1 (see Figure 3.9) with 1. An input with enough frequency content is applied to input u response at 123 Q and the weighting function Bi, ic = 1, 2 P 1 PBa, WiBi, and W 1 W 1; the . . ., P, 1 Wi, the frequency responses of W N are obtained. 3. The frequency responses of the weighted closed-loop transfer functions Wi P( 1 - = is measured, and the frequency response of P is computed. 2. Using the expression for P(1 1 -W Q PQ) + W , Wi(1 2 Wi Q + W 2 and — - (PQ 1 PQ) + W , W 2 - — PQ) + W , 2 1) + W PQ + W 1 PQ + W 1 , W 2 , -W 2 , 2 2 are formed using multiplication and addition from the frequency Wi Q + W . 2 responses obtained in Step 2, the controller parameter x and the weighting function W 4. The maximum magnitude of one of the weighted closed-loop frequency responses (depending on which closed-loop transfer function is being considered) obtained in Step 3 is computed and the . 0 lowest frequency at which the maximum occurs is w 3.5.2 Using measurements to evaluate a subgradient of the “H norm” functional The following steps are used to evaluate (3.45) from measurements of the the open-loop system. Note that the method is similar to the one in Section 3.4.2. 1. At each iteration of the optimization algorithm, the conjugate of one of the weighted closed-loop frequency responses (depending on which closed-loop transfer function is being considered) at wo (computed in Section 3.5.1, Step 3) is multiplied by its derivatives, one of the vectors of frequency responses computed in Section 3.5.1, Step 2. ( 2 w ) 0 H 1 )*W jw (jw is 2. The subgradient is computed using (3.45), where (Wi(jwo)H(x,jwo) + ) kth component of the vector of frequency responses computed in Step 1. Chapter 3. Computing the performance functionals in the control design step 48 Computational cost 3.5.3 The relative cost required before optimization begins is shown in Figure 3.23. Computational savings are possible when there is more than one state in the plant model. Figure 3.23: The relative cost of using a plant model as opposed to measurements to compute FEk, k = 1,. , 20 at 370 frequency points versus the number of states in the model. Computational savings are possible for more than one state in the plant model. . . Because the method for evaluating the “II, norm” functional using the model and the measurements are the same, the relative cost of computation during optimization is one. The details of how Figure 3.23 was generated is in Appendix C. 3.5.4 An example of using the “H norm” functional 0 norm of Hd for the plant (3.43). The basis This example considers the problem of minimizing the H functions for Q, and N are the same as in Example 3.4.4. A minimum value of IIHyczIIoo = 1.00 is obtained. The resulting Bode magnitude plot of Hd is shown in Figure 3.24 with the minimum value of the functional labeled with a dashed line. Figure 3.24 illustrates clearly how Hinf 6 can be used to place hard bounds on the magnitude of the frequency responses of the system’s closed-loop transfer functions. Chapter 3. Computing the performance function als in the control design step 49 102 ici io2 10 1 10 0 10 I 10 2 10 3 10 4 Frequency (rad/s) Figure 3.24: The Bode magnitude plot of H d for Example 3.5.4 The maximum magnitude of the 2 frequency response is one and is labeled with a dashed line. Chapter 4 Identification step of the tuning method 4.1 Identification method As discussed previously, the IMC controller structure requires a model of the plant. As well, in order to guarantee desired closed-loop performance a quantitative bound on the uncertainty in the unmodeled dynamics of the plant is required. This chapter presents a parameter optimization-based method for control-oriented identification in H,. As mentioned in Chapter 1, “control-oriented” implies the model and the measure of its “error” are compatible with robust control design methods. “Identification in means uncertainty is measured in the frequency domain by a disk in the complex plane containing P(jw) and centered at P(jw) for all frequencies. This additive perturbation model of uncertainty implies the identification method is compatible with R-optimal controller design methods described in [Zam8l, Fra87]. More importantly, it is compatible with the design procedure described in Section 2.3.4 which accommodates the H, type objective as a special case. As an example of how the tuning procedure guarantees robust stability, assume 00 Q is designed to satisfy W2HyrIIoo <1, where W 2 is a bound on the relative uncertainty in the plant, P(jw)—P(jw) Ow)I,Vw. 2 <IW P w) If the identified model satisfies IF PII — then the system is ensured to be stable. tII, 0 ‘/IIQ < Similarly, it can be shown that a specification for robust performance can be guaranteed if the plant model satisfies a worst-case error bound. Therefore, the identification objective minimized is (P 0 IIQ — 50 Chapter 4. Identification step of the tuning method where Q° 51 is the optimal design parameter obtained in the control design step described in Chap ter 2. Weighting the model error by Q ,t makes the identification dependent on desired closed-loop 0 performance. This can be understood by considering the expression for H ,. in terms of F, 5 ,. = (1 5 H As (P 0 Q — — P and Qo,,t, — F) tends to zero then . 51 tends to FQ H , the desired closed loop transfer function. 0 Identification of the plant can be formulated as a convex optimization problem = argmin{max{cit(jwk)(F(jwk) where jiF — P”(v,jwk)) I v C R’,k C {1, . . is P”(vs)=Evk and where the frequencies wk, Ic = {1,. . . , (Z2),A>O, (4A6) n} and order of the model F are to be determined by the desired worst-case model error using Theorem 2 which is presented in this chapter. The choice of the parameter A affects how many terms are required to obtain a certain accuracy in the solution. Simulations have shown that a wise choice for A is the inverse of the plant’s dominant time constant. 4.2 Deriving the bound for the unweighted model error The derivation of the model error bound is motivated by work done by ilelmicki et al. in the series of papers [11JN92, HJN9O, HJN91a, HJN89, HJN91c]. These papers present identification algorithms which map a set of noisy frequency response data of the plant into a model for which worst-case error bounds are provided. In particular this thesis uses results of the algorithms in [11JN89, llJN9la, 11JN92], which are described next, to obtain an error bound for the optimization-based identification method presented here. The algorithm in [11JN89] involves computing a cubic spline to noisy frequency response data. The coefficients of the Fourier series of the spline are then used as the parameters of an FIR model. An expression for an Hc, model error bound in the presence of unknown bounded noise is derived. Since an FIR model is also used in the identification method presented, results in [11JN89] are useful in quantifying the model error. In [HJN91a] the model parameters are obtained in two steps. The first step is to compute the coefficients of a truncated Fourier series of a linear spline interpolating a set of noisy plant frequency 52 Chapter 4. Identification step of the tuning method response data. This step is identical to that in {HJN89] except that a linear as opposed to a cubic spline is used. The second step is to map the truncated Fourier series into a transfer function model by solving a Nehari problem (see [FraS7] for a discussion of the Nehari problem). The results in [HJN91a] for discrete-time plants are extended to the continuous-time case in [11JN92] by composing the continuoustime plant with a bilinear transformation. The method presented in this chapter follows the work in [HJN92] by deriving the error bound in discrete-time. 4.2.1 Transformation to the z-plane via the bilinear transformation Most of the results for identification in II have been obtained for discrete-time plants hence it is convenient to compose P with a bilinear transformation Pbl(z) = P1Ø(z)), where b(z) = A—,A>o, (4.47) maps the closed unit disk onto the closed right half plane. This transformation is made because it is easier to obtain a bound for the model error by working with Pb! instead of P. As well, it is assumed that a stable discrete-time system has a transfer function which is analytic on the unit disk. That is, the z-transform of an impulse response h is taken as H(z) = to avoid using the cumbersome notation 4.2.2 . “r ” 1 Assumed knowledge about the plant In order for the model error to be bounded in Chapter 1 it was assumed that the plant is exponentially stable. For such plants there exist [RJNO2I: • p> 1 such that Pb! is analytic in D,, = {s C CJJsJ <p}. Equivalently, Pb! has no poles in the disk D. • M > 0 such that IPb!II,,p M, where IPb!IIcp • a continuous function (w) > 0 such that = sup€D IP(iw)I <(w), Yw IPb!(z)I. and lim. (w) = 0. Chapter 4. Identification step of the tuning method It is assumed that p, M, and 4 53 are a priori information about the plant which has the following q, 1 physical interpretation: the parameter p is a measure of relative stability of P is a bound on the high frequency “roll-off” rate of the frequency response of P, and M is the steady-state gain of Ps,, due to an exponentially decaying complex sinusoidal input ri(k) 4.2.3 = p_kei. Approximation error of a linear spline interpolant The samples of the plant’s frequency response are P(jwk),k PD(Ok)= = 0,...,n— 1, 0,k=n,...,1/2, (P(.jwl_k))*, k where wk = = (4.48) , (1/2) + 1,.. .,l — 1. A tan(irk/l). Note that choosing the particular spacing of the frequency response data leads to evenly spaced data on the unit circle after transforming the jw-axis using (4.47). PD and is defined as 1 A linear spline to the data (4.48) is denoted g g’PD(O)=PD(Ok)+(6—6k) k)_PD(Ok+1)] 9 [PD( o <e <9k+1,k=O,...,l. (4.49) PD is given by 1 The error between a function FbI and a linear spline g IJF -g’PDI I ,1 0 ()2(IIFj <min{IIPiII [ Using Cauchy’s integral formula we can express IIP’Il + IIIIc)}. i terms of M and p, and a bound between gPD and FbI can be obtained and is presented as Lemma 1. Lemma 1 Let gP denote the linear spline interpolant to the exact extended frequency response data as in (4.48), then IIFbI — g’FD <max I 4Mir l(p 1) — , sup (Atan(6/2)) . (4.50) J ee[2/l,] Proof: See [HJN92, Lemma 5.1] and [HJIN91a, Fact 5.3]. • Remarks Note that in (4.50) that if 1 is chosen such that I > 2n(1 + n), a > 0, the second entry in the max tends to zero as n tends to cc since 27rn/1 tends to 0 since 1 tends to cc. —* ir and limw_c,o .(w) = 0. Also, the first entry in the max Chapter 4. Identification step of the tuning method 54 Also, for small a (1 >> 2n) the frequency response data points are closely spaced and the term in (4.50) is small. For large a (1 M) 1 2n) we specify a large bandwidth over which the data is collected, and the term SUp9E[2flh1,,] (Atan(9/2)) in (4.50) is small. For a given number of data points n and the optimal value of a is determined by minimizing (4.50) numerically. 4.2.4 Error bound for truncating a Taylor series When the plant model (4.46) is transformed into the z-plane, we obtain the FIR model = pF(v(z)) = EVkzk. P(v,z) The error in truncating the Taylor series of FbI will be required to obtain the bound on the model error and is provided in Lemma 2. Lemma 2 Le TPj be he Nth order Taylor series truncation of FbI then IIT1 — Pb1(Ic M p N (p—i) Proof: See [RJN89, Theorem 3.1]. . 4.2.5 An expression for the model error bound To be of practical use, an identification method should provide a model which has desirable noise rejection properties. Noise arises from many sources including sensor noise corrupting measurements or unavoidable roundoff errors when implementing an algorithm numerically. To account for its effect, the frequency response data is assumed corrupted by a term k which is unknown but bounded in magnitude by M. The data in (4.48) becomes = PD(Ok)+e(Ok),kE 0,...,l, (4.51) 0,k=n,...,l/2, (4.52) where C(Ok)t . 6 is discussed in [HJN92] and Appendix F. An identification method for obtaining the data (4.51) and M Chapter 4. Identification step of the tuning method Theorem 2 Let P’ P 55 be a model of the form (4.46) where the Yk are determined by solving argmin{max{PD(jwk) PF(v,jwk) — I v E R’,k E {1, . . .,n}}}, (4.53) where l,n, ), and F are free parameters, then 00 ll P11 — 6+ M M p F (p — 1) + max{ 4M l(p , sup (Atan(9/2))}. (4.54) 8E[2rn/1,r] — Proof: rnax{I(PD(wk) - PF(wk)I k e {i,. .,i}} IIgFD = - 00 FF11 = IIgP P11 + 00 g’eco + lip M 4M7r 1 +Me+maxj F l(p—i) p (p—i) — sup (Atan(O/2)). 9E[2irn/i,r] Lemmas 1 and 2 were used in (4.55) and the fact that IIg’eiI,x, — (4.55) J <E.• Remarks Note that as n tends to oo and a > 0 is chosen so that 1 > 2n(1 + n), the error (4.54) tends to 6+ M pF(p_l) Furthermore, as the number of model parameters F is increased, the error tends to M. Hence the bound on the error in the frequency response data Me places a lower bound on the uncertainty in the identified model. Also, the weighted model error (P 0 lIQ where — 1t)II00, (4.56) is the solution to (4.53) is bounded by ,, ñF .U opt 00 ,, ‘Jopt 00 00 norm. Hence Theorem 2 can be used to bound the using the sub-multiplicative property of the U error in a model obtained by minimizing the weighted objective (4.56). Chapter 5 Simulation examples This chapter presents two design examples illustrating the tuning method. An analytic method is used to solve the first problem so that the performance of the tuning method can be compared with an exact solution. The second example considers a benchmark problem involving a wider range of performance functionals and an unstable plant. Since the identification of unstable plants is beyond the scope of this thesis, only the control design step of the tuning method is presented. Throughout the chapter the functionals estimated from the open-loop system are assumed exact. As well, for display all figures are rounded to 3 digits. 5.1 Example 1 Stable plant The plant considered in this section is F(s) 9 (1+s)(s2+.8s+9) which is exponentially stable and has a lightly damped complex pole pair at s — .40 ± j2.97. The design specifications are: • an output step response that is well damped and asymptotically tracks a reference step input (with d = 0, w = 0, and in = 0). • a (positive) gain margin greater than 10dB. One of the features of the tuning method is that because the control design step solves a convex optimization problem it obtains “good” solutions to the design problem. This is shown in this example by comparing the method’s performance with a solution obtained using an analytic metbod. Since tbe 2 norm” functionals analytic method chosen can be interpreted as minimizing a cost composed of “H (see (3.41)), it is straightforward to compare its solution to one obtained using the tuning method. 56 Chapter 5. Simulation examples 5.1.1 57 An analytic solution The Loop Ttansfer Recovery (LTR) design method, discussed in Appendix E and [DS81, Mac89], is used to obtain the analytic solution to the design problem. This procedure gives the designer a systematic way of adjusting the design weights of an Linear Quadratic Gaussian (LQG) problem (which is also presented in Appendix E) to shape the system’s frequency responses while guaranteeing a design with good stability margin. Since the LTR method solves a series of LQG problems, the controller has the same structure as that in the LQG problem. The LQG controller structure is shown in Figure E.54, where I<f is the Kalman filter gain matrix, K, is the optimal state feedback matrix, and A, B, and C are state-space matrices of the augmented plant with input Up and output Yp shown in Figure 5.25. In Figure 5.25, the measurement noise m and v are white-noise and uncorrelated in time, and the stable transfer transfer function Wd is the spectral factor of the process noise d. It can be shown that the statespace equations (see (E.103)) of the augmented plant are of form required by the LQG method. The reasons for considering this augmented plant: it gives the designer an understandable way of adjusting 1 by choosing Wd so that K — C(sI — , K 1 A) (5.57) is a desirable open-loop gain for the system, and it gives us another interpretation the problem (discussed in Section 5.1.2) allowing us to compare the analytic solution with that of the tuning method. Designing Kj: the Kalman filter gain matrix As mentioned previously, the choice of the spectral factor Wd allows us to shape (5.57) so that it is a desirable open-loop gain. At frequencies where the spectral factor of the process noise Wd is large relative 1 is increased. Hence, to cancel the plant’s resonance Wd contains to that of the measurement noise, K a “notch” at 3 rad/s, and to meet the tracking specification it is chosen large at low frequency. After experimenting with the values of the poles and zeros, a Wd with the above specifications is obtained and its Bode plot is shown in Figure 5.26. The transfer function of Wd is Wd(s) = 1.23s2 + 1.23s + 10.6 s + 2.00s2 + 10.6s + .0211 (5.58) , is computed by solving (E.100) with W 1 The Kalman filter gain K substituting into (E.99). The Bode magnitude plot of the resulting —C(sI — = I and V = I, and by 1 is the solid line in A)’K Figure 5.27. It is important to note that the gain margin of (5.57) was not considered in the selection of Chapter 5. Simulation examples 58 Figure 5.25: The augmented plant used in the LTR design method. The inputs m and v are white-noise and uncorrelated in time. Wd because it is guaranteed to be infinite. The next step of the LTR procedure is to compute K, the optimal state feedback matrix, so that the frequency response of —C(sI — K is recovered as the 1 A) open-loop gain for a sufficiently wide range of frequencies. Designing K,, : the optimal state feedback matrix The standard approach to computing K,, is to set Q = I and iteratively decrease p in R and obtain K,, by substitution in (E.97) until KP has converged to —C(sI — = p1, solve (E.98) f over a sufficiently A) K 1 wide range of frequencies to satisfy the performance specifications. To illustrate this procedure, the Bode magnitude plot of (5.57) (solid) and the open-loop gain for decreasing values of p is shown in Figure 5.27. In this example, the final value of p is obtained when the closed-loop step response shows no oscillation, asymptotic tracking is achieved, and the positive gain margin is greater than 10dB. Note that p should not be decreased more than is necessary since, as shown in Figure 5.27, it unnecessarily increases the open-loop gain at high frequencies. Although a value of p could be determined the standard way described above, to facilitate the comparison of the solutions of the tuning method with the analytic method we defer its selection till Section 5.1.2. Chapter 5. Simulation examples 59 a) 0 D C 0) ‘U Frequency (rad/s) Figure 5.26: The Bode magnitude plot of Wd, the spectral factor of the process noise d. The low frequency gain is large to meet the tracking specification, and a notch at 3 rad/s removes oscillation from the output step response. Open-loop tuning and another interpretation of the design problem 5.1.2 When solving a multiobjective optimization problem, where the cost function is composed of several objectives, the designer is interested in solutions that lie on the boundary between achievable and unachievable performance. This set of points are known as the Pareto optimal points of the problem. It is well-known that any Pareto point is the solution to a weighted minimax problem {BS8O]. For example, Figure 5.28 shows a Pareto optimal point for the problem involving the objectives = , where u and y are the responses due to noise at m and 2 RMS(u) i’. = 2 and RMS(y) The point is obtained by minimizing RMS(y) + 2 1 A 2 RMS(u) A , with A 1 = 2 3.30 and A = 1. The resulting optimal objective values are (5.59) = 14.7 and 2 = 147. Note /A and is ratio of the change in 4’2 over the change 2 —A that the dashed line in Figure 5.28 has a slope 1 in q on the tradeoff curve about the Pareto point. A controller minimizing the cost (5.59) is also a Chapter 5. Simulation examples 60 1 1 102 101 a) D 10 C C) c 10 0 -1 102 ‘ \ 1 ‘ \‘ ‘ \ \\ ‘ \ ‘ ‘ \ 1 \ \ 1 02 10 1 1 01 100 \ 101 102 Frequency (radis) Figure 5.27: The procedure for synthesizing the optimal state feedback controller K. The Bode magni K as p is decreased. 1 tude plot of the open-loop gain KP converges to that of —C(sI A)— — solution to the problem minimizing RMS(y) 2 3 max{) , 2 RMS(u) 4 .) } , with weights )3 = 10 and )i4 (5.60) = 1. , and B 1 2 for the problem that minimizes Hence, if we select good and bad weights G , G 1 , B 2 f RMS(y) max’ — 2 1 RMS(u) G —B G 1 ‘ — 2 G 5 61 ) —B G 2 . to determine the optimal p for the LTR procedure described in Section 5.1.1, we can use the same weights to perform the control design step of the tuning method which solves mm max{q(x),qS(x)}, (5.62) ERw where çSi(x) = 421(z) + 422(2), 2(X) = IIWdHydII2, 2(X) 2 H = 1)H23(Z) + 4a4(x), = II1tyinII2, 3(X) 2 H = II14’dUudII2, 4(Z) 2 ‘H = 1111um112, 61 Chapter 5. Simulation examples and the performance of both the designs can be sensibly compared. The specific choice of good and bad weights and the optimal values of the objectives are given in Table 5.1, and the expression for the controller is ( K Opt\S) — — 3 + 498s 2 + 1220s + 1084 9.78s + 38.8s 5 4 + 238s 4 + 331s 3 + 793s 2 + 1464s+ 11.2 6 + 11.0s s 5 + 77.2s This choice of weights corresponds to a value of p (5.63) .007 c’J C’) c’J 140 i’ 2 RMS(y) . The dashed area is the region of 2 Figure 5.28: The Tradeoff curve between the objectives i and qf 2 = 14.7 and RMS(u) 2 = 147, is labeled. achievable performance and a Pareto optimal point, RMS(y) = 3.3 , = 1 and (5.60) for the This point is the minimizer of the objective (5.59) for the weights /A = —3.30 and equals the ratio of 1 — weights = 10 , .\4 = 1. The dashed line has a slope equal to 2 on the tradeoff curve. about the Pareto point the changes in the objectives . . Table 5.1: Optimal values of the cost function for the analytic solution and design weights used (the objective is (5.61) ). I [ 2 RMS(y) 1.02 I 2 RMS(u) 251 1 G 1 I I 250 1 B 2 B 2 300 I 3 — 2 G I 1 RMS(u) max{RM) _ 2 —B G 2 —B G 1 ‘ j I .0168 I Chapter 5. Simulation examples 62 Results of the control design step The basis functions considered are (2.10) and (2.11) since Hgm = Q must be strictly proper for its H 2 norm to be finite. The range of controller parameters is [2, 201. Convergence to the exact solution To investigate how well the exact solution can be approximated, the number of controller parameters is increased for several choices of p in the basis functions (2.10) and (2.11). The value of the minimum cost function versus the number of controller parameters N is shown in Figure 5.29 where the dashed line labels the minimum objective value of .0168 for the exact analytic solution. Except for the choice p with the basis functions (2.10) and p = = 100 1 + jlO with the basis functions (2.11), a good approximation to the exact solution is obtained with few controller parameters. Since we know the exact solution to Q, some explanation can be given for the effect of the choice of p on the rate of convergence observed in Figure 5.29. The poles of the exact solution lie in the set S {s E C — .4 < Js < —3, —5 < s < 5}; we expect faster convergence for choices of —p in or close to S. Although in general this behaviour is observed it is evident that “errors” in the imaginary part of p lead to slower convergence than “errors” in its real part. To get some idea of the computational complexity of the design, the number of functional evaluations required for an error less than .01% in the cost function is shown in Figure 5.30 for the same choice of basis functions as in Figure 5.29. For all choices of p and basis functions, the number of functional evaluations increases with the number of controller parameters, and the average number of functional evaluations is about 45 for N = 20. This amount of computation is clearly much higher than that required by the analytic method which requires the solution of a few Lyapunov equations. Hence, the purpose of this example is to illustrate that good approximations to the exact solution can be obtained by tuning and not to convince the reader of its computational advantage over an off-line design. It is important to remember that especially when specifications are simple analytic methods can be computationally efficient design methods. On the other hand, if the design problem involved more demanding specifications then the tuning method is more flexible. Also, the example is unrealistic because the most convenient way to ensure asymptotic tracking with the tuning method is to use the step response functional (3.22). However, choosing this functional prevents us from comparing the performance of the tuning method. Chapter 5. Simulation examples 63 101 0 a) .0 0 0 a) N Cu 2 0 2 Controller parameters, N Figure 5.29: The optimal value of the cost function for problem (5.62) versus the number of controller parameters N. The choice of basis in QN affects the rate of convergence to the exact value of the problem which is labeled with a dashed line. The solid lines are for basis functions (2.10), the dash-dot lines are for basis functions (2.11), and the values of p are labeled. Tradeoff curve between l’i and ‘2 To illustrate how the choice of good and bad weights determines the the relative importance between the objectives, Figure 5.31 shows the tradeoff curve obtained by varying the weights with basis functions (2.9), N = 20, and p = 10. The values of three choices of weights used to obtain particular points on 1 (with B 1 the tradeoff curve are labeled. By increasing G 2 and decreasing G the designer trades off an increase in 4 with a decrease in = 1 and B 2G 2 = ) 2 2G This tradeoff has the identical effect of increasing p in Section 5.1.1. In other words, it decreases the tracking performance of system while increasing robustness to high frequency plant perturbations by decreasing the value of the open-loop gain at all frequencies. 64 Chapter 5. Simulation examples U, C 0 Cu z Cu > a, C 0 0 C LI 12 10 Controller parameters, N Figure 5.30: The number of functional evaluations of the optimization algorithm required to obtain solutions of (5.62) to within .01% of their optimal values versus the number of controller parameters N. The solid lines are for basis functions (2.10), the dash-dot lines are for the basis functions (2.11), and the values of p are labeled. 5.1.3 We Results of the identification step assume given the correct plant information p well, arbitrarily A = = 1.15, M = 0, (w) = (1+(/7))’ 3 in (4.47). Figure 5.32(a) shows the Bode magnitude plots of , and M = .7. As the upper bound on the “roll-off” rate of the plant, and P. Figure 5.32(b) shows a physical interpretation of M and p as a bound on the impulse response of Fbi. The optimal design parameter, denoted by functions (2.10), N = 20, and p = Q, uses the basis 1. Before the plant model is obtained the worst-case error bounds are computed using Theorem 2 to determine an appropriate number of model parameters, and bandwidth of the plant’s frequency response data. First we consider the dependence of worst-case error on the number of model parameters F and the number of data points n. An optimization problem is solved, as discussed in Section 4.2.3, to determine an optimal bandwidth and spacing of the frequency response data for a range of F and a. Chapter 5. Simulation examples 65 CM D U) eq -a- 0 10 20 30 40 RMS(y) 2 50 60 70 80 and By adjusting the good and bad Figure 5.31: The tradeoff curve between the objectives value of the output with an increase in the RMS weights, the designer trades off a reduction in the RMS value of the actuator signal due to noise at in and d. Figure 5.33 shows the value of the error bound times parameters F for a = IIQII°o 1.29 versus the number of model 200, 500, 1000, and 2000. The system is guaranteed to be stable when the weighted model error is less than one. Hence, stability is guaranteed with F = 14 model parameters and a = 200 data points. Note that for small F the error bound is almost independent of a and is dominated by the “truncation error” term in (4.54). On the other hand, when 20 < F < 50 the model error is approximately equal to the “spline error” term max{!f), supsE[ ,1l #(A tan(6/2))} and is less sensitive to increases 2 in model parameters F. The actual error of an identified model denoted is obtained with “noise-free” frequency response data; its weighted model error is the solid line in Figure 5.33. Although in comparison to the actual model errors the bounds are conservative, they provide the designer confidence the controller will stabilize the plant. Chapter 5. Simulation examples 66 0 ‘5 V C 0) ‘U a 2 100 100 Frequency (radis) No. of Samples (a) (b) Figure 5.32: (a) shows the upper bound on the “roll-off” rate of the plant magnitude plot of F, (b) shows the physical interpretation of the information M impulse response of Pb! is the solid line. = (dash) and the Bode .7 and p = 1.15. The Closed-loop performance The identified model are used to implement the controller and (s) 0 K The parameters of and ,m20 = 1 — P,(v, s)Q(x, s) (5.64) are in Table 5.2 and the step response is shown in Figure 5.34 with the open-loop step response of the plant for comparison. The Bode plots of open-loop gain of both the analytic and tuned solutions with gain and phase margin labeled are shown in Figure 5.35. Although the magnitude plots of both design are indistinguishable (with acceptable gain margins of 15dB), the phase plots differ by 180 degrees at DC because of an error in the DC magnitude of F. The consequence is that the tuned system is conditionally stable. It is evident that the controller obtained from the two-step tuning procedure meets the design specifi cations and yields a good approximation to the optimal analytic solution of the design problem. Indeed, the value of the performance objective for the controller (5.64) is 23% away from its “good” value. Hence, this example underlines one of the main advantages of the tuning method. Because global optimization is used to determine both P and Q we are guaranteed to find “good” solutions to the design problem. This guarantee cannot be made for methods based on local optimization such as PID tuning (see [SDL91] Chapter 5. Simulation examples 101 67 I I I I I I I 100 Error bounds n=200 0 i5 10 -l 0 0 —-•----.. Actual m System is stable 102 1 n=1000 error 0 5 I I 10 15 I 20 25 30 35 I I 40 45 50 Plant model parameters F Figure 5.33: The worst-case model error bound times IQ IIo versus the number of model parameters F (dash). The system is stable for values of error less than one (dash). For all values of n the system is guaranteed to be stable for more than 14 model parameters. Actual error times IIQII of identified plant model (solid). for example) where the designer can never be confident that the global minimum has been found. Chapter 5. Simulation examples 68 Table 5.2: Parameters of the controller K 0 in (5.64). 2; V 1.10 0.707 0.699 0.850 0.940 0.936 0.848 0.695 0.508 0,315 0.142 0.0043 -0.0900 -0.142 -0.157 -0.146 -0.120 -0.0877 -0.0541 -0.0185 0.112 -0.386 0.440 -0.0754 -0.148 -0.0327 0.163 0.0062 -0.108 -0.0042 0.0924 0.0099 -0.0602 0.0028 0.0584 0.0102 -0.0297 0.0097 0.041 -0.00171 Chapter 5. Simulation examples I — 69 I step response I’ I Ig ‘ I I VI 0.8 ,Aj Tuned step response 0.6 E <I 0.4 0.2 C 0 I 5 10 15 Time (secs) 20 25 30 Figure 5.34: The output step response of the tuned system which meets the design specifications (solid) and the open-loop step response of the plant (dash). Chapter 5. Simulation examples 70 (a) 0 V C CU L, 100 15dB a 9flfl io I 3 1o I I I I 102 101 100 101 102 Frequency (radls) (b) 0) ci, V ci cci CU 0 10 Frequency (radls) 102 Figure 5.35: (a) and (b) show the Bode magnitude and phase plots respectively of the open-loop gain for the exact (solid) and tuned (dash) solutions. Note that whereas the magnitude plots are indistin guishable, the phase plots differ by 180 degrees at DC. Both controllers have gain margins of about 15 dB satisfying the design specification. Chapter 5. Simulation examples 71 Example 2: Unstable plant, the ACC’ benchmark problem 5.2 The following is an example of the control design step of the tuning method for an unstable plant. The design problem is the ACC benchmark robust control design problem described in [BW9O]. 5.2.1 Statement of the design problem The plant considered is shown in Figure 5.36 which models an uncertain system with a non-collocated sensor and actuator in which the controller exerts a force on Mass 1 and the output to be controlled is the position of Mass 2. =y 2 x w U Figure 5.36: The benchmark problem. The state-space form of the plant is ii 0 0 1 0 1 x :12 0 0 o i o o o o 2 x :13 —k/mi k/mi :14 2 k/in 2 —k/in = [o 1 0 0 + 0 o o ttp+ W X3 1/mi 0 :34 0 2 1/in ojx, 2 are 1.25 kg/s, 1 kg, and 1 kg respectively. where the values of the parameters k, m , and in 1 The design problem is to obtain a controller: • such that the closed-loop system is stable for plants with .5 <k ‘ACC stands for the American Control Conference. 2, (5.65) Chapter 5. Simulation examples and m 1 • for w = system = 1 and 2 = in 72 1, unit impulse, the system output y has a settling-time of about 15 seconds for the actual 1 = in 2 rn = 1, and k = 1.25, • which gives reasonable system performance/robustness, • which minimizes the controller effort, • which provides robustness to the measurement noise at in characterized realistically by the designer. As with the first example, some of the specifications are given exactly whereas others are vague and left to the interpretation of the designer. The particular interpretation chosen by the designer determines the level of realism of the problem. Nominal controller The two-step design procedure described in Section 2.6 is used since the plant is unstable and strongly stabilizable having a single unstable zero at oo [DFT9O]. Throughout the thesis it is assumed that the 0 is given. The nominal transfer function of P is unknown hence we must assume the nominal controller K controller is obtained using the pole placement method on the actual plant, and the set of eigenvalues of the A matrix of H (see (2.21)) is taken as {—1 ± j, —2 ± j}. The resulting controller is = Ko(s) — — —156s + 105s2 + —288s —80 4 + 12s + 63.5s2 + 186s + 302’ which happens to be stable. 5.2.2 Performance specifications This section describes the performance functionals used in the design. Robustness to variation of plant parameters Since the stability of the system is of utmost importance to the designer, it is dealt with first. The variation of the of the plant with the spring constant k can represented in perturbation feedback form [BB91]. That is, by a nominal plant perturbed by an internal feedback transfer function A. The block diagram of the perturbed plant ppett is shown in Figure 5.37 and the set of plants (A)IIIAII t {pPer 1}, (5.66) Chapter 5. Simulation examples 73 describes the variation of the spring constant. By expressing the uncertainty in perturbation feedback form it is possible to obtain a sufficient condition for robust stability in terms of a bound on the R 1 to Yl (see Figure 5.37) using the Small Gain Condition norm of the closed-loop transfer function from u described in [BB91]. 1 up Iy + I I I I I I Figure 5.37: The variation in the spring constant .5 < Ic < 2 can be represented as varying the feedback perturbation A inside the perturbed plant pPt• The closed loop transfer function from 1 it to Pi is 1 +W W Hyr, 2 where Wi(s) = s2+25 and — (s)= 2 W 2 .8s 52+25 Hence, the performance specification for robust stability is kHinf(X) 1 + W2Hyr(x)IIco = .7511W Since stability is a hard constraint we define = 1. 74 Chapter 5. Simulation examples following the convention in Section 2.3.4 of using the letter b for objectives associated with hard con straints. Impulse disturbance rejection The definition of the settling-time of an impulse response is taken as inf{rI I(OI .01 ,Vt r). The easiest way to ensure a settling-time of 15 seconds for the impulse response from w to y is to use the step response functional (3.22) with an impulse as opposed to step input. Hence, we define ifr) = tcW max{h(x, 1) — a(t), /3(t) — h(x, t), 0}, where h is the impulse response of H , and the upper and lower bounds a and 5 (5.67) /3 are shown in Fig ure 5.43(a). These bounds also constrain the magnitude of the response for I < 15 seconds. Note that the procedures given in Chapter 3 for evaluating performance functionals and their subgra dients are for stable plants. To illustrate how measurements are used to compute the impulse response of II for an unstable plant, consider the system in Figure 5.38. First a force with large amplitude and short duration and “unit-area” (see Section 3.3.1) is applied to Mass 2 (at input w) and its response 3 (the position 1 and the response at u . Next, the measured response is applied to u 3 measured at u of Mass 2) is measured. Finally, the measured outputs are subtracted to obtain the impulse response of Hence, the procedures for obtaining closed-loop responses from an open-loop system given in Chapter 3 differ only slightly to that used for the unstable plant. Tracking performance Performance of the system is in part specified by constraining the output step response using the step response functional (3.22) which is denoted as 4’2. The bounding functions a and /3 (which are not the same as those in (5.67)) are shown in Figure 5.43(b). If these bounds are not violated the step response has a settling-time of 20 seconds, a “steady-state” tracking error of .1%, an overshoot of less than 1.5 m, and an undershoot less than 1 m. ControUer effort It is important that a realistic design should limit the size of the actuator signal. The approach taken here is measure the size of the actuator effort with a weighted-sum of RMS gains of the closed-loop Chapter 5. Simulation examples 75 w 2 U UI + 3 is measured Figure 5.38: The system used to measure the impulse response of Hd. The response at u 1 and the output at u measured. to an impulse signal applied at w. This response is then applied to u transfer functions with output u. That is 43(X) Note that IIHumIIoo = IIHurIIoo + IIHudIIc,o + is not included in (5.68) since it equals (5.68) II1tyrIIoo. An alternative approach to measuring the size of the actuator signal using (5.68), is to use the time domain functionals in Sections 3.2 and 3.3 which measure norms of particular responses. Rejection of measurement noise 2 norm” The RMS value of the system output due to white measurement noise is measured by ç , an “H 5 functional discussed in Section 3.4. That is 4)4(X) . 2 = IIHymII Specification on Gain margin The specification of a negative gain margin equal to 20 log LdB and a positive gain margin equal to 20 log UdB, where 0 < L 1 < U, can be satisfied by ensuring robust stability for the perturbed plant set {GIG=cP,L c < U} (5.69) Chapter 5. Simulation examples 76 The set (5.69) can be represented in perturbation feedback form shown in Figure 5.39 [BB91]. That is, the perturbed plant set (5.69) is a subset of {pPert(A)IIIII, < max{1 — Using Figure 5.39, the feedback seen by the perturbation L, U — 1}}. is Hence, applying the Small Gain Condition, the inequality (x)= 5 4 I[yrIIco .11 <min 1 — 1 L’ U—i ensures a positive gain margin of 20 log UdB and a negative gain margin of 20 log LdB. p pee + up () , Iy CD I I + Figure 5.39: The perturbation feedback form used for the gain margin specification. 5.2.3 Results of the control design step The basis functions (2.9) with p = 1 and N = 20 are chosen. After several design iterations in which the good and bad weights of associated with the objectives were varied, the performance specifications are determined by the inequalities ‘1 .01, 42 .01, 5 < 50, < 1.5,qf 1. (5.70) The choice of good and bad weights used to obtain the optimal solution are in Table 5.3 along with the raw and normalized optimal values of the objectives. Note that although the specifications (5.70) Chapter 5. Simulation examples 77 are not obtained, performance is deemed satisfactory. This illustrates the importance of specifying performance as soft constraints. Due to the vagueness in the statement of the problem, small violations of the inequalities (5.70) are permissible since they do not affect the overall quality of the design. On the other hand, because an unstable design is useless, hard constraints are necessary to ensure the robust stability specification is met. Table 5.4 gives the parameters of Q. The Bode magnitude plots of the closed-loop system are in shown Figures 5.40 and 5.41, the open-loop gain is shown in Figure 5.42, and the step responses of u and y for a unit step applied at the reference input are shown in Figures 5.43(a-c) along with the impulse response of All figures show the effect of varying the spring constant k; the dashed curves are for k = .5 and the dotted curves for k = 2. Although the system is stable for all plants in the perturbed set (5.66), a small stability margin is observed for k = .5. That is, the peak magnitude of the frequency response of Her is about 20 (see Figure 5.40(b)). Note that in Figure 5.43(a-b) the impulse response meets the settling-time specification and that the output step response lies within the desired bounds. Additionally, the actuator output step response has a peak value of 70 N, and the (positive) gain and phase margins are 3.3dB and 25.6 degrees respectively. As well, note that in Table 5.3 ç is the only functional which is not competing at the optimal solution. 4 or Hence, if desired the designer could further reduce the effect of measurement noise by decreasing G . This example shows clearly how the general form of the cost function allows the designer to deal 4 B directly with a wide range of performance specifications. This is compared with other tuning methods which minimize some crude measure of performance. Table 5.3: Optimal values of the objectives and the choice of good and bad weights. i ci 2 Gk Bk Raw value 4/3 .01 .01 50 1.5 1 8/3 .02 .02 70 2 2 1.33 .0227 .0227 75.3 1.32 2.27 Normalized value 0.00 1.27 1.27 1.27 -.325 1.27 One of the features of the control design step is that it gives the designer an easy way to investigate the relationships between the objectives by adjusting the normalizing weights in the weighted-max cost function. For example, suppose the designer is unsatisfied with the 3.3dB positive gain margin obtained Chapter 5. Simulation examples 78 Table 5.4: The optimal controller parameters. Xl_lo Xfl_IJ -.775 .164 1.06 3.46 6.13 8.79 10.7 11.4 10.9 9.23 6.94 4.56 2.49 1.00 .121 -.259 -.303 -.222 -.103 -0.0362 for the optimal design and wants to know how it can be increased by increasing the controller effort. By adjusting the weights G 5 and constraining the values of the objectives , G 3 , B 3 , and B 5 , , and 44 to their “good” values given in Table 5.3, the designer explores the tradeoff curve shown in Figure 5.44. This figure shows that a positive gain margin can be guaranteed greater than 4.23dB if the designer accepts a value of 325 for (which is roughly equivalent to an controller output step response with a peak value of 300 N). As mentioned previously, a central problem with performing a design is specifying the performance specifications quantitatively. The tradeoff procedure described above illustrates clearly how the tuning method simplifies this problem. By adjusting good and bad weights which have obvious physical inter pretation the designer is able to reassess his or her notion of optimal performance throughout the design process. For the above example, the designer has no idea of what a realistic specification on the gain margin is to ensure a small enough actuator effort. Additionally, even when exact design specifications are known, in many cases because they are unachievable and some best compromise must be obtained. Such a compromise is obtained by performing tradeoff analyses such as the one described above. Finally, we reemphasize that tuning is performed on-line optimizing actual closed-loop performance. This is opposed to an off-line design which is inevitably corrupted by modeling errors. Figure 5.45 illustrates typical convergence observed by the designer during the procedure. The step response of Hg,. is “pulled” between upper and lower bounding functions associated with the step response functional ‘p2. Chapter 5. Simulation examples 10 79 (a) 10 .1 I • i:: 10.20 102 I I I I 1 io 100 101 102 3 io Frequency (racils) (b) 102 1 Frequency (radls) Figure 5.40: (a) shows the Bode magnitude plot of the complimentary sensitivity function. (b) shows the Bode magnitude plot of the sensitivity function. The effect of the variation of the spring constant is shown by the dashed curves for k = .5 and the dotted curves for k = 2. The small stability margin of the design for k = .5 is indicated by the large peak value of dashed curve in (b). Chapter 5. Simulation examples 10 80 (a) 10 I . I .... a) I::: 102 I 10_i 1020 I I 101 102 3 101 102 3 to 10° Frequency (rad/s) (b) I a) 1020 102 10i 100 Frequency (rad/s) (c) 10 I I I I .jj2 i0 Frequency (rad/s) Figure 5.41: (a) shows the Bode magnitude plot of (b) shows the Bode magnitude plot of Hdy. (c) shows the Bode magnitude plot of Hur. The effect of the variation of the spring constant is shown by the dashed curves for k = .5 and the dotted curves for k = 2. Chapter 5. Simulation examples 81 (a) V C Cu 0 Frequency (radfs) (b) a) ci 0) 0) Cu 0 102 10.1 10° 101 102 io Frequency (radis) Figure 5.42: (a) and (b) show the Bode magnitude and phase plots respectively of the open-loop gain of the system. For k = 1.25 the systems’ positive gain margin and phase margin are 3.30dB (w = .565 rad/s) and 25.9 degrees (w = .292 rad/s). The effect of the variation of the spring constant is shown by the dashed curves for k = .5 and the dotted curves for k = 2. Chapter 5. Simulation examples 82 (a) 10 15 20 Time (secs) (b) 25 30 35 40 2 a U) Time (secs) (c) z ci 2 0 LI 5 Time (secs) Figure 5.43: (a) shows the output step response and bounding functions associated with the step response and bounding functions associated with qfi, (c) functional 42, (b) shows the impulse response of shows the actuator effort for a unit step applied at r. Note that the specifications of asymptotic tracking and and settling-time are satisfied. The effect of the variation of the spring constant is shown by the dashed curves for k = .5 and the dotted curves for Ic = 2. Chapter 5. Simulation examples 3.2 83 =15, G 3 G =4.5, B 5 =25, B 3 =4.6 5 3 2.8 2.6 G =55, G =2.5, B =65, B =2.6 3 U, 5 3 5 2.4 2.2 =75, G 3 G =1.5, B 5 =85, B 3 =1.6 5 2 1.8 1.6 14 0 I 50 100 150 I I I 200 250 300 350 03 Figure 5.44: The tradeoff curve between controller effort measured by 4 and a measure of the systems’ , and qo are constrained to be less than or equal 2 The objectives , qf gain margin measured by positive gain margin can be traded off with increased to their “good” values in Table 5.3. Increases in actuator effort. . Chapter 5. Simulation examples 84 (a) I I I I I I I I I I I I I I 35 40 45 50 I I 45 50 45 50 a o--•0 5 o 2 a 0 0 —2 0 I 5 I I 10 20 15 •1 25 30 Time (secs) (b) I I I I ”—”’ 7 J 5 10 I I 15 20 25 30 Time (secs) I I 35 40 I I (c) •I I I a0 -2 0 I I I I 5 10 15 20 I 25 30 Time (secs) (d) a I I 35 40 I I I I I 35 40 45 I Cl) -2 0 5 I I I 10 15 20 I I 25 30 Time (secs) 50 Figure 5.45: (a)-(d) show the typical convergence observed for the tuning method. An output step response converges to within bounding functions (associated with q2) for the first five iterations of the optimization algorithm. Chapter 6 Conclusions / Future work 6.1 Conclusions In conclusion, this thesis has presented a new optimization-based on-line tuning method for linear com pensators with “internal model” structure, controller parameter The method comprises of a control design step for the Q and an identification step to obtain the internal model of the plant. This chapter summarizes the key points of the method and discusses possible future work. 6.1.1 Control design step A standard approach to designing a feedback compensator is to first obtain a model of the plant and then to apply one of the well-established design techniques discussed in Section 1.2.1. The difficulty with this approach is that the achievable performance depends on the quality of the model used. For example, in many cases models ignore higher order dynamics because they are impossible to model or because they make the design process too complex. In an effort to overcome this limitation, the tuning method proposed uses plant measurements to perform the control design step. Another fundamental difficulty with most design methods is that they require that real world engi neering specifications be transcribed into some standard form. For example, recall that the LQG method required that the designer select weighting matrices in the cost function and spectral factors of fictitious noise inputs. In most cases these design parameters cannot be related to the given specifications and their choice is difficult. This difficulty is addressed with parameter optimization design methods which allow a wide range of performance specifications. Furthermore, with recent advances in optimization techniques an even wider selection of measures of performance is possible. The tuning method presented exploits this advantage of parameter optimization-based design methods and allows the designer to spec , L 2 1 norm type functionals, and a range of ify desired performance with inequalities involving H, H time domain objectives. Of course, even empowered with a general cost function, it is still difficult sometimes to specify 85 Chapter 6. Conclusions/Future work 86 desired performance precisely (it may not even be known). This is because for many realistic design problems desired performance cannot be quantified and the designer must experiment with a range of specifications. The tuning method addresses this problem by proposing an iterative design procedure wherein the designer adjusts the weights associated with a weighted-max cost function. The weights have obvious physical interpretation and the designer is comfortable in adjusting their values. This is contrasted with the iterative procedure based on other design methods (such as LQG), where the “tuning” weights have little physical interpretation. The tuning method uses an “internal model” controller structure to formulate the design problem as a convex optimization problem. This implies that, assuming the performance functionals measured are exact, an arbitrarily “good” approximation to the optimal solution is obtained by solving a sequence of convex optimization problems with increasing number of controller parameters. This is opposed to tuning with other controller structures (such as that of the commonly used PID controller) where the designer is never certain whether performance can be improved. Although the price paid for convexity is a higher order compensator, due to its simple structure this is not believed to be a major drawback. A problem with using parameter optimization-based design methods is that they sometimes require the solution of computationally costly optimization problems. The tuning method addresses this problem by using plant measurements to evaluate the performance functionals. A comparison of the cost of computing the performance functionals in the tuning method shows that it is almost always advantageous to use measurements as opposed to a plant model. Hence, even if a good plant model is available there is still reason to apply the method on-line to reduce the amount of computation. Finally, for the case where the plant is unstable it is possible to apply the control design step provided a stable stabilizing controller can be found. 6.1.2 Identification step The second step of the tuning method identifies a plant model required by the internal model controller structure. Recently much attention is being paid to identifying a plant for the purpose of controller design. Most standard identification methods emphasize obtaining the nominal model but pay less attention to the description of its uncertainty. On the other hand, most modern control design methods rely on a description of the plant’s uncertainty. For example, the H-optimal design method design method assumes the plant lies in some H,,, frequency domain bound. This thesis presents a control-oriented Chapter 6. Conclusions/Future work 87 numerical optimization-based identification method that depends on desired closed-loop performance and provides a description of the uncertainty in plant which is compatible with robust control methods and the control design step of the tuning method. The identified model is obtained by minimizing the 11cc norm of a model error weighted by the optimal design parameter obtained in the control design step. This weighting ensures that the desired closed-loop performance is reflected in the plant model. Since an FIR model structure is used, the optimization problem solved is convex and as in the control design step the designer is guaranteed a global solution to the design problem. In addition to providing a nominal model, the identification method provides a worst-case bound on the model error. This bound is computed from assumed information about the plant, the experiment duration, the noise level, and the model order. Such a bound allows performance of the first design step to be guaranteed. 6.2 Future work This section presents possible future work that could be performed on the tuning method. • When performing the control design step, the data required was assumed free from noise. This is not a realistic assumption in practice. An analysis of the effect of noise (realistically modeled) should be performed to determine the sensitivity properties of the tuning method. • The effectiveness of the control design step relies on ability of the designer to interact with the computer. Hence it is important that a user-friendly interface to the existing software be developed. This software should allow the designer to adjust the good and bad weights during optimization and should provide a graphical summary of the performance functionals. As well, work should be performed on a compiler which allows the designer to input performance functionals in convenient way. This idea is similar to the QDES software proposed in [BBB 88] for off-line controller design. • An adaptive control scheme based on the parameter optimization-based control and identification should be developed. The general form of the cost function would allow more realistic measures of performance to be used (compared to pole placement or LQR design methods used in traditional adaptive control techniques). Chapter 6. Conclusions/Future work 88 • One shortcoming of the identification step is the method used to obtain the frequency response data and the bound on its error (Appendix F). A popular way of computing the frequency response is to use the “tn-spectrum” average method described in Appendix C.4.2. It would therefore be desirable to obtain a hard bound (i.e. an M) on the error of the frequency response data identified using this method. • When using the Ritz approximation for identification it is possible to use information about the plant and noise level to derive a worst-case expression for the error for the model (This was not possible when designing Q since in most cases the designer has little information about the optimal solution.) Although an FIR plant model structure was used, it is well known that the choice of basis functions affects the number of parameters required to obtain a given error in the nominal model (see [Wah9lj and the references therein). Hence in an effort to reduce the number of model parameters, expressions for the worst-case model error using other popular basis functions would be useful. • The tuning strategy should be applied to an actual system to fully demonstrate its usefulness. Appendix A Some rules for computing subgradients The ellipsoid algorithm is a simple optimization algorithm which requires only the value of the objective and a subgradient at each iteration. A subgradient of a convex function exists even where it is nondif ferentiable. This appendix defines the subgradient of a convex function and specifies rules determining its expression. An elementary treatment of convex analysis is given in [BB91] and a more thorough reference is {C1a83]. A.1 Basic definitions A functional 4 : RN —* ,x 1 2 in RN and A R is convex if for all x #Ptxi + (1 A subgradient of a convex functional ) <A#(xi) + (1 2 A)x — [0, 1] then ). 2 A)c6(x is defined as any g satisfying (x) An example of convex functional — e fr T (xo) + g — xo),Vx. , 0 4 is shown in Figure A.46. Although 4 is not differentiable at x subgradients can be computed. The dotted tangent lines correspond to two subgradients gi and g. A.2 Rules for computing subgradients The following is a set of rules for computing a subgradient of certain general functionals. These rules are applied in Chapter 3 to the performance functionals specifying the control system performance. • If the functional is differentiable at x, then its subgradient is its derivative at z. • If w 0 and q5 is convex then a subgradient of wq5 at x is wg where g is a subgradient of • If #(x) of k = çbkfr) and j, i at x, is a subgradient of = 1, . . . N are convex then 1 = Ok, where g is the subgradient 4’ at x. Note that the peak gain norm functional (the 89 at x. 1 norm L Appendix A. Some rules for computing subgradients 90 4(x) slope g 2 slope g 1 —— V V V —— xo Figure A.46: An example of a convex functional lines correspond to subgradients g and g. which is not differentiable at x , The dotted tangent 0 of the system’s impulse response) (3.38), can be interpreted as in integral of a family of convex functionals and the summation can be replaced by an integral in the above rule to obtain a wise guess for the subgradient (3.39). • Take q’ = where i 0 e I such that • Take 4j(z), = I}, where I is any index set and çb is convex. A subgradient of sup{qj(x) i max{(x) (x) 0 4j Ii e = q(x), is a subgradient of q at x. I}, where I is any finite index set and where i 0 E I such that (x), 0 4j qj(x) = q(x), is a subgradient of qj is convex. A subgradient of at x. Appendix B A two-step design for strongly stabilizable plants The IMC controller structure can be extended to strongly stabilizable unstable plants using a two-step , and the second step 0 design procedure. The first step is to design any stable stabilizing controller K is to modify the dynamics of the stabilized controller using the IMC structure. The expression for the controller is K(F,Q) = 0 + Q(1 K — ,Q € RH 1 H(P)Q) ,, 0 (B.71) where H(F) (assuming P = F(1 + 1 F) 0 K = P). This appendix shows that as Q (B.72) varies over RH, in (B.71) we parametrize the set of all stabilizing controllers. The explanation is due to [Mac89j. Let F 0 with N, M coprime and K = = , 1 NM (B.73) , MK 0 0 Mj be a stable controller that stabilizes F with Nç NK 0 coprime. Then where V = X = NV’ (B.74) Y = , 1 V 0 MK (B.75) , satisfy 0 0 + MMK NNK MY+NX=1. ,. 0 Note that because K 0 was assumed stable, Y is invertible in RH To show that the two-step design is over all stabilizing controllers we show (B.71) is of the form K(P,Q) = (X + MQ)(Y - , 1 NQ) where X and Y are defined in (B.74) and (B.75) respectively; N and M are defined in (B.73). K(F, Q) = 0 + MQY (K )(1 1 - 91 (B.76) Appendix B. A two-step design for strongly stabilizable plants = 0 + MQY’)(1 + NQY (K 1 (1 = 0+K K NQY’(l 0 = 0 + (K K NQ + MQ)(1 0 = (XY + M)Q(1 N 0+1 K = 0 + (XN + MY)Y’Q(1 K = 0+Y K Q(1 1 = RN) 1 Ko+R(1—Y . Where R is defined as R - - — ) 1 NQY ) + MQY’(1 1 NQY - 92 - ’ NQY ) 1 Y ) 1 NQY - - QN)’Y Y 1 QN)’Y Y 1 (B.77) 0 is stable so is R. Since (B.72) can Q in (B.77). Note that because K 2 Y be rewritten as H(P) = (1+NM’XY’) NM 1 = N(M + NXY’)’ = NY’(MY+NX) = , 1 NY = 0 + Q(1 K and (B.71) can be expressed as K — . 1 NY’Q) Comparing (B.77) and (B.78) and since there is a one-to-one relationship between R and equivalent to (B.76) and the two-step design procedure is over all stabilizing controllers. (B.’78) Q, (B.71) is Appendix C Cost of evaluating the performance functionals One of the advantages of using the tuning method is that it avoids the calculation of time and frequency responses from the plant model: 1. These can be costly when the order of the system is high, or when many time or frequency points of the response are required, 2. They can be inaccurate due to the approximations made when obtaining the plant model. In Chapter 3 a comparison of the cost of evaluating performance functionals using a model and using measurements from the plant was made. This Appendix presents the details of how the comparison was made. For simplicity the set of plant models considered is F(s) = (i)k’ k = 1,...,20, (C.79) and the closed-loop transfer function is 11 y = FQ. For each functional two costs are considered: the cost before optimization begins, and the cost at each iteration of the optimization algorithm. C.1 The step response functional This section considers the step response functional = C.1.1 max max{s(x, 1) — a(t), /3(1) — s(x, 1), 0). (C.80) Evaluating the functional using a plant model The easiest way to evaluate (C.80) is to compute the step response s(x, 1), 0 < I < t mar• To avoid computing s at each iteration of the optimization algorithm we determine its expression in term of the controller parameter x. Letting p, bk and qN denote the impulse responses of Bk, 93 QN, and F respectively Appendix C. Cost of evaluating the performance functionals 94 then s(x,t) = = = p(r)*qN(x,r)dr j J cr)qN (x, cr)ddr p(r j p(T—)bk(o)dodr xkj j = where the kth component of c (an N by 1 vector) is defined as ck(t) = JoI fOG I Jo p(r — (C,81) 0)qk(0)du. 5 evenly spaced points on the interval [0, tmaj is evaluated before optimization The value of c at N begins, generating an N by N 3 matrix. This is equivalent to evaluating the step response of PBk N times at N 8 points, which costs roughly N((Na + i)(6 + j+ 1/3) + N(2N + 3N 0 + 1)) floating , and 0 point operations (flops). The dimension of A, the state-space matrix of PBk, is N 0 (AIOG))}. For example, with N 2 floor(log = 40, N = 20, and 00 = hAil j= max{0, 1 + 20 the cost is approximately 100 Mflops. (See Appendix D for how the expression for the cost of a time domain response is obtailled.) The amount of computation obtained by simulation for evaluating ck, k = 1, . . . ,20 at N 3 = 1000 time points versus the number of states in the plant model (C.79) is shown in Figure C.47. Note that the rough estimate obtained above for the cost of evaluating c agrees with the value obtained by simulation (128 Mflops at 20 model states in Figure C.47). Appendix C. Cost of evaluating the performance fun ctionals x 10 95 7 Cl) C 0 Cu a) 0 C 0 0 C Cu 0 L1 10 12 14 8 Number of states in plant model Figure C.47: The number of flops versus the number of states in the plant model to evaluate ck, k = 1,. ,20 in (C.81) at N 3 = 1000 time points. . . Appendix C. Cost of evaluating the performance functionals 96 The MATLAB program used to generate Figure C,47 is: clear flops_step_accum=[j; % Plant transfer function denominator. denom=l; % 1000 time pts. t=(0:999)*.Ol; % State space form of B_i. N=20;p=l; % p is arbitrary. Aq=-ones (N) *2*p; Aq=tril (Aq, 0) +p*eye(N); Bq=ones(N,l); Cq(l:N)=_2*p*ones(l,N); Dq=1; for k=1:20, % Plant P_k=l/(l+s)’k. denom=conv(denom, [1 11); [Ap,Bp,Cp,Dpj=tf2ss(l,denom); % PB_i. [Apq,Bpq,Cpq,Dpqj=series(Ap,Bp,Cp,Dp,Aq,Bq,Cq,Dq); flops(0) % Compute step response of PB_i and count the number of operations. s=step (Apq, Bpq, Cpq, Dpq, l,t); % Multiply by 20 to account for i=1,...,20. [flops_step_accum flops*20]; flops_step_accuin end plot(l:20, flops_step_accum) xlabel(’Number of states in plant model’) ylabel ( ‘Floating point operations’) During optimization the evaluation of (C.80) reciuires (2N 5 flops to add bounding functions a and 9. 2N — 3 flops for evaluating 1)NL cTx and Appendix C. Cost of evaluating the performance function als C.1.2 97 Evaluating the functional using measurements When using measurements the step response is measured directly from the open-loop system, and no computation is required before optimization begins. The only computation is to add the bounding functions which requires 2N 3 flops. Hence, the relative cost (during optimization) of using a model versus using measurements is Relative Cost = (2N + 1)N 3 8 2N = 2N + 1> 1. The relative cost of evaluating (C.80) during optimization increases linearly with N, and computational savings by using measurements are possible for all N. C.2 Norms of a particular response functional Consider the RMS value functiollal RMS(X) = j (lirn y(x, t)2d1), where y is the output response to a square wave input at r (with m C.2.1 d = (C.82) = w = 0). Evaluating the functional using a plant model As with the step response functional (C.80), the easiest way to evaluate (C.82) is to first compute the response y and then use the expression for the functional directly. To determine the cost of evaluation before optimization begins, the expression for the response in terms of the controller parameter is obtained. Denoting the input u, the output response y in terms of x is y(x,t) (p(t) = * qN(xt)) * u(t) j (j p( j (f = — Xk r)qN(z, r)dr) p( — u(t r)bk(T)dr) u(t dT(t)x, = = j (j — (C.83) where the kth component of d is defined as dk(t) — p( — T)bk(T)dT) u(t — Appendix C. Cost of evaluating the performance functionals 98 The value of d is evaluated at N 3 evenly spaced points on the interval [0, tmavj where , tma is chosen to be the time at which the system is in approximately in “steady-state”. The cost of evaluating d is roughly the same as for c in Section C.1.1 since both require computation of time domain responses. Figure C.48 shows the cost of computing d versus the number of states in the plant model. Cl) C 0 Cu a) 0 C 0 Q. C Cu 0 U- 2 4 6 12 14 8 10 Number of states in plant model 16 18 20 Figure C.48: The number of flops versus the number of states in the plant model for the computation of d in (C.83) at 1000 time points. Appendix C. Cost of evaluating the performance function als 99 The MATLAB program used to generate Figure C.48 is: clear flops_part_accum= [1; % Plant transfer function denominator. denom=l; % 1000 time pts. t=(0:999) *01; % State space form of B_i. N=20;p=l; % p is arbitrary Aq=-ones (N) *2*p; Aq=tril(Aq,0)÷p*eye(N); Bq=ones (N, 1); Cq(1:N)=_2*p*ones(l,N) Dq=1; % Input is a square wave. fs=l; u=square(t*2*pi*fs); for k=1:20, % Plant P_k=1/(1+s)”k. denom=conv(denom, [1 1]); [Ap,Bp,Cp,Dp]=tf2ss(1,denom); % PB_i. [Apq,Bpq,Cpq,Dpq]=series(Ap,Bp,Cp,Dp,Aq,Bq,Cq,Dq); flops (0) % Compute response of PB_i and count the number of operations. s=lsim(Apq,Bpq,Cpq,Dpq,u,t); ,20. % Multiply by 20 to account for i=1, flops_part_accum = [flops_part_accum flops*20]; . . . end plot (1:20, flops_part_accum) xlabel(’Number of states in plant model’) ylabel ( ‘Floating point operations’) At each iteration of the optimization algorithm, the evaluation of (C.82) requires (2N for evaluating d x, and 2N T 3 + 1 flops for the integration. — 1)N flops Appendix C. Cost of evaluating the performance function als C.2.2 100 Evaluating the functional using measurements Since the cost of evaluating the functional from measurements is the cost of performing the integration, the relative cost using the plant model compared to using measurements (during optimization) is (2N + 1)N 3+1 > 1. 3 +1 2N Relative Cost = The relative cost during optimization increases linearly with N and is greater than one for all N. C.3 The “peak gain norm” functional Consider the “peak gain norm” functional pkgn(X) = j (C.84) (x, r)Idr, where Ii is the impulse response of Hyr. C.3.1 Evaluating the functional using a plant model As with the step response functional and the norm of a particular response functional, to avoid computing the impulse response at each iteration its expression in terms of x is obtained. Letting p and q’ denote the impulse responses of P and Q’ respectively, the impulse response of PQ in term of x = p(t)*qN(x,t) Jp(r)q”1(x,t_r)dr p(r)bk(t—r)dr = 0 k=1 = gT(t)x (C.85) where the kth component of g is defined as gk(t) — = (C.86) r)dr. The integral in (C.86) is approximated by summing the magnitude of the impulse response at N 3 evenly spaced points on the interval [0, Imax], where max t is the time at which the impulse response is approximately zero. Using N 3 = 1000, the cost of computing gy, Ic = 1, . . . , 20 is shown in Figure C.49. Appendix C. Cost of evaluating the performance function als x 10 101 7 C’, 0 (5 0. 0 0 0. 0> CC’ 0 U- 2 4 6 12 14 8 10 Number of states in plant model 16 18 20 Figure C.49: The number of flops versus the number of states in the plant model for the computation of g, k = 1, ,20 in (C.86) at 1000 time points. . . . Appendix C. Cost of evaluating the performance function als 102 The MATLAB program that produced Figure C.49 is: clear flops_impulse_accum= [1; % Plant transfer function denominator. denomDl; % 1000 time pts. t(0:999) *01; % State space form of B_i. N=20;p=l; % p is arbitrary Aq=-ones (N) *2*p; Aq=tril (Aq,0)+p*eye(N); Bqtones (N, 1); Cq(l:N)=_2*p*ones(l,N); Dqzl; for k=l:20, % Plant P_k=l/(l+sV’k. denom=conv(denom, dt); [Ap,Bp,Cp,DpJ=tf2ss(numer,denorn); PB_i. [Apq,Bpq,Cpq,DpqJ=series(Ap,Bp,Cp,Dp,Aq,Bq,Cq,Dq); flops(0) % Compute impulse response of PB_k and count the number of operations. s=impulse(Apq,Bpq,Cpq,Dpq,l,t); flops_impulse_accum = [flops_impulse_accum flops*201; end plot (1:20, flops_impulse_accum) xlabel(’Nuinber of states in plant model’) ylabel(’Floating point operations’) 3 During optimization, the cost of evaluating (C.84) is 2NN multiplication in (C.85) requires 2N 8 (N C.3.2 — — 3 N — 1 flops. This is because the 1) flops, and the integration requires — 1 flops. Evaluating the functional using measurements During optimization, no computation for the impulse response is required since it is obtained by mea surement. Hence, the cost of evaluating the functional is N 8 —1 (the cost of performing the integration). Appendix C. Cost of evaluating the performance function als 103 The relative cost is therefore Relative Cost = N—N 3 2N — 1 > 1, 3 1 2N — which increases linearly with N and is greater than 1 for N C.4 2. The “H 2 norm” functional (s) 2 2 norm” functional (3.41) with Wi(s) = 1, W Consider the “H = C.4.1 (J 0, and ft = PQ: IP(iw)Q(x jw)I2dw). (C.87) Evaluating the functional using the plant model 2 norm” functional using a model, First PQN is expressed An efficient method exists for evaluating the “H in terms of the controller parameter pQN(x) = ZkPBk = B, 1 (xkGk) (sI—A) where A, B and Ck are the state space matrices of PBk (D = 0 since P is strictly proper). Hence pQN 1 112 = /xTEx, (C.88) where 1 C E = Wcrb [ ’ 1 Gj ... C j, CN and Wctrb is the controllability Gramian, the solution to the Lyapunov equation AWctrb + Wctr&AT + BBT = 0 [BB91]. (C.89) The cost of computing E in (C.88) versus the number of plant model states is shown in Figure C.50. Appendix C. Cost of evaluating the performance function als 2 104 10 12 8 Number of states in plant model Figure C.50: The number of flops versus the number of states in the plant model for the computation of E in (C.88). Appendix C. Cost of evaluating the performance function als 105 The MATLAB program used to generate Figure C.50 is: clear flops_h2_accuni= [1; % Plant transfer function denominator. denom=l; % State space form of B_i. N=20;p=l; % p is arbitrary Aq=-ones (N-i) *2*p; Aq=tril (Aq, 0) +p*eye (Ni); Bq=ones (N-i, 1); Cq(l:N_l)=(_2*p)*ones(i,N_l) Dq=1; for k=l:20, ’k. t % Plant P_k=l/(l+s) denomzconv(denom, [1 1]); [Ap,Bp,Cp,Dp]=tf2ss(l,denom); % PB_i. [Apq,Bpq,Cpq,Dpq]=series(Ap,Bp,Cp,Dp,Aq,Bq,Cq,Dq); flops (0) % Compute the controllability grarnmian. W = gram(Apq,Bpq); [N_apq,N_apq]=size(Apq); E = sqrt((ones(N_apq,l)*Cpq)*W*(ones(N_apq, flops_h2_accum = [flops_h2_accurn flops]; l)*Cpq)I); end plot (1:20, flops_h2_accum) xlabel(’Nurnber of states in plant model’) ylabel (‘Floating point operations’) 2 flops for per At each iteration of the optimization algorithm, the cost of computing (C.87) is 2N forming two multiplications of a vector and a matrix, and taking the square root in (C.88). C.4.2 Evaluating the functional using measurements The method to evaluate (C.87) using measurements requires the frequency response of the plant which is obtained by applying a sequence of square waves to the plant input u and measuring the output y. If the number of points measured at a sampling frequency 3 is f M, and the frequency of the square wave is /M, where P is the number of periods of square wave applied; the estimate of the transfer function 3 Pf Appendix C. Cost of evaluating the performance functionals 106 of the plant is obtained by computing the “tn-spectrum” average P(wk) P(k) IJ = .1 3 2irkf Wk = k 1, = . . ., M/2 — 1. (C.90) Where F is the cross power spectral density, and P, P are auto power spectral densities of the input and output respectively. That is, P(k) = 2 IY(k)1 P(k) P(k) 2 U(k)1 = Y(k)*U(k), where U and Y are the Discrete Fourier Transform of the sampled input IZ and output weighted by a Hanning window respectively. That is, M-1 U(k) = ii(n)w(n) exp_i(2M) Y(k) k = 0,1,...,M—1, w(n) = /2irn 1/ 2 l cosMl The frequency response of Bk, obtained using the state-space method (described in Section C.5.1), is multiplied by the estimated frequency response of the plant. The cost of evaluating the frequency response of FBk using measurements relative to using a plant model versus the number of states in the plant model is shown in Figure C.51 using 370 frequency points (dashed) and 92 frequency points (solid). It is evident that computational savings are possible with 370 frequency points and when there are more than about 12 states in the model. The MATLAB programs used to generate the cost of computing the frequency response of FBk using measurements are: Appendix C. Cost of evaluating the performance function als 107 clear H=[J;f=[];flops_acc=0; % The number of periods of square wave. P=10; % Sampling frequency. fs=.256; % Number of samples. M=1024*4; % call the function ‘compute_trispectrum_average five times. for k=l:5, [Z, f_o, flps] =compute_trispectrum_average (fs, P,M); if k > 1, % Throw away overlapping frequency points. ind=find(f_o > f(length(f))); H=[H; Z(ind)); f=[f f_o(ind)]; else H=Z; f=f o; end flops_acc=flops_acc÷flps; % Increase sampling frequency. fsfs*lO; end % Interpolate to obtain logarithmcally spaced points. f_inter=logspace(-4, 3,370); H_inter_mag=interp2(f,abs(H) ,f_inter); H_inter_ph=interp2(f,unwrap(angle(H) ) ,f_inter); H=H_inter_mag. *exp( ((H_inter_ph) *sqrt (-1))); flops_acc=flops; % State speace form for B_i. N=20;p=l; % p is arbitrary Aq=-ones(N) *2*p; Aq=tril(Aq,0)÷p*eye(N); Bq=ones (N, 1); Cq(l:N)=_2*p*ones(l,N); Dq=l; % Compute frequency reponse of PB_i and count the number of operations. flops(0) % Compute frequency response of PB_k and count the number of operations. % Balance A [t,a] = balance(Aq); b = t \ Bq; c = Cq * t; % Reduce A to Hesenburg form [pa] = hess(a); % Apply similarity transformations from Hessenberg reduction to B and C: b c g = = = * p b; c * 1tifr(a,b,sqrt(_l)*f_inter); % Compute frequency response of PBk. for k=l:N, PB(k,l:length(f_inter)) = (c end flops_acc=flops+flops_acc; * Appendix C. Cost of evaluating the performance function als 108 function [Z, f_o, flps]=compute_trispectrum_average(fs, P,M) fsq=P*fs/M; % P periods of square wave. % Increase sampling frequency by inc. inc=4; t=0: (1/ (inc*fs)) : (((M/fs)-(l/ (fs)))); % input square wave. u=. 5*square(2*pi*fsq*t); [a,b,c,d]=tf2ss(l,[l 1]); y=lsim(a,b,c,d,u,t); % decrease sampling rate u=decimate(u, mc); y=decimate(y, mc); flops(0); % Compute transfer function using trispectrum % average. p=spectrum(u,y,length(uH; [mT,nT]=size(p); Z=p(2: (mT) ,4) f_base=(l: ( (M/(2) )—l) )*(fs/M) % .8 times bw due to filtering in ‘decimate’. % take only the frequency components at which square % wave has energy. f_o=f_base(P:2*P:length(f_base) *.8) Z=Z (P: (2*P) : (length(Z) * .8)); flps= flops; At each iteration of the optimization algorithm the computation of the frequency response of requires N (2N 8 — pQN 1) flops, and the integral requires 2N 3 + 1 flops. The relative cost is therefore Relative Cost = 2 2N (2N + 1)Np:s + 1 Since N 3 is typically larger than the number of controller parameters N, the relative cost is less than 1. Hence, evaluating (C.87) using a plant model is more efficient than using measurements during optimization. 109 Appendix C. Cost of evaluating the performance function als / / 40 1.0 / / , / 1.0 / 11.4 01.2 cLl E 0.8 0.6 -- :1O 12 14 Number of states in plant model 16 18 20 Figure C.51: The cost of estimating the frequency response of PBk at 370 (dashed) and 92 (solid) points from measurements relative to using a plant model versus the number of states in the plant model. C.5 The “H norm” functional (s) = 0, and H = PQ 2 Consider the “H norm” functional (3.44) with Wi(s) = 1, W )Hinf(X) = 4 C.5.1 sup IP(jw)QN(z,jw)I. (C.91) Evaluating the functional using the plant model The method used to evaluate (C.91) is to discretize an interval [0, Wma], where is a sufficiently large frequency, by N 3 points, and to find the maximum magnitude of the frequency response of PQ” on the interval. Expressing pQN as a function of x, p(s)QN(s) = XkPBk = B, 1 s (C.92) where A, B and Ck are the state space matrices of PBk. It is obvious that by computing the frequency Appendix C. Cost of evaluating the performance function als response of FBk before the optimization begins, the frequency response of 110 pQN can be obtained by multiplication at each iteration of the optimization algorithm. The frequency response of PB,, is com puted from its state-space form. In MATLAB this is done by first computing A, the Flessenberg form of A, and applying the similarity transformation T associated with the llessenberg transformation to B and Ck. Then the frequency response is computed using PBk(s) = — B, 1 A) (C.93) where A = THAT, B = THB, and Ck = CkT (the superscript H denotes the complex conjugate transpose). Including all matrix multiplications the cost of evaluating (C.93) at N 3 frequency points requires about 6N + 2(2N — Na) + (Na 3 + N + 2Na — 5 flops, where Na is the dimension of 1)N , and the cost of the matrix division 3 A. The cost of obtaining the flessenberg form of A is roughly N 3+N 2 [Mac89j, For example, with Na = 40, N in (C.93) is about N 8 = 370, the total cost is about 25 Mflops. The cost computing the frequency response of PBk using simulation versus the number of states in the plant model is in Figure C.52. Note that the cost obtained in simulation at 20 model states is 26 Mflops which agrees with the estimate obtained above. Appendix C. Cost of evaluating the performance function als 111 The MATLAB program used to generate Figure C.52 is: clear flops_hin_accum= [1; % Plant transfer function denominator. denon=l; % 370 frequency pts. f=logspace(—4,3,370) % State space form of B_i. N=20;p=l; % p is arbitrary Aq=-ones (N) *2*p; Aq=tril (Ag, 0) +p*eye (N); Bq=ones(N,l); Cq(l:N)=_2*p*ones(l,N); Dq=l; for k=l:20, % Plant P_k=l/(l+s)”k. denon=conv(denom, [1 1]); [Ap,Bp,Cp, Dpi =tf2ss(l,denon); % PB_i. [Apq,Bpq,Cpq,Dpqi=series(Ap,Bp,Cp,Dp,Aq,Bq,Cq,Dq); flops(0) % Compute frequency response of PB_k and count % the number of operations. % Balance A ft,ai = balance(Apq); b = t \ Bpq; c = Cpq * t; % Reduce A to I-lesenburg form [p,ai = hess(a); % Apply similarity transformations from Hessenberg % reduction to B and C: b c p = = = p * b; 1 c * p; ltifr(a,b,aqrt(_l)*f); % Conpute frequency response of PBk. for k=l:N, PB(k,l:length(f)) = (c * g); end flops_hin_accum = [flops_hin_accum flops); end plot (1:20, flops_hin_accum) xlabel(’Nunber of states in plant model’) ylabel (‘Floating point operations’) At each iteration of the optimization algorithm, (2N— 1)N flops are required to perform the matrix multiplication in (C.92). C,5.2 Evaluating the functional using measurements The method to evaluate (C.91) using measurements is similar to the one used in Section C.4.2 for the “H 2 norm” functional. The cost of estimating the frequency response of PBk at 370 points from Appendix C. Cost of evaluating the performance functionals 112 C’) C 0 C’) El) a 0 C 0 al 0) C C’) 01. U- 4 2 6 8 10 12 14 16 18 20 Number of states in plant model Figure C.52: The number of flops versus the number of states in the plant model to evaluate the frequency response of PBk, k = 1, ,20, at 370 freqnency points. . . . measurements relative to using the plant model versus the number of states in the plant model is shown in Figure C.53. The same programs are used to compute the cost of obtaining the frequency response of PBk from measurements in Section C.4.2; the relative cost is the cost obtained in Section C.5.1 divided by cost using measurements. Since at each iteration the multiplication in (C.92) must be performed regardless of whether measure ments or the plant model is being used, the relative cost of evaluating the functional during optimization is one. Appendix C. Cost of evaluating the performance functionals 2 4 6 8 10 12 14 Number of states in plant model 113 16 18 20 ,20 at 370 Figure C.53: The relative cost of computing the frequency response of PBk, Ic = 1, frequency points using the plant model and using measurements versus the number of states in the plant model. . . . Appendix D Cost of computing a time domain response in MATLAB This appendix outlines the cost of computing a time domain response using MATLAB. First the continuous-time system is discretized using a zero-order hold. This involves computing the exponential of a matrix. The state-space matrices of the discretized system are Ad and Bd, given by = Ad exp fh J Bd = exprAdrB, 0 where h is the sampling interval. MATLAB uses a scaling and squaring with diagonal Pade approxima tion method to compute the exponential of a matrix. This method is described in {GL89] and requires roughly (6 + j + )N flops, where j N = b + a, a = max{O, 1 + floor(log (AII))}, 2 is the dimension of A, and nb the number of columns in B. The state-space equations of the discretized system are x(k + 1) = Adx(k) + Bdu(k) y(k) = Cx(k) + Du(k). (D.94) 2 + N) length(u) flops and the response obtained from Hence, the state history can be obtained in (2N the state in (2N + 1)length(u) flops. Hence, including the cost of calculating the exponential of a matrix the total cost of computing the response is (6 + j + 1/3)(na + i) + (2n + example, if the plant has 10 states, 0 IIAII, = 3fla + 1) length(u) flops. For 1, and the number of time points is 100 then the cost of computing a time response is roughly 33000 flops. 114 Appendix E Loop Transfer Recovery (LTR) design method E.1 Linear Quadratic Gaussian (LQG) design method The plant is assumed described by where and , 8 V th = Ax+B’Up+Wproc Yp = CX+Vsens, (E.95) are independent zero-mean Gaussian stochastic processes with spectral density matrices W > 0 and V > 0 respectively. The LQG method finds the controller which minimizes the cost Ru(t)}, T Qx(t) + u(t) T lirnE{x(t) where Q and R are weighting matrices satisfying Q > 0 and R (E.96) 0. The standard assumptions are that the systems with state-space realizations (A, B, C, 112 0) and (A, W Q , C, 0) are stabilizable and 2 / 1 detectable. The LQG-optimal controller is given by K(s) = j, —K,(sI—A+BK+KjC) K 1 where the optimal state feedback matrix is = R_iBTP, (E.97) and P is the solution to the Lyapunov equation ATP + PA - PBRl BTP + Q =0. (E.98) The Kalman filter gain matrix is 1 = 1 K P CT V_i , 115 (E.99) Appendix E. Loop Transfer Recovery (LTR) design method 116 where P 1 is the solution to the Lyapunov equation AT 1 1+P AP - i CT V’CP 1 1 + W =0. (E.100) The block diagram of the LQG controller structure is shown in Figure E.54. Figure E.54: The LQG controller structure. The difficulty with the LQG method is that only rules of thumb exist to select the weights W, V, Q, R (see [BH75] for example). Design methods such Loop Transfer Recovery (LTR) have been developed which systematically adjust the design parameters required for the LQG method [BBB+88]. In this thesis it is convenient to consider the augmented plant shown in Figure E.55 which allows us to apply the LTR design method in a more flexible way. First we show how this plant can be described by state-space equations of the form (E.95). The process noise d is filtered white-noise with power spectral density Wd having a realization [Ad, Bd, Cd, Dd]. The state space equations for the process noise are = d Ad(+Bdv (E.101) = where v is Gaussian white noise. The state-space equations for the measurement noise in are in = Amn+Bmp = Cml)+9, (E.102) Appendix P2. Loop Transfer Recovery (LTR) design method 117 Figure E.55: The augmented plant used in the LTR design method. where S and p are Gaussian white-noise, and the transfer function Wm in Figure E.55 has the realization [Am, Bm, Cm, 0]. As well, it is assumed p, S and v are independent. Combining (E.101), (E.102) and the state-space equations of the plant yields th 0 ABCd x BDd B 0 ii ( = 0 0 7) Yp = [c 0 Ad 0 0 Am Cm] ( 7] + Bd + 0 0 Up IA 0 Bm 0 (E.103) Since (E.103) is of the form (E.95) the LQG method can be applied. There are two reasons for augmenting the plant: it makes the selection of the LQG design weights more intuitive (discussed in the next section) and it gives us a another interpretation for the LTR cost function allowing a comparison between the solution obtained by the analytic design and that obtained using the tuning method (see the discussion in Chapter 5). Appendix F. Loop Transfer Recovery (LTR) design method L2 118 LTR design procedure This section discusses how the LTR design procedure is used in the first example in Chapter 6 (involving a SISO plant). The procedure is: 1. Choose the spectral factor transfer matrices Wd, Wm so that —G(sI — K is a desirable 1 A) open-loop gain by increasing Wd relative to Wm at frequencies where K 1 is desired large. Either Wd or Wm can be chosen to shape —C(sI — . In the example problem in Chapter 5, 1 A) iii is taken as white noise (Am, Bm, and Cm are zero) and the spectral factor of d is used to shape —C(sI — . The positive gain margin of —C(sI K 1 A) — 1 is guaranteed to be infinite and its A) phase margin greater than 60 degrees. 2. Obtain the optimal state feedback matrix of an LQG-optimal controller K by setting Q = I and 1 R = p1 in (E.98). The parameter p is decreased until KP (K uses K just determined and K from Step 1) converges to —C(sI — 1 over a sufficiently wide range of frequencies. A)’K Appendix F Obtaining the frequency response data for the identification step This section describes the experiments performed on the system shown in Figure F.56 to obtain the data (4.51). The additive noise term v is included to represent the effect of sensor noise, nonzero initial conditions, plant output disturbances or finite-length identification experiments. assumed to be unknown but bounded in magnitude for all time by The noise term is ij. V + U y + Figure F.56: Identification experiment setup. To obtain a bound on the error in the estimate of the frequency response it is assumed the plant’s impulse response belongs to the set { dt t IfQ)Ie f M’ The input applied to the system is uQ) = ae’, 0 (n t — 1)T. The nth sample of the output of the system y(nT) = (p * u)(nT) + v(nT), where T is the sampling interval. An estimate of the plant’s frequency response is — y((n — 119 — 1)T) (F.104) Appendix F. Obtaining the frequency response data for the identification step 120 and a bound in the error in P(jw) is lip — iioo = :+ < sup — WER+ f dt t p(t)e_iw I 0 J p()e_iwtdt — — p(t)edt — < J p(T)ceiw((n_l)T_T)dT + 7) ae3w(11)T oo = çn_1)T f (n—1)T p(r)e_Tdr — p(t)e_tdt + aeiw(n_l)T (F.105) (n—1)T ’+ 7 ) 1 Me1 (F.106) To go from (F.105) to (F.106), (F.104) and J dt 1T lp(t)le < (n—1)T J p(t)idt (n—i )T were used. The measurement of n samples of the output is repeated for each frequency as described in (4.51). Hence, a bound for k, the error in the frequency response data (4.51), is given by (F.106) a function of the time domain bound on the additive noise, the experiment duration, the amplitude of the input, and information about the plant. Note that in practice it is not always possible to apply a sinusoidal input to the plant. Bibliography [BB91] S. Boyd and C.H. Barratt. Linear Controller Design 1991. Limits of Performance. Prentice-Hall, [BBB’88] S. Boyd, V. Balakrishna, C. Barratt, N. Khraishi, X. Li, D. Meyer, and S. Norman. A new CAD method and associated architectures for linear controllers. Proc. IEEE, 33(3):268—283, March 1988. {BBN9O] S. Boyd, C. Barratt, and S. Norman. Linear controller design: Limits of performance via convex optimization. Proc. IEEE, 78(3):529—574, March 1990. [BCFB93] S. Boyd, L. El Chaoui, E. Feron, and V. Balakrishnan. Linear matrix inequalities in systems and control theory. draft, June 1993. [BH75] A.E. Bryson and Y.C. Ho. Applied Optimal Control. Hemisphere Publishing, 1975. [BS8OJ R.K. Brayton and R. Spence. Sensitivity and Optimization, Elsevier, 1980. [BW9OJ D.S. Bernstein and B. Wie. A benchmark problem for robust controller synthesis. In Proc. American Control Conf, pages 961—962, 1990. [BYM92I D.S. Bayard, Y. Yam, and E. Mettler. A criterion for joint optimization of identification and robust control. IEEE Trans. Aut. Control, 37(7):986—991, July 1992. [C1a83] F.H. Clarke. Optimization and Nonsmooth Analysis. Canadian Math. Soc. Series. John Wiley & Sons, 1983. [DF81] E. J. Davison and I.J. Ferguson. The design of controllers for the multivariable robust ser vomechanism problem using parameter optimization methods. IEEE Trans. Aut. Control, 26(2):93—110, February 1981. [DFT9O] J. Doyle, B. Francis, and A. Tannenbaum. Feedback Control Theory. Macmillan, 1990. [DLMS8O] C.A. Desoer, R.W. Liu, J. Murray, and R. Saeks. Feedback system design: The fractional representation approach to analysis and synthesis. IEEE Trans. Aut. Control, 25(3):399—412, June 1980. [DS81] J. Doyle and G. Stein. Multivariable feedback design. Concepts for a classical/modern synthe sis. IEEE Trans. Aut. Control, 26(1):4—16, January 1981. [Edm79] J.M. Edmunds. Control system design and analysis using closed-loop nyquist and bode arrays. ml. J. Control, 30(5):773—802, November 1979. [EK85] J .G. Ecker and M. Kupferschmid. A computational comparison of the ellipsoid algorithm with several nonlinear programming algorithms. SIAM J. Control and Opt., 23(5):657—673, September 1985. [Feg64] K.A. Fegley. Designing sample-data control systems by linear programming. IEEE Trans. on Appi. and Ind., 83:198—200, May 1964. 121 Bibliography 122 [Fra87] B. Francis. A Course in H Control Theory. Springer-Verlag, 1987. [GD83] C.L. Gustafson and C.A. Desoer. Controller design for linear multivariable feedback systems with stable plant, using optimization with inequality constraints. mt. J. Control, 37(5):881— 907, May 1983. [GD85] C.L. Gustafson and C.A. Desoer. A CAD methodology for linear multivariable feedback sys tems based on algebraic theory. ml. J. Control, 41(3):653—675, March 1985. [GKL89] G. Gu, P.P. Khargonekar, and E.B. Lee. Approximations of infinite dimensional systems. IEEE Trans. Ant. Control, 34(6):610—618, June 1989. [GL89] G. Golub and C. Van Loan. Matrix Computations. John Hopkins Univ. Press, second edition edition, 1989. [GLS88] M. Grötschel, L. Lovsz, and A. Schrijver. Geometric Algorithms and Combinatorial Opti mization. Volume of Algorithms and Combinatorics. Springer-Verlag, 1988. [Gra9O] A. Grace. Optimization Toolbox for use with MATLAB. The Math Works, Inc., 1990. [11an89] F,R. Hansen. A Fractional Representation Approach to Closed-loop System Identification and Experiment Design. PhD thesis, Stanford University, California, 1989. {HJN89] A.J. Helmicki, C.A. Jacobson, and C.N. Nett. H identification of stable LSI systems: A scheme with direct application to controller design. In Proc. American Control Conf, pages 1428—1434, 1989. [HJN9O] A.J. Helmicki, C.A. Jacobson, and C.N. Nett. Identification in H: A robustly convergent, nonlinear algorithm. In Proc. American Control Conf, pages 386—391, 1990. [HJN91a] A.J. Helmicki, C.A. Jacobson, and C.N. Nett. Control oriented system identification: A worstcase/deterministic approach in H. IEEE Trans. Aut. Control, 36(10):1163—1176, October 1991. [HJN91b] A.J. Helmicki, C.A. Jacobson, and C.N. Nett, Distributed Parameter Control Systems: New Trends and Applications, volume 10, pages 301—332. Marcel Dekker, 1991. [HJN91c] A.J. Helmicki, C.A. Jacobson, and C.N. Nett. Fundamentals of control-oriented system iden tification and their application in H. In Proc. American Control Conf, pages 89—99, 1991. [HJN92] A.J. Helmicki, C.A. Jacobson, and C.N. Nett. Worst-case/deterministic identification in H: The continuous-time case. IEEE Trans. Ant. Control, 37(5):1163—1176, May 1992. [HL87] Q. Haung and R.W. Liu. A necessary and sufficient condition for stability of a perturbed system. IEEE Trans. Aut. Control, 32(4):337—340, April 1987. [Hor63] I.M. Horowitz. Synthesis of Feedback Systems. Academic Press, 1963. [Kau54] W.H. Kautz. Transient synthesis in the time domain. IRE Transactions on Circuit Theory, 1(3):29—39, July 1954. {Kuc79] V. Kucera. The Polynomial Equation Approach. John Wiley & Sons, 1979. [Kwa85] H. Kwakernaak. Minimax frequency domain performance and robustness optimization of linear systems. IEEE Trans. Ant. Control, 30(10):994—1004, October 1985. Bibliography [Lju87] 123 L. Ljung. System Identification: Theory for the User. Prentice-Hall, 1987. [Mac89] J.M. Maciejowski. Multivariable Feedback Design. Addison-Wesley, 1989. [MV87] C,C.H. Ma and M. Vidyasagar. Direct globally convergent adaptive regulation of stable mul tivariable plants. IEEE Trans. Aut. Control, 32(6):543—547, June 1987. [MZ89] M. Moran and E. Zafiriou. Robust Process Control. Prentice-Hall, 1989. [NGK57] G.C. Newton, L.A. Gould, and J.F. Kaiser. Analytical Design of Feedback Controls. John Wiley & Sons, second edition, 1957. [NJM88] C.N. Nett, C.A. Jacobson, and A.T. Miller. An integrated approach to controls and diagnostics: The 4-parameter controller. In Proc. Joint Auto. Cont. Cont. Conf., pages 824—835, 1988. [NT86] W.T. Nye and A.L. Tits. An application-oriented, optimization-based methodology for inter active design of engineering systems. mt. J. Control, 46(6):1693—1721, June 1986. [0B90] C. Oakley and C. Barratt. End-point controller design for an experimental two-link flexible manipulator using convex optimization. In Proc. American Control Conf, pages 1752—1759, 1990. [PMS84] E. Polak, D.Q. Mayne, and D.M. Stimler. Control system design via semi-infinite optimization: A review. Proc. IEEE, 72(12):1777—1794, December 1984. [Po187] E. Polak. On the mathematical foundations of nondifferentiable optimization in engineering design. SIAM Review, 29(1):21—89, March 1987. [PS89] E. Polak and S.E. Salcudean. On the design of linear multivariable feedback systems via con strained nondifferentiable optimization in H spaces. IEEE Trans. Aut. Control, 34(3):268— 276, March 1989. [5a186] S.E. Salcudean. Algorithms for Optimal Feedback Control. PhD thesis, University of California, Berkeley, 1986. [5D92] R.S. Smith and J.C. Doyle. Model validation: A connection between robust control and iden tification. IEEE Trans. Aut. Control, 37(7):942—952, July 1992. [SDL91j C.M. Seaman, A.A. Desrochers, and G.F. List. Identification and Multi-Objective Controller Thning of a Plastic Injection Molding Machine. In Proc. American Control Conf., pages 262— 267, 1991. [Str84] K. R. Stromberg. An Introduction to Classical Real Analysis. Wadsworth Press, 1984. [Vid85] M. Vidyasagar. Control System Synthesis: A Factorization Approach. MIT Press, 1985. [VJ84] M. Verma and E. Jonckheere. L-compensation with mixed sensitivity as a broadband match ing problem. Systems and Control letters, 4:125—129, 1984. [Wah9l] B. Wahlberg. Identification of resonant systems using Kautz filters. In Proc. IEEE Conf on Decision and Control, pages 2005—2010, 1991. [YBJ76] D.C. Youla, J.J. Bongiorno, and H.A. Jabr. Modern Wiener-Hopf design of optimal controllers part I: The single input-output case. IEEE Trans. Aut. Control, 21(1):3—13, February 1976. — Bibliography [ZA73J 124 V. Zakian and U. Al-Naib. Design of dynamical and control systems by method of inequalities. Proc. lEE, 120:1421—1427, 1973. [Zam8l] G. Zames. Feedback and optimal sensitivity: Model reference transformations, weighted semi norms, and approximate inverses. In Proc. 17th Allerton Conf, pages 744—752, 1981. [Z093] G. Zames and J.G. Owen. Duality theory for MIMO robust disturbance rejection. IEEE Trans. Aut. Control, 38(5):743—752, May 1993.
- Library Home /
- Search Collections /
- Open Collections /
- Browse Collections /
- UBC Theses and Dissertations /
- Optimization-based controller tuning using the Q-parameterization
Open Collections
UBC Theses and Dissertations
Featured Collection
UBC Theses and Dissertations
Optimization-based controller tuning using the Q-parameterization Lynch, Alan F. 1993
pdf
Page Metadata
Item Metadata
Title | Optimization-based controller tuning using the Q-parameterization |
Creator |
Lynch, Alan F. |
Date Issued | 1993 |
Description | We consider the problem of tuning a closed-loop linear controller for a continuous-time linear, lumped, exponentially stable plant using measurements. A two-step tuning method is proposed based on an “internal model” controller structure. The motivation for developing the method is to reduce the effect of modeling error on the design and to reduce the amount of computation required compared to a similar design performed off-line. The first step is to solve a controller design problem formulated as a sequence of convex optimization problems in which the cost and constraint functionals and their descent directions are computed directly from plant measurements. The designer is comfortable in specifying desired performance by adjusting the weights of a weighted-max cost function composed of a wide range of time and frequency domain performance functionals. To implement the “internal model” controller, a plant model is obtained in the second step. The identification objective makes the plant model depend on the desired closed-loop performance. To ensure a robust design, the model satisfies a worst-case error bound which depends on information about the plant, the experiment duration, the noise level, and the order of the model. |
Extent | 2337429 bytes |
Genre |
Thesis/Dissertation |
Type |
Text |
File Format | application/pdf |
Language | eng |
Date Available | 2009-02-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.0064876 |
URI | http://hdl.handle.net/2429/5019 |
Degree |
Master of Applied Science - MASc |
Program |
Electrical and Computer Engineering |
Affiliation |
Applied Science, Faculty of Electrical and Computer Engineering, Department of |
Degree Grantor | University of British Columbia |
Graduation Date | 1994-05 |
Campus |
UBCV |
Scholarly Level | Graduate |
Aggregated Source Repository | DSpace |
Download
- Media
- 831-ubc_1994-0093.pdf [ 2.23MB ]
- Metadata
- JSON: 831-1.0064876.json
- JSON-LD: 831-1.0064876-ld.json
- RDF/XML (Pretty): 831-1.0064876-rdf.xml
- RDF/JSON: 831-1.0064876-rdf.json
- Turtle: 831-1.0064876-turtle.txt
- N-Triples: 831-1.0064876-rdf-ntriples.txt
- Original Record: 831-1.0064876-source.json
- Full Text
- 831-1.0064876-fulltext.txt
- Citation
- 831-1.0064876.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:
http://iiif.library.ubc.ca/presentation/dsp.831.1-0064876/manifest