0% found this document useful (0 votes)
18 views

Multivariable Feedback Control - Analysis and Design - PDF (PDFDrive)

Uploaded by

Brandon Lama
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views

Multivariable Feedback Control - Analysis and Design - PDF (PDFDrive)

Uploaded by

Brandon Lama
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 293

ii MULTIVARIABLE FEEDBACK CONTROL

MULTIVARIABLE
FEEDBACK CONTROL
Analysis and design
Sigurd Skogestad
Norwegian University of Science and Technology

Ian Postlethwaite
University of Leicester

Second Edition
This version: August 29, 2001

JOHN WILEY & SONS


Chichester . New York . Brisbane . Toronto . Singapore
iv MULTIVARIABLE FEEDBACK CONTROL

BORGHEIM, an engineer:

Herregud, en kan da ikke gjøre noe bedre enn leke i denne


velsignede verden. Jeg synes hele livet er som en lek, jeg!
Good heavens, one can’t do anything better than play in this
blessed world. The whole of life seems like playing to me!

Act one, L ITTLE E YOLF, Henrik Ibsen.


vi MULTIVARIABLE FEEDBACK CONTROL

3.7 Introduction to MIMO robustness . . . . . . . . . . . . . . . . . . 91


3.8 General control problem formulation . . . . . . . . . . . . . . . . . 98
3.9 Additional exercises . . . . . . . . . . . . . . . . . . . . . . . . . . 110
3.10 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

4 ELEMENTS OF LINEAR SYSTEM THEORY . . . . . . . . . . . . . 113

CONTENTS 4.1 System descriptions . . . . . . . . . . . . . .


4.2 State controllability and state observability . .
4.3 Stability . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
113
122
127
4.4 Poles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
4.5 Zeros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
4.6 Some remarks on poles and zeros . . . . . . . . . . . . . . . . . . . 135
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii 4.7 Internal stability of feedback systems . . . . . . . . . . . . . . . . . 139
4.8 Stabilizing controllers . . . . . . . . . . . . . . . . . . . . . . . . . 143
CONTENTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v 4.9 Stability analysis in the frequency domain . . . . . . . . . . . . . . 145
4.10 System norms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
PREFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix 4.11 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 5 LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS . . . . . . 159


1.1 The process of control system design . . . . . . . . . . . . . . . . . 1 5.1 Input-Output Controllability . . . . . . . . . . . . . . . . . . . . . 159
1.2 The control problem . . . . . . . . . . . . . . . . . . . . . . . . . 2 5.2 Perfect control and plant inversion . . . . . . . . . . . . . . . . . . 163
1.3 Transfer functions . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 5.3 Constraints on S and T . . . . . . . . . . . . . . . . . . . . . . . . 164
1.4 Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5.4 Ideal ISE optimal control . . . . . . . . . . . . . . . . . . . . . . . 171
1.5 Deriving linear models . . . . . . . . . . . . . . . . . . . . . . . . 8 5.5 Limitations imposed by time delays . . . . . . . . . . . . . . . . . 172
1.6 Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 5.6 Limitations imposed by RHP-zeros . . . . . . . . . . . . . . . . . . 173
5.7 RHP-zeros amd non-causal controllers . . . . . . . . . . . . . . . . 180
2 CLASSICAL FEEDBACK CONTROL . . . . . . . . . . . . . . . . . 15 5.8 Limitations imposed by unstable (RHP) poles . . . . . . . . . . . . 182
2.1 Frequency response . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5.9 Combined unstable (RHP) poles and zeros . . . . . . . . . . . . . . 185
2.2 Feedback control . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 5.10 Performance requirements imposed by disturbances and commands 187
2.3 Closed-loop stability . . . . . . . . . . . . . . . . . . . . . . . . . 24 5.11 Limitations imposed by input constraints . . . . . . . . . . . . . . . 189
2.4 Evaluating closed-loop performance . . . . . . . . . . . . . . . . . 27 5.12 Limitations imposed by phase lag . . . . . . . . . . . . . . . . . . 193
2.5 Controller design . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.13 Limitations imposed by uncertainty . . . . . . . . . . . . . . . . . 194
2.6 Loop shaping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 5.14 Summary: Controllability analysis with feedback control . . . . . . 196
2.7 Shaping closed-loop transfer functions . . . . . . . . . . . . . . . . 55 5.15 Summary: Controllability analysis with feedforward control . . . . 199
2.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 5.16 Applications of controllability analysis . . . . . . . . . . . . . . . . 201
5.17 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
3 INTRODUCTION TO MULTIVARIABLE CONTROL . . . . . . . . 63
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 6 LIMITATIONS ON PERFORMANCE IN MIMO SYSTEMS . . . . . 213
3.2 Transfer functions for MIMO systems . . . . . . . . . . . . . . . . 64 6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
3.3 Multivariable frequency response analysis . . . . . . . . . . . . . . 68 6.2 Constraints on S and T . . . . . . . . . . . . . . . . . . . . . . . . 214
3.4 Control of multivariable plants . . . . . . . . . . . . . . . . . . . . 79 6.3 Functional controllability . . . . . . . . . . . . . . . . . . . . . . . 218
3.5 Introduction to multivariable RHP-zeros . . . . . . . . . . . . . . . 84 6.4 Limitations imposed by time delays . . . . . . . . . . . . . . . . . 219
3.6 Condition number and RGA . . . . . . . . . . . . . . . . . . . . . 87 6.5 Limitations imposed by RHP-zeros . . . . . . . . . . . . . . . . . . 220
CONTENTS vii viii MULTIVARIABLE FEEDBACK CONTROL

6.6 Limitations imposed by unstable (RHP) poles . . . . . . . . . . . . 223 10.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
6.7 RHP-poles combined with RHP-zeros . . . . . . . . . . . . . . . . 224 10.2 Optimization and control . . . . . . . . . . . . . . . . . . . . . . . 407
6.8 Performance requirements imposed by disturbances . . . . . . . . . 226 10.3 Selection of controlled outputs . . . . . . . . . . . . . . . . . . . . 410
6.9 Limitations imposed by input constraints . . . . . . . . . . . . . . . 228 10.4 Selection of manipulations and measurements . . . . . . . . . . . . 416
6.10 Limitations imposed by uncertainty . . . . . . . . . . . . . . . . . 234 10.5 RGA for non-square plant . . . . . . . . . . . . . . . . . . . . . . 418
6.11 MIMO Input-output controllability . . . . . . . . . . . . . . . . . . 246 10.6 Control configuration elements . . . . . . . . . . . . . . . . . . . . 420
6.12 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 10.7 Hierarchical and partial control . . . . . . . . . . . . . . . . . . . . 429
10.8 Decentralized feedback control . . . . . . . . . . . . . . . . . . . . 441
7 UNCERTAINTY AND ROBUSTNESS FOR SISO SYSTEMS . . . . 253 10.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
7.1 Introduction to robustness . . . . . . . . . . . . . . . . . . . . . . . 253
7.2 Representing uncertainty . . . . . . . . . . . . . . . . . . . . . . . 255 11 MODEL REDUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . 459
7.3 Parametric uncertainty . . . . . . . . . . . . . . . . . . . . . . . . 258 11.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
7.4 Representing uncertainty in the frequency domain . . . . . . . . . . 259 11.2 Truncation and residualization . . . . . . . . . . . . . . . . . . . . 460
7.5 SISO Robust stability . . . . . . . . . . . . . . . . . . . . . . . . . 270 11.3 Balanced realizations . . . . . . . . . . . . . . . . . . . . . . . . . 462
7.6 SISO Robust performance . . . . . . . . . . . . . . . . . . . . . . 277 11.4 Balanced truncation and balanced residualization . . . . . . . . . . 463
7.7 Examples of parametric uncertainty . . . . . . . . . . . . . . . . . 284 11.5 Optimal Hankel norm approximation . . . . . . . . . . . . . . . . . 464
7.8 Additional exercises . . . . . . . . . . . . . . . . . . . . . . . . . . 289 11.6 Two practical examples . . . . . . . . . . . . . . . . . . . . . . . . 467
7.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 11.7 Reduction of unstable models . . . . . . . . . . . . . . . . . . . . . 476
11.8 Model reduction using MATLAB . . . . . . . . . . . . . . . . . . . 477
8 ROBUST STABILITY AND PERFORMANCE ANALYSIS . . . . . . 293 11.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
8.1 General control configuration with uncertainty . . . . . . . . . . . . 293
12 CASE STUDIES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
8.2 Representing uncertainty . . . . . . . . . . . . . . . . . . . . . . . 296
8.3 Obtaining P , N and M . . . . . . . . . . . . . . . . . . .
12.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
. . . . . 303
12.2 Helicopter control . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
8.4 Definitions of robust stability and robust performance . . . . . . . . 305
12.3 Aero-engine control . . . . . . . . . . . . . . . . . . . . . . . . . . 490
8.5 Robust stability of the M -structure . . . . . . . . . . . . . . . . . 307
12.4 Distillation process . . . . . . . . . . . . . . . . . . . . . . . . . . 500
8.6 RS for complex unstructured uncertainty . . . . . . . . . . . . . . . 309
12.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506
8.7 RS with structured uncertainty: Motivation . . . . . . . . . . . . . . 312
8.8 The structured singular value . . . . . . . . . . . . . . . . . . . . . 314 A MATRIX THEORY AND NORMS . . . . . . . . . . . . . . . . . . . . 509
8.9 Robust stability with structured uncertainty . . . . . . . . . . . . . 322 A.1 Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509
8.10 Robust performance . . . . . . . . . . . . . . . . . . . . . . . . . . 326 A.2 Eigenvalues and eigenvectors . . . . . . . . . . . . . . . . . . . . . 512
8.11 Application: RP with input uncertainty . . . . . . . . . . . . . . . . 330 A.3 Singular Value Decomposition . . . . . . . . . . . . . . . . . . . . 515
8.12 -synthesis and DK -iteration . . . . . . . . . . . . . . . . . . . . 339 A.4 Relative Gain Array . . . . . . . . . . . . . . . . . . . . . . . . . . 522
8.13 Further remarks on  . . . . . . . . . . . . . . . . . . . . . . . . . 348 A.5 Norms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526
8.14 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 A.6 Factorization of the sensitivity function . . . . . . . . . . . . . . . 539
A.7 Linear fractional transformations . . . . . . . . . . . . . . . . . . . 541
9 CONTROLLER DESIGN . . . . . . . . . . . . . . . . . . . . . . . . . 355
9.1 Trade-offs in MIMO feedback design . . . . . . . . . . . . . . . . 355 B PROJECT WORK and SAMPLE EXAM . . . . . . . . . . . . . . . . 545
9.2 LQG control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359 B.1 Project work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
9.3 H2 and H1 control . . . . . . . . . . . . . . . . . . . . . . . . . . 368 B.2 Sample exam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546
9.4 H1 loop-shaping design . . . . . . . . . . . . . . . . . . . . . . . 382
9.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403 BIBLIOGRAPHY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551

10 CONTROL STRUCTURE DESIGN . . . . . . . . . . . . . . . . . . . 405 INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561


x MULTIVARIABLE FEEDBACK CONTROL

The prerequisites for reading this book are an introductory course in classical
single-input single-output (SISO) control and some elementary knowledge of
matrices and linear algebra. Parts of the book can be studied alone, and provide an
appropriate background for a number of linear control courses at both undergraduate
and graduate levels: classical loop-shaping control, an introduction to multivariable
control, advanced multivariable control, robust control, controller design, control

PREFACE structure design and controllability analysis.


The book is partly based on a graduate multivariable control course given by the
first author in the Cybernetics Department at the Norwegian University of Science
and Technology in Trondheim. About 10 students from Electrical, Chemical and
Mechanical Engineering have taken the course each year since 1989. The course
This is a book on practical feedback control and not on system theory generally. has usually consisted of 3 lectures a week for 12 weeks. In addition to regular
Feedback is used in control systems to change the dynamics of the system (usually assignments, the students have been required to complete a 50 hour design project
to make the response stable and sufficiently fast), and to reduce the sensitivity of the using MATLAB. In Appendix B, a project outline is given together with a sample
system to signal uncertainty (disturbances) and model uncertainty. Important topics exam.
covered in the book, include
Examples and internet
 classical frequency-domain methods
 analysis of directions in multivariable systems using the singular value Most of the numerical examples have been solved using MATLAB. Some sample
decomposition files are included in the text to illustrate the steps involved. Most of these files use
 input-output controllability (inherent control limitations in the plant) the -toolbox, and some the Robust Control toolbox, but in most cases the problems
 model uncertainty and robustness could have been solved easily using other software packages.
 performance requirements
 methods for controller design and model reduction The following are available over the internet:
 control structure selection and decentralized control
 MATLAB files for examples and figures
The treatment is for linear systems. The theory is then much simpler and more well  Solutions to selected exercises
developed, and a large amount of practical experience tells us that in many cases  Linear state-space models for plants used in the case studies
linear controllers designed using linear methods provide satisfactory performance  Corrections, comments to chapters, extra exercises and exam sets
when applied to real nonlinear plants.
We have attempted to keep the mathematics at a reasonably simple level, and we This information can be accessed from the authors’ home pages:
emphasize results that enhance insight and intuition. The design methods currently
available for linear systems are well developed, and with associated software it
 http://www.chembio.ntnu.no/users/skoge
is relatively straightforward to design controllers for most multivariable plants.
However, without insight and intuition it is difficult to judge a solution, and to know
 http://www.le.ac.uk/engineering/staff/Postlethwaite
how to proceed (e.g. how to change weights) in order to improve a design.
The book is appropriate for use as a text for an introductory graduate course Comments and questions
in multivariable control or for an advanced undergraduate course. We also think
it will be useful for engineers who want to understand multivariable control, its Please send questions, errors and any comments you may have to the authors. Their
limitations, and how it can be applied in practice. There are numerous worked email addresses are:
examples, exercises and case studies which make frequent use of MATLAB TM 1 .
 [email protected]
1 MATLAB is a registered trademark of The MathWorks, Inc.  [email protected]
PREFACE xi xii MULTIVARIABLE FEEDBACK CONTROL

Acknowledgements edition are available on the web. We have tried to minimize the changes in numbering
of pages, figures, examples, exercises and equation, so there should be little problem
The contents of the book are strongly influenced by the ideas and courses of
in using the two editions in parallel.
Professors John Doyle and Manfred Morari from the first author’s time as a graduate
student at Caltech during the period 1983-1986, and by the formative years, 1975-
1981, the second author spent at Cambridge University with Professor Alistair
MacFarlane. We thank the organizers of the 1993 European Control Conference for
inviting us to present a short course on applied H 1 control, which was the starting
point for our collaboration. The final manuscript began to take shape in 1994-95
during a stay the authors had at the University of California at Berkeley – thanks to
Andy Packard, Kameshwar Poolla, Masayoshi Tomizuka and others at the BCCI-lab,
and to the stimulating coffee at Brewed Awakening.
We are grateful for the numerous technical and editorial contributions of Yi Cao,
Kjetil Havre, Ghassan Murad and Ying Zhao. The computations for Example 4.5
were performed by Roy S. Smith who shared an office with the authors at Berkeley.
Helpful comments and corrections were provided by Richard Braatz, Jie Chen,
Atle C. Christiansen, Wankyun Chung, Bjørn Glemmestad, John Morten Godhavn,
Finn Are Michelsen and Per Johan Nicklasson. A number of people have assisted
in editing and typing various versions of the manuscript, including Zi-Qin Wang,
Yongjiang Yu, Greg Becker, Fen Wu, Regina Raag and Anneli Laur. We also
acknowledge the contributions from our graduate students, notably Neale Foster,
Morten Hovd, Elling W. Jacobsen, Petter Lundström, John Morud, Raza Samar and
Erik A. Wolff.
The aero-engine model (Chapters 11 and 12) and the helicopter model
(Chapter 12) are provided with the kind permission of Rolls-Royce Military Aero
Engines Ltd, and the UK Ministry of Defence, DRA Bedford, respectively.
Finally, thanks to colleagues and former colleagues at Trondheim and Caltech
from the first author, and at Leicester, Oxford and Cambridge from the second author.
We have made use of material from several books. In particular, we recommend
Zhou, Doyle and Glover (1996) as an excellent reference on system theory and H 1
control. Of the others we would like to acknowledge, and recommend for further
reading, the following: Rosenbrock (1970), Rosenbrock (1974), Kwakernaak and
Sivan (1972), Kailath (1980), Chen (1984), Francis (1987), Anderson and Moore
(1989), Maciejowski (1989), Morari and Zafiriou (1989), Boyd and Barratt (1991),
Doyle et al. (1992), Green and Limebeer (1995), Levine (1995), and the MATLAB
toolbox manuals of Grace et al. (1992), Balas et al. (1993) and Chiang and Safonov
(1992).

Second edition
In this second edition, we have corrected a number of minor mistakes and made
numerous changes and additions to the text, partly arising from the many questions
and comments we have received from interested readers. All corrections to the first
PREFACE xiii

Blank page

1
INTRODUCTION
In this chapter, we begin with a brief outline of the design process for control systems. We
then discuss linear models and transfer functions which are the basic building blocks for the
analysis and design techniques presented in this book. The scaling of variables is critical in
applications and so we provide a simple procedure for this. An example is given to show how
to derive a linear model in terms of deviation variables for a practical application. Finally, we
summarize the most important notation used in the book.

1.1 The process of control system design


The process of designing a control system usually makes many demands of the
engineer or engineering team. These demands often emerge in a step by step design
procedure as follows:
1. Study the system (plant) to be controlled and obtain initial information about the
control objectives.
2. Model the system and simplify the model, if necessary.
3. Scale the variables and analyze the resulting model; determine its properties.
4. Decide which variables are to be controlled (controlled outputs).
5. Decide on the measurements and manipulated variables: what sensors and
actuators will be used and where will they be placed?
6. Select the control configuration.
7. Decide on the type of controller to be used.
8. Decide on performance specifications, based on the overall control objectives.
9. Design a controller.
10. Analyze the resulting controlled system to see if the specifications are satisfied;
and if they are not satisfied modify the specifications or the type of controller.
11. Simulate the resulting controlled system, either on a computer or a pilot plant.
12. Repeat from step 2, if necessary.
13. Choose hardware and software and implement the controller.
14. Test and validate the control system, and tune the controller on-line, if necessary.
2 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION 3

Control courses and text books usually focus on steps 9 and 10 in the above counteract the effect of a disturbance d. The servo problem is to manipulate u to
procedure; that is, on methods for controller design and control system analysis. keep the output close to a given reference input r. Thus, in both cases we want the
Interestingly, many real control systems are designed without any consideration control error e = y r to be small. The algorithm for adjusting u based on the
of these two steps. For example, even for complex systems with many inputs and available information is the controller K . To arrive at a good design for K we need
outputs, it may be possible to design workable control systems, often based on a a priori information about the expected disturbances and reference inputs, and of the
hierarchy of cascaded control loops, using only on-line tuning (involving steps 1, 4 plant model (G) and disturbance model (G d ). In this book we make use of linear
5, 6, 7, 13 and 14). However, in this case a suitable control structure may not be models of the form
known at the outset, and there is a need for systematic tools and insights to assist y = Gu + Gd d (1.1)
the designer with steps 4, 5 and 6. A special feature of this book is the provision
A major source of difficulty is that the models (G, G d ) may be inaccurate or may
of tools for input-output controllability analysis (step 3) and for control structure
change with time. In particular, inaccuracy in G may cause problems because the
design (steps 4, 5, 6 and 7).
plant will be part of a feedback loop. To deal with such a problem we will make
Input-output controllability is the ability to achieve acceptable control perfor-
use of the concept of model uncertainty. For example, instead of a single model G
mance. It is affected by the location of sensors and actuators, but otherwise it cannot
we may study the behaviour of a class of models, G p = G + E , where the model
be changed by the control engineer. Simply stated, “even the best control system can-
“uncertainty” or “perturbation” E is bounded, but otherwise unknown. In most cases
not make a Ferrari out of a Volkswagen”. Therefore, the process of control system
weighting functions, w(s), are used to express E = w in terms of normalized
design should in some cases also include a step 0, involving the design of the pro-
perturbations, , where the magnitude (norm) of  is less than or equal to 1. The
cess equipment itself. The idea of looking at process equipment design and control
following terms are useful:
system design as an integrated whole is not new, as is clear from the following quote
taken from a paper by Ziegler and Nichols (1943): Nominal stability (NS). The system is stable with no model uncertainty.
In the application of automatic controllers, it is important to realize that Nominal Performance (NP). The system satisfies the performance specifications
controller and process form a unit; credit or discredit for results obtained with no model uncertainty.
are attributable to one as much as the other. A poor controller is often
able to perform acceptably on a process which is easily controlled. The Robust stability (RS). The system is stable for all perturbed plants about the
finest controller made, when applied to a miserably designed process, nominal model up to the worst-case model uncertainty.
may not deliver the desired performance. True, on badly designed
Robust performance (RP). The system satisfies the performance specifications for
processes, advanced controllers are able to eke out better results than
all perturbed plants about the nominal model up to the worst-case model
older models, but on these processes, there is a definite end point which
uncertainty.
can be approached by instrumentation and it falls short of perfection.
Ziegler and Nichols then proceed to observe that there is a factor in equipment design
that is neglected, and state that
1.3 Transfer functions
. . . the missing characteristic can be called the “controllability”, the
ability of the process to achieve and maintain the desired equilibrium The book makes extensive use of transfer functions, G(s), and of the frequency
value. domain, which are very useful in applications for the following reasons:
To derive simple tools with which to quantify the inherent input-output
 Invaluable insights are obtained from simple frequency-dependent plots.
controllability of a plant is the goal of Chapters 5 and 6.
 Important concepts for feedback such as bandwidth and peaks of closed-loop
transfer functions may be defined.
 G(j!) gives the response to a sinusoidal input of frequency !.
1.2 The control problem  A series interconnection of systems corresponds in the frequency domain to
multiplication of the individual system transfer functions, whereas in the time
The objective of a control system is to make the output y behave in a desired way domain the evaluation of complicated convolution integrals is required.
by manipulating the plant input u. The regulator problem is to manipulate u to  Poles and zeros appear explicitly in factorized scalar transfer functions.
4 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION 5

 Uncertainty is more easily handled in the frequency domain. This is related to the For multivariable systems, G(s) is a matrix of transfer functions. In (1.6) n is the
fact that two systems can be described as close (i.e. have similar behaviour) if their order of the denominator (or pole polynomial) and is also called the order of the
frequency responses are similar. On the other hand, a small change in a parameter system, and nz is the order of the numerator (or zero polynomial). Then n n z is
in a state-space description can result in an entirely different system response. referred to as the pole excess or relative order.

We consider linear, time-invariant systems whose input-output responses are Definition 1.1
governed by linear ordinary differential equations with constant coefficients. An
 A system G(s) is strictly proper if G(j! ) ! 0 as ! ! 1.
example of such a system is
 A system G(s) is semi-proper or bi-proper if G(j! ) ! D 6= 0 as ! ! 1.
x_ 1 (t) = a1 x1 (t) + x2 (t) + 1 u(t)  A system G(s) which is strictly proper or semi-proper is proper.
x_ 2 (t) = a0 x1 (t) + 0 u(t) (1.2)  A system G(s) is improper if G(j! ) ! 1 as ! ! 1.
y(t) = x1 (t) For a proper system, with n  n z , we may realize (1.6) by a state-space description,
where x_ (t)  dx=dt. ’ Here u(t) represents the input signal, x 1 (t) and x2 (t) the x_ = Ax + Bu; y = Cx + Du, similar to (1.2). The transfer function may then be
states, and y (t) the output signal. The system is time-invariant since the coefficients written as
a1 ; a0 ; 1 and 0 are independent of time. If we apply the Laplace transform to (1.2) G(s) = C (sI A) 1 B + D (1.7)
we obtain Remark. All practical systems will have zero gain at a sufficiently high frequency, and are
sx1 (s) x1 (t = 0) = a1 x1 (s) + x2 (s) + 1 u(s) therefore strictly proper. It is often convenient, however, to model high frequency effects by
a non-zero D-term, and hence semi-proper models are frequently used. Furthermore, certain
sx2 (s) x2 (t = 0) = a0 x1 (s) + 0 u(s)
derived transfer functions, such as S = (I + GK ) 1 , are semi-proper.
(1.3)
y(s) = x1 (s)
Usually we use G(s) to represent the effect of the inputs u on the outputs y , whereas
where y(s) denotes the Laplace transform of y (t), and so on. To simplify our
presentation we will make the usual abuse of notation and replace y(s) by y (s),
Gd (s) represents the effect on y of the disturbances d. We then have the following
linear process model in terms of deviation variables
etc.. In addition, we will omit the independent variables s and t when the meaning is
clear. y(s) = G(s)u(s) + Gd (s)d(s) (1.8)
If u(t); x1 (t); x2 (t) and y (t) represent deviation variables away from a nominal
operating point or trajectory, then we can assume x 1 (t = 0) = x2 (t = 0) = 0. The We have made use of the superposition principle for linear systems, which implies
elimination of x 1 (s) and x2 (s) from (1.3) then yields the transfer function that a change in a dependent variable (here y ) can simply be found by adding together
the separate effects resulting from changes in the independent variables (here u and
y(s) s + 0
= G(s) = 2 1 (1.4) d) considered one at a time.
u(s) s + a1 s + a0 All the signals u(s), d(s) and y (s) are deviation variables. This is sometimes
shown explicitly, for example, by use of the notation Æu(s), but since we always use
Importantly, for linear systems, the transfer function is independent of the input
deviation variables when we consider Laplace transforms, the Æ is normally omitted.
signal (forcing function). Notice that the transfer function in (1.4) may also represent
the following system

y(t) + a1 y_ (t) + a0 y(t) = 1 u_ (t) + 0 u(t) (1.5) 1.4 Scaling


with input u(t) and output y (t). Scaling is very important in practical applications as it makes model analysis and
Transfer functions, such as G(s) in (1.4), will be used throughout the book to controller design (weight selection) much simpler. It requires the engineer to make
model systems and their components. More generally, we consider rational transfer a judgement at the start of the design process about the required performance of the
functions of the form system. To do this, decisions are made on the expected magnitudes of disturbances
snz +    + 1 s + 0
G(s) = n nz n 1
and reference changes, on the allowed magnitude of each input signal, and on the
s + an 1 s +    + a1 s + a0
(1.6) allowed deviation of each output.
6 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION 7

Let the unscaled (or originally scaled) linear model of the process in deviation then yields the following model in terms of scaled variables
variables be
yb = Gbub + Gbd db; be = yb rb (1.9)
y = Gu + Gd d; e = y r (1.15)

where a hat ( b ) is used to show that the variables are in their unscaled units. A Here u and d should be less than 1 in magnitude, and it is useful in some cases to
useful approach for scaling is to make the variables less than one in magnitude. This introduce a scaled reference re, which is less than 1 in magnitude. This is done by
is done by dividing each variable by its maximum expected or allowed change. For dividing the reference by the maximum expected reference change
disturbances and manipulated inputs, we use the scaled variables re = rb=rbmax = Dr 1 rb (1.16)
d= d=
b dbmax ; u = ub=ubmax (1.10) We then have that

where: r = Rre where R , De 1 Dr = rbmax =ebmax (1.17)

 dbmax — largest expected change in disturbance Here R is the largest expected change in reference relative to the allowed control
 ubmax — largest allowed input change d re
The maximum deviation from a nominal value should be chosen by thinking of the
maximum value one can expect, or allow, as a function of time.
The variables yb, eb and rb are in the same units, so the same scaling factor should be
? ?
applied to each. Two alternatives are possible:
Gd R
 ebmax — largest allowed control error r
 rbmax — largest expected change in reference value
Since a major objective of control is to minimize the control error eb, we here usually
u - G e+
-+ ? y
-+ e?- -e
choose to scale with respect to the maximum control error:
Figure 1.1: Model in terms of scaled variables
y = yb=ebmax; r = rb=ebmax; e = be=ebmax (1.11)
error (typically, R  1). The block diagram for the system in scaled variables may
To formalize the scaling procedure, introduce the scaling factors then be written as in Figure 1.1, for which the following control objective is relevant:
De = ebmax ; Du = ubmax; Dd = dbmax ; Dr = rbmax (1.12)  In terms of scaled variables we have that jd(t)j  1 and jre(t)j  1, and our control
objective is to manipulate u with ju(t)j  1 such that je(t)j = jy (t) r(t)j  1
For MIMO systems each variable in the vectors db, rb, u
b and be may have a different (at least most of the time).
maximum value, in which case D e , Du , Dd and Dr become diagonal scaling
matrices. This ensures, for example, that all errors (outputs) are of about equal Remark 1 A number of the interpretations used in the book depend critically on a correct
importance in terms of their magnitude. scaling. In particular, this applies to the input-output controllability analysis presented in
Chapters 5 and 6. Furthermore, for a MIMO system one cannot correctly make use of the
sensitivity function S = (I + GK ) 1 unless the output errors are of comparable magnitude.
The corresponding scaled variables to use for control purposes are then

d = Dd 1 d;b u = Du 1 ub; y = De 1 yb; e = De 1 eb; r = De 1 rb (1.13) Remark 2 With the above scalings, the worst-case behaviour of a system is analyzed by
considering disturbances d of magnitude 1, and references re of magnitude 1.
On substituting (1.13) into (1.9) we get
Remark 3 The control error is
De y = GD
b uu + G
bd Dd d; De e = De y De r
e = y r = Gu + Gd d Rre (1.18)
and introducing the scaled transfer functions and we see that a normalized reference change re may be viewed as a special case of a
disturbance with Gd = R, where R is usually a constant diagonal matrix. We will
G = De 1 GD
b u ; Gd = D 1 G
e b d Dd (1.14) sometimes use this to unify our treatment of disturbances and references.
8 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION 9

Remark 4 The scaling of the outputs in (1.11) in terms of the control error is used when the linearized model in deviation variables (Æx; Æu) is

@f  @f 
analyzing a given plant. However, if the issue is to select which outputs to control, see    
dÆx(t)
Section 10.3, then one may choose to scale the outputs with respect to their expected variation
(which is usually similar to rbmax ).
= Æx(t) + Æu(t) (1.20)
dt @x @u
| {z } | {z }
A B
Remark 5 If the expected or allowed variation of a variable about 0 (its nominal value) is not
symmetric, then the largest variation should be used for dbmax and the smallest variation for Here x and u may be vectors, in which case the Jacobians A and B are matrices.
 
ubmax and ebmax . For example, if the disturbance is 5 db 10 then dbmax = 10, and if the 4. Scale the variables to obtain scaled models which are more suitable for control
manipulated input is 5  ub 10 then ubmax = 5. This approach may be conservative (in purposes.
terms of allowing too large disturbances etc.) when the variations for several variables are not
symmetric. In most cases steps 2 and 3 are performed numerically based on the model obtained
in step 1. Also, since (1.20) is in terms of deviation variables, its Laplace transform
A further discussion on scaling and performance is given in Chapter 5 on page 161. becomes sÆx(s) = AÆx(s) + BÆu(s), or

Æx(s) = (sI A) 1 BÆu(s) (1.21)

1.5 Deriving linear models


Example 1.1 Physical model of a room heating process.
Linear models may be obtained from physical “first-principle” models, from
analyzing input-output data, or from a combination of these two approaches. To [K ]
Although modelling and system identification are not covered in this book, it is
KA
always important for a control engineer to have a good understanding of a model’s
origin. The following steps are usually taken when deriving a linear model for A
controller design based on a first-principle approach: [W=K ]
T [K ]
1. Formulate a nonlinear state-space model based on physical knowledge.
2. Determine the steady-state operating point (or trajectory) about which to linearize. CV [J=K ]
3. Introduce deviation variables and linearize the model. There are essentially three
parts to this step:
(a) Linearize the equations using a Taylor expansion where second and higher A  A  A  A  A  A  AA

order terms are omitted.
Q[W ]
AA
(b) Introduce the deviation variables, e.g. Æx(t) defined by

Æx(t) = x(t) x Figure 1.2: Room heating process

where the superscript  denotes the steady-state operating point or trajectory The above steps for deriving a linear model will be illustrated on the simple example
along which we are linearizing. depicted in Figure 1.2, where the control problem is to adjust the heat input Q to maintain
(c) Subtract the steady-state to eliminate the terms involving only steady-state 
constant room temperature T (within 1 K). The outdoor temperature To is the main
quantities. disturbance. Units are shown in square brackets.
1. Physical model. An energy balance for the room requires that the change in energy in
These parts are usually accomplished together. For example, for a nonlinear state- the room must equal the net inflow of energy to the room (per unit of time). This yields the
space model of the form following state-space model
dx d (C T ) = Q + (T T )
= f (x; u)
dt V o
(1.19) (1.22)
dt
10 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION 11

where T [K] is the room temperature, CV [J/K] is the heat capacity of the room, Q [W] is the 1.6 Notation
heat input (from some heat source), and the term (To T ) [W] represents the net heat loss
due to exchange of air and heat conduction through the walls. There is no standard notation to cover all of the topics covered in this book. We
2. Operating point. Consider a case where the heat input Q is 2000 W and the difference have tried to use the most familiar notation from the literature whenever possible,
between indoor and outdoor temperatures T  To is 20 K. Then the steady-state energy
balance yields  = 2000=20 = 100 W/K. We assume the room heat capacity is constant,
but an overriding concern has been to be consistent within the book, to ensure that
the reader can follow the ideas and techniques through from one chapter to another.
CV = 100 kJ/K. (This value corresponds approximately to the heat capacity of air in a room
of about 100 m3 ; thus we neglect heat accumulation in the walls.)
The most important notation is summarized in Figure 1.3, which shows a one
3. Linear model in deviation variables. If we assume is constant the model in (1.22) is degree-of-freedom control configuration with negative feedback, a two degrees-of-
already linear. Then introducing deviation variables freedom control configuration 1, and a general control configuration. The latter can
ÆT (t) = T (t) T  (t); ÆQ(t) = Q(t) Q (t); ÆTo (t) = To (t) To (t)
be used to represent a wide class of controllers, including the one and two degrees-
of-freedom configurations, as well as feedforward and estimation schemes and many
yields others; and, as we will see, it can also be used to formulate optimization problems
CV d ÆT (t) = ÆQ(t) + (ÆTo (t) ÆT (t)) (1.23) for controller design. The symbols used in Figure 1.3 are defined in Table 1.1. Apart
dt from the use of v to represent the controller inputs for the general configuration, this
Remark. If depended on the state variable (T in this example), or on one of the independent notation is reasonably standard.
variables of interest (Q or To in this example), then one would have to include an extra term
Lower-case letters are used for vectors and signals (e.g. u, y , n), and capital letters
(T  To )Æ (t) on the right hand side of Equation (1.23).
for matrices, transfer functions and systems (e.g. G, K ). Matrix elements are usually
On taking Laplace transforms in (1.23), assuming ÆT (t) = 0 at t = 0, and rearranging we denoted by lower-case letters, so g ij is the ij ’th element in the matrix G. However,
get   sometimes we use upper-case letters G ij , for example if G is partitioned so that G ij
ÆT (s) = 1 1
ÆQ(s) + ÆTo (s) ;  = CV (1.24) is itself a matrix, or to avoid conflicts in notation. The Laplace variable s is often
s + 1 omitted for simplicity, so we often write G when we mean G(s).
3
The time constant for this example is  = 100  10 =100 = 1000 s  17 min which is For state-space realizations we use the standard (A; B; C; D)-notation. That is,
reasonable. It means that for a step increase in heat input it will take about 17min for the
a system G with a state-space realization (A; B; C; D) has a transfer function
temperature to reach 63% of its steady-state increase.
4. Linear model in scaled variables. Introduce the following scaled variables
G(s) = C (sI A) 1 B + D. We sometimes write
 
y (s) = ÆT (s) ; u(s) = ÆQ(s) ; d(s) = ÆTo (s) (1.25) G(s) =s A B
ÆTmax ÆQmax ÆTo;max C D (1.27)
In our case the acceptable variations in room temperature T are 1 K, i.e. ÆTmax = Æemax =
1 K. Furthermore, the heat input can vary between 0 W and 6000 W, and since its nominal to mean that the transfer function G(s) has a state-space realization given by the
value is 2000 W we have ÆQmax = 2000 W (see Remark 5 on page 8). Finally, the expected quadruple (A; B; C; D).
variations in outdoor temperature are 10 K, i.e. ÆTo;max = 10 K. The model in terms of For closed-loop transfer functions we use S to denote the sensitivity at the plant
scaled variables then becomes output, and T = I S to denote the complementary sensitivity. With negative
G(s) = 1 ÆQmax 1 = 20 feedback, S = (I + L) 1 and T = L(I + L) 1 , where L is the transfer function
s + 1 ÆTmax 1000s + 1 around the loop as seen from the output. In most cases L = GK , but if we
Gd (s) = 1 ÆTo;max = 10 also include measurement dynamics (y m = Gm y + n) then L = GKGm . The
(1.26)
s + 1 ÆTmax 1000s + 1 corresponding transfer functions as seen from the input of the plant are L I = KG
Note that the static gain for the input is k = 20, whereas the static gain for the disturbance is (or LI = KGm G), SI = (I + LI ) 1 and TI = LI (I + LI ) 1 .
kd = 10. The fact that jkd j > 1 means that we need some control (feedback or feedforward) To represent uncertainty we use perturbations E (not normalized) or perturbations
to keep the output within its allowed bound (jej  1) when there is a disturbance of magnitude  (normalized such that their magnitude (norm) is less than or equal to one).
jdj = 1. The fact that jkj > jkd j means that we have enough “power” in the inputs to reject the The nominal plant model is G, whereas the perturbed model with uncertainty is
disturbance at steady state, that is, we can, using an input of magnitude juj  1, have perfect
disturbance rejection (e = 0) for the maximum disturbance (jdj = 1). We will return with a
denoted Gp (usually for a set of possible perturbed plants) or G 0 (usually for a
detailed discussion of this in Section 5.16.2 where we analyze the input-output controllability 1 A one-degree of freedom controller has only the control error r ym as its input, whereas the two
of the room heating process. degrees-of-freedom controller has two inputs, namely r and ym .
12 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION 13

d
?
Gd
Table 1.1: Nomenclature

r -+ e - K u - G -+ e?+ q -y
6- K controller, in whatever configuration. Sometimes the controller is broken
ym down into its constituent parts. For example,
 in the two degrees-of-

e+ freedom controller in Figure 1.3(b), K = K Kr where K is a prefilter


y r
+ 6 and Ky is the feedback controller.

n For the conventional control configurations (Figure 1.3(a) and (b)):


(a) One degree-of-freedom control configuration G plant model
Gd disturbance model
r reference inputs (commands, setpoints)
d disturbances (process noise)
d n
?
measurement noise
y plant outputs. These signals include the variables to be controlled
Gd (“primary” outputs with reference values r) and possibly some additional
“secondary” measurements to improve control. Usually the signals y are
r - u - -+ e?+ q -y measurable.
- K G ym
u
measured y
control signals (manipulated plant inputs)
ym
e+ For the general control configuration (Figure 1.3(c)):
P generalized plant model. It will include G and G d and the interconnection
+ 6 structure between the plant and the controller. In addition, if P is being
n used to formulate a design problem, then it will also include weighting
(b) Two degrees-of-freedom control configuration functions.
w exogenous inputs: commands, disturbances and noise
z exogenous outputs; “error” signals to be minimized, e.g. y r
w - -z v
-
controller inputs for the general configuration, e.g. commands, measured
P plant outputs, measured disturbances, etc. For the special case of a one
u v degree-of-freedom controller with perfect measurements we have v =
K  u
r y.
control signals
(c) General control configuration

Figure 1.3: Control configurations


14 MULTIVARIABLE FEEDBACK CONTROL

particular perturbed plant). For example, with additive uncertainty we may have
Gp = G + EA = G + wA A , where wA is a weight representing the magnitude of

2
the uncertainty.
By the right-half plane (RHP) we mean the closed right half of the complex plane,
including the imaginary axis (j! -axis). The left-half plane (LHP) is the open left half
of the complex plane, excluding the imaginary axis. A RHP-pole (unstable pole) is
a pole located in the right-half plane, and thus includes poles on the imaginary axis.
Similarly, a RHP-zero (“unstable” zero) is a zero located in the right-half plane. CLASSICAL FEEDBACK
We use AT to denote the transpose of a matrix A, and A H to represent its complex
conjugate transpose. CONTROL
Mathematical terminology
def
The symbol , is used to denote equal by definition, , is used to denote equivalent In this chapter, we review the classical frequency-response techniques for the analysis and
by definition, and A  B means that A is identically equal to B . design of single-loop (single-input single-output, SISO) feedback control systems. These
loop-shaping techniques have been successfully used by industrial control engineers for
decades, and have proved to be indispensable when it comes to providing insight into the
Let A and B be logic statements. Then the following expressions are equivalent:
A(B
benefits, limitations and problems of feedback control. During the 1980’s the classical methods
were extended to a more formal method based on shaping closed-loop transfer functions, for
A if B, or: If B then A H
example, by considering the 1 norm of the weighted sensitivity function. We introduce this
A is necessary for B method at the end of the chapter.
B ) A, or: B implies A The same underlying ideas and techniques will recur throughout the book as we present
B is sufficient for A practical procedures for the analysis and design of multivariable (multi-input multi-output,
B only if A MIMO) control systems.
not A ) not B
The remaining notation, special terminology and abbreviations will be defined in the
text. 2.1 Frequency response
On replacing s by j! in a transfer function model G(s) we get the so-called
frequency response description. Frequency responses can be used to describe:
1. A system’s response to sinusoids of varying frequency,
2. The frequency content of a deterministic signal via the Fourier transform, and
3. the frequency distribution of a stochastic signal via the power spectral density
function.
In this book we use the first interpretation, namely that of frequency-by-frequency
sinusoidal response. This interpretation has the advantage of being directly linked to
the time domain, and at each frequency ! the complex number G(j! ) (or complex
matrix for a MIMO system) has a clear physical interpretation. It gives the response
to an input sinusoid of frequency ! . This will be explained in more detail below. For
the other two interpretations we cannot assign a clear physical meaning to G(j! ) or
y(j!) at a particular frequency – it is the distribution relative to other frequencies
which matters then.
16 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 17

One important advantage of a frequency response analysis of a system is that 2 y(t)


it provides insight into the benefits and trade-offs of feedback control. Although
this insight may be obtained by viewing the frequency response in terms of its 1 u(t)
relationship between power spectral densities, as is evident from the excellent
0
treatment by Kwakernaak and Sivan (1972), we believe that the frequency-by-
frequency sinusoidal response interpretation is the most transparent and useful. −1

−2
Frequency-by-frequency sinusoids 0 10 20 30 40 50 60 70 80 90 100
Time [sec]
We now want to give a physical picture of frequency response in terms of a system’s
response to persistent sinusoids. It is important that the reader has this picture in Figure 2.1: Sinusoidal response for system G(s) = 5e 2s =(10s + 1) at frequency ! =
mind when reading the rest of the book. For example, it is needed to understand 0:2 rad/s
the response of a multivariable system in terms of its singular value decomposition.
A physical interpretation of the frequency response for a stable linear system y =
At frequency ! = 0:2 rad/s, we see that the output y lags behind the input by about
G(s)u is as follows. Apply a sinusoidal input signal with frequency ! [rad/s] and
magnitude u0 , such that
a quarter of a period and that the amplitude of the output is approximately twice that
u(t) = u0 sin(!t + ) of the input. More accurately, the amplification is
p p
This input signal is persistent, that is, it has been applied since t = 1. Then the jG(j!)j = k= (!)2 + 1 = 5= (10!)2 + 1 = 2:24
output signal is also a persistent sinusoid of the same frequency, namely and the phase shift is
y(t) = y0 sin(!t + )  = \G(j!) = arctan(!) ! = arctan(10!) 2! = 1:51 rad = 86:5Æ
Here u0 and y0 represent magnitudes and are therefore both non-negative. Note that G(j!) is called the frequency response of the system G(s). It describes how the
the output sinusoid has a different amplitude y 0 and is also shifted in phase from the system responds to persistent sinusoidal inputs of frequency ! . The magnitude of the
input by frequency response, jG(j! )j, being equal to jy 0 (! )j=ju0 (! )j, is also referred to as
, the system gain. Sometimes the gain is given in units of dB (decibel) defined as
Importantly, it can be shown that y 0 =u0 and  can be obtained directly from the A [dB] = 20 log10 A (2.4)
Laplace transform G(s) after inserting the imaginary number s = j! and evaluating p
the magnitude and phase of the resulting complex number G(j! ). We have For example, A = 2 corresponds to A = 6:02 dB, and A = 2 corresponds to
A = 3:01 dB, and A = 1 corresponds to A = 0 dB.
y0 =u0 = jG(j!)j;  = \G(j!) [rad] (2.1) Both jG(j! )j and \G(j! ) depend on the frequency ! . This dependency may
be plotted explicitly in Bode plots (with ! as independent variable) or somewhat
For example, let G(j! ) = a + jb, with real part a = Re G(j! ) and imaginary part implicitly in a Nyquist plot (phase plane plot). In Bode plots we usually employ a
b = Im G(j!), then log-scale for frequency and gain, and a linear scale for the phase.
p In Figure 2.2, the Bode plots are shown for the system in (2.3). We note that in
jG(j!)j = a2 + b2 ; \G(j!) = arctan(b=a) (2.2) this case both the gain and phase fall monotonically with frequency. This is quite
common for process control applications. The delay  only shifts the sinusoid in
In words, (2.1) says that after sending a sinusoidal signal through a system G(s),
time, and thus affects the phase but not the gain. The system gain jG(j! )j is equal
the signal’s magnitude is amplified by a factor jG(j! )j and its phase is shifted by
to k at low frequencies; this is the steady-state gain and is obtained by setting s = 0
\G(j!). In Figure 2.1, this statement is illustrated for the following first-order delay (or ! = 0). The gain remains relatively constant up to the break frequency 1=
system (time in seconds),
where it starts falling sharply. Physically, the system responds too slowly to let high-
ke s frequency (“fast”) inputs have much effect on the outputs, and sinusoidal inputs with
G(s) = ; k = 5;  = 2;  = 10 (2.3) ! > 1= are attenuated by the system dynamics.
s + 1
18 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 19

which we refer to as the phasor notation. At each frequency, u(! ), y (! ) and G(j! )
Magnitude are complex numbers, and the usual rules for multiplying complex numbers apply.
10
0 We will use this phasor notation throughout the book. Thus whenever we use notation
such as u(! ) (with ! and not j! as an argument), the reader should interpret this as
a (complex) sinusoidal signal, u(! )e j!t . (2.9) also applies to MIMO systems where
−2 u(!) and y(!) are complex vectors representing the sinusoidal signal in each channel
and G(j! ) is a complex matrix.
10 −3 −2 −1 0 1
10 10 10 10 10

0
Minimum phase systems. For stable systems which are minimum phase (no time
delays or right-half plane (RHP) zeros) there is a unique relationship between the
−90 gain and phase of the frequency response. This may be quantified by the Bode gain-
Phase

phase relationship which gives the phase of G (normalized 1 such that G(0) > 0) at
a given frequency ! 0 as a function of jG(j! )j over the entire frequency range:
−180

−270
Z 1 d ln jG(j!)j ! + !0 d!
\G(j!0 ) = 1 
−3 −2 −1 0 1
10 10 10 10 10
ln (2.10)
1 | d ln{z ! } ! !0 !
Frequency [rad/s]

Figure 2.2: Frequency response (Bode plots) of G(s) = 5e 2s =(10s + 1) N (!)


The name minimum phase refers to the fact that such a system has the minimum
The frequency response is also useful for an unstable plant G(s), which by possible phase lag for the given magnitude response jG(j! )j. The term N (! ) is the
itself has no steady-state response. Let G(s) be stabilized by feedback control, and slope of the magnitude in log-variables at frequency ! . In particular, the local slope
consider applying a sinusoidal forcing signal to the stabilized system. In this case at frequency ! 0 is  
all signals within the system are persistent sinusoids with the same frequency ! , and d ln jG(j!)j
N (!0 ) =
G(j!) yields as before the sinusoidal response from the input to the output of G(s). d ln ! !=!0
Phasor notation. From Euler’s formula for complex numbers we have that e jz =
!+!0
cos z + j sin z . It then follows that sin(!t) is equal to the imaginary part of the The term ln ! !0 in (2.10) is infinite at ! = ! 0 , so it follows that \G(j!0 ) is
R1
complex function e j!t , and we can write the time domain sinusoidal response in primarily determined by the local slope N (! 0 ). Also 1 ln !!+! 2
0  ! = 2 which
!0 d!
complex form as follows: justifies the commonly used approximation for stable minimum phase systems
u(t) = u Im ej(!t+ ) gives as t ! 1 y(t) = y Im ej(!t+ )
0 0
\G(j!0 )  2 N (!0 ) [rad] = 90Æ  N (!0)
(2.5)
(2.11)
where
y0 = jG(j!)ju0 ; = \G(j!) + (2.6) The approximation is exact for the system G(s) = 1=s n (where N (! ) = n), and
and jG(j! )j and \G(j! ) are defined in (2.2). Now introduce the complex numbers it is good for stable minimum phase systems except at frequencies close to those of

u(!) , u0 ej ; y(!) , y0 ej
resonance (complex) poles or zeros.
(2.7) RHP-zeros and time delays contribute additional phase lag to a system when
where we have used ! as an argument because y 0 and depend on frequency, and in compared to that of a minimum phase system with the same gain (hence the term
some cases so may u0 and . Note that u(! ) is not equal to u(s) evaluated at s = ! non-minimum phase system). For example, the system G(s) = ss++aa with a RHP-
nor is it equal to u(t) evaluated at t = ! . Since G(j! ) = jG(j! )j e j \G(j!) the zero at s = a has a constant gain of 1, but its phase is 2 arctan(!=a) [rad] (and not
sinusoidal response in (2.5) and (2.6) can then be written in complex form as follows 0 [rad] as it would be for the minimum phase system G(s) = 1 of the same gain).
Similarly, the time delay system e s has a constant gain of 1, but its phase is !
y(!)ej!t = G(j!)u(!)ej!t (2.8) [rad].
or because the term e j!t appears on both sides 1 The normalization of G(s) is necessary to handle systems such as s+2 1 and 1 , which have equal
s+2
Æ
gain, are stable and minimum phase, but their phases differ by 180 . Systems with integrators may be
y(!) = G(j!)u(!) (2.9) treated by replacing 1s by s+
1 where  is a small positive number.

20 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 21

10
5
0:01 rad/s where we have two poles and then the slope changes to N = 2. Then
0 at !2 = 1 rad/s there is a zero and the slope changes to N = 1. Finally, there
Magnitude

−2 is a break frequency corresponding to a pole at ! 3 = 10 rad/s and so the slope is


N = 2 at this and higher frequencies. We note that the magnitude follows the
0
10
−1
asymptotes closely, whereas the phase does not. The asymptotic phase jumps at the
10
−5
−2
break frequency by 90 o (LHP-pole or RHP-zero) or +90 o (LHP-zero or RHP-
−3 −2 −1 0 1 2 3
10 10 10 10 10 10 10 pole),
!1 !2 !3 Remark. An improved phase approximation of a term s + a is obtained by, instead of
0
−45
jumping, connecting the phase asymptotes by a straight line (on a Bode plot with logarithmic
frequency) which starts 1 decade before the before the break frequency (at ! = a=10),
Phase

−90 
passes through the correct phase change of 45o at the break frequency a, and ends 1 decade
−135 after the break frequency (at ! = 10a). For the example in Figure 2.3, this much improved
−180 phase approximation drops from 0 to 180o between frequencies 0:001 (= !1 =10) and 0:1,
−3 −2 −1 0 1 2 3 increases up to 135o at frequency 1, remains at 135o up to frequency 10, before it drops
down to 180o at frequency 100 (= 10!3 ).
10 10 10 10 10 10 10
Frequency [rad/s]

Figure 2.3: Bode plots of transfer function L1 = 30 (s+0:01) s+1


2 (s+10) . The asymptotes are
given by dotted lines. The vertical dotted lines on the upper plot indicate the break frequencies
!1 , !2 and !3 . 2.2 Feedback control
Straight-line approximations (asymptotes). For the design methods used in d
this book it is useful to be able to sketch Bode plots quickly, and in particular the
magnitude (gain) diagram. The reader is therefore advised to become familiar with ?
asymptotic Bode plots (straight-line approximations). For example, for a transfer
Gd
function
(s + z1 )(s + z2 )   
G(s) = k
(s + p1 )(s + p2 )   
(2.12)

the asymptotic Bode plots of G(j! ) are obtained by using for each term (s + a) r -+ e - K u - G e+
-+ ? q -y
the approximation j! + a  a for ! < a and by j! + a  j! for ! > 6-
a. These approximations yield straight lines on a log-log plot which meet at
ym
the so-called break point frequency ! = a. In (2.12) therefore, the frequencies
z1 ; z2 ; : : : ; p1 ; p2 ; : : : are the break points where the asymptotes meet. For complex e+
poles or zeros, the term s 2 + 2s!0 + !02 (where j j < 1) is approximated by ! 02 for + 6
! < !0 and by s2 = (j!)2 = !2 for ! > !0. The magnitude of a transfer function
is usually close to its asymptotic value, and the only case when there is significant
n
deviation is around the resonance frequency ! 0 for complex poles or zeros with a
damping j j of about 0.3 or less. In Figure 2.3, the Bode plots are shown for
Figure 2.4: Block diagram of one degree-of-freedom feedback control system

(s + 1)
L1 (s) = 30
(s + 0:01)2(s + 10)
(2.13)
2.2.1 One degree-of-freedom controller
The asymptotes (straight-line approximations) are shown by dotted lines. In this In most of this chapter, we examine the simple one degree-of-freedom negative
example the asymptotic slope of jL 1 j is 0 up to the first break frequency at ! 1 = feedback structure shown in Figure 2.4. The input to the controller K (s) is r y m
22 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 23

where ym = y + n is the measured output and n is the measurement noise. Thus, the We see that S is the closed-loop transfer function from the output disturbances to the
input to the plant is outputs, while T is the closed-loop transfer function from the reference signals to the
u = K (s)(r y n) (2.14) outputs. The term complementary sensitivity for T follows from the identity:
The objective of control is to manipulate u (design K ) such that the control error e S+T =I (2.21)
remains small in spite of disturbances d. The control error e is defined as 1 1
To derive (2.21), write S + T = (I + L) + (I + L) L and factor out the term
e=y r (2.15) (I + L) 1 . The term sensitivity function is natural because S gives the sensitivity
reduction afforded by feedback. To see this, consider the “open-loop” case i.e. with
where r denotes the reference value (setpoint) for the output. no feedback. Then
y = GKr + Gd d + 0  n (2.22)
Remark. In the literature, the control error is frequently defined as r ym which is often the
and a comparison with (2.18) shows that, with the exception of noise, the response
controller input. However, this is not a good definition of an error variable. First, the error is
normally defined as the actual value (here y ) minus the desired value (here r). Second, the with feedback is obtained by premultiplying the right hand side by S .
error should involve the actual value (y ) and not the measured value (ym ). Remark 1 Actually, the above is not the original reason for the name “sensitivity”. Bode first
called S sensitivity because it gives the relative sensitivity of the closed-loop transfer function
T to the relative plant model error. In particular, at a given frequency ! we have for a SISO
2.2.2 Closed-loop transfer functions plant, by straightforward differentiation of T , that
The plant model is written as dT=T = S (2.23)
dG=G
y = G(s)u + Gd (s)d (2.16)
Remark 2 Equations (2.14)-(2.22) are written in matrix form because they also apply to
and for a one degree-of-freedom controller the substitution of (2.14) into (2.16) MIMO systems. Of course, for SISO systems we may write S + T = 1, S = 1+1 L , T = 1+
L
L
yields and so on.
y = GK (r y n) + Gd d Remark 3 In general, closed-loop transfer functions for SISO systems with negative
or feedback may be obtained from the rule
(I + GK )y = GKr + Gd d GKn \direct"
(2.17)
OUTPUT =
1 + \loop"
 INPUT (2.24)
and hence the closed-loop response is
where “direct” represents the transfer function for the direct effect of the input on the output
y = (I + GK ) 1 GK r + (I + GK ) 1 Gd d (I + GK ) 1 GK n (2.18) (with the feedback path open) and “loop” is the transfer function around the loop (denoted
| {z } | {z } | {z } L(s)). In the above case L = GK . If there is also a measurement device, Gm (s), in the loop,
T S T then L(s) = GKGm . The rule in (2.24) is easily derived by generalizing (2.17). In Section
The control error is 3.2, we present a more general form of this rule which also applies to multivariable systems.
e = y r = Sr + SGd d T n (2.19)
where we have used the fact T I = S . The corresponding plant input signal is 2.2.3 Why feedback?
At this point it is pertinent to ask why we should use feedback control at all —
u = KSr KSGdd KSn (2.20) rather than simply using feedforward control. A “perfect” feedforward controller is
obtained by removing the feedback signal and using the controller
The following notation and terminology are used
Kr (s) = G 1 (s) (2.25)
L = GK loop transfer function
S = (I + GK ) 1 = (I + L) 1 sensitivity function (we assume for now that it is possible to obtain and physically realize such an inverse,
T = (I + GK ) 1 GK = (I + L) 1 L complementary sensitivity function although this may of course not be true). We assume that the plant and controller are
24 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 25

both stable and that all the disturbances are known, that is, we know G d d, the effect imposes a fundamental limitation on control, and high controller gains will induce closed-
of the disturbances on the outputs. Then with r G d d as the controller input, this loop instability.
feedforward controller would yield perfect control: This is illustrated for a proportional (P) controller K (s) = Kc in Figure 2.5, where the
response y = T r = GKc (1 + GKc ) 1 r to a step change in the reference (r(t) = 1 for
y = Gu + Gd d = GKr (r Gd d) + Gd d = r t > 0) is shown for four different values of Kc . The system is seen to be stable for Kc < 2:5,
and unstable for Kc > 2:5. The controller gain at the limit of instability, Ku = 2:5, is
Unfortunately, G is never an exact model, and the disturbances are never known sometimes called the ultimate gain and for this value the system is seen to cycle continuously
exactly. The fundamental reasons for using feedback control are therefore the ,
with a period Pu = 15:2 s, corresponding to the frequency !u 2=Pu = 0:42 rad/s.
presence of
Two methods are commonly used to determine closed-loop stability:
1. Signal uncertainty – unknown disturbance (d)
2. Model uncertainty () 1. The poles of the closed-loop system are evaluated. That is, the roots of 1+ L(s) =
3. An unstable plant 0 are found, where L is the transfer function around the loop. The system is stable
if and only if all the closed-loop poles are in the open left-half plane (LHP) (that is,
The third reason follows because unstable plants can only be stabilized by feedback
poles on the imaginary axis are considered “unstable”). The poles are also equal
(see internal stability in Chapter 4). The ability of feedback to reduce the effect of
to the eigenvalues of the state-space A-matrix, and this is usually how the poles
model uncertainty is of crucial importance in controller design.
are computed numerically.
2. The frequency response (including negative frequencies) of L(j! ) is plotted in
the complex plane and the number of encirclements it makes of the critical point
2.3 Closed-loop stability 1 is counted. By Nyquist’s stability criterion (for which a detailed statement is
given in Theorem 4.7) closed-loop stability is inferred by equating the number of
One of the main issues in designing feedback controllers is stability. If the feedback encirclements to the number of open-loop unstable poles (RHP-poles).
gain is too large, then the controller may “overreact” and the closed-loop system For open-loop stable systems where \L(j! ) falls with frequency such that
becomes unstable. This is illustrated next by a simple example. \L(j!) crosses 180Æ only once (from above at frequency ! 180 ), one may
equivalently use Bode’s stability condition which says that the closed-loop system
is stable if and only if the loop gain jLj is less than 1 at this frequency, that is
2 Kc = 3 (Unstable)
Kc = 2:5 Stability, jL(j!180 )j < 1 (2.27)
Kc = 1:5
1.5
1 where !180 is the phase crossover frequency defined by \L(j! 180 ) = 180Æ.
0.5
Kc = 0:5 Method 1, which involves computing the poles, is best suited for numerical
0 Pu calculations. However, time delays must first be approximated as rational transfer
−0.5 functions, e.g. Padé approximations. Method 2, which is based on the frequency
0 5 10 15 20 25 30 35 40 45 50 response, has a nice graphical interpretation, and may also be used for systems with
Time [sec]
time delays. Furthermore, it provides useful measures of relative stability and forms
Figure 2.5: Effect of proportional gain Kc on the closed-loop response y (t) of the inverse the basis for several of the robustness tests used later in this book.
response process
Example 2.2 Stability of inverse response process with proportional control. Let us
determine the condition for closed-loop stability of the plant G in (2.26) with proportional
Example 2.1 Inverse response process. Consider the plant (time in seconds) control, that is, with K (s) = Kc (a constant) and loop transfer function L(s) = Kc G(s).
1. The system is stable if and only if all the closed-loop poles are in the LHP. The poles are
3( 2s + 1) solutions to 1 + L(s) = 0 or equivalently the roots of
G(s) = (2.26)
(5s + 1)(10s + 1)
(5s + 1)(10s + 1) + Kc 3( 2s + 1) = 0
This is one of two main example processes used in this chapter to illustrate the techniques
of classical control. The model has a right-half plane (RHP) zero at s = 0:5 rad/s. This , 50s2 + (15 6Kc )s + (1 + 3Kc ) = 0 (2.28)
26 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 27

But since we are only interested in the half plane location of the poles, it is not necessary which is the same as found from the graph in Figure 2.6. The stability condition
to solve (2.28). Rather, one may consider the coefficients ai of the characteristic equation j j
L(j!180 ) < 1 then yields Kc < 2:5 as expected.

an sn + a1 s + a0 = 0 in (2.28), and use the Routh-Hurwitz test to check for stability. For
second order systems, this test says that we have stability if and only if all the coefficients
have the same sign. This yields the following stability conditions
(15 6Kc ) > 0; (1 + 3Kc ) > 0
2.4 Evaluating closed-loop performance
or equivalently 1=3 < Kc < 2:5. With negative feedback (Kc 
0) only the upper Although closed-loop stability is an important issue, the real objective of control is
bound is of practical interest, and we find that the maximum allowed gain (“ultimate to improve performance, that is, to make the output y (t) behave in a more desirable
gain”) is Ku = 2:5 which agrees with the simulation in Figure 2.5. The poles at the manner. Actually, the possibility of inducing instability is one of the disadvantages of
onset of instability may be found p by substituting Kc = Ku = 2:5 into (2.28) to get
50s2 + 8:5 = 0, i.e. s = j 8:5=50 = j 0:412. Thus, at the onset of instability
  feedback control which has to be traded off against performance improvement. The
objective of this section is to discuss ways of evaluating closed-loop performance.
we have two poles on the imaginary axis, and the system will be continuously cycling with
a frequency ! = 0:412 rad/s corresponding to a period Pu = 2=! = 15:2 s. This agrees
with the simulation results in Figure 2.5.
2.4.1 Typical closed-loop responses
The following example which considers proportional plus integral (PI) control of the
inverse response process in (2.26), illustrates what type of closed-loop performance
Magnitude

10
0
one might expect.

2
−2
10
10
−2
10
−1

!180 10
0 1
10 1.5 y(t)
0 1
−45
−90 0.5
Phase

−135
−180 0 u(t)
−225
−270 −2 −0.5
10 10
−1
10
0 1
10 0 10 20 30 40 50 60 70 80
Frequency [rad/s] Time [sec]

Figure 2.6: Bode plots for L(s) = Kc (103( 2s+1)


s+1)(5s+1) with Kc =1 Figure 2.7: Closed-loop response to a step change in reference for the inverse response process
with PI-control
2. Stability may also be evaluated from the frequency response of L(s). A graphical evaluation
is most enlightening. The Bode plots of the plant (i.e. L(s) with Kc = 1) are shown in
Figure 2.6. From these one finds the frequency !180 where L is 180Æ and then reads
\ Example 2.3 PI-control of the inverse response process. We have already studied the
j j j j
off the corresponding gain. This yields L(j!180 ) = Kc G(j!180 ) = 0:4Kc , and we get use of a proportional controller for the process in (2.26). We found that a controller gain of
from (2.27) that the system is stable if and only if L(j!180 ) < 1 j j ,
Kc < 2:5 (as found Kc = 1:5 gave a reasonably good response, except for a steady-state offset (see Figure 2.5).
above). Alternatively, the phase crossover frequency may be obtained analytically from: The reason for this offset is the non-zero steady-state sensitivity function, S (0) = 1+K1c G(0) =
\L(j!180 ) = arctan(2!180 ) arctan(5!180 ) arctan(10!180 ) = 180Æ 0:18 (where G(0) = 3 is the steady-state gain of the plant). From e = Sr it follows that for
r = 1 the steady-state control error is 0:18 (as is confirmed by the simulation in Figure 2.5).
which gives !180 = 0:412 rad/s as found in the pole calculation above. The loop gain at
To remove the steady-state offset we add integral action in the form of a PI-controller
this frequency is
p
3  (2!180 )2 + 1  
jL(j!180 )j = Kc p p
(5!180 )2 + 1  (10!180 )2 + 1
= 0:4Kc K (s) = Kc 1 + 1 (2.29)
I s
28 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 29

The settings for Kc and I can be determined from the classical tuning rules of Ziegler and In summary, for this example, the Ziegler-Nichols’ PI-tunings are somewhat
Nichols (1942): “aggressive” and give a closed-loop system with smaller stability margins and a more
Kc = Ku =2:2; I = Pu =1:2 (2.30) oscillatory response than would normally be regarded as acceptable. For disturbance
where Ku is the maximum (ultimate) P-controller gain and Pu is the corresponding period rejection the controller settings may be more reasonable, and one can add a prefilter
of oscillations. In our case Ku = 2:5 and Pu = 15:2 s (as observed from the simulation to improve the response for reference tracking, resulting in a two degrees-of-freedom
in Figure 2.5), and we get Kc = 1:14 and I = 12:7 s. Alternatively, Ku and Pu can be controller. However, this will not change the stability robustness of the system.
obtained from the model G(s),

Ku = 1=jG(j!u )j; Pu = 2=!u (2.31) 2.4.2 Time domain performance


where !u is defined by \G(j!u ) = 180Æ .
The closed-loop response, with PI-control, to a step change in reference is shown in
= A
Figure 2.7. The output y (t) has an initial inverse response due to the RHP-zero, but it then
Overshoot
= B=A
1.5
Decay ratio
rises quickly and y (t) = 0:9 at t = 8:0 s (the rise time). The response is quite oscillatory and A 1:05

it does not settle to within 5% of the final value until after t = 65 s (the settling time). The 1 B
0:95

y(t)
overshoot (height of peak relative to the final value) is about 62% which is much larger than
one would normally like for reference tracking. The decay ratio, which is the ratio between 0.5
subsequent peaks, is about 0:35 which is also a bit large.
0

jLj tr ts
jT j jS j Time
Magnitude

0
10
Figure 2.9: Characteristics of closed-loop response to step in reference
!B !c !BT
−2 Step response analysis. The above example illustrates the approach often taken
10
10
−2
10
−1
10
0
10
1
by engineers when evaluating the performance of a control system. That is, one
simulates the response to a step in the reference input, and considers the following
90
\T \S characteristics (see Figure 2.9):

0
\L Rise time: (tr ) the time it takes for the output to first reach 90% of its final value,
Phase

−90
which is usually required to be small.
−180
−270 −2
 Settling time: (ts ) the time after which the output remains within 5% of its final
−1 0 1 value, which is usually required to be small.

10 10 10 10
Frequency [rad/s] Overshoot: the peak value divided by the final value, which should typically be
1.2 (20%) or less.
Figure 2.8: Bode magnitude and phase plots of L = GK , S and T when
G(s) = (5s3(+1)(10
2s+1) , and K (s) = 1:136(1 + 1 ) (a Ziegler-Nichols PI controller)  Decay ratio: the ratio of the second and first peaks, which should typically be 0.3
s+1) 12:7s or less.
 Steady-state offset: the difference between the final value and the desired final
The corresponding Bode plots for L, S and T are shown in Figure 2.8. Later, in value, which is usually required to be small.
Section 2.4.3, we define stability margins, and from the plot of L(j! ), repeated in Figure 2.11,
we find that the phase margin (PM) is 0:34 rad = 19:4Æ and the gain margin (GM) is 1:63. The rise time and settling time are measures of the speed of the response, whereas
These margins are too small according to common rules of thumb. The peak value of S is j j the overshoot, decay ratio and steady-state offset are related to the quality of the
j j
MS = 3:92, and the peak value of T is MT = 3:35 which again are high according to response. Another measure of the quality of the response is:
normal design rules.
 Excess variation: the total variation (TV) divided by the overall change at steady
Exercise 2.1 Use (2.31) to compute Ku and Pu for the process in (2.26). state, which should be as close to 1 as possible.
30 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 31

2.4.3 Frequency domain performance


v4 v5 v6
v2 The frequency-response of the loop transfer function, L(j! ), or of various closed-
v0 v3 loop transfer functions, may also be used to characterize closed-loop performance.
y ( t)

v1 Typical Bode plots of L, T and S are shown in Figure 2.8. One advantage of the
v0 frequency domain compared to a step response analysis, is that it considers a broader
class of signals (sinusoids of any frequency). This makes it easier to characterize
feedback properties, and in particular system behaviour in the crossover (bandwidth)
region. We will now describe some of the important frequency-domain measures
Time used to assess performance e.g. gain and phase margins, the maximum peaks of S
and T , and the various definitions of crossover and bandwidth frequencies used to
P1
Figure 2.10: Total variation is TV = i=1 vi , and Excess variation is TV=v0 characterize speed of response.

The total variation is the total movement of the output as illustrated in Figure 2.10. Gain and phase margins
For the cases considered here the overall change is 1, so the excess variation is equal Let L(s) denote the loop transfer function of a system which is closed-loop stable
to the total variation. under negative feedback. A typical Bode plot and a typical Nyquist plot of L(j! )
The above measures address the output response, y (t). In addition, one should illustrating the gain margin (GM) and phase margin (PM) are given in Figures 2.11
consider the magnitude of the manipulated input (control signal, u), which usually and 2.12, respectively.
should be as small and smooth as possible. If there are important disturbances, then
the response to these should also be considered. Finally, one may investigate in 1
10
simulation how the controller works if the plant model parameters are different from

Magnitude
their nominal values.
0

Remark 1 Another way of quantifying time domain performance is in terms of some norm
10
1
GM
of the error signal e(t) = y (t) r(t). For example, one might use the integral
q squared error R1
k 0 e( ) 2 d .
k j j
−1
(ISE), or its square root which is the 2-norm of the error signal, e(t) 2 =
10 −2 −1 0

Note that in this case the various objectives related to both the speed and quality of response
10 10
!c !180 10

−90
are combined into one number. Actually, in most cases minimizing the 2-norm seems to give
a reasonable trade-off between the various objectives listed above. Another advantage of the −135

Phase
2-norm is that the resulting optimization problems (such as minimizing ISE) are numerically
−180 PM
easy q
to solve. One can also take input magnitudes into account by considering, for example,
R1
J = 0 (Q e(t) 2 + R u(t) 2 )dt where Q and R are positive constants. This is similar to
j j j j −225
−2 −1 0
linear quadratic (LQ) optimal control, but in LQ-control one normally considers an impulse 10 10 10
rather than a step change in r(t). Frequency [rad/s]

Remark 2 The step response is equal to the integral of the corresponding impulse response, Figure 2.11: Typical Bode plot of L(j! ) with PM and GM indicated
e.g. set u( ) = 1 in (4.11). Some thought then reveals that one can compute the total variation
as the integrated absolute area (1-norm) of the corresponding impulse response (Boyd and The gain margin is defined as
Barratt, 1991, p. 98). That is, let y = T r, then the total variation in y for a step change in r is
GM = 1=jL(j!180)j (2.33)
Z 1
TV = jgT ( )jd , kgT (t)k1 (2.32) where the phase crossover frequency ! 180 is where the Nyquist curve of L(j! )
0 crosses the negative real axis between 1 and 0, that is
where gT (t) is the impulse response of T , i.e. y (t) resulting from an impulse change in r(t). \L(j!180 ) = 180Æ (2.34)
32 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 33

Im or more. The PM is a direct safeguard against time delay uncertainty; the system
becomes unstable if we add a time delay of

max = PM=!c (2.37)

0.5 Note that the units must be consistent, and so if w c is in [rad/s] then PM must be in
radians. It is also important to note that by decreasing the value of ! c (lowering the
1 L(j!180 ) closed-loop bandwidth, resulting in a slower response) the system can tolerate larger
1 GM ! = +1 Re time delay errors.
−1 PM 0.5 1 Example 2.4 For the PI-controlled inverse response process example we have PM =
L(j!c ) 19:4Æ = 19:4=57:3 rad = 0:34 rad and !c = 0:236 rad/s. The allowed time delay error
is then max = 0:34 rad=0:236 rad/s = 1:44 s.
−0.5
From the above arguments we see that gain and phase margins provide stability
margins for gain and delay uncertainty. However, as we show below the gain and
phase margins are closely related to the peak values of jS (j! )j and jT (j! )j and are
L(j! ) therefore also useful in terms of performance. In short, the gain and phase margins
are used to provide the appropriate trade-off between performance and stability.

Exercise 2.2 Prove that the maximum additional delay for which closed-loop stability is
maintained is given by (2.37).
Figure 2.12: Typical Nyquist plot of L(j! ) for stable plant with PM and GM indicated.
Closed-loop instability occurs if L(j! ) encircles the critical point 1 Exercise 2.3 Derive the approximation for Ku = 1=jG(j!u )j given in (5.73) for a first-
order delay system.

If there is more than one crossing the largest value of jL(j! 180 )j is taken. On a
Bode plot with a logarithmic axis for jLj, we have that GM (in logarithms, e.g. in Maximum peak criteria
dB) is the vertical distance from the unit magnitude line down to jL(j! 180 )j, see
Figure 2.11. The GM is the factor by which the loop gain jL(j! )j may be increased
The maximum peaks of the sensitivity and complementary sensitivity functions are
defined as
before the closed-loop system becomes unstable. The GM is thus a direct safeguard
against steady-state gain uncertainty (error). Typically we require GM > 2. If the
MS = max !
jS (j!)j; MT = max !
jT (j!)j (2.38)
Nyquist plot of L crosses the negative real axis between 1 and 1 then a gain (Note that MS = kS k1 and MT = kT k1 in terms of the H1 norm introduced
reduction margin can be similarly defined from the smallest value of jL(j! 180 )j of later.) Typically, it is required that M S is less than about 2 (6 dB) and M T is less
such crossings. than about 1:25 (2 dB). A large value of M S or MT (larger than about 4) indicates
The phase margin is defined as poor performance as well as poor robustness. Since S + T = 1 it follows that at any
frequency
PM = \L(j!c) + 180Æ (2.35) j jS j jT j j  jS + T j = 1
where the gain crossover frequency ! c is where jL(j! )j first crosses 1 from above, so MS and MT differ at most by 1. A large value of M S therefore occurs if and only
that is if MT is large. For stable plants we usually have M S > MT , but this is not a general
jL(j!c)j = 1 (2.36) rule. An upper bound on M T has been a common design specification in classical
control and the reader may be familiar with the use of M -circles on a Nyquist plot
The phase margin tells how much negative phase (phase lag) we can add to L(s) at or a Nichols chart used to determine M T from L(j! ).
frequency ! c before the phase at this frequency becomes 180 Æ which corresponds We now give some justification for why we may want to bound the value of M S .
to closed-loop instability (see Figure 2.12). Typically, we require PM larger than 30 Æ Without control (u = 0), we have e = y r = G d d r, and with feedback
34 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 35

control e = S (Gd d r). Thus, feedback control improves performance in terms Im


of reducing jej at all frequencies where jS j < 1. Usually, jS j is small at low −1
frequencies, for example, jS (0)j = 0 for systems with integral action. But because
all real systems are strictly proper we must at high frequencies have that L ! 0 or PM=2 Re
equivalently S ! 1. At intermediate frequencies one cannot avoid in practice a peak
value, MS , larger than 1 (e.g. see the remark below). Thus, there is an intermediate

1
frequency range where feedback control degrades performance, and the value of M S

c)
L(j

!
is a measure of the worst-case performance degradation. One may also view M S

L(j
! c)
as a robustness measure, as is now explained. To maintain closed-loop stability the
number of encirclements of the critical point 1 by L(j! ) must not change; so we
want L to stay away from this point. The smallest distance between L(j! ) and the -1
point is MS 1 , and therefore for robustness, the smaller M S , the better. In summary,
both for stability and performance we want M S close to 1.
−1
There is a close relationship between these maximum peaks and the gain and phase
margins. Specifically, for a given M S we are guaranteed
 
MS 1
GM 
MS 1
; PM  2 arcsin
2MS
 M1 [rad] (2.39) Figure 2.13: At frequency !c we see from the figure that j1 + L(j!c )j = 2 sin(PM=2)
S
For example, with M S = 2 we are guaranteed GM  2 and PM  29:0 Æ . Similarly,
for a given value of M T we are guaranteed 2.4.4 Relationship between time and frequency domain peaks
 
1 1 For a change in reference r, the output is y (s) = T (s)r(s). Is there any relationship
GM  1 +
MT
; PM  2 arcsin
2MT
 M1 [rad] (2.40) between the frequency domain peak of T (j! ), M T , and any characteristic of
T
and therefore with M T = 2 we have GM  1:5 and PM  29:0 Æ .
the time domain step response, for example the overshoot or the total variation?
To answer this consider a prototype second-order system with complementary
Proof of (2.39) and (2.40): To derive the GM-inequalities notice that L(j!180 ) = 1=GM sensitivity function
j j
(since GM = 1= L(j!180 ) and L is real and negative at !180 ), from which we get 1
1 1 T (s) = 2 2 (2.43)
T (j!180 ) = ; S (j!180 ) = 1 (2.41)  s + 2s + 1
GM 1 1 GM
and the GM-results follow. To derive the PM-inequalities in (2.39) and (2.40) consider For underdamped systems with  < 1 the poles are complex and yield oscillatory
j j j
Figure 2.13 where we have S (j!c ) = 1= 1 + L(j!c ) = 1= j j
1 L(j!c ) and we j step responses.
obtain With r(t) = 1 (a unit step change) the values of the overshoot and total variation
j j j
S (j!c ) = T (j!c ) = j 1 (2.42) for y (t) are given, together with M T and MS , as a function of  in Table 2.1. From
2 sin(PM=2) Table 2.1, we see that the total variation TV correlates quite well with M T . This is
and the inequalities follow.
p Alternative formulas, which are sometimes used, follow from the further confirmed by (A.136) and (2.32) which together yield the following general
identity 2 sin(PM=2) = 2(1 cos(PM)). 2 bounds
j j
Remark. We note with interest that (2.41) requires S to be larger than 1 at frequency !180 .
MT  TV  (2n + 1)MT
This means that provided !180 exists, that is, L(j! ) has more than 180Æ phase lag at some
(2.44)
j j
frequency (which is the case for any real system), then the peak of S (j! ) must exceed 1.
Here n is the order of T (s), which is 2 for our prototype system in (2.43). Given
In conclusion, we see that specifications on the peaks of jS (j! )j or jT (j! )j (M S that the response of many systems can be crudely approximated by fairly low-
or MT ), can make specifications on the gain and phase margins unnecessary. For order systems, the bound in (2.44) suggests that M T may provide a reasonable
instance, requiring M S < 2 implies the common rules of thumb GM > 2 and approximation to the total variation. This provides some justification for the use of
PM > 30Æ. MT in classical control to evaluate the quality of the response.
36 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 37

definition:
Table 2.1: Peak values and total variation of prototype second-order system
Time domain Frequency domain Definition 2.1 pThe (closed-loop) bandwidth, ! B , is the frequency where jS (j!)j
 Overshoot Total variation MT MS first crosses 1= 2 = 0:707( 3 dB) from below.
2.0 1 1 1 1.05
1.5 1 1 1 1.08 Remark. Another interpretation is to say that control is effective if it significantly changes the
1.0 1 1 1 1.15 output response. For tracking performance, the output is y = T r and since without control
0.8 1.02 1.03 1 1.22 y = 0, we may say that control is effective as long as T is reasonably large, which we
0.6 1.09 1.21 1.04 1.35 may define to be larger than 0.707. This leads to an alternative definition which has been
p
traditionally used to define the bandwidth of a control system: The bandwidth in terms of
0.4
0.2
1.25
1.53
1.68
3.22
1.36
2.55
1.66
2.73
j j
T , !BT , is the highest frequency at which T (j! ) crosses 1= 2 = 0:707(  3 dB) from
above. However, we would argue that this alternative definition, although being closer to how
0.1 1.73 6.39 5.03 5.12 the term is used in some other fields, is less useful for feedback control.
0.01 1.97 63.7 50.0 50.0
The gain crossover frequency, ! c , defined as the frequency where jL(j! c )j first
crosses 1 from above, is also sometimes used to define closed-loop bandwidth. It has
the advantage of being simple to compute and usually gives a value between ! B and
% MATLAB code (Mu toolbox) to generate Table:

!BT . Specifically, for systems with PM < 90Æ (most practical systems) we have
tau=1;zeta=0.1;t=0:0.01:100;
T = nd2sys(1,[tau*tau 2*tau*zeta 1]); S = msub(1,T);
[A,B,C,D]=unpck(T); y1 = step(A,B,C,D,1,t);
overshoot=max(y1),tv=sum(abs(diff(y1)))
Mt=hinfnorm(T,1.e-4),Ms=hinfnorm(S,1.e-4) !B < !c < !BT (2.45)
Proof of (2.45): Note that L(j!c ) = 1 so S (j!c ) = T (j!c ) . Thus, when PM = 90Æ
j j j j j j
j j j j
we get S (j!c ) = T (j!c ) = 0:707 (see (2.42)), and we have !B = !c = !BT . For
PM < 90Æ we get S (j!c ) = T (j!c ) > 0:707, and since !B is the frequency where
j j j j
j j
S (j! ) crosses 0.707 from below we must have !B < !c . Similarly, since !BT is the
2.4.5 Bandwidth and crossover frequency j j
frequency where T (j! ) crosses 0.707 from above, we must have !BT > !c . 2
The concept of bandwidth is very important in understanding the benefits and trade- From this we have that the situation is generally as follows: Up to the frequency
offs involved when applying feedback control. Above we considered peaks of closed- !B , jS j is less than 0.7, and control is effective in terms of improving performance. In
loop transfer functions, M S and MT , which are related to the quality of the response. the frequency range [! B ; !BT ] control still affects the response, but does not improve
However, for performance we must also consider the speed of the response, and performance — in most cases we find that in this frequency range jS j is larger than
this leads to considering the bandwidth frequency of the system. In general, a large 1 and control degrades performance. Finally, at frequencies higher than ! BT we
bandwidth corresponds to a faster rise time, since high frequency signals are more have S  1 and control has no significant effect on the response. The situation just
easily passed on to the outputs. A high bandwidth also indicates a system which is described is illustrated in Example 2.5 below (see Figure 2.15).
sensitive to noise and to parameter variations. Conversely, if the bandwidth is small,
the time response will generally be slow, and the system will usually be more robust. Example. Consider the simplest case with a first-order closed-loop response,
Loosely speaking, bandwidth may be defined as the frequency range [! 1 ; !2 ] over
L(s) = k ; S (s) = s ; T (s) = k
which control is effective. In most cases we require tight control at steady-state so s s+k s+k
!1 = 0, and we then simply call ! 2 = !B the bandwidth. In this ideal case the above bandwidth and crossover frequencies are identical: !c = !B =
The word “effective” may be interpreted in different ways, and this may give rise !BT = k. Furthermore, the phase of L remains constant at 90o , so PM=90o , !180 = 1
to different definitions of bandwidth. The interpretation we use is that control is (or really undefined) and GM= 1.
effective if we obtain some benefit in terms of performance. For tracking performance
Example 2.1 continue. The plant has a RHP-zero and the PI-tunings are quite agressive
the error is e = y r = Sr and we get that feedback is effective (in terms of
so GM=1.63 and PM=19:4o . The bandwidth and crossover frequencies are !B = 0:14; !c =
improving performance) as long as the relative error e=r = S is reasonably small,
which we may define to be less than 0.707 in magnitude. 2 We then get the following
0:24; !BT = 0:44 (confirming 2.45).
a first-order closed-loop response with S= s=(s + a), the low-frequency asymptote s=a crosses 1 at
2 The reason for choosing the value 0.707 when defining the bandwith is that, for the simplest case with =
the frequency ! a where S j! j ( )j = p!2 + a2 = 1 p2 = 0:707.
!=
38 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 39

Example 2.5 Comparison of !B and !BT as indicators of performance. An example drops from about 40Æ to about 220Æ , so in practice tracking is out of phase and thus poor
where !BT is a poor indicator of performance is the following (we are not suggesting this as in this frequency range.
a good controller design!):
In conclusion, ! B (which is defined in terms of jS j) and also ! c (in terms of jLj)
L= s + z ; T = s + z 1 ; z = 0:1;  = 1 are good indicators of closed-loop performance, while ! BT (in terms of jT j) may be
misleading in some cases. The reason is that we want T  1 in order to have good
(2.46)
s(s + z + 2) s + z s + 1
For this system, both L and T have a RHP-zero at z = 0:1, and we have GM = 2:1,
performance, and it is not sufficient that jT j  1; we must also consider its phase.
PM = 60:1Æ , MS = 1:93 and MT = 1. We find that !B = 0:036 and !c = 0:054 are both On the other hand, for for good performance we want S close to 0, and this will be
less than z = 0:1 (as one should expect because speed of response is limited by the presence of the case if jS j  0 irrespective of the phase of S .
RHP-zeros), whereas !BT = 1= = 1:0 is ten times larger than z . The closed-loop response
to a unit step change in the reference is shown in Figure 2.14. The rise time is 31:0 s, which
is close to 1=!B = 28:0 s, but very different from 1=!BT = 1:0 s, illustrating that !B is a
better indicator of closed-loop performance than !BT .
2.5 Controller design

1
We have considered ways of evaluating performance, but one also needs methods
for controller design. The Ziegler-Nichols’ method used earlier is well suited for
0.5 on-line tuning, but most other methods involve minimizing some cost function. The
overall design process is iterative between controller design and performance (or
y(t)

0 cost) evaluation. If performance is not satisfactory then one must either adjust the
controller parameters directly (for example, by reducing K c from the value obtained
−0.5 by the Ziegler-Nichols’ rules) or adjust some weighting factor in an objective
function used to synthesize the controller.
−1 There exist a large number of methods for controller design and some of these will
0 5 10 15 20 25 30 35 40 45 50
Time [sec] be discussed in Chapter 9. In addition to heuristic rules and on-line tuning we can
distinguish between three main approaches to controller design:
Figure 2.14: Step response for system T +0:1 1
= ss+0 :1 s+1 1. Shaping of transfer functions. In this approach the designer specifies the
magnitude of some transfer function(s) as a function of frequency, and then finds
a controller which gives the desired shape(s).
jS j (a) Loop shaping. This is the classical approach in which the magnitude of the
!B !180 !BT open-loop transfer function, L(j! ), is shaped. Usually no optimization is
involved and the designer aims to obtain jL(j! )j with desired bandwidth,
0
10
Magnitude

jT j slopes etc. We will look at this approach in detail later in this chapter.
However, classical loop shaping is difficult to apply for complicated systems,
and one may then instead use the Glover-McFarlane H 1 loop-shaping
−1
10

design presented in Chapter 9. The method consists of a second step where


optimization is used to make an initial loop-shaping design more robust.
10
−2
(b) Shaping of closed-loop transfer functions, such as S , T and KS .
Optimization is usually used, resulting in various H 1 optimal control
−2 −1 0 1 2
10 10 10 10 10
Frequency [rad/s]
problems such as mixed weighted sensitivity; more on this later.
Figure 2.15: Plots of jS j and jT j for system T = ss+0+0:1:1 s+1
1 2. The signal-based approach. This involves time domain problem formulations
resulting in the minimization of a norm of a transfer function. Here one considers
The magnitude Bode plots of S and T are shown in Figure 2.15. We see that T 1 up to j j a particular disturbance or reference change and then one tries to optimize the
about !BT . However, in the frequency range from !B to !BT the phase of T (not shown) closed-loop response. The “modern” state-space methods from the 1960’s, such
40 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 41

as Linear Quadratic Gaussian (LQG) control, are based on this signal-oriented For “perfect control” we want e = y r = 0; that is, we would like
approach. In LQG the input signals are assumed to be stochastic (or alternatively
impulses in a deterministic setting) and the expected value of the output variance e 0d+0r+0n
(or the 2-norm) is minimized. These methods may be generalized to include
The first two requirements in this equation, namely disturbance rejection and
command tracking, are obtained with S  0, or equivalently, T  I . Since
frequency dependent weights on the signals leading to what is called the Wiener-
Hopf (or H 2 -norm) design method.
By considering sinusoidal signals, frequency-by-frequency, a signal-based H 1 S = (I + L) 1 , this implies that the loop transfer function L must be large in
optimal control methodology can be derived in which the H 1 norm of a magnitude. On the other hand, the requirement for zero noise transmission implies
combination of closed-loop transfer functions is minimized. This approach has that T  0, or equivalently, S  I , which is obtained with L  0. This illustrates the
attracted significant interest, and may be combined with model uncertainty fundamental nature of feedback design which always involves a trade-off between
representations, to yield quite complex robust performance problems requiring conflicting objectives; in this case between large loop gains for disturbance rejection
-synthesis; an important topic which will be addressed in later chapters. and tracking, and small loop gains to reduce the effect of noise.
3. Numerical optimization. This often involves multi-objective optimization where It is also important to consider the magnitude of the control action u (which is the
one attempts to optimize directly the true objectives, such as rise times, stability input to the plant). We want u small because this causes less wear and saves input
margins, etc. Computationally, such optimization problems may be difficult to energy, and also because u is often a disturbance to other parts of the system (e.g.
solve, especially if one does not have convexity in the controller parameters. Also, consider opening a window in your office to adjust your comfort and the undesirable
by effectively including performance evaluation and controller design in a single disturbance this will impose on the air conditioning system for the building). In
step procedure, the problem formulation is far more critical than in iterative two- particular, we usually want to avoid fast changes in u. The control action is given
step approaches. The numerical optimization approach may also be performed on- by u = K (r ym ) and we find as expected that a small u corresponds to small
line, which might be useful when dealing with cases with constraints on the inputs controller gains and a small L = GK .
and outputs. On-line optimization approaches such as model predictive control are The most important design objectives which necessitate trade-offs in feedback
likely to become more popular as faster computers and more efficient and reliable control are summarized below:
computational algorithms are developed. 1. Performance, good disturbance rejection: needs large controller gains, i.e. L large.
2. Performance, good command following: L large.
3. Stabilization of unstable plant: L large.
2.6 Loop shaping 4. Mitigation of measurement noise on plant outputs: L small.
5. Small magnitude of input signals: K small and L small.
In the classical loop-shaping approach to controller design, “loop shape” refers to 6. Physical controller must be strictly proper: K ! 0 and L ! 0 at high frequencies.
the magnitude of the loop transfer function L = GK as a function of frequency. An 7. Nominal stability (stable plant): L small (because of RHP-zeros and time delays).
understanding of how K can be selected to shape this loop gain provides invaluable 8. Robust stability (stable plant): L small (because of uncertain or neglected
insight into the multivariable techniques and concepts which will be presented later dynamics).
in the book, and so we will discuss loop shaping in some detail in the next two
Fortunately, the conflicting design objectives mentioned above are generally in
sections.
different frequency ranges, and we can meet most of the objectives by using a large
loop gain (jLj > 1) at low frequencies below crossover, and a small gain (jLj < 1)
2.6.1 Trade-offs in terms of L at high frequencies above crossover.
Recall equation (2.19), which yields the closed-loop response in terms of the control
error e = y r: 2.6.2 Fundamentals of loop-shaping design
By loop shaping we mean a design procedure that involves explicitly shaping the
magnitude of the loop transfer function, jL(j! )j. Here L(s) = G(s)K (s) where
e = (I + L) 1 r + (I + L) 1 Gd d (I + L) 1 L n (2.47) K (s) is the feedback controller to be designed and G(s) is the product of all
| {z } | {z } | {z }
S S T other transfer functions around the loop, including the plant, the actuator and the
42 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 43

measurement device. Essentially, to get the benefits of feedback control we want  L(s) must contain at least one integrator for each integrator in r(s).
the loop gain, jL(j! )j, to be as large as possible within the bandwidth region.
However, due to time delays, RHP-zeros, unmodelled high-frequency dynamics and Proof: Let L(s) = L b (s)=snI where L
b(0) is non-zero and finite and nI is the number of
limitations on the allowed manipulated inputs, the loop gain has to drop below integrators in L(s) — sometimes nI is called the system type. Consider a reference signal of
one at and above some frequency which we call the crossover frequency ! c . Thus, the form r(s) = 1=snr . For example, if r(t) is a unit step, then r(s) = 1=s (nr = 1), and if
disregarding stability for the moment, it is desirable that jL(j! )j falls sharply with r(t) is a ramp then r(s) = 1=s2 (nr = 2). The final value theorem for Laplace transforms is
frequency. To measure how jLj falls with frequency we consider the logarithmic lim e(t) = slim
slope N = d ln jLj=d ln ! . For example, a slope N = 1 implies that jLj drops by t!1 !0 se(s) (2.48)

a factor of 10 when ! increases by a factor of 10. If the gain is measured in decibels In our case, the control error is
(dB) then a slope of N = 1 corresponds to 20 dB/ decade. The value of N at nI nr
high frequencies is often called the roll-off rate. e(s) = 1
r(s) = ns b (2.49)
The design of L(s) is most crucial and difficult in the crossover region between 1 + L(s) s + L(s)
I
!c (where jLj = 1) and !180 (where \L = 180Æ). For stability, we at least need and to get zero offset (i.e. e(t ! 1) = 0) we must from (2.48) require nI  nr , and the rule
the loop gain to be less than 1 at frequency ! 180 , i.e. jL(j!180 )j < 1. Thus, to get a follows. 2
high bandwidth (fast response) we want ! c and therefore ! 180 large, that is, we want
the phase lag in L to be small. Unfortunately, this is not consistent with the desire In conclusion, one can define the desired loop transfer function in terms of the
that jL(j! )j should fall sharply. For example, the loop transfer function L = 1=s n following specifications:
(which has a slope N = n on a log-log plot) has a phase \L = n  90 Æ . Thus,
to have a phase margin of 45 Æ we need \L > 135Æ, and the slope of jLj cannot 1. The gain crossover frequency, ! c , where jL(j!c )j = 1.
exceed N = 1:5. 2. The shape of L(j! ), e.g. in terms of the slope of jL(j! )j in certain frequency
In addition, if the slope is made steeper at lower or higher frequencies, then this ranges. Typically, we desire a slope of about N = 1 around crossover, and
will add unwanted phase lag at intermediate frequencies. As an example, consider a larger roll-off at higher frequencies. The desired slope at lower frequencies
L1 (s) given in (2.13) with the Bode plot shown in Figure 2.3. Here the slope of the depends on the nature of the disturbance or reference signal.
asymptote of jLj is 1 at the gain crossover frequency (where jL 1 (j!c )j = 1), which 3. The system type, defined as the number of pure integrators in L(s).
by itself gives 90Æ phase lag. However, due to the influence of the steeper slopes of
2 at lower and higher frequencies, there is a “penalty” of about 35 Æ at crossover, In Section 2.6.4, we discuss how to specify the loop shape when disturbance rejection
so the actual phase of L 1 at !c is approximately 125 Æ . is the primary objective of control. Loop-shaping design is typically an iterative
The situation becomes even worse for cases with delays or RHP-zeros in L(s) procedure where the designer shapes and reshapes jL(j! )j after computing the phase
which add undesirable phase lag to L without contributing to a desirable negative and gain margins, the peaks of closed-loop frequency responses (M T and MS ),
slope in L. At the gain crossover frequency ! c , the additional phase lag from delays selected closed-loop time responses, the magnitude of the input signal, etc. The
and RHP-zeros may in practice be 30 Æ or more. procedure is illustrated next by an example.
In summary, a desired loop shape for jL(j! )j typically has a slope of about 1
in the crossover region, and a slope of 2 or higher beyond this frequency, that Example 2.6 Loop-shaping design for the inverse response process.
We will now design a loop-shaping controller for the example process in (2.26) which has a
is, the roll-off is 2 or larger. Also, with a proper controller, which is required for
RHP-zero at s = 0:5. The RHP-zero limits the achievable bandwidth and so the crossover
any real system, we must have that L = GK rolls off at least as fast as G. At low
region (defined as the frequencies between !c and !180 ) will be at about 0:5 rad/s. We require
frequencies, the desired shape of jLj depends on what disturbances and references we the system to have one integrator (type 1 system), and therefore a reasonable approach is to
are designing for. For example, if we are considering step changes in the references let the loop transfer function have a slope of 1 at low frequencies, and then to roll off with a
or disturbances which affect the outputs as steps, then a slope for jLj of 1 at low higher slope at frequencies beyond 0:5 rad/s. The plant and our choice for the loop-shape is
frequencies is acceptable. If the references or disturbances require the outputs to
change in a ramp-like fashion then a slope of 2 is required. In practice, integrators G(s) = 3( 2s + 1) ; L(s) = 3K ( 2s + 1)
c (2.50)
are included in the controller to get the desired low-frequency performance, and for (5s + 1)(10s + 1) s(2s + 1)(0:33s + 1)
offset-free reference tracking the rule is that The frequency response (Bode plots) of L is shown in Figure 2.16 for Kc = 0:05.
The controller gain Kc was selected to get reasonable stability margins (PM and GM).
44 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 45

of the input signal remains less than about 1 in magnitude. This means that the controller gain
is not too large at high frequencies. The magnitude Bode plot for the controller (2.51) is shown
in Figure 2.18. It is interesting to note that in the crossover region around ! = 0:5 rad/s the
Magnitude

controller gain is quite constant, around 1 in magnitude, which is similar to the “best” gain
0
10
1
GM found using a P-controller (see Figure 2.5).
−2
10 −2 −1 0 1
10 10
!c !180 10 10

−90

PM
1
10
−180
Phase

−270
jK (j!)j

Magnitude
0
−360 −2 10
−1 0 1
10 10 10 10
Frequency [rad/s]

Figure 2.16: Frequency response of L(s) in (2.50) for loop-shaping design with Kc = 0:05
(GM = 2:92, PM = 54Æ , !c = 0:15, !180 = 0:43, MS = 1:75, MT = 1:11) 10
−1
−2 −1 0 1
10 10 10 10
Frequency [rad/s]
2
Figure 2.18: Magnitude Bode plot of controller (2.51) for loop-shaping design
1.5
1
y(t)
0.5
0 u(t)
Limitations imposed by RHP-zeros and time delays
−0.5
0 5 10 15 20 25 30 35 40 45 50
Time [sec] Based on the above loop-shaping arguments we can now examine how the presence
of delays and RHP-zeros limit the achievable control performance. We have already
Figure 2.17: Response to step in reference for loop-shaping design argued that if we want the loop shape to have a slope of 1 around crossover (! c ),
with preferably a steeper slope before and after crossover, then the phase lag of L at
!c will necessarily be at least 90Æ, even when there are no RHP-zeros or delays.
j j
The asymptotic slope of L is 1 up to 3 rad/s where it changes to 2. The controller Therefore, if we assume that for performance and robustness we want a phase margin
corresponding to the loop-shape in (2.50) is of about 35Æ or more, then the additional phase contribution from any delays and
RHP-zeros at frequency ! c cannot exceed about 55 Æ.
K (s) = Kc (10s + 1)(5s + 1) ; Kc = 0:05 (2.51) First consider a time delay . It yields an additional phase contribution of ! ,
s(2s + 1)(0:33s + 1)
which at frequency ! = 1= is 1 rad = 57 Æ (which is more than 55 Æ ). Thus, for
acceptable control performance we need ! c < 1=, approximately.
The controller has zeros at the locations of the plant poles. This is desired in this case because
we do not want the slope of the loop shape to drop at the break frequencies 1=10 = 0:1 rad/s
Next consider a real RHP-zero at s = z . To avoid an increase in slope caused by
and 1=5 = 0:2 rad/s just before crossover. The phase of L is 90Æ at low frequency, and
at ! = 0:5 rad/s the additional contribution from the term 22ss+1 +1 in (2.50) is 90Æ , so this zero we place a pole at s = z such that the loop transfer function contains the
for stability we need !c < 0:5 rad/s. The choice Kc = 0:05 yields !c = 0:15 rad/s term ss++zz , the form of which is referred to as all-pass since its magnitude equals
corresponding to GM = 2:92 and PM=54Æ . The corresponding time response is shown in 1 at all frequencies. The phase contribution from the all-pass term at ! = z=2
Figure 2.17. It is seen to be much better than the responses with either the simple PI-controller is 2 arctan(0:5) = 53Æ (which is close to 55Æ), so for acceptable control
in Figure 2.7 or with the P-controller in Figure 2.5. Figure 2.17 also shows that the magnitude performance we need ! c < z=2, approximately.
46 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 47

2.6.3 Inverse-based controller design Analysis. Since Gd (0) = 100 we have that without control the output response to a
unit disturbance (d = 1) will be 100 times larger than what is deemed to be acceptable.
In Example 2.6, we made sure that L(s) contained the RHP-zero of G(s), but j j
The magnitude Gd (j! ) is lower at higher frequencies, but it remains larger than 1 up to
otherwise the specified L(s) was independent of G(s). This suggests the following  j j
!d 10 rad/s (where Gd (j!d ) = 1). Thus, feedback control is needed up to frequency
possible approach for a minimum-phase plant (i.e. one with no RHP-zeros or time !d , so we need !c to be approximately equal to 10 rad/s for disturbance rejection. On the
delays). Select a loop shape which has a slope of 1 throughout the frequency range, other hand, we do not want !c to be larger than necessary because of sensitivity to noise
namely and stability problems associated with high gain feedback. We will thus aim at a design with
! 
!c 10 rad/s.
L(s) = c (2.52)
s Inverse-based controller design. We will consider the inverse-based design as given
by (2.52) and (2.53) with !c = 10. Since G(s) has a pole excess of three this yields an
where !c is the desired gain crossover frequency. This loop shape yields a phase
unrealizable controller, and therefore we choose to approximate the plant term (0:05s + 1)2
margin of 90 Æ and an infinite gain margin since the phase of L(j! ) never reaches by (0:1s + 1) and then in the controller we let this term be effective over one decade, i.e. we
180Æ. The controller corresponding to (2.52) is use (0:1s + 1)=(0:01s + 1) to give the realizable design
!
K (s) = c G 1 (s) (2.53) K0 (s) = !c 10s + 1 0:1s + 1 ; L0 (s) = !c 0:1s + 1 ; ! = 10
s s 200 0:01s + 1 s (0:05s + 1)2 (0:01s + 1) c
(2.55)

That is, the controller inverts the plant and adds an integrator (1=s). This is
an old idea, and is also the essential part of the internal model control (IMC)
design procedure (Morari and Zafiriou, 1989) which has proved successful in many 1.5 1.5
applications. However, there are at least two good reasons for why this inverse-based
controller may not be a good choice: 1 1

y (t)

y (t)
1. The controller will not be realizable if G(s) has a pole excess of two or larger,
and may in any case yield large input signals. These problems may be partly fixed 0.5 0.5
by adding high-frequency dynamics to the controller.
2. The loop shape resulting from (2.52) and (2.53) is not generally desirable, unless 0 0
the references and disturbances affect the outputs as steps. This is illustrated by 0 1 2 3 0 1 2 3
Time [sec] Time [sec]
the following example.
(a) Tracking response (b) Disturbance response
Example 2.7 Disturbance process. We now introduce our second SISO example control
problem in which disturbance rejection is an important objective in addition to command Figure 2.19: Responses with “inverse-based” controller K0 (s) for the disturbance process
tracking. We assume that the plant has been appropriately scaled as outlined in Section 1.4.
Problem formulation. Consider the disturbance process described by The response to a step reference is excellent as shown in Figure 2.19(a). The rise time is
about 0:16 s and there is no overshoot so the specifications are more than satisfied. However,
G(s) = 200 1 ; Gd (s) = 100 the response to a step disturbance (Figure 2.19(b)) is much too sluggish. Although the output
10s + 1 (0:05s + 1)2
(2.54)
10s + 1 stays within the range [ 1; 1], it is still 0:75 at t = 3 s (whereas it should be less than 0:1).
Because of the integral action the output does eventually return to zero, but it does not drop
with time in seconds (a block diagram is shown in Figure 2.20). The control objectives are: below 0:1 until after 23 s.

1. Command tracking: The rise time (to reach 90% of the final value) should be less than 0:3 s
The above example illustrates that the simple inverse-based design method where L
and the overshoot should be less than 5%.
2. Disturbance rejection: The output in response to a unit step disturbance should remain has a slope of about N = 1 at all frequencies, does not always yield satisfactory
j j
within the range [ 1; 1] at all times, and it should return to 0 as quickly as possible ( y (t) designs. In the example, reference tracking was excellent, but disturbance rejection
should at least be less than 0:1 after 3 s). was poor. The objective of the next section is to understand why the disturbance
3. Input constraints: u(t) should remain within the range [ 1; 1] at all times to avoid input response was so poor, and to propose a more desirable loop shape for disturbance
saturation (this is easily satisfied for most designs). rejection.
48 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 49

2.6.4 Loop shaping for disturbance rejection 1. Around crossover make the slope N of jLj to be about 1. This is to achieve good
transient behaviour with acceptable gain and phase margins.
At the outset we assume that the disturbance has been scaled such that at each
frequency jd(! )j  1, and the main control objective is to achieve je(! )j < 1. With
2. Increase the loop gain at low frequencies as illustrated in (2.59) to improve the
feedback control we have e = y = SG d d, so to achieve je(! )j  1 for jd(! )j = 1
settling time and to reduce the steady-state offset. Adding an integrator yields
(the worst-case disturbance) we require jSG d (j! )j < 1; 8! , or equivalently,
zero steady-state offset to a step disturbance.
3. Let L(s) roll off faster at higher frequencies (beyond the bandwidth) in order to
j1 + Lj  jGd j 8! (2.56) reduce the use of manipulated inputs, to make the controller realizable and to
reduce the effects of noise.
At frequencies where jG d j > 1, this is approximately the same as requiring
jLj > jGd j. However, in order to minimize the input signals, thereby reducing the The above requirements are concerned with the magnitude, jL(j! )j. In addition,
sensitivity to noise and avoiding stability problems, we do not want to use larger loop the dynamics (phase) of L(s) must be selected such that the closed-loop system
gains than necessary (at least at frequencies around crossover). A reasonable initial is stable. When selecting L(s) to satisfy jLj  jGd j one should replace G d (s)
loop shape Lmin (s) is then one that just satisfies the condition by the corresponding minimum-phase transfer function with the same magnitude,
that is, time delays and RHP-zeros in G d (s) should not be included in L(s) as
jLminj  jGd j (2.57) this will impose undesirable limitations on feedback. On the other hand, any time
delays or RHP-zeros in G(s) must be included in L = GK because RHP pole-zero
where the subscript min signifies that L min is the smallest loop gain to satisfy
cancellations between G(s) and K (s) yield internal instability; see Chapter 4.
je(!)j  1. Since L = GK the corresponding controller with the minimum gain
satisfies Remark. The idea of including a disturbance model in the controller is well known and is
jKminj  jG 1 Gd j (2.58) more rigorously presented in, for example, research on the internal model principle (Wonham,
1974), or the internal model control design for disturbances (Morari and Zafiriou, 1989).
In addition, to improve low-frequency performance (e.g. to get zero steady-state
However, our development is simple, and sufficient for gaining the insight needed for later
offset), we often add integral action at low frequencies, and use chapters.

jK j = j s +s !I jjG 1 Gd j (2.59) Example 2.8 Loop-shaping design for the disturbance process. Consider again the plant
described by (2.54). The plant can be represented by the block diagram in Figure 2.20, and we
This can be summarized as follows: see that the disturbance enters at the plant input in the sense that G and Gd share the same
dominating dynamics as represented by the term 200=(10s + 1).
 For disturbance rejection a good choice for the controller is one which contains
the dynamics (G d ) of the disturbance and inverts the dynamics (G) of the inputs
(at least at frequencies just before crossover).
d
 For disturbances entering directly at the plant output, G d = 1, we get jKminj =
?
jG 1 j, so an inverse-based design provides the best trade-off between performance
(disturbance rejection) and minimum use of feedback. 0:5
 For disturbances entering directly at the plant input (which is a common situation
in practice – often referred to as a load disturbance), we have G d = G and we
get jKmin j = 1, so a simple proportional controller with unit gain yields a good
r -+ e - K (s) u - (0:051s+1)2 e+
-+ ? - 10200s+1 q -y
trade-off between output performance and input usage.
6-
 Notice that a reference change may be viewed as a disturbance directly affecting
the output. This follows from (1.18), from which we get that a maximum reference
change r = R may be viewed as a disturbance d = 1 with G d (s) = R where
R is usually a constant. This explains why selecting K to be like G 1 (an inverse- Figure 2.20: Block diagram representation of the disturbance process in (2.54)
based controller) yields good responses to step changes in the reference.
In addition to satisfying jLj  jG d j (eq. 2.57) at frequencies around crossover, the Step 1. Initial design.
From (2.57) we know that a good initial loop shape looks like
desired loop-shape L(s) may be modified as follows: jLmin j = jGd j = 10100
s+1 at frequencies up to crossover. The corresponding controller is
50 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 51

K (s) = G 1 Lmin = 0:5(0:05s + 1)2 . This controller is not proper (i.e. it has more zeros This gives a phase margin of 51Æ , and peak values MS = 1:43 and MT = 1:23. From
than poles), but since the term (0:05s + 1)2 only comes into effect at 1=0:05 = 20 rad/s, Figure 2.21(b), it is seen that the controller K3 (s) reacts quicker than K2 (s) and the
which is beyond the desired gain crossover frequency !c = 10 rad/s, we may replace it by a disturbance response y3 (t) stays below 1.
constant gain of 1 resulting in a proportional controller
K1 (s) = 0:5 (2.60) Table 2.2: Alternative loop-shaping designs for the disturbance process
The magnitude of the corresponding loop transfer function, jL1 (j! )j, and the response (y1 (t)) Reference Disturbance
to a step change in the disturbance are shown in Figure 2.21. This simple controller works GM PM !c MS MT tr ymax ymax y (t = 3)
surprisingly well, and for t < 3 s the response to a step change in the disturbance is not much Spec. !  10  :3  1:05 1  0:1
different from that with the more complicated inverse-based controller K0 (s) of (2.55) as K0 72.9Æ
shown earlier in Figure 2.19. However, there is no integral action and y1 (t) 1 as t . ! !1 K1
9.95
4.04 44.7Æ
11.4
8.48
1.34
1.83
1
1.33
0.16
0.21
1.00
1.24
0.95
1.35
0.75
0.99
K2 3.24 30.9Æ 8.65 2.28 1.89 0.19 1.51 1.27 0.001
10
4
1.5 K3 19.7 50.9Æ 9.27 1.43 1.23 0.16 1.24 0.99 0.001
L2 ;L3 y1
2
1 Table 2.2 summarizes the results for the four loop-shaping designs; the inverse-based
Magnitude

10
L1 design K0 for reference tracking and the three designs K1 ; K2 and K3 for disturbance
rejection. Although controller K3 satisfies the requirements for disturbance rejection, it is
0.5
y3
0
10
y2 not satisfactory for reference tracking; the overshoot is 24% which is significantly higher than
L3 the maximum value of 5%. On the other hand, the inverse-based controller K0 inverts the
L1 ;L2
10
−2 0 term 1=(10s + 1) which is also in the disturbance model, and therefore yields a very sluggish
response to disturbances (the output is still 0:75 at t = 3 s whereas it should be less than 0:1).
−2 0 2
10 10 10 0 1 2 3
Frequency [rad/s] Time [sec]
(a) Loop gains (b) Disturbance responses In summary, for this process none of the controller designs meet all the objectives
for both reference tracking and disturbance rejection. The solution is to use a two
Figure 2.21: Loop shapes and disturbance responses for controllers K1 , K2 and K3 for the degrees-of-freedom controller as is discussed next.
disturbance process

Step 2. More gain at low frequency. To get integral action we multiply the controller by
the term s+s!I , see (2.59), where !I is the frequency up to which the term is effective (the
2.6.5 Two degrees-of-freedom design
asymptotic value of the term is 1 for ! > !I ). For performance we want large gains at For reference tracking we typically want the controller to look like 1s G 1 , see (2.53),
low frequencies, so we want !I to be large, but in order to maintain an acceptable phase whereas for disturbance rejection we want the controller to look like 1s G 1 Gd , see
margin (which is 44:7Æ for controller K1 ) the term should not add too much negative phase at (2.59). We cannot achieve both of these simultaneously with a single (feedback)
frequency !c , so !I should not be too large. A reasonable value is !I = 0:2!c for which
the phase contribution from s+s!I is arctan(1=0:2)
controller.
90Æ = 11Æ at !c . In our case The solution is to use a two degrees-of-freedom controller where the reference signal

!c 10 rad/s, so we select the following controller r and output measurement y m are independently treated by the controller, rather than
s+2 operating on their difference r y m as in a one degree-of-freedom controller. There
K2 (s) = 0:5 (2.61)
s exist several alternative implementations of a two degrees-of-freedom controller. The
The resulting disturbance response (y2 ) shown in Figure 2.21(b) satisfies the requirement that most general form is shown in Figure 1.3(b) on page 12 where the controller has two
j j
y (t) < 0:1 at time t = 3 s, but y (t) exceeds 1 for a short time. Also, the response is slightly inputs (r and ym ) and one output (u). However, the controller is often split into two
oscillatory as might be expected since the phase margin is only 31Æ and the peak values for
separate blocks as shown in Figure 2.22 where K y denotes the feedback part of the
j j j j
S and T are MS = 2:28 and MT = 1:89.
controller and K r a reference prefilter. The feedback controller K y is used to reduce
Step 3. High-frequency correction. To increase the phase margin and improve the
transient response we supplement the controller with “derivative action” by multiplying the effect of uncertainty (disturbances and model error) whereas the prefilter K r
K2 (s) by a lead-lag term which is effective over one decade starting at 20 rad/s: shapes the commands r to improve tracking performance. In general, it is optimal to
design the combined two degrees-of-freedom controller K in one step. However, in
K3 (s) = 0:5 s + 2 0:05s + 1 (2.62) practice Ky is often designed first for disturbance rejection, and then K r is designed
s 0:005s + 1
52 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 53
d 1.5

? y3 (t)
Gd 1
y3 (t)(two degrees-of-freedom)
r - Kr -+ d - Ky u- G - ?d+ -y 0.5

-6 +
0
ym
d+ 0 0.5 1 1.5
Time [sec]
2 2.5 3

+ 6 Figure 2.23: Tracking responses with the one degree-of-freedom controller (K3 ) and the two
n degrees-of-freedom controller (K3 ; Kr3 ) for the disturbance process

Figure 2.22: Two degrees-of-freedom controller


Tref = 1=(0:1s + 1) (a first-order response with no overshoot). To get a low-order Kr (s), we
may either use the actual T (s) and then use a low-order approximation of Kr (s), or we may
to improve reference tracking. This is the approach taken here. start with a low-order approximation of T (s). We will do the latter. From the step response y3
Let T = L(1 + L) 1 (with L = GKy ) denote the complementary sensitivity in Figure 2.23 we approximate the response by two parts; a fast response with time constant
function for the feedback system. Then for a one degree-of-freedom controller 0:1 s and gain 1:5, and a slower response with time constant 0:5 s and gain 0:5 (the sum of
y = T r, whereas for a two degrees-of-freedom controller y = T K r r. If the desired the gains is 1). Thus we use T (s)  1:5 0:5 (0:7s+1)
0:1s+1 0:5s+1 = (0:1s+1)(0:5s+1) , from which (2.63)
transfer function for reference tracking (often denoted the reference model) is T ref , 0: 5s +1
yields Kr (s) = 0:7s+1 . Following closed-loop simulations we modified this slightly to arrive
then the corresponding ideal reference prefilter K r satisfies T Kr = Tref , or at the design
Kr3 (s) = 0:5s + 1  1
Kr (s) = T 1(s)Tref (s)
(2.65)
(2.63) 0:65s + 1 0:03s + 1
where the term 1=(0:03s + 1) was included to avoid the initial peaking of the input signal
Thus, in theory we may design K r (s) to get any desired tracking response T ref (s). u(t) above 1. The tracking response with this two degrees-of-freedom controller is shown in
However, in practice it is not so simple because the resulting K r (s) may be unstable Figure 2.23. The rise time is 0:25 s which is better than the requirement of 0:3 s, and the
(if G(s) has RHP-zeros) or unrealizable, and also T K r 6= Tref if T (s) is not known overshoot is only 2:3% which is better than the requirement of 5%. The disturbance response
is the same as curve y3 in Figure 2.21. In conclusion, we are able to satisfy all specifications
exactly.
using a two degrees-of-freedom controller.
Remark. A convenient practical choice of prefilter is the lead-lag network

Kr (s) = lead s + 1
Loop shaping applied to a flexible structure
(2.64)
lag s + 1 The following example shows how the loop-shaping procedure for disturbance
Here we select lead > lag if we want to speed up the response, and lead < lag if we want rejection, can be used to design a one degree-of-freedom controller for a very
to slow down the response. If one does not require fast reference tracking, which is the case in different kind of plant.
many process control applications, a simple lag is often used (with lead = 0).
Example 2.10 Loop shaping for a flexible structure. Consider the following model of a
Example 2.9 Two degrees-of-freedom design for the disturbance process. In Example flexible structure with a disturbance occurring at the plant input
2.8 we designed a loop-shaping controller K3 (s) for the plant in (2.54) which gave good 2
G(s) = Gd (s) = 2 2:5s(2s +2 1) 2 (2.66)
performance with respect to disturbances. However, the command tracking performance was
(s + 0:5 )(s + 2 )
not quite acceptable as is shown by y3 in Figure 2.23. The rise time is 0:16 s which is
better than the required value of 0:3s, but the overshoot is 24% which is significantly higher From the Bode magnitude plot in Figure 2.24(a) we see that jGd (j! )j  1 around the
than the maximum value of 5%. To improve upon this we can use a two degrees-of-freedom resonance frequencies of 0:5 and 2 rad/s, so control is needed at these frequencies. The dashed
controller with Ky = K3 , and we design Kr (s) based on (2.63) with reference model line in Figure 2.24(b) shows the open-loop response to a unit step disturbance. The output is
54 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 55

10
2
2.7 Shaping closed-loop transfer functions
2
G = Gd yOL In this section, we introduce the reader to the shaping of the magnitudes of closed-
1 yCL loop transfer functions, where we synthesize a controller by minimizing an H 1
Magnitude

0
10 0 performance objective. The topic is discussed further in Section 3.4.6 and in more
detail in Chapter 9.
−1 Specifications directly on the open-loop transfer function L = GK , as in the
10
−2 loop-shaping design procedures of the previous section, make the design process
transparent as it is clear how changes in L(s) affect the controller K (s) and vice
−2 0 2 −2
10 10 10 0 5 10 15 20
Frequency [rad/s] Time [sec]
versa. An apparent problem with this approach, however, is that it does not consider
(a) Magnitude plot of jGj = jGdj (b) Open-loop and closed-loop distur-
bance responses with K =1 directly the closed-loop transfer functions, such as S and T , which determine the
final response. The following approximations apply

jL(j!)j  1 ) S  L 1 ; T  1
Figure 2.24: Flexible structure in (2.66)

jL(j!)j  1 ) S  1; T  L
seen to cycle between 2 and 2 (outside the allowed range 1 to 1), which confirms that
but in the crossover region where jL(j! )j is close to 1, one cannot infer anything
control is needed. From (2.58) a controller which meets the specification y (! ) 1 for j j about S and T from the magnitude of the loop shape, jL(j! )j. For example, jS j and
jd(! ) = 1 is given by Kmin (j! ) = G 1 Gd = 1. Indeed the controller
j j j j j
jT j may experience large peaks if L(j!) is close to 1, i.e. the phase of L(j!) is
crucial in this frequency range.
K (s) = 1 (2.67)
An alternative design strategy is to directly shape the magnitudes of closed-loop
transfer functions, such as S (s) and T (s). Such a design strategy can be formulated
turns out to be a good choice as is verified by the closed-loop disturbance response (solid line) as an H1 optimal control problem, thus automating the actual controller design and
in Figure 2.24(b); the output goes up to about 0:5 and then returns to zero. The fact that the
choice L(s) = G(s) gives closed-loop stability is not immediately obvious since G has 4 j j leaving the engineer with the task of selecting reasonable bounds (“weights”) on the
desired closed-loop transfer functions. Before explaining how this may be done in
practice, we discuss the terms H 1 and H2 .
gain crossover frequencies. However, instability cannot occur because the plant is “passive”
with G > 180Æ at all frequencies.
\

2.6.6 Conclusions on loop shaping 2.7.1 The terms H1 and H2


The H1 norm of a stable scalar transfer function f (s) is simply the peak value of
The loop-shaping procedure outlined and illustrated by the examples above is well
suited for relatively simple problems, as might arise for stable plants where L(s) jf (j!)j as a function of frequency, that is,
crosses the negative real axis only once. Although the procedure may be extended to
more complicated systems the effort required by the engineer is considerably greater.
kf (s)k1 , max !
jf (j!)j (2.68)
In particular, it may be very difficult to achieve stability.
Remark. Strictly speaking, we should here replace “max” (the maximum value) by “sup” (the
Fortunately, there exist alternative methods where the burden on the engineer is
much less. One such approach is the Glover-McFarlane H 1 loop-shaping procedure
supremum, the least upper bound). This is because the maximum may only be approached as
w !1 and may therefore not actually be achieved. However, for engineering purposes there
which is discussed in detail in Chapter 9. It is essentially a two-step procedure, where is no difference between “sup” and “max”.
in the first step the engineer, as outlined in this section, decides on a loop shape, jLj
(denoted the “shaped plant” G s ), and in the second step an optimization provides the The terms H1 norm and H 1 control are intimidating at first, and a name conveying
necessary phase corrections to get a stable and robust design. The method is applied the engineering significance of H 1 would have been better. After all, we are
to the disturbance process in Example 9.3 on page 387. simply talking about a design method which aims to press down the peak(s) of
Another design philosophy which deals directly with shaping both the gain and one or more selected transfer functions. However, the term H 1 , which is purely
phase of L(s) is the quantitative feedback theory (QFT) of Horowitz (1991). mathematical, has now established itself in the control community. To make the term
56 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 57

less forbidding, an explanation of its background may help. First, the symbol 1
1
comes from the fact that the maximum magnitude over frequency may be written as 10

Z 1 1=p jS j j1=wP j
max jf (j!)j = plim
!1 jf (j!)jp d! 0

Magnitude
! 1
10

Essentially, by raising jf j to an infinite power we pick out its peak value. Next, the
symbol H stands for “Hardy space”, and H 1 in the context of this book is the set
−1
10

of transfer functions with bounded 1-norm, which is simply the set of stable and
−2
proper transfer functions. 10
Similarly, the symbol H 2 stands for the Hardy space of transfer functions with
−2 −1 0 1
10 10 10 10
Frequency [rad/s]
bounded 2-norm, which is the set of stable and strictly proper transfer functions.
The H2 norm of a strictly proper stable scalar transfer function is defined as (a) Sensitivity S and performance weight wP
 Z 1 1=2 3
1 kwP S k1
kf (s)k2 , 2
jf (j!)j2 d! (2.69)
1
p

Magnitude
2
The factor 1= 2 is introduced to get consistency with the 2-norm of the
corresponding impulse response; see (4.117). Note that the H 2 norm of a semi-
proper (or bi-proper) transfer function (where lim s!1 f (s) is a non-zero constant)
1

is infinite, whereas its H1 norm is finite. An example of a semi-proper transfer


function (with an infinite H 2 norm) is the sensitivity function S = (I + GK ) 1 . 0 −2 −1 0 1
10 10 10 10
Frequency [rad/s]
2.7.2 Weighted sensitivity (b) Weighted sensitivity wP S
As already discussed, the sensitivity function S is a very good indicator of closed-
loop performance, both for SISO and MIMO systems. The main advantage of Figure 2.25: Case where jS j exceeds its bound 1=jwP j, resulting in kwP S k1 > 1
considering S is that because we ideally want S small, it is sufficient to consider just
its magnitude jS j; that is, we need not worry about its phase. Typical specifications
in terms of S include:
1. Minimum bandwidth frequency ! B  (defined as the frequency where jS (j!)j jS (j!)j < 1=jwP (j!)j; 8! (2.70)
crosses 0.707 from below).
2. Maximum tracking error at selected frequencies.
3. System type, or alternatively the maximum steady-state tracking error, A. , jwP S j < 1; 8! , kwP S k1 < 1 (2.71)
4. Shape of S over selected frequency ranges.
5. Maximum peak magnitude of S , kS (j! )k 1  M .
The last equivalence follows from the definition of the H 1 norm, and in words the
The peak specification prevents amplification of noise at high frequencies, and also performance requirement is that the H 1 norm of the weighted sensitivity, w P S ,
introduces a margin of robustness; typically we select M = 2. Mathematically, these must be less than one. In Figure 2.25(a), an example is shown where the sensitivity,
specifications may be captured by an upper bound, 1=jw P (s)j, on the magnitude of jS j, exceeds its upper bound, 1=jw P j, at some frequencies. The resulting weighted
S , where wP (s) is a weight selected by the designer. The subscript P stands for sensitivity, jwP S j therefore exceeds 1 at the same frequencies as is illustrated in
performance since S is mainly used as a performance indicator, and the performance Figure 2.25(b). Note that we usually do not use a log-scale for the magnitude when
requirement becomes plotting weighted transfer functions, such as jw P S j.
58 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 59

2.7.3 Stacked requirements: mixed sensitivity


M The specification kwP S k1 < 1 puts a lower bound on the bandwidth, but not
0
10 an upper one, and nor does it allow us to specify the roll-off of L(s) above the
!B
Magnitude

bandwidth. To do this one can make demands on another closed-loop transfer


function, for example, on the complementary sensitivity T = I S = GKS .
−1
10 For instance, one might specify an upper bound 1=jw T j on the magnitude of T
A to make sure that L rolls off sufficiently fast at high frequencies. Also, to achieve
robustness or to restrict the magnitude of the input signals, u = KS (r G d d),
−2
10 −2 −1 0 1 2
one may place an upper bound, 1=jw u j, on the magnitude of KS . To combine these
10 10 10 10 10 “mixed sensitivity” specifications, a “stacking approach” is usually used, resulting in
Frequency [rad/s]
the following overall specification:
Figure 2.26: Inverse of performance weight. Exact and asymptotic plot of 1=jwP (j! )j in wP S
2 3
(2.72)
kN k1 = max
!

 (N ( j! )) < 1; N = 4 wT T 5 (2.74)
wu KS
Weight selection. An asymptotic plot of a typical upper bound, 1=jw P j, is shown
in Figure 2.26. The weight illustrated may be represented by We here use the maximum singular value,   (N (j!)), to measure the size of the
matrix N at each frequency. For SISO systems, N is a vector and 
 (N ) is the usual
s=M + !B Euclidean vector norm:
wP (s) =
s + !B A
(2.72) p
 (N ) =jwP S j2 + jwT T j2 + jwu KS j2 (2.75)

and we see that 1=jwP (j! )j (the upper bound on jS j) is equal to A  1 at low After selecting the form of N and the weights, the H 1 optimal controller is obtained
frequencies, is equal to M  1 at high frequencies, and the asymptote crosses 1 at by solving the problem
the frequency ! B , which is approximately the bandwidth requirement. min kN (K )k1 (2.76)
K
Remark. For this weight the loop shape L = !B  =s yields an S which exactly matches the where K is a stabilizing controller. A good tutorial introduction to H 1 control is
bound (2.71) at frequencies below the bandwidth and easily satisfies (by a factor M ) the bound given by Kwakernaak (1993).
at higher frequencies.
Remark 1 The stacking procedure is selected for mathematical convenience as it does not
In some cases, in order to improve performance, we may want a steeper slope for allow us to exactly specify the bounds on the individual transfer functions as described above.
L (and S ) below the bandwidth, and then a higher-order weight may be selected. A For example, assume that 1 (K ) and 2 (K ) are two functions of K (which might represent
weight which asks for a slope of 2 for L in a range of frequencies below crossover 1 (K ) = wP S and 2 (K ) = wT T ) and that we want to achieve
is j1 j < 1 and j2 j < 1 (2.77)
(s=M 1=2 + !B )2
wP (s) =
(s + !B A1=2 )2
(2.73) This is similar to, but not quite the same as the stacked requirement
 
 1 = j1 j2 + j2 j2 < 1
p
(2.78)
j j
Exercise 2.4 Make an asymptotic plot of 1= wP in (2.73) and compare with the asymptotic 2
j j
plot of 1= wP in (2.72). Objectives (2.77) and (2.78) are very similar when either j1 j or j2 j is small, but in the
“worst” case when j1 j = j2 j, we get from (2.78) that j1 j  0:707 and j2pj  0:707. That
The insights gained in the previous section on loop-shaping design are very is, there is a possible “error” in each specification equal to at most a factor 2  3 dB. In
useful for selecting weights. For example, for disturbance rejection we must satisfy p
general, with n stacked requirements the resulting error is at most n. This inaccuracy in the
jSGd (j!)j < 1 at all frequencies (assuming the variables have been scaled to be less specifications is something we are probably willing to sacrifice in the interests of mathematical
than 1 in magnitude). It then follows that a good initial choice for the performance convenience. In any case, the specifications are in general rather rough, and are effectively
weight is to let jwP (j! )j look like jGd (j! )j at frequencies where jG d j > 1. knobs for the engineer to select and adjust until a satisfactory design is reached.
60 MULTIVARIABLE FEEDBACK CONTROL CLASSICAL CONTROL 61

k k H
Remark 2 Let 0 = minK N (K ) 1 denote the optimal 1 norm. An important property
H
of 1 optimal controllers is that they yield a flat frequency response, that is, 
p  (N (j! )) = 0
at all frequencies. The practical implication is that, except for at most a factor n, the transfer 0
10
functions resulting from a solution to (2.76) will be close to 0 times the bounds selected

Magnitude
by the designer. This gives the designer a mechanism for directly shaping the magnitudes of
 (S ),  (T ),  (KS ), and so on.
S1 S2
−2
10
Example 2.11 H1 mixed sensitivity design for the disturbance process. Consider
H
again the plant in (2.54), and consider an 1 mixed sensitivity S=KS design in which 1=wP 1 1=wP 2
 
N = wwPKS
S
−4
10 −2 −1 0 1 2
(2.79) 10 10 10 10 10
u Frequency [rad/s]
Appropriate scaling of the plant has been performed so that the inputs should be about 1 or
Figure 2.27: Inverse of performance weight (dashed line) and resulting sensitivity function
less in magnitude, and we therefore select a simple input weight wu = 1. The performance H
(solid line) for two 1 designs (1 and 2) for the disturbance process
weight is chosen, in the form of (2.72), as

wP 1 (s) = s=M + !B ; M = 1:5; !B = 10; A = 10 4 (2.80) 1.5 1.5
s + !B A
y2 (t) y1 (t)
A value of A = 0 would ask for integral action in the controller, but to get a stable weight 1 1
and to prevent numerical problems in the algorithm used to synthesize the controller, we have y1 (t)
moved the integrator slightly by using a small non-zero value for A. This has no practical
 = 10 has been selected to achieve
significance in terms of control performance. The value !B 0.5 0.5 y2 (t)
H
approximately the desired crossover frequency !c of 10 rad/s. The 1 problem is solved with
the -toolbox in MATLAB using the commands in Table 2.3. 0
0
0 1 2 3 0 1 2 3
Table 2.3: MATLAB program to synthesize an H1 controller Time [sec] Time [sec]
% Uses the Mu-toolbox (a) Tracking response (b) Disturbance response
G=nd2sys(1,conv([10 1],conv([0.05 1],[0.05 1])),200); % Plant is G.

H1 designs (1 and 2) for the


M=1.5; wb=10; A=1.e-4; Wp = nd2sys([1/M wb], [1 wb*A]); Wu = 1; % Weights.
% Figure 2.28: Closed-loop step responses for two alternative
% Generalized plant P is found with function sysic: disturbance process
% (see Section 3.8 for more details)
%
systemnames = ’G Wp Wu’;
inputvar = ’[ r(1); u(1)]’; 1:30, kT k1 = MT = 1:0, GM = 8:04, PM = 71:2Æ and !c = 7:22 rad/s, and the tracking
response is very good as shown by curve y1 in Figure 2.28(a). (The design is actually very
outputvar = ’[Wp; Wu; r-G]’;
input to G = ’[u]’;
input to Wp = ’[r-G]’; similar to the loop-shaping design for references, K0 , which was an inverse-based controller.)
input to Wu = ’[u]’;
sysoutname = ’P’;
However, we see from curve y1 in Figure 2.28(b) that the disturbance response is very
cleanupsysic = ’yes’; sluggish. If disturbance rejection is the main concern, then from our earlier discussion in
sysic; Section 2.6.4 this motivates the need for a performance weight that specifies higher gains at
%
% Find H-infinity optimal controller: low frequencies. We therefore try
%
1=2  2
wP 2 (s) = (s=M  +1!=2B )2 ; M = 1:5; !B = 10; A = 10 4
nmeas=1; nu=1; gmn=0.5; gmx=20; tol=0.001;
(2.81)
[khinf,ghinf,gopt] = hinfsyn(P,nmeas,nu,gmn,gmx,tol);
(s + !B A )
H
For this problem, we achieved an optimal 1 norm of 1:37, so the weighted sensitivity The inverse of this weight is shown in Figure 2.27, and is seen from the dashed line to cross 1 in
requirements are not quite satisfied (see design 1 in Figure 2.27 where the curve for S1 j j magnitude at about the same frequency as weight wP 1 , but it specifies tighter control at lower
j j k k
is slightly above that for 1= wP 1 ). Nevertheless, the design seems good with S 1 = MS = frequencies. With the weight wP 2 , we get a design with an optimal 1 norm of 2:21, yieldingH
62 MULTIVARIABLE FEEDBACK CONTROL

MS = 1:63, MT = 1:43, GM = 4:76, PM = 43:3Æ and !c = 11:34 rad/s. (The design


is actually very similar to the loop-shaping design for disturbances, K3 .) The disturbance
response is very good, whereas the tracking response has a somewhat high overshoot; see
curve y2 in Figure 2.28(a).
In conclusion, design 1 is best for reference tracking whereas design 2 is best for 3
disturbance rejection. To get a design with both good tracking and good disturbance rejection

INTRODUCTION TO
we need a two degrees-of-freedom controller, as was discussed in Example 2.9.

2.8 Conclusion MULTIVARIABLE CONTROL


The main purpose of this chapter has been to present the classical ideas and
techniques of feedback control. We have concentrated on SISO systems so that
insights into the necessary design trade-offs, and the design approaches available, can In this chapter, we introduce the reader to multi-input multi-output (MIMO) systems. We
be properly developed before MIMO systems are considered. We also introduced the
H1 problem based on weighted sensitivity, for which typical performance weights
discuss the singular value decomposition (SVD), multivariable control, and multivariable
right-half plane (RHP) zeros. The need for a careful analysis of the effect of uncertainty
are given in (2.72) and (2.73). in MIMO systems is motivated by two examples. Finally we describe a general control
configuration that can be used to formulate control problems. Many of these important topics
are considered again in greater detail later in the book. The chapter should be accessible to
readers who have attended a classical SISO control course.

3.1 Introduction
We consider a multi-input multi-output (MIMO) plant with m inputs and l outputs.
Thus, the basic transfer function model is y (s) = G(s)u(s), where y is an l  1
vector, u is an m  1 vector and G(s) is an l  m transfer function matrix.
If we make a change in the first input, u 1 , then this will generally affect all the
outputs, y1 ; y2 ; : : : ; yl , that is, there is interaction between the inputs and outputs.
A non-interacting plant would result if u 1 only affects y1 , u2 only affects y2 , and so
on.
The main difference between a scalar (SISO) system and a MIMO system is the
presence of directions in the latter. Directions are relevant for vectors and matrices,
but not for scalars. However, despite the complicating factor of directions, most
of the ideas and techniques presented in the previous chapter on SISO systems
may be extended to MIMO systems. The singular value decomposition (SVD)
provides a useful way of quantifying multivariable directionality, and we will see
that most SISO results involving the absolute value (magnitude) may be generalized
to multivariable systems by considering the maximum singular value. An exception
to this is Bode’s stability condition which has no generalization in terms of singular
values. This is related to the fact that it is difficult to find a good measure of phase
for MIMO transfer functions.
64 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 65

The chapter is organized as follows. We start by presenting some rules for 3. Push-through rule. For matrices of appropriate dimensions

G2 G1 ) 1 = (I G1 G2 ) 1 G1
determining multivariable transfer functions from block diagrams. Although most
of the formulas for scalar systems apply, we must exercise some care since matrix G1 (I (3.1)
multiplication is not commutative, that is, in general GK 6= KG. Then we introduce
Proof: Equation (3.1) is verified by pre-multiplying both sides by (I G1 G2 ) and post-
the singular value decomposition and show how it may be used to study directions multiplying both sides by (I G2 G1 ). 2
in multivariable systems. We also give a brief introduction to multivariable control
and decoupling. We then consider a simple plant with a multivariable RHP-zero and Exercise 3.1 Derive the cascade and feedback rules.
show how the effect of this zero may be shifted from one output channel to another.
After this we discuss robustness, and study two example plants, each 2  2, which The cascade and feedback rules can be combined into the following MIMO rule for
demonstrate that the simple gain and phase margins used for SISO systems do not evaluating closed-loop transfer functions from block diagrams.
generalize easily to MIMO systems. Finally, we consider a general control problem
MIMO Rule: Start from the output and write down the blocks as you meet
formulation.
them when moving backwards (against the signal flow), taking the most direct
At this point, you may find it useful to browse through Appendix A where some
path towards the input. If you exit from a feedback loop then include a term
(I L) 1 for positive feedback (or (I + L) 1 for negative feedback) where
important mathematical tools are described. Exercises to test your understanding of
this mathematics are given at the end of this chapter.
L is the transfer function around that loop (evaluated against the signal flow
starting at the point of exit from the loop).

3.2 Transfer functions for MIMO systems Care should be taken when applying this rule to systems with nested loops. For
such systems it is probably safer to write down the signal equations and eliminate
internal variables to get the transfer function of interest. The rule is best understood
G u -++ c v- G1 q y- by considering an example.
u - G1 - G2 -z 6 
z G2  P22
(a) Cascade system (b) Positive feedback system

Figure 3.1: Block diagrams for the cascade rule and the feedback rule
- P21 -+ e?+ - K q - P12
The following three rules are useful when evaluating transfer functions for MIMO
systems.
1. Cascade rule. For the cascade (series) interconnection of G 1 and G2 in
w - P11 e+ -z
-+ ?
Figure 3.1(a), the overall transfer function matrix is G = G 2 G1 .
Remark. The order of the transfer function matrices in G = G2 G1 (from left to right) is Figure 3.2: Block diagram corresponding to (3.2)
the reverse of the order in which they appear in the block diagram of Figure 3.1(a) (from left
to right). This has led some authors to use block diagrams in which the inputs enter at the Example 3.1 The transfer function for the block diagram in Figure 3.2 is given by
right hand side. However, in this case the order of the transfer function blocks in a feedback
path will be reversed compared with their order in the formula, so no fundamental benefit is z = (P11 + P12 K (I P22 K ) 1 P21 )w (3.2)
obtained.
To derive this from the MIMO rule above we start at the output z and move backwards towards
2. Feedback rule. With reference to the positive feedback system in Figure 3.1(b), w. There are two branches, one of which gives the term P11 directly. In the other branch we
we have v = (I L) 1 u where L = G2 G1 is the transfer function around the move backwards and meet P12 and then K . We then exit from a feedback loop and get a term
loop. (I L) 1 (positive feedback) with L = P22 K , and finally we meet P21 .
66 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 67

Exercise 3.2 Use the MIMO rule to derive the transfer functions from u to y and from u to The following relationships are useful:
z in Figure 3.1(b). Use the push-through rule to rewrite the two transfer functions.
(I + L) 1 + L(I + L) 1 = S + T = I (3.7)
Exercise 3.3 Use the MIMO rule to show that (2.18) corresponds to the negative feedback
system in Figure 2.4.
G(I + KG) 1 = (I + GK ) 1 G (3.8)

Negative feedback control systems GK (I + GK ) 1 = G(I + KG) 1 K = (I + GK ) 1 GK (3.9)

T = L(I + L) 1 = (I + (L) 1 ) 1 (3.10)


d2 d1
r -+- e - K + ?+
u- e - G -+ ?e q
+
-y Note that the matrices G and K in (3.7)-(3.10) need not be square whereas L = GK
is square. (3.7) follows trivially by factorizing out the term (I + L) 1 from the
6 right. (3.8) says that GS I = SG and follows from the push-through rule. (3.9)
also follows from the push-through rule. (3.10) can be derived from the identity
Figure 3.3: Conventional negative feedback control system M1 1 M2 1 = (M2 M1 ) 1 .
Similar relationships, but with G and K interchanged, apply for the transfer
For the negative feedback system in Figure 3.3, we define L to be the loop transfer functions evaluated at the plant input. To assist in remembering (3.7)-(3.10) note that
function as seen when breaking the loop at the output of the plant. Thus, for the case G comes first (because the transfer function is evaluated at the output) and then G
where the loop consists of a plant G and a feedback controller K we have and K alternate in sequence. A given transfer matrix never occurs twice in sequence.
For example, the closed-loop transfer function G(I + GK ) 1 does not exist (unless
L = GK (3.3) G is repeated in the block diagram, but then these G’s would actually represent two
different physical entities).
The sensitivity and complementary sensitivity are then defined as

S , (I + L) 1 ; T , I S = L(I + L) 1 Remark 1 The above identities are clearly useful when deriving transfer functions
(3.4) analytically, but they are also useful for numerical calculations involving state-space
realizations, e.g. L(s) = C (sI A) 1 B + D. For example, assume we have been given
In Figure 3.3, T is the transfer function from r to y , and S is the transfer function 
a state-space realization for L = GK with n states (so A is a n n matrix) and we want to
from d1 to y ; also see equations (2.16) to (2.20) which apply to MIMO systems. find the state space realization of T . Then we can first form S = (I + L) 1 with n states, and
S and T are sometimes called the output sensitivity and output complementary then multiply it by L to obtain T = SL with 2n states. However, a minimal realization of T
sensitivity, respectively, and to make this explicit one may use the notation L O  L, has only n states. This may be obtained numerically using model reduction, but it is preferable
SO  S and TO  T . This is to distinguish them from the corresponding transfer to find it directly using T = I S , see (3.7).
functions evaluated at the input to the plant.
We define LI to be the loop transfer function as seen when breaking the loop at Remark 2 Note also that the right identity in (3.10) can only be used to compute the state-
the input to the plant with negative feedback assumed. In Figure 3.3 space realization of T if that of L 1 exists, so L must be semi-proper with D = 0 (which is
6
rarely the case in practice). On the other hand, since L is square, we can always compute the
LI = KG (3.5) frequency response of L(j! ) 1 (except at frequencies where L(s) has j! -axis poles), and
then obtain T (j! ) from (3.10).
The input sensitivity and input complementary sensitivity functions are then defined
as Remark 3 In Appendix A.6 we present some factorizations of the sensitivity function which
SI , (I + LI ) 1 ; TI , I SI = LI (I + LI ) 1 (3.6)
will be useful in later applications. For example, (A.139) relates the sensitivity of a perturbed
plant, S 0 = (I + G0 K ) 1 , to that of the nominal plant, S = (I + GK ) 1 . We have
In Figure 3.3, T I is the transfer function from d 2 to u. Of course, for SISO systems
LI = L, SI = S , and TI = T . S 0 = S (I + EO T ) 1 ; EO , (G0 G)G 1 (3.11)

Exercise 3.4 In Figure 3.3, what transfer function does SI represent? Evaluate the transfer where EO is an output multiplicative perturbation representing the difference between G and
functions from d1 and d2 to r y . G0 , and T is the nominal complementary sensitivity function.
68 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 69

3.3 Multivariable frequency response analysis where


dj (!) = djo ej j ; yi (!) = yio ej i (3.17)
The transfer function G(s) is a function of the Laplace variable s and can be used
Here the use of ! (and not j! ) as the argument of d j (! ) and yi (! ) implies that these
to represent a dynamic system. However, if we fix s = s 0 then we may view G(s 0 )
are complex numbers, representing at each frequency ! the magnitude and phase of
simply as a complex matrix, which can be analyzed using standard tools in matrix
the sinusoidal signals in (3.13) and (3.14).
algebra. In particular, the choice s 0 = j! is of interest since G(j! ) represents the
The overall response to simultaneous input signals of the same frequency in
response to a sinusoidal signal of frequency ! .
several input channels is, by the superposition principle for linear systems, equal
to the sum of the individual responses, and we have from (3.16)
3.3.1 Obtaining the frequency response from G s () X
yi (!) = gi1 (j!)d1 (!) + gi2 (j!)d2 (!) +    = gij (j!)dj (!) (3.18)
j
d - G(s) -y or in matrix form
y(!) = G(j!)d(!) (3.19)

Figure 3.4: System G(s) with input d and output y where 2 3 2 3


d1 (!) y1 (!)
6 d2 (!) 7 6 y2 (!) 7
The frequency domain is ideal for studying directions in multivariable systems at d(!) = 646 7 6
and y(!) = 64 7
.. 7 .. 7 (3.20)
any given frequency. Consider the system G(s) in Figure 3.4 with input d(s) and . 5 . 5
output y (s): dm (!) yl (!)
y(s) = G(s)d(s) (3.12) represent the vectors of sinusoidal input and output signals.
(We here denote the input by d rather than by u to avoid confusion with the matrix
U used below in the singular value decomposition). In Section 2.1 we considered the
Example 3.2 Consider a 2  2 multivariable system where we simultaneously apply
sinusoidal signals of the same frequency ! to the two input channels:
sinusoidal response of scalar systems. These results may be directly generalized to    
multivariable systems by considering the elements g ij of the matrix G. We have d(t) = dd1 ((tt)) = dd10 sin(
2 20
!t + 1 )
sin(!t + )
2 (3.21)
 gij (j!) represents the sinusoidal response from input j to output i.
The corresponding output signal is
To be more specific, apply to input channel j a scalar sinusoidal signal given by    
dj (t) = dj0 sin(!t + j ) (3.13) y (t) = yy12 ((tt)) = yy10 sin(!t + 1 )
20 sin(!t + 2 ) (3.22)

This input signal is persistent, that is, it has been applied since t = 1. Then the which can be computed by multiplying the complex matrix G(j! ) by the complex vector d(! ):
corresponding persistent output signal in channel i is also a sinusoid with the same  j 1   j 1 
frequency y (! ) = G(j! )d(! ); y (! ) = yy10 eej 2 ; d(! ) = dd10 eej 2
20 20 (3.23)
yi (t) = yi0 sin(!t + i ) (3.14)
where the amplification (gain) and phase shift may be obtained from the complex
3.3.2 Directions in multivariable systems
number gij (j! ) as follows
yio For a SISO system, y = Gd, the gain at a given frequency is simply
= jgij (j!)j; i j = \gij (j!) (3.15)
djo jy(!)j = jG(j!)d(!)j = jG(j!)j
In phasor notation, see (2.7) and (2.9), we may compactly represent the sinusoidal jd(!)j jd(!)j
time response described in (3.13)-(3.15) by
The gain depends on the frequency ! , but since the system is linear it is independent
yi (!) = gij (j!)dj (!) (3.16) of the input magnitude jd(! )j.
70 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 71

Things are not quite as simple for MIMO systems where the input and output 8
 (G1 ) = 7:34
signals are both vectors, and we need to “sum up” the magnitudes of the elements
6
in each vector by use of some norm, as discussed in Appendix A.5.1. If we select

kyk2 =kdk2
the vector 2-norm, the usual measure of length, then at a given frequency ! the 4
magnitude of the vector input signal is
2
sX q
kd(!)k2 = jdj (!)j2 = d210 + d220 +    (3.24) 0  (G1 ) = 0:27
j −5 −4 −3 −2 −1 0 1 2 3 4 5
d20 =d10
and the magnitude of the vector output signal is
s
Figure 3.5: Gain kG1 dk2 =kdk2 as a function of d20 =d10 for G1 in (3.29)
X q
ky(!)k2 = jyi (!)j2 = y102 + y202 +    (3.25)
i (a constant matrix) we compute for the five inputs dj the following output vectors
         
G(s) for a particular input signal d(!) is then given by the y1 = 5 ; y2 = 4 ; y3 = 6:36 ; y4 = 0:707 ; y5 = 0:2
The gain of the system 3 2 3:54 0:707 0:2
ratio p
ky(!)k2 = kG(j!)d(!)k2 = py102 + y202 +    and the 2-norms of these five outputs (i.e. the gains for the five inputs) are
kd(!)k2 kd(!)k2 d210 + d220 +   
(3.26)
ky1 k2 = 5:83; ky2 k2 = 4:47; ky3 k2 = 7:30; ky4 k2 = 1:00; ky5 k2 = 0:28
Again the gain depends on the frequency ! , and again it is independent of the input This dependency of the gain on the input direction is illustrated graphically in Figure 3.5
magnitude kd(! )k2 . However, for a MIMO system there are additional degrees of where we have used the ratio d20 =d10 as an independent variable to represent the input
freedom and the gain depends also on the direction of the input d. The maximum direction. We see that, depending on the ratio d20 =d10 , the gain varies between 0:27 and
gain as the direction of the input is varied is the maximum singular value of G, 7:34. These are the minimum and maximum singular values of G1 , respectively.

max
kGdk2 = max kGdk =  (G)
6 0 kdk2 kdk2 =1
d= 2 (3.27)
3.3.3 Eigenvalues are a poor measure of gain
whereas the minimum gain is the minimum singular value of G, Before discussing in more detail the singular value decomposition we want to
demonstrate that the magnitudes of the eigenvalues of a transfer function matrix, e.g.
min
kGdk2 = min kGdk = (G) ji (G(j!)j, do not provide a useful means of generalizing the SISO gain, jG(j!)j.
6 0 kdk2
d= kdk2 =1 2 (3.28)
First of all, eigenvalues can only be computed for square systems, and even then they
can be very misleading. To see this, consider the system y = Gd with
The first identities in (3.27) and (3.28) follow because the gain is independent of the  
input magnitude for a linear system. G = 00 100
0 (3.30)
 
Example 3.3 For a system with two inputs, d = dd10 , the gain is in general different for which has both eigenvalues  i equal to zero. However, to conclude from the
20 eigenvalues that the system gain is zero is clearly misleading. For example, with
the following five inputs:
  an input vector d = [0 1] T we get an output vector y = [100 0] T .
d1 = 1 ; d2 =  0 ; d3 =  0:707 ; d4 =  0:707 ; d5 =  0:6  The “problem” is that the eigenvalues measure the gain for the special case when
0 1 0:707 0:707 0 :8 the inputs and the outputs are in the same direction, namely in the direction of the
(which all have the same magnitude kdk2 = 1 but are in different directions). For example, eigenvectors. To see this let t i be an eigenvector of G and consider an input d = t i .
for the 2  2 system Then the output is y = Gt i = i ti where i is the corresponding eigenvalue. We get
 
G1 = 53 42 (3.29) kyk=kdk = ki ti k=ktik = ji j
72 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 73

so ji j measures the gain in the direction t i . This may be useful for stability analysis, U is an l  l unitary matrix of output singular vectors, u i ,
but not for performance.
To find useful generalizations of jGj for the case when G is a matrix, we need the V is an m  m unitary matrix of input singular vectors, v i ,
concept of a matrix norm, denoted kGk. Two important properties which must be This is illustrated by the SVD of a real 2  2 matrix which can always be written in
satisfied for a matrix norm are the triangle inequality the form 
kG1 + G2 k  kG1 k + kG2 k G = cos 1 sin 1   1 0   cos 2  sin 2 T
(3.31) sin  cos 
1 1 0  sin   cos 
2 2 2 (3.35)
| {z }| {z }| {z }
and the multiplicative property U  VT
kG1 G2 k  kG1 k  kG2 k (3.32) where the angles  1 and 2 depend on the given matrix. From (3.35) we see that the
matrices U and V involve rotations and that their columns are orthonormal.
(see Appendix A.5 for more details). As we may expect, the magnitude of the largest The singular values are sometimes called the principal values or principal gains,
eigenvalue, (G) , j max (G)j (the spectral radius), does not satisfy the properties and the associated directions are called principal directions. In general, the singular
of a matrix norm; also see (A.115). values must be computed numerically. For 2  2 matrices however, analytic
In Appendix A.5.2 we introduce several matrix norms, such as the Frobenius norm expressions for the singular values are given in (A.36).
kGkF , the sum norm kGksum, the maximum column sum kGk i1 , the maximum row Caution. It is standard notation to use the symbol U to denote the matrix of output singular
sum kGki1 , and the maximum singular value kGk i2 =  (G) (the latter three norms vectors. This is unfortunate as it is also standard notation to use u (lower case) to represent the
are induced by a vector norm, e.g. see (3.27); this is the reason for the subscript i). We input signal. The reader should be careful not to confuse these two.
will use all of these norms in this book, each depending on the situation. However, in Input and output directions. The column vectors of U , denoted u i , represent the
this chapter we will mainly use the induced 2-norm,   (G). Notice that  (G) = 100 output directions of the plant. They are orthogonal and of unit length (orthonormal),
for the matrix in (3.30). that is p
Exercise 3.5 Compute the spectral radius and the five matrix norms mentioned above for kui k2 = jui1 j2 + jui2 j2 + : : : + juil j2 = 1 (3.36)
the matrices in (3.29) and (3.30).
ui ui = 1; ui uj = 0; i 6= j
H H (3.37)
Likewise, the column vectors of V , denoted v i , are orthogonal and of unit length, and
3.3.4 Singular value decomposition represent the input directions. These input and output directions are related through
The singular value decomposition (SVD) is defined in Appendix A.3. Here we are the singular values. To see this, note that since V is unitary we have V H V = I , so
interested in its physical interpretation when applied to the frequency response of a (3.33) may be written as GV = U , which for column i becomes
MIMO system G(s) with m inputs and l outputs.
Consider a fixed frequency ! where G(j! ) is a constant l  m complex matrix, Gvi = i ui (3.38)
and denote G(j! ) by G for simplicity. Any matrix G may be decomposed into its
where vi and ui are vectors, whereas  i is a scalar. That is, if we consider an input in
the direction vi , then the output is in the direction u i . Furthermore, since kv i k2 = 1
singular value decomposition, and we write

G = U V H (3.33) and kui k2 = 1 we see that the i’th singular value  i gives directly the gain of the
matrix G in this direction. In other words
where
i (G) = kGvi k2 =
kGvi k2
 is an l  m matrix with k = minfl; mg non-negative singular values,  i , arranged kvi k2 (3.39)
in descending order along its main diagonal; the other entries are zero. The
singular values are the positive square roots of the eigenvalues of G H G, where Some advantages of the SVD over the eigenvalue decomposition for analyzing gains
GH is the complex conjugate transpose of G. and directionality of multivariable plants are:
q
1. The singular values give better information about the gains of the plant.
i (G) = i (GH G) (3.34)
2. The plant directions obtained from the SVD are orthogonal.
74 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 75

3. The SVD also applies directly to non-square plants. scalar c of magnitude 1 (jcj = 1). This is easily seen from (3.39). For example, we
may change the sign of the vector v (multiply by c = 1) provided we also change
Maximum and minimum singular values. As already stated, it can be shown the sign of the vector u. For example, if you use Matlab to compute the SVD of
that the largest gain for any input direction is equal to the maximum singular value the matrix in (3.44) (g1=[5 4; 3 2 ]; [u,s,v]=svd(g1)), then you will

 (G)  1 (G) = max


kGdk2 = kGv1 k2 probably find that the signs are different from those given above.
d6=0 kdk2 kv1 k2 (3.40) Since in (3.44) both inputs affect both outputs, we say that the system is
interactive. This follows from the relatively large off-diagonal elements in G 1 .
and that the smallest gain for any input direction (excluding the “wasted” in the Furthermore, the system is ill-conditioned, that is, some combinations of the inputs
nullspace of G when there are more inputs than outputs 1 ) is equal to the minimum have a strong effect on the outputs, whereas other combinations have a weak effect
singular value on the outputs. This may be quantified by the condition number; the ratio between
(G)  k (G) = min
kGdk2 = kGvk k2 the gains in the strong and weak directions; which for the system in (3.44) is
d6=0 kdk2 kvk k2 (3.41)
 = = 7:343=0:272 = 27:0.
where k = minfl; mg. Thus, for any vector d we have that Example 3.4 Shopping cart. Consider a shopping cart (supermarket trolley) with fixed
kGdk2   (G)
wheels which we may want to move in three directions; forwards, sideways and upwards.
 (G)  This is a simple illustrative example where we can easily figure out the principal directions
kdk2 (3.42)
from experience. The strongest direction, corresponding to the largest singular value, will
clearly be in the forwards direction. The next direction, corresponding to the second singular
Define u1 = u; v1 = v; uk = u and vk = v. Then it follows that value, will be sideways. Finally, the most “difficult” or “weak” direction, corresponding to
the smallest singular value, will be upwards (lifting up the cart).
Gv =  u; Gv =  u (3.43) For the shopping cart the gain depends strongly on the input direction, i.e. the plant is ill-
conditioned. Control of ill-conditioned plants is sometimes difficult, and the control problem
The vector v corresponds to the input direction with largest amplification, and u
 is the associated with the shopping cart can be described as follows: Assume we want to push the
corresponding output direction in which the inputs are most effective. The directions shopping cart sideways (maybe we are blocking someone). This is rather difficult (the plant
involving v and u are sometimes referred to as the “strongest”, “high-gain” or “most has low gain in this direction) so a strong force is needed. However, if there is any uncertainty
important” directions. The next most important directions are associated with v 2 and in our knowledge about the direction the cart is pointing, then some of our applied force will
u2 , and so on (see Appendix A.3.5) until the “least important”, “weak” or “low-gain” be directed forwards (where the plant gain is large) and the cart will suddenly move forward
directions which are associated with v and u. with an undesired large speed. We thus see that the control of an ill-conditioned plant may be
Example 3.3 continue. Consider again the system (3.29) with especially difficult if there is input uncertainty which can cause the input signal to “spread”

5 4
from one input direction to another. We will discuss this in more detail later.
G1 = 3 2 (3.44)
Example 3.5 Distillation process. Consider the following steady-state model of a

86:4 
distillation column
The singular value decomposition of G1 is 87:8
G= 108:2 109:6 (3.45)
     H
G1 = 00::872 0:490
490 0:872
7:343 0
0 0:272
0:794 0:608
0:608 0:794 The variables have been scaled as discussed in Section 1.4. Thus, since the elements are much
| {z } | {z } | {z } larger than 1 in magnitude this suggests that there will be no problems with input constraints.
U  VH However, this is somewhat misleading as the gain in the low-gain direction (corresponding to
 the smallest singular value) is actually only just above 1. To see this consider the SVD of G:
0:794 
The largest gain of 7.343 is for an input in the direction v = 0:608 . The smallest gain of 

0:608 . This confirms findings on page 70. G = 00::625 0:781   197:2 0   0:707 0:708 H
0.272 is for an input in the direction v =
0:794 781 0:625 0 1:39 0:708 0:707 (3.46)
| {z } | {z } | {z }
Note that the directions as given by the singular vectors are not unique, in the sense U  VH
that the elements in each pair of vectors (u i , vi ) may be multiplied by a complex
From the first input singular vector, v = [ 0:707 0:708 ]T , we see that the gain is 197:2
1 For a “fat” matrix G with more inputs than outputs (m > l), we can always choose a nonzero input d when we increase one input and decrease the other input by a similar amount. On the other
in the nullspace of G such that Gd = 0. hand, from the second input singular vector, v = [ 0:708 0:707 ]T , we see that if we
76 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 77

increase both inputs by the same amount then the gain is only 1:39. The reason for this is 2

 (G)
10
that the plant is such that the two inputs counteract each other. Thus, the distillation process
is ill-conditioned, at least at steady-state, and the condition number is 197:2=1:39 = 141:7. 10
2
1
The physics of this example is discussed in more detail below, and later in this chapter we

Magnitude

Magnitude
10

 (G)
will consider a simple controller design (see Motivating robustness example No. 2 in Section
3.7.2). 0
 (G) 10
0
10

Example 3.6 Physics of the distillation process. The model in (3.45) represents two-  (G)
−1 −2
point (dual) composition control of a distillation column, where the top composition is to 10 10
be controlled at yD = 0:99 (output y1 ) and the bottom composition at xB = 0:01 (output
−2 0 2 −4 −2 0
10 10 10 10 10 10
Frequency [rad/s] Frequency [rad/s]
y2 ), using reflux L (input u1 ) and boilup V (input u2 ) as manipulated inputs (see Figure 10.8
on page 434). Note that we have here returned to the convention of using u1 and u2 to denote (a) Spinning satellite in (3.76) (b) Distillation process in (3.81)
the manipulated inputs; the output singular vectors will be denoted by u  and u.
The 1; 1-element of the gain matrix G is 87:8. Thus an increase in u1 by 1 (with u2 constant) Figure 3.6: Typical plots of singular values
yields a large steady-state change in y1 of 87:8, that is, the outputs are very sensitive to
changes in u1 . Similarly, an increase in u2 by 1 (with u1 constant) yields y1 = 86:4. Again,
this is a very large change, but in the opposite direction of that for the increase in u1 . We output direction the plant cannot be controlled. Similarly, for a plant with more inputs
therefore see that changes in u1 and u2 counteract each other, and if we increase u1 and u2 than outputs, the additional input singular vectors tell us in which directions the input
simultaneously by 1, then the overall steady-state change in y1 is only 87:8 86:4 = 1:4. will have no effect.
Physically, the reason for this small change is that the compositions in the distillation
column are only weakly dependent on changes in the internal flows (i.e. simultaneous changes Example 3.7 Consider a non-square system with 3 inputs and 2 outputs,

in the internal flows L and V ). This can also be seen from the  smallest
0:708 singular value, G2 = 5 4 1
 (G) = 1:39, which is obtained for inputs in the direction v = 0:707 . From the output 3 2 1

singular vector u = 0:781  with singular value decomposition
0:625 we see that the effect is to move the outputs in different
0:877 0:481   7:354 0 0  00::792 0:161 0:588 #H
 "
directions, that is, to change y1 y2 . Therefore, it takes a large control action to move the
compositions in different directions, that is, to make both products purer simultaneously. This G2 = 0:481 0:877 0 1:387 0 0:054 0::124
608 0 0:785
979{z 0:196 }
| {z } | {z } |
makes sense from a physical point of view.
U  VH
On the other hand, the distillation column is very sensitive to changes in externalflows (i.e.

increase u1 u2 = L V ). This can be seen from the input singular vector v = 00:707
:708 From the definition of the minimum singular value we have  (G2 ) = 1:387, but note that an
" #
0:588
associated with the largest singular value, and is a general property of distillation columns input d in the direction 0:785 is in the nullspace of G and yields an output y = Gd = 0.
where both products are of high purity. The reason for this is that the external distillate flow 0:196
(which varies as V L) has to be about equal to the amount of light component in the feed,
and even a small imbalance leads to large changes in the product compositions. Exercise 3.6 For a system with m inputs and 1 output, what is the interpretation of the
singular values and the associated input directions (V )? What is U in this case?
For dynamic systems the singular values and their associated directions vary with
frequency, and for control purposes it is usually the frequency range corresponding to
3.3.5 Singular values for performance
the closed-loop bandwidth which is of main interest. The singular values are usually
plotted as a function of frequency in a Bode magnitude plot with a log-scale for So far we have used the SVD primarily to gain insight into the directionality of
frequency and magnitude. Typical plots are shown in Figure 3.6. MIMO systems. But the maximum singular value is also very useful in terms of
frequency-domain performance and robustness. We here consider performance.
For SISO systems we earlier found that jS (j! )j evaluated as a function of
Non-Square plants
frequency gives useful information about the effectiveness of feedback control. For
The SVD is also useful for non-square plants. For example, consider a plant with 2 example, it is the gain from a sinusoidal reference input (or output disturbance) to
inputs and 3 outputs. In this case the third output singular vector, u 3 , tells us in which the control error, je(! )j=jr(! )j = jS (j! )j.
78 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 79

For MIMO systems a useful generalization results if we consider the ratio It is then understood that the bandwidth is at least ! B for any direction of the input
ke(!)k2=kr(!)k2 , where r is the vector of reference inputs, e is the vector of control (reference or disturbance) signal. Since S = (I + L) 1 , (A.52) yields
errors, and k  k 2 is the vector 2-norm. As explained above, this gain depends on the 1
direction of r(! ) and we have from (3.42) that it is bounded by the maximum and  (L) 1   (L) + 1 (3.51)
 (S )
minimum singular value of S ,
Thus at frequencies where feedback is effective (namely where  (L)  1) wephave
(S (j!)) 
ke(!)k2  (S )  1=(L), and at the bandwidth frequency (where 1=(S (j! B )) = 2 =
kr(!)k2  (S (j!)) (3.47)
1:41) we have that (L(j!B )) is between 0.41 and 2.41. Thus, the bandwidth is
approximately where  (L) crosses 1. Finally, at higher frequencies where for any
In terms of performance, it is reasonable to require that the gain ke(! )k 2 =kr(! )k2  (L)) is small we have that  (S )  1.
real system  (L) (and 
remains small for any direction of r(! ), including the “worst-case” direction which
gives a gain of  (S (j!)). Let 1=jw P (j!)j (the inverse of the performance weight)
represent the maximum allowed magnitude of kek 2 =krk2 at each frequency. This
results in the following performance requirement: 3.4 Control of multivariable plants
 (S (j!)) < 1=jwP (j!)j; 8! ,  (wP S ) < 1; 8!
d
, kwP S k1 < 1 (3.48)

where the H1 norm (see also page 55) is defined as the peak of the maximum ?
singular value of the frequency response Gd
kM (s)k1 , max
!
 (M (j!)) (3.49)

Typical performance weights w P (s) are given in Section 2.7.2, which should be r -+ e - K u - G e+
-+ ? q -y
studied carefully. 6-
The singular values of S (j! ) may be plotted as functions of frequency, as
ym
illustrated later in Figure 3.10(a). Typically, they are small at low frequencies where
e+
feedback is effective, and they approach 1 at high frequencies because any real
system is strictly proper: + 6
!!1: L(j!) ! 0 ) S (j!) ! I (3.50) n
The maximum singular value,   (S (j!)), usually has a peak larger than 1 around Figure 3.7: One degree-of-freedom feedback control configuration
the crossover frequencies. This peak is undesirable, but it is unavoidable for real
systems. Consider the simple feedback system in Figure 3.7. A conceptually simple
As for SISO systems we define the bandwidth as the frequency up to which approach to multivariable control is given by a two-step procedure in which we
feedback is effective. For MIMO systems the bandwidth will depend on directions, first design a “compensator” to deal with the interactions in G, and then design a
and we have a bandwidth region between a lower frequency where the maximum diagonal controller using methods similar to those for SISO systems. This approach
singular value, 
 (S ), reaches 0.7 (the low-gain or worst-case direction), and a is discussed below.
higher frequency where the minimum singular value,  (S ), reaches 0.7 (the high- The most common approach is to use a pre-compensator, W 1 (s), which
gain or best direction). If we want to associate a single bandwidth frequency for counteracts the interactions in the plant and results in a “new” shaped plant:
a multivariable system, then we consider the worst-case (low-gain) direction, and Gs (s) = G(s)W1 (s) (3.52)
define
which is more diagonal and easier to control than the original plant G(s). After
 Bandwidth, !B : Frequency where 
 (S ) crosses p12 = 0:7 from below. finding a suitable W 1 (s) we can design a diagonal controller K s (s) for the shaped
80 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 81

plant Gs (s). The overall controller is then The idea of decoupling control is appealing, but there are several difficulties:
K (s) = W1 (s)Ks (s) (3.53) 1. As one might expect, decoupling may be very sensitive to modelling errors and
In many cases effective compensators may be derived on physical grounds and may uncertainties. This is illustrated below in Section 3.7.2, page 93.)
include nonlinear elements such as ratios. 2. The requirement of decoupling and the use of an inverse-based controller may not
be desirable for disturbance rejection. The reasons are similar to those given for
Remark 1 Some design approaches in this spirit are the Nyquist Array technique of SISO systems in Section 2.6.4, and are discussed further below; see (3.58).
Rosenbrock (1974) and the characteristic loci technique of MacFarlane and Kouvaritakis 3. If the plant has RHP-zeros then the requirement of decoupling generally
(1977). introduces extra RHP-zeros into the closed-loop system (see Section 6.5.1,
H
Remark 2 The 1 loop-shaping design procedure, described in detail in Section 9.4, is page 221).
similar in that a pre-compensator is first chosen to yield a shaped plant, Gs = GW1 , with
desirable properties, and then a controller Ks (s) is designed. The main difference is that in Even though decoupling controllers may not always be desirable in practice, they
H 1 loop shaping, Ks (s) is a full multivariable controller, designed based on optimization (to are of interest from a theoretical point of view. They also yield insights into the
H
optimize 1 robust stability). limitations imposed by the multivariable interactions on achievable performance.
One popular design method, which essentially yields a decoupling controller, is the
internal model control (IMC) approach (Morari and Zafiriou, 1989).
3.4.1 Decoupling Another common strategy, which avoids most of the problems just mentioned, is to
Decoupling control results when the compensator W 1 is chosen such that Gs = GW1 use partial (one-way) decoupling where G s (s) in (3.52) is upper or lower triangular.
in (3.52) is diagonal at a selected frequency. The following different cases are
possible:
3.4.2 Pre- and post-compensators and the SVD-controller
1. Dynamic decoupling: Gs (s) is diagonal at all frequencies. For example, with
Gs (s) = I and a square plant, we get W 1 = G 1 (s) (disregarding the possible The above pre-compensator approach may be extended by introducing a post-
compensator W 2 (s), as shown in Figure 3.8. One then designs a diagonal controller
problems involved in realizing G 1 (s)). If we then select K s (s) = l(s)I (e.g.
with l(s) = k=s), the overall controller is K
K (s) = Kinv (s) , l(s)G 1 (s)
- - - -
(3.54)
We will later refer to (3.54) as an inverse-based controller. It results in a decoupled W2 Ks W1
nominal system with identical loops, i.e. L(s) = l(s)I , S (s) = 1+1l(s) I and
T (s) = 1+l(ls()s) I .
Figure 3.8: Pre- and post-compensators, W1 and W2 . Ks is diagonal
Remark. In some cases we may want to keep the diagonal elements in the shaped plant
unchanged by selecting W1 = G 1 Gdiag . In other cases we may want the diagonal
elements in W1 to be 1. This may be obtained by selecting W1 = G 1 ((G 1 )diag ) 1 , Ks for the shaped plant W 2 GW1 . The overall controller is then
and the off-diagonal elements of W1 are then called “decoupling elements”.
K (s) = W1 Ks W2 (3.55)
2. Steady-state decoupling: G s (0) is diagonal. This may be obtained by selecting a
constant pre-compensator W 1 = G 1 (0) (and for a non-square plant we may use The SVD-controller is a special case of a pre- and post-compensator design. Here
the pseudo-inverse provided G(0) has full row (output) rank).
3. Approximate decoupling at frequency w o : Gs (j!o ) is as diagonal as possible. W1 = Vo and W2 = UoT (3.56)
This is usually obtained by choosing a constant pre-compensator W 1 = Go 1
where Go is a real approximation of G(j! o ). Go may be obtained, for example, where Vo and Uo are obtained from a singular value decomposition of G o =
using the align algorithm of Kouvaritakis (1974). The bandwidth frequency is a Uo oVoT , where Go is a real approximation of G(j! o ) at a given frequency w o
good selection for ! o because the effect on performance of reducing interaction (often around the bandwidth). SVD-controllers are studied by Hung and MacFarlane
is normally greatest at this frequency. (1982), and by Hovd et al. (1994) who found that the SVD controller structure is
82 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 83

optimal in some cases, e.g. for plants consisting of symmetrically interconnected trade-off between output performance and input usage. We also note with interest that
subsystems. it is generally not possible to select a unitary matrix U 2 such that Lmin = Gd U2 is
In summary, the SVD-controller provides a useful class of controllers. By diagonal, so a decoupling design is generally not optimal for disturbance rejection.
selecting Ks = l(s)o 1 a decoupling design is achieved, and by selecting a These insights can be used as a basis for a loop-shaping design; see more on H 1
diagonal Ks with a low condition number ( (K s ) small) generally results in a robust loop-shaping in Chapter 9.
controller (see Section 6.10). small

3.4.3 Diagonal controller (decentralized control) 3.4.5 Multivariable controller synthesis


Another simple approach to multivariable controller design is to use a diagonal or The above design methods are based on a two-step procedure in which we first design
block-diagonal controller K (s). This is often referred to as decentralized control. a pre-compensator (for decoupling control) or we make an input-output pairing
Clearly, this works well if G(s) is close to diagonal, because then the plant to be selection (for decentralized control) and then we design a diagonal controller K s (s).
controlled is essentially a collection of independent sub-plants, and each element in Invariably this two-step procedure results in a suboptimal design.
K (s) may be designed independently. However, if off-diagonal elements in G(s) are The alternative is to synthesize directly a multivariable controller K (s) based
large, then the performance with decentralized diagonal control may be poor because on minimizing some objective function (norm). We here use the word synthesize
no attempt is made to counteract the interactions. Decentralized control is discussed rather than design to stress that this is a more formalized approach. Optimization
in more detail in Chapter 10. in controller design became prominent in the 1960’s with “optimal control theory”
based on minimizing the expected value of the output variance in the face of
stochastic disturbances. Later, other approaches and norms were introduced, such
3.4.4 What is the shape of the “best” feedback controller? as H1 optimal control.
Consider the problem of disturbance rejection. The closed-loop disturbance response
is y = SGd d. Suppose we have scaled the system (see Section 1.4) such that at each
3.4.6 Summary of mixed-sensitivity H1 synthesis (S=KS )
frequency the disturbances are of magnitude 1, kdk 2  1, and our performance
requirement is that ky k 2  1. This is equivalent to requiring   (SG d )  1. In We here provide a brief summary of one multivariable synthesis approach, namely
many cases there is a trade-off between input usage and performance, such that the the S=KS (mixed-sensitivity) H 1 design method which is used in later examples in
controller that minimizes the input magnitude is one that yields all singular values of this Chapter. In the S=KS problem, the objective is to minimize the H 1 norm of
SGd equal to 1, i.e. i (SGd ) = 1; 8!. This corresponds to  

SminGd = U1 N = WWPKS
S (3.59)
(3.57) u
where U1 (s) is some all-pass transfer function (which at each frequency has all its This problem was discussed earlier for SISO systems, and another look at
singular values equal to 1). The subscript min refers to the use of the smallest loop Section 2.7.3 would be useful now. A sample MATLAB file is provided in
gain that satisfies the performance objective. For simplicity, we assume that G d is Example 2.11, page 60.
square so U1 (j! ) is a unitary matrix. At frequencies where feedback is effective we The following issues and guidelines are relevant when selecting the weights W P
have S = (I + L) 1  L 1 , and (3.57) yields L min = GKmin  Gd U1 1 . In and Wu :
conclusion, the controller and loop shape with the minimum gain will often look like
1. KS is the transfer function from r to u in Figure 3.7, so for a system which has
Kmin  G 1 Gd U2 ; Lmin  Gd U2 (3.58) been scaled as in Section 1.4, a reasonable initial choice for the input weight is
Wu = I .
where U2 = U1 1 is some all-pass transfer function matrix. This provides a S is the transfer
function from r to e = r y.
generalization of jK min j  jG 1 Gd j which was derived in (2.58) for SISO systems,
2. A common choice for the
performance weight is W P = diagfwP i g with
and the summary following (2.58) on page 48 therefore also applies to MIMO
s=Mi + !Bi
; Ai  1
systems. For example, we see that for disturbances entering at the plant inputs,
Gd = G, we get Kmin = U2 , so a simple constant unit gain controller yields a good wP i =  (3.60)
s + !Bi Ai
84 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 85

(see also Figure 2.26 on page 58). Selecting A i  1 ensures approximate integral The zeros z of MIMO systems are defined as the values s = z where G(s) loses
action with S (0)  0. Often we select M i about 2 for all outputs, whereas ! Bi  rank, and we can find the direction of a zero by looking at the direction in which

may be different for each output. A large value of ! Bi yields a faster response for the matrix G(z ) has zero gain. For square systems we essentially have that the poles
output i. and zeros of G(s) are the poles and zeros of det G(s). However, this crude method
3. To find a reasonable initial choice for the weight W P , one can first obtain a may fail in some cases, as it may incorrectly cancel poles and zeros with the same
controller with some other design method, plot the magnitude of the resulting location but different directions (see Sections 4.5 and 4.5.3 for more details).
diagonal elements of S as a function of frequency, and select w P i (s) as a rational
approximation of 1=jS ii j.
Example 3.8 Consider the following plant
 
4. For disturbance rejection, we may in some cases want a steeper slope for w P i (s) at 1 1 1
G(s) = (3.63)
low frequencies than that given in (3.60), e.g. as see the weight in (2.73). However, (0:2s + 1)(s + 1) 1 + 2s 2
it may be better to consider the disturbances explicitly by considering the H 1 The responses to a step in each individual input are shown in Figure 3.9(a) and (b). We see
norm of  
N = WWPKS S WP SGd
Wu KSGd (3.61) 2 2 1.5
u
1.5 1.5 y2 1
y2
or equivalently y2 0.5

 
1 1 y1
y1 y1
N = WWPKSW
SWd
0

with Wd = [ I Gd ] (3.62) 0.5 0.5


−0.5
u d
0 0 −1
  0 5 10 0 5 10 0 5 10

where N represents the transfer function from dr to the weighted e and u. In = =


Time [sec] Time [sec] Time [sec]
(a) Step in u1 , u (b) Step in u2 , u (c) Combined step in u1 and

some situations we may want to adjust W P or Gd in order to satisfy better our


[1 0 ]T [0 1 ]T u2 , u = [1 T 1]
original objectives. The helicopter case study in Section 12.2 illustrates this by
Figure 3.9: Open-loop response for G(s) in (3.63)
introducing a scalar parameter to adjust the magnitude of G d .
5. T is the transfer function from n to y . To reduce sensitivity to noise and that the plant is interactive, but for these two inputs there is no inverse response to indicate
uncertainty, we want T small at high frequencies, and so we may want additional the presence of a RHP-zero. Nevertheless, the plant does have a multivariable RHP-zero at
roll-off in L. This can be achieved in several ways. One approach is to add W T T z = 0:5, that is, G(s) loses rank at s = 0:5, and det G(0:5) = 0. The singular value
to the stack for N in (3.59), where W T = diagfwT i g and jwT i j is smaller than 1 decomposition of G(0:5) is
at low frequencies and large at high frequencies. A more direct approach is to add        
high-frequency dynamics, W 1 (s), to the plant model to ensure that the resulting G(0:5) = 1 12 12 = 00::45 0:89 1:92 0 0:71 0:71 H (3.64)
shaped plant, G s = GW1 , rolls off with the desired slope. We then obtain an 1:65 89 0:45 0 0 0:71 0:71
| {z } | {z } | {z }
H1 optimal controller Ks for this shaped plant, and finally include W 1 (s) in the U  VH
controller, K = W1 Ks . (G
and we have as expected
  (0:5)) = 0. The input
 and output directions corresponding to the
More details about H 1 design are given in Chapter 9. RHP-zero are v = 0:71 and u = 0:89
0:71 0:45 . Thus, the RHP-zero is associated with both
inputs and with both outputs. The presence of the multivariable RHP-zero is also observed
from the time response
  in Figure 3.9(c), which is for a simultaneous input change in opposite
u= 1 y2 displays an inverse response whereas y1 happens to
3.5 Introduction to multivariable RHP-zeros directions,
1 . We see that
remain at zero for this particular input change.
By means of an example, we now give the reader an appreciation of the fact that To see how the RHP-zero affects the closed-loop response, we design a controller which
MIMO systems have zeros even though their presence may not be obvious from the H
minimizes the 1 norm of the weighted S=KS matrix
 
elements of G(s). As for SISO systems, we find that RHP-zeros impose fundamental
limitations on control. N = WWPKS
S (3.65)
u
86 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 87

with weights  2 than


Thus, we see that it is easier, for this example, to get tight control of output  of output
   1. This may be expected from the output direction of the RHP-zero, u = 00:89 :45 , which is
Wu = I; WP = w0P 1 w0 ; wPi = s=Mi + !Bi ; Ai = 10 4 (3.66) mostly in the direction of output 1. We will discuss this in more detail in Section 6.5.1.
P2 s + wBi Ai
The MATLAB file for the design is the same as in Table 2.3 on page 60, except that we now Remark 1 We find from this example that we can direct the effect of the RHP-zero to either

have a 2 2 system. Since there is a RHP-zero at z = 0:5 we expect that this will somehow of the two outputs. This is typical of multivariable RHP-zeros, but there are cases where the
RHP-zero is associated with a particular output channel and it is not possible to move its effect
limit the bandwidth of the closed-loop system.
Design 1. We weight the two outputs equally and select to another channel. The zero is then called a “pinned zero” (see Section 4.6).

Design 1 : M1 = M2 = 1:5; !B 1 = !B 2 = z=2 = 0:25


Remark 2 It is observed from the plot of the singular values in Figure 3.10(a), that we were
able to obtain by Design 2 a very large improvement in the “good” direction (corresponding
to (S )) at the expense of only a minor deterioration in the “bad” direction (corresponding to
H
This yields an 1 norm for N of 2:80 and the resulting singular values of S are shown by the
H
 (S )). Thus Design 1 demonstrates a shortcoming of the 1 norm: only the worst direction
solid lines in Figure 3.10(a). The closed-loop response to a reference change r = [ 1 1 ]T H
(maximum singular value) contributes to the 1 norm and it may not always be easy to get a
is shown by the solid lines in Figure 3.10(b). We note that both outputs behave rather poorly
good trade-off between the various directions.
and both display an inverse response.

 (S ) 3.6 Condition number and RGA


0 2 Design 1:
 (S )  (S )
10
Design 2:
Two measures which are used to quantify the degree of directionality and the level of
Magnitude

 (S )
(two-way) interactions in MIMO systems, are the condition number and the relative
0 y1 gain array (RGA), respectively. We here define the two measures and present an
−2
10
overview of their practical use. We do not give detailed proofs, but refer to other
Design 1:
Design 2:
−1
y2 places in the book for further details.
−2 0 2 −2
10 10 10 0 1 2 3 4 5
Frequency [rad/s] Time [sec]
(b) Response to change in reference, 3.6.1 Condition number
(a) Singular values of S
r = [1 1 ]T We define the condition number of a matrix as the ratio between the maximum and
Figure 3.10: Alternative designs for 2  2 plant (3.63) with RHP-zero minimum singular values,
4  (G)= (G)
(G) = (3.67)
Design 2. For MIMO plants, one can often move most of the deteriorating effect (e.g. A matrix with a large condition number is said to be ill-conditioned. For a non-
inverse response) of a RHP-zero to a particular output channel. To illustrate this, we change singular (square) matrix  (G) = 1= (G 1 ), so (G) =  (G) (G 1 ). It then
the weight wP 2 so that more emphasis is placed on output 2. We do this by increasing the
follows from (A.119) that the condition number is large if both G and G 1 have
bandwidth requirement in output channel 2 by a factor of 100:
large elements.
Design 2 : M1 = M2 = 1:5; !B 1 = 0:25; !B 2 = 25 The condition number depends strongly on the scaling of the inputs and outputs.
To be more specific, if D 1 and D2 are diagonal scaling matrices, then the condition
H
This yields an 1 norm for N of 2:92. In this case we see from the dashed line in numbers of the matrices G and D 1 GD2 may be arbitrarily far apart. In general, the
Figure 3.10(b) that the response for output 2 (y2 ) is excellent with no inverse response. matrix G should be scaled on physical grounds, for example, by dividing each input
However, this comes at the expense of output 1 (y1 ) where the response is somewhat poorer and output by its largest expected or desired value as discussed in Section 1.4.
than for Design 1. One might also consider minimizing the condition number over all possible
Design 3. We can also interchange the weights wP 1 and wP 2 to stress output 1 rather
scalings. This results in the minimized or optimal condition number which is defined
than output 2. In this case (not shown) we get an excellent response in output 1 with no
inverse response, but output 2 responds very poorly (much poorer than output 1 for Design 2).
by
H
Furthermore, the 1 norm for N is 6:73, whereas it was only 2:92 for Design 2.  (G) = Dmin (D1 GD2 ) (3.68)
1 ;D2
88 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 89

and can be computed using (A.73). always ill-conditioned (with a large value of (G)), but the reverse may not hold
The condition number has been used as an input-output controllability measure, (i.e. a plant with a large (G) may have small RGA-elements).
and in particular it has been postulated that a large condition number indicates 4. A relative change in an element of G equal to the negative inverse of its
sensitivity to uncertainty. This is not true in general, but the reverse holds; if the corresponding RGA-element yields singularity.
condition number is small, then the multivariable effects of uncertainty are not likely 5. The RGA is the identity matrix if G is upper or lower triangular.
to be serious (see (6.72)).
If the condition number is large (say, larger than 10), then this may indicate control From the last property it follows that the RGA (or more precisely  I ) provides a
measure of two-way interaction.
problems:
1. A large condition number (G) =   (G)= (G) may be caused by a small value Example 3.9 Consider a diagonal plant and compute the RGA and condition number,
 
of  (G), which is generally undesirable (on the other hand, a large value of  (G)  (G) 100
need not necessarily be a problem). G = 100 0 
0 1 ; (G) = I; (G) = (G) = 1 = 100; (G) = 1 (3.71)
2. A large condition number may mean that the plant has a large minimized condition
Here the condition number is 100 which means that the plant gain depends strongly on the
number, or equivalently, it has large RGA-elements which indicate fundamental
input direction. However, since the plant is diagonal there are no interactions so (G) = I
and the minimized condition number  (G) = 1.
control problems; see below.
3. A large condition number does imply that the system is sensitive to “unstructured”
(full-block) input uncertainty (e.g. with an inverse-based controller, see (8.135)), Example 3.10 Consider a triangular plant G for which we get
but this kind of uncertainty often does not occur in practice. We therefore cannot    
2:41
generally conclude that a plant with a large condition number is sensitive to G = 10 21 ; G 1 = 10 2 
1 ; (G) = I; (G) = 0:41 = 5:83; (G) = 1 (3.72)
uncertainty, e.g. see the diagonal plant in Example 3.9.
Note that for a triangular matrix, the RGA is always the identity matrix and  (G) is always
1.
3.6.2 Relative Gain Array (RGA)
In addition to the algebraic properties listed above, the RGA has a surprising
The relative gain array (RGA) of a non-singular square matrix G is a square matrix
number of useful control properties:
defined as
RGA(G) = (G) , G  (G 1 )T (3.69) 1. The RGA is a good indicator of sensitivity to uncertainty:
where  denotes element-by-element multiplication (the Hadamard or Schur (a) Uncertainty in the input channels (diagonal input uncertainty). Plants with
product). For a 2  2 matrix with elements g ij the RGA is large RGA-elements around the crossover frequency are fundamentally
    difficult to control because of sensitivity to input uncertainty (e.g. caused
1
(G) = 11 12 = 1 11 1  11 ; 11 = g12 g21 (3.70) by uncertain or neglected actuator dynamics). In particular, decouplers or
21 22 11 11 1 g11 g22 other inverse-based controllers should not be used for plants with large RGA-
Bristol (1966) originally introduced the RGA as a steady-state measure of elements (see page 243).
interactions for decentralized control. Unfortunately, based on the original definition, (b) Element uncertainty. As implied by algebraic property no. 4 above, large
many people have dismissed the RGA as being “only meaningful at ! = 0”. To the RGA-elements imply sensitivity to element-by-element uncertainty. However,
contrary, in most cases it is the value of the RGA at frequencies close to crossover this kind of uncertainty may not occur in practice due to physical couplings
which is most important. between the transfer function elements. Therefore, diagonal input uncertainty
The RGA has a number of interesting algebraic properties, of which the most (which is always present) is usually of more concern for plants with large RGA-
important are (see Appendix A.4 for more details): elements.

1. It is independent of input and output scaling. Example 3.11 Consider again the distillation process for which we have at steady-state
     
2. Its rows and columns sum to one. 87:8
G = 108 86:4 1 0:399 0:315 ; (G) = 35:1 34:1
3. The sum-norm of the RGA, kk sum, is very close to the minimized condition :2 109:6 ; G = 0:394 0:320 34:1 35:1
number  ; see (A.78). This means that plants with large RGA-elements are (3.73)
90 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 91

In this case (G) = 197:2=1:391 = 141:7 is only slightly larger than  (G) = 138:268. 1
We find that 11 ( ) = 2 and 11 (0) = 1 have different signs. Since none of the diagonal
k k
The magnitude sum of the elements in the RGA-matrix is  sum = 138:275. This elements have RHP-zeros we conclude from Theorem 10.5 that G(s) must have a RHP-zero.
confirms (A.79) which states that, for 2 2 systems, (G) sum  (G) when  (G) is
 k k  This is indeed true and G(s) has a zero at s = 2.
large. The condition number is large, but since the minimum singular value (G) = 1:391
is larger than 1 this does not by itself imply a control problem. However, the large RGA- For a detailed analysis of achievable performance of the plant (input-output
elements indicate control problems, and fundamental control problems are expected if controllability analysis), one must also consider the singular values, RGA and
analysis shows that G(j! ) has large RGA-elements also in the crossover frequency range. condition number as functions of frequency. In particular, the crossover frequency
(Indeed, the idealized dynamic model (3.81) used below has large RGA-elements at all range is important. In addition, disturbances and the presence of unstable (RHP)
frequencies, and we will confirm in simulations that there is a strong sensitivity to input plant poles and zeros must be considered. All these issues are discussed in much
channel uncertainty with an inverse-based controller). more detail in Chapters 5 and 6 where we discuss achievable performance and input-
output controllability analysis for SISO and MIMO plants, respectively.
2. RGA and RHP-zeros. If the sign of an RGA-element changes from s = 0
to s = 1, then there is a RHP-zero in G or in some subsystem of G (see
Theorem 10.5), page 449).
3. Non-square plants. The definition of the RGA may be generalized to non-square 3.7 Introduction to MIMO robustness
matrices by using the pseudo inverse; see Appendix A.4.2. Extra inputs: If the
sum of the elements in a column of RGA is small ( 1), then one may consider To motivate the need for a deeper understanding of robustness, we present two
deleting the corresponding input. Extra outputs: If all elements in a row of examples which illustrate that MIMO systems can display a sensitivity to uncertainty
RGA are small ( 1), then the corresponding output cannot be controlled (see not found in SISO systems. We focus our attention on diagonal input uncertainty,
Section 10.4). which is present in any real system and often limits achievable performance because
4. Pairing and diagonal dominance. The RGA can be used as a measure of diagonal it enters between the controller and the plant.
dominance (or more precicely, of whether the inputs or outputs can be scaled to
obtain diagonal dominance), by the simple quantity
3.7.1 Motivating robustness example no. 1: Spinning Satellite
RGA-number = k(G) I ksum (3.74) Consider the following plant (Doyle, 1986; Packard et al., 1993) which can itself be
motivated by considering the angular velocity control of a satellite spinning about
For decentralized control we prefer pairings for which the RGA-number at one of its principal axes:
crossover frequencies is close to 0 (see pairing rule 1 on page 445). Similarly, for  
certain multivariable design methods, it is simpler to choose the weights and shape 1
G(s) = 2 2 s a2 a(s + 1) ; a = 10
the plant if we first rearrange the inputs and outputs to make the plant diagonally s +a a(s + 1) s a2 (3.76)

A minimal, state-space realization, G = C (sI A) 1 B + D, is


dominant with a small RGA-number.
5. RGA and decentralized control.
2 3
(a) Integrity: For stable plants avoid input-output pairing on negative steady-state   0 a 1 0
RGA-elements. Otherwise, if the sub-controllers are designed independently A B =6 6 a 0 0 1 7
7
(3.77)
each with integral action, then the interactions will cause instability either when C D 4 1 a 0 05
all of the loops are closed, or when the loop corresponding to the negative a 1 0 0
The plant has a pair of j! -axis poles at s = ja so it needs to be stabilized. Let us
relative gain becomes inactive (e.g. because of saturation) (see Theorem 10.4,
page 447).
apply negative feedback and try the simple diagonal constant controller
(b) Stability: Prefer pairings corresponding to an RGA-number close to 0 at
crossover frequencies (see page 445). K=I
Example 3.12 Consider a plant The complementary sensitivity function is
   
1 1 a
G(s) = 1 s+1 s+4 (3.75) T (s) = GK (I + GK ) 1 = a 1 (3.78)
5s + 1 1 2 s+1
92 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 93

Nominal stability (NS). The closed-loop system has two poles at s = 1 and so where u01 and u02 are the actual changes in the manipulated inputs, while u 1 and u2 are
it is stable. This can be verified by evaluating the closed-loop state matrix the desired changes as computed by the controller. It is important to stress that this
      diagonal input uncertainty, which stems from our inability to know the exact values
Acl = A BKC = 0 a 1 a = 1 0 of the manipulated inputs, is always present. In terms of a state-space description,
a 0 a 1 0 1 (3.79) may be represented by replacing B by
(To derive A cl use x_ = Ax + Bu, y = Cx and u = Ky ).  
Nominal performance (NP). The singular values of L = GK = G are shown in B 0 = 1 +0 1 1 +0 
Figure 3.6(a), page 77. We see that  (L) = 1 at low frequencies and starts dropping 2
off at about ! = 10. Since  (L) never exceeds 1, we do not have tight control in The corresponding closed-loop state matrix is
the low-gain direction for this plant (recall the discussion following (3.51)), so we     
expect poor closed-loop performance. This is confirmed by considering S and T . 0 a 1 + 1 0 1 a
For example, at steady-state  (T ) = 10:05 and  (S ) = 10. Furthermore, the large A0cl = A B 0 KC = a 0 0 1 + 2 a 1
off-diagonal elements in T (s) in (3.78) show that we have strong interactions in the
closed-loop system. (For reference tracking, however, this may be counteracted by which has a characteristic polynomial given by
use of a two degrees-of-freedom controller).
det(sI A0cl ) = s2 + (2 + 1 + 2 ) s + 1 + 1 + 2 + (a2 + 1)1 2 (3.80)
Robust stability (RS). Now let us consider stability robustness. In order to | {z } | {z }
determine stability margins with respect to perturbations in each input channel, one a1 a0
may consider Figure 3.11 where we have broken the loop at the first input. The loop The perturbed system is stable if and only if both the coefficients a 0 and a1 are
transfer function at this point (the transfer function from w 1 to z1 ) is L1 (s) = 1=s
(which can be derived from t 11 (s) = 1+ 1 = L1 (s) ). This corresponds to an positive. We therefore see that the system is always stable if we consider uncertainty
s 1+L1 (s) in only one channel at a time (at least as long as the channel gain is positive). More
infinite gain margin and a phase margin of 90 Æ . On breaking the loop at the second precisely, we have stability for ( 1 <  1 < 1; 2 = 0) and (1 = 0; 1 < 2 <
input we get the same result. This suggests good robustness properties irrespective 1). This confirms the infinite gain margin seen earlier. However, the system can only
of the value of a. However, the design is far from robust as a further analysis shows. tolerate small simultaneous changes in the two channels. For example, let  1 = 2 ,
Consider input gain uncertainty, and let  1 and 2 denote the relative error in the gain then the system is unstable (a 0 < 0) for
z1 w1
6 j1 j > p 21  0:1
a +1
-+ e - q- In summary, we have found that checking single-loop margins is inadequate for
6- MIMO problems. We have also observed that large values of   (T ) or  (S ) indicate
-+ e - G
q - robustness problems. We will return to this in Chapter 8, where we show that with
input uncertainty of magnitude j i j < 1=
6-  (T ), we are guaranteed robust stability
(even for “full-block complex perturbations”).
In the next example we find that there can be sensitivity to diagonal input
uncertainty even in cases where   (T ) and  (S ) have no large peaks. This can not
 happen for a diagonal controller, see (6.77), but it will happen if we use an inverse-
K based controller for a plant with large RGA-elements, see (6.78).

3.7.2 Motivating robustness example no. 2: Distillation Process
Figure 3.11: Checking stability margins “one-loop-at-a-time”
The following is an idealized dynamic model of a distillation column,
in each input channel. Then  
1 87:8 86:4
u01 = (1 + 1 )u1 ; u02 = (1 + 2 )u2 G(s) = (3.81)
(3.79) 75s + 1 108:2 109:6
94 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 95

(time is in minutes). The physics of this example was discussed in Example 3.6. The Thus,   (S ) and  (T ) are both less than 1 at all frequencies, so there are no peaks
plant is ill-conditioned with condition number (G) = 141:7 at all frequencies. The which would indicate robustness problems. We also find that this controller gives an
plant is also strongly two-way interactive and the RGA-matrix at all frequencies is infinite gain margin (GM) and a phase margin (PM) of 90 Æ in each channel. Thus,
  use of the traditional margins and the peak values of S and T indicate no robustness
RGA(G) = 35:1 34:1 (3.82)
34:1 35:1 problems. However, from the large RGA-elements there is cause for concern, and
this is confirmed in the following.
The large elements in this matrix indicate that this process is fundamentally difficult We consider again the input gain uncertainty (3.79) as in the previous example,
to control. and we select 1 = 0:2 and 2 = 0:2. We then have

u01 = 1:2u1; u02 = 0:8u2


Remark. (3.81) is admittedly a very crude model of a real distillation column; there should
be a high-order lag in the transfer function from input 1 to output 2 to represent the liquid (3.85)
flow down to the column, and higher-order composition dynamics should also be included.
Nevertheless, the model is simple and displays important features of distillation column Note that the uncertainty is on the change in the inputs (flow rates), and not on their
behaviour. It should be noted that with a more detailed model, the RGA-elements would absolute values. A 20% error is typical for process control applications (see Remark 2
approach 1 at frequencies around 1 rad/min, indicating less of a control problem. on page 302). The uncertainty in (3.85) does not by itself yield instability. This is
verified by computing the closed-loop poles, which, assuming no cancellations, are
solutions to det(I + L(s)) = det(I + LI (s)) = 0 (see (4.102) and (A.12)). In our
2.5 Nominal plant: case
Perturbed plant:
2    
0:7 1 + 1
L0I (s) = Kinv G0 = Kinv G 1 +0 1 1 +0  = 0
0
1 + 2
1.5
y1 2 s
1
so the perturbed closed-loop poles are
0.5
y2
0 s1 = 0:7(1 + 1 ); s2 = 0:7(1 + 2) (3.86)
0 10 20 30 40 50 60
Time [min] and we have closed-loop stability as long as the input gains 1 +  1 and 1 + 2 remain
positive, so we can have up to 100% error in each input channel. We thus conclude
Figure 3.12: Response with decoupling controller to filtered reference input r1 = 1=(5s +1). that we have robust stability (RS) with respect to input gain errors for the decoupling
The perturbed plant has 20% gain uncertainty as given by (3.85).
controller.
We consider the following inverse-based controller, which may also be looked Robust performance (RP). For SISO systems we generally have that nominal
upon as a steady-state decoupler with a PI controller: performance (NP) and robust stability (RS) imply robust performance (RP), but this
  is not the case for MIMO systems. This is clearly seen from the dotted lines in
k k (1 + 75s) 0:3994 0:3149
Kinv (s) = 1 G 1 (s) = 1 0:3943 0:3200 ; k1 = 0:7 (3.83)
Figure 3.12 which show the closed-loop response of the perturbed system. It differs
s s drastically from the nominal response represented by the solid line, and even though
Nominal performance (NP). We have GK inv = Kinv G = 0s:7 I . With no model it is stable, the response is clearly not acceptable; it is no longer decoupled, and y 1 (t)
error this controller should counteract all the interactions in the plant and give rise and y2 (t) reach a value of about 2.5 before settling at their desired values of 1 and 0.
to two decoupled first-order responses each with a time constant of 1=0:7 = 1:43 Thus RP is not achieved by the decoupling controller.
min. This is confirmed by the solid line in Figure 3.12 which shows the simulated Remark 1 There is a simple reason for the observed poor response to the reference change
response to a reference change in y 1 . The responses are clearly acceptable, and we in y1 . To accomplish this change, which occurs mostly in the direction corresponding to the
conclude that nominal performance (NP) is achieved with the decoupling controller. low plant gain, the inverse-based controller generates relatively large inputs u1 and u2 , while
Robust stability (RS). The resulting sensitivity and complementary sensitivity trying to keep u1 u2 very small. However, the input uncertainty makes this impossible – the
functions with this controller are result is an undesired large change in the actual value of u01 u02 , which subsequently results
s 1 in large changes in y1 and y2 because of the large plant gain (
 (G) = 197:2) in this direction,
S = SI = I ; T = TI = I (3.84)
s + 0:7 1:43s + 1 as seen from (3.46).
96 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 97

Remark 2 The system remains stable for gain uncertainty up to 100% because the uncertainty Since det(L0 ) > 0 for any gain error less than 100%, instability can only occur if tr(L0 ) <
occurs only at one side of the plant (at the input). If we also consider uncertainty at the output 0. Evaluate tr(L0 ) and show that with gain errors of equal magnitude the combination of
then we find that the decoupling controller yields instability for relatively small errors in the 1 = b2 = 1 = 2 = . Use this to
errors which most easily yields instability is with b
input and output gains. This is illustrated in Exercise 3.8 below. show that the perturbed system is unstable if
r
Remark 3 It is also difficult to get a robust controller with other standard design techniques
jj > 1
for this model. For example, an S=KS -design as in (3.59) with WP = wP I (using M = 2 211 1
(3.89)
and !B = 0:05 in the performance weight (3.60)) and Wu = I , yields a good nominal
response (although not decoupled), but the system is very sensitive to input uncertainty, and where 11 = g11 g22 = det G is the 1; 1-element of the RGA of G. In our case 11 = 35:1 and
the outputs go up to about 3.4 and settle very slowly when there is 20% input gain error. jj
we get instability for  > 0:120. Check this numerically, e.g. using MATLAB.

Remark 4 Attempts to make the inverse-based controller robust using the second step of
H
the Glover-McFarlane 1 loop-shaping procedure are also unhelpful; see Exercise 3.9. This
Remark. The instability condition in (3.89) for simultaneous input and output gain

uncertainty, applies to the very special case of a 2 2 plant, in which all elements share the
shows that robustness with respect to coprime factor uncertainty does not necessarily imply same dynamics, G(s) = g (s)G0 , and an inverse-based controller, K (s) = (k1 =s)G 1 (s).
robustness with respect to input uncertainty. In any case, the solution is to avoid inverse-based
controllers for a plant with large RGA-elements.
Exercise 3.9 Consider again the distillation process G(s) in (3.81). The response using
the inverse-based controller Kinv in (3.83) was found to be sensitive to input gain errors.
Exercise 3.7 Design a SVD-controller K = W1 Ks W2 for the distillation process in (3.81),
i.e. select W1 = V and W2 = U T where U and V are given in (3.46). Select Ks in the form
We want to see if the controller can be modified to yield a more robust system by using
 
H
the Glover-McFarlane 1 loop-shaping procedure. To this effect, let the shaped plant be
75s+1 H
Gs = GKinv , i.e. W1 = Kinv , and design an 1 controller Ks for the shaped plant
Ks = c1 0s 0
c2 75ss+1 (see page 389 and Chapter 9), such that the overall controller becomes K = Kinv Ks . (You
will find that min = 1:414 which indicates good robustness with respect to coprime factor
and try the following values: uncertainty, but the loop shape is almost unchanged and the system remains sensitive to input
(a) c1 = c2 = 0:005; uncertainty.)
(b) c1 = 0:005, c2 = 0:05;
(c) c1 = 0:7=197 = 0:0036, c2 = 0:7=1:39 = 0:504.
3.7.3 Robustness conclusions
Simulate the closed-loop reference response with and without uncertainty. Designs (a) and
(b) should be robust. Which has the best performance? Design (c) should give the response From the two motivating examples above we found that multivariable plants
in Figure 3.12. In the simulations, include high-order plant dynamics by replacing G(s) by can display a sensitivity to uncertainty (in this case input uncertainty) which is
1
(0:02s+1)5 G(s). What is the condition number of the controller in the three cases? Discuss fundamentally different from what is possible in SISO systems.
the results. (See also the conclusion on page 243). In the first example (spinning satellite), we had excellent stability margins (PM
and GM) when considering one loop at a time, but small simultaneous input gain
Exercise 3.8 Consider again the distillation process (3.81) with the decoupling controller, errors gave instability. This might have been expected from the peak values (H 1
but also include output gain uncertainty b i . That is, let the perturbed loop transfer function be norms) of S and T , defined as

L0 (s) = G0 Kinv = 0 : 7 1 + b1 0 G 1 + 1 0 G 1
s |
0 1 + b 2
{z
0 1+ 2
}
(3.87) kT k1 = max
!
 (T (j!)); kS k1 = max
!
 (S (j!)) (3.90)
L0
which were both large (about 10) for this example.
where L0 is a constant matrix for the distillation model (3.81), since all elements in G share
In the second example (distillation process), we again had excellent stability
the same dynamics, G(s) = g (s)G0 . The closed-loop poles of the perturbed system are
solutions to det(I + L0 (s)) = det(I + (k1 =s)L0 ) = 0, or equivalently
margins (PM and GM), and the system was also robustly stable to errors (even
simultaneous) of up to 100% in the input gains. However, in this case small input
s
det( I + L0 ) = (s=k1 )2 + tr(L0 )(s=k1 ) + det(L0 ) = 0 (3.88) gain errors gave very poor output performance, so robust performance was not
k1 satisfied, and adding simultaneous output gain uncertainty resulted in instability
For k1 > 0 we have from the Routh-Hurwitz stability condition indexRouth-Hurwitz stability (see Exercise 3.8). These problems with the decoupling controller might have been
test that instability occurs if and only if the trace and/or the determinant of L0 are negative. expected because the plant has large RGA-elements. For this second example the
98 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 99

H1 norms of S and T were both about 1, so the absence of peaks in S and T does problem can be formulated using the block diagram in Figure 3.13 (for the nominal
not guarantee robustness. case) or in Figure 3.21 (with model uncertainty).
Although sensitivity peaks, RGA-elements, etc. are useful indicators of robustness
Remark 1 The configuration in Figure 3.13 may at first glance seem restrictive. However,
problems, they provide no exact answer to whether a given source of uncertainty
this is not the case, and we will demonstrate the generality of the setup with a few examples,
will yield instability or poor performance. This motivates the need for better tools including the design of observers (the estimation problem) and feedforward controllers.
for analyzing the effects of model uncertainty. We want to avoid a trial-and-error
procedure based on checking stability and performance for a large number of Remark 2 We may generalize the control configuration still further by including diagnostics
candidate plants. This is very time consuming, and in the end one does not know as additional outputs from the controller giving the 4-parameter controller introduced by Nett
whether those plants are the limiting ones. What is desired, is a simple tool which is (1986), but this is not considered in this book.
able to identify the worst-case plant. This will be the focus of Chapters 7 and 8 where
we show how to represent model uncertainty in the H 1 framework, and introduce 3.8.1 Obtaining the generalized plant P
the structured singular value  as our tool. The two motivating examples are studied
in more detail in Example 8.10 and Section 8.11.3 where a -analysis predicts the The routines in MATLAB for synthesizing H 1 and H2 optimal controllers assume
robustness problems found above. that the problem is in the general form of Figure 3.13, that is, they assume that P
is given. To derive P (and K ) for a specific case we must first find a block diagram
representation and identify the signals w, z , u and v . To construct P one should note
that it is an open-loop system and remember to break all “loops” entering and exiting
3.8 General control problem formulation the controller K . Some examples are given below and further examples are given in
Section 9.3 (Figures 9.9, 9.10, 9.11 and 9.12).

(weighted) (weighted) d
- -z
exogenous inputs exogenous outputs
w
- P r -+ e- - K u - G -+ ?e+ q -y
6
u v
control signals
K 
sensed outputs
ym
+
e+
? n

Figure 3.14: One degree-of-freedom control configuration


Figure 3.13: General control configuration for the case with no model uncertainty

In this section we consider a general method of formulating control problems Example 3.13 One degree-of-freedom feedback control configuration. We want to find
introduced by Doyle (1983; 1984). The formulation makes use of the general P for the conventional one degree-of-freedom control configuration in Figure 3.14. The first
control configuration in Figure 3.13, where P is the generalized plant and K is step is to identify the signals for the generalized plant:
the generalized controller as explained in Table 1.1 on page 13. Note that positive 2 3 2 3
w1 d
feedback is used. w= 4 w2 5 = 4 r 5; z = e = y r ; v = r ym = r y n (3.91)
The overall control objective is to minimize some norm of the transfer function w3 n
from w to z , for example, the H 1 norm. The controller design problem is then: With this choice of v , the controller only has information about the deviation r ym . Also
 Find a controller K which based on the information in v , generates a control signal note that z = y r, which means that performance is specified in terms of the actual output
u which counteracts the influence of w on z , thereby minimizing the closed-loop y and not in terms of the measured output ym . The block diagram in Figure 3.14 then yields
norm from w to z . z = y r = Gu + d r = Iw1 Iw2 + 0w3 + Gu
The most important point of this section is to appreciate that almost any linear control v = r ym = r Gu d n = Iw1 + Iw2 Iw3 Gu
100 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 101
P
( P - e-
+ -z
d
w r 6q w - Ww we - ze - Wz -z
n - Pe
- G -+ e?+ q -+ e?+ --?e+
u v K 
K  Figure 3.16: General control configuration for the case with no model uncertainty

Figure 3.15: Equivalent representation of Figure 3.14 where the error signal to be minimized disturbances, references and noise), and the weighted or normalized controlled
is z = y r and the input to the controller is v = r ym
outputs z = Wz ze (where ze often consists of the control error y r and the
manipulated input u). The weighting matrices are usually frequency dependent and
and P which represents the transfer function matrix from [ w u ]T to [ z v ]T is typically selected such that weighted signals w and z are of magnitude 1, that is, the
  norm from w to z should be less than 1. Thus, in most cases only the magnitude of the
P= I I 0 G (3.92) weights matter, and we may without loss of generality assume that W w (s) and Wz (s)
I I I G are stable and minimum phase (they need not even be rational transfer functions but
Note that P does not contain the controller. Alternatively, P can be obtained by inspection if not they will be unsuitable for controller synthesis using current software).
from the representation in Figure 3.15.

Remark. Obtaining the generalized plant P may seem tedious. However, when performing
Example 3.14 Stacked S=T=KS problem. Consider an H1 problem where we want to
bound  (S ) (for performance),  (T ) (for robustness and to avoid sensitivity to noise) and
numerical calculations P can be generated using software. For example, in MATLAB we may
 (KS ) (to penalize large inputs). These requirements may be combined into a stacked H1
use the simulink program, or we may use the sysic program in the -toolbox. The code
problem
in Table 3.1 generates the generalized plant P in (3.92) for Figure 3.14. 2 3
Wu KS
min
K
k N (K )k 1 ; N = 4 WT T 5 (3.93)
WP S
Table 3.1: MATLAB program to generate P in (3.92)
% Uses the Mu-toolbox where K is a stabilizing controller. In other words, we have z = Nw and the objective is to
systemnames = ’G’; % G is the SISO plant.
H
minimize the 1 norm from w to z . Except for some negative signs which have no effect when
k k
inputvar = ’[d(1);r(1);n(1);u(1)]’; % Consists of vectors w and u.
input to G = ’[u]’; evaluating N 1 , the N in (3.93) may be represented by the block diagram in Figure 3.17
outputvar = ’[G+d-r; r-G-d-n]’; % Consists of vectors z and v. (convince yourself that this is true). Here w represents a reference command (w = r, where
the negative sign does not really matter) or a disturbance entering at the output (w = dy ), and
sysoutname = ’P’;
sysic;
z consists of the weighted input z1 = Wu u, the weighted output z2 = WT y , and the weighted
control error z3 = WP (y r). We get from Figure 3.17 the following set of equations

3.8.2 Controller design: Including weights in P


z1 = Wu u
To get a meaningful controller synthesis problem, for example, in terms of the H 1
or H2 norms, we generally have to include weights W z and Ww in the generalized z2 = WT Gu
plant P , see Figure 3.16. That is, we consider the weighted or normalized exogenous z3 = WP w + WP Gu
inputs w (where w e = W w w consists of the “physical” signals entering the system; v = w Gu
102 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 103

3.8.4 Analysis: Closing the loop to get N


- Wu - 9>
w
>
>
>
>
>
w - N -z
- WT - >z=

>
>
>
e v- q u- -q+ ?e+ q-
>
-
>
; Figure 3.18: General block diagram for analysis with no uncertainty
K G WP
- 6 The general feedback configurations in Figures 3.13 and 3.16 have the controller
K as a separate block. This is useful when synthesizing the controller. However, for
analysis of closed-loop performance the controller is given, and we may absorb K
into the interconnection structure and obtain the system N as shown in Figure 3.18
where
z = Nw (3.100)
Figure 3.17: Block diagram corresponding to z = Nw in (3.93) where N is a function of K . To find N , first partition the generalized plant P as
given in (3.95)-(3.97), combine this with the controller equation
so the generalized plant P from [ w u ]T to [ z v ]T is u = Kv (3.101)
2 3
0 Wu I and eliminate u and v from equations (3.96), (3.97) and (3.101) to yield z = Nw
P = 4 W I WT G
W
6 0 7
6 7 (3.94) where N is given by
P PG5
I G N = P11 + P12 K (I P22 K ) 1 P21 , Fl (P; K ) (3.102)
Here Fl (P; K ) denotes a lower linear fractional transformation (LFT) of P with K
3.8.3 Partitioning the generalized plant P as the parameter. Some properties of LFTs are given in Appendix A.7. In words, N
We often partition P as   is obtained from Figure 3.13 by using K to close a lower feedback loop around P .
P= P11 P12 Since positive feedback is used in the general configuration in Figure 3.13 the term
P21 P22 (3.95)
(I P22 K ) 1 has a negative sign.
such that its parts are compatible with the signals w, z , u and v in the generalized Remark. To assist in remembering the sequence of P12 and P21 in (3.102), notice that the
control configuration, first (last) index in P11 is the same as the first (last) index in P12 K (I P22 K ) 1 P21 . The
lower LFT in (3.102) is also represented by the block diagram in Figure 3.2.
z = P11 w + P12 u (3.96)
v = P21 w + P22 u (3.97) The reader is advised to become comfortable with the above manipulations before
progressing much further.
The reader should become familiar with this notation. In Example 3.14 we get
Example 3.15 We want to derive N for the partitioned P in (3.98) and (3.99) using the
"
0 # "
Wu I # LFT-formula in (3.102). We get
P11 = 0 ; P12 = WT G (3.98) 2
0
3 2
Wu I
3 2
Wu KS
3
WP I WP G
N = 4 0 5 + 4 WT G 5 K (I + GK ) 1 ( I ) = 4 WT T 5
P21 = I; P22 = G (3.99) WP I WP G WP S
Note that P22 has dimensions compatible with the controller, i.e. if K is an n u  nv 1
where we have made use of the identities S = (I + GK ) , T = GKS and I T = S .
matrix, then P 22 is an nv  nu matrix. For cases with one degree-of-freedom negative With the exception of the two negative signs, this is identical to N given in (3.93). Of course,
feedback control we have P 22 = G. the negative signs have no effect on the norm of N .
104 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 105

Again, it should be noted that deriving N from P is much simpler using available extra measurement y2 . To recast this into our standard configuration of Figure 3.13 we define
software. For example in the MATLAB -Toolbox we can evaluate N = F l (P; K ) 2 3
using the command N=starp(P,K). Here starp denotes the matrix star product   r
w = dr ; z = y1
6 y1 7
which generalizes the use of LFTs (see Appendix A.7.5). r; v = 6 7
4 y2 5 (3.104)

Exercise 3.10 Consider the two degrees-of-freedom feedback configuration in Figure 1.3(b). d
(i) Find P when 2 3
d     Note that d and r are both inputs and outputs to P and we have assumed a perfect
w = 4 r 5 ; z = y u r ; v = yr (3.103) measurement of the disturbance d. Since the controller has explicit information about r we
n m have a two degrees-of-freedom controller. The generalized controller K may be written in
(ii) Let z = Nw and derive N in two different ways; directly from the block diagram and terms of the individual controller blocks in Figure 3.19 as follows:
using N = Fl (P; K ).
K = [ K1 Kr K1 K2 Kd ] (3.105)

3.8.5 Generalized plant P : Further examples By writing down the equations or by inspection from Figure 3.19 we get
2
To illustrate the generality of the configuration in Figure 3.13, we now present two G1 I G1 G2 3
further examples: one in which we derive P for a problem involving feedforward 6 0 I 0 7
6
control, and one for a problem involving estimation. P= 6 G1 0 G1 G2 77 (3.106)
4
0 0 G2 5
I 0 0
d
Then partitioning P as in (3.96) and (3.97) yields P22 = [ 0T (G1 G2 )T GT2 0T ]T .
q
?
Exercise 3.11 Cascade implementation. Consider further Example 3.16. The local
feedback based on y2 is often implemented in a cascade manner; see also Figure 10.5. In
Kd this case the output from K1 enters into K2 and it may be viewed as a reference signal for y2 .
Derive the generalized controller K and the generalized plant P in this case.

r - Kr -+ d - K1 -++ ?d-u- G2 q d
y2- ?
+
- G1 qy-1 Remark. From Example 3.16 and Exercise 3.11, we see that a cascade implementation does
not usually limit the achievable performance since, unless the optimal K2 or K1 have RHP-
6- 6 + zeros, we can obtain from the optimal overall K the subcontrollers K2 and K1 (although
we may have to add a small D-term to K to make the controllers proper). However, if we
impose restrictions on the design such that, for example K2 or K1 are designed “locally”
K2  (without considering the whole problem), then this will limit the achievable performance.
For example, for a two degrees-of-freedom controller a common approach is to first design
the feedback controller Ky for disturbance rejection (without considering reference tracking)
and then design Kr for reference tracking. This will generally give some performance loss
compared to a simultaneous design of Ky and Kr .
Figure 3.19: System with feedforward, local feedback and two degrees-of-freedom control
Example 3.17 Output estimator. Consider a situation where we have no measurement of
the output y which we want to control. However, we do have a measurement of another output
Example 3.16 Consider the control system in Figure 3.19, where y1 is the output we want to variable y2 . Let d denote the unknown external inputs (including noise and disturbances) and
control, y2 is a secondary output (extra measurement), and we also measure the disturbance uG the known plant inputs (a subscript G is used because in this case the output u from K is
d. By secondary we mean that y2 is of secondary importance for control, that is, there is not the plant input). Let the model be
no control objective associated with it. The control configuration includes a two degrees-
of-freedom controller, a feedforward controller and a local feedback controller based on the y = GuG + Gd d; y2 = F uG + Fd d
106 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 107
 
The objective is to design an estimator, Kest , such that the estimated output yb = Kest uyG2 3.8.6 Deriving P from N
is as close as possible in some sense to the true output y ; see Figure 3.20. This problem may For cases where N is given and we wish to find a P such that
be written in the general framework of Figure 3.13 with
    N = Fl (P; K ) = P11 + P12 K (I P22 K ) 1P21
w = udG ; u = yb; z = y yb; v = uyG2
it is usually best to work from a block diagram representation. This was illustrated
Note that u = yb, that is, the output u from the generalized controller is the estimate of the above for the stacked N in (3.93). Alternatively, the following procedure may be
plant output. Furthermore, K = Kest and useful:
2 3
Gd G I 1. Set K = 0 in N to obtain P 11 .
P = 4 Fd F 0 5 (3.107)
0 I 0 2. Define Q = N P11 and rewrite Q such that each term has a common factor
  R = K (I P22 K ) 1 (this gives P22 ).
We see that P22 = 0 3. Since Q = P12 RP21 , we can now usually obtain P 12 and P21 by inspection.
0 since the estimator problem does not involve feedback.
Example 3.18 Weighted sensitivity. We will use the above procedure to derive P when
N = wP S = wP (I + GK ) 1 , where wP is a scalar weight.
d - Gd G
y -+ e -z 1. P11 = N (K = 0) = wP I .
6-yb wP I = wP (S I ) = wP T = wP GK (I + GK ) 1 , and
uG q - Fd F
y2 -
- Kest
2. Q = N
R = K (I + GK ) 1 so P22 = G.
3. Q = wP GR so we have P12 = wP G and P21 = I , and we get
we have

 

 P = wPI I wP G
G (3.108)


Remark. When obtaining P from a given N , we have that P11 and P22 are unique, whereas
-+ e-
Kalman Filter
y2 from Step 3 in the above procedure we see that P12 and P21 are not unique. For instance, let
yb2 be a real scalar then we may instead choose Pe12 = P12 and Pe21 = (1= )P21 . For P in
? (3.108) this means that we may move the negative sign of the scalar wP from P12 to P21 .
Kf C2 Exercise 3.13 Mixed sensitivity. Use the above procedure to derive the generalized plant
6 P for the stacked N in (3.93).
uG - B -+ ?e++ - 1
I xb q - C -yb
6 s 3.8.7 Problems not covered by the general formulation
A  The above examples have demonstrated the generality of the control configuration
in Figure 3.13. Nevertheless, there are some controller design problems which are
not covered. Let N be some closed-loop transfer function whose norm we want to
minimize. To use the general form we must first obtain a P such that N = F l (P; K ).
However, this is not always possible, since there may not exist a block diagram
Figure 3.20: Output estimation problem. One particular estimator Kest is a Kalman Filter representation for N . As a simple example, consider the stacked transfer function
 
N = ((II + GK ) 1
Exercise 3.12 State estimator (observer). In the Kalman filter problem studied in + KG) 1 (3.109)
Section 9.2 the objective is to minimize x x
b (whereas in Example 3.17 the objective was
to minimize y yb). Show how the Kalman filter problem can be represented in the general The transfer function (I + GK ) 1 may be represented on a block diagram with the
configuration of Figure 3.13 and find P . input and output signals after the plant, whereas (I + KG) 1 may be represented
108 MULTIVARIABLE FEEDBACK CONTROL

by another block diagram with input and output signals before the plant. However,
in N there are no cross coupling terms between an input before the plant and an
output after the plant (corresponding to G(I + KG) 1 ), or between an input after
the plant and an output before the plant (corresponding to K (I + GK ) 1 ) so N
cannot be represented in block diagram form. Equivalently, if we apply the procedure
in Section 3.8.6 to N in (3.109), we are not able to find solutions to P 12 and P21 in
Step 3.
Another stacked transfer function which cannot in general be represented in block
diagram form is  
N= W PS
SGd (3.110)

Remark. The case where N cannot be written as an LFT of K , is a special case of the
H
Hadamard weighted 1 problem studied by van Diggelen and Glover (1994a). Although the
H
solution to this 1 problem remains intractable, van Diggelen and Glover (1994b) present a
solution for a similar problem where the Frobenius norm is used instead of the singular value
to “sum up the channels”.

Exercise 3.14 Show that N in (3.110) can be represented in block diagram form if WP =
wP I where wP is a scalar.

3.8.8 A general control configuration including model (a) (b)


uncertainty Figure 3.23: Rearranging a system with multiple perturbations into the N -structure
The general control configuration in Figure 3.13 may be extended to include model
uncertainty as shown by the block diagram in Figure 3.21. Here the matrix 
The block diagram in Figure 3.21 in terms of P (for synthesis) may be transformed
into the block diagram in Figure 3.22 in terms of N (for analysis) by using K to close
is a block-diagonal matrix that includes all possible perturbations (representing
uncertainty) to the system. It is usually normalized in such a way that kk 1  1.
a lower loop around P . If we partition P to be compatible with the controller K , then
the same lower LFT as found in (3.102) applies, and
  N = Fl (P; K ) = P11 + P12 K (I P22 K ) 1P21 (3.111)
u y To evaluate the perturbed (uncertain) transfer function from external inputs w to
- external outputs z , we use  to close the upper loop around N (see Figure 3.22),
w -
- P -z resulting in an upper LFT (see Appendix A.7):
z = Fu (N; )w; Fu (N; ) , N22 + N21 (I N11 ) 1 N12 (3.112)
u v Remark 1 Controller synthesis based on Figure 3.21 is still an unsolved problem, although
good practical approaches like DK -iteration to find the “-optimal” controller are in use (see
K  H
Section 8.12). For analysis (with a given controller), the situation is better and with the 1
norm an assessment of robust performance involves computing the structured singular value,
. This is discussed in more detail in Chapter 8.
Figure 3.21: General control configuration for the case with model uncertainty Remark 2 In (3.112) N has been partitioned to be compatible with , that is N11 has
dimensions compatible with . Usually,  is square in which case N11 is a square matrix
110 MULTIVARIABLE FEEDBACK CONTROL INTRODUCTION TO MULTIVARIABLE CONTROL 111

of the same dimension as . For the nominal case with no uncertainty we have Fu (N; ) = Exercise 3.18 Assume that A is non-singular. (i) Formulate a condition in terms of the
Fu (N; 0) = N22 , so N22 is the nominal transfer function from w to z . maximum singular value of E for the matrix A + E to remain non-singular. Apply this to
A in (3.113) and (ii) find an E of minimum magnitude which makes A + E singular.
Remark 3 Note that P and N here also include information about how the uncertainty affects
the system, so they are not the same P and N as used earlier, for example in (3.102). Actually, k k
Exercise 3.19 Compute A i1 ,  (A) = A i2 , k k kAki1 , kAkF , kAkmax and kAksum for
the parts P22 and N22 of P and N in (3.111) (with uncertainty) are equal to the P and N in the following matrices and tabulate your results:
(3.102) (without uncertainty). Strictly speaking, we should have used another symbol for N        
and P in (3.111), but for notational simplicity we did not. A1 = I ; A2 = 10 00 ; A3 = 11 11 ; A4 = 10 10 ; A5 = 11 00
Remark 4 The fact that almost any control problem with uncertainty can be represented by
Show using the above matrices that the following bounds are tight (i.e. we may have equality)
Figure 3.21 may seem surprising, so some explanation is in order. First represent each source
of uncertainty by a perturbation block, i , which is normalized such that ik k 1. These

for 2 2 matrices (m = 2):
perturbations may result from parametric uncertainty, neglected dynamics, etc. as will be  (A)  kAkF  pm  (A)
discussed in more detail in Chapters 7 and 8. Then “pull out” each of these blocks from
the system so that an input and an output can be associated with each i as shown in kAkmax   (A)  mkAkmax
Figure 3.23(a). Finally, collect these perturbation blocks into a large block-diagonal matrix kAki1 =pm   (A)  pmkAki1
having perturbation inputs and outputs as shown in Figure 3.23(b). In Chapter 8 we discuss in
detail how to obtain N and .
kAki1 =pm   (A)  pmkAki1
kAkF  kAksum
Exercise 3.20 Find example matrices to illustrate that the above bounds are also tight when
3.9 Additional exercises A is a square m  m matrix with m > 2.
Exercise 3.21 Do the extreme singular values bound the magnitudes of the elements of a
Most of these exercises are based on material presented in Appendix A. The exercises matrix? That is, is 
 (A) greater than the largest element (in magnitude), and is (A) smaller
illustrate material which the reader should know before reading the subsequent than the smallest element? For a non-singular matrix, how is  (A) related to the largest
chapters. element in A 1 ?

k k
Exercise 3.15 Consider the performance specification wP S 1 < 1. Suggest a rational 
Exercise 3.22 Consider a lower triangular m m matrix A with aii = 1, aij = 1 for
transfer function weight wP (s) and sketch it as a function of frequency for the following two all i > j , and aij = 0 for all i < j . (a) What is det A ? (b) What are the eigenvalues of A ?
cases: (c) What is the RGA of A? (d) Let m = 4 and find an E with the smallest value of   (E ) such
1. We desire no steady-state offset, a bandwidth better than 1 rad/s and a resonance peak that A + E is singular.
(worst amplification caused by feedback) lower than 1:5.
Exercise 3.23 Find two matrices A and B such that (A + B ) > (A) + (B ) which
2. We desire less than 1% steady-state offset, less than 10% error up to frequency 3 rad/s, a
proves that the spectral radius does not satisfy the triangle inequality and is thus not a norm.
bandwidth better than 10 rad/s, and a resonance peak lower than 2. Hint: See (2.72) and
(2.73). Exercise 3.24 Write T = GK (I + GK ) 1 as an LFT of K, i.e. find P such that
T = Fl (P; K ).
k k
Exercise 3.16 By M 1 one can mean either a spatial or temporal norm. Explain the
difference between the two and illustrate by computing the appropriate infinity norm for
  Exercise 3.25 Write K as an LFT of T = GK (I + GK ) 1, i.e. find J such that
M1 = 3 4 ; M (s) = s 1 3 K = Fl (J; T ).
2 6 2 s+1s+2
Exercise 3.26 State-space descriptions may be represented as LFTs. To demonstrate this
Exercise 3.17 What is the relationship between the RGA-matrix and uncertainty in the find H for
individual elements? Illustrate this for perturbations in the 1; 1-element of the matrix Fl (H; 1=s) = C (sI A) 1 B + D
 
A = 10 9
9 8 (3.113)
Exercise 3.27 Show that the set of all stabilizing controllers in (4.91) can be written as
K = Fl (J; Q) and find J .
112 MULTIVARIABLE FEEDBACK CONTROL

Exercise 3.28 In (3.11) we stated that the sensitivity of a perturbed plant, S0 = (I +


G0 K ) 1 , is related to that of the nominal plant, S = (I + GK ) 1 by
S 0 = S (I + E O T ) 1
where EO = (G0 G)G 1 . This exercise deals with how the above result may be
4
ELEMENTS OF LINEAR
derived in a systematic (though cumbersome) manner using LFTs (see also (Skogestad and
Morari, 1988a)).
a) First find F such that S0 = (I + G0 K ) 1 = Fl (F; K ), and find J such that
K = Fl (J; T ) (see Exercise 3.25).
b) Combine these LFTs to find S 0 = Fl (N; T ). What is N in terms of G and G0 ?. Note that
since J11 = 0 we have from (A.156)
 
SYSTEM THEORY
N = J F11 F12 J12
21 F21 J22 + J21 F22 J12
c) Evaluate S 0
The main objective of this chapter is to summarize important results from linear system theory
= Fl (N; T ) and show that
The treatment is thorough, but readers are encouraged to consult other books, such as Kailath
S 0 = I G0 G 1 T (I (I G0 G 1 )T ) 1 (1980) or Zhou et al. (1996), for more details and background information if these results are

d) Finally, show that this may be rewritten as S0 = S (I + EO T ) 1 .


new to them.

4.1 System descriptions


3.10 Conclusion
The most important property of a linear system (operator) is that it satisfies the
The main purpose of this chapter has been to give an overview of methods for superposition principle: Let f (u) be a linear operator, let u 1 and u2 be two
analysis and design of multivariable control systems. independent variables (e.g. input signals), and let 1 and 2 be two real scalars,
In terms of analysis, we have shown how to evaluate MIMO transfer functions then
and how to use the singular value decomposition of the frequency-dependent plant f ( 1 u1 + 2 u2 ) = 1 f (u1 ) + 2 f (u2 ) (4.1)
transfer function matrix to provide insight into multivariable directionality. Other
useful tools for analyzing directionality and interactions are the condition number We use in this book various representations of time-invariant linear systems, all of
and the RGA. Closed-loop performance may be analyzed in the frequency domain which are equivalent for systems that can be described by linear ordinary differential
by evaluating the maximum singular value of the sensitivity function as a function equations with constant coefficients and which do not involve differentiation of
of frequency. Multivariable RHP-zeros impose fundamental limitations on closed- the inputs (independent variables). The most important of these representations are
loop performance, but for MIMO systems we can often direct the undesired effect discussed in this section.
of a RHP-zero to a subset of the outputs. MIMO systems are often more sensitive to
uncertainty than SISO systems, and we demonstrated in two examples the possible
4.1.1 State-space representation
sensitivity to input gain uncertainty.
In terms of controller design, we discusssed some simple approaches such Consider a system with m inputs (vector u) and l outputs (vector y ) which has an
as decoupling and decentralized control. We also introduced a general control internal description of n states (vector x). A natural way to represent many physical
configuration in terms of the generalized plant P , which can be used as a basis for systems is by nonlinear state-space models of the form
synthesizing multivariable controllers using a number of methods, including LQG,
H2 , H1 and -optimal control. These methods are discussed in much more detail in x_ = f (x; u); y = g(x; u) (4.2)
Chapters 8 and 9. In this chapter we have only discussed the H 1 weighted sensitivity
method. where x_  dx=dt and f and g are nonlinear functions. Linear state-space models
may then be derived from the linearization of such models. In terms of deviation
114 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 115

variables (where x represents a deviation from some nominal value or trajectory, term ei (A)t as the mode associated with the eigenvalue  i (A). For a diagonalized
etc.) we have e = SAS 1 =  is a diagonal matrix)
realization (where we select S = T such that A
x_ (t) = Ax(t) + Bu(t) (4.3) we have that e = diagfe i
e
At  ( A ) t g,
y(t) = Cx(t) + Du(t) (4.4) Remark. For a system with disturbances d and measurement noise n the state-space-model is
where A, B , C and D are real matrices. If (4.3) is derived by linearizing (4.2) then written as
x_ = Ax + Bu + Bd d
A = @f=@x and B = @f=@u (see Section 1.5 for an example of such a derivation). y = Cx + Du + Dd d + n (4.8)
A is sometimes called the state matrix. These equations provide a convenient means Note that the symbol n is used to represent both the noise signal and the number of states.
of describing the dynamic behaviour of proper, rational, linear systems. They may
be rewritten as      Remark. The more general descriptor representation
x_ = A B x E x_ (t) = Ax(t) + Bu(t) (4.9)
y C D u
inludes, for cases where the matrix E is singular, e.g. E = [ I 0 ], implicit algebraic relations
which gives rise to the short-hand notation
between the states x. If E is nonsingular then (4.9) is a special case of (4.3).
 
G =s A B (4.5)
C D 4.1.2 Impulse response representation
which is frequently used to describe a state-space model of a system G. Note that The impulse response matrix is
the representation in (4.3)–(4.4) is not a unique description of the input-output 
g(t) = 0 t<0
CeAt B + DÆ(t) t  0
behaviour of a linear system. First, there exist realizations with the same input-output (4.10)
behaviour, but with additional unobservable and/or uncontrollable states (modes).
R
Second, even for a minimal realization (a realization with the fewest number of states where Æ (t) is the unit impulse (delta) function which satisfies lim !0 0 Æ (t)dt = 1.
and consequently no unobservable or uncontrollable modes) there are an infinite The ij ’th element of the impulse response matrix, g ij (t), represents the response
number of possibilities. To see this, let S be an invertible constant matrix, and yi (t) to an impulse uj (t) = Æ(t) for a system with a zero initial state.
introduce the new states x e = Sx, i.e. x = S 1 x e. Then an equivalent state-space With initial state x(0) = 0, the dynamic response to an arbitrary input u(t) (which
realization (i.e. one with the same input-output behaviour) in terms of these new is zero for t < 0) may from (4.6) be written as
states (“coordinates”) is Z t
Ae = SAS 1 ; Be = SB; Ce = CS 1 ; tildeD = D y(t) = g(t)  u(t) = g(t  )u( )d (4.11)
0
The most common realizations are given by a few canonical forms, such as the Jordan where  denotes the convolution operator.
(diagonalized) canonical form, the observability canonical form, etc.
Given the linear dynamical system in (4.3) with an initial state condition x(t 0 ) and
an input u(t), the dynamical system response x(t) for t  t 0 can be determined from
4.1.3 Transfer function representation - Laplace transforms
Z t The transfer function representation is unique and is very useful for directly obtaining
x(t) = eA(t t0 ) x(t0 ) + eA(t  )Bu( )d (4.6) insight into the properties of a system. It is defined as the Laplace transform of the
t0 impulse response Z 1
where the matrix exponential is G(s) = g(t)e st dt (4.12)
1 n
0
X X
eAt = I + (At)k =k! = ti ei t qiH (4.7)
Alternatively, we may start from the state-space description. With the assumption of
a zero initial state, x(t = 0) = 0, the Laplace transforms of (4.3) and (4.4) become 1
k=1 k=1
The latter dyadic expansion, involving the right (t i ) and left (qi ) eigenvectors of A,
sx(s) = Ax(s) + Bu(s) ) x(s) = (sI A) 1 Bu(s) (4.13)
applies for cases with distinct eigenvalues ( i (A)), see (A.22). We will refer to the 1 We make the usual abuse of notation and let f (s) denote the Laplace transform of f (t).
116 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 117

y(s) = Cx(s) + Du(s) ) y(s) = (|C (sI A{z) 1 B + D}) u(s) (4.14) forming N r Mr 1 . Mathematically, coprimeness means that there exist stable U r (s)
G(s) and Vr (s) such that the following Bezout identity is satisfied

where G(s) is the transfer function matrix. Equivalently, from (A.1), Ur Nr + Vr Mr = I (4.19)

1 Similarly, a left coprime factorization of G is


G(s) = [C adj(sI A)B + D det(sI A)] (4.15)
det(sI A)
Q G(s) = Ml 1(s)Nl (s) (4.20)
where det(sI A) = ni=1 (s i (A)) is the pole polynomial. For cases where the
eigenvalues of A are distinct, we may use the dyadic expansion of A given in (A.22), Here Nl and Ml are stable and coprime, that is, there exist stable U l (s) and Vl (s)
and derive such that the following Bezout identity is satisfied
n
X Cti qiH B
G(s) = +D (4.16) Nl Ul + Ml Vl = I
i=1 s i
(4.21)

When disturbances are treated separately, see (4.8), the corresponding disturbance For a scalar system, the left and right coprime factorizations are identical, G =
transfer function is NM 1 = M 1 N .
Gd (s) = C (sI A) 1 Bd + Dd (4.17) Remark. Two stable scalar transfer functions, N (s) and M (s), are coprime if and only if
Note that any system written in the state-space form of (4.3) and (4.4) has a they have no common RHP-zeros. In this case we can always find stable U and V such that
transfer function, but the opposite is not true. For example, time delays and improper NU + MV = 1.
systems can be represented by Laplace transforms, but do not have a state-space
Example 4.1 Consider the scalar system
representation. On the other hand, the state-space representation yields an internal
G(s) = (s 1)(s + 2)
description of the system which may be useful if the model is derived from physical
(4.22)
principles. It is also more suitable for numerical calculations. (s 3)(s + 4)
To obtain a coprime factorization, we first make all the RHP-poles of G zeros of M , and all
4.1.4 Frequency response the RHP-zeros of G zeros of N . We then allocate the poles of N and M so that N and M are
both proper and the identity G = NM 1 holds. Thus
An important advantage of transfer functions is that the frequency response (Fourier
transform) is directly obtained from the Laplace transform by setting s = j! in N (s) = s 1 ; M (s) = s 3
G(s). For more details on the frequency response, the reader is referred to Sections s+4 s+2
2.1 and 3.3. is a coprime factorization. Usually, we select N and M to have the same poles as each other
and the same order as G(s). This gives the most degrees of freedom subject to having a
realization of [ M (s) N (s) ]T with the lowest order. We then have that
4.1.5 Coprime factorization
Another useful way of representing systems is the coprime factorization which may N (s) = k (s2 1)(s + 2) ; M (s) = k (s2 3)(s + 4) (4.23)
be used both in state-space and transfer function form. In the latter case a right
s + k1 s + k2 s + k1 s + k2
coprime factorization of G is is a coprime factorization of (4.22) for any k and for any k1 ; k2 > 0.

G(s) = Nr (s)Mr 1 (s) (4.18) From the above example, we see that the coprime factorization is not unique. Now
introduce the operator M  defined as M  (s) = M T ( s) (which for s = j! is the
where Nr (s) and Mr (s) are stable coprime transfer functions. The stability implies same as the complex conjugate transpose M H = M  T ). Then G(s) = Nr (s)Mr 1 (s)
that Nr (s) should contain all the RHP-zeros of G(s), and M r (s) should contain as is called a normalized right coprime factorization if
RHP-zeros all the RHP-poles of G(s). The coprimeness implies that there should be
no common RHP-zeros in N r and Mr which result in pole-zero cancellations when Mr Mr + Nr Nr = I (4.24)
118 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 119
 T
In this case Xr (s) = M r
Nr satisfies XrXr = I and is called an inner transfer Table 4.1: MATLAB commands to generate a normalized coprime factorization

function. The normalized left coprime factorization G(s) = M l 1 (s)Nl (s) is defined
% Uses the Mu toolbox
%
% Find Normalized Coprime factors of system [a,b,c,d] using (4.26)
similarly, requiring that
Ml Ml + Nl Nl = I
%
S=eye(size(d’*d))+d’*d;
(4.25) R=eye(size(d*d’))+d*d’;

Xl (s) = [ Ml Nl ] is co-inner which means X l Xl = I . The


A1 = a-b*inv(S)*d’*c;
In this case R1 = c’*inv(R)*c;
normalized coprime factorizations are unique to within a right (left) multiplication Q1 = b*inv(S)*b’;
[z1,z2,fail,reig min] = ric schr([A1’ -R1; -Q1 -A1]); Z = z2/z1;
by a unitary matrix. % Alternative: aresolv in Robust control toolbox:
% [z1,z2,eig,zerr,zwellposed,Z] = aresolv(A1’,Q1,R1);
H = -(b*d’ + Z*c’)*inv(R);
Exercise 4.1 We want to find the normalized coprime factorization for the scalar system in A = a + H*c;
(4.22). Let N and M be as given in (4.23), and substitute them into (4.24). Show that after Bn = b + H*d; Bm = H;

some algebra and comparing of terms one obtains: k = 0:71, k1 = 5:67 and k2 = 8:6. C = inv(sqrtm(R))*c;
Dn = inv(sqrtm(R))*d; Dm = inv(sqrtm(R));
N = pck(A,Bn,C,Dn);
To derive normalized coprime factorizations by hand, as in the above exercise, is in M = pck(A,Bm,C,Dm);
general difficult. Numerically, however, one can easily find a state-space realization.
If G has a minimal state-space realization
4.1.6 More on state-space realizations
 
G=s A B Inverse system. In some cases we may want to find a state-space description of the
C D inverse of a system. For a square G(s) we have
 
then a minimal state-space realization of a normalized left coprime factorization is
G 1 =s A BD 1 C BD 1
given (Vidyasagar, 1988) by D 1C D 1 (4.27)

  where D is assumed to be non-singular. For a non-square G(s) in which D has full


  A + HC B + HD H
Nl (s) Ml (s) =s
R 1=2 C R 1=2 D R 1=2
(4.26) row (or column) rank, a right (or left) inverse of G(s) can be found by replacing D 1
by D y , the pseudo-inverse of D.
where For a strictly proper system with D = 0, one may obtain an approximate inverse
H , (BDT + ZC T )R 1 ; R , I + DDT by including a small additional feed-through term D, preferably chosen on physical
grounds. One should be careful, however, to select the signs of the terms in D
and the matrix Z is the unique positive definite solution to the algebraic Riccati such that one does not introduce RHP-zeros in G(s) because this will make G(s) 1
equation unstable.
Improper systems. Improper transfer functions, where the order of the s-
(A BS 1 DT C )Z + Z (A BS 1 DT C )T ZC T R 1 CZ + BS 1 B T = 0 polynomial in the numerator exceeds that of the denominator, cannot be represented
in standard state-space form. To approximate improper systems by state-space
where
S , I + DT D:
models, we can include some high-frequency dynamics which we know from
physical considerations will have little significance.
Notice that the formulas simplify considerably for a strictly proper plant, i.e. when Realization of SISO transfer functions. Transfer functions are a good way
D = 0. The MATLAB commands in Table 4.1 can be used to find the normalized of representing systems because they give more immediate insight into a systems
coprime factorization for G(s) using (4.26). behaviour. However, for numerical calculations a state-space realization is usually
desired. One way of obtaining a state-space realization from a SISO transfer function
Exercise 4.2 Verify numerically (e.g. using the MATLAB file in Table 4.1 or the -toolbox is given next. Consider a strictly proper transfer function (D = 0) of the form
command sncfbal) that the normalized coprime factors of G(s) in (4.22) are as given in
sn 1 +    + 1 s + 0
G(s) = n n 1 n 1
Exercise 4.1.
s + an 1 s +    + a1 s + a0
(4.28)
120 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 121

Then, since multiplication by s corresponds to differentiation in the time domain, Example 4.3 Consider an ideal PID-controller
(4.28) and the relationship y (s) = G(s)u(s) corresponds to the following differential 2
equation K (s) = Kc (1 + 1 + D s) = Kc I D s + I s + 1 (4.30)
I s I s
yn (t)+an 1 yn 1 (t)+  +a1 y0 (t)+a0 y(t) = n 1 un 1 (t)+  + 1 u0 (t)+ 0 u(t) Since this involves differentiation of the input, it is an improper transfer function and cannot be
where y n 1 (t) and un 1 (t) represent n 1’th order derivatives, etc. We can further
written in state-space form. A proper PID controller may be obtained by letting the derivative
action be effective over a limited frequency range. For example
write this as
K (s) = Kc (1 + 1 + D s )
yn = ( a n 1 yn 1 + n 1 un 1 ) +    + ( a1 y0 + 1 u0) + (| a0 y{z+ 0 u}) I s 1 + D s
(4.31)

x0n where  is typically 0.1 or less. This can now be realized in state-space form in an infinite
| {z } number of ways. Four common forms are given below. In all cases, the D-matrix, which
x2n 1 represents the controller gain at high frequencies (s !1
), is a scalar given by
| {z }
xn1
D = Kc 1 +  (4.32)
where we have introduced new variables x 1 ; x2 ; : : : xn and we have y = x 1 . Note 
that xn1 is the n’th derivative of x 1 (t). With the notation x_  x 0 (t) = dx=dt, we have 1. Diagonalized form (Jordan canonical form)
   
the following state-space equations 0 01 ; B = Kc =I
x_ n = a0 x1 + 0 u
A= 0 
D Kc =(2 D ) ; C = [1 1] (4.33)
2. Observability canonical form
x_ n 1 = a1 x1 + xn + 1 u 
.. A= 0 11 ; B =  1 ; C = [ 1 0 ]
. 0 D 2 (4.34)

x_ 1 = an 1 x1 + x2 + n 1 u where 1 = Kc (
1 1 K
); 2 = 3 c2
 I 2 D  D
corresponding to the realization 3. Controllability canonical form
2 an 1 1 0   0 0 3 2
n 13 
0 01 ; B =  1 ; C = [ 1 2 ]
6 an 2 0 1 0 0 77 6 n 2 77 A= 1
6
6 .. .. .. .. 7 6
6 .. 7 D 0 (4.35)
A = 66 . . . .77; B = 66 . 7
7 (4.29) where 1 and 2 are as given above.
6
4 a2 0 0 1 07 6 2 7
a1 0 0   0 1 5 4
1 5 4. Observer canonical form in (4.29)
a0 0 0   0 0 0  1   
C = [1 0 0  0 0] A = D 1 ; 1
0 0 B = 0 ; C = [1 0 ] (4.36)

This is called the observer canonical form. Two advantages of this realization are K 2 
where 0 = c ; 1 = Kc 2D I

that one can obtain the elements of the matrices directly from the transfer function, I D  I D
and that the output y is simply equal to the first state. Notice that if the transfer On comparing these four realizations with the transfer function model in (4.31), it is
function is not strictly proper, then we must first bring out the constant term, i.e. clear that the transfer function offers more immediate insight. One can at least see
write G(s) = G1 (s) + D, and then find the realization of G 1 (s) using (4.29). that it is a PID controller.
Example 4.2 To obtain the state-space realization, in observer canonical form, of the SISO Time delay. A time delay (or dead time) is an infinite-dimensional system and
transfer function G(s) = ss+aa , we first bring out a constant term by division to get not representable as a rational transfer function. For a state-space realization it must
therefore be approximated. An n’th order approximation of a time delay  may be
G(s) = s a = 2a + 1 obtained by putting n first-order Padé approximations in series
s+a s+a
Thus D = 1. For the term s+2aa we get from (4.28) that 0 = 2a and a0 = a, and therefore (1 2n s)n
e s  (4.37)
(4.29) yields A = a; B = 2a and C = 1. (1 + 2n s)n
122 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 123

Alternative (and possibly better) approximations are in use, but the above 1. The system (A; B ) is state controllable if and only if the controllability matrix

C , [B AB A2 B    An 1 B ]
approximation is often preferred because of its simplicity.
(4.41)

has rank n (full row rank). Here n is the number of states.


2. From (4.6) one can verify that a particular input which achieves x(t1 ) = x1 is
4.2 State controllability and state observability
u(t) = B T eA (t1 t) Wc (t1 ) 1 (eAt1 x0
T
x1 ) (4.42)
For the case when A has distinct eigenvalues, we have from (4.16) the following
dyadic expansion of the transfer function matrix from inputs to outputs, where Wc (t) is the Gramian matrix at time t,
Z t
n n T
XCti qiH B X ypi upi Wc (t) , eA BB T eA  d
G(s) = +D = +D (4.38) 0
i=1 s  i i=1 s i Therefore, the system (A; B ) is state controllable if and only if the Gramian matrix Wc (t)
From this we see that the i’the input pole vector (Havre, 1998) has full rank (and thus is positive definite) for any t > 0. For a stable system (A is stable)
we only need to consider P , 1
Wc ( ), that is, the pair (A; B ) is state controllable if and
upi , qiH B (4.39)
only if the controllability Gramian
Z 1 A T AT 
is an indication of how much the i’th mode is excited (and thus may be “controlled”)
P , e BB e d (4.43)
0
by the inputs. Similarly, the i’the output pole vector
is positive definite (P > 0) and thus has full rank n. P may also be obtained as the solution
ypi , Cti (4.40)
to the Lyapunov equation
AP + P AT = BB T (4.44)

indicates how much the i’th mode is observed in the outputs. Thus, the pole vectors Example 4.4 Consider a scalar system with two states and the following state-space
may be used for checking the state controllability and observability of a system. This 
2 ; B =  1 ; C = [1 0 ]; D = 0
realization
A= 2
is explained in more detail below, but let us start by defining state controllability.
0 4 1
Definition 4.1 State controllability. The dynamical system x_ = Ax + Bu, or The transfer function (minimal realization) is
equivalently the pair (A; B ), is said to be state controllable if, for any initial state 1
x(0) = x0 , any time t1 > 0 and any final state x 1 , there exists an input u(t) such G(s) = C (sI A) 1 B =
s+4
that x(t1 ) = x1 . Otherwise the system is said to be state uncontrollable. which has only one state. In fact, the first state corresponding to the eigenvalue at -2 is not
controllable. This is verified by considering state controllability.
A mode is called uncontrollable if none of the inputs can excite the mode. From
1. The eigenvalues of A are 1 = 2 and 2 = 4, and the corresponding left eigenvectors
(4.38) we have that the i’th mode is uncontrollable if and only if the i’th input pole
are q1 = [0:707 0:707 ]T and q2 = [0 1 ]T . The two input pole vectors are
vector is zero – otherwise the mode is controllable. The system is (state) controllable
if all its modes are controllable. Thus we have: Let  i be the i’th eigenvalue of A, yp1 = B H q1 = 0; yp2 = B H q2 = 1
qi the corresponding left eigenvector, q iH A = i qiH , and upi = B H qi the i’th input
and since yp1 is zero we have that the first mode (eigenvalue) is not state controllable.
pole vector. Then the system (A; B ) is state controllable if and only if
2. The controllability matrix has rank 1 since it has two linearly dependent rows:
upi 6= 0; 8i C = [B

AB ] =

1 4 :
1 4
In words, a system is state controllable if and only if all its input pole vectors are 3. The controllability Gramian is also singular
nonzero. 
P= 0:125 0:125 
Remark. There exists many other tests for state controllability. Two of these are 0:125 0:125
124 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 125

In words, if a system is state controllable we can by use of its inputs u bring it from 1 T2 = s1+1 T1 ; T1 = s1+1 T0 where the states x = [ T1 T2 T3 T4 ]T are the
s+1 T2 ;
any initial state to any final state within any given finite time. State controllability four tank temperatures, the input u = T0 is the inlet temperature, and  = 100 s is the
would therefore seem to be an important property for practical control, but it rarely residence time in each tank. A state-space realization is
is for the following four reasons: 2
0:01 0 0 0 3 2 0:01 3
A = 64 0:01 0:01 0 0 75B = 64 0 75
1. It says nothing about how the states behave at earlier and later times, e.g. it does 0 0:01 0:01 0 0 (4.45)
not imply that one can hold (as t ! 1) the states at a given value. 0 0 0:01 0:01 0
2. The required inputs may be very large with sudden changes. In practice, we know that it is very difficult to control the four temperatures independently,
3. Some of the states may be of no practical importance. since at steady-state all temperatures must be equal. However, the controllability matrix C
4. The definition is an existence result which provides no degree of controllability in (4.41) has full rank, so the system is state controllable and it must be possible to achieve
(see Hankel singular values for this). at any given time any desired temperature in each of the four tanks simply by adjusting the
inlet temperature. This sounds almost too good to be true, so let us consider a specific case.
The first two objections are illustrated in the following example. Assume that the system is initially at steady-state (all temperatures are zero), and that we
want to achieve at t = 400 s the following temperatures: T1 (400) = 1, T2 (400) = 1,
Example 4.5 State controllability of tanks in series. T3 (400) = 1 and T4 (400) = 1. The change in inlet temperature, T0 (t), to achieve this was
computed from (4.42) and is shown as a function of time in Figure 4.1(a). The corresponding
150 tank temperatures are shown in Figure 4.1(b). Two things are worth noting:
1. The required change in inlet temperature is more than 100 times larger than the desired
100
(t)

temperature changes in the tanks and it also varies widely with time.
2. Although the states (tank temperatures Ti ) are indeed at their desired values of 1 at 
Control: u

50 T0 t = 400 s, it is not possible to hold them at these values, since at steady-state all the states
must be equal (all states approach 0 in this case, since u = T0 is reset to 0 at t = 400 s).
0
It is quite easy to explain the shape of the input T0 (t): The fourth tank is furthest away and
−50 we want its temperature to decrease (T4 (400) = 1) and therefore the inlet temperature T0
is initially decreased to about 40. Then, since T3 (400) = 1 is positive, T0 is increased to
0 100 200 300 400 500
Time [sec]
about 30 at t = 220 s; it is subsequently decreased to about 40, since T2 (400) = 1, and
(a) Input trajectory to give desired state at t = 400 s finally increased to more than 100 to achieve T1 (400) = 1.
15 T1 From the above example, we see clearly that the property of state controllability
States: T1 , T2 , T3 & T4

10
may not imply that the system is “controllable” in a practical sense 2 . This is because
5 T2 state controllability is concerned only with the value of the states at discrete values of
0 T3
time (target hitting), while in most cases we want the outputs to remain close to some
T4
−5

−10
desired value (or trajectory) for all values of time, and without using inappropriate
−15 control signals.
−20 So now we know that state controllability does not imply that the system is
0 50 100 150 200 250 300 350 400 450 500
Time [sec] controllable from a practical point of view. But what about the reverse: If we do
(b) Response of states (tank temperatures) not have state controllability, is this an indication that the system is not controllable
in a practical sense? In other words, should we be concerned if a system is not state
Figure 4.1: State controllability of four first-order systems in series controllable? In many cases the answer is “no”, since we may not be concerned with
the behaviour of the uncontrollable states which may be outside our system boundary
Consider a system with one input and four states arising from four first-order systems in series, or of no practical importance. If we are indeed concerned about these states then they
should be included in the output set y . State uncontrollability will then appear as a
G(s) = 1=(s + 1)4 rank deficiency in the transfer function matrix G(s) (see functional controllability).
A physical example could be four identical tanks (e.g. bath tubs) in series where water flows 2 In Chapter 5, we introduce a more practical
from one tank to the next. Energy balances, assuming no heat loss, yield T4 = s1+1 T3 ; T3 =
concept of controllability which we call “input-output
controllability”.
126 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 127

So is the issue of state controllability of any value at all? Yes, because it tells A system is state observable if we can obtain the value of all individual states by
us whether we have included some states in our model which we have no means measuring the output y (t) over some time period. However, even if a system is state
of affecting. It also tells us when we can save on computer time by deleting observable it may not be observable in a practical sense. For example, obtaining x(0)
uncontrollable states which have no effect on the output for a zero initial state. may require taking high-order derivatives of y (t) which may be numerically poor and
In summary, state controllability is a system theoretical concept which is sensitive to noise. This is illustrated in the following example.
important when it comes to computations and realizations. However, its name is
somewhat misleading, and most of the above discussion might have been avoided Example 4.5 (tanks in series) continued. If we define y = T 4 (the temperature of the last
if only Kalman, who originally defined state controllability, had used a different O
tank), then C = [0 0 0 1 ] and we find that the observability matrix has full column rank
terminology. For example, better terms might have been “point-wise controllability” so all states are observable from y . However, consider a case where the initial temperatures
in the tanks, Ti (0); i = 1; : : : ; 4, are non-zero (and unknown), and the inlet temperature
or “state affect-ability” from which it would have been understood that although
all the states could be individually affected, we might not be able to control them

T0 (t) = u(t) is zero for t 0. Then, from a practical point of view, it is clear that it is
numerically very difficult to back-calculate, for example T1 (0) based on measurements of
independently over a period of time. y (t) = T4 (t) over some interval [0; t1 ], although in theory all states are observable from the
output.
Definition 4.2 State observability. The dynamical system x_ = Ax + Bu, y =
Cx + Du (or the pair (A; C )) is said to be state observable if, for any time t 1 > 0, Definition 4.3 Minimal realization, McMillan degree and hidden mode. A state-
the initial state x(0) = x0 can be determined from the time history of the input u(t) space realization (A; B; C; D) of G(s) is said to be a minimal realization of G(s) if
and the output y (t) in the interval [0; t 1 ]. Otherwise the system, or (A; C ), is said to A has the smallest possible dimension (i.e. the fewest number of states). The smallest
be state unobservable. dimension is called the McMillan degree of G(s). A mode is hidden if it is not state
controllable or observable and thus does not appear in the minimal realization.
From (4.38) we have: Let  i be the i’th eigenvalue of A, t i be the corresponding
eigenvector, Ati = i ti , and ypi = Cti the i’th output pole vector. Then the system Since only controllable and observable states contribute to the input-output
(A; C ) is state observable if and only if behaviour from u to y , it follows that a state-space realization is minimal if and
only if (A; B ) is state controllable and (A; C ) is state observable.
6 0; 8i
ypi =
Remark 1 Note that uncontrollable states will contribute to the output response y (t) if the
In words, a system is state observable if and only if all its output pole vectors are 6
initial state is nonzero, x(t = 0) = 0, but this effect will die out if the uncontrollable states
nonzero. are stable.

Remark 2 Unobservable states have no effect on the outputs whatsoever, and may be viewed
Remark. Two other tests for state observability are: as outside the system boundary, and thus of no direct interest from a control point of view
1. The system (A; C ) is state observable if and only if we have full colum rank (rank n) of (unless the unobservable state is unstable, because we want to avoid the system “blowing
the observability matrix up”). However, observability is important for measurement selection and when designing state
2 C 3 estimators (observers).
CA 7
O , 664 ..7
5 (4.46)
.
CAn 1
2. For a stable system we may consider the observability Gramian
4.3 Stability
Z 1 AT  T A There are a number of ways in which stability may be defined, e.g. see Willems
Q, e C Ce d (4.47) (1970). Fortunately, for linear time-invariant systems these differences have no
0
practical significance, and we use the following definition:
which must have full rank n (and thus be positive definite) for the system to be state
observable. Q can also be found as the solution to the following Lyapunov equation Definition 4.4 A system is (internally) stable if none of its components contain
hidden unstable modes and the injection of bounded external signals at any place
AT Q + QA = C T C (4.48) in the system result in bounded output signals measured anywhere in the system.
128 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 129

We here define a signal u(t) to be “bounded” if there exists a constant c such that include the poles (eigenvalues) corresponding to uncontrollable and/or unobservable
ju(t)j < c for all t. The word internally is included in the definition to stress that states.
we do not only require the response from one particular input to another particular
output to be stable, but require stability for signals injected or measured at any point
of the system. This is discussed in more detail for feedback systems in Section 4.4.1 Poles and stability
4.7. Similarly, the components must contain no hidden unstable modes, that is, any For linear systems, the poles determine stability:
instability in the components must be contained in their input-output behaviour.
Theorem 4.1 A linear dynamic system x_ = Ax + Bu is stable if and only if all the
Definition 4.5 Stabilizable, detectable and hidden unstable modes. A system is poles are in the open left-half plane (LHP), that is, Ref i (A)g < 0; 8i. A matrix A
(state) stabilizable if all unstable modes are state controllable. A system is (state) with such a property is said to be “stable” or Hurwitz.
detectable if all unstable modes are state observable. A system with unstabilizable
Proof: From (4.7) we see that the time response (4.6) can be written as a sum of terms each
containing a mode ei (A)t . Eigenvalues in the RHP with Re i (A) > 0 give rise to unstable
or undetectable modes is said to contain hidden unstable modes.
f g
A linear system (A; B ) is stabilizable if and only if all input pole vectors u pi i modes since in this case ei (A)t is unbounded as t
!1 . Eigenvalues in the open LHP give
associated with the unstable modes are nonzero. A linear system (A; C ) is detectable rise to stable modes where ei (A)t ! !1
0 as t . Systems with poles on the j! -axis,
if and only if all output pole vectors y pi associated with the unstable modes are including integrators, are unstable from our Definition 4.4 of stability. For example, consider
nonzero. If a system is not detectable, then there is a state within the system which 
y = Gu and assume G(s) has imaginary poles s = j!o . Then with a bounded sinusoidal
will eventually grow out of bounds, but we have no way of observing this from the input, u(t) = sin !o t, the output y (t) grows unbounded as t !1 . 2
outputs y (t).
Remark 1 Any unstable linear system can be stabilized by feedback control (at least in 4.4.2 Poles from state-space realizations
theory) provided the system contains no hidden unstable mode(s). However, this may require Poles are usually obtained numerically by computing the eigenvalues of the A-
an unstable controller, see also the remark on page 185.
matrix. To get the fewest number of poles we should use a minimal realization of
Remark 2 Systems with hidden unstable modes must be avoided both in practice and in the system.
computations (since variables will eventually blow up on our computer if not on the factory
floor). In the book we always assume, unless otherwise stated, that our systems contain no
hidden unstable modes. 4.4.3 Poles from transfer functions
The following theorem from MacFarlane and Karcanias (1976) allows us to obtain
the poles directly from the transfer function matrix G(s) and is also useful for hand
4.4 Poles calculations. It also has the advantage of yielding only the poles corresponding to a
minimal realization of the system.
For simplicity, we here define the poles of a system in terms of the eigenvalues of the
Theorem 4.2 The pole polynomial (s) corresponding to a minimal realization of
state-space A-matrix. More generally, the poles of G(s) may be somewhat loosely
a system with transfer function G(s), is the least common denominator of all non-
defined as the finite values s = p where G(p) has a singularity (“is infinite”), see
identically-zero minors of all orders of G(s).
also Theorem 4.2 below.
Definition 4.6 Poles. The poles p i of a system with state-space description (4.3)– A minor of a matrix is the determinant of the matrix obtained by deleting certain
(4.4) are the eigenvalues  i (A); i = 1; : : : ; n of the matrix A.QThe pole or rows and/or columns of the matrix. We will use the notation M cr to denote the minor
characteristic polynomial (s) is defined as (s) , det(sI A) = i=1 (s pi ).
n corresponding to the deletion of rows r and columns c in G(s). In the procedure
Thus the poles are the roots of the characteristic equation defined by the theorem we cancel common factors in the numerator and denominator
of each minor. It then follows that only observable and controllable poles will appear
(s) , det(sI A) = 0 (4.49) in the pole polynomial.
2
To see that this definition is reasonable, recall (4.15) and Appendix A.2.1. Note that Example 4.6 Consider the plant: G(s) = (3(ss+1) +1) e
s which has no state-space
if A does not correspond to a minimal realization then the poles by this definition will realization as it contains a delay and is also improper. Thus we can not compute the poles
130 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 131

from (4.49). However from Theorem 4.2 we have that the denominator is (s + 1) and as How many poles at s = a does a minimal realization of G(s) have? From (A.10),
expected G(s) has a pole at s = 1.  
1 1
det (G(s)) = det G (s) = det (G0 (s))
s+a 0
(4.59)
Example 4.7 Consider the square transfer function matrix
 
(s + a)m
G(s) = 1 s 1 s
1:25(s + 1)(s + 2) 6 s 2 (4.50) so if G0 has no zeros at s = a, then G(s) has m poles at s = a. However, G 0
may have zeros at s = a. As an example, consider a 2  2 plant in the form given by
The minors of order 1 are the four elements all have (s + 1)(s + 2) in the denominator. The
(4.58). It may have two poles at s = a (as for G(s) in (3.81)), one pole at s = a
minor of order 2 is the determinant
(as in (4.50) where det G 0 (s) has a zero at s = a) or no pole at s = a (if all the
(s 1)(s 2) + 6s 1 elements of G0 (s) have a zero at s = a).
det G(s) = =
1:252 (s + 1)2 (s + 2)2 1:252 (s + 1)(s + 2)
(4.51)
As noted above, the poles are obtained numerically by computing the eigenvalues
Note the pole-zero cancellation when evaluating the determinant. The least common of the A-matrix. Thus, to compute the poles of a transfer function G(s), we must first
denominator of all the minors is then obtain a state-space realization of the system. Preferably this should be a minimal
realization. For example, if we make individual realizations of the five non-zero
(s) = (s + 1)(s + 2) (4.52) elements in Example 4.8 and then simply combine them to get an overall state space
so a minimal realization of the system has two poles: one at s = 1 and one at s = 2. realization, we will get a system with 15 states, where each of the three poles (in
the common denominator) are repeated five times. A model reduction to obtain a
Example 4.8 Consider the 2  3 system, with 3 inputs and 2 outputs, minimal realization will subsequently yield a system with four poles as given in

G(s) = 1 (s 1)(s + 2) 0 (s 1)2  (4.57).
(s + 1)(s + 2)(s 1) (s + 1)(s + 2) (s 1)(s + 1) (s 1)(s + 1) (4.53)

The minors of order 1 are the five non-zero elements (e.g. M22;3
= g11 (s)): 4.4.4 Pole vectors and directions
1
; s 1 ; 1 ; 1 ; 1 (4.54)
In multivariable system poles have directions associated with them. To quantify this
s + 1 (s + 1)(s + 2) s 1 s + 2 s + 2 we use the input and output pole vectors introduced in (4.39) and (4.40):
The minor of order 2 corresponding to the deletion of column 2 is
ypi = Cti ; upi = B H qi (4.60)
2
M2 = (s 1)(s + 2)(s 1)(s + 1) + (s + 1)(2 s + 2)(s 1) = 2 (4.55)
((s + 1)(s + 2)(s 1)) (s + 1)(s + 2) The pole directions are the directions of the pole vectors and have unit length.
Specifically, kyp1 k2 ypi where ypi is computed from (4.60) is the i’th output pole
The other two minors of order two are i
direction.
(s 1) 1
M1 = ; M3 = The pole directions may also be defined in terms of the transfer function matrix
(s + 1)(s + 2)2
(4.56)
(s + 1)(s + 2) by evaluating G(s) at the pole p i and considering the directions of the resulting
By considering all minors we find their least common denominator to be complex matrix G(p i ). The matrix is infinite in the direction of the pole, and we may
somewhat crudely write
(s) = (s + 1)(s + 2)2 (s 1) (4.57) G(pi )upi = 1  ypi (4.61)
The system therefore has four poles: one at s = 1, one at s = 1 and two at s = 2. where upi is the input pole direction, and y pi is the output pole direction. The pole
From the above examples we see that the MIMO-poles are essentially the poles of the directions may in principle be obtained from an SVD of G(p i ) = U V H . Then upi
elements. However, by looking at only the elements it is not possible to determine the is the first column in V (corresponding to the infinite singular value), and y pi the first
multiplicity of the poles. For instance, let G 0 (s) be a square m  m transfer function column in U .
matrix with no pole at s = a, and consider
Remark 1 As already mentioned, if up = B H q = 0 then the corresponding pole is not state
1 controllable, and if yp = Ct = 0 the corresponding pole is not state observable (see also
G(s) = G (s)
s+a 0
(4.58) Zhou et al. (1996, p.52)).
132 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 133

Remark 2 The pole vectors provide a very useful tool for selecting inputs and outputs for This is solved as a generalized eigenvalue problem – in the conventional eigenvalue problem
stabilization. For a single unstable mode, selecting the input corresponding to the largest we have Ig = I . Note that we usually get additional zeros if the realization is not minimal.
element in up and the output corresponding to the largest element in yp , minimizes the input
usage required for stabilization. More precisely, this choice minimizes the lower bound on
H H
both the 2 and 1 -norms of the transfer function KS from measurement (output) noise to 4.5.2 Zeros from transfer functions
input (Havre, 1998)(Havre and Skogestad, 1998b).
The following theorem from MacFarlane and Karcanias (1976) is useful for hand calculating
the zeros of a transfer function matrix G(s).

4.5 Zeros Theorem 4.3 The zero polynomial z (s), corresponding to a minimal realization of the system,
is the greatest common divisor of all the numerators of all order-r minors of G(s), where r is
Zeros of a system arise when competing effects, internal to the system, are such that the output the normal rank of G(s), provided that these minors have been adjusted in such a way as to
is zero even when the inputs (and the states) are not themselves identically zero. For a SISO have the pole polynomial (s) as their denominators.
system the zeros zi are the solutions to G(zi ) = 0. In general, it can be argued that zeros
are values of s at which G(s) loses rank (from rank 1 to rank 0 for a SISO system). This
is the basis for the following definition of zeros for a multivariable system (MacFarlane and
Example 4.9 Consider the 2  2 transfer function matrix
 
G(s) = 1 s4:51 2(s 4 1)
Karcanias, 1976).
(4.65)
s+2
Definition 4.7 Zeros. zi is a zero of G(s) if the rank
Q of G(zi ) is less than the normal rank
of G(s). The zero polynomial is defined as z (s) = n z
i=1 (s zi ) where nz is the number of
The normal rank of G(s) is 2, and the minor of order 2 is the determinant, det G(s) =
finite zeros of G(s). 2(s 1)2 2 18 = 2 s 4 . From Theorem 4.2, the pole polynomial is (s) = s + 2 and therefore
(s+2) s +2
the zero polynomial is z (s) = s 4. Thus, G(s) has a single RHP-zero at s = 4.
In this book we do not consider zeros at infinity; we require that zi is finite. The normal rank of
G(s) is defined as the rank of G(s) at all values of s except at a finite number of singularities This illustrates that in general multivariable zeros have no relationship with the zeros of the
(which are the zeros).
transfer function elements. This is also shown by the following example where the system has
This definition of zeros is based on the transfer function matrix, corresponding to a minimal no zeros.
realization of a system. These zeros are sometimes called “transmission zeros”, but we will
simply call them “zeros”. We may sometimes use the term “multivariable zeros” to distinguish 
Example 4.7 continued. Consider again the 2 2 system in (4.50) where det G(s) in (4.51)
them from the zeros of the elements of the transfer function matrix. already has (s) as its denominator. Thus the zero polynomial is given by the numerator of
(4.51), which is 1, and we find that the system has no multivariable zeros.
The next two examples consider non-square systems.
4.5.1 Zeros from state-space realizations
Zeros are usually computed from a state-space description of the system. First note that the Example 4.10 Consider the 1  2 system
 
G(s) = ss + 11 ss + 22
state-space equations of a system may be written as
     
P (s) ux = y0 ; P (s) = sI C A DB
(4.66)
(4.62)
The normal rank of G(s) is 1, and since there is no value of s for which both elements become
The zeros are then the values s = z for which the polynomial system matrix, P (s), loses zero, G(s) has no zeros.
rank, resulting in zero output for some non-zero input. Numerically, the zeros are found as
6 6
non-trivial solutions (with uz = 0 and xz = 0) to the following problem In general, non-square systems are less likely to have zeros than square systems. For instance,
  
for a square 2 2 system to have a zero, there must be a value of s for which the two columns
(zIg M ) uxz = 0 z
(4.63) 
in G(s) are linearly dependent. On the other hand, for a 2 3 system to have a zero, we need
    all three columns in G(s) to be linearly dependent.
M = CA D
B ; I = I 0
g 0 0 (4.64) The following is an example of a non-square system which does have a zero.
134 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 135


Example 4.8 continued. Consider again the 2 3 system in (4.53), and adjust the minors of The zero input and output
 directions
 are associated
 with the zero singular value of G(z ) and
order 2 in (4.55) and (4.56) so that their denominators are (s) = (s + 1)(s + 2)2 (s 1). we get uz = 0:80 and yz = 0:83 . We see from yz that the zero has a slightly larger
We get 0:60 0:55
component in the first output. Next, to determine the pole directions consider
2
M1 (s) = (s 1) ; M2 (s) = 2(s 1)(s + 2) ; M3 (s) = (s 1)(s + 2) (4.67) G(p + ) = G( 2 + ) = 12

3+ 4 
(s) (s) (s)  4:5 2( 3 + ) (4.70)
The common factor for these minors is the zero polynomial z (s) = (s 1). Thus, the system The SVD as  ! 0 yields
has a single RHP-zero located at s = 1.
1  :55 0:83  9:01 0  0:6 0:8 H
We also see from the last example that a minimal realization of a MIMO system can have G( 2 + ) = 2 00:83 0:55 0 0 0:8 0 :6
poles and zeros at the same value of s, provided their directions are different.

The pole input and outputdirections
 are associated
  the largest singular value, 1 =
with
9:01=2 , and we get up = 0:60 and yp = 0:55 . We note from yp that the pole has a
0:80 0:83
4.5.3 Zero directions slightly larger component in the second output.
In the following let s be a fixed complex scalar and consider G(s) as a complex matrix. For
example, given a state-space realization, we can evaluate G(s) = C (sI A) 1 B + D. Let
Remark. It is important to note that although the locations of the poles and zeros are
G(s) have a zero at s = z . Then G(s) loses rank at s = z , and there will exist non-zero independent of input and output scalings, their directions are not. Thus, the inputs and outputs
vectors uz and yz such that
need to be scaled properly before making any interpretations based on pole and zero directions.

G(z )uz = 0 yz (4.68)
Here uz is defined as the input zero direction, and yz is defined as the output zero direction.
We usually normalize the direction vectors to have unit length,
4.6 Some remarks on poles and zeros
uH H
z uz = 1; yz yz = 1
From a practical point of view, the output zero direction, yz , is usually of more interest than
1. The zeros resulting from a minimal realization are sometimes called the transmission
uz , because yz gives information about which output (or combination of outputs) may be zeros. If one does not have a minimal realization, then numerical computations (e.g. using
MATLAB) may yield additional invariant zeros. These invariant zeros plus the transmission
difficult to control.
zeros are sometimes called the system zeros. The invariant zeros can be further subdivided
Remark. Taking the Hermitian (conjugate transpose) of (4.68) yields uH H
z G (z ) = 0 yz .
H  into input and output decoupling zeros. These cancel poles associated with uncontrollable
Premultiplying by uz and postmuliplying by yz noting that uH H or unobservable states and hence have limited practical significance. We recommend that a
z uz = 1 and yz yz = 1 yields

GH yz = 0 uz , or minimal realization is found before computing the zeros.
yzH G(z ) = 0 uHz (4.69)
2. Rosenbrock (1966; 1970) first defined multivariable zeros using something similar to the
Smith-McMillan form. Poles and zeros are defined in terms of the McMillan form in Zhou
In principle, we may obtain uz and yz from an SVD of G(z ) = U V H ; and we have that
et al. (1996).
3. The presence of zeros implies blocking of certain input signals (MacFarlane and Karcanias,
uz is the last column in V (corresponding to the zero singular value of G(z )) and yz is the 1976). If z is a zero of G(s), then there exists an input signal of the form uz ezt 1+ (t), where
last column of U . An example was given earlier in (3.64). A better approach numerically, is to uz is a (complex) vector and 1+ (t) is a unit step, and a set of initial conditions (states) xz ,
obtain uz from a state-space description using the generalized eigenvalue problem in (4.63). such that y (t) = 0 for t > 0.
Similarly, yz may be obtained from the transposed state-space description, see (4.69), using 4. For square systems we essentially have that the poles and zeros of G(s) are the poles and
M T in (4.63). zeros of det G(s). However, this crude definition may fail in a few cases. For instance,


when there is a zero and pole in different parts of the system which happen to cancel when
Example 4.11 Zero and pole directions. Consider the 2 2 plant in (4.65), which has a forming det G(s). For example, the system
RHP-zero at z = 4 and a LHP-pole at p = 2. We will use an SVD of G(z ) and G(p)  
to determine the zero and pole directions (but we stress that this is not a reliable method G(s) = (s + 2)=0(s + 1) (s + 1)=0(s + 2) (4.71)
numerically). To find the zero direction consider
     H has det G(s) = 1, although the system obviously has poles at 1 2
G(z ) = G(4) = 1 43:5 4 = 1 0:55 0:83 9:01 0 0:6 0:8 and and
6 6 6 0:83 0:55 0 0 0:8 0:6 (multivariable) zeros at 1 and 2.
136 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 137

5. G(s) in (4.71) provides a good example for illustrating the importance of directions when 12. Pinned zeros. A zero is pinned to a subset of the outputs if yz has one or more elements
discussing poles and zeros of multivariable systems. We note that although the system has equal to zero. In most cases, pinned zeros have a scalar origin. Pinned zeros are quite
poles and zeros at the same locations (at 1 and 2), their directions are different and common in practice, and their effect cannot be moved freely to any output. For example,
so they do not cancel or otherwise interact with each other. In (4.71) the pole at 1 has the effect of a measurement delay for output y1 cannot be moved to output y2 . Similarly, a
directions up = yp = [1 0 ]T , whereas the zero at 1 has directions uz = yz = [0 1 ]T . zero is pinned to certain inputs if uz has one or more elements equal to zero. An example
6. For square systems with a non-singular D-matrix, the number of poles is the same as the is G(s) in (4.71), where the zero at 2 is pinned to input u1 and to output y1 .
number of zeros, and the zeros of G(s) are equal to the poles G 1 (s), and vice versa. 13. Zeros of non-square systems. The existence of zeros for non-square systems is common
Furthermore, if the inverse of G(p) exists then it follows from the SVD that in practice in spite of what is sometimes claimed in the literature. In particular, they
appear if we have a zero pinned to the side of the plant with the fewest number of
G 1 (p)yp = 0  up (4.72) channels.
 As an example consider a plant with three inputs and two outputs G1 (s) =
h11 h12 h13
7. There are no zeros if the outputs contain direct information about all the states; that is, if h21 (s z ) h22 (s z ) h23 (s z ) which has a zero at s = z which is pinned to output
from y we can directly obtain x (e.g. C = I and D = 0); see Example 4.13. This probably y2 , i.e. yz = [ 0 1 ]T . This follows because the second row of G1 (z ) is equal to zero, so
explains why zeros were given very little attention in the optimal control theory of the the rank of G1 (z ) is 1,
 which is less than the normal rank of G1 (s), which is 2. On the
1960’s which was based on state feedback. other hand, G2 (s) = hh11 (s z) h12 h13 does not have a zero at s = z since G2 (z )
8. Zeros usually appear when there are fewer inputs or outputs than states, or when D = 0. 6 21 (s z) h22 h23
Consider a square m m plant G(s) = C (sI A) 1 B + D with n states. We then have
 has rank 2 which is equal to the normal rank of G2 (s) (assuming that the last two columns
for the number of (finite) zeros of G(s) (Maciejowski, 1989, p.55) of G2 (s) have rank 2).
14. The concept of functional controllability, see page 218, is related to zeros. Loosely
D 6= 0 : At most n m + rank(D) zeros speaking, one can say that a system which is functionally uncontrollable has in a certain
D=0: At most n 2m + rank(CB ) zeros (4.73) output direction “a zero for all values of s”.
D = 0 and rank(CB ) = m : Exactly n m zeros
The control implications of RHP-zeros and RHP-poles are discussed for SISO systems on
9. Moving poles. How are the poles affected by (a) feedback (G(I + KG) 1 ), (b) series pages 173-187 and for MIMO systems on pages 220-223.
compensation (GK , feedforward control) and (c) parallel compensation (G + K )? The
answer is that (a) feedback control moves the poles (e.g. G = s+1 a ; K = 2a moves the Example 4.12 Effect of feedback on poles and zeros. Consider a SISO negative feedback
pole from a to +a), (b) series compensation cannot move the poles, but we may cancel system with plant G(s) = z (s)=(s) and a constant gain controller, K (s) = k. The closed-
poles in G by placing zeros in K (e.g. G = s+1 a ; K = ss+
+a ), and (c) parallel compensation
k loop response from reference r to output y is
cannot move the poles, but we may cancel their effect by subtracting identical poles in K
(e.g. G = s+1 a ; K = s+1 a ). T (s) = L(s) = kG(s) = kz (s) = k zcl (s) (4.74)
10. For a strictly proper plant G(s) = C (sI A) 1 B , the open-loop poles are determined
1 + L(s) 1 + kG(s) (s) + kz (s) cl (s)
by the characteristic polynomial ol (s) = det(sI A). If we apply constant gain Note the following:
negative feedback u = K0 y , the poles are determined by the corresponding closed-loop
characteristic polynomial cl (s) = det(sI A + BK0 C ). Thus, unstable plants may be 1. The zero polynomial is zcl (s) = z (s), so the zero locations are unchanged by feedback.
stabilized by use of feedback control. See also Example 4.12. 2. The pole locations are changed by feedback. For example,

k!0 ) cl (s) ! (s)


11. Moving zeros. Consider next the effect of feedback, series and parallel compensation on
the zeros. (a) With feedback, the zeros of G(I + KG) 1 are the zeros of G plus the poles (4.75)
of K . This means that the zeros in G, including their output directions yz , are unaffected k ! 1 ) cl (s) ! kz (s) (4.76)
by feedback. However, even though yz is fixed it is still possible with feedback control to
move the deteriorating effect of a RHP-zero to a given output channel, provided yz has a That is, as we increase the feedback gain, the closed-loop poles move from open-loop poles
non-zero element for this output. This was illustrated by the example in Section 3.5, and is to the open-loop zeros. RHP-zeros therefore imply high gain instability. These results are
discussed in more detail in Section 6.5.1. well known from a classical root locus analysis.
(b) Series compensation can counter the effect of zeros in G by placing poles in K to cancel
them, but cancellations are not possible for RHP-zeros due to internal stability (see Section Example 4.13 We want to prove that G(s) = C (sI A) 1 B + D has no zeros if D = 0
4.7). and rank (C ) = n, where n is the number of states. Solution: Consider the polynomial system
(c) The only way to move zeros is by parallel compensation, y = (G + K )u, which, if y is matrix P (s) in (4.62). The first n columns of P are independent because C has rank n.
a physical output, can only be accomplished by adding an extra input (actuator). The last m columns are independent of s. Furthermore, the first n and last m columns are
138 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 139

independent of each other, since D = 0 and C has full column rank and thus cannot have any 4.7 Internal stability of feedback systems
columns equal to zero. In conclusion, P (s) always has rank n + m and there are no zeros.
(We need D = 0 because if D is non-zero then the first n columns of P may depend on the
To test for closed-loop stability of a feedback system, it is usually enough to check just one
last m columns for some value of s).
closed-loop transfer function, e.g. S = (I + GK ) 1 . However, this assumes that there are no
internal RHP pole-zero cancellations between the controller and the plant. The point is best
Exercise 4.3 (a) Consider a SISO system G(s) = C (sI A) 1 B + D with just one state, illustrated by an example.
i.e. A is a scalar. Find the zeros. Does G(s) have any zeros for D = 0? (b) Do GK and KG
have the same poles an zeros for a SISO system? For a MIMO system? Example 4.14 Consider the feedback system shown in Figure 4.2 where G(s) = ss+11 and
K (s) = ks ss+11 . In forming the loop transfer function L = GK we cancel the term (s 1), a
RHP pole-zero cancellation, to obtain
Exercise 4.4 Determine the poles and zeros of
2
11s3 18s2 70s 50 (s+2) 3 L = GK = k ; and S = (I + L) 1 = s (4.78)
s s+k
G(s) = 4 s(s+10)(s+1)(s
5(s+2)
5) (s+1)(s 5) 5
5(s+2)
(s+1)(s 5) (s+1)(s 5) S (s) is stable, that is, the transfer function from dy to y is stable. However, the transfer
function from dy to u is unstable:
given that
u = K (I + GK ) 1 dy = k(s + 1) d
4 3 2 50(s + 1)2 (s + 2)(s 5) (s 1)(s + k) y
(4.79)
det G(s) = 50(s s 2 15s 23s 210) =
s(s + 1) (s + 10)(s 5) s(s + 1)2 (s + 10)(s 5)2 Consequently, although the system appears to be stable when considering the output signal y ,
it is unstable when considering the “internal” signal u, so the system is (internally) unstable.
How many poles does G(s) have?

Exercise 4.5 Given y (s) = G(s)u(s), with G(s) = 11+ss , determine a state-space realization du dy
of G(s) and then find the zeros of G(s) using the generalized eigenvalue problem. What is the K G
transfer function from u(s) to x(s), the single state of G(s), and what are the zeros of this r -+ e - ks((ss+1)
1)
-+ e?+ u - ss+11 e+
-+ ? q y-
transfer function?
6-
Exercise 4.6 Find the zeros for a 2  2 plant with
   
A = aa11 a12 1 1
21 a22 ; B = b21 b22 ; C = I; D = 0
Figure 4.2: Internally unstable system
Exercise 4.7 For what values of c1 does the following plant have RHP-zeros?

A= 10 0 ; B = I; C =  10 c1 ; D =  0 0  Remark. In practice, it is not possible to cancel exactly a plant zero or pole because of
modelling errors. In the above example, therefore, L and S will in practice also be unstable.
0 1 10 0 0 1 (4.77)
However, it is important to stress that even in the ideal case with a perfect RHP pole-zero
cancellation, as in the above example, we would still get an internally unstable system. This is
Exercise 4.8 Consider the plant in (4.77), but assume that both states are measured and used a subtle but important point. In this ideal case the state-space descriptions of L and S contain
for feedback control, i.e. ym = x (but the controlled output is still y = Cx + Du). Can an unstable hidden mode corresponding to an unstabilizable or undetectable state.
a RHP-zero in G(s) give problems with stability in the feedback system? Can we achieve
“perfect” control of y in this case? (Answers: No and no).
From the above example, it is clear that to be rigorous we must consider internal stability of
the feedback system, see Definition 4.4. To this effect consider the system in Figure 4.3 where
140 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 141

y du
6 Exercise 4.9 Use (A.7) to show that the signal relationship (4.80) and (4.81) also may be

q - K -+ ?e+
written
u = M (s) du ; M (s) = I K 1
 
y
 
dy
 
G I (4.82)

From this we get that the system in Figure 4.3, is internally stable if and only if M (s) is stable.

e+ G  q 4.7.1 Implications of the internal stability requirement


+ 6
dy ?u The requirement of internal stability in a feedback system leads to a number of interesting
results, some of which are investigated below. Note in particular Exercise 4.12, where we
discuss alternative ways of implementing a two degrees-of-freedom controller.
Figure 4.3: Block diagram used to check internal stability of feedback system
We first prove the following statements which apply when the overall feedback system is
internally stable (Youla et al., 1974):
we inject and measure signals at both locations between the two components, G and K . We 1. If G(s) has a RHP-zero at z , then L = GK , T = GK (I + GK ) 1 , SG = (I + GK ) 1 G,
get LI = KG and TI = KG(I + KG) 1 will each have a RHP-zero at z .
u = (I + KG) 1 du K (I + GK ) 1 dy (4.80) 2. If G(s) has a RHP-pole at p, then L = GK and LI = KG also have a RHP-pole at p,
y = G(I + KG) 1 du + (I + GK ) 1 dy (4.81) while S = (I + GK ) 1 ; KS = K (I + GK ) 1 and SI = (I + KG) 1 have a RHP-zero
at p.
The theorem below follows immediately:
Proof of 1: To achieve internal stability, RHP pole-zero cancellations between system
Theorem 4.4 Assume that the components G and K contain no unstable hidden modes. Then components, such as G and K , are not allowed. Thus L = GK must have a RHP-zero when
the feedback system in Figure 4.3 is internally stable if and only if all four closed-loop transfer G has a RHP-zero. Now S is stable and thus has no RHP-pole which can cancel the RHP-zero
matrices in (4.80) and (4.81) are stable. in L, and so T = LS must have a RHP-zero at z . Similarly, SG = (I + GK ) 1 G must have
a RHP-zero, etc. 2
The following can be proved using the above theorem (recall Example 4.14): If there are RHP
Proof of 2: Clearly, L has a RHP-pole at p. Since T is stable, it follows from T = LS that S
pole-zero cancellations between G(s) and K (s), i.e. if GK and KG do not both contain all
the RHP-poles in G and K , then the system in Figure 4.3 is internally unstable.
must have a RHP-zero which exactly cancels the RHP-pole in L, etc. 2
If we disallow RHP pole-zero cancellations between system components, such as G and K , We notice from this that a RHP pole-zero cancellation between two transfer functions, such
then stability of one closed-loop transfer function implies stability of the others. This is stated as between L and S = (I + L) 1 , does not necessarily imply internal instability. It is only
in the following theorem. between separate physical components (e.g. controller, plant) that RHP pole-zero cancellations
are not allowed.
Theorem 4.5 Assume there are no RHP pole-zero cancellations between G(s) and K (s),
that is, all RHP-poles in G(s) and K (s) are contained in the minimal realizations of GK and Exercise 4.10 Interpolation constraints. Prove the following interpolation constraints
KG. Then the feedback system in Figure 4.3 is internally stable if and only if one of the four which apply for SISO feedback systems when the plant G(s) has a RHP-zero z or a RHP-
closed-loop transfer function matrices in (4.80) and (4.81) is stable. pole p:
G(z ) = 0 ) ,
L(z ) = 0 T (z ) = 0; S (z ) = 1 (4.83)
Proof: A proof is given by Zhou et al. (1996, p.125). 2 G 1 (p) = 0 ) L(p) = 1 , T (p) = 1; S (p) = 0 (4.84)

Exercise 4.11 Given the complementary sensitivity functions


Note how we define pole-zero cancellations in the above theorem. In this way, RHP pole-
zero cancellations resulting from G or K not having full normal rank are also disallowed. For T1 (s) = 2 2s + 1 T (s) = 2 2s + 1
example, with G(s) = 1=(s a) and K = 0 we get GK = 0 so the RHP-pole at s = a s + 0:8s + 1 2 s + 0:8s + 1
has disappeared and there is effectively a RHP pole-zero cancellation. In this case, we get what can you say about possible RHP-poles or RHP-zeros in the corresponding loop transfer
S (s) = 1 which is stable, but internal stability is clearly not possible. functions, L1 (s) and L2 (s)?
142 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 143

Remark. A discussion of the significance of these interpolation constraints is relevant. Recall 2) Explain why the configuration in Figure 4.4(c) should not be used if Ky contains RHP-
that for “perfect control” we want S  0 and T  1. We note from (4.83) that a RHP- poles. This implies that this configuration should not be used if we want integral action in Ky
zero z puts constraints on S and T which are incompatible with perfect control. On the other (Hint: Avoid a RHP-zero between r and y ).
hand, the constraints imposed by the RHP-pole are consistent with what we would like for
3) Show that for a feedback controller Ky the configuration in Figure 4.4(d) may be used,
perfect control. Thus the presence of RHP-poles mainly impose problems when tight (high
provided the RHP-poles (including integrators) of Ky are contained in K1 and the RHP-zeros
gain) control is not possible. We discuss this in more detail in Chapters 5 and 6.
in K2 . Discuss why one may often set Kr = I in this case (to give a fourth possibility).
The following exercise demonstrates another application of the internal stability requirement.
The requirement of internal stability also dictates that we must exercise care when we use
r - u- r - -+ e- - u-
a separate unstable disturbance model Gd (s). To avoid this problem one should for state-
- K Kr
6
Ky space computations use a combined model for inputs and disturbances, i.e. write the model
y = Gu + Gd d in the form  
ym ym y = [ G Gd ] ud
(a) (b) where G and Gd share the same states, see (4.14) and (4.17).

r- Kr -+ e- u- r - Kr -+ e- - K1 u-
6 6 4.8 Stabilizing controllers
Ky K2 In this section, we introduce a parameterization, known as the Q-parameterization or Youla-
6 6 parameterization (Youla et al., 1976) of all stabilizing controllers for a plant. By all stabilizing
ym ym controllers we mean all controllers that yield internal stability of the closed-loop system. We
first consider stable plants, for which the parameterization is easily derived, and then unstable
(c) (d) plants where we make use of the coprime factorization.

Figure 4.4: Different forms of two degrees-of-freedom controller


(a) General form 4.8.1 Stable plants
(b) Suitable when Ky (s) has no RHP-zeros
(c) Suitable when Ky (s) is stable (no RHP-poles)
(d) Suitable when Ky (s) = K1 (s)K2 (s) where K1 (s) contains no The following lemma forms the basis.
RHP-zeros and K2 (s) no RHP poles
Lemma 4.6 For a stable plant G(s) the negative feedback system in Figure 4.3 is internally
stable if and only if Q = K (I + GK ) 1 is stable.
Exercise 4.12 Internal stability of two degrees-of-freedom control configurations. A two
degrees-of-freedom controller allows one to improve performance by treating disturbance
rejection and command tracking separately (at least to some degree). The general form shown Proof: The four transfer functions in (4.80) and (4.81) are easily shown to be

K (I + GK ) 1 = Q
in Figure 4.4(a) is usually preferred both for implementation and design. However, in some
cases one may want to first design the pure feedback part of the controller, here denoted Ky (s), (4.85)
for disturbance rejection, and then to add a simple precompensator, Kr (s), for command
tracking. This approach is in general not optimal, and may also yield problems when it comes (I + GK ) 1 = I GQ (4.86)
to implementation, in particular, if the feedback controller Ky (s) contains RHP poles or zeros, 1
(I + KG) = I QG (4.87)
which can happen. This implementation issue is dealt with in this exercise by considering the
1
G(I + KG) = G(I QG)
three possible schemes in Figure 4.4(b)–4.4(d). In all these schemes Kr must clearly be stable. (4.88)
1) Explain why the configuration in Figure 4.4(b) should not be used if Ky contains RHP-zeros which are clearly all stable if G and Q are stable. Thus, with G stable the system is internally
(Hint: Avoid a RHP-zero between r and y ). stable if and only if Q is stable. 2
144 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 145

As proposed by Zames (1981), by solving (4.85) with respect to the controller K , we find that 4.8.2 Unstable plants
a parameterization of all stabilizing negative feedback controllers for the stable plant G(s) is
given by For an unstable plant G(s), consider its left coprime factorization
K = (I QG) 1 Q = Q(I GQ) 1
G(s) = Ml 1 Nl
(4.89)
(4.90)
where the “parameter” Q is any stable transfer function matrix.
A parameterization of all stabilizing negative feedback controllers for the plant G(s) is then
Remark 1 If only proper controllers are allowed then Q must be proper since the term
(I QG) 1 is semi-proper.
(Vidyasagar, 1985)
K (s) = (Vr QNl ) 1 (Ur + QMl ) (4.91)
Remark 2 We have shown that by varying Q freely (but stably) we will always have internal where Vr and Ur satisfy the Bezout identity (4.19) for the right coprime factorization,
stability, and thus avoid internal RHP pole-zero cancellations between K and G. This means and Q(s) is any stable transfer function satisfying the technical condition det(Vr ( ) 1
that although Q may generate unstable controllers K , there is no danger of getting a RHP-pole 1 1 6
Q( )Nl ( )) = 0.
in K that cancels a RHP-zero in G.
Remark 1 With Q = 0 we have K0 = Vr 1 Ur , so Vr and Ur can alternatively be obtained
The parameterization in (4.89) is identical to the internal model control (IMC) from a left coprime factorization of some initial stabilizing controller K0 .
parameterization (Morari and Zafiriou, 1989) of stabilizing controllers. It may be derived
directly from the IMC structure given in Figure 4.5. The idea behind the IMC-structure is Remark 2 For a stable plant, we may write G(s) = Nl (s) corresponding to Ml = I . In this
that the “controller” Q can be designed in an open-loop fashion since the feedback signal only case K0 = 0 is a stabilizing controller, so we may from (4.19) select Ur = 0 and Vr = I , and
contains information about the difference between the actual output and the output predicted (4.91) yields K = (I QG) 1 Q as found before in (4.89).
from the model. Remark 3 We can also formulate the parameterization of all stabilizing controllers in state-
space form, e.g. see page 312 in Zhou et al. (1996) for details.

K dy
The Q-parameterization may be very useful for controller synthesis. First, the search over all
plant stabilizing K ’s (e.g. S = (I + GK ) 1 must be stable) is replaced by a search over stable
r -+ e - Q q - G e
-+ ?+
q -y Q’s. Second, all closed-loop transfer functions (S , T , etc.) will be in the form H1 + H2 QH3 ,
6- so they are affine3 in Q. This further simplifies the optimization problem.

- G -- ?e+
4.9 Stability analysis in the frequency domain
model
As noted above the stability of a linear system is equivalent to the system having no poles
in the closed right-half plane (RHP). This test may be used for any system, be it open-
loop or closed-loop. In this section we will study the use of frequency-domain techniques
Figure 4.5: The internal model control (IMC) structure to derive information about closed-loop stability from the open-loop transfer matrix L(j! ).
This provides a direct generalization of Nyquist’s stability test for SISO systems.
Note that when we talk about eigenvalues in this section, we refer to the eigenvalues of a
Exercise 4.13 Show that the IMC-structure in Figure 4.5 is internally unstable if either Q or complex matrix, usually of L(j! ) = GK (j! ), and not those of the state matrix A.
G is unstable.

Exercise 4.14 Show that testing internal stability of the IMC-structure is equivalent to testing 4.9.1 Open and closed-loop characteristic polynomials
for stability of the four closed-loop transfer functions in (4.85)-(4.88).
We first derive some preliminary results involving the determinant of the return difference
operator I + L. Consider the feedback system shown in Figure 4.6, where L(s) is the loop
Exercise 4.15 Given a stable controller K . What set of plants can be stabilized by this
controller? (Hint: interchange the roles of plant and controller.) 3 A function f (x) is affine in x if f (x) = ax + b, and is linear in x if f (x) = ax.
146 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 147
r -+ e- - L q -y Example 4.15 We will rederive expression (4.99) for SISO systems. Let L(s) = k zol(s()s) The
6 sensitivity function is given by

S (s) = 1
=
ol (s) (4.100)
1 + L(s) kz (s) + ol (s)
and the denominator is
Figure 4.6: Negative feedback system
d(s) = kz (s) + ol (s) = ol (s)(1 + kz (s) ) = ol (s)(1 + L(s)) (4.101)
ol (s)
system is determined by the poles of L(s).
transfer function matrix. Stability of the open-loop 
which is the same as cl (s) in (4.99) (except for the constant c which is necessary to make the
If L(s) has a state-space realization
Aol Bol , that is
leading coefficient of cl (s) equal to 1, as required by its definition).
Col Dol
L(s) = Col (sI Aol ) 1 Bol + Dol (4.92) Remark 1 One may be surprised to see from (4.100) that the zero polynomial of S (s) is
equal to the open-loop pole polynomial, ol (s), but this is indeed correct. On the other hand,
then the poles of L(s) are the roots of the open-loop characteristic polynomial note from (4.74) that the zero polynomial of T (s) = L(s)=(1 + L(s)) is equal to z (s), the
ol (s) = det(sI Aol ) (4.93) open-loop zero polynomial.
Remark 2 From (4.99), for the case when there are no cancellations between ol (s) and
Assume there are no RHP pole-zero cancellations between G(s) and K (s). Then from
Theorem 4.5 internal stability of the closed-loop system is equivalent to the stability of
cl (s), we have that the closed-loop poles are solutions to
S (s) = (I + L(s)) 1 . The state matrix of S (s) is given (assuming L(s) is well-posed, det(I + L(s)) = 0 (4.102)
i.e. Dol + I is invertible) by
Acl = Aol Bol (I + Dol ) 1 Col (4.94)
4.9.2 MIMO Nyquist stability criteria
This equation may be derived by writing down the state-space equations for the transfer
function from r to y in Figure 4.6 We will consider the negative feedback system of Figure 4.6, and assume there are no internal
x_ = Aol x + Bol (r y ) (4.95) RHP pole-zero cancellations in the loop transfer function matrix L(s), i.e. L(s) contains no
unstable hidden modes. Expression (4.99) for det(I + L(s)) then enables a straightforward
y = Col x + Dol (r y ) (4.96) generalization of Nyquist’s stability condition to multivariable systems.
and using (4.96) to eliminate y from (4.95). The closed-loop characteristic polynomial is thus
given by Theorem 4.7 Generalized (MIMO) Nyquist theorem. Let Pol denote the number of open-
cl (s) , det(sI Acl ) = det(sI Aol + Bol (I + Dol ) 1 Col ) (4.97) loop unstable poles in L(s). The closed-loop system with loop transfer function L(s) and
negative feedback is stable if and only if the Nyquist plot of det(I + L(s))
i) makes Pol anti-clockwise encirclements of the origin, and
Relationship between characteristic polynomials ii) does not pass through the origin.
The above identities may be used to express the determinant of the return difference operator, The theorem is proved below, but let us first make some important remarks.
I + L, in terms of cl (s) and ol (s). From (4.92) we get
Remark 1 By “Nyquist plot of det(I + L(s))” we mean “the image of det(I + L(s))
det(I + L(s)) = det(I + Col (sI Aol ) 1 Bol + Dol ) (4.98) as s goes clockwise around the Nyquist D-contour”. The Nyquist D-contour includes the
Schur’s formula (A.14) then yields (with A11 = I + Dol ; A12 = Col ; A22 = sI entire j! -axis (s = j! ) and an infinite semi-circle into the right-half plane as illustrated in
Aol ; A21 = Bol ) Figure 4.7. The D-contour must also avoid locations where L(s) has j! -axis poles by making
 (s)
det(I + L(s)) = cl  c (4.99)
small indentations (semi-circles) around these points.
ol (s) Remark 2 In the following we define for practical reasons unstable poles or RHP-poles as
where c = det(I + Dol ) is a constant which is of no significance when evaluating the poles in the open RHP, excluding the j! -axis. In this case the Nyquist D-contour should make
poles. Note that cl (s) and ol (s) are polynomials in s which have zeros only, whereas a small semicircular indentation into the RHP at locations where L(s) has j! -axis poles,
det(I + L(s)) is a transfer function with both poles and zeros. thereby avoiding the extra count of encirclements due to j! -axis poles.
148 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 149
Im Im

0 1

Re ! = 1
−1 −0.5 0.5 1 Re

−1

−2

Figure 4.7: Nyquist D-contour for system with no open-loop j! -axis poles
−3

Remark 3 Another practical way of avoiding the indentation is to shift all j! -axis poles into
the LHP, for example, by replacing the integrator 1=s by 1=(s + ) where  is a small positive Figure 4.8: Typical Nyquist plot of 1 + det L(j! )
number.
Remark 4 We see that for stability det(I + L(j! )) should make no encirclements of the
Lemma 4.8 Argument Principle. Consider a (transfer) function f (s) and let C denote a
origin if L(s) is open-loop stable, and should make Pol anti-clockwise encirclements if L(s)
closed contour in the complex plane. Assume that:
is unstable. If this condition is not satisfied then the number of closed-loop unstable poles of
(I + L(s)) 1 is Pcl = + Pol , where is the number of clockwise encirclements of the
N N 1. f (s) is analytic along C , that is, f (s) has no poles on C .
origin by the Nyquist plot of det(I + L(j! )). 2. f (s) has Z zeros inside C .
Remark 5 For any real system, L(s) is proper and so to plot det(I + L(s)) as s traverses 3. f (s) has P poles inside C .
the D-contour we need only consider s = j! along the imaginary axis. This follows since
1
lims!1 L(s) = Dol is finite, and therefore for s = the Nyquist plot of det(I + L(s)) Then the image f (s) as the complex argument s traverses the contour C once in a clockwise
converges to det(I + Dol ) which is on the real axis. direction will make Z P clockwise encirclements of the origin.
Remark 6 In many cases L(s) contains integrators so for ! = 0 the plot of det(I + L(j! ))
1
may “start” from j . A typical plot for positive frequencies is shown in Figure 4.8 for the Let N (A; f (s); C ) denote the number of clockwise encirclements of the point A by the image
system f (s) as s traverses the contour C clockwise. Then a restatement of Lemma 4.8 is
3( 2s + 1) ; K = 1:14 12:7s + 1
L = GK; G =
(5s + 1)(10s + 1) 12:7s
(4.103) N (0; f (s); C ) = Z P (4.104)
Note that the solid and dashed curves (positive and negative frequencies) need to be connected We now recall (4.99) and apply Lemma 4.8 to the function f (s) = det(I + L(s)) = cl ((ss)) c
as ! approaches 0, so there is also a large (infinite) semi-circle (not shown) corresponding ol
to the indentation of the D-contour into the RHP at s = 0 (the indentation is to avoid the
6
selecting C to be the Nyquist D-contour. We assume c = det(I + Dol ) = 0 since otherwise
the feedback system would be ill-posed. The contour D goes along the j! -axis and around
integrator in L(s)). To find which way the large semi-circle goes, one can use the rule (based
the entire RHP, but avoids open-loop poles of L(s) on the j! -axis (where ol (j! ) = 0) by
on conformal mapping arguments) that a right-angled turn in the D-contour will result in a
making small semi-circles into the RHP. This is needed to make f (s) analytic along D. We
right-angled turn in the Nyquist plot. It then follows for the example in (4.103) that there will
then have that f (s) has P = Pol poles and Z = Pcl zeros inside D. Here Pcl denotes the
be an infinite semi-circle into the RHP. There are therefore no encirclements of the origin.
number of unstable closed-loop poles (in the open RHP). (4.104) then gives
Since there are no open-loop unstable poles (j! -axis poles are excluded in the counting),
Pol = 0, and we conclude that the closed-loop system is stable. N (0; det(I + L(s)); D) = Pcl Pol (4.105)

Proof of Theorem 4.7: The proof makes use of the following result from complex variable Since the system is stable if and only if Pcl = 0, condition i) of Theorem 4.7 follows. However,
theory (Churchill et al., 1974): we have not yet considered the possibility that f (s) = det(I + L(s)), and hence cl (s) has
150 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 151

zeros on the D-contour itself, which will also correspond to a closed-loop unstable pole. To This is easily seen by geometric arguments since det(I + L(j!0 )) = 1 for  = 0. (4.108) is
avoid this, det(I + L(j! )) must not be zero for any value of ! and condition ii) in Theorem equivalent to (see eigenvalue properties in Appendix A.2.1)
4.7 follows. 2 Y
i (I + L(j! 0 )) = 0 (4.109)
i
, 1 + i (L(j! 0 )) = 0 for some i
Example 4.16 SISO stability conditions. Consider an open-loop stable SISO system. In this
(4.110)
case, the Nyquist stability condition states that for closed-loop stability the Nyquist plot of
1 + L(s) should not encircle the origin. This is equivalent to the Nyquist plot of L(j! ) not , i (L(j! 0 )) = 1 for some i (4.111)
encircling the point 1 in the complex plane 
) ji (L(j!0 ))j  1 for some i (4.112)
, (L(j! 0 ))  1 (4.113)
4.9.3 Eigenvalue loci 2
The eigenvalue loci (sometimes called characteristic loci) are defined as the eigenvalues of
the frequency response of the open-loop transfer function, i (L(j! )). They partly provide a Theorem 4.9 is quite intuitive, as it simply says that if the system gain is less than 1 in
generalization of the Nyquist plot of L(j! ) from SISO to MIMO systems, and with them gain 8
all directions (all eigenvalues) and for all frequencies ( ! ), then all signal deviations will
and phase margins can be defined as in the classical sense. However, these margins are not eventually die out, and the system is stable.
too useful as they only indicate stability with respect to a simultaneous parameter change in In general, the spectral radius theorem is conservative because phase information is not
all of the loops. Therefore, although characteristic loci were well researched in the 70’s and j j
considered. For SISO systems (L(j! )) = L(j! ) , and consequently the above stability
greatly influenced the British developments in multivariable control, e.g. see Postlethwaite and j j
condition requires that L(j! ) < 1 for all frequencies. This is clearly conservative, since
MacFarlane (1979), they will not be considered further in this book. j j
from the Nyquist stability condition for a stable L(s), we need only require L(j! ) < 1 at
frequencies where the phase of L(j! ) is 180Æ n 360Æ . As an example, let L = k=(s + ).
 
Since the phase never reaches 180Æ the system is closed-loop stable for any value of k > 0.
4.9.4 Small gain theorem 
However, to satisfy (4.107) we need k , which for a small value of  is very conservative
indeed.
The Small Gain Theorem is a very general result which we will find useful in the book. We
present first a generalized version of it in terms of the spectral radius, (L(j! )), which at each Remark. Later we will consider cases where the phase of L is allowed to vary freely, and in
frequency is defined as the maximum eigenvalue magnitude which case Theorem 4.9 is not conservative. Actually, a clever use of the above theorem is the

(L(j! )) , max ji (L(j!))j


main idea behind most of the conditions for robust stability and robust performance presented
(4.106)
i later in this book.

Theorem 4.9 Spectral radius stability condition. Consider a system with a stable loop The small gain theorem below follows directly from Theorem 4.9 if we consider a matrix
transfer function L(s). Then the closed-loop system is stable if k kk kk k
norm satisfying AB A B , since at any frequency we then have (L) L (see k k
(A.116)).
(L(j! )) < 1 8! (4.107)
Theorem 4.10 Small Gain Theorem. Consider a system with a stable loop transfer function
L(s). Then the closed-loop system is stable if
Proof: The generalized Nyquist theorem (Theorem 4.7) says that if L(s) is stable, then the kL(j!)k < 1 8! (4.114)
closed-loop system is stable if and only if the Nyquist plot of det(I + L(s)) does not encircle
where kLk denotes any matrix norm satisfying kAB k  kAk  kB k.
the origin. To prove condition (4.107) we will prove the “reverse”, that is, if the system is
unstable and therefore det(I + L(s)) does encircle the origin, then there is an eigenvalue,
Remark 1 This result is only a special case of a more general small gain theorem which also
i (L(j! )) which is larger than 1 at some frequency. If det(I + L(s)) does encircle the origin,
then there must exists a gain  (0; 1] and a frequency !0 such that
2 applies to many nonlinear systems (Desoer and Vidyasagar, 1975).
Remark 2 The small gain theorem does not consider phase information, and is therefore
det(I + L(j! 0 )) = 0 (4.108) independent of the sign of the feedback.
152 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 153

Remark 3 Any induced norm can be used, for example, the singular value, 
 (L). 4.10.1 H2 norm
Remark 4 The small gain theorem can be extended to include more than one block in Consider a strictly proper system G(s), i.e. D = 0 in a state-space realization. For the 2 H
the loop, e.g. L = L1 L2 . In this case we get from (A.97) that the system is stable if norm we use the Frobenius norm spatially (for the matrix) and integrate over frequency, i.e.
k kk k
L1 L2 < 1; ! . 8 v
u
1
Z 1
Remark 5 The small gain theorem is generally more conservative than the spectral radius kG(s)k2 , u
u
t 2
tr(G(j! )H G(j! )) d! (4.116)
1
kG(j!)k2F =Pij jGij (j!)j2
condition in Theorem 4.9. Therefore, the arguments on conservatism made following | {z }
Theorem 4.9 also apply to Theorem 4.10.

H
We see that G(s) must be strictly proper, otherwise the 2 norm is infinite. The 2 norm can H
also be given another interpretation. By Parseval’s theorem, (4.116) is equal to the 2 norm H
of the impulse response
4.10 System norms vZ
u 1
kG(s)k2 = kg(t)k2 , u
u tr(g T ( )g ( )) d (4.117)
t 0
kg( )k2F =Pij jgij ( )j2
| {z }

w - G -z
Remark 1 Note that G(s) and g (t) are dynamic systems while G(j! ) and g ( ) are constant
matrices (for a given value of ! or  ).
Remark 2 We can change the order of integration and summation in (4.117) to get
Figure 4.9: System G
s 1
XZ
Consider the system in Figure 4.9, with a stable transfer function matrix G(s) and impulse
kG(s)k2 = kg(t)k2 = jgij ( )j2 d (4.118)
ij 0
response matrix g (t). To evaluate the performance we ask the question: given information
about the allowed input signals w(t), how large can the outputs z (t) become? To answer this, where gij (t) is the ij ’th element of the impulse response matrix, g (t). From this we see that
we must evaluate the relevant system norm. H
the 2 norm can be interpreted as the 2-norm output resulting from applying unit impulses
We will here evaluate the output signal in terms of the usual 2-norm,
Æj (t) to each input, one after another (allowing the output to settle to zero before
pPmapplying an
impulse to the next input). This is more clearly seen by writing G(s) 2 = k k
i=1 zi (t) 2
2 k k
s where zi (t) is the output vector resulting from applying a unit impulse Æi (t) to the i’th input.
XZ 1
kz(t)k2 = jzi ( )j2 d (4.115)
H2 norm:
i 1 In summary, we have the following deterministic performance interpretation of the

and consider three different choices for the inputs:


kG(s)k2 = w(t)= unit
max
impulses kz (t)k2 (4.119)

H
The 2 norm can also be given a stochastic interpretation (see page 371) in terms of the
1. w(t) is a series of unit impulses. quadratic criterion in optimal control (LQG) where we measure the expected root mean square
2. w(t) is any signal satisfying kw(t)k2 = 1. (rms) value of the output in response to white noise excitation.
w(t) is any signal satisfying kw(t)k2 = 1, but w(t) = 0 for t  0, and we only measure
3.
z (t) for t  0. H
For numerical computations of the 2 norm, consider the state-space realization G(s) =
C (sI A) 1 B . By substituting (4.10) into (4.117) we find
p p
H H
The relevant system norms in the three cases are the 2 , 1 , and Hankel norms, respectively. kG(s)k2 = tr(B T QB ) or kG(s)k2 = tr(CP C T ) (4.120)
H H
The 2 and 1 norms also have other interpretations as are discussed below. We introduced
H H
the 2 and 1 norms in Section 2.7, where we also discussed the terminology. In Appendix where Q and P are the observability and controllability Gramians, respectively, obtained as
A.5.7 we present a more detailed interpretation and comparison of these and other norms. solutions to the Lyapunov equations (4.48) and (4.44).
154 MULTIVARIABLE FEEDBACK CONTROL ELEMENTS OF LINEAR SYSTEM THEORY 155

4.10.2 H1 norm  H1 : “push down peak of largest singular value”.


 H2 : “push down whole thing” (all singular values over all frequencies).
6 H
Consider a proper linear stable system G(s) (i.e. D = 0 is allowed). For the 1 norm we
use the singular value (induced 2-norm) spatially (for the matrix) and pick out the peak value Example 4.17 We will compute the H1 and H2 norms for the following SISO plant
as a function of frequency
k k ,
G(s) 1 max  (G(j! ))
!
(4.121) G(s) = 1 (4.125)
s+a
H
In terms of performance we see from (4.121) that the 1 norm is the peak of the transfer
H2 norm is
H
function “magnitude”, and by introducing weights, the 1 norm can be interpreted as the
The
r
Z 1 1 h ! i1 ) 21 =
kG(s)k2 = ( 21 j! )j2 d! ) 2 = ( 1 tan 1 ( )
1
magnitude of some closed-loop transfer function relative to a specified upper bound. This
leads to specifying performance in terms of weighted sensitivity, mixed sensitivity, and so on. j|G({z 2a a 1 2a
(4.126)
1 }
H 1
However, the 1 norm also has several time domain performance interpretations. First, as !2 +a2
discussed in Section 3.3.5, it is the worst-case steady-state gain for sinusoidal inputs at any
H
frequency. Furthermore, from Tables A.1 and A.2 in the Appendix we see that the 1 norm To check Parseval’s theorem we consider the impulse response
 
1
g (t) = L 1
is equal to the induced (worst-case) 2-norm in the time domain:
= e at ; t  0 (4.127)
kz(t)k2 s+a
kG(s)k1 = wmax
(t)6=0 kw(t)k2 = max kz (t)k2
kw(t)k2 =1
(4.122)
and we get sZ
1 r
This is a fortunate fact from functional analysis which is proved, for example, in Desoer and kg(t)k2 = (e at )2 dt = 1 (4.128)
Vidyasagar (1975). In essence, (4.122) arises because the worst input signal w(t) is a sinusoid 0 2a
with frequency ! and a direction which gives  (G(j! )) as the maximum gain. as expected. The H1 norm is
H
The 1 norm is also equal to the induced power (rms) norm, and also has an interpretation 1
jjG(s)jj1 = max jG(j!)j = max
! (! 2 + a2 ) 21
=1 (4.129)
as an induced norm in terms of the expected values of stochastic signals. All these various ! a
H
interpretations make the 1 norm useful in engineering applications.
H
The 1 norm is usually computed numerically from a state-space realization as the smallest For interest, we also compute the 1-norm of the impulse response (which is equal to the
value of such that the Hamiltonian matrix H has no eigenvalues on the imaginary axis, 1
induced -norm in the time domain):
Z 1
g (t) jdt = 1
where
A + BR 1 DT C BR 1 B T
 
H=
kg(t)k1 = j |{z} a
(4.130)
C T (I + DR 1 DT )C (A + BR 1 DT C )T (4.123) 0
e at
and R = 2 I DT D, see Zhou et al. (1996, p.115). This is an iterative procedure, where one In general, it can be shown that kG(s)k1  kg(t)k1 , and this example illustrates that we
may start with a large value of and reduce it until imaginary eigenvalues for H appear. may have equality.

H2 and H1 norms. As an
4.10.3 Difference between the H2 and H1 norms
Example 4.18 There exists no general relationship between the
example consider the two systems

H H
To understand the difference between the 2 and 1 norms, note that from (A.126) we can f1 (s) =1
; f2 (s) = 2 s (4.131)
write the Frobenius norm in terms of singular values. We then have s + 1 s + s + 1
s Z 1 and let  ! 0. Then we have for f1 that the H1 norm is 1 and the H2 norm is infinite. For
kG(s)k2 = 1 X
i2 (G(j! ))d! (4.124) f2 the H1 norm is again 1, but now the H2 norm is zero.
2 1 i
H
Why is the 1 norm so popular? In robust control we use the 1 norm mainly because H
H
From this we see that minimizing the 1 norm corresponds to minimizing the peak of the it is convenient for representing unstructured model uncertainty, and because it satisfies the
H
largest singular value (“worst direction, worst frequency”), whereas minimizing the 2 norm multiplicative property (A.97):
corresponds to minimizing the sum of the square of all the singular values over all frequencies
(“average direction, average frequency”). In summary, we have kA(s)B (s)k1  kA(s)k1  kB (s)k1 (4.132)
156 MULTIVARIABLE FEEDBACK CONTROL

This follows from (4.122) which shows that the H1 norm is an induced norm.
H H
What is wrong with the 2 norm? The 2 norm has a number of good mathematical and
numerical properties, and its minimization has important engineering implications. However,
H
the 2 norm is not an induced norm and does not satisfy the multiplicative property. This
H
implies that we cannoy by evaluating the 2 norm of the individual components say anything
avout how their series (cascade) interconnection will behave.

Example
p 4.19 Consider again G(s) = 1=(s + a) in (4.125), for which we found kG(s)k2 =
H
1=2a. Now consider the 2 norm of G(s)G(s):
vZ r r
u 1
kG(s)G(s)k2 = u
u j L 1 [( s +1 a )2 ] j2 = a1 21a = a1 kG(s)k22
t 0 | {z }
te at
and we find, for a < 1, that

kG(s)G(s)k2 > kG(s)k2  kG(s)k2 (4.133) Figure 4.10: Pumping a swing: illustration of Hankel norm. The input is applied for t 0
and the jump starts at t = 0.
H
which does not satisfy the multiplicative property (A.97). On the other hand, the 1 norm
does satisfy the multiplicative property, and for the specific example we have equality with
kG(s)G(s) 1 = a12 = G(s) 1 G(s) 1 .
k k k k k The Hankel and H1 norms are closely related and we have (Zhou et al., 1996, p.111)
n
X
kG(s)kH  1  kG(s)k1  2 i (4.137)
4.10.4 Hankel norm i=1
Thus, the Hankel norm is always smaller than (or equal to) the H1 norm, which is also
In the following discussion, we aim at developing an understanding of the Hankel norm. The reasonable by comparing the definitions in (4.122) and (4.134).
Hankel norm of a stable system G(s) is obtained when one applies an input w(t) up to t = 0
and measures the output z (t) for t > 0, and selects w(t) to maximize the ratio of the 2-norms Model reduction. Consider the following problem: given a state-space description G(s) of a
of these two signals: system, find a model Ga (s) with fewer states such that the input-output behaviour (from w to
q R1 z ) is changed as little as possible. Based on the discussion above it seems reasonable to make
0 kz( )k22 d use of the Hankel norm, since the inputs only affect the outputs through the states at t = 0. For
kG(s)kH , max q
w(t) R 0 2
(4.134)
model reduction, we usually start with a realization of G which is internally balanced, that is,
1 kw( )k2 d such that Q = P = , where  is the matrix of Hankel singular values. We may then discard
The Hankel norm is a kind of induced norm from past inputs to future outputs. Its definition is states (or rather combinations of states corresponding to certain subspaces) corresponding to
analogous to trying to pump a swing with limited input energy such that the subsequent length H
the smallest Hankel singular values. The change in 1 norm caused by deleting states in
of jump is maximized as illustrated in Figure 4.10. G(s) is less than twice the sum of the discarded Hankel singular values, i.e.
It may be shown that the Hankel norm is equal to kG(s) Ga (s)k1  2(k+1 + k+2 +   ) (4.138)
p
kG(s)kH = (P Q) (4.135) where Ga (s) denotes a truncated or residualized balanced realization with k states; see
where  is the spectral radius (maximum eigenvalue), P is the controllability Gramian defined
Chapter 11. The method of Hankel norm minimization gives a somewhat improved error
in (4.43) and Q the observability Gramian defined in (4.47). The name “Hankel” is used
k k
bound, where we are guaranteed that G(s) Ga (s) 1 is less than the sum of the discarded
because the matrix P Q has the special structure of a Hankel matrix (which has identical
Hankel singular values. This and other methods for model reduction are discussed in detail in
Chapter 11 where a number of examples can be found.
elements along the “wrong-way” diagonals). The corresponding Hankel singular values are
the positive square roots of the eigenvalues of P Q,
p Example 4.20 We want to compute analytically the various system norms for G(s) =
i = i (P Q) (4.136) 1=(s + a) using state-space methods. A state-space realization is A = a, B = 1,
158 MULTIVARIABLE FEEDBACK CONTROL

C = 1 and D = 0. The controllability Gramian P is obtained from the Lyapunov equation


AP + P AT = BB T , aP aP = 1, so P = 1=2a. Similarly, the observability
Gramian is Q = 1=2a. From (4.120) the H2 norm is then

kG(s)k2 =
p
tr(B T QB ) =
p
1=2a 5
The eigenvalues of the Hamiltonian matrix H in (4.123) are

LIMITATIONS ON
 2
(H ) =  a 1= =  a2 1= 2
p
1 a
We find that H has no imaginary eigenvalues for > 1=a, so
PERFORMANCE IN SISO
SYSTEMS
kG(s)k1 = 1=a
The Hankel matrix is P Q = 1=4a2 and from (4.135) the Hankel norm is
p
kG(s)kH = (P Q) = 1=2a
These results agree with the frequency-domain calculations in Example 4.17.
In this chapter, we discuss the fundamental limitations on performance in SISO systems.
Exercise 4.16 Let a = 0:5 and  = 0:0001 and check numerically the results in Examples We summarize these limitations in the form of a procedure for input-output controllability
4.17, 4.18, 4.19 and 4.20 using, for example, the MATLAB -toolbox commands h2norm, analysis, which is then applied to a series of examples. Input-output controllability of a plant
hinfnorm, and for the Hankel norm, [sysb,hsig]=sysbal(sys); max(hsig). is the ability to achieve acceptable control performance. Proper scaling of the input, output
and disturbance variables prior to this analysis is critical.

4.11 Conclusion
5.1 Input-Output Controllability
This chapter has covered the following important elements of linear system theory: system
descriptions, state controllability and observability, poles and zeros, stability and stabilization, In university courses on control, methods for controller design and stability analysis are
and system norms. The topics are standard and the treatment is complete for the purposes of usually emphasized. However, in practice the following three questions are often more
this book. important:
I. How well can the plant be controlled? Before starting any controller design one should
first determine how easy the plant actually is to control. Is it a difficult control problem?
Indeed, does there even exist a controller which meets the required performance objectives?
II. What control structure should be used? By this we mean what variables should we
measure and control, which variables should we manipulate, and how are these variables
best paired together? In other textbooks one can find qualitative rules for these problems. For
example, in Seborg et al. (1989) in a chapter called “The art of process control”, the following
rules are given:

1. Control the outputs that are not self-regulating.


2. Control the outputs that have favourable dynamic and static characteristics, i.e. for each
output, there should exist an input which has a significant, direct and rapid effect on it.
3. Select the inputs that have large effects on the outputs.
4. Select the inputs that rapidly affect the controlled variables
160 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 161

These rules are reasonable, but what is “self-regulating”, “large”, “rapid” and “direct”. A 5.1.1 Input-output controllability analysis
major objective of this chapter is to quantify these terms.
Input-output controllability analysis is applied to a plant to find out what control performance
III. How might the process be changed to improve control? For example, to reduce the can be expected. Another term for input-output controllability analysis is performance
effects of a disturbance one may in process control consider changing the size of a buffer targeting.
tank, or in automotive control one might decide to change the properties of a spring. In other
situations, the speed of response of a measurement device might be an important factor in Surprisingly, given the plethora of mathematical methods available for control system design,
achieving acceptable control. the methods available for controllability analysis are largely qualitative. In most cases
the “simulation approach” is used i.e. performance is assessed by exhaustive simulations.
The above three questions are each related to the inherent control characteristics of the process However, this requires a specific controller design and specific values of disturbances and
itself. We will introduce the term input-output controllability to capture these characteristics setpoint changes. Consequently, with this approach, one can never know if the result is a
as described in the following definition. fundamental property of the plant, or if it depends on the specific controller designed, the
disturbances or the setpoints.

Definition 5.1 (Input-output) controllability is the ability to achieve acceptable control A rigorous approach to controllability analysis would be to formulate mathematically the
performance; that is, to keep the outputs (y ) within specified bounds or displacements from control objectives, the class of disturbances, the model uncertainty, etc., and then to synthesize
their references (r), in spite of unknown but bounded variations, such as disturbances (d) and controllers to see whether the objectives can be met. With model uncertainty this involves
plant changes (including uncertainty), using available inputs (u) and available measurements designing a -optimal controller (see Chapter 8). However, in practice such an approach is
(ym or dm ). difficult and time consuming, especially if there are a large number of candidate measurements
or actuators; see Chapter 10. More desirable, is to have a few simple tools which can be used
to get a rough idea of how easy the plant is to control, i.e. to determine whether or not a plant
In summary, a plant is controllable if there exists a controller (connecting plant measurements is controllable, without performing a detailed controller design. The main objective of this
and plant inputs) that yields acceptable performance for all expected plant variations. Thus, chapter is to derive such controllability tools based on appropriately scaled models of G(s)
controllability is independent of the controller, and is a property of the plant (or process) and Gd (s).
alone. It can only be affected by changing the plant itself, that is, by (plant) design changes. An apparent shortcoming of the controllability analysis presented in this book is that all the
These may include: tools are linear. This may seem restrictive, but usually it is not. In fact, one of the most
important nonlinearities, namely that associated with input constraints, can be handled quite
 changing the apparatus itself, e.g. type, size, etc.
well with a linear analysis. Also, to deal with slowly varying changes one may perform a
 relocating sensors and actuators
controllability analysis at several selected operating points. Nonlinear simulations to validate
 adding new equipment to dampen disturbances the linear controllability analysis are of course still recommended. Experience from a large
 adding extra sensors number of case studies confirms that the linear measures are often very good.
 adding extra actuators
 changing the control objectives
 changing the configuration of the lower layers of control already in place 5.1.2 Scaling and performance
The above definition of controllability does not specify the allowed bounds for the
Whether or not the last two actions are design modifications is arguable, but at least they displacements or the expected variations in the disturbance; that is, no definition of the
address important issues which are relevant before the controller is designed. desired performance is included. Throughout this chapter and the next, when we discuss
Early work on input-output controllability analysis includes that of Ziegler and Nichols controllability, we will assume that the variables and models have been scaled as outlined
(1943), Rosenbrock (1970), and Morari (1983) who made use of the concept of “perfect in Section 1.4, so that the requirement for acceptable performance is:
control”. Important ideas on performance limitations are also found in Bode (1945), Horowitz
(1963), Frank (1968a; 1968b), Kwakernaak and Sivan (1972) Horowitz and Shaked (1975),  For any reference r(t) between R and R and any disturbance d(t) between 1 and 1, to
Zames (1981), Doyle and Stein (1981), Francis and Zames (1984), Boyd and Desoer (1985), keep the output y (t) within the range r(t) 1 to r(t) + 1 (at least most of the time), using
Kwakernaak (1985), Freudenberg and Looze (1985; 1988), Engell (1988), Morari and Zafiriou an input u(t) within the range 1 to 1.
(1989), Boyd and Barratt (1991), and Chen (1995). We also refer the reader to two IFAC
workshops on Interactions between process design and process control (Perkins, 1992; We will interpret this definition from a frequency-by-frequency sinusoidal point of view, i.e.
Zafiriou, 1994). d(t) = sin !t, and so on. With e = y r we then have:
162 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 163

For any disturbance d(! )j j 


1 and any reference r(! ) j j 
R(! ), the Where are we heading? In this chapter we will discuss a number of results related to
performance requirement is to keep at each frequency ! the control error achievable performance. Many of the results can be formulated as upper and lower bounds
j j j
e(! ) 1, using an input u(! ) 1. j on the bandwidth of the system. As noted in Section 2.4.5, there are several definitions of
bandwidth (!B , !c and !BT ) in terms of the transfer functions S , L and T , but since we
It is impossible to track very fast reference changes, so we will assume that R(! ) is frequency- are looking for approximate bounds we will not be too concerned with these differences. The
dependent; for simplicity we assume that R(! ) is R (a constant) up to the frequency !r and main results are summarized at end of the chapter in terms of eight controllability rules.
is 0 above that frequency.
It could also be argued that the magnitude of the sinusoidal disturbances should approach zero
at high frequencies. While this may be true, we really only care about frequencies within the
bandwidth of the system, and in most cases it is reasonable to assume that the plant experiences 5.2 Perfect control and plant inversion
sinusoidal disturbances of constant magnitude up to this frequency. Similarly, it might also be
argued that the allowed control error should be frequency dependent. For example, we may
A good way of obtaining insight into the inherent limitations on performance originating in
require no steady-state offset, i.e. e should be zero at low frequencies. However, including
the plant itself, is to consider the inputs needed to achieve perfect control (Morari, 1983). Let
frequency variations is not recommended when doing a preliminary analysis (however, one
the plant model be
may take such considerations into account when interpreting the results).
y = Gu + Gd d (5.2)
Recall that with r = Rre (see Section 1.4) the control error may be written as “Perfect control” (which, of course, cannot be realized in practice) is achieved when the output
e = y r = Gu + Gd d Rre (5.1) is identically equal to the reference, i.e. y = r. To find the corresponding plant input set y = r
and solve for u in (5.2):
where R is the magnitude of the reference and re(! )j j j
1 and d(! ) j 1 are unknown u = G 1 r G 1 Gd d (5.3)
signals. We will use (5.1) to unify our treatment of disturbances and references. Specifically,
we will derive results for disturbances, which can then be applied directly to the references by
(5.3) represents a perfect feedforward controller, assuming d is measurable. When feedback
control u = K (r y ) is used, we have from (2.20) that
replacing Gd by R, see (5.1) .
u = KSr KSGd d
5.1.3 Remarks on the term controllability or since the complementary sensitivity function is T
= GKS ,
1 1
u = G T r G T Gd d (5.4)
The above definition of (input-output) controllability is in tune with most engineers’ intuitive
feeling about what the term means, and was also how the term was used historically in the
control literature. For example, Ziegler and Nichols (1943) defined controllability as “the
We see that at frequencies where feedback is effective and T 
I (these arguments also apply
to MIMO systems and this is the reason why we here choose to use matrix notation), the input
ability of the process to achieve and maintain the desired equilibrium value”. Unfortunately, generated by feedback in (5.4) is the same as the perfect control input in (5.3). That is, high
in the 60’s “controllability” became synonymous with the rather narrow concept of “state gain feedback generates an inverse of G even though the controller K may be very simple.
controllability” introduced by Kalman, and the term is still used in this restrictive manner
by the system theory community. State controllability is the ability to bring a system from a An important lesson therefore is that perfect control requires the controller to somehow
given initial state to any final state within a finite time. However, as shown in Example 4.5 generate an inverse of G. From this we get that perfect control cannot be achieved if
this gives no regard to the quality of the response between and after these two states and
 G contains RHP-zeros (since then G 1 is unstable)
the required inputs may be excessive. The concept of state controllability is important for
 G contains time delay (since then G 1 contains a non-causal prediction)
realizations and numerical calculations, but as long as we know that all the unstable modes
are both controllable and observable, it usually has little practical significance. For example,
 G has more poles than zeros (since then G 1 is unrealizable)
Rosenbrock (1970, p. 177) notes that “most industrial plants are controlled quite satisfactorily In addition, for feedforward control we have that perfect control cannot be achieved if
though they are not [state] controllable”. And conversely, there are many systems, like the
tanks in series Example 4.5, which are state controllable, but which are not input-output  G is uncertain (since then G 1 cannot be obtained exactly)
controllable. To avoid any confusion between practical controllability and Kalman’s state
controllability, Morari (1983) introduced the term dynamic resilience. However, this term The last restriction may be overcome by high gain feedback, but we know that we cannot have
does not capture the fact that it is related to control, so instead we prefer the term input- high gain feedback at all frequencies.
output controllability, or simply controllability when it is clear we are not referring to state The required input in (5.3) must not exceed the maximum physically allowed value. Therefore,
controllability. perfect control cannot be achieved if
164 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 165

 jG 11 Gd j is large
 jG Rj is large
M
where “large” with our scaled models means larger than 1. There are also other situations
!B

Magnitude
which make control difficult such as 0

jS j
10

 G is unstable
 jGd j is large 1=jwP j
If the plant is unstable, the outputs will “take off”, and eventually hit physical constraints,
j j
unless feedback control is applied to stabilize the system. Similarly, if Gd is large, then 10
−1

without control a disturbance will cause the outputs to move far away from their desired
Frequency [rad/s]
values. So in both cases control is required, and problems occur if this demand for control
is somehow in conflict with the other factors mentioned above which also make control
difficult. We have assumed perfect measurements in the discussion so far, but in practice, noise Figure 5.1: Plot of typical sensitivity, jS j, with upper bound 1=jwP j
and uncertainty associated with the measurements of disturbances and outputs will present
additional problems for feedforward and feedback control, respectively.
1. L(s) has at least two more poles than zeros (first waterbed formula), or
2. L(s) has a RHP-zero (second waterbed formula).

5.3 Constraints on S and T


Pole excess of two: First waterbed formula
In this section, we present some fundamental algebraic and analytic constraints which apply To motivate the first waterbed formula consider the open-loop transfer function L(s) =
to the sensitivity S and complementary sensitivity T . 1
s(s+1) . As shown in Figure 5.2, there exists a frequency range over which the Nyquist plot of
j j
L(j! ) is inside the unit circle centred on the point 1, such that 1 + L , which is the distance
between L and 1, is less than one, and thus S = 1 + L 1 is greater than one. In practice,
j j j j
5.3.1 S plus T is one L(s) will have at least two more poles than zeros (at least at sufficiently high frequency, e.g.
= (I + L) 1 and T = L(I + L) 1 we derive
due to actuator and measurement dynamics), so there will always exist a frequency range over
From the definitions S j j
which S is greater than one. This behaviour may be quantified by the following theorem, of
S+T =I (5.5) which the stable case is a classical result due to Bode.

(or S + T = 1 for a SISO system). Ideally, we want S small to obtain the benefits of feedback Theorem 5.1 Bode Sensitivity Integral (First waterbed formula). Suppose that the open-
(small control error for commands and disturbances), and T small to avoid sensitivity to loop transfer function L(s) is rational and has at least two more poles than zeros (relative
noise which is one of the disadvantages of feedback. Unfortunately, these requirements are degree of two or more). Suppose also that L(s) has Np RHP-poles at locations pi . Then for
not simultaneously possible at any frequency as is clear from (5.5). Specifically, (5.5) implies
j j j j
that at any frequency either S (j! ) or T (j! ) must be larger than or equal to 0.5.
closed-loop stability the sensitivity function must satisfy
Z 1 Np
X
ln jS (j! )jdw =   Re(pi ) (5.6)
5.3.2 The waterbed effects (sensitivity integrals) 0 i=1
where Re(pi ) denotes the real part of pi .
j j
A typical sensitivity function is shown by the solid line in Figure 5.1. We note that S has a
peak value greater than 1; we will show that this peak is unavoidable in practice. Two formulas
are given, in the form of theorems, which essentially say that if we push the sensitivity down Proof: See Doyle et al. (1992, p. 100) or Zhou et al. (1996). The generalization of Bode’s
at some frequencies then it will have to increase at others. The effect is similar to sitting on criterion to unstable plants is due to Freudenberg and Looze (1985; 1988). 2
a waterbed: pushing it down at one point, which reduces the water level locally will result
in an increased level somewhere else on the bed. In general, a trade-off between sensitivity For a graphical interpretation of (5.6) note that the magnitude scale is logarithmic whereas the
reduction and sensitivity increase must be performed whenever: frequency-scale is linear.
166 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 167
Im Im
2

L(s) = s(s2+1)
1

1 jS (j!)j > 1
1

−1 Lm (j!) Re
−1 1 2 Re

L(j!)
−1
−1

−2
1
Lm (s) = s+1 −1.5
L(j! )
L(s) 1 s+1
= s+1 s+1 −2.0

Figure 5.3: Additional phase lag contributed by RHP-zero causes jS j > 1


Figure 5.2: jS j > 1 whenever the Nyquist plot of L is inside the circle
RHP-zeros: Second waterbed formula
Stable plant. For a stable plant we must have
For plants with RHP-zeros the sensitivity function must satisfy an additional integral
Z 1 relationship, which has stronger implications for the peak of S . Before stating the result,
ln jS (j! )jdw = 0 (5.7) let us illustrate why the presence of a RHP-zero implies that the peak of S must exceed
0 one. First, consider the non-minimum phase loop transfer function L(s) = 1+ 1 1 s and its
s 1+s
minimum phase counterpart Lm (s) = 1+ 1 . From Figure 5.3 we see that the additional
s phase
j j
and the area of sensitivity reduction (ln S negative) must equal the area of sensitivity increase lag contributed by the RHP-zero and the extra pole causes the Nyquist plot to penetrate the
j j
(ln S positive). In this respect, the benefits and costs of feedback are balanced exactly, as in unit circle and hence causes the sensitivity function to be larger than one.
the waterbed analogy. From this we expect that an increase in the bandwidth (S smaller than
1 over a larger frequency range) must come at the expense of a larger peak in S . j j As a further example, consider Figure 5.4 which shows the magnitude of the sensitivity
function for the following loop transfer function

L(s) = k 2 s k = 0:1; 0:5; 1:0; 2:0 (5.8)


Remark. Although this is true in most practical cases, the effect may not be so striking in s 2+s
some cases, and it is not strictly implied by (5.6) anyway. This is because the increase in
area may come over an infinite frequency range; imagine a waterbed of infinite size. Consider The plant has a RHP-zero z = 2, and we see that an increase in the controller gain k,
j j 2
S (j! ) = 1+Æ for ! [!1 ; !2 ], where Æ is arbitrarily small (small peak), then we can choose corresponding to a higher bandwidth, results in a larger peak for S . For k = 2 the closed-
!1 arbitrary large (high bandwidth) simply by selecting the interval [!1 ; !2 ] to be sufficiently loop system becomes unstable with two poles on the imaginary axis, and the peak of S is
large. However, in practice the frequency response of L has to roll off at high frequencies so !2 infinite.
is limited, and (5.6) and (5.7) impose real design limitations. This is illustrated in Figure 5.5.
Theorem 5.2 Weighted sensitivity integral (Second waterbed formula). Suppose that
L(s) has a single real RHP-zero z or a complex conjugate pair of zeros z = x jy , and has
Unstable plant. The presence of unstable poles usually increases the peak of the sensitivity, Np RHP-poles, pi . Let pi denote the complex conjugate of pi . Then for closed-loop stability
PNp
as seen from the positive contribution  
i=1 Re(pi ) in (5.6). Specifically, the area of
the sensitivity function must satisfy
j j
sensitivity increase ( S > 1) exceeds that of sensitivity reduction by an amount proportional Z 1 Np
Y pi + z
to the sum of the distance from the unstable poles to the left-half plane. This is plausible since
ln jS (j! )j  w(z; ! )d! =   ln
pi z
(5.9)
we might expect to have to pay a price for stabilizing the system. 0 i=1
168 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 169
1
10

jS1 j j S2 j
10
1 k =2:0 0
10
(unstable)
jS j

Nagnitude
k =1:0
Magnitude

k =0:5
Equal areas

k =0:1
−1
0
10
10

−2
10
0 1 2 3 4 5 6

10
−1 Frequency (linear scale)
−2 −1 0 1
10 10 10 10
Figure 5.5: Sensitivity S = 1 L1 = s(s2+1) L2 =
Frequency
1+L corresponding to (solid line) and
+5 (with RHP-zero at z
L1 ss+5 = 5) (dashed line).
Figure 5.4: Effect of increased controller gain on jS j for system with RHP-zero at z = 2, ln
In both cases the areas of S below and above 1 (dotted line) are equal, see (5.7), but for L2 this must
L(s) = ks 22+ss happen at frequencies below z =5
, see (5.12), and the peak of S must be higher

where if the zero is real The two sensitivity integrals (waterbed formulas) presented above are interesting and provide

w(z; ! ) = 2 2z 2 = 2 1 valuable insights, but for a quantitative analysis of achievable performance they are less useful.
z 1 + (!=z )2
(5.10)
z +! Fortunately, however, we can derive lower bounds on the weighted sensitivity and weighted
complementary sensitivity, see (5.21), which are more useful for analyzing the effects of RHP-
and if the zero pair is complex (z = x  jy ) zeros and RHP-poles. The basis for these bounds is the interpolation constraints which we
w(z; ! ) = 2 x x discuss first.
+
x + (y ! )2 x2 + (y + ! )2
(5.11)

5.3.3 Interpolation constraints


Proof: See Freudenberg and Looze (1985; 1988). 2
If p is a RHP-pole of the loop transfer function L(s) then
Note that when there is a RHP-pole close to the RHP-zero (pi z ) then ppii +zz
! ! 1. This is
not surprising as such plants are in practice impossible to stabilize. T (p) = 1; S (p) = 0 (5.13)
j j
The weight w(z; ! ) effectively “cuts off” the contribution from ln S to the sensitivity integral
j j
at frequencies ! > z . Thus, for a stable plant where S is reasonably close to 1 at high Similarly, if z is a RHP-zero of L(s) then
frequencies we have approximately
Z z T (z ) = 0; S (z ) = 1 (5.14)
ln jS (j! )jd!  0 (5.12)
0 These interpolation constraints follow from the requirement of internal stability as shown in
This is similar to Bode’s sensitivity integral relationship in (5.7), except that the trade-off (4.83) and (4.84). The conditions clearly restrict the allowable S and T and prove very useful
between S less than 1 and S larger than 1, is done over a limited frequency range. Thus, in in the next subsection.
j j
this case the waterbed is finite, and a large peak for S is unavoidable if we try to push down
j j
S at low frequencies. This is illustrated by the example in Figure 5.4 and further by the
example in Figure 5.5. 5.3.4 Sensitivity peaks
Exercise 5.1 Kalman inequality The Kalman inequality for optimal state feedback, which j j
In Theorem 5.2, we found that a RHP-zero implies that a peak in S is inevitable, and that the
also applies to unstable plants, says that S j j 8
1 ! , see Example 9.2. Explain why this j j
peak will increase if we reduce S at other frequencies. Here we derive explicit bounds on the
does not conflict with the above sensitivity integrals. (Solution: 1. Optimal control with state weighted peak of S , which are more useful in applications than the integral relationship. The
feedback yields a loop transfer function with a pole-zero excess of one so (5.6) does not apply. bound for S was originally derived by Zames (1981). The results are based on the interpolation
2. There are no RHP-zeros when all states are measured so (5.9) does not apply). constraints S (z ) = 1 and T (p) = 1 given above. In addition, we make use of the maximum
170 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 171

modulus principle for complex analytic functions (e.g. see maximum principle in Churchill Proof of (5.16):. The basis for the proof is a “trick” where we first factor out the RHP-zeros in
et al., 1974) which for our purposes can be stated as follows: S into an all-pass part (with magnitude 1 at all points on the j! -axis). Since G have RHP-poles
at pi , S (s) has RHP-zeros at pi and we may write
Maximum modulus principle. Suppose f (s) is stable (i.e. f (s) is analytic in the complex
j j
RHP). Then the maximum value of f (s) for s in the right-half plane is attained on the Y s pi
region’s boundary, i.e. somewhere along the j! -axis. Hence, we have for a stable f (s) S = Sa Sm ; Sa (s) = (5.20)
i s + pi
kf (j!)k1 = max
!
jf (j!)j  jf (s0 )j 8s0 2 RHP (5.15)
Here Sm is the “minimum-phase version” of S with all RHP-zeros mirrored into the LHP.
j j
Sa (s) is all-pass with Sa (j! ) = 1 at all frequencies. (Remark: There is a technical problem
here with j! -axis poles; these must first be moved slightly into the RHP). The weight wP (s)
is as usual assumed to be stable and minimum phase. Consider a RHP-zero located at z ,
j j
Remark. (5.15) can be understood by imagining a 3-D plot of f (s) as a function of the k
for which we get from the maximum modulus principle wP S 1 = max! wP S (j! ) =k j j
j j
complex variable s. In such a plot f (s) has “peaks” at its poles and “valleys” at its zeros. j
max! wP Sm (j! ) jj wP (z )Sm (z ) , where Sm (z ) = S (z )Sa (z ) 1 = 1cdotSa (z ) 1 =
j
j j
Thus, if f (s) has no poles (peaks) in the RHP, and we find that f (s) slopes downwards from c1 . This proves (5.16).
the LHP and into the RHP.
The proof of (5.18) is similar; see the proof of the generalized bound (5.44).

To derive the results below we first consider f (s) = wP (s)S (s) (weighted sensitivity), and 2
then f (s) = wT (s)T (s) (weighted complementary sensitivity). The weights are included
to make the results more general, but if required we may of course select wP (s) = 1 and If we select wP = wT = 1, we derive the following bounds on the peaks of S and T :
wT (s) = 1.
Np Nz
For a plant with a RHP-zero z , applying (5.15) to f (s) = wP (s)S (s) and using the
kS k1  max
Y jzj + pi j kT k1  max Y jzj + pi j
k
interpolation constraint S (z ) = 1, gives wP S 1 k j j j j
wP (z )S (z ) = wP (z ) . If the plant j
i=1 j z j p i j i
j =1 zj pi j
j (5.21)
also has RHP-poles then the bound is larger, as given in the following theorem:
This shows that large peaks for S and T are unavoidable if we have a RHP-zero and RHP-pole
Theorem 5.3 Weighted sensitivity peaks. For closed-loop stability the weighted sensitivity located close to each other. This is illustrated by examples in Section 5.9.
function must satisfy for each RHP-zero z

Np
kwP S k1  jwP (z)j 
Y jz + pi j
i=1 jz pi j
(5.16) 5.4 Ideal ISE optimal control
where pi denote the Np RHP-poles of G. If G has no RHP-poles then the bound is simply Another good way of obtaining insight into performance limitations, is to consider an “ideal”
controller which is integral square error (ISE) optimal. That is, for a given command r(t)
kwP S k1  jwP (z)j (5.17) (which is zero for t < 0), the “ideal” controller is the one that generates the plant input u(t)
(zero for t < 0) which minimizes
Similarly, the weighted complementary sensitivity function must satisfy for each RHP-pole p
Z 1
Nz ISE = jy(t) r(t)j2 dt
kwT T k1  jwT (p)j  jjzzjj + ppjj
Y (5.22)
(5.18) 0
j =1 This controller is “ideal” in the sense that it may not be realizable in practice because the cost
function includes no penalty on the input u(t). This particular problem is considered in detail
where zj denote the Nz RHP-zeros of G. If G has no RHP-zeros then the bound is simply
by Frank (1968a; 1968b) and Morari and Zafiriou (1989), and also Qiu and Davison (1993)
kwT T k1  jwT (p)j (5.19)
who study “cheap” LQR control. Morari and Zafiriou show that for stable plants with RHP-
zeros at zj (real or complex) and a time delay , the “ideal” response y = T r when r(t) is a
unit step is given by
These bounds may be generalized to MIMO systems if the directions of poles and zeros are
T (s) =
Y s + zj e s (5.23)
taken into account, see Chapter 6. i s + zj
172 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 173

where zj is the complex conjugate of zj . The optimal ISE-values for three simple stable plants 1 in Figure 5.6 is 3 1 = 1:05=). Since in this case S = 1= L , we also have that 1=
j j j j
are: is equal to the gain crossover frequency for L. In practice, the “ideal” controller cannot be
1: with a delay  : ISE =  realized, so we expect this value to provide an approximate upper bound on wc , namely
2: with a RHP zero z : ISE = 2=z
3: with complex RHP zeros z = x  jy : ISE = 4x=(x2 + y 2 ) !c < 1= (5.25)
This quantifies nicely the limitations imposed by non-minimum phase behaviour, and the This approximate bound is the same as derived in Section 2.6.2 by considering the limitations
implications in terms of the achievable bandwidth are considered below. imposed on a loop-shaping design by a time delay .

Remark 1 The result in (5.23) is derived by considering an “open-loop” optimization


problem, and applies to feedforward as well as feedback control.
j j
Remark 2 The ideal T (s) is “all-pass” with T (j! ) = 1 at all frequencies. In the feedback 5.6 Limitations imposed by RHP-zeros
case the ideal sensitivity function is S (j! ) = L 1 (j! )T (j! ) = 1= L(j! ) at all
j j j j j j
frequencies. We will here consider plants with a zero z in the closed right-half plane (and no pure time
Remark 3 If r(t) is not a step then other expressions for T rather than that in (5.23) are delay). In the following we attempt to build up insight into the performance limitations
derived; see Morari and Zafiriou (1989) for details. imposed by RHP-zeros using a number of different results in both the time and frequency
domains.
RHP-zeros typically appear when we have competing effects of slow and fast dynamics. For
example, the plant
5.5 Limitations imposed by time delays G(s) = 1 2 = s+8
s + 1 s + 10 (s + 1)(s + 10)
has a real RHP-zero at z = 8. We may also have complex zeros, and since these always occur
in complex conjugate pairs we have z = x  jy where x  0 for RHP-zeros.
1
10

5.6.1 Inverse response


jS j

0
10
For a stable plant with nz real RHP-zeros, it may be proven (Holt and Morari, 1985b;
Magnitude

Rosenbrock, 1970) that the output in response to a step change in the input will cross zero (its
−1
10 original value) nz times, that is, we have inverse response behaviour. A typical response for
the case with one RHP-zero is shown in Figure 2.14, page 38. We see that the output initially
−2
! = 1= decreases before increasing to its positive steady-state value. With two real RHP-zeros the
10 −2 −1 0 1 2
output will initially increase, then decrease below its original value, and finally increase to its
Frequency  Delay
10 10 10 10 10
positive steady-state value.

Figure 5.6: “Ideal” sensitivity function (5.24) for a plant with delay
5.6.2 High-gain instability
Consider a plant G(s) that contains a time delay e s (and no RHP-zeros). Even the “ideal”
controller cannot remove this delay. For a step change in the reference r(t), we have to wait a
It is well-known from classical root-locus analysis that as the feedback gain increases towards
time  until perfect control is achieved. Thus, as shown in (5.23), the “ideal” complementary
infinity, the closed-loop poles migrate to the positions of the open-loop zeros; also see (4.76).
sensitivity function will be T = e s . The corresponding “ideal” sensitivity function is
Thus, the presence of RHP-zeros implies high-gain instability.

S = 1 T = 1 e s (5.24)
5.6.3 Bandwidth limitation I
j j
The magnitude S is plotted in Figure 5.6. At low frequencies, ! < 1, we have 1 e s 
s (by a Taylor series expansion of the exponential) and the low-frequency asymptote of For a step change in the reference we have from (5.23) that the “ideal” ISE-optimal
j j
S (j! ) crosses 1 at a frequency of about 1= (the exact frequency where S (j! ) crossesj j complementary sensitivity function T is all-pass, and for a single real RHP-zero the “ideal”
174 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 175

sensitivity function is j j
In Figure 5.7(b) we plot S for y=x equal to 0.1, 1, 10 and 50. An analysis of (5.28) and the
S=1 T =1 s + z = 2s (5.26) figure yields the following approximate bounds
z+z s+z 8
j j j j
The Bode magnitude plot of S (= 1= L ) is shown in Figure 5.7(a). The low-frequency jzj=4 Re(z)  Im(z) (y=x  1)
<
j j
asymptote of S (j! ) crosses 1 at the frequency z=2. In practice, the “ideal” ISE optimal !B  !c < : jz j=2:8 Re(z ) = Im(z ) (y=x = 1) (5.29)
controller cannot be realized, and we derive (for a real RHP-zero) the approximate requirement jz j Re(z )  Im(z ) (y=x  1)
!B  !c < z
2
(5.27)
jj
In summary, RHP-zeros located close to the origin (with z small) are bad for control, and it
which we also derived on 45 using loop-shaping arguments. The bound !c < z=2 is also is worse for them to be located closer to the real axis than the imaginary axis.
consistent with the bound !c < 1= in (5.25) for a time delay. This is seen from the Padé

approximation of a delay, e s (1 2 s)=(1 + 2 s), which has a RHP-zero at 2=. 
Remark. For a complex pair of zeros, z = x jy , we notice from (5.28) and Figure 5.7
that the resonance peak of S at !  y becomes increasingly “thin” as the zero approaches
the imaginary axis (x ! 0). Thus, for a zero located on the imaginary axis (x = 0) the
ideal sensitivity function is zero at all frequencies, except for a single “spike” at ! = y
where it jumps up to 2. The integral under the curve for S (j! ) 2 thus approaches zero, as
j j
10
0 does the ideal ISE-value in response to a step in the reference, ISE = 4x=(x2 + y 2 ); see
jS j

Section 5.4. This indicates that purely imaginary zeros do not always impose limitations. This
Magnitude

is also confirmed by the flexible structure in Example 2.10, for which the response to an input
−1 disturbance is satisfactory, even though the plant has a pair of imaginary zeros. However,
10
the flexible structure is a rather special case where the plant also has imaginary poles which
counteracts most of the effect of the imaginary zeros. Therefore, in other cases, the presence of
−2
z=2 imaginary zeros may limit achievable performance, for example, in the presence of uncertainty
10 −2 −1 0 1 2 which makes it difficult to place poles in the controller to counteract the zeros.
 1=z
10 10 10 10 10
Frequency
(a) Real RHP-zero
5.6.4 Bandwidth limitation II

y=x =0:1 y=x =10 y=x =50


Another way of deriving a bandwidth limitation is to use the interpolation constraint
0
S (z ) = 1 and consider the bound (5.17) on weighted sensitivity in Theorem 5.3. The idea
10
is to select a form for the performance weight wP (s), and then to derive a bound for the
jS j

“bandwidth parameter” in the weight.


Magnitude

10
−1
y=x =1 j j
As usual, we select 1= wP as an upper bound on the sensitivity function (see Figure 5.1 on
page 165), that is, we require

−2
jS (j!)j < 1=jwP (j!)j 8! , kwP S k1 < 1 (5.30)
10
However, from (5.17) we have that kwP S k1  jwP (z )S (z )j = jwP (z )j, so to be able to
−2 −1 0 1 2

 1=x
10 10 10 10 10
Frequency
(b) Complex pair of RHP-zeros, z = x  jy
satisfy (5.30) we must at least require that the weight satisfies

jwP (z)j < 1 (5.31)


Figure 5.7: “Ideal” sensitivity functions for plants with RHP-zeros

z = x  jy , we get from (5.23) the “ideal” sensitivity


(We say “at least” because condition (5.17) is not an equality). We will now use (5.31) to
For a complex pair of RHP-zeros,
gain insight into the limitations imposed by RHP-zeros; first by considering (A) a weight
function
4xs that requires good performance at low frequencies, and then by (B) considering a weight that
S= (5.28)
(s + x + jy )(s + x jy ) requires good performance at high frequencies.
176 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 177

A. Performance at low frequencies Remark. The result for n !1 in exercise 5.3 is a bit surprising. It says that the bound
!B < z , is independent of the required slope (n) at low frequency and is also independent of
jj
Consider the following performance weight M . This is surprising since from Bode’s integral relationship (5.6) we expect to pay something
for having the sensitivity smaller at low frequencies, so we would expect !B  to be smaller for

wP (s) = s=M + !B (5.32) j
larger n. This illustrates that wP (z )j 1 in (5.31) is a necessary condition on the weight (i.e.
s + !B A it must at least satisfy this condition), but since it is not sufficient it can be optimistic. For the
 (actually, !B is the frequency where the simple weight (5.32), with n = 1, condition (5.31) is not very optimistic (as is confirmed by
From (5.30) it specifies a minimum bandwidth !B other results), but apparently it is optimistic for n large.
straight-line approximation of the weight crosses 1), a maximum peak of jS j less than M , a
steady-state offset less than A < 1, and at frequencies lower than the bandwidth the sensitivity
is required to improve by at least 20 dB/decade (i.e. jS j has slope 1 or larger on a log-log plot). Important. We have so far implicitly assumed that we want tight control at low frequencies,
If the plant has a RHP-zero at s = z , then from (5.31) we must require and we have shown that the presence of a RHP-zero then imposes an upper bound on the
achievable bandwidth. However, if we instead want tight control at high frequencies, then a

jwP (z)j = z=M
+ !B < 1 RHP-zero imposes a lower bound on the bandwidth. This is discussed next.

z + !B A
(5.33)

Real zero. Consider the case when z is real. Then all variables are real and positive and (5.33) B. Performance at high frequencies
is equivalent to
Here, we consider a case where we want tight control at high frequencies, by use of the
!B < z 1 1=M (5.34) performance weight
1 A
wP (s) = 1 + s (5.37)
For example, with A = 0 (no steady-state offset) and M = 2 (kS k1 < 2) we must at least M !B
 < 0:5z , which is consistent with the requirement !B < 0:5z in (5.27).
require !B 
This requires tight control (jS (j! )j < 1) at frequencies higher than !B , whereas the only
requirement at low frequencies is that the peak of jS j is less than M . Admittedly, the weight
Imaginary zero. For a RHP-zero on the imaginary axis, z = j jz j, a similar derivation yields
in (5.37) is unrealistic in that it requires S ! 0 at high frequencies, but this does not affect
with A = 0:
r the result as is confirmed in Exercise 5.5 where a more realistic weight is studied. In any case,
!B < jz j 1
1 k k j
to satisfy wP S 1 < 1 we must at least require that the weight satisfies wP (z ) < 1, andj
M2
(5.35)
with a real RHP-zero we derive for the weight in (5.37)
For example, with M = 2 we require !B  < 0:86jz j, which is very similar to the requirement
!B < jz j given in (5.29). The next two exercises show that the bound on !B does not depend !B > z 1 (5.38)
much on the slope of the weight at low frequencies, or on how the weight behaves at high
1 1=M
frequencies.
For example, with M = 2 the requirement is !B  > 2z , so we can only achieve tight control
at frequencies beyond the frequency of the RHP-zero.
Exercise 5.2 Consider the weight
  Exercise 5.4 Draw an asymptotic magnitude Bode-plot of wP (s) in (5.37).
wP (s) = s + M!B s + fM! B
s + fM 2 !B
(5.36)
s
Exercise 5.5 Consider the case of a plant with a RHP-zero where we want to limit the
with f > 1. This is the same weight as (5.32) with A = 0 except that it approaches 1 at high sensitivity function over some frequency range. To this effect let
frequencies, and f gives the frequency range over which we allow a peak. Plot the weight for
f = 10 and M = 2. Derive an upper bound on !B for the case with f = 10 and M = 2. (1000s=!B + M1 )(s=(M!B ) + 1)
wP (s) =
(10s=!B + 1)(100s=!B + 1)
(5.39)

1 + ( !B )n which requires jS j to have a slope


Exercise 5.3 Consider the weight wP (s) = M This weight is equal to 1=M at low and high frequencies, has a maximum value of about 10=M
s .
of n at low frequencies and requires its low-frequency asymptote to cross 1 at a frequency !B at intermediate frequencies, and the asymptote crosses 1 at frequencies !B =1000 and !B .
  = !B =1000
Note that n = 1 yields the weight (5.32) with A = 0. Derive an upper bound on !B when the
 z as n j j
Thus we require “tight” control, S < 1, in the frequency range between !BL
plant has a RHP-zero at z . Show that the bound becomes !B j j !1 . and !BH = !B .
178 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 179

j j
a) Make a sketch of 1= wP (which provides an upper bound on jS j). Note that G(s) 
1 at low frequencies (! z ), whereas G(s)  
1 at high frequencies
b) Show that the RHP-zero cannot be in the frequency range where we require tight control, (!  z ). The negative plant gain in the latter case explains why we then use positive feedback
and that we can achieve tight control either at frequencies below about z=2 (the usual case) or in order to achieve tight control at high frequencies.
 = kz ,
above about 2z . To see this select M = 2 and evaluate wP (z ) for various values of !B More precisely, we show in the figures the sensitivity function and the time response to a step
e.g. k = :1; :5; 1; 10; 100; 1000; 2000; 10000. (You will find that wP (z ) = 0:95 ( 1) for
 < z=2) and for k = 2000 (corresponding
 change in the reference using
k = 0:5 (corresponding to the requirement !BH
to the requirement !BL > 2z )) 1. PI-control with negative feedback (Figure 5.8)
2. Derivative control with positive feedback (Figure 5.9).

Note that the time scales for the simulations are different. For positive feedback the step change
5.6.5 RHP-zero: Limitations at low or high frequencies in reference only has a duration of 0:1 s. This is because we cannot track references over
longer times than this since the RHP-zero then causes the output to start drifting away (as can
Based on (5.34) and (5.38) we see that a RHP-zero will pose control limitations either at low be seen in Figure 5.9(b)).
or high frequencies. In most cases we desire tight control at low frequencies, and with a RHP-
zero this may be achieved at frequencies lower than about z=2. However, if we do not need
tight control at low frequencies, then we may usually reverse the sign of the controller gain,
and instead achieve tight control at frequencies higher than about 2z . 10
1

Kc =0:9 Setpoint
1 Kc =0:9
Kc =0:5
Remark. The reversal of the sign in the controller is probably best understood by considering
Kc =0:5

jS j
the inverse response behaviour of a plant with a RHP-zero. Normally, we want tight control at 0

Magnitude
low frequencies, and the sign of the controller is based on the steady-state gain of the plant. 10

y(t)
0.5
Kc =0:1
Kc =0:1
However, if we instead want tight control at high frequencies (and have no requirements at
low frequencies) then we base the controller design on the plants initial response where the
gain is reversed because of the inverse response. 10
−1 0

−2 0 2
10 10 10 0 0.05 0.1
1
Frequency [rad/s] Time
10
Kc =0:8 2
Kc =0:8 (a) Sensitivity function (b) Response to step in reference
Kc =0:5 Setpoint
Kc =0:5
1
jS j

Kc =0:2 Figure 5.9: Control of plant with RHP-zero at z = 1 using positive feedback.
0
Kc =0:2
10
G(s) = ss+1+1 , K2 (s) = Kc s
Magnitude

(0:05s+1)(0:02s+1)
y(t)

0
−1
10
−1 An important case, where we can only achieve tight control at high frequencies, is
characterized by plants with a zero at the origin, for example G(s) = s=(5s + 1). In this
−2 case, good transient control is possible, but the control has no effect at steady-state. The only
10 −2 0 2 −2
10 10 10 0 1 2 3 4 way to achieve tight control at low frequencies is to use an additional actuator (input) as is
Frequency [rad/s] Time often done in practice.
(a) Sensitivity function (b) Response to step in reference Short-term control. In this book, we generally assume that the system behaviour as t !1
is important. However, this is not true in some cases because the system may only be under
Figure 5.8: Control of plant with RHP-zero at z = 1 using negative feedback closed-loop control for a finite time tf . In which case, the presence of a “slow” RHP-zero
G(s) = ss+1+1 , K1 (s) = Kc s+1 1 jj
(with z small), may not be significant provided tf  jj
1= z . For example, in Figure 5.9(b) if
s 0:05s+1
the total control time is tf = 0:01 [s], then the RHP-zero at z = 1 [rad/s] is insignificant.

Example 5.1 To illustrate this, consider in Figures 5.8 and 5.9 the use of negative and positive
Remark. As an example of short-term control, consider treating a patient with some
medication. Let u be the dosage of medication and y the condition of the patient. With most
feedback for the plant
G(s) = s + z ; z = 1 (5.40)
s+z medications we find that in the short-term the treatment has a positive effect, whereas in the
180 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 181

long-term the treatment has a negative effect (due to side effects which may eventually lead to For example, if we know that we should be at work at 8:00, and we know that it takes 30 min
death). However, this inverse-response behaviour (characteristic of a plant with a RHP-zero) to get to work, then we make a prediction and leave home at 7:30 (We don’t wait until 8:00
may be largely neglected during limited treatment, although one may find that the dosage has when we suddenly are told, by the appearance of a step change in our reference position, that
to be increased during the treatment to have the desired effect. Interestingly, the last point we should be at work).
is illustrated by the upper left curve in Figure 5.10, which shows the input u(t) using an RHP-zero. Future knowledge can also be used to give perfect control in the presence of a
internally unstable controller which over some finite time may eliminate the effect of the RHP-zero. As an example, consider a plant with a real RHP-zero given by
RHP-zero.
G(s) = s + z ; z > 0 (5.41)
Exercise 5.6 (a) Plot the plant input u(t) corresponding to Figure 5.9 and discuss in light of s+z
the above remark. and a desired reference change

(b) In the simulations in Figures 5.8 and 5.9, we use simple PI- and derivative controllers. 0 t<0
H
As an alternative use the S=KS method in (3.59) to synthesize 1 controllers for both the r(t) = 1 t0
negative and positive feedback cases. Use performance weights in the form given by (5.32) and
(5.37), respectively. With !B = 1000 and M = 2 in (5.37) and wu = 1 (for the weight on With a feedforward controller Kr the response from r to y is y = G(s)Kr (s)r. In theory
KS ) you will find that the time response is quite similar to that in Figure 5.9 with Kc = 0:5. we may achieve perfect control (y(t)=r(t)) with the following two controllers (e.g. Eaton and
Try to improve the response, for example, by letting the weight have a steeper slope at the Rawlings (1992)).
crossover near the RHP-zero.
Input: unstable controller Output: unstable controller
0 1

5.6.6 LHP-zeros −5 0

Zeros in the left-half plane, usually corresponding to “overshoots” in the time response, do not −10 −1
present a fundamental limitation on control, but in practice a LHP-zero located close to the −5 0 5 −5 0 5
origin may cause problems. First, one may encounter problems with input constraints at low Input: non-causal controller Output: non-causal controller
frequencies (because the steady-state gain is small). Second, a simple controller can probably 2 1
not then be used. For example, a simple PID controller as in (5.66) contains no adjustable
1 0
poles that can be used to counteract the effect of a LHP-zero.
For uncertain plants, zeros can cross from the LHP into the RHP both through zero (which 0 −1
−5 0 5 −5 0 5
is worst if we want tight control at low frequencies) or through infinity. We discuss this in
Chapter 7. Input: stable causal controller Output: stable causal controller
2 1

1 0

5.7 RHP-zeros amd non-causal controllers 0


−5 0 5
−1
−5 0 5
Time [sec] Time [sec]
Perfect control can actually be achieved for a plant with a time delay or RHP-zero if we use a
non-causal controller1 , i.e. a controller which uses information about the future. This may be Figure 5.10: Feedforward control of plant with RHP-zero
relevant for certain servo problems, e.g. in robotics and for product changeovers in chemical
plants. A brief discussion is given here, but non-causal controllers are not considered in the
1. A causal unstable feedback controller
rest of the book since our focus is on feedback control.
Time delay. For a delay e s we may achieve perfect control with a non-causal feedforward
Kr (s) = s + z
controller Kr = es (a prediction). Such a controller may be used if we have knowledge about s+z
future changes in r(t) or d(t). For a step in r from 0 to 1 at t = 0, this controller generates the following input signal

1 A system is causal if its outputs depend only on past inputs, and non-causal if its outputs also depend 0 t<0
on future inputs. u(t) = 1 2ezt t  0
182 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 183

However, since the controller cancels the RHP-zero in the plant it yields an internally For example, for the plant G(s) = 1=(s 3) we have Gs = 1=(s + 3) and the lower
unstable system. bound on the peak of KS is Gs (p) 1 = 3 + 3 = 6.
j j
2. A stable non-causal (feedforward) controller that assumes that the future setpoint change Since u = KS (Gd d + n), the bounds (5.42) and (5.43) imply that stabilization may
is known. This controller cannot be represented in the usual transfer function form, but it be impossible in presence of disturbances d or measurement noise n, since the required
will generate the following input inputs u may be outside the saturation limit. When the inputs saturate, the system is

2ezt t < 0
practically open-loop and stabilization is impossible; see Section 5.11.3 page 191.
u(t) = 1 t0 Example 5.2 Consider a plant with G(s) = 5=(10s + 1)(s 3) and Gd = 0:5=(s
3)(0:2s + 1). Using (5.44) we may easily generalize (5.42),
These input signals u(t) and the corresponding outputs y (t) are shown in Figure 5.10 for
a plant with z = 1. Note that for perfect control the non-causal controller needs to start
kKSGd k1  jGs (p) 1 Gd;ms (p)j (5.43)
changing the input at t = 1
, but for practical reasons we started the simulation at t = 5 This gives
where u(t) = 2e 5 = 0:013.
The first option, the unstable controller, is not acceptable as it yields an internally unstable kKSGd k1  10s + 1)(
5
s + 3) 0:5 j = 31  0:5 = 1:94
(s + 3)(0:2s + 1) s=3 5  1:6
system in which u(t) goes to infinity as t increases (an exception may be if we want to control
the system only over a limited time tf ; see page 179). RHP-pole Limitation 2 (bandwidth). We need to react sufficiently fast, and for a real RHP-
pole p we must require that the closed-loop bandwidth is larger than 2p, approximately.
The second option, the non-causal controller, is usually not possible because future setpoint We derive thos from the bound wT T 1k k j j
wT (p) in (5.19). Thus, whereas the
changes are unknown. However, if we have such information, it is certainly beneficial for presence of RHP-zeros usually places an upper bound on the allowed bandwidth, the
plants with RHP-zeros. presence of RHP-poles generally imposes a lower bound.
3. In most cases we have to accept the poor performance resulting from the RHP-zero and In summary, whereas RHP-zeros imposes limitation on the plant outputs, RHP-poles mainly
use a stable causal controller. The ideal causal feedforward controller in terms of impose limitations on the plant inputs.
H
minimizing the ISE ( 2 norm) of y (t) for the plant in (5.41) is to use Kr = 1, and
the corresponding plant input and output responses are shown in the lower plots in Proof of Limitation 1 (input usage): We will first prove the following generalized bound (Havre
Figure 5.10. and Skogestad, 1997)(Havre and Skogestad, 2001)

Theorem 5.4 Let V T be a (weighted) closed-loop transfer function where T is


complementary sensitivity. Then for closed-loop stability we must require for each RHP-pole
5.8 Limitations imposed by unstable (RHP) poles p in G,
Nz
k k j
V T 1 Vms (p)
Y
j j
zj + p j
We here consider the limitations imposed when the plant has a unstable (RHP) pole at s = p. j =1 j zj p j (5.44)

For example, the plant G(s) = 1=(s 3) has a RHP-pole with p = 3.


where zj denote the (possible) Nz RHP-zeros of G, and where Vms is the “minimum-phase
For unstable plants we need feedback for stabilization. More precicely, the presence of an and stable version” of V with its (possible) RHP-poles and RHP-zeros mirrored into the LHP.
ustable pole p requires for internal stability T (p) = 1 , which again imposes the following k k j
(If G has no RHP-zeros the the bound is simply V T 1 j
Vms (p) .) The bound (5.44) is
two limitations: tight (equality) for the case when G has only one RHP-pole.

RHP-pole Limitation 1 (input usage). Most importantly, we need to manipulate the plant G has RHP-zerosQat zj , and therefore T must have RHP-zeros at zj , so write T = Ta Tm
s zj
inputs u, and the transfer function KS from plant outputs to plant inputs must always with Ta (s) = j s+zj . Next, note that kV T k1 = kVms Tms k1 = kVms Tm k1 .
satisfy (Havre and Skogestad, 1997)(Havre and Skogestad, 2001) Consider a RHP-pole located at p, and use the maximum modulus principle, kV T k1 

kKS k1  jGs (p) 1 j (5.42)


jVms (p)Tm (p)j = jVms (p)T (p)Ta(p) 1 j == jVms (p)  1  Qj pp+zzjj j which proves (5.44).
To prove (5.42) we make use of the identity KS = G 1 GKS = G 1 T . Use of (5.44) with
where Gs is the “stable version” of G with its RHP-poles mirrored into the LHP, V = G 1 then gives
kKS k1  jGms (p) 1 j  jjzzjj + ppjj = jGs (p) 1j
Y s + pi Y
G(s) = Gs (s) 
i s pi j
184 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 185

which proves (5.42). Here the latter equality follows since jj


For a purely imaginary pole located at p = j p a similar analysis of the weight (5.45) with
 > 1:15 p .
Y s zj MT = 2, shows that we must at least require !BT jj
Gs (s) = Gms (s)  2
j s + zj
2 
Exercise 5.7 Derive the bound !BT > 1:15jpj for a purely complex pole.
Proof of Limitation 2 (bandwidth):

5.9 Combined unstable (RHP) poles and zeros


MT

!BT Stabilization. In theory, any linear plant may be stabilized irrespective of the location of
Magnitude

0 its RHP-poles and RHP-zeros, provided the plant does not contain unstable hidden modes.
1=jwT j
10
However, this may require an unstable controller, and for practical purposes it is sometimes
desirable that the controller is stable. If such a controller exists the plant is said to be strongly
jT j stabilizable. It has been proved by Youla et al. (1974) that a strictly proper SISO plant is
strongly stabilizable by a proper controller if and only if every real RHP-zero in G(s) lies to
−1
the left of an even number (including zero) of real RHP-poles in G(s). Note that the presence
10 of any complex RHP-poles or complex RHP-zeros does not affect this result. We then have:
Frequency [rad/s]
 A strictly proper plant with a single real RHP-zero z and a single real RHP-pole p, e.g.
G(s) = (s ps)(sz
+1) , can be stabilized by a stable proper controller if and only if z > p.
Figure 5.11: Typical complementary sensitivity, jT j, with upper bound 1=jwT j
Note the requirement that G(s) is strictly proper. For example, the plant G(s) = (s
We start by selecting a weight wT (s) such that 1=jwT j is a reasonable upper bound on the 1)=(s 2) with z = 1 < p = 2 is stabilized with a stable constant gain controller with
complementary sensitivity function. 2 < K < 1, but this plant is not strictly proper.
jT (j!)j < 1=jwT (j!)j 8! , kwT T k1 < 1 In summary, the presence of RHP-zeros (or time delays) make stabilzation more difficult. In
words, “the system may go unstable before we have time to react”. For a plant with a single
To satisfy this we must, since from (5.19) kwT T k1  jwT (p)j, at least require that the RHP-pole and RHP-zero, the strong stabilizability requirement is z > p.
weight satisfies jwT (p)j < 1 Now consider the following weight However, in order to achieve acceptable performance and robustness, the RHP-zero must be
located a bit further away from the RHP-pole. Above we derived for a real RHP-zero the
wT (s) = s + 1 (5.45) approximate bound !B < z=2 (with MS = 2), and for a real RHP-pole the approximate
!BT MT bound !c > 2p (with MT = 2). This indicates that for a system with a single real RHP-pole
j j
which requires T (like L ) to have a roll-off rate of at least 1 at high frequencies (which must and a RHP-zero we must approximately require z > 4p in order to get acceptable performance
j j j j
be satisfied for any real system), that T is less than MT at low frequencies, and that T drops and robustness. The following example for a plant with z = 4p shows that we can indeed get
below 1 at frequency !BT  . The requirements on T are shown graphically in Figure 5.11.
j j acceptable performance when the RHP-pole and zero are located this close.

For a real RHP-pole at s = p condition wT (p) < 1 yields


H
Example 5.3 1 design for plant with RHP-pole and RHP-zero. We want to design an
Real RHP pole: !BT  > p MT (5.46)
H1 controller for a plant with z = 4 and p = 1,
MT 1 s 4
 > 2p
MT = 2 (reasonable robustness) this gives !BT G(s) = (5.48)
With which proves the above (s 1)(0:1s + 1)
bandwidth requirement. Thus, the presence of the RHP-pole puts a lower limit on the
bandwidth in terms of T ; that is, we cannot let the system roll-off at frequencies lower than We use the S=KS design method as in Example 2.11 with input weight Wu = 1 and
performance weight (5.32) with A=0, M = 2, !B  = 1. The software gives a stable and
about 2p, and we have approximately
H
minimum phase controller with an 1 norm of 1:89. The corresponding sensitivity and
!c > 2p (5.47) complementary sensitivity functions, and the time response to a unit step reference change
186 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 187

If one is measuring y1 (looking at the far end of the rod) then achieving this bandwidth is the
2 main requirement. However, pif one tries to balance the rod by looking at one’s hand (y2 ) there
jT j y (t) is also a RHP-zero at z = gl . If the mass of the rod is small (m=M is small), then p is close
to z and stabilization is in practice impossible with any controller. However, even with a large
0
10 1
u(t) mass, stabilization is very difficult because p > z whereas we would normally prefer to have
Magnitude

the RHP-zero far from the origin and the RHP-pole close to the origin (z > p). So although
10
−1 jS j 0
in theory the rod may be stabilized by looking at one’s hand (G2 ), it seems doubtful that this
−1 is possible for a human. To quantify these problems use (5.49). We get
r
c = jz + pj = j1 + j ; =
−2
p z M +m
10
10
−2
10
0
10
2 −2
0 1 2 3 4
jz pj j1 j M
Consider a light weight rod with m=M = 0:1, for which we expect stabilization to be difficult.
Frequency [rad/s] Time [sec]
(a) jS j and jT j (b) Response to step in reference We obtain c = 42, and we must have kS k1  42 and kT k1  42, so poor control
performance is inevitable if we try to balance the rod by looking at our hand (y2 ).
Figure 5.12: H1 design for a plant with RHP-zero at z = 4 and RHP-pole at p = 1 The difference between the two cases, measuring y1 and measuring y2 , highlights the
importance of sensor location on the achievable performance of control.

are shown in Figure 5.12. The time response is good, taking into account the closeness of the
RHP-pole and zero.

Sensitivity peaks. In Theorem 5.3 we derived lower bounds on the weighted sensitivity and 5.10 Performance requirements imposed by
complementary sensitivity. For example, for a plant with a single real RHP-pole p and a single
real RHP-zero z , we always have
disturbances and commands

kS k1  c; kT k1  c; c = jjzz + ppjj (5.49)


The question we here want to answer is: how fast must the control system be in order to
reject disturbances and track commands of a given magnitude? We find that some plants have
better “built-in” disturbance rejection capabilities than others. This may be analyzed directly
by considering the appropriately scaled disturbance model, Gd (s). Similarly, for tracking we
Example 5.4 Consider the plant in (5.48). With z = 4p, (5.49) gives c = 5=3 = 1:67 and it may consider the magnitude R of the reference change.
k k
follows that for any controller we must at least have S 1 > 1:67 and T 1 > 1:67. The k k Disturbance rejection. Consider a single disturbance d and assume that the reference is
actual peak values for the above S=KS -design are 2:40 and 2:43, respectively.
constant, i.e. r = 0. Without control the steady-state sinusoidal response is e(! ) =
Gd (j! )d(! ); recall (2.9). If the variables have been scaled as outlined in Section 1.4 then
Example 5.5 Balancing a rod. This example is taken from Doyle et al. (1992) Consider the j j
the worst-case disturbance at any frequency is d(t) = sin !t, i.e. d(! ) = 1, and the control
problem of balancing a rod in the palm of one’s hand. The objective is to keep the rod upright, j j j j
objective is that at each frequency e(t) < 1, i.e. e(! ) < 1. From this we can immediately
by small hand movements, based on observing the rod either at its far end (output y1 ) or the conclude that
end in one’s hand (output y2 ). The linearized transfer functions for the two cases are
 no control is needed if jGd (j!)j < 1 at all frequencies (in which case the plant is said to
G1 (s) = 2 g ; G2 (s) = 2
ls2 g be “self-regulated”).
s (Mls2 (M + m)g ) 2
s (Mls (M + m)g )
j j
If Gd (j! ) > 1 at some frequency, then we need control (feedforward or feedback). In the
Here l [m] is the length of the rod and m [kg] its mass. M [kg] is the mass of your hand and following, we consider feedback control, in which case we have
g [ 10 m/s2 ] is the acceleration due q
 to gravity. In both cases, the plant has three unstable
e(s) = S (s)Gd (s)d(s)
poles: two at the origin and one at p = (MMl +m)g . A short rod with a large mass gives a large (5.50)

value of p, and this in turn means that the system is more difficult to stabilize. For example, The performance requirement je(!)j < 1 for any jd(!)j  1 at any frequency, is satisfied if
with M = m and l = 1 [m] we get p = 4:5 [rad/s] and from (5.47) we desire a bandwidth of and only if
about 9 [rad/s] (corresponding to a response time of about 0:1 [s]). jSGd (j!)j < 1 8! , kSGd k1 < 1 (5.51)
188 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 189

, jS (j!)j < 1=jGd (j!)j 8! (5.52) a slope 1 around crossover, the overall loop transfer function L(s) = L1 (s)L2 (s) 
Ln (s)
has a slope of about n; see the example for more details. This is a case where stability
A typical plot of 1=jGd (j! )j is shown in Figure 5.13 (dotted line). If the plant has a RHP-zero Q is
determined by each I + Li separately, but the benefits of feedback are determined by 1+ i Li
at s = z , which fixes S (z ) = 1, then using (5.17) we have the following necessary condition
for satisfying SGd 1 < 1: k k (also see Horowitz (1991, p. 284) who refers to lectures by Bode).

Gd (z ) < 1 j j (5.53)
Command tracking. Assume there are no disturbances, i.e. d = 0, and consider a reference
From (5.52) we also get that the frequency !d where jGd j crosses 1 from above yields a lower change r(t) = Rre(t) = R sin(!t). Since e = Gu + Gd d Rre, the same performance
bound on the bandwidth:
requirement as found for disturbances, see (5.51), applies to command tracking with Gd
!B > !d where !d is de ned by jGd (j!d )j = 1 (5.54) j j
replaced by R. Thus for acceptable control ( e(! ) < 1) we must have

j j
A plant with a small Gd or a small !d is preferable since the need for feedback control is then jS (j!)Rj < 1 8!  !r (5.55)
less, or alternatively, given a feedback controller (which fixes S ) the effect of disturbances on
the output is less. where !r is the frequency up to which performance tracking is required.

Remark. The bandwidth requirement imposed by (5.55) depends on on how sharply S (j! ) j j
!d j j
increases in the frequency range from !r (where S < 1=R) to !B (where S j j
1). If S j j
0 increases with a slope of 1 then the approximate bandwidth requirement becomes !B > R!r ,
p
j j
10
and if S increases with a slope of 2 it becomes !B > R!r .
Magnitude

−1 1=jGd j
10
jS j
5.11 Limitations imposed by input constraints
−2
10
Frequency [rad/s] In all physical systems there are limits to the changes that can be made to the manipulated
variables. In this section, we assume that the model has been scaled as outlined in Section 1.4,
Figure 5.13: Typical performance requirement on S imposed by disturbance rejection so that at any time we must have u(t) j j 1. The question we want to answer is: can the
expected disturbances be rejected and can we track the reference changes while maintaining
ju(t)j 1? We will consider separately the two cases of perfect control (e = 0) and
Example 5.6 Assume that the disturbance model is Gd (s) = kd =(1 + d s) where kd = 10 jj
acceptable control ( e < 1). These results apply to both feedback and feedforward control.
and d = 100 [seconds]. Scaling has been applied to Gd so this means that without feedback,
the effect of disturbances on the outputs at low frequencies is kd = 10 times larger than we At the end of the section we consider the additional problems encountered for unstable plants
j j
desire. Thus feedback is required, and since Gd crosses 1 at a frequency !d kd =d = 0:1  (where feedback control is required).
rad/s, the minimum bandwidth requirement for disturbance rejection is !B > 0:1 [rad/s].
Remark 1 We use a frequency-by-frequency analysis and assume that at each frequency
Remark. Gd is of high order. The actual bandwidth requirement imposed by disturbances j j
d(! ) j
1 (or re(! ) j j j
1). The worst-case disturbance at each frequency is d(! ) = 1
j j
may be higher than !d if Gd (j! ) drops with a slope steeper than 1 (on a log-log plot) just j j
and the worst-case reference is r = Rre with re(! ) = 1.
before the frequency !d . The reason for this is that we must, in addition to satisfying (5.52),
Remark 2 Note that rate limitations, jdu=dtj  1, may also be handled by our analysis. This
also ensure stability with reasonable margins; so as discussed in Section 2.6.2 we cannot let
j j
the slope of L(j! ) around crossover be much larger than 1.
is done by considering du=dt as the plant input by including a term 1=s in the plant model
G(s).
An example, in which Gd (s) is of high order, is given later in Section 5.16.3 for a
neutralization process. There we actually overcome the limitation on the slope of L(j! ) j j Remark 3 Below we require u j j < 1 rather than juj  1. This has no practical effect, and is
around crossover by using local feedback loops in series. We find that, although each loop has used to simplify the presentation.
190 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 191

5.11.1 Inputs for perfect control 5.11.2 Inputs for acceptable control
From (5.3) the input required to achieve perfect control (e = 0) is For simplicity above, we assumed perfect control. However, perfect control is never really

u = G 1 r G 1 Gd d
required, especially not at high frequencies, and the input magnitude required for acceptable
(5.56) j j
control (namely e(j! ) < 1) is somewhat smaller. For disturbance rejection we must then
= 0 and jd(! )j = 1 the requirement ju(! )j < 1 is equivalent
require
Disturbance rejection. With r
to
j j j j
G > Gd 1 at frequencies where Gd > 1 j j (5.59)
jG 1 (j!)Gd (j!)j < 1 8! (5.57)
j j
Proof: Consider a “worst-case” disturbance with d(! ) = 1: The control error is e = y =
In other words, to achieve perfect control and avoid input saturation we need G > Gd at j j j j j j
Gu + Gd d. Thus at frequencies where Gd (j! ) > 1 the smallest input needed to reduce
all frequencies. (However, as is discussed below, we do not really need control at frequencies j j
the error to e(! ) = 1 is found when u(! ) is chosen such that the complex vectors Gu and
j j
where Gd < 1.) jj j j j j jj
Gd d have opposite directions. That is, e = 1 = Gd d Gu , and with d = 1 we get
Command tracking. Next let d = 0 and consider the worst-case reference command which u = G 1 ( Gd 1), and the result follows by requiring u < 1.
jj j jj j jj 2
j j
is r(! ) = R at all frequencies up to !r . To keep the inputs within their constraints we must
then require from (5.56) that Similarly, to achieve acceptable control for command tracking we must require

jG 1 (j!)Rj < 1 8!  !r (5.58) jGj > jRj 1<1 8!  !r (5.60)

In other words, to avoid input saturation we need jGj > R at all frequencies where perfect jj
In summary, if we want “acceptable control” ( e < 1) rather than “perfect control” (e = 0),
command tracking is required. j j
then Gd in (5.57) should be replaced by Gd j j 1, and similarly, R in (5.58) should be
j j
replaced by R 1. The differences are clearly small at frequencies where Gd and R are j j
Example 5.7 Consider a process with much larger than 1.
The requirements given by (5.59) and (5.60) are restrictions imposed on the plant design in
G(s) = 40
; Gd (s) = 3 50s + 1 order to avoid input constraints and they apply to any controller (feedback or feedforward
(5s + 1)(2:5s + 1) (10 + 1)(s + 1) control). If these bounds are violated at some frequency then performance will not be
j j j j j j
From Figure 5.14 we see that G < Gd for ! > !1 , and Gd < 1 for ! > !d . Thus, j j
satisfactory (i.e, e(! ) > 1) for a worst-case disturbance or reference occurring at this
condition (5.57) is not satisfied for ! > !1 . However, for frequencies ! > !d we do not frequency.
really need control. Thus, in practice, we expect that disturbances in the frequency range
between !1 and !d may cause input saturation.
5.11.3 Unstable plant and input constraints
Feedback control is required to stabilize an unstable plant. However, input constraints
2
10 combined with large disturbances may make stabilization difficult. Specially, from (5.43) we
must for an unstable plant with a real RHP-pole at s = p require
jGj
1
jGs (p)j > jGd;ms (p)j (5.61)
Magnitude

10

jGd j Otherwise, the input will saturate when there is a sinusoidal disturbance d(t) = sin !t, and
10
0
we may not be able to stabilize the plant. Note that this bound must be satisfied also when
j 
Gd;ms i 1.
−1
!1 !d
10 −1 0 1 2
Example 5.8 Consider
10 10 10 10
Frequency [rad/s]
G(s) = 5
; Gd (s) = kd ; kd < 1 (5.62)
(10s + 1)(s 1) (s + 1)(0:2s + 1)
Figure 5.14: Input saturation is expected for disturbances at intermediate frequencies from !1
to !d Since kd < 1 and the performance objective is jej < 1, we do not really need control for
disturbance rejection, but feedback control is required for stabilization, since the plant has
192 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 193

a RHP-pole at p = 1. We have G > Gd (i.e. G 1 Gd < 1) for frequencies lower than


j j j j j j 5.12 Limitations imposed by phase lag
0:5=kd , see Figure 5.15(a). so from (??) we do not expect problems with input constraints at
low frequencies. However, at frequencies higher than we have G < Gd and from (??) we j j j j We already know that phase lag from RHP-zeros and time delays is a fundamental problem,
may must require 0:5=kd > p, i.e. kd < 0:5 to avoid problems with input saturation. This
but are there any limitations imposed by the phase lag resulting from minimum-phase
value is confirmed by the exact bound in (5.61). We get
elements? The answer is both no and yes: No, there are no fundamental limitations, but Yes,
there are often limitations on practical designs.
Gs (1) = 5
j = 0:227; Gd;ms (1) = (s + 1)(0kd:2s + 1) js=1 = 0:417kd
(10s + 1)(s + 1) s=1 As an example, consider a minimum-phase plant of the form

k k
j j
and the requirement Gs (p) > Gd;ms (p) gives kd j j < 0:54 to avoid input saturation of G(s) =
(1 + 1 s)(1 + 2 s)(1 + 3 s)   
= Qn
i=1 (1 + i s)
(5.64)
sinusoidal disturbances of unit magnitude.
where n is three or larger. At high frequencies the gain drops sharply with frequency,
jG(j!)j  (k= Q i )! n . From condition (5.57), it is therefore likely (at least if k is small)
1 that we encounter problems with input saturation. Otherwise, the presence of high-order lags
10
u(t) does not present any fundamental limitations.
0
jGj 1
Unconstrained: However, in practice a large phase lag at high frequencies, e.g. G(j! ) \ ! n 90Æ for

the plant in (5.64), poses a problem (independent of K ) even when input saturation is not an
10
Magnitude

0.5 Constrained:

jGd j 0 issue. This is because for stability we need a positive phase margin, i.e. the phase of L = GK
−1 must be larger than 180Æ at the gain crossover frequency !c . That is, for stability we need
y(t)
10 −0.5
!c < !180 ; see (2.27).
p In principle, !180 (the frequency at which the phase lag around the loop is 180Æ ) is not
−1
−2
10 −1.5 directly related to phase lag in the plant, but in most practical cases there is a close relationship.
Define !u as the frequency where the phase lag in the plant G is 180Æ , i.e.
−2 0
10 10 0 5 10
Frequency [rad/s] Time [sec]
(a) G and Gd with kd = 0:5 (b) Response to step in disturbance (kd = \G(j!u ) , 180Æ
05
:)

Figure 5.15: Instability caused by input saturation for unstable plant Note that !u depends only on the plant model. Then, with a proportional controller we have
that !180 = !u , and with a PI-controller !180 < !u . Thus with these two simple controllers
a phase lag in the plant does pose a fundamental limitation:
To check this for a particular case we select kd = 0:5 and use the controller
Stability bound for P- or PI-control: !c < !u (5.65)
2
K (s) = 0:04 (10s + 1) 2 (5.63)
s (0:1s + 1) Note that this is a strict bound to get stability, and for performance (phase and gain margin)
we typically need !c less than bout 0:5!u .
which without constraints yields a stable closed-loop system with a gain crossover frequency, If we want to extend the gain crossover frequency !c beyond !u , we must place zeros in the
!c , of about 1:7. The closed-loop response to a unit step disturbance occurring after 1 second controller (e.g. “derivative action”) to provide phase lead which counteracts the negative phase
is shown in Figure 5.15(b). The stable closed-loop respons when there is no input constraint in the plant. A commonly used controller is the PID controller which has a maximum phase
is shown by the dashed line. However, we note that the input signal exceeds 1 for a short time, lead of 90Æ at high frequencies. In practice, the maximum phase lead is smaller than 90Æ . For
and when u is constrained to be within the interval [ 1; 1] we find indeed that the system is example, an industrial cascade PID controller typically has derivative action over only one
unstable (solid lines). decade,
K (s) = Kc I s + 1 D s + 1 (5.66)
I s 0:1D s + 1
For unstable plants, reference changes can also drive the system into input saturation and and the maximum phase lead is 55 (which is the maximum phase lead of the term 0:1DD+1
Æ  s
s+1 ).
instability. But in contrast to disturbance changes and measurement noise, one then has the This is also a reasonable value for the phase margin, so for performance we approximately
option to use a two degrees-of-freedom controller to filter the reference signal and thus reduce require
the magnitude of the manipulated input. Practical performance bound (PID control): !c < !u (5.67)
194 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 195

We stress again that plant phase lag does not pose a fundamental limitation if a more complex model error in G=Gd is less than 1= G0d . This requirement is clearly very difficult to satisfy
j j
controller is used. Specifically, if the model is known exactly and there are no RHP-zeros or at frequencies where G0d is much larger than 1, and this motivates the need for feedback
j j
time delays, then one may in theory extend !c to infinite frequency. For example, one may control.
simply invert the plant model by placing zeros in the controller at the plant poles, and then let
the controller roll off at high frequencies beyond the dynamics of the plant. However, in many Example 5.9 Consider a case with
practical cases the bound in (5.67) applies because we may want to use a simple controller,
and also because uncertainty about the plant model often makes it difficult to place controller
G = 300 ; Gd = 100
zeros which counteract the plant poles at high frequencies. 10s + 1 10s + 1
Nominally, the perfect feedfeedforward controller u = G 1 d gives perfect control y = 0.
Remark. The relative order (relative degree) of the plant is sometimes used as an input-output
Now apply this feedforward controller to the actual process where the gains have changed by
controllability measure (e.g. Daoutidis and Kravaris, 1992). The relative order may be defined
also for nonlinear plants, and it corresponds for linear plants to the pole excess of G(s). For
10
a minimum-phase plant the phase lag at infinite frequency is the relative order times 90Æ . G = 330 ; Gd = 90
10s + 1 10s + 1
Of course, we want the inputs to directly affect the outputs, so we want the relative order
From (5.70) the response in this case is
to be small. However, the practical usefulness of the relative order is rather limited since it
 0 0 
only gives information at infinite frequency. The phase lag of G(s) as a function of frequency,
including the value of !u , provides much more information. y 0 = G =Gd 1 G0d d = 0:22G0d =
20
d
G=Gd 10s + 1
Thus, for a step disturbance d of magnitude 1, the output y will approach 20 (much larger
than 1), and feedback control is required to keep the output less than 1. (Feedback will hardly
5.13 Limitations imposed by uncertainty be affected by the above error as is discussed next The minimum bandwidth requirement with

feedback only is !d 100=10 = 10, and with also feedforward about 2=10 = 2).

The presence of uncertainty requires us to use feedback control rather than just feedforward
control. The main objective of this section is to gain more insight into this statement. A further Note that if the uncertainty is sufficiently large, such that the relative error in G=Gd is larger
discussion is given in Section 6.10, where we consider MIMO systems. than 1, then feedforward control may actually make control worse. This may quite easily
happen in practice, for example, if the gain in G in increased by 50% and the gain in Gd is
reduced by 50%.
5.13.1 Feedforward control
Consider a plant with the nominal model y = Gu + Gd d. Assume that G(s) is minimum 5.13.2 Feedback control
phase and stable and assume there are no problems with input saturation. Then perfect control,
e = y r = 0, is obtained using a perfect feedforward controller which generates the With feedback control the closed-loop response with no model error is y r = S (Gd d r)
following control inputs where S = (I + GK ) 1 is the sensitivity function. With model error we get
u = G 1 r G 1 Gd d
y0 r = S 0 (G0d d r)
(5.68)
(5.71)
Now consider applying this perfect controller to the actual plant with model
where S 0 = (I + G0 K ) 1 can be written (see (A.139)) as
y 0 = G0 u + G0d d (5.69)
1
After substituting (5.68) into (5.69), we find that the actual control error with the “perfect” S0 = S (5.72)
1 + ET
feedforward controller is

G0 1 r
  0 0
G =Gd 1 G0 d
 Here E = (G0 G)=G is the relative error for G, and T is the complementary sensitivity
e0 = y 0 r= d (5.70)
G G=Gd function.
| {z } | {z }
rel: error in G rel: error in G=Gd From (5.71) we see that the control error is only weakly affected by model error at frequencies
j j
where feedback is effective (where S << 1 and T  1). For example, if we have integral
Thus, we find for feedforward control that the model error propagates directly to the control action in the feedback loop and if the feedback system with model error is stable, then
error. From (5.70) we see that to achieve e0 < 1 for d = 1 we must require that the relative
j j jj S (0) = S 0 (0) = 0 and the steady-state control error is zero even with model error.
196 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 197

Uncertainty at crossover. Although feedback control counteracts the effect of uncertainty


d
at frequencies where the loop gain is large, uncertainty in the crossover frequency region
can result in poor performance and even instability. This may be analyzed by considering the ?
j j
effect of the uncertainty on the gain margin, GM = 1= L(j!180 ) , where !180 is the frequency Gd
where L is 180Æ ; see (2.33). Most practical controllers behave as a constant gain Ko in
\
j j j j 
the crossover region, so L(j!180 ) Ko G(j!180 where !180 !u (since the phase lag
of the controller is approximately zero at this frequency; see also Section 5.12). Here !u is r -+ e - K - G -+ ?e+ q -y
the frequency where G(j!u ) = 180Æ . This observation yields the following approximate
\ 6-
rule:

 j j
Uncertainty which keeps G(j!u ) approximately constant will not change the gain margin.
j j
Uncertainty which increases G(j!u ) may yield instability.
Gm 
This rule is useful, for example, when evaluating the effect of parametric uncertainty. This is
Figure 5.16: Feedback control system
illustrated in the following example.

Example 5.10 Consider a stable first-order delay process, G(s) = ke s =(1 + s), where Consider the control system in Figure 5.16, for the case when all blocks are scalar. The model
the parameters k,  and  are uncertain in the sense that they may vary with operating is

conditions. If we assume  >  then !u (=2)= and we derive y = G(s)u + Gd (s)d; ym = Gm (s)y (5.74)
Here Gm (s) denotes the measurement transfer function and we assume Gm (0) = 1 (perfect
jG(j!u )j  2 k  (5.73) steady-state measurement). The variables d, u, y and r are assumed to have been scaled as
outlined in Section 1.4, and therefore G(s) and Gd (s) are the scaled transfer functions. Let
j j
We see that to keep G(j!u ) constant we want k  constant. From (5.73) we see, for example, j
!c denote the gain crossover frequency; defined as the frequency where L(j! ) crosses 1 j
j j
that an increase in  increases G(j!u ) , and may yield instability. However, the uncertainty j j
from above. Let !d denote the frequency at which Gd (j!d ) first crosses 1 from above. The
in the parameters is often coupled. For example, the ratio = may be approximately constant, following rules apply(Skogestad, 1996):
in which case an increase in  may not affect stability. In another case the steady-state gain
k may change with operating point, but this may not affect stability if the ratio k= , which Rule 1. Speed of response to reject disturbances. We approximately require !c > !d . More
determines the high-frequency gain, is unchanged. j
specifically, with feedback control we require S (j! ) jj
1=Gd (j! ) ! . (See (5.51) j8
and (5.54)).
The above example illustrates the importance of taking into account the structure of the Rule 2. Speed of response to track reference changes. We require jS (j!)j  1=R up to
uncertainty, for example, the coupling between the uncertain parameters. A robustness the frequency !r where tracking is required. (See (5.55)).
analysis which assumes the uncertain parameters to be uncorrelated is generally conservative.
Rule 3. Input constraints arising from disturbances. For acceptable control ( e < 1) we jj
This is further discussed in Chapters 7 and 8.
j j
require G(j! ) > Gd (j! )j j j j
1 at frequencies where Gd (j! ) > 1. For perfect
j j j j
control (e = 0) the requirement is G(j! ) > Gd (j! ) . (See (5.57) and (5.59)).
Rule 4. Input constraints arising from setpoints. We require jG(j!)j > R 1 up to the
5.14 Summary: Controllability analysis with frequency !r where tracking is required. (See (5.60)).
Rule 5. Time delay  in G(s)Gm (s). We approximately require !c < 1=. (See (5.25)).
feedback control
Rule 6. Tight control at low frequencies with a RHP-zero z in G(s)Gm (s). For a real
RHP-zero we require !c < z=2 and for an imaginary RHP-zero we approximately
We will now summarize the results of this chapter by a set of “controllability rules”. We use jj
require !c < z . (See (5.27) and (5.29)).
the term “(input-output) controllability” since the bounds depend on the plant only, that is, are
independent of the specific controller. Except for Rule 7, all requirements are fundamental, Remark. Strictly speaking, a RHP-zero only makes it impossible to have tight control
although some of the expressions, as seen from the derivations, are approximate (i.e, they may in the frequency range close to the location of the RHP-zero. If we do not need tight
be off by a factor of 2 or thereabout). However, for practical designs the bounds will need to control at low frequencies, then we may reverse the sign of the controller gain, and
be satisfied to get acceptable performance. instead achieve tight control at higher frequencies. In this case we must for a RHP-zero
198 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 199

z approximately require !c > 2z . A special case is for plants with a zero at the origin; We have not formulated a rule to guard against model uncertainty. This is because, as given
here we can achieve good transient control even though the control has no effect at in (5.71) and (5.72), uncertainty has only a minor effect on feedback performance for SISO
steady-state. systems, except at frequencies where the relative uncertainty E approaches 100%, and we
obviously have to detune the system. Also, since 100% uncertainty at a given frequency allows
Rule 7. Phase lag constraint. We require in most practical cases (e.g. with PID control): for the presence of a RHP-zero on the imaginary axis at this frequency (G(j! ) = 0), it is
!c < !u . Here the ultimate frequency !u is where GGm (j!u ) = 180Æ . (See
\ already covered by Rule 6.
(5.67)).
The rules are necessary conditions (“minimum requirements”) to achieve acceptable control
Since time delays (Rule 5) and RHP-zeros (Rule 6) also contribute to the phase lag, one performance. They are not sufficient since among other things we have only considered one
may in in most practical cases combine Rules 5, 6 and 7 into the single rule: !c < !u effect at a time.
(Rule 7).
The rules quantify the qualitative rules given in the introduction. For example, the rule
Rule 8. Real open-loop unstable pole in G(s) at s = p. We need high feedback gains to “Control outputs that are not self-regulating” may be quantified as: “Control outputs y for
stabilize the system and we approximately require !c > 2p. (See (5.47)). j j
which Gd (j! ) > 1 at some frequency” (Rule 1). The rule “Select inputs that have a large
j j j j
In addition, for unstable plants we need Gs (p) > Gd;ms (p) . Otherwise, the input effect on the outputs” may be quantified as: “In terms of scaled variables we must have
may saturate when there are disturbances, and the plant cannot be stabilized; see (5.61). j j j j j j
G > Gd 1 at frequencies where Gd > 1 (Rule 3), and we must have G > R 1 at j j
frequencies where setpoint tracking is desired (Rule 4)”. Another important insight from the
above rules is that a larger disturbance or a smaller specification on the control error requires
faster response (higher bandwidth).
jL j
jGj In summary, Rules 1, 2 and 8 tell us that we need high feedback gain (“fast control”) in order
to reject disturbances, to track setpoints and to stabilize the plant. On the other hand, Rules
M1 5, 6 and 7 tell us that we must use low feedback gains in the frequency range where there
jGd j are RHP-zeros or delays or where the plant has a lot of phase lag. We have formulated these
requirements for high and low gain as bandwidth requirements. If they somehow are in conflict
then the plant is not controllable and the only remedy is to introduce design modifications to
the plant.
M2 Sometimes the problem is that the disturbances are so large that we hit input saturation, or the
required bandwidth is not achievable. To avoid the latter problem, we must at least require that
1 the effect of the disturbance is less than 1 (in terms of scaled variables) at frequencies beyond
the bandwidth, (Rule 1)
Control needed to j j 8 
Gd (j! ) < 1 ! !c (5.75)
reject disturbances
where as found above we approximately require !c < 1= (Rule 5), !c < z=2 (Rule 6) and
!c < !u (Rule 7). Condition (5.75) may be used, as in the example of Section 5.16.3 below,
2p !d !c z=2 !u 1= to determine the size of equipment.
M4
M3 M5
M6
5.15 Summary: Controllability analysis with
jj
Margins for stability and performance:
M1 : Margin to stay within constraints, u < 1.
M2 : Margin for performance, e < 1.jj feedforward control
M3 : Margin because of RHP-pole, p.
M4 : Margin because of RHP-zero, z .
\
M5 : Margin because of phase lag, G(j!u ) = 180Æ . The above controllability rules apply to feedback control, but we find that essentially the same
M6 : Margin because of delay, . conclusions apply to feedforward control when relevant. That is, if a plant is not controllable
using feedback control, it is usually not controllable with feedforward control. A major
Figure 5.17: Illustration of controllability requirements difference, as shown below, is that a delay in Gd (s) is an advantage for feedforward control
(“it gives the feedforward controller more time to make the right action”). Also, a RHP-zero
Most of the rules are illustrated graphically in Figure 5.17. in Gd (s) is also an advantage for feedforward control if G(s) has a RHP-zero at the same
200 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 201

location. Rules 3 and 4 on input constraints apply directly to feedforward control, but Rule 8 5.16 Applications of controllability analysis
does not apply since unstable plants can only be stabilized by feedback control. The remaining
rules in terms of performance and “bandwidth” do not apply directly to feedforward control.
5.16.1 First-order delay process
Controllability can be analyzed by considering the feasibility of achieving perfect control. The
feedforward controller is Problem statement. Consider disturbance rejection for the following process
u = Kd (s)dm s d s
where dm = Gmd (s)d is the measured disturbance. The disturbance response with r = 0 G(s) = k e ; Gd (s) = kd e (5.79)
1 + s 1 + d s
becomes
In addition there are measurement delays m for the output and md for the disturbance. All
e = Gu + Gd d = (GKd Gmd + Gd )d (5.76) parameters have been appropriately scaled such that at each frequency juj < 1; jdj < 1 and
(Reference tracking can be analyzed similarly by setting Gmd = 1 and Gd = R.) we want jej < 1. Assume jkd j > 1. Treat separately the two cases of i) feedback control only,
and ii) feedforward control only, and carry out the following:
Perfect control. From (5.76), e = 0 is achieved with the controller
a) For each of the eight parameters in this model explain qualitatively what value you would

Kdperfect = G 1 Gd Gmd1
choose from a controllability point of view (with descriptions such as large, small, value has
(5.77) no effect).

This assumes that Kdperfect is stable and causal (no prediction), and so GGd 1 Gmd should
b) Give quantitative relationships between the parameters which should be satisfied to achieve
controllability. Assume that appropriate scaling has been applied in such a way that the
have no RHP-zeros and no (positive) delay. From this we find that a delay (or RHP-zero) in
Gd (s) is an advantage if it cancels a delay (or RHP-zero) in GGmd . disturbance is less than 1 in magnitude, and that the input and the output are required to
be less than 1 in magnitude.
Ideal control. If perfect control is not possible, then one may analyze controllability by
considering an “ideal” feedforward controller, Kdideal , which is (5.77) modified to be stable
Solution. (a) Qualitative. We want the input to have a “large, direct and fast effect” on the
output, while we want the disturbance to have a “small, indirect and slow effect”. By “direct”
and causal (no prediction). The controller is ideal in that it assumes we have a perfect model.
Controllability is then analyzed by using Kdideal in (5.76). An example is given below in (5.86)
we mean without any delay or inverse response. This leads to the following conclusion. For
both feedback and feedforward control we want k and d large, and  ,  and kd small. For
and (5.87) for a first-order delay process. feedforward control we also want d large (we then have more time to react), but for feedback
Model uncertainty. As discussed in Section 5.13, model uncertainty is a more serious the value of d does not matter; it translates time, but otherwise has no effect. Clearly, we
problem for feedforward than for feedback control because there is no correction from the want m small for feedback control (it is not used for feedforward), and we want md small
output measurement. For disturbance rejection, we have from (5.70) that the plant is not for feedforward control (it is not used for feedback).
controllable with feedforward control if the relative model error for G=Gd at any frequency jj
(b) Quantitative. To stay within the input constraints ( u < 1) we must from Rule 4 require
j j j
exceeds 1= Gd . Here Gd is the scaled disturbance model. For example, if Gd (j! ) = 10 j j j j j
G(j! ) > Gd (j! ) for frequencies ! < !d . Specifically, for both feedback and feedforward
then the error in G=Gd must not exceed 10% at this frequency. In practice, this means that control
feedforward control has to be combined with feedback control if the output is sensitive to the k > kd ; k= > kd =d (5.80)
j j
disturbance (i.e. if Gd is much larger than 1 at some frequency).
Now consider performance where the results for feedback and feedforward control differ. (i)
Combined feedback and feedforward control. To analyze controllability in this case we may
assume that the feedforward controller Kd has already been designed. Then from (5.76) the
jj
First consider feedback control. From Rule 1 we need for acceptable performance ( e < 1)
with disturbances
controllability of the remaining feedback problem can be analyzed using the rules in Section
5.14 if Gd (s) is replaced by

!d kd =d < !c (5.81)
On the other hand, from Rule 5 we require for stability and performance
Gbd (s) = GKd Gmd + Gd (5.78)
However, one must beware that the feedforward control may be very sensitive to model error, !c < 1=tot (5.82)
so the benefits of feedforward may be less in practice.
where tot =  + m is the total delay around the loop. The combination of (5.81) and (5.82)
Conclusion. From (5.78) we see that the primary potential benefit of feedforward control is yields the following requirement for controllability
to reduce the effect of the disturbance and make G bd less than 1 at frequencies where feedback
control is not effective due to, for example, a delay or a large phase lag in GGm (s). Feedback:  + m < d =kd (5.83)
202 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 203

(ii) For feedforward control, any delay for the disturbance itself yields a smaller “net delay”,
jj
and to have e < 1 we need “only” require

Feedforward:  + md d < d =kd (5.84)


Proof of (5.84): Introduce b =  + md d , and consider first the case with b 0 (so (5.84)
is clearly satisfied). In this case perfect control is possible using the controller (5.77),
10
1 jGj
kd 1 + s ebs jGd j
Kdperfect = G 1 Gd Gmd1 =

Magnitude
(5.85)
k 1 + d s
so we can even achieve e = 0. Next, consider b > 0. Perfect control is not possible, so instead
0
10
b
we use the “ideal” controller obtained by deleting the prediction es ,

Kdideal = kd 1 + s (5.86) −1 !d
k 1 + d s 10
10
−5
10
−4
10
−3
10
−2
10
−1

Frequency [rad/s]
From (5.76) the response with this controller is

k e d s
e = (GKdideal Gmd + Gd )d = d
b
(1 e s )d (5.87) Figure 5.18: Frequency responses for room heating example
1 + d s
jjjj
and to achieve e = d < 1 we must require kdd b < 1 (using asymptotic values and

1 e x x for small x) which is equivalent to (5.84). 2

5.16.2 Application: Room heating


Consider the problem of maintaining a room at constant temperature, as discussed in
Section 1.5, see Figure 1.2. Let y be the room temperature, u the heat input and d the outdoor
temperature. Feedback control should be used. Let the measurement delay for temperature (y ) 1 3
be m = 100 s. r (t )
1. Is the plant controllable with respect to disturbances?
0.5
2
y (t)
2. Is the plant controllable with respect to setpoint changes of magnitude R = 3 ( 3 K) when y (t)
the desired response time for setpoint changes is r = 1000 s (17 min) ?
0
u(t) 1
Solution. A critical part of controllability analysis is scaling. A model in terms of scaled −0.5 u(t)
variables was derived in (1.26) 0
0 500 1000 0 500 1000
G(s) = 20 ; G (s) = 10 Time [sec] Time [sec]
d
3=(150s + 1)
(5.88)
1000s + 1 1000s + 1 (a) Step disturbance in outdoor tempera-
ture
(b) Setpoint change
The frequency responses of jGj and jGd j are shown in Figure 5.18.
1. Disturbances. From Rule 1 feedback control is necessary up to the frequency !d =
Figure 5.19: PID feedback control of room heating example
j j
10=1000 = 0:01 rad/s, where Gd crosses 1 in magnitude (!c > !d ). This is exactly the
same frequency as the upper bound given by the delay, 1= = 0:01 rad/s (!c < 1=). We
therefore conclude that the system is barely controllable for this disturbance. From Rule 3
j j j j
no problems with input constraints are expected since G > Gd at all frequencies. These
204 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 205

conclusions are supported by the closed-loop simulation in Figure 5.19(a) for a unit step We take the controlled output to be the excess of acid, c [mol/l], defined as c = cH + cOH .
disturbance (corresponding to a sudden 10 K increase in the outdoor temperature) using a PID- In terms of this variable the control objective is to keep c cmax = 10 6 mol/l, and the
jj
controller of the form in (5.66) with Kc = 0:4 (scaled variables), I = 200 s and D = 60 plant is a simple mixing process modelled by
s. The output error exceeds its allowed value of 1 for a very short time after about 100 s, but
then returns quite quickly to zero. The input goes down to about -0.8 and thus remains within d (V c) = q c + q c qc
A A B B (5.89)

its allowed bound of 1. dt
2. Setpoints. The plant is controllable with respect to the desired setpoint changes. First, the
 = qB = 0:005 [ m3 /s] resulting in a
The nominal values for the acid and base flows are qA
delay is 100 s which is much smaller than the desired response time of 1000 s, and thus poses product flow q = 0:01 [m3 /s]= 10 [l/s]. Here superscript  denotes the steady-state value.
j
no problem. Second, G(j! ) j R = 3 up to about !1 = 0:007 [rad/s] which is seven times Divide each variable by its maximum deviation to get the following scaled variables
higher than the required !r = 1=r = 0:001 [rad/s]. This means that input constraints pose
no problem. In fact, we should be able to achieve response times of about 1=!1 = 150 s y = c 6 ; u = qB ; d = qA  (5.90)
10 qB 0:5qA
without reaching the input constraints. This is confirmed by the simulation in Figure 5.19(b)
for a desired setpoint change 3=(150s + 1) using the same PID controller as above. Then the appropriately scaled linear model for one tank becomes

Gd (s) = kd ; G(s) = 2kd ; k = 2:5  106


d (5.91)
1 + h s 1 + h s
5.16.3 Application: Neutralization process
where h = V=q = 1000 s is the residence time for the liquid in the tank. Note that the
steady-state gain in terms of scaled variables is more than a million so the output is extremely
@@
ACID BASE
sensitive to both the input and the disturbance. The reason for this high gain is the much
qA qB
cA cB higher concentration in the two feed streams, compared to that desired in the product stream.
? ? The question is: Can acceptable control be achieved?

V
q
- 5 jGj
jGd j
10
c

Magnitude
0
Figure 5.20: Neutralization process with one mixing tank 10

!d
The following application is interesting in that it shows how the controllability analysis tools 10
−4
10
−2
10
0 2
10 10
4

may assist the engineer in redesigning the process to make it controllable. Frequency [rad/s]
Problem statement. Consider the process in Figure 5.20, where a strong acid with pH= 1
(yes, a negative pH is possible — it corresponds to cH + = 10 mol/l) is neutralized by a strong Figure 5.21: Frequency responses for the neutralization process with one mixing tank
base (pH=15) in a mixing tank with volume V = 10m3 . We want to use feedback control to

keep the pH in the product stream (output y ) in the range 7 1 (“salt water”) by manipulating Controllability analysis. The frequency responses of Gd (s) and G(s) are shown graphically
the amount of base, qB (input u) in spite of variations in the flow of acid, qA (disturbance d). in Figure 5.21. From Rule 2, input constraints do not pose a problem since G = 2 Gd at j j j j
The delay in the pH-measurement is m = 10 s. all frequencies. The main control problem is the high disturbance sensitivity, and from (5.81)
(Rule 1) we find the frequency up to which feedback is needed
To achieve the desired product with pH=7 one must exactly balance the inflow of acid (the
disturbance) by addition of base (the manipulated input). Intuitively, one might expect that !d  kd = = 2500 rad=s (5.92)
the main control problem is to adjust the base accurately by means of a very accurate valve.
However, as we will see this “feedforward” way of thinking is misleading, and the main hurdle This requires a response time of 1=2500 = 0:4 milliseconds which is clearly impossible in a
to good control is the need for very fast response times. process control application, and is in any case much less than the measurement delay of 10 s.
206 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 207


? 
pHC where  is the delay in the feedback loop. Thus, one purpose of the mixing tanks hn (s) is to
ACID BASE reduce the effect of the disturbance by a factor kd (= 2:5 106 ) at the frequency ! (= 0:1

? ? j
[rad/s]), i.e. hn (j! )j 1=kd . With h = Vtot =q we obtain the following minimum value

?  for the total volume for n equal tanks in series


q

6
pHI
Vtot = qn (kd )2=n 1 (5.95)

where q = 0:01 m3 /s. With  = 10 s we then find that the following designs have the same
- controllability with respect to disturbance rejection:

No. of Total Volume


tanks volume each tank
Vtot [m3 ] [m3 ]
Figure 5.22: Neutralization process with two tanks and one controller
n
1 250000 250000
Design change: Multiple tanks. The only way to improve controllability is to modify the 2 316 158
process. This is done in practice by performing the neutralization in several steps as illustrated 3 40.7 13.6
in Figure 5.22 for the case of two tanks. This is similar to playing golf where it is often 4 15.9 3.98
necessary to use several strokes to get to the hole. With n equal mixing tanks in series the
5 9.51 1.90
transfer function for the effect of the disturbance becomes
6 6.96 1.16
Gd (s) = kd hn (s); hn (s) = h 1 n (5.93) 7 5.70 0.81
( n s + 1)
where kd = 2:5 106 is the gain for the mixing process, hn (s) is the transfer function of the

mixing tanks, and h is the total residence time, Vtot =q . The magnitude of hn (s) as a function With one tank we need a volume corresponding to that of a supertanker to get acceptable
of frequency is shown in Figure 5.23 for one to four equal tanks in series. controllability. The minimum total volume is obtained with 18 tanks of about 203 litres each
— giving a total volume of 3.662 m3 . However, taking into account the additional cost for
10
0 extra equipment such as piping, mixing, measurements and control, we would probably select
a design with 3 or 4 tanks for this example.

n =1 j
Control system design. We are not quite finished yet. The condition Gd (j! ) j 1 in (5.94),
jhn j
which formed the basis for redesigning the process, may be optimistic because it only ensures
j j j j  
Magnitude

n =2 that we have S < 1= Gd at the crossover frequency !B !c ! . However, from Rule


j j j j j j j j
1 we also require that S < 1= Gd , or approximately L > Gd , at frequencies lower than
wc , and this may be difficult to achieve since Gd (s) = kd h(s) is of high order. The problem
n =4 n =3 j j
is that this requires L to drop steeply with frequency, which results in a large negative phase
j j
for L, whereas for stability and performance the slope of L at crossover should not be steeper
−5 than 1, approximately (see Section 2.6.2).
10 −1 0 1 2
Thus, the control system in Figure 5.22 with a single feedback controller will not achieve the
Frequency  h
10 10 10 10
desired performance. The solution is to install a local feedback control system on each tank
and to add base in each tank as shown in Figure 5.24. This is another plant design change
Figure 5.23: Frequency responses for n tanks in series with the same total residence time h ;
hn (s) = 1=( h s + 1)n ; n = 1; 2; 3; 4
since it requires an additional measurement and actuator for each tank. Consider the case of
n n tanks in series. With n controllers the overall closed-loop response from a disturbance into
the first tank to the pH in the last tank becomes
From controllability Rules 1 and 5, we must at least require for acceptable disturbance
n n
( 1 )d  Gd d; L , Li
rejection that Y Y
j
Gd (j! ) 1 ! 1= j , y = Gd (5.96)
(5.94)
i=1 1 + L i L i=1
208 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 209
BASE
composition y is given by (scaled variables, time in minutes)
6
ACID
? ?  Gd (s) = e s =3s

pHC

6 BASE
That is, after a step in d the output y will, after an initial delay of 1 min, increase in a ramp-like
fashion and reach its maximum allowed value (which is 1) after another 3 minutes. Feedback
? ? 6
 control should be used and there is an additional measurement delay of 5 minutes. What
should be the residence time in the tank?


pHC

6
(c) Show that in terms of minimizing the total volume for buffer tanks in series, it is optimal to
- have buffer tanks of equal size.
(d) Is there any reason to have buffer tanks in parallel (they must not be of equal size because
then one may simply combine them)?
(e) What about parallel pipes in series (pure delay). Is this a good idea?
Figure 5.24: Neutralization process with two tanks and two controllers.

Q Buffer tanks are also used in chemical processes to dampen liquid flowrate disturbances (or
where Gd = n i=1 Gi and Li = Gi Ki , and the approximation applies at low frequencies gas pressure disturbances). This is the topic of the following exercise.
where feedback is effective.
In this case, we can design each loop Li (s) with a slope of 1 and bandwidth !c ! , Exercise 5.10 Let d1 = qin [m3 /s] denote a flowrate which acts as a disturbance to the
j j j j
such that the overall loop transfer function L has slope n and achieves L > Gd at all process. We add a buffer tank (with liquid volume V [m3 ]), and use a “slow” level controller
frequencies lower than !d (the size of the tanks are selected as before such that !d 
! ). K such that the outflow d2 = qout (the “new” disturbance) is smoother than the inflow qin
Thus, our analysis confirms the usual recommendation of adding base gradually and having (the “original” disturbance). The idea is to temporarily increase or decrease the liquid volume
one pH-controller for each tank (McMillan, 1984, p. 208). It seems unlikely that any other in the tank to avoid sudden changes in qout . Note that the steady-state value of qout must equal
j j
control strategy can achieve a sufficiently high roll-off for L . that of qin .
In summary, this application has shown how a simple controllability analysis may be used to A material balance yields V (s) = (qin (s) qout (s))=s and with a level controller qout (s) =
make decisions on both the appropriate size of the equipment, and the selection of actuators K (s)V (s) we find that
d2 (s) = K (s) d1 (s)
and measurements for control. Our conclusions are in agreement with what is used in industry.
(5.97)
Importantly, we arrived at these conclusions, without having to design any controllers or s + K (s)
perform any simulations. Of course, as a final test, the conclusions from the controllability | {z }
h(s)
analysis should be verified by simulations using a nonlinear model.
The design of a buffer tank for a flowrate disturbance then consists of two steps:

1. Design the level controller K (s) such that h(s) has the desired shape (e.g. determined by a
Exercise 5.8 Comparison of local feedback and cascade control. Explain why a cascade
controllability analysis of how d2 affects the remaining process; note that we must always
control system with two measurements (pH in each tank) and only one manipulated input (the
have h(0) = 1).
base flow into the first tank) will not achieve as good performance as the control system in
2. Design the size of the tank (determine its volume Vmax ) such that the tanks does not
Figure 5.24 where we use local feedback with two manipulated inputs (one for each tank).
overflow or go empty for the expected disturbances in d1 = qin .
The following exercise further considers the use of buffer tanks for reducing quality
(concentration, temperature) disturbances in chemical processes. Problem statement. (a) Assume the inflow varies in the range qin   100% where qin is the
nominal value, and apply this stepwise procedure to two cases:
Exercise 5.9 (a) The effect of a concentration disturbance must be reduced by a factor of 100 (i) The desired transfer function is h(s) = 1=(s + 1). 2
(ii) The desired transfer function is h(s) = 1=(2 s + 1) .
at the frequency 0:5 rad/min. The disturbances should be dampened by use of buffer tanks
and the objective is to minimize the total volume. How many tanks in series should one have? (b) Explain why it is usually not recommended to have integral action in K (s).
What is the total residence time? (c) In case (ii) one could alternatively use two tanks in series with controllers designed as in
(b) The feed to a distillation column has large variations in concentration and the use of one (i). Explain why this is most likely not a good solution. (Solution: The required total volume is
buffer tank is suggested to dampen these. The effect of the feed concentration d on the product the same, but the cost of two smaller tanks is larger than one large tank).
210 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS ON PERFORMANCE IN SISO SYSTEMS 211

5.16.4 Additional exercises of eight controllability rules; see page 197. These rules are necessary conditions (“minimum
requirements”) to achieve acceptable control performance. They are not sufficient since
Exercise 5.11 What information about a plant is important for controller design, and in among other things they only consider one effect at a time. The rules may be used to
particular, in which frequency range is it important to know the model well? To answer this determine whether or not a given plant is controllable. The method has been applied to a
problem you may think about the following sub-problems: pH neutralization process, and it is found that the heuristic design rules given in the literature
(a) Explain what information about the plant is used for Ziegler-Nichols tuning of a SISO follow directly. The key steps in the analysis are to consider disturbances and to scale the
PID-controller. variables properly.
(b) Is the steady-state plant gain G(0) important for controller design? (As an example The tools presented in this chapter may also be used to study the effectiveness of
consider the plant G(s) = s+1 a with a jj 1 and design a P-controller K (s) = Kc such adding extra manipulated inputs or extra measurements (cascade control). They may
that !c = 100. How does the controller design and the closed-loop response depend on the also be generalized to multivariable plants where directionality becomes a further crucial
steady-state gain G(0) = 1=a?) consideration. Interestingly, a direct generalization to decentralized control of multivariable
plants is rather straightforward and involves the CLDG and the PRGA; see page 453 in
Exercise 5.12 Let H (s) = K1 e 1 s , G(s) = K2 e 0:5s (30s+1)(1 Ts+1) , and Gd (s) = Chapter 10.
G(s)H (s). The measurement device for the output has transfer function Gm (s) = e 2 s .
The unit for time is seconds. The nominal parameter values are: K1 = 0:24, 1 = 1 [s],
K2 = 38, 2 = 5 [s], and T = 2 [s].
(a) Assume all variables have been appropriately scaled. Is the plant input-output
controllable?
(b) What is the effect on controllability of changing one model parameter at a time in the
following ways:
1. 1 is reduced to 0:1 [s].
2. 2 is reduced to 2 [s].
3. K1 is reduced to 0:024.
4. K2 is reduced to 8.
5. T is increased to 30 [s].
Exercise 5.13 A heat exchanger is used to exchange heat between two streams; a coolant with
flowrate q (1 1 kg/s) is used to cool a hot stream with inlet temperature T0 (100 10Æ C)
 
to the outlet temperature T (which should be 60 10Æ C). The measurement delay for T is 3s.

The main disturbance is on T0 . The following model in terms of deviation variables is derived
from heat balances

T (s) = 8 q (s) + 0:6(20s + 1) T0 (s) (5.98)


(60s + 1)(12s + 1) (60s + 1)(12s + 1)
Æ
where T and T0 are in C, q is in kg/s, and the unit for time is seconds. Derive the scaled
model. Is the plant controllable with feedback control? (Solution: The delay poses no problem
(performance), but the effect of the disturbance is a bit too large at high frequencies (input
saturation), so the plant is not controllable).

5.17 Conclusion
The chapter has presented a frequency domain controllability analysis for scalar systems
applicable to both feedback and feedforward control. We summarized our findings in terms
212 MULTIVARIABLE FEEDBACK CONTROL

LIMITATIONS ON
PERFORMANCE IN MIMO
SYSTEMS
In this chapter, we generalize the results of Chapter 5 to MIMO systems. We first discuss
fundamental limitations on the sensitivity and complementary sensitivity functions imposed
by the presence of RHP-zeros. We then consider separately the issues of functional
controllability, RHP-zeros, RHP-poles, disturbances, input constraints and uncertainty.
Finally, we summarize the main steps in a procedure for analyzing the input-output
controllability of MIMO plants.

6.1 Introduction
In a MIMO system, disturbances, the plant, RHP-zeros, delays, RHP-poles and disturbances
each have directions associated with them. This makes it more difficult to consider their effects
separately, as we did in the SISO case, but we will nevertheless see that most of the SISO
results may be generalized.
We will quantify the directionality of the various effects in G and Gd by their output directions:

 yz : output direction of a RHP-zero, G(z )uz = 0  yz , see (4.68)


 yp : output direction of a RHP-pole, G(pi )upi = 1  ypi , see (4.61)
 yd : output direction of a disturbance, yd = kgd1k2 gd , see (6.30)
 ui : i’th output direction (singular vector) of the plant, Gvi = i ui , see (3.38)1
All these are l  1 vectors where l is the number of outputs. yz and yp are fixed complex
vectors, while yd (s) and ui (s) are frequency-dependent (s may here be viewed as a
1
Note that ui here is the i’th output singular vector, and not the i’th input.
214 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 215

generalized complex frequency; in most cases s = j! ). The vectors are here normalized 6.2.2 Sensitivity integrals
such that they have Euclidean length 1,
kyz k2 = 1; kyp k2 = 1; kyd (s)k2 = 1; kui (s)k2 = 1 For SISO systems we presented several integral constraints on sensitivity (the waterbed
effects). These may be generalized to MIMO systems by using the determinant or the singular
We may also consider the associated input directions of G. However, these directions are values of S , see Boyd and Barratt (1991) and Freudenberg and Looze (1988). For example,
usually of less interest since we are primarily concerned with the performance at the output of the generalization of the Bode sensitivity integral in (5.6) may be written
the plant.
Z 1 XZ 1 Np
X
The angles between the various output directions can be quantified using their inner products:
j jj j
yzH yp , yzH yd , etc. The inner product gives a number between 0 and 1, and from this we can ln j det S (j! )jd! = ln j (S (j! ))d! =   Re(pi ) (6.3)
0 j 0 i=1
define the angle in the first quadrant, see (A.113). For example, the output angle between a
pole and a zero is For a stable L(s), the integrals are zero. Other generalizations are also available, see Zhou
1 H
 = cos jyz yp j = cos 1 jyzH yp j et al. (1996). However, although these relationships are interesting, it seems difficult to derive
kyz k2 kyp k2 any concrete bounds on achievable performance from them.
We assume throughout this chapter that the models have been scaled as outlined in Section 1.4.
The scaling procedure is the same as that for SISO systems, except that the scaling factors Du ,
Dd , Dr and De are diagonal matrices with elements equal to the maximum change in each 6.2.3 Interpolation constraints
variable ui , di , ri and ei . The control error in terms of scaled variables is then
e = y r = Gu + Gd d Rre RHP-zero. If G(s) has a RHP-zero at z with output direction yz , then for internal stability of
the feedback system the following interpolation constraints must apply:
where at each frequency we have ku(! )kmax  1, kd(! )kmax  1 and kre(! )kmax  1, and
the control objective is to achieve kekmax (! ) < 1. yzH T (z ) = 0; yzH S (z ) = yzH (6.4)
Remark 1 Here kkmax is the vector infinity-norm, that is, the largest element in the vector.
This norm is sometimes denoted kk 1 , but this is not used here to avoid confusing it with the In words, (6.4) says that T must have a RHP-zero in the same direction as G, and that S (z )
H 1
1 norm of the transfer function (where the denotes the maximum over frequency rather has an eigenvalue of 1 corresponding to the left eigenvector yz .
than the maximum over the elements of the vector).
Remark 2 As for SISO systems, we see that reference changes may be analyzed as a special Proof of (6.4): From (4.68) there exists an output direction yz such that yzH G(z ) = 0. For
case of disturbances by replacing Gd by R. internal stability, the controller cannot cancel the RHP-zero and it follows that L = GK has
Remark 3 Whether various disturbances and reference changes should be considered a RHP-zero in the same direction, i.e. yzH L(z ) = 0. Now S = (I + L) 1 is stable and has no
separately or simultaneously is a matter of design philosophy. In this chapter, we mainly RHP-pole at s = z . It then follows from T = LS that yzH T (z ) = 0 and yzH (I S ) = 0. 2
consider their effects separately, on the grounds that it is unlikely for several disturbances
to attain their worst values simultaneously. This leads to necessary conditions for acceptable RHP-pole. If G(s) has a RHPpole at p with output direction yp , then for internal stability the
performance, which involve the elements of different matrices rather than matrix norms. following interpolation constraints apply

S (p)yp = 0; T (p)yp = yp (6.5)

6.2 Constraints on S and T


Proof of (6.5): The square matrix L(p) has a RHP-pole at s = p, and if we assume that L(s)
has no RHP-zeros at s = p then L 1 (p) exists and from (4.72) there exists an output pole
6.2.1 S plus T is the identity matrix direction yp such that
L 1 (p)yp = 0 (6.6)
From the identity S + T = I and (A.49), we get
SinceT is stable, it has no RHP-pole at s = p, so T (p) is finite. It then follows, from
j1  (S )j   (T )  1 +  (S ) (6.1) S = T L 1 , that S (p)yp = T (p)L 1 (p)yp = 0. 2
j1  (T )j   (S )  1 +  (T ) (6.2)
This shows that we cannot have both S and T small simultaneously and that 
 (S ) is large if Similar constraints apply to LI , SI and TI , but these are in terms of the input zero and pole
and only if 
 (T ) is large. directions, uz and up .
216 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 217

6.2.4 Sensitivity peaks Let wT (s) be a stable weight. Then for closed-loop stability the weighted complementary
sensitivity function must satisfy for each RHP-pole pi
Based on the above interpolation constraints we here derive lower bounds on the weighted
sensitivity functions. The results show that a peak on   (S ) larger than 1 is unavoidable if the kwT T k1  c2i jwT (pi )j (6.11)
plant has a RHP-zero, and that a peak on   (T ) larger 1 is unavoidable if the plant has a RHP- Here c2i = 1 if G has no RHP-zeros.
pole. In particular, the peaks may be large if the plant has both RHP-zeros and RHP-poles.
Proof of c1j in (6.9): Consider here a RHP-zero z with direction yz (the subscript j is
The bounds are direct generalizations of those found for SISO systems. The bound on
omitted). Since G has RHP-poles at pi , S must have RHP-zeros at pi , such that T = SGK
is stable. We may factorize S = T L 1 = Sm Bp (s) and introduce the scalar function
weighted sensitivity with no RHP-poles was first derived by Zames (1981). The generalized
result below was derived by Havre and Skogestad (1998a).
f (s) = yzH wP (s)Sm (s)y which is analytic (stable) in the RHP. y is a vector of unit length
We first need to introduce some notation. Consider a plant G(s) with RHP-poles pi and RHP- which can be chosen freely. We then have
zeros zj , and factorize G(s) in terms of (output) Blaschke products as follows2
kwP S (s)k1 = kwP Sm k1  kf (s)k1  jf (z)j = jwP (z)j  jyzH Bp 1 (z)yj (6.12)
G(s) = Bp 1 (s)Gs (s); G(s) = Bz (s)Gm (s) (6.7) The final equality follows since wP is a scalar and yzH S1 (z ) = yzH S (z )Bp 1 (z ) =
yzH Bp 1 (z ). We finally select y such that the lower bound is as large as possible and derive
where Gs is the stable and Gm the minimum-phase version of G. Bp (s) and Bz (s) are stable
all-pass transfer matrices (all singular values are 1 for s = j! ) containing the RHP-poles and

c1 . To prove that c1 1, we follow Chen (1995) and introduce the matrix Vi whose columns
together with ybpi form an orthonormal basis for ll . Then, I = ybpi ybpi
C H + Vi V H , and
i
HP-zeros, respectively. Note that we here only use the output factorizations. Bp (s) is obtained
by factorizing to the output one RHP-pole at a time, starting with G(s) = Bp11 (s)Gp1 (s)
 s+pi  H 
ybpi ybpi + Vi Vi = [ ybpi Vi ] s pi 0 piH
2Re(pi ) H s + pi H H yb
Bpi (s) = I + ybpi ybpi =
where Bp11 (s) = I + 2Re p1 H
s p1 ybp1 ybp1 where ybp1 = yp1 is the output pole direction for p1 . s pi s pi 0 I Vi
This procedure may be continued to factor out p2 from Gp1 (s) where ybp2 is the output pole (6.13)
direction of Gp1 (which need not coincide with yp2 , the pole direction of G), and so on. A and we see that all singular values of Bpi (z ) are equal to 1, except for one which is
j jj
z + pi = z pi j 1 (since z and pi are both in the RHP). Thus all singular values of
Bp 1 (z ) are 1 or larger, so Bp (z ) 1 is greater than or equal to 1 in all directions and hence
similar procedure may be used for the RHP-zeros.
Np Nz 
c1 1. The proof of c2i is similar. 2
(I + 2Re(pi ) ybpi ybpi (I + 2Re(zj ) ybzj ybzj
Y Y
Bp 1 (s) = H ); B 1 (s) =
z
H) (6.8)
i=1 s pi j =1 s zj Lower bound on kS k1 and kT k1 . From Theorem 6.1 we get by selecting wP (s) = 1 and
wT (s) = 1
Remark. State-space realizations are provided by Zhou et al. (1996, p.145). Note that these kS k1  zeros
maxz c1j ; kT k1  poles
j
maxp c2i
i
(6.14)
realizations may be complex.
One RHP-pole and one RHP-zero. For the case with one RHP-zero z and one RHP-pole p
With this factorization we have the following theorem. we derive from (6.9) s
c1 = c2 = sin2  +
jz + pj2 cos2 
Theorem 6.1 MIMO sensitivity peaks. Suppose that G(s) has Nz RHP-zeros zj with jz pj2 (6.15)

output directions yzj , and Np RHP-poles pi with output directions ypi . Define the all-pass where  = cos 1 yzH yp is the angle between the output directions of the pole and zero.
j j
transfer matrices given in (6.8) and compute the real constants We then get that if the pole and zero are aligned in the same direction such that yz = yp
H B (z )k  1; c = kB 1 (p )y k  1 and  = 0, then (6.15) simplifies to give the SISO-conditions in (5.16) and (5.18) with
c1j = kyzj p j 2 2i z i pi 2 (6.9) c1 = c2 = jjzz+ppjj 1. Conversely, if the pole and zero are orthogonal to each other, then

Let wP (s) be a stable weight. Then for closed-loop stability the weighted sensitivity function
 = 90Æ and c1 = c2 = 1 and there is no additional penalty for having both a RHP-pole and
a RHP-zero.
must satisfy for each RHP-zero zj
Proof of (6.15): From (6.9) c1 = yzH Bp 1 (z ) 2 . From (6.13) the projection of yz in the
k k
kwP S k1  c1j jwP (zj )j (6.10)
direction of the largest singular value of Bp 1 (z ) has magnitude z + p = z p cos, and
j jj j
Here c1j = 1 if G has no RHP-poles. 
the projection onto the remaining subspace is 1 sin , and (6.15) follows. A weaker version
of this result was first proved by Boyd and Desoer (1985). An alternative proof of (6.15) is
2 Note that the Blaschke notation is reversed compared to that given in the first edition (1996), that is, Bz given by Chen (1995) who presents a slightly improved bound (but his additional factor Q(z )
replaces Bz 1 , and Bp replaces Bp 1 . This is to get consistency with the literature in general. is rather difficult to evaluate). 2
218 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 219

Later in this chapter we discuss the implications of these results and provide some examples. Example 6.1 The following plant is singular and thus not functionally controllable
" 1 2 #
G(s) = s+1 2 s+1 4
s+2 s+2
6.3 Functional controllability This is easily seen since column 2 of G(s) is two times column 1. The uncontrollable output
directions at low and high frequencies are, respectively
Consider a plant G(s) with l outputs and let r denote the normal rank of G(s). In order to   
control all outputs independently we must require r = l, that is, the plant must be functionally y0 (0) = p1 1 y0 (1) = p1 2
controllable. This term was introduced by Rosenbrock (1970, p. 70) for square systems, and 2 1 5 1
related concepts are “right invertibility” and “output realizability”. We will use the following
definition:

Definition 6.1 Functional controllability. An m-input l-output system G(s) is functionally


6.4 Limitations imposed by time delays
controllable if the normal rank of G(s), denoted r, is equal to the number of outputs (r = l),
that is, if G(s) has full row rank. A system is functionally uncontrollable if r < l. Time delays pose limitations also in MIMO systems. Specifically, let ij denote the time delay
in the ij ’th element of G(s). Then a lower bound on the time delay for output i is given by
The normal rank of G(s) is the rank of G(s) at all values of s except at a finite number of the smallest delay in row i of G(s), that is,
singularities (which are the zeros of G(s)).
imin = min 
j ij
Remark 1 The only example of a SISO system which is functionally uncontrollable is the
system G(s) = 0. A square MIMO system is functional uncontrollable if and only if This bound is obvious since imin is the minimum time for any input to affect output i, and
8
det G(s) = 0; s. imin can be regarded as a delay pinned to output i.
8
Remark 2 A plant is functionally uncontrollable if and only if l (G(j! )) = 0; ! . As a Holt and Morari (1985a) have derived additional bounds, but their usefulness is sometimes
measure of how close a plant is to being functionally uncontrollable we may therefore consider limited since they assume a decoupled closed-loop response (which is usually not desirable in
l (G(j! )), which for the interesting case when there is at least as many inputs as outputs,

m l, is the minimum singular value,  (G(j! )).
terms of overall performance) and also assume infinite power in the inputs.
For MIMO systems we have the surprising result that an increased time delay may sometimes
Remark 3 In most cases functional uncontrollability is a structural property of the system,
improve the achievable performance. As a simple example, consider the plant
that is, it does not depend on specific parameter values, and it may often be evaluated from
 
G(s) = e 1s 11
cause-and-effect graphs. A typical example of this is when none of the inputs ui affect a
particular output yj which would be the case if one of the rows in G(s) was identically zero.
(6.17)
Another example is when there are fewer inputs than outputs.
With  = 0, the plant is singular (not functionally controllable), and controlling the two
Remark 4 For strictly proper systems, G(s) = C (sI A) 1 B , we have that G(s) is outputs independently is clearly impossible. On the other hand, for  > 0, effective feedback
functionally uncontrollable if rank(B ) < l (the system is input deficient), or if rank(C ) < l control is possible, provided the bandwidth is larger than about 1=. That is, for this example,
(the system is output deficient), or if rank(sI A) < l (fewer states than outputs). This control is easier the larger  is. In words, the presence of the delay decouples the initial (high-
follows since the rank of a product of matrices is less than or equal to the minimum rank of frequency) response, so we can obtain tight control if the controller reacts within this initial
the individual matrices, see (A.35). time period. To illustrate this, we may compute the magnitude of the RGA (or the condition
If the plant is not functionally controllable, i.e. r < l, then there are l r output directions, number) of G as a function of frequency, and note that it is infinite at low frequencies, but
denoted y0 , which cannot be affected. These directions will vary with frequency, and we have drops to 1 at about frequency 1=.
(analogous to the concept of a zero direction)
Exercise 6.1 To further illustrate the above arguments, compute the sensitivity function S
y0H (j! )G(j! ) = 0 (6.16) for the plant (6.17) using a simple diagonal controller K = ks I . Use the approximation
From an SVD of G(j! ) = U V H , the uncontrollable output directions y0 (j! ) are the last e s  1 s to show that at low frequencies the elements of S (s) are of magnitude
l r columns of U (j! ). By analyzing these directions, an engineer can then decide on whether 1=(k +2). How large must k be to have acceptable performance (less than 10% offset at low
it is acceptable to keep certain output combinations uncontrolled, or if additional actuators are frequencies)? What is the corresponding bandwidth? (Answer: Need k > 8=. Bandwidth is
needed to increase the rank of G(s). equal to k.)
220 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 221

Remark 1 The observant reader may have noticed that G(s) in (6.17) is singular at s = 0 6.5.1 Moving the effect of a RHP-zero to a specific output
(even with  non-zero) and thus has a zero at s = 0. Therefore, a controller with integral
action which cancels this zero, yields an internally unstable system, (e.g. the transfer function In MIMO systems one can often move the deteriorating effect of a RHP-zero to a given
KS contains an integrator). This means that although the conclusion that the time delay helps output, which may be less important to control well. This is possible because, although the
is correct, the derivations given in Exercise 6.1 are not strictly correct. To “fix” the results we interpolation constraint yzH T (z ) = 0 imposes a certain relationship between the elements
may assume that the plant is only going to be controlled over a limited time so that internal within each column of T (s), the columns of T (s) may still be selected independently. Let us
instability is not an issue. Alternatively, we may assume, for example, that e s is replaced first consider an example to motivate the results that follow. Most of the results in this section
by 0:99e s so that the plant is not singular at steady-state (but it is close to singular). are from Holt and Morari (1985b) where further extensions can also be found.

Exercise 6.2 Repeat Exercise 6.1 numerically, with e s replaced by 0:99(1 2n s)n =(1 +
Example 3.8 continued. Consider the plant

 n
2n s) (where n = 5 is the order of the Padé approximation), and plot the elements of S (j! ) G(s) = 1 1 1
as functions of frequency for k = 0:1=, k = 1= and k = 8=. (0:2s + 1)(s + 1) 1 + 2s 2
which has a RHP-zero at s = z = 0:5. This is the same plant considered on page 85 where
H
we performed some 1 controller designs. The output zero direction satisfies yzH G(z ) = 0
and we find    
6.5 Limitations imposed by RHP-zeros
yz = p1 2 = 0:89
5 1 0:45
RHP-zeros are common in many practical multivariable problems. The limitations they impose Any allowable T (s) must satisfy the interpolation constraint yzH T (z ) = 0 in (6.4), and this
are similar to those for SISO systems, although often not quite so serious as they only apply imposes the following relationships between the column elements of T (s):
in particular directions.
For ideal ISE optimal control (the “cheap” LQR problem), the SISO result ISE = 2=z from
2t11 (z ) t21 (z ) = 0; 2t12 (z ) t22 (z ) = 0 (6.19)
Section 5.4 can be generalized, see Qiu and Davison (1993). They show for a MIMO plant We will consider reference tracking y = T r and examine three possible choices for T : T0
with RHP-zeros at zi that the ideal ISE-value P (the “cheap” LQR cost function) for a step diagonal (a decoupled design), T1 with output 1 perfectly controlled, and T2 with output 2
disturbance or reference is directly related to i 2=zi . Thus, as for SISO systems, RHP- perfectly controlled. Of course, we cannot achieve perfect control in practice, but we make
zeros close to the origin imply poor control performance. the assumption to simplify our argument. In all three cases, we require perfect tracking at
The limitations of a RHP-zero located at z may also be derived from the bound steady-state, i.e. T (0) = I .
A decoupled design has t12 (s) = t21 (s) = 0, and to satisfy (6.19) we then need t11 (z ) = 0
kwP S (s)k1 = max
!
jwP (j!)j (S (j!))  jwP (z)j (6.18)
and t22 (z ) = 0, so the RHP-zero must be contained in both diagonal elements. One possible
choice, which also satisfies T (0) = I , is
in (6.10) where wP (s) is a scalar weight. All the results derived in Section 5.6.4 for SISO  s+z 0

systems, therefore generalize if we consider the “worst” direction corresponding to the
T0 (s) = s+z
maximum singular value,   (S ). For instance, by selecting the weight wP (s) such that we 0 s+z (6.20)
s+z
require tight control at low frequencies and a peak for  (S ) less than 2, we derive from (5.34)
that the bandwidth (in the “worst” direction) must for a real RHP-zero satisfy !B  < z=2. For the two designs with one output perfectly controlled we choose
   s+z 2 s 
T1 (s) = 11 s 0
Alternatively, if we require tight control at high frequencies, then we must from (5.38) satisfy
!B > 2z . s+z T2 (s) = s+z s+z
s+z s+z 0 1
Remark 1 The use of a scalar weight wP (s) in (6.18) is somewhat restrictive. However, the The basis for the last two selections is as follows. For the output which is not perfectly
assumption is less restrictive if one follows the scaling procedure in Section 1.4 and scales controlled, the diagonal element must have a RHP-zero to satisfy (6.19), and the off-diagonal
all outputs by their allowed variations such that their magnitudes are of approximately equal element must have an s term in the numerator to give T (0) = I . To satisfy (6.19), we must
importance. then require for the two designs
Remark 2 Note that condition (6.18) involves the maximum singular value (which is 1 = 4; 2 = 1
associated with the “worst” direction), and therefore the RHP-zero may not be a limitation The RHP-zero has no effect on output 1 for design T1 (s), and no effect on output 2 for
in other directions. Furthermore, we may to some extent choose the worst direction. This is design T2 (s). We therefore see that it is indeed possible to move the effect of the RHP-zero
discussed next. to a particular output. However, we must pay for this by having to accept some interaction.
222 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 223

We note that the magnitude of the interaction, as expressed by k , is largest for the case (a) Find the zero and its output direction. (Answer: z = 12 1 and yz = [ 1 ]T ).
where output 1 is perfectly controlled. This is reasonable since the zero output direction (b) Which values of yield a RHP-zero, and which of these values is best/worst in terms of
yz = [ 0:89 0:45 ]T is mainly in the direction of output 1, so we have to “pay more” j j
achievable performance? (Answer: We have a RHP-zero for < 1. Best for = 0 with zero
to push its effect to output 2. This was also observed in the controller designs in Section 3.5, at infinity; if control at steady-state is required then worst for = 1 with zero at s = 0.)
see Figure 3.10 on page 86. (c) Suppose = 0:1. Which output is the most difficult to control? Illustrate your conclusion
using Theorem 6.2. (Answer: Output 2 is the most difficult since the zero is mainly in that
We see from the above example that by requiring a decoupled response from r to y , as
direction; we get strong interaction with = 20 if we want to control y2 perfectly.)
in design T0 (s) in (6.20), we have to accept that the multivariable RHP-zero appears as a
RHP-zero in each of the diagonal elements of T (s), i.e., whereas G(s) has one RHP-zero at
s = z , T0 (s) has two. In other words, requiring a decoupled response generally leads to the Exercise 6.4 Repeat the above exercise for the plant
introduction of additional RHP-zeros in T (s) which are not present in the plant G(s). 
G(s) = 1 ( s + 2)

2
1  (6.24)
We also see that we can move the effect of the RHP-zero to a particular output, but we then s+1 s
have to accept some interaction. This is stated more exactly in the following Theorem.

Theorem 6.2 Assume that G(s) is square, functionally controllable and stable and has a
single RHP-zero at s = z and no RHP-pole at s = z . Then if the k’th element of the output 6.6 Limitations imposed by unstable (RHP) poles
6
zero direction is non-zero, i.e. yzk = 0, it is possible to obtain “perfect” control on all outputs
6
j = k with the remaining output exhibiting no steady-state offset. Specifically, T can be
chosen of the form For unstable plants we need feedback for stabilization. More precicely, the presence of an
ustable pole p requires for internal stability T (p)yp = yp , where yp is the output pole
2 1 0  0 0 0  0 3
6 0 1  0 0 0  0 direction. As for SISO systems this imposes the following two limitations:
7
6 . 7
6 . .. 7
6 .
6 . 7
7 RHP-pole Limitation 1 (input usage). The transfer function KS from plant outputs to plant
T (s) = 666 1 s 2 s k 1 s s+z k+1 s 7 inputs must satisfy for any RHP-pole p (Havre and Skogestad, 1997)(Havre and
6 s+z s+z   s+z s+z s+z    s +nzs 7
7
7
(6.21)
Skogestad, 2001)
6 7
6 .
4 .
.
..
.
.
..
7
5 kKS k1  kuHp Gs (p) 1 k2 (6.25)
0 0  0 0 0  1 where up is the input pole direction, and Gs is the “stable version” of G with its
RHP-poles mirrored into the LHP, see (6.7). This bound is tight in the sense that there
where
j = 2 yzj for j 6= k (6.22)
always exists a controller (possibly improper) which achives the bound. (6.25) directly
yzk generalises the bound (5.42) for SISO systems.
k
RHP-pole Limitation 2 (bandwidth). From the bound wT (s)T (s) 1 k  j j
wT (p) in
Proof: It is clear that (6.21) satisfies the interpolation constraint yzH T (z ) = 0; see also Holt (6.11) we find that a RHP-pole p imposes restrictions on   (T ) which are identical to
and Morari (1985b). 2 j j
those derived on T for SISO systems in Section 5.8. Thus, we need to react sufficiently
fast and we must require that 
 (T (j! )) is about 1 or larger up to the frequency 2 p , jj
approximately.
The effect of moving completely the effect of a RHP-zero to output k is quantified by (6.22).
j j
We see that if the zero is not “naturally” aligned with this output, i.e. if yzk is much smaller
than 1, then the interactions will be significant, in terms of yielding some j = 2yzj =yzk Example 6.2 Consider the following multivariable plant G,
much larger than 1 in magnitude. In particular, we cannot move the effect of a RHP-zero to an " s z 0:1s+1 #
output corresponding to a zero element in yz , which occurs frequently if we have a RHP-zero G(s) = s p s p ; with z = 2:5 and p = 2
pinned to a subset of the outputs.
s z
0:1s+1 1 (6.26)

The plant G has a RHP-pole p = 2 (plus a LHP-zero at -2.5 which poses no limitation). The
Exercise 6.3 Consider the plant corresponding input and output pole directions are
  
G(s) =
1 1 up = 0:966 ; yp =  1 

s+1
(6.23) 0:258 0
224 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 225

The RHP-pole p can be factorized as G(s) = Bp 1 (G)Gs (s) where and we again have two decoupled subsystems, but this time in the off-diagonal elements. The
s p  " s+2:5 0:1s+1 # main difference, however, is that there is no interaction between the RHP-pole and RHP-zero
Bp (G) = s+p 0 and Gs (s) = ss+2 +p:5 s+p in this case, so we expect this plant to be easier to control. For intermediate values of we do
0 1 0:1s+1 1 not have decoupled subsystems, and there will be some interaction between the RHP-pole and
RHP-zero.
Consider input usage in terms of KS . From (6.25) we must have that
Since in (6.28) the RHP-pole is located at the output of the plant, its output direction is fixed
and we find yp = [1 0 ]T for all values of . On the other hand, the RHP-zero output

kKS k1  kuHp Gs (p) 1k2 = [ 0:966

0:258 ] 13::125 0:3  1 = 0:859
75 1 direction changes from [1 0 ]T for = 0Æ to [0 1 ]T for = 90Æ . Thus, the angle 
2 between the pole and zero direction also varies between 0Æ and 90Æ , but  and are not
Havre (1998) presents more details including state-space realizations for controllers that equal. This is seen from the follwoing Table below, where we also give c in (6.27), for four
achieve the bound. rotation angles, = 0Æ ; 30Æ ; 60Æ and 90Æ :

0Æ 30Æ 60Æ 90Æ


       
yz 1 0:33 0:11 0
6.7 RHP-poles combined with RHP-zeros 0 0:94 0:99 1
 = cos 1 jyzH yp j 0Æ 70:9Æ 83:4Æ 90Æ
c 5.0 1.89 1.15 1.0
For SISO systems we found that performance is poor if the plant has a RHP-pole located close
kS k 1 7.00 2.60 1.59 1.98
kT k1
to a RHP-zero. This is also the case in MIMO systems provided that the directions coincide.
This was quantified in Theorem 6.1. For example, for a MIMO plant with single RHP-zero z 7.40 2.76 1.60 1.31
and single RHP-pole p we derive from (6.15) and (6.14) (S=KS ) 9.55 3.53 2.01 1.59
s
kS k1  c; kT k1  c; c = sin2  +
jz + pj2 cos2 
j z pj 2 (6.27)
 = 0Æ  = 70:9Æ
2 2
where  = cos 1 yzH yp is the angle between the RHP-zero and RHP-pole. We next consider
j j 1 1
an example which demonstrates the importance of the directions as expressed by the angle .
0 0

Example 6.3 Consider the plant −1 −1

" 1 # " s z #
G (s) = s 0 p
0 cos sin 0:1s+1 0 ; z = 2; p = 3
−2
0 1 2 3 4 5
−2
0 1 2 3 4 5
1 sin cos 0 s+z (6.28) Time Time
s+p | {z } 0:1s+1  = 83:4Æ  = 90Æ
U 2 2

which has for all values of a RHP-zero at z = 2 and a RHP-pole at p = 3. 1 1

For = 0Æ the rotation matrix U = I , and the plant consists of two decoupled subsystems 0 0

" #
s z 0 −1 −1
G0 (s) = (0:1s+1)(
0
s p)
s+z
(0:1s+1)(s+p) −2
0 1 2 3 4 5
−2
0 1 2 3 4 5
Time Time
Here the subsystem g11 has both a RHP-pole and a RHP-zero, and closed-loop performance
is expected to be poor. On the other hand, there are no particular control problems related to Figure 6.1: MIMO plant with angle  between RHP-pole and RHP-zero. Response to step
the subsystem g22 . Next, consider = 90Æ for which we have H
in reference r = [1 1]T with 1 controller for four different values of . Solid line: y1 ;
" # Dashed line: y2 .
  0 s+z
U = 0 1 ; and G90 (s) = (0:1s+1)(s p)
1 0 s z
(0:1s+1)(s+p) 0 The Table also shows the values of kS k1 and kT k1 obtained by an H1 optimal S=KS
226 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 227

design using the following weights Definition 6.2 Disturbance direction. Consider a single (scalar) disturbance and let the
 vector gd represent its effect on the outputs (y = gd d), The disturbance direction is defined as
Wu = I ; WP = s=M + !B I ; M = 2; !B = 0:5 (6.29)
1
s yd =
k k
The weight WP indicates that we require S 1 less than 2, and require tight control up to a
kgd k2 gd (6.30)

frequency of about !B = 0:5rad=s. The minimum 1 norm for the overall S=KS problem
H The associated disturbance condition number is defined as
is given by the value of in Table 6.3. The corresponding responses to a step change in the d (G) =  (G)  (Gy yd )
reference, r = [ 1 1 ], are shown in Figure 6.1. (6.31)

Several things about the example are worth noting: Here Gy is the pseudo-inverse which is G 1 for a non-singular G.
1. We see from the simulation for  = = 0Æ in Figure 6.1 that the response for y1 is very
poor. This is as expected because of the closeness of the RHP-pole and zero (z = 2; p = 3). Remark. We here use gd (rather than Gd ) to show that we consider a single disturbance, i.e.
2. For  = = 90o the RHP-pole and RHP-zero do not interact. From the simulation we see gd is a vector. For a plant with many disturbances gd is a column of the matrix Gd .
that y1 (solid line) has on overshoot due to the RHP-pole, whereas y2 (dashed line) has an
inverse response due to the RHP-zero. The disturbance condition number provides a measure of how a disturbance is aligned with
3. The bounds in (6.27) are tight since there is only one RHP-zero and one RHP-pole. This
 = 0:01 and M = 1 (Wu the plant. It may vary between 1 (for yd = u ) if the disturbance is in the “good” direction, and
can be confirmed numerically by selecting Wu = 0:01I , !B the condition number (G) =   (G) (Gy ) (for yd = u) if it is in the “bad” direction. Here u
and !B are small so the main objective is to minimize the peak of S ). We find with these and u are the output directions in which the plant has its largest and smallest gain; see Chapter
H k k
weights that the 1 designs for the four angles yield S 1 = 5:04; 1:905; 1:155; 1:005, 3.
which are very close to c.
4. The angle  between the pole and zero, is quite different from the rotation angle at In the following, let r = 0 and assume that the disturbance has been scaled such that at each
intermediate values between 0Æ and 90Æ . This is because of the influence of the RHP-pole j j
frequency the worst-case disturbance may be selected as d(! ) = 1. Also assume that the
in output 1, which yields a strong gain in this direction, and thus tends to push the zero outputs have been scaled such that the performance objective is that at each frequency the
direction towards output 2. k k
2-norm of the error should be less than 1, i.e. e(! ) 2 < 1. With feedback control e = Sgd d
5. For = 0Æ we have c = 5 so S 1 k k  k k 
5 and T 1 5 and it is clearly impossible to and the performance objective is then satisfied if
k k
get S 1 less than 2, as required by the performance weight WP .
kSgd k2 =  (Sgd ) < 1 8! , kSgd k1 < 1
6. The 1 optimal controller is unstable for = 0Æ and 30Æ . This is not altogether
H (6.32)
surprising, because for = 0Æ the plant becomes two SISO systems one of which needs an For SISO systems, we used this to derive tight bounds on the sensitivity function and the loop
unstable controller to stabilize it since p > z (see Section 5.9). j j j j j j j j
gain; S < 1= Gd and 1 + L > Gd . A similar derivation is complicated for MIMO
systems because of directions. To see this, we can use (6.30) to get the following requirement,
Exercise 6.5 Consider the plant in (6.26), but with z = 2:5 so that the plant now also has a which is equivalent to (6.32),
k k
RHP-zero. Compute the lower bounds on S 1 and kKS k1 . k k k 8 k
Syd 2 < 1= gd 2 ! (6.33)
which shows that the S must be less than 1=kgd k2 only in the direction of yd . We can also
In conclusion, pole and zero directions provide useful information about a plant, as does the derive bounds in terms of the singular values of S . Since gd is a vector we have from (3.42)
values of c in (6.27). However, the output pole and zero directions do depend on the relative
scaling of the outputs, which must therefore be done appropriately prior to any analysis.  (S )kgd k2  kSgd k2   (S )kgd k2 (6.34)

Now  (S ) = 1=
 (I + L) and  (S ) = 1= (I + L), and we therefore have:

6.8 Performance requirements imposed by  k k


For acceptable performance ( Sgd 2 < 1) we must at least require that 
 (I + L) is larger
k k
than gd 2 and we may have to require that  (I + L) is larger than gd 2 . k k
disturbances Plant with RHP-zero. If G(s) has a RHP-zero at s = z then the performance may be poor if
the disturbance is aligned with the output direction of this zero. To see this use yzH S (z ) = yzh
For SISO systems we found that large and “fast” disturbances require tight control and a large and apply the maximum modulus principle to f (s) = yzH SGd to get
bandwidth. The same results apply to MIMO systems, but again the issue of directions is
important. kSgd k1  jyzH gd (z)j = jyzH yd j  kgd (z)k2 (6.35)
228 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 229

To satisfy kSgd k1 < 1, we must then for a given disturbance d at least require Remark. For MIMO systems the choice of vector norm, kk, to measure the vector signal
magnitudes at each frequency makes some difference. The vector max-norm (largest element)
jyzH gd (z)j < 1 (6.36) is the most natural choice when considering input saturation and is also the most natural in
terms of our scaling procedure. However, for mathematical convenience we will also consider
where yz is the direction of the RHP-zero. This provides a generalization of the SISO- the vector 2-norm (Euclidean norm). In most cases the difference between these two norms is
j j k k
condition Gd (z ) < 1 in (5.53). For combined disturbances the condition is yzH Gd (z ) 2 < of little practical significance.
1.

Remark. In the above development we consider at each frequency performance in terms of 6.9.1 Inputs for perfect control
kk
e 2 (the 2-norm). However, the scaling procedure presented in Section 1.4 leads naturally
to the vector max-norm as the way to measure signals and performance. Fortunately, this We here consider the question: can the disturbances be rejected perfectly while maintaining
kk
u 1? To answer this, we must quantify the set of possible disturbances and the set of
pk k  p k k
difference is not too important, and we will neglect it in the following. The reason is that for

an m 1 vector a we have a max kk a2 m a max (see (A.94)), so the values of allowed input signals. We will consider both the max-norm and 2-norm.
max- and 2-norms are at most a factor m apart. Max-norm and square plant. For a square plant the input needed for perfect disturbance
rejection is u = G 1 Gd d (as for SISO systems). Consider a single disturbance (gd is a
Example 6.4 Consider the following plant and disturbance models j j
vector). Then the worst-case disturbance is d(! ) = 1, and we get that input saturation is
    kk
avoided ( u max 1) if all elements in the vector G 1 gd are less than 1 in magnitude, that

G(s) = 1 s4:51 4 6 k
2(s 1) ; gd (s) = s + 2 1 ; jkj  1 is,
kG 1 gd kmax  1; 8!
(6.37)
s+2
It is assumed that the disturbance and outputs have been appropriately scaled, and the For simultaneous disturbances (Gd is a matrix) the corresponding requirement is

kG 1 Gd ki1  1; 8!
question is whether the plant is input-output controllable, i.e. whether we can achieve
k k j j
Sgd 1 < 1, for any value of k 1. G(s) has a RHP-zero z = 4 and in Example 4.11 on (6.38)

where k  ki1 is the induced max-norm (induced 1-norm, maximum row sum, see (A.105)).
page 134 we have already computed the zero direction. From this we get
 
jyzH gd (z)j = j[ 0:83 0:55 ]  k1 j = j0:83k 0:55j
However, it is usually recommended in a preliminary analysis to consider one disturbance at a
time, for example, by plotting as a function of frequency the individual elements of the matrix
G 1 Gd . This yields more information about which particular input is most likely to saturate
j
and from (6.36) we conclude that the plant is not input-output controllable if 0:83k 0:55 > j and which disturbance is the most problematic.
1, i.e. if k < 0:54. We cannot really conclude that the plant is controllable for k > 0:54 Two-norm. We here measure both the disturbance and the input in terms of the 2-norm.
since (6.36) is only a necessary (and not sufficient) condition for acceptable performance, and
Assume that G has full row rank so that the outputs can be perfectly controlled. Then the
there may also be other factors that determine controllability, such as input constraints which
smallest inputs (in terms of the 2-norm) needed for perfect disturbance rejection are
are discussed next.
u = GyGd d (6.39)

where Gy = GH (GGH ) 1 is the pseudo-inverse from (A.63). Then with a single disturbance
Exercise. Show that the disturbance condition number may be interpreted as the ratio between
we must require Gy gd 2 1. With combined disturbances we must require 
k k   (Gy Gd ) 1, 
the actual input for disturbance rejection and the input that would be needed if the same
disturbance was aligned with the “best” plant direction.
that is, the induced 2-norm is less than 1, see (A.106).
k
For combined reference changes, re(! ) k2  1, the corresponding condition for perfect
kk 
control with u 2 1 becomes   (GyR)  1, or equivalently (see (A.61))
6.9 Limitations imposed by input constraints 1
 (R G)  1; 8!  !r (6.40)

Constraints on the manipulated variables can limit the ability to reject disturbances and track where !r is the frequency up to which reference tracking is required. Usually R is diagonal
references. As was done for SISO plants in Chapter 5, we will consider the case of perfect with all elements larger than 1, and we must at least require
control (e = 0) and then of acceptable control ( e kk 1). We derive the results for  (G(j! ))  1; 8!  !r (6.41)
disturbances, and the corresponding results for reference tracking are obtained by replacing
Gd by R. The results in this section apply to both feedback and feedforward control. or, more generally, we want  (G(j! )) large.
230 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 231

6.9.2 Inputs for acceptable control and assume that the max-norm is approximately unchanged by these rotations

Let r = 0 and consider the response e = Gu + Gd d to a disturbance d. The question we want kebkmax  kekmax ; kubkmax  kukmax (6.46)
kk
to answer in this subsection is: is it possible to achieve e < 1 for any d k k 1 using inputs
with uk k 1? We use here the max-norm, kk max (the vector infinity-norm), for the vector p
From (A.124) this would be an equality for the 2-norm, so from (A.94) the error by using the
signals. approximation for the max-norm is at most a factor m where m is the number of elements
in the vector. We then find that each singular value of G, i (G), must approximately satisfy
We consider this problem frequency-by-frequency. This means that we neglect the issue
of causality which is important for plants with RHP-zeros and time delays. The resulting MIMO : i (G)  juH
i gd j 1; at frequencies where jui gd j > 1
H
kk
conditions are therefore only necessary (i.e. minimum requirements) for achieving e max <
(6.47)
1. where ui is the i’th output singular vector of G, and gd is a vector since we consider a single
disturbance. More precisely, (6.47) is a necessary condition for achieving acceptable control
kk jj
( e max < 1) for a single disturbance ( d = 1) with u max kk 1, assuming that (6.46)
Exact conditions holds.

Mathematically, the problem can be formulated in several different ways; by considering Condition (6.47) provides a nice generalization of (6.44). uH i gd may be interpreted as the
the maximum allowed disturbance, the minimum achievable control error or the minimum projection of gd onto the i’th output singular vector of the plant.
required input; e.g. see Skogestad and Wolff (1992). We here use the latter approach. To
simplify the problem, and also to provide more insight, we consider one disturbance at a time, Proof of (6.47): Let r = 0 and consider the response e = Gu + gd d to a single disturbance d.
jj
i.e. d is a scalar and gd a vector. The worst-case disturbance is then d = 1 and the problem We have
is at each frequency is to compute eb = U H e = U H (Gu + gd d) = ub + U H gd d (6.48)
where the last equality follows since U G = V . For the worst-case disturbance (jdj = 1),
H H
Umin , min
u
kukmax such that kGu + gddkmax  1; jdj = 1 (6.42)
we want to find the smallest possible input such that kekmax  kebkmax is less than 1. This
is equivalent to requiring jebi j  1; 8i, where from (6.48) ebi = i (G)u bi + UiH gd d. Note: ui
A necessary condition for avoiding input saturation (for each disturbance) is then (a vector) is the i’th column of U , whereas u bi (a scalar) is the i’th rotated plant input. This is
a scalar problem similar to that for the SISO-case in (5.59), and if we assume juH i gd dj > 1
Umin < 1; 8! (6.43)
(otherwise we may simply set u bi = 0 and achieve jebi j < 1) then the smallest jubi j is achieved
If G and gd are real (i.e. at steady-state) then (6.42) can be formulated as a linear programming when the right hand side is “lined up” to make jebi j = 1. Thus, the minimum input is
(LP) problem, and in the general case as a convex optimization problem.
jubi j = (juHi gd j 1)=i (G) (6.49)
For SISO systems we have an analytical solution of (6.42); from the proof of (5.59) we
get Umin = ( gdj j j j
1)= G . A necessary condition for avoiding input saturation (for each and (6.47) follows by requiring that kukmax  ku bkmax is less than 1. 2
disturbance) is then
Based on (6.47) we can find out:
SISO : jGj > jgd j 1; at frequencies where jgd j > 1 (6.44)
1. For which disturbances and at which frequencies input constraints may cause problems.
We would like to generalize this result to MIMO systems. Unfortunately, we do not have an This may give ideas on which disturbances should be reduced, for example by redesign.
exact analytical result, but by making the approximation in (6.46) below, a nice approximate 2. In which direction i the plant gain is too small. By looking at the corresponding input
generalization (6.47) is available. singular vector, vi , one can determine which actuators should be redesigned (to get more
power in certain directions) and by looking at the corresponding output singular vector, ui ,
one can determine on which outputs we may have to reduce our performance requirements.

Several disturbances. For combined disturbances, one requires the i’th row sum of U H Gd to
Approximate conditions in terms of the SVD
be less than i (G) (at frequencies where the i’th row sum is larger than 1). However, usually
At each frequency the singular value decomposition of the plant (possibly non-square) is
G = U V H . Introduce the rotated control error and rotated input we derive more insight by considering one disturbance at a time.
Reference commands. As usual, similar results are derived for references by replacing Gd by
eb = U H e; ub = V H u (6.45) R.
232 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 233

Example 6.5 Distillation process Consider a 2 2 plant with two disturbances. The for disturbance 1. More precisely, in the low-gain direction disturbance 1 requires an input
appropriately scaled steady-state model is magnitude of approximately u j je2 = (1:17 1)=0:7 = 0:24, whereas disturbance 2 requires
    no control (as its effect is 0:11 which is less than 1).
G = 0:5 87:8 86:4 7:88 8:81
108:2 109:6 ; Gd = 11:72 11:19 (6.50) In conclusion, we find that the results based on perfect control are misleading, as acceptable
control is indeed possible. Again we find disturbance 1 to be more difficult, but the difference
This is a model of a distillation column with product compositions as outputs, reflux and boilup is much smaller than with perfect control. The reason is that we only need to reject about 12%
as inputs, and feed rate (20% change) and feed composition (20% change) as disturbances. (1:13 1=1:13) of disturbance 1 in the low-gain direction.
The elements in G are scaled by a factor 0:5 compared to (3.45) because the allowed input
However, this changes drastically if disturbance 1 is larger, since then a much larger fraction
changes are a factor 2 smaller. From an SVD of G we have   (G) = 98:6 and  (G) = 0:70. of it must be rejected. The fact that disturbance 1 is more difficult is confirmed in Section 10.10
Some immediate observations:
on page 455 where we also present closed-loop responses.
1. The elements of the matrix Gd are larger than 1 so control is needed to reject disturbances. 3. Exact numerical result for acceptable control. The exact values of the minimum inputs
2. Since  (G) = 0:7 we are able to perfectly track reference changes of magnitude 0:7 (in kk
needed to achieve acceptable control are u max = 0:098 for disturbance 1 and u max = kk
terms of the 2-norm) without reaching input constraints. 0:095 for disturbance 2, which confirms that input saturation is not a problem.
3. The elements in G are about 5 times larger than those in Gd , which suggests that there
should be no problems with input constraints. On the other hand, (G) = 0:7 is much less
kk
However, the values of u max  0:10 indicate that the two disturbances are about
equally difficult. This seems inconsistent with the above approximate results, where we found
than the elements in Gd , so input constraints may be an issue after all.
disturbance 1 to be more difficult. However, the results are consistent if for both disturbances
4. The disturbance condition numbers, d (G), for the two disturbances, are 11:75 and 1:48,
control is only needed in the high-gain direction, for which the approximate results gave the
respectively. This indicates that the direction of disturbance 1 is less favourable than that
same value of 0:13 for both disturbances. (The approximate results indicated that some control
of disturbance 2.
was needed for disturbance 1 in the low-gain direction, since 1:17 was just above 1, but
5. The condition number (G) =   (G)=(G) = 141:7 is large, but this does not by itself apparently this is inaccurate).
imply control problems. In this case, the large value of the condition number is not caused
by a small  (G) (which would be a problem), but rather by a large   (G).
The discussion at the end of the example illustrates an advantage of the approximate analytical
We will now analyze whether the disturbance rejection requirements will cause input method in (6.47); namely that we can easily see whether we are close to a borderline value
saturation by considering separately the two cases of perfect control (e = 0) and acceptable where control may be needed in some direction. On the other hand, no such “warning” is
kk 
control ( e max 1). provided by the exact numerical method.
1. Perfect control. The inputs needed for perfect disturbance rejection are u = G 1 Gd where From the example we conclude that it is difficult to judge, simply by looking at the magnitude
  of the elements in Gd , whether a disturbance is difficult to reject or not. In the above example,
G 1 Gd = 1:09 0:009 it would appear from the column vectors of Gd in (6.50) that the two disturbances have almost
1:29 0:213 identical effects. However, we found that disturbance 1 may be much more difficult to reject
because it has a component of 1.17 in the low-gain direction of G which is about 10 times
We note that perfect rejection of disturbance d1 = 1 requires an input u = [ 1:09 1:29 ]T larger than the value of 0.11 for disturbance 2. This can be seen from the second row of
which is larger than 1 in magnitude. Thus, perfect control of disturbance 1 is not possible
without violating input constraints. However, perfect rejection of disturbance d2 = 1 is
U H Gd .
possible as it requires a much smaller input u = [ 0:009 0:213 ]T . Exercise 6.6 Consider again the plant in (6.37). Let k = 1 and compute, as a function
2. Approximate result for acceptable control. We will use the approximate requirement of frequency, the required inputs G 1 gd (j! ) for perfect control. You will find that both
(6.47) to evaluate the inputs needed for acceptable control. We have inputs are about 2 in magnitude at low frequency, so if the inputs and disturbances have
 
U H Gd = 14:08 14:24 1 (G) = 98:6 been appropriately scaled, we conclude that perfect control is not possible. Next, evaluate
G(j! ) = U V H , and compute U H gd (j! ) as a function of frequency and compare with the
1:17 0:11 2 (G) = 0:70
j j
elements of (j! ) + I to see whether “acceptable control” ( ei (j! ) < 1) is possible.
and the magnitude of each element in the i’th row of U H Gd should be less than i (G) + 1
to avoid input constraints. In the high-gain direction this is easily satisfied since 14:08 and
14:24 are both much less than 1 (G) + 1 = 99:6, and from (6.49) the required input in this 6.9.3 Unstable plant and input constraints
direction is thus only about uj j
b1 = (14 1)=98:6 = 0:13 for both disturbances which is
much less than 1. The requirement is also satisfied in the low-gain direction since 1:17 and Active use of inputs are needed to stabilize and unstable plant and from (6.25) we must
0:11 are both less than 2 (G) + 1 = 1:7, but we note that the margin is relatively small require KS 1k k uH 1 k
p Gs (p) 2 where KS is the transfer function from outputs to inputs,
234 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 235

u = KS (Gd d + n). If the required inputs exceed the constraints then stabilization is most
likely not possible.
- EI - Eo

q -+ ?d+ - G q d+ -
-+ ?
6.10 Limitations imposed by uncertainty
Figure 6.2: Plant with multiplicative input and output uncertainty
The presence of uncertainty requires the use of feedback, rather than simply feedforward
control, to get acceptable performance. Sensitivity reduction with respect to uncertainty is
achieved with high-gain feedback, but for any real system we have a crossover frequency range 6.10.2 Effect of uncertainty on feedforward control
where the loop gain has to drop below 1, and the presence of uncertainty in this frequency
Consider a feedforward controller u = Kr r for the case with no disturbances (d = 0). We
range may result in poor performance or even instability. These issues are the same for SISO
assume that the plant G is invertible so that we can select
and MIMO systems.
However, with MIMO systems there is an additional problem in that there is also uncertainty Kr = G 1
associated with the plant directionality. The main objective of this section is to introduce some and achieve perfect control, e = y r = Gu r = GKr r r = 0, for the nominal case with
simple tools, like the RGA and the condition number, which are useful in picking out plants no uncertainty. However, for the actual plant G0 (with uncertainty) the actual control error
for which one might expect sensitivity to directional uncertainty. becomes e0 = y 0 r = G0 G 1 r r. We then get for the two sources of uncertainty
Output uncertainty: e0 = EO r (6.54)
Remark. In Chapter 8, we discuss more exact methods for analyzing performance with almost
any kind of uncertainty and a given controller. This involves analyzing robust performance by
Input uncertainty: e0 = GEI G 1 r (6.55)
use of the structured singular value. However, in this section the treatment is kept at a more For output uncertainty, we see that (6.54) is identical to the result in (5.70) for SISO systems.
elementary level and we are looking for results which depend on the plant only. That is, the worst-case relative control error e0 2 = r 2 is equal to the magnitude of the
k k kk
relative output uncertainty  (EO ). However, for input uncertainty the sensitivity may be much
larger because the elements in the matrix GEI G 1 can be much larger than the elements in
6.10.1 Input and output uncertainty EI . In particular, for diagonal input uncertainty the elements of GEI G 1 are directly related
to the RGA, see (A.80):
In practice the difference between the true perturbed plant G0 and the plant model G is caused n
X
by a number of different sources. In this section, we focus on input uncertainty and output Diagonal input uncertainty: [ GEI G 1 ]ii = ij (G)j (6.56)
uncertainty. In a multiplicative (relative) form, the output and input uncertainties (as in Figure j =1
6.2) are given by
The RGA-matrix is scaling independent, which makes the use of condition (6.56) attractive.
Output uncertainty: G0 = (I + EO )G or EO = (G0 G)G 1 (6.51) Since diagonal input uncertainty is always present we can conclude that
Input uncertainty: G0 = G(I + EI ) or EI = G 1 (G0 G) (6.52)  if the plant has large RGA elements within the frequency range where effective control is
desired, then it is not possible to achieve good reference tracking with feedforward control
These forms of uncertainty may seem similar, but we will show that their implications for because of strong sensitivity to diagonal input uncertainty.
control may be very different. If all the elements in the matrices EI or EO are non-zero,
then we have full block (“unstructured”) uncertainty. However, in many cases the source of The reverse statement is not true, that is, if the RGA has small elements we cannot conclude
uncertainty is in the individual input or output channels, and we have that EI or EO are that the sensitivity to input uncertainty is small. This is seen from the following expression for
diagonal matrices, for example, 
the 2 2 case
 g12 
EI = diagf1 ; 2 ; : : :g (6.53) GEI G 1 = g21111 (+ 12 2 ) g22 11+(1 2 ) (6.57)
g11 11 1 2 21 1 22 2
where i is the relative uncertainty in input channel i. Typically, the magnitude of i is 0.1 or For example, consider a triangular plant with g12 = 0. In this case the RGA is  = I so
larger. It is important to stress that this diagonal input uncertainty is always present in real the diagonal elements of GEI G 1 are 1 and 2 . Still, the system may be sensitive to input
systems. uncertainty, since from (6.57) the 2; 1-element of GEI G 1 may be large if g21 =g11 is large.
236 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 237

6.10.3 Uncertainty and the benefits of feedback Remark 3 Another form of (6.59) is (Zames, 1981)

To illustrate the benefits of feedback control in reducing the sensitivity to uncertainty, we T0 T = S 0 (L0 L)S (6.64)
consider the effect of output uncertainty on reference tracking. As a basis for comparison we Conclusion. From (6.59), (6.63) and (6.64) we see that with feedback control T 0 T is small
first consider feedforward control. at frequencies where feedback is effective (i.e. S and S0 are small). This is usually at low
Feedforward control. Let the nominal transfer function with feedforward control be y = Tr r frequencies. At higher frequencies we have for real systems that L is small, so T is small,
where Tr = GKr and Kr denotes the feedforward controller. Ideally, Tr = I . With model and again T 0 T is small. Thus with feedback, uncertainty only has a significant effect in the
error Tr0 = G0 Kr , and the change in response is y0 y = (Tr0 Tr )r where crossover region where S and T both have norms around 1.

Tr0 Tr = (G0 G)G 1 Tr = EO Tr (6.58)

Thus, y 0 y = EO Tr r = EO y , and with feedforward control the relative control error caused 6.10.4 Uncertainty and the sensitivity peak
by the uncertainty is equal to the relative output uncertainty.
We demonstrated above how feedback may reduce the effect of uncertainty, but we also
Feedback control. With one degree-of-freedom feedback control the nominal transfer pointed out that uncertainty may pose limitations on achievable performance, especially at
function is y = T r where T = L(I + L) 1 is the complementary sensitivity function. crossover frequencies. The objective in the following is to investigate how the magnitude of
Ideally, T = I . The change in response with model error is y0 y = (T 0 T )r where from  (S 0 ), is affected by the multiplicative output uncertainty and input uncertainty
the sensitivity, 
(A.144) given as (6.51) and (6.52). We will derive upper bounds on   (S0 ) which involve the plant and
T 0 T = S 0 EO T (6.59) controller condition numbers
Thus, y 0 y = S 0 EO T r = S 0 EO y , and we see that
(G) =  (G) ; (K ) =  (K ) (6.65)
 (G)  (K )
 with feedback control the effect of the uncertainty is reduced by a factor S0 compared to
that with feedforward control. and the following minimized condition numbers of the plant and the controller

Thus, feedback control is much less sensitive to uncertainty than feedforward control at I (G) = min
DI
(GDI ); O (K ) = min
DO
(DO K ) (6.66)
frequencies where feedback is effective and the elements in S0 are small. However, the
opposite may be true in the crossover frequency range where S0 may have elements larger where DI and DO are diagonal scaling matrices. These minimized condition numbers may
than 1; see Section 6.10.4.  (S0 ) for an
be computed using (A.74) and (A.75). Similarly, we state a lower bound on 
inverse-based controller in terms of the RGA-matrix of the plant.
Remark 1 For square plants, EO G)G 1 and (6.59) becomes
= (G 0 The following factorizations of S 0 in terms of the nominal sensitivity S (see Appendix A.6)
T  T 1 = S 0  G  G 1
form the basis for the development:
S0 = S (I + EO T ) 1
(6.60)
Output uncertainty: (6.67)
where T = T 0 T and G = G0 G. Equation (6.60) provides a generalization of Bode’s Input uncertainty: S = S (I + GEI G 1 T ) 1 = SG(I + EI TI ) 1 G 1
0 (6.68)
differential relationship (2.23) for SISO systems. To see this, consider a SISO system and let
G 0. Then S 0 S and we have from (6.60)
! ! S 0 = (I + T K 1 EI K ) 1 S = K 1 (I + TI EI ) 1 KS (6.69)
We assume that G and G0 are stable. We also assume closed-loop stability, so that both S and
dT = S dG (6.61) S 0 are stable. We then get that (I + EO T ) 1 and (I + EI TI ) 1 are stable. In most cases we
T G assume that the magnitude of the multiplicative (relative) uncertainty at each frequency can be
Remark 2 Alternative expressions showing the benefits of feedback control are derived by bounded in terms of its singular value
introducing the inverse output multiplicative uncertainty G0 = (I EiO ) 1 G. We then get  (EI )  jwI j;  (EO )  jwO j (6.70)
(Horowitz and Shaked, 1975).
where wI (s) and wO (s) are scalar weights. Typically the uncertainty bound, jwI j or jwO j, is
Feedforward control: Tr0 Tr = EiO Tr0 (6.62) 0:2 at low frequencies and exceeds 1 at higher frequencies.
Feedback control: T0 T = SEiO T 0 (6.63) We first state some upper bounds on   (S0 ). These are based on identities (6.67)-(6.69) and
G0
singular value inequalities (see Appendix A.3.4) of the kind
(Simple proof for square plants: switch G and in (6.58) and (6.59) and use EiO =
(G0 G)G0 1 ).  ((I + EI TI ) 1 ) = (I +E1 I TI )  1  (E1 I TI )  1  (E1I )(TI )  1 1
jwI j (TI )
238 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 239

Of course these inequalities only apply if we assume   (EI TI ) < 1,  (EI )(TI ) < 1 and Remark. A diagonal controller has O  (K ) = 1, so from (6.77) below we see that (6.75)
j j
wI  (TI ) < 1. For simplicity, we will not state these assumptions each time. applies to both a diagonal and decoupling controller. Another bound which does apply to any
controller is given in (6.77).

(S 0 ) for output uncertainty


Upper bound on  3. Diagonal uncertainty (Any controller). From the first identity in (6.68) we get S0 =
S (I + (GDI )EI (GDI ) 1 T ) 1 and we derive by singular value inequalities
From (6.67) we derive
 (S 0 )   (S )
 (S 0 )   (S )((I + EO T ) 1 )   (S ) 1 I (G)jwI j (T )
(6.76)
1 jwO j (T )
(6.71)
 (S 0 )   (S )
1 O (K )jwI j (T )
(6.77)
From (6.71) we see that output uncertainty, be it diagonal or full block, poses no particular
problem when performance is measured at the plant output. That is, if we have a reasonable  (K ) = 1 for a diagonal controller so (6.77) shows that diagonal uncertainty does
margin to stability ( (I + EO T ) 1 1 is not too much larger than 1), then the nominal and
k k Note that O
perturbed sensitivities do not differ very much. not pose much of a problem when we use decentralized control.

 (S 0 ) for input uncertainty


Upper bounds on   (S 0 ) for input uncertainty
Lower bound on 

The sensitivity function can be much more sensitive to input uncertainty than output Above we derived upper bounds on   (S0 ); we will next derive a lower bound. A lower bound
uncertainty. is more useful because it allows us to make definite conclusions about when the plant is not
input-output controllable.
1. General case (full block or diagonal input uncertainty and any controller). From (6.68) and
(6.69) we derive Theorem 6.3 Input uncertainty and inverse-based control. Consider a controller K (s) =
l(s)G 1 (s) which results in a nominally decoupled response with sensitivity S = s I and 
 (S 0 )  (G)(S )((I + EI TI ) 1 )  (G) 1 jw(ISj) (TI ) (6.72)

complementary sensitivity T = t I where t(s) = 1 s(s). Suppose the plant has diagonal
 (S ) j j
input uncertainty of relative magnitude wI (j! ) in each input channel. Then there exists a
 (S 0 )  (K ) (S )((I + TI EI ) 1 )  (K )
1 jwI j (TI )
(6.73) combination of input uncertainties such that at each frequency

From (6.73) we have the important result that if we use a “round” controller, meaning that  (S 0 )
jwI tj k(G)ki1 
  (S ) 1+
1 + jwI tj
(6.78)
(K ) is close to 1, then the sensitivity function is not sensitive to input uncertainty. In
many cases (6.72) and (6.73) are not very useful because they yield unnecessarily large upper where k(G)ki1 is the maximum row sum of the RGA and 
 (S ) = jsj.
bounds. To improve on this conservativeness we present below some bounds for special cases,
where we either restrict the uncertainty to be diagonal or restrict the controller to be of a The proof is given below. From (6.78) we see that with an inverse based controller the worst
particular form. case sensitivity will be much larger than the nominal at frequencies where the plant has large
2. Diagonal uncertainty and decoupling controller. Consider a decoupling controller in the RGA-elements. At frequencies where control is effective ( s is small and t jj jj
1) this implies
form K (s) = D(s)G 1 (s) where D(s) is a diagonal matrix. In this case, KG is diagonal so that control is not as good as expected, but it may still be acceptable. However, at crossover
TI = KG(I + KG) 1 is diagonal, and EI TI is diagonal. The second identity in (6.68) may jj jj j j
frequencies where s and t = 1 s are both close to 1, we find that   (S0 ) in (6.78)
then be written S 0 = S (GDI )(I + EI TI ) 1 (GDI ) 1 where DI is freely chosen, and we may become much larger than 1 if the plant has large RGA-elements at these frequencies.
get The bound (6.78) applies to diagonal input uncertainty and therefore also to full-block input

 I (G)(S )((I + EI TI ) 1 )  I(G) 1 jw(ISj) (TI )


uncertainty (since it is a lower bound).
 (S 0 ) (6.74) Worst-case uncertainty. It is useful to know which combinations of input errors give poor
 (S ) performance. For an inverse-based controller a good indicator results if we consider GEI G 1 ,
 (S 0 )  O (K )(S ) ((I + TI EI ) 1 )  O (K ) f g j j
where EI = diag k . If all k have the same magnitude wI , then the largest possible
1 jwI j (TI )
(6.75)
magnitude of any diagonal element in GEI G 1 is given by wI j jk k
(G) i1 . To obtain this
The bounds (6.74) and (6.75) apply to any decoupling controller in the form K = DG 1 . value one may select the phase of each k such that k = \ \
ik where i denotes the row
In particular, they apply to inverse-based control, D = l(s)I , which yields input-output of (G) with the largest elements. Also, if (G) is real (e.g. at steady-state), the signs of the

decoupling with TI = T = t I where t = 1+ l .
l k ’s should be the same as those in the row of (G) with the largest elements.
240 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 241

Proof of Theorem 6.3: (From Skogestad and Havre (1996) and Gjøsæter (1995)). Write the With EI = diagf1 ; 2 g we get for all frequencies

27:71 + 27:72 
sensitivity function as
GEI G 1 = 35:11 34:12
S 0 = (I + G0 K ) 1 = SG (I + EI TI ) 1 G 1 ; EI = diagfk g; S = sI (6.79) 43:21 43:22 34:11 + 35:12 (6.84)
| {z }
D We note as expected from (6.57) that the RGA-elements appear on the diagonal elements in
Since D is a diagonal matrix, we have from (6.56) that the diagonal elements of S0 are given the matrix GEI G 1 . The elements in the matrix GEI G 1 are largest when 1 and 2 have
in terms of the RGA of the plant G as opposite signs. With a 20% error in each input channel we may select 1 = 0:2 and 2 = 0:2
n and find  
s0ii = s
X
ik dk ; dk = 1
;  = G  (G 1 )T GEI G 1 = 13:8 11:1
k=1 1 + tk
(6.80) 17:2 13:8 (6.85)

Thus with an “ideal” feedforward controller and 20% input uncertainty, we get from (6.55)
(Note that s here is a scalar sensitivity function and not the Laplace variable.) The singular that the relative tracking error at all frequencies, including steady-state, may exceed 1000%.
 (S0 ) maxi s0ii , and the objective
value of a matrix is larger than any of its elements, so   j j
in the following is to choose a combination of input errors k such that the worst-case s0ii is j j This demonstrates the need for feedback control. However, applying feedback control is also
difficult for this plant as seen in Example 6.7.
as large as possible. Consider a given output i and write each term in the sum in (6.80) as

ik dk = ik = ik ik tk Example 6.7 Feedback control of distillation process. Consider again the distillation
I (G)
(6.81)
1 + tk 1 + tk k k
process G(s) in (6.83) for which we have (G(j! )) i1 = 69:1 and (G)  
We choose all k to have the same magnitude jwI (j! )j, so we have k (j! ) = jwI jej \k . We 141:7 at all frequencies.
also assume that jtk j < 1 at all frequencies3 , such that the phase of 1 + tk lies between 1. Inverse based feedback controller. Consider the controller K (s) = (0:7=s)G 1 (s)
90Æ and 90Æ . It is then always possible to select \k (the phase of k ) such that the last term corresponding to the nominal sensitivity function
in (6.81) is real and negative, and we have at each frequency, with these choices for k ,
S (s) = s I
s0ii = X n
ik dk = 1 +
Xn
jik j  jtk j s + 0:7
s k=1 k=1 j1 + tk j The nominal response is excellent, but we found from simulations in Figure 3.12 that the
n n closed-loop response with 20% input gain uncertainty was extremely poor (we used 1 = 0:2
 1 + j1ik+j jwjwI Itjtj jwI tj X
X
= 1+ j j
1 + jwI tj k=1 ik
(6.82) and 2 = 0:2). The poor response is easily explained from the lower RGA-bound on   (S0 )
k=1 in (6.78). With the inverse-based controller we have l(s) = k=s which has a nominal phase
where the first equality makes use of the fact that the row-elements of the RGA sum to 1, margin of PM= 90Æ so from (2.42) we have, at frequency !c , that s(j!c ) = t(j!c ) =
p j j j j
P
( n j j
k=1 ik = 1). The inequality follows since k = wI and 1 + tk j j j 1 + tk = j j j j j
1= 2 = 0:707. With wI = 0:2, we then get from (6.78) that
j j
1 + wI t . This derivation holds for any i (but only for one at a time), and (6.78) follows by  
 (S 0 (j!c ))  0:707 1 + 0:707  0:2  69:1 = 0:707  9:56 = 6:76
Pn
j j
selecting i to maximize k=1 ik (the maximum row-sum of the RGA of G). 2
1:14
(6.86)

We next consider three examples. In the first two, we consider feedforward and (This is close to the peak value in (6.78) of 6:81 at frequency 0:79 rad/min.) Thus, we have
feedback control of a plant with large RGA-elements. In the third, we consider that with 20% input uncertainty we may have S0 1 k k  6:81 and this explains the observed
feedback control of a plant with a large condition number, but with small RGA- poor closed-loop performance. For comparison, the actual worst-case peak value of   (S0 ),
elements. The first two are sensitive to diagonal input uncertainty, whereas the third with the inverse-based controller is 14.5 (computed numerically using skewed- as discussed
is not. below). This is close to the value obtained with the uncertainty EI = diag 1 ; 2 = f g
f
diag 0:2; 0:2 , g

Example 6.6 Feedforward control of distillation process. Consider the distillation    1
process in (3.81).
  
kS 0 k1 = I + 0s:7 G 1:2 0:8 G
1

= 14:2
G(s) = 1 87:8 86:4 35:1 34:1  1
75s + 1 108:2 109:6 ; (G) = 34:1 35:1 (6.83)
for which the peak occurs at 0:69 rad/min. The difference between the values 6:81 and 14:5
3 The assumption jtk j < 1 is not included in the theorem since it is actually needed for robust stability, illustrates that the bound in terms of the RGA is generally not tight, but it is nevertheless very
 (S0 ) infinite for some allowed uncertainty, and (6.78) clearly holds.
so if it does not hold we may have  useful.
242 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 243

Next, we look at the upper bounds. Unfortunately, in this case I (G) = O  (K ) 141:7,

so the upper bounds on  0
 (S ) in (6.74) and (6.75) are not very tight (they are of magnitude U1
2 2
141:7 at high frequencies).

Magnitude

Magnitude
2. Diagonal (decentralized) feedback controller. Consider the controller L1
U2 U2
 
Kdiag (s) = k2 (s + 1) 1 0 ; k2 = 2:4  10 2 [min 1 ]
U1
L1
0 1
1 1
s
The peak value for the upper bound on   (S0 ) in (6.77) is 1:26, so we are guaranteed
S0 1
k k  1:26, even with 20% gain uncerainty. For comparison, the actual peak in the −1 0 1 2 −1 0 1 2
perturbed sensitivity function with EI = diag 0:2; 0:2 is S 0 1 = 1:05. Of course, the
f g k k 10 10 10 10 10 10 10 10
Frequency [rad/min] Frequency [rad/min]
problem with the simple diagonal controller is that (although it is robust) even the nominal (a) WI (s) = 0:2I (b) WI (s) = 0:2 05:5ss+1+1 I
response is poor.
Figure 6.3: Bounds on the sensitivity function for the distillation column with the DV
The following example demonstrates that a large plant condition number, (G), does configuration: lower bound L1 from (6.78), upper bounds U1 from (6.76) and U2 from (6.74)
not necessarily imply sensitivity to uncertainty even with an inverse-based controller.

plant will be sensitive to diagonal input uncertainty if we use inverse-based feedback control,
K = cs G 1 . This is confirmed if we compute the worst-case sensitivity function S0 for
Example 6.8 Feedback control of distillation process, DV-model. In this example we
G0 = G(I + wI I ) where I is diagonal and wI = 0:2. We find by computing skewed-,
consider the following distillation model given by Skogestad et al. (1988) (it is the same system
j j
s (N1 ), that the peak of  (S0 ) is S 0 1 = 20:43:
as studied above but with the DV- rather than the LV-configuration for the lower control levels,
see Example 10.5): k k
 Note that the peak is independent of the controller gain c in this case since G(s) is a constant
G= 1 87:8 1:4 ; (G) =  0:448 0:552  matrix. Also note that with full-block (“unstructured”) input uncertainty (I is a full matrix)
75s + 1 108:2 1:4 0:552 0:448 (6.87)
the worst-case sensitivity is S 0 1 = 1021:7
k k
We have that k(G(j! ))ki1 = 1, (G)  70:76 and I (G)  1:11 at all frequencies.
Since both the RGA-elements and I (G) are small we do not expect problems with input
uncertainty and an inverse based controller. Consider an inverse-based controller Kinv (s) = Conclusions on input uncertainty and feedback control
(0:7=s)G 1 (s) which yields (K ) = (G) and O (K ) = I (G). In Figure 6.3, we show
the lower bound (6.78) given in terms of kki1 and the two upper bounds (6.74) and (6.76)
given in terms of I (G) for two different uncertainty weights wI . From these curves we see
The following statements apply to the frequency range around crossover. By “small’,
we mean about 2 or smaller. By “large” we mean about 10 or larger.
that the bounds are close, and we conclude that the plant in (6.87) is robust against input
uncertainty even with a decoupling controller. 1. Condition number (G) or (K ) small: robust performance to both diagonal and
full-block input uncertainty; see (6.72) and (6.73).
Remark. Relationship with the structured singular value: skewed-. To analyze exactly 2. Minimized condition numbers I (G) or O  (K ) small: robust performance to
j j
the worst-case sensitivity with a given uncertainty wI we may compute skewed- (s ). With
diagonal input uncertainty; see (6.76) and (6.77). Note that a diagonal controller
reference
 to Section 8.11, e
 this involves computing  (N ) with  = diag(I ; P ) and
e
always has O  (K ) = 1.
wI TI wI KS
N = SG= and varying s until (N ) = 1. The worst-case performance at a
s S=s 3. RGA(G) has large elements: inverse-based controller is not robust to diagonal
 (S0 ) = s (N ).
given frequency is then  input uncertainty; see (6.78). Since diagonal input uncertainty is unavoidable in
practice, the rule is never to use a decoupling controller for a plant with large
Example 6.9 Consider the plant RGA-elements. Furthermore, a diagonal controller will most likely yield poor

1 100 
nominal performance for a plant with large RGA-elements, so we conclude that
G(s) = 0 1 plants with large RGA-elements are fundamentally difficult to control.
4. I (G) is large while at the same time the RGA has small elements: cannot make
for which at all frequencies (G) = I , (G) = 104 ,  (G) = 1:00 and I (G) = 200. any definite conclusion about the sensitivity to input uncertainty based on the
The RGA-matrix is the identity, but since g12 =g11 = 100 we expect from (6.57) that this bounds in this section. However, as found in Example 6.9 we may expect there to
244 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 245

be problems. 6.10.6 Steady-state condition for integral control


Feedback control reduces the sensitivity to model uncertainty at frequencies where
6.10.5 Element-by-element uncertainty the loop gains are large. With integral action in the controller we can achieve zero
steady-state control error, even with large model errors, provided the sign of the
Consider any complex matrix G and let  ij denote the ij ’th element in the plant, as expressed by det G(0), does not change. The statement applies for stable
RGA-matrix of G. The following result holds (Yu and Luyben, 1987; Hovd and plants, or more generally for cases where the number of unstable poles in the plant
Skogestad, 1992): does not change. The conditions are stated more exactly in the following theorem.

Theorem 6.4 The (complex) matrix G becomes singular if we make a relative Theorem 6.5 Let the number of open-loop unstable poles (excluding poles at s = 0)
change 1=ij in its ij -th element, that is, if a single element in G is perturbed of G(s)K (s) and G0 (s)K (s) be P and P 0 , respectively. Assume that the controller
from gij to gpij = gij (1 1ij ). K is such that GK has integral action in all channels, and that the transfer functions
GK and G0 K are strictly proper. Then if
The theorem is proved in Appendix A.4. Thus, the RGA-matrix is a direct measure 
of sensitivity to element-by-element uncertainty and matrices with large RGA-values
det G0 (0)= det G(0) < 0 for P P 0 even; including zero
become singular for small relative errors in the elements. > 0 for P P 0 odd (6.89)

Example 6.10 The matrix G in (6.83) is non-singular. The 1; 2-element of the RGA is at least one of the following instabilities will occur: a) The negative feedback closed-
12 (G) = 34:1. Thus, the matrix G becomes singular if g12 = 86:4 is perturbed to loop system with loop gain GK is unstable. b) The negative feedback closed-loop
system with loop gain G0 K is unstable.
gp12 = 86:4(1 1=( 34:1)) = 88:9 (6.88)

Proof: For stability of both (I + GK ) 1 and (I + G0 K ) 1 we have from Lemma A.5


P 0 times as s
The above result is an important algebraic property of the RGA, but it also has
in Appendix A.6.3 that det(I + EO T (s)) needs to encircle the origin P
important implications for improved control:
traverses the Nyquist D-contour. Here T (0) = I because of the requirement for integral
1) Identification. Models of multivariable plants, G(s), are often obtained by action in all channels of GK . Also, since GK and G0 K are strictly proper, EO T is strictly
identifying one element at a time, for example, using step responses. From proper, and hence EO (s)T (s) ! 0 as s !1 . Thus, the map of det(I + EO T (s)) starts at
Theorem 6.4 it is clear that this simple identification procedure will most likely give det G0 (0)= det G(0) (for s = 0) and ends at 1 (for s = ). A more careful analysis of the
1
meaningless results (e.g. the wrong sign of the steady-state RGA) if there are large Nyquist plot of det(I + EO T (s)) reveals that the number of encirclements of the origin will
be even for det G0 (0)= det G(0) > 0, and odd for det G0 (0)= det G(0) < 0. Thus, if this
parity (odd or even) does not match that of P P 0 we will get instability, and the theorem
RGA-elements within the bandwidth where the model is intended to be used.
2) RHP-zeros. Consider a plant with transfer function matrix G(s). If the relative follows. 2
uncertainty in an element at a given frequency is larger than j1= ij (j! )j then the
plant may be singular at this frequency, implying that the uncertainty allows for a
RHP-zero on the j! -axis. This is of course detrimental to performance both in terms Example 6.11 Suppose the true model of a plant is given by G(s), and that by careful
identification we obtain a model G1 (s),
of feedforward and feedback control.
G= 1  87:8 86:4  1  87 88 
Remark. Theorem 6.4 seems to “prove” that plants with large RGA-elements are 75s + 1 108:2 109:6 ; G1 (s) = 75s + 1 109 108
fundamentally difficult to control. However, although the statement may be true (see the
conclusions on page 243), we cannot draw this conclusion from Theorem 6.4. This is because At first glance, the identified model seems very good, but it is actually useless for control
the assumption of element-by-element uncertainty is often unrealistic from a physical point of purposes since det G1 (0) has the wrong sign; det G(0) = 274:4 and det G1 (0) = 196
view, since the elements are usually coupled in some way. For example, this is the case for the (also the RGA-elements have the wrong sign; the 1; 1-element in the RGA is 47:9 instead
distillation column process where we know that the elements are coupled due to an underlying of +35:1). From Theorem 6.5 we then get that any controller with integral action designed
physical constraint in such a way that the model (6.83) never becomes singular even for large based on the model G1 , will yield instability when applied to the plant G.
changes in the transfer function matrix elements.
246 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 247

6.11 MIMO Input-output controllability 8. The minimum singular value,  (G(j! )), is a particularly useful controllability
measure. It should generally be as large as possible at frequencies where control
We now summarize the main findings of this chapter in an analysis procedure for is needed. If  (G(j! )) < 1 then we cannot at frequency ! make independent
input-output controllability of a MIMO plant. The presence of directions in MIMO output changes of unit magnitude by using inputs of unit magnitude.
systems makes it more difficult to give a precise description of the procedure in terms 9. For disturbances, consider the elements of the matrix G d . At frequencies where
of a set of rules as was done in the SISO case. one or more elements is larger than 1, we need control. We get more information
by considering one disturbance at a time (the columns g d of Gd ). We must require
for each disturbance that S is less than 1=kg dk2 in the disturbance direction y d , i.e.
6.11.1 Controllability analysis procedure kSydk2  1=kgdk2; see (6.33). Thus, we must at least require (S )  1=kg dk2
and we may have to require   (S )  1=kg dk2 ; see (6.34).
The following procedure assumes that we have made a decision on the plant inputs
and plant outputs (manipulations and measurements), and we want to analyze the Remark. If feedforward control is already used, then one may instead analyze G
bd (s) =
model G to find out what control performance can be expected. GKd Gmd + Gd where Kd denotes the feedforward controller, see (5.78).
The procedure can also be used to assist in control structure design (the selection
10. Disturbances and input saturation:
of inputs, outputs and control configuration), but it must then be repeated for each
G corresponding to each candidate set of inputs and outputs. In some cases the First step. Consider the input magnitudes needed for perfect control by
number of possibilities is so large that such an approach becomes prohibitive. In computing the elements in the matrix G y Gd . If all elements are less than
this case some pre-screening is required, for example, based on physical insight or by 1 at all frequencies then input saturation is not expected to be a problem. If
analyzing the “large” model, G all , with all the candidate inputs and outputs included. some elements of Gy Gd are larger than 1, then perfect control (e = 0) cannot
This is briefly discussed in Section 10.4. be achieved at this frequency, but “acceptable” control (kek 2 < 1) may be
A typical MIMO controllability analysis may proceed as follows: possible, and this may be tested in the second step.
Second step. Check condition (6.47), that is, consider the elements of U H Gd and
1. Scale all variables (inputs u, outputs y , disturbances d, references, r) to obtain a make sure that the elements in the i’th row are smaller than  i (G) + 1, at all
scaled model, y = G(s)u + Gd (s)d; r = Rre; see Section 1.4. frequencies.
2. Obtain a minimal realization.
3. Check functional controllability. To be able to control the outputs independently, 11. Are the requirements compatible? Look at disturbances, RHP-poles and RHP-
we first need at least as many inputs u as outputs y . Second, we need the rank of zeros and their associated locations and directions. For example, we must require
G(s) to be equal to the number of outputs, l, i.e. the minimum singular value of for each disturbance and each RHP-zero that jy zH gd (z )j  1; see (6.35). For
G(j!),  (G) = l (G), should be non-zero (except at possible j!-axis zeros). If combined RHP-zeros and RHP-poles see (6.10) and (6.11).
the plant is not functionally controllable then compute the output direction where 12. Uncertainty. If the condition number (G) is small then we expect no particular
the plant has no gain, see (6.16), to obtain insight into the source of the problem. problems with uncertainty. If the RGA-elements are large, we expect strong
4. Compute the poles. For RHP (unstable) poles obtain their locations and associated sensitivity to uncertainty. For a more detailed analysis see the conclusion on
directions; see (6.5). “Fast” RHP-poles far from the origin are bad. page 243.
5. Compute the zeros. For RHP-zeros obtain their locations and associated 13. If decentralized control (diagonal controller) is of interest see the summary on
directions. Look for zeros pinned into certain outputs. “Small” RHP-zeros (close page 453.
to the origin) are bad if tight performance at low frequencies is desired. 14. The use of the condition number and RGA are summarized separately in
6. Obtain the frequency response G(j! ) and compute the RGA matrix,  = G  Section 3.6, page 87.
(Gy )T . Plants with large RGA-elements at crossover frequencies are difficult to
control and should be avoided. For more details about the use of the RGA see
Section 3.6, page 87. A controllability analysis may also be used to obtain initial performance weights
7. From now on scaling is critical. Compute the singular values of G(j! ) and plot for controller design. After a controller design one may analyze the controller by
them as a function of frequency. Also consider the associated input and output plotting, for example, its elements, singular values, RGA and condition number as a
singular vectors. function of frequency.
248 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 249

6.11.2 Plant design changes Remark. Adding outputs. It has also been argued that it is possible to remove multivariable
zeros by adding extra outputs. To some extent this is correct. For example, it is well-known
If a plant is not input-output controllable, then it must somehow be modified. Some that there are no zeros if we use all the states as outputs, see Example 4.13. However, to control
possible modifications are listed below. all the states independently we need as many inputs as there are states. Thus, by adding outputs
to remove the zeros, we generally get a plant which is not functionally controllable, so it does
Controlled outputs. Identify the output(s) which cannot be controlled satisfactorily. not really help.
Can the specifications for these be relaxed?
Manipulated inputs. If input constraints are encountered then consider replacing
or moving actuators. For example, this could mean replacing a control valve with a
larger one, or moving it closer to the controlled output. 6.11.3 Additional exercises
If there are RHP-zeros which cause control problems then the zeros may often be The reader will be better prepared for some of these exercises following an initial
eliminated by adding another input (possibly resulting in a non-square plant). This reading of Chapter 10 on decentralized control. In all cases the variables are assumed
may not be possible if the zero is pinned to a particular output. to be scaled as outlined in Section 1.4.
Extra Measurements. If the effect of disturbances, or uncertainty, is large, and
Exercise 6.7 Analyze input-output controllability for
the dynamics of the plant are such that acceptable control cannot be achieved, then " #
1 1
G(s) = 2 1 0:01s:+1
consider adding “fast local loops” based on extra measurements which are located
close to the inputs and disturbances; see Section 10.8.3 and the example on page 207. s + 100 ss+0+1
1 1
Disturbances. If the effect of disturbances is too large, then see whether the Compute the zeros and poles, plot the RGA as a function of frequency, etc.
disturbance itself may be reduced. This may involve adding extra equipment to
dampen the disturbances, such as a buffer tank in a chemical process or a spring Exercise 6.8 Analyze input-output controllability for
 
in a mechanical system. In other cases this may involve improving or changing
G(s) = 1 s + 1 +
the control of another part of the system, e.g. we may have a disturbance which (s + 1)(s + 1 + 2 ) s + 1 +
is actually the manipulated input for another part of the system.
where  = 100; consider two cases: (a) = 20, and (b) = 2.
Plant dynamics and time delays. In most cases, controllability is improved by  
Remark. This is a simple “two-mixing-tank” model of a heat exchanger where u = TT1in ,
making the plant dynamics faster and by reducing time delays. An exception to this
  2in
y = TT1out and is the number of heat transfer units.
is a strongly interactive plant, where an increased dynamic lag or time delay, may
be helpful if it somehow “delays” the effect of the interactions; see (6.17). Another 2out
more obvious exception is for feedforward control of a measured disturbance, where
a delay for the disturbance’s effect on the outputs is an advantage. Exercise 6.9 Let

A= 10 0 ; B = I; C =  10 1:1 ; D =  0 0 
Example 6.12 Removing zeros by adding inputs. Consider a stable 2  2 plant 0 1 10 0 0 1
1 s+ 1 s +3 (a) Perform a controllability analysis of G(s).
G1 (s) =
(s + 2)2 1 2 (b) Let x_ = Ax + Bu + d and consider a unit disturbance d = [ z1 z2 ]T . Which direction
(value of z1 =z2 ) gives a disturbance that is most difficult to reject (consider both RHP-zeros
which has a RHP-zero at s = 1 which limits achievable performance. The zero is not pinned and input saturation)?
to a particular output, so it will most likely disappear if we add a third manipulated input. (c) Discuss decentralized control of the plant. How would you pair the variables?
Suppose the new plant is
 
G2 (s) = 1 2 s +1 1 s +2 3 s +3 6
Exercise 6.10 Consider the following two plants. Do you expect any control problems?
(s + 2) Could decentralized or inverse-based control be used? What pairing would you use for
decentralized control?
which indeed has no zeros. It is interesting to note that each of the three 2  2 sub-plants of 1 
s 1 
s
G2 (s) has a RHP-zero (located at s = 1, s = 1:5 and s = 3, respectively). Ga (s) = 42 s 20
1:25(s + 1)(s + 20)
250 MULTIVARIABLE FEEDBACK CONTROL LIMITATIONS IN MIMO SYSTEMS 251
 
Gb (s) = 2 1 1 0:1(s 1) 
Acceptable control of this 3 3 plant can be achieved with partial control of two outputs with
(s + 0:1) 10(s + 0:1)=s (s + 0:1)=s 
input 3 in manual (not used). That is, we have a 2 2 control problem. Consider three options
for the controlled outputs:
Exercise 6.11 Order the following three plants in terms of their expected ease of      
controllability Y1 = yy12 ; Y2 = yy23 ; Y3 = y2 y1 y3
   s  s
G1 (s) = 100 95 ; G2 (s) = 100e s 95e ; G3 (s) = 100 95e
100 100 100 100 100 100 In all three cases the inputs are u1 and u2 . Assume that the third
input is a disturbance
(d = u3 ).
Remember to also consider the sensitivity to input gain uncertainty.

(a) Based on the zeros of the three 2 2 plants, G1 (s), G2 (s) and G3 (s), which choice of
outputs do you prefer? Which seems to be the worst?
Exercise 6.12 Analyze input-output controllability for
" It may be useful to know that the zero polynomials:
5000s 2( 5s+1) #
G(s) = (5000s+1)(2
3
s+1) 100s+1
3
a 5:75  107 s4 + 3:92  1076 s33 + 3:85  1066 s22 + 1:22  1054 s + 1:03  1032
5s+1 5s+1 b 4:44  10 s 1:05  10 s 8:61  10 s 9:43  10
c 5:75  107 s4 8:75  106 s3 5:66  105 s2 + 6:35  103 s + 1:60  102
Exercise 6.13 Analyze input-output controllability for have the following roots:
# "" 1 #
102 ; gd1 (s) = s10
  a 0:570 0:0529 0:0451 0:0132
G(s) = 100
100 100
+1
10 ; g d 2 = s+1
1 b 0:303 0:0532 0:0132
s+1 s+1 c 0:199 0:0532 0:0200 0:0132
Which disturbance is the worst? (b) For the preferred choice of outputs in (a) do a more detailed analysis of the expected
control performance (compute poles and zeros, sketch RGA11 , comment on possible problems
Exercise 6.14 (a) Analyze input-output controllability for the following three plants each of with input constraints (assume the inputs and outputs have been properly scaled), discuss the
which has 2 inputs and 1 output: G(s) = (g1 (s) g2 (s)) effect of the disturbance, etc.). What type of controller would you use? What pairing would
(i) g1 (s) = g2 (s) = ss+22 . you use for decentralized control?
(ii) g1 (s) = ss+22 ; g2 (s) = ss+22::11 . (c) Discuss why the 3  3 plant may be difficult to control.
(iii) g1 (s) = ss+22 ; g2 (s) = ss+20
20 .
Remark. This is actually a model of a fluid catalytic cracking (FCC) reactor where u =
(b) Design controllers and perform closed-loop simulations of reference tracking to
(Fs Fa kc )T represents the circulation, airflow and feed composition, and y = (T1 Tcy Trg )T
complement your analysis. Consider also the input magnitudes.
represents three temperatures. G1 (s) is called the Hicks control structure and G3 (s) the
conventional structure. More details are found in Hovd and Skogestad (1993).
Exercise 6.15 Find the poles and zeros and analyze input-output controllability for
 
G(s) = c +(1(1=s) 1=s
=s) c + 1=s
Here c is a constant, e.g. c = 1. Remark. A similar model form is encountered for distillation
6.12 Conclusion
columns controlled with the DB -configuration. In which case the physical reason for the
model being singular at steady-state is that the sum of the two manipulated inputs is fixed at We have found that most of the insights into the performance limitations of SISO
steady-state, D + B = F . systems developed in Chapter 5 carry over to MIMO systems. For RHP-zeros, RHP-
poles and disturbances, the issue of directions usually makes the limitations less
Exercise 6.16 Controllability of an FCC process. Consider the following 3  3 plant severe for MIMO than for SISO systems. However, the situation is usually the
"
y1 # " #
u1 1
opposite with model uncertainty because for MIMO systems there is also uncertainty
y2 = G(s) u2 ; f (s) = associated with plant directionality. This is an issue which is unique to MIMO
y3 u3 (18:8 s + 1)(75 :8s + 1) systems.
"
16:8(920s2 + 32:4s + 1) 30:5(52:1s + 1) 4:30(7:28s + 1) # We summarized on page 246 the main steps involved in an analysis of input-output
G(s) = f (s) 16:7(75:5s + 1) 31:0(75:8s + 1)(1:58s + 1) 1:41(74:6s + 1)
1:27( 939s + 1) 54:1(57:3s + 1) 5:40 controllability of MIMO plants.
252 MULTIVARIABLE FEEDBACK CONTROL

UNCERTAINTY AND
ROBUSTNESS FOR SISO
SYSTEMS
In this chapter, we show how to represent uncertainty by real or complex perturbations and we
analyze robust stability (RS) and robust performance (RP) for SISO systems using elementary
methods. Chapter 8 is devoted to a more general treatment.

7.1 Introduction to robustness


A control system is robust if it is insensitive to differences between the actual
system and the model of the system which was used to design the controller. These
differences are referred to as model/plant mismatch or simply model uncertainty. The
key idea in the H 1 robust control paradigm we use is to check whether the design
specifications are satisfied even for the “worst-case” uncertainty.
Our approach is then as follows:
1. Determine the uncertainty set: find a mathematical representation of the model
uncertainty (“clarify what we know about what we don’t know”).
2. Check Robust stability (RS): determine whether the system remains stable for all
plants in the uncertainty set.
3. Check Robust performance (RP): if RS is satisfied, determine whether the
performance specifications are met for all plants in the uncertainty set.
This approach may not always achieve optimal performance. In particular, if the
worst-case plant rarely or never occurs, other approaches, such as optimizing some
average performance or using adaptive control, may yield better performance.
Nevertheless, the linear uncertainty descriptions presented in this book are very
useful in many practical situations.
254 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 255

It should also be appreciated that model uncertainty is not the only concern when In LQG control we set wd = d1 + d2 where wd is assumed to be an independent variable such
it comes to robustness. Other considerations include sensor and actuator failures, as white noise. Then in the design problem we may make wd large by selecting appropriate
physical constraints, changes in control objectives, the opening and closing of weighting functions, but its presence will never cause instability. However, in reality wd =
Eu + d2 , so wd depends on the signal u and this may cause instability in the presence of
feedback when u depends on y . Specifically, the closed-loop system (I + (G + E )K ) 1 may
loops, etc. Furthermore, if a control design is based on an optimization, then
robustness problems may also be caused by the mathematical objective function not
properly describing the real control problem. Also, the numerical design algorithms
6
be unstable for some E = 0. In conclusion, it may be important to explicitly take into account
model uncertainty when studying feedback control.
themselves may not be robust. However, when we refer to robustness in this book, we
mean robustness with respect to model uncertainty, and assume that a fixed (linear)
controller is used. We will next discuss some sources of model uncertainty and outline how to represent
these mathematically.
To account for model uncertainty we will assume that the dynamic behaviour of a
plant is described not by a single linear time invariant model but by a set  of possible
linear time invariant models, sometimes denoted the “uncertainty set”. We adopt the
following notation: 7.2 Representing uncertainty
 – a set of possible perturbed plant models.
G(s) 2  – nominal plant model (with no uncertainty). Uncertainty in the plant model may have several origins:

Gp (s) 2  and G0 (s) 2  – particular perturbed plant models. 1. There are always parameters in the linear model which are only known
Sometimes Gp is used rather than  to denote the uncertainty set, whereas G 0 always
approximately or are simply in error.
2. The parameters in the linear model may vary due to nonlinearities or changes in
refers to a specific uncertain plant. The subscript p stands for perturbed or possible the operating conditions.
or  (pick your choice). This should not be confused with the subscript capital P , 3. Measurement devices have imperfections. This may even give rise to uncertainty
e.g. in wP , which denotes performance. on the manipulated inputs, since the actual input is often measured and adjusted
We will use a “norm-bounded uncertainty description” where the set  is generated in a cascade manner. For example, this is often the case with valves where a flow
by allowing H1 norm-bounded stable perturbations to the nominal plant G(s). This controller is often used. In other cases limited valve resolution may cause input
corresponds to a continuous description of the model uncertainty, and there will be uncertainty.
an infinite number of possible plants G p in the set . We let E denote a perturbation 4. At high frequencies even the structure and the model order is unknown, and the
which is not normalized, and let  denote a normalized perturbation with H 1 norm uncertainty will always exceed 100% at some frequency.
less than 1. 5. Even when a very detailed model is available we may choose to work with
a simpler (low-order) nominal model and represent the neglected dynamics as
Remark. Another strategy for dealing with model uncertainty is to approximate its effect on “uncertainty”.
the feedback system by adding fictitious disturbances or noise. For example, this is the only 6. Finally, the controller implemented may differ from the one obtained by solving
way of handling model uncertainty within the so-called LQG approach to optimal control (see the synthesis problem. In this case one may include uncertainty to allow for
Chapter 9). Is this an acceptable strategy? In general, the answer is no. This is easily illustrated controller order reduction and implementation inaccuracies.
for linear systems where the addition of disturbances does not affect system stability, whereas
model uncertainty combined with feedback may easily create instability. The various sources of model uncertainty mentioned above may be grouped into two
For example, consider a plant with a nominal model y = Gu + Gd d, and let the perturbed main classes:
plant model be Gp = G + E where E represents additive model uncertainty. Then the output
of the perturbed plant is 1. Parametric uncertainty. Here the structure of the model (including the order) is
y = Gp u + Gd d = Gu + d1 + d2 (7.1) known, but some of the parameters are uncertain.
2. Neglected and unmodelled dynamics uncertainty. Here the model is in
where y is different from what we ideally expect (namely Gu) for two reasons:
error because of missing dynamics, usually at high frequencies, either through
1. Uncertainty in the model (d1 = Eu) deliberate neglect or because of a lack of understanding of the physical process.
2. Signal uncertainty (d2 = Gd d) Any model of a real system will contain this source of uncertainty.
256 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 257

Parametric uncertainty will be quantified by assuming that each uncertain parameter Remark 1 The stability requirement on I (s) may be removed if one instead assumes that
is bounded within some region [ min ; max ]. That is, we have parameter sets of the the number of RHP poles in G(s) and Gp (s) remains unchanged. However, in order to
form simplify the stability proofs we will in this book assume that the perturbations are stable.
p = (1 + r ) Remark 2 The subscript I denotes “input”, but for SISO systems it doesn’t matter whether
where  is the mean parameter value, r = ( max min)=( max + min) is the we consider the perturbation at the input or output of the plant, since
relative uncertainty in the parameter, and  is any real scalar satisfying jj  1.
G(1 + wI I ) = (1 + wO O )G with I (s) = O (s) and wI (s) = wO (s)
Neglected and unmodelled dynamics uncertainty is somewhat less precise and thus
more difficult to quantify, but it appears that the frequency domain is particularly well Another uncertainty form, which is better suited for representing pole uncertainty, is
suited for this class. This leads to complex perturbations which we normalize such the inverse multiplicative uncertainty
that kk1  1. In this chapter, we will deal mainly with this class of perturbations.
For completeness one may consider a third class of uncertainty (which is really a iI : Gp (s) = G(s)(1 + wiI (s)iI (s)) 1 ; jiI (j!)j  1 8! (7.3)
combination of the other two):
Even with a stable iI (s) this form allows for uncertainty in the location of an
3. Lumped uncertainty. Here the uncertainty description represents one or several unstable pole, and it also allows for poles crossing between the left- and right-half
sources of parametric and/or unmodelled dynamics uncertainty combined into a planes.
single lumped perturbation of a chosen structure.
Parametric uncertainty is sometimes called structured uncertainty as it models the
uncertainty in a structured manner. Analogously, lumped dynamics uncertainty is
Gp
- -
sometimes called unstructured uncertainty. However, one should be careful about
wI I using these terms because there can be several levels of structure, especially for
MIMO systems.

q e+ -
-+ ? G - Remark. Alternative approaches for describing uncertainty and the resulting performance
may be considered. One approach for parametric uncertainty is to assume a probabilistic (e.g.
normal) distribution of the parameters, and to consider the “average” response. This stochastic
uncertainty is, however, difficult to analyze exactly.
Figure 7.1: Plant with multiplicative uncertainty Another approach is the multi-model approach in which one considers a finite set of alternative
models. This approach is well suited for parametric uncertainty as it eases the burden of the
The frequency domain is also well suited for describing lumped uncertainty. In most engineer in representing the uncertainty. Performance may be measured in terms of the worst-
cases we prefer to lump the uncertainty into a multiplicative uncertainty of the form case or some average of these models’ responses. The multi-model approach can also be used
when there is unmodelled dynamics uncertainty. A problem with the multi-model approach is
I : Gp (s) = G(s)(1 + wI (s)I (s)); j|I (j!{z
)j  1 8!
}
(7.2) that it is not clear how to pick the set of models such that they represent the limiting (“worst-
case”) plants.
kI k1 1
which may be represented by the block diagram in Figure 7.1. Here  I (s) is any To summarize, there are many ways to define uncertainty, from stochastic uncertainty
stable transfer function which at each frequency is less than or equal to one in to differential sensitivity (local robustness) and multi-models. Weinmann (1991)
magnitude. Some examples of allowable  I (s)’s with H1 norm less than one, gives a good overview. In particular, there are several ways to handle parametric
kI k1  1, are uncertainty, and of these the H 1 frequency-domain approach, used in this book,
may not be the best or the simplest, but it can handle most situations as we will see.
s z 1 1 0:1
; ; ; In addition, the frequency-domain is excellent for describing neglected or unknown
s+z s + 1 (5s + 1)3 s2 + 0:1s + 1 dynamics, and it is very well suited when it comes to making simple yet realistic
lumped uncertainty descriptions.
258 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 259

7.3 Parametric uncertainty As shown by the above examples one can represent parametric uncertainty in the
H1 framework. However, parametric uncertainty is often avoided for the following
In spite of what is sometimes claimed, parametric uncertainty may also be reasons:
represented in the H 1 framework, at least if we restrict the perturbations  to be
real. This is discussed in more detail in Section 7.7. Here we provide just two simple 1. It usually requires a large effort to model parametric uncertainty.
examples. 2. A parametric uncertainty model is somewhat deceiving in the sense that it
provides a very detailed and accurate description, even though the underlying
Example 7.1 Gain uncertainty. Let the set of possible plants be assumptions about the model and the parameters may be much less exact.
3. The exact model structure is required and so unmodelled dynamics cannot be dealt
Gp (s) = kp G0 (s); kmin  kp  kmax (7.4) with.
4. Real perturbations are required, which are more difficult to deal with
where kp is an uncertain gain and G0 (s) is a transfer function with no uncertainty. By writing
mathematically and numerically, especially when it comes to controller synthesis.
kp = k(1 + rk ); k , kmin + kmax ; rk , (kmax kmin )=2 ; (7.5)
2 k Therefore, parametric uncertainty is often represented by complex perturbations.
 is the average gain, (7.4) may
where rk is the relative magnitude of the gain uncertainty and k For example, we may simply replace the real perturbation, 1    1 by
be rewritten as multiplicative uncertainty a complex perturbation with j(j! )j  1. This is of course conservative as it
introduces possible plants that are not present in the original set. However, if there are
 0 (s)(1 + rk );
Gp (s) = kG
| {z }
jj  1 (7.6) several real perturbations, then the conservatism is often reduced by lumping these
G(s) perturbations into a single complex perturbation. Typically, a complex multiplicative
perturbation is used, e.g. G p = G(I + wI ).
where  is a real scalar and G(s) is the nominal plant. We see that the uncertainty in (7.6)
is in the form of (7.2) with a constant multiplicative weight wI (s) = rk . The uncertainty How is it possible that we can reduce conservatism by lumping together several real
description in (7.6) can also handle cases where the gain changes sign (kmin < 0 and perturbations? This will become clearer from the examples in the next section, but
kmax > 0) corresponding to rk > 1. The usefulness of this is rather limited, however, since it simply stated the answer is that with several uncertain parameters the true uncertainty
is impossible to get any benefit from control for a plant where we can have Gp = 0, at least region is often quite “disk-shaped”, and may be more accurately represented by a
with a linear controller. single complex perturbation.

Example 7.2 Time constant uncertainty. Consider a set of plants, with an uncertain time
constant, given by
1 7.4 Representing uncertainty in the frequency
Gp (s) = G (s); min  p  max
p s + 1 0
(7.7)
domain
By writing p = (1 + r ), similar to (7.5) with jj < 1, the model set (7.7) can be
rewritten as
In terms of quantifying unmodelled dynamics uncertainty the frequency-domain
G0 G0 1 r s approach (H 1 ) does not seem to have much competition (when compared with other
Gp (s) = = ; wiI (s) =  (7.8)
1 + s + r s |1 +{zs} 1 + wiI (s) 1 + s norms). In fact, Owen and Zames (1992) make the following observation:
G(s)
The design of feedback controllers in the presence of non-parametric and
unstructured uncertainty ... is the raison d’ être for H1 feedback opti-
which is in the inverse multiplicative form of (7.3). Note that it does not make physical sense
for p to change sign, because a value p = 0 corresponds to a pole at infinity in the RHP,
mization, for if disturbances and plant models are clearly parameterized
then H1 methods seem to offer no clear advantages over more conven-
and the corresponding plant would be impossible to stabilize. To represent cases in which a
pole may cross between the half planes, one should instead consider parametric uncertainty
in the pole itself, 1=(s + p), as described in (7.85). tional state-space and parametric methods.
260 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 261

7.4.1 Uncertainty regions 1


To illustrate how parametric uncertainty translates into frequency domain
uncertainty, consider in Figure 7.2 the Nyquist plots (or regions) generated by the
following set of plants
k
Gp (s) = e s ; 2  k; ;  3 (7.9)
+

s + 1 2
Step 1. At each frequency, a region of complex numbers G p (j! ) is generated by
varying the three parameters in the ranges given by (7.9), see Figure 7.2.
In general, these uncertainty regions have complicated shapes and complex
mathematical descriptions, and are cumbersome to deal with in the context of
control system design.
Step 2. We therefore approximate such complex regions as discs (circles) as shown 3
1 2
in Figure 7.3, resulting in a (complex) additive uncertainty description as
discussed next.
Figure 7.3: Disc approximation (solid line) of the original uncertainty region (dashed line).
Plot corresponds to ! = 0:2 in Figure 7.2
Im

methods are rather complex, and although they may be used in analysis, at least for simple
!=1 !=2 systems, they are not really suitable for controller synthesis and will not be pursued further in
! = 0:01 this book.
!=7 ! = 0:05
Re Remark 3 From Figure 7.3 we see that the radius of the disc may be reduced by moving the
center (selecting another nominal model). This is discussed in Section 7.4.4.

! = 0:5
! = 0:2 7.4.2 Representing uncertainty regions by complex
perturbations
We will use disc-shaped regions to represent uncertainty regions as illustrated by the
Figure 7.2: Uncertainty regions of the Nyquist plot at given frequencies. Data from (7.9) Nyquist plots in Figures 7.3 and 7.4. These disc-shaped regions may be generated
by additive complex norm-bounded perturbations (additive uncertainty) around a
nominal plant G
Remark 1 There is no conservatism introduced in the first step when we go from a parametric
uncertainty description as in (7.9) to an uncertainty region description as in Figure 7.2. This
is somewhat surprising since the uncertainty regions in Figure 7.2 seem to allow for more
A : Gp (s) = G(s) + wA (s)A (s); jA (j!)j  1 8! (7.10)
uncertainty. For example, they allow for “jumps” in Gp (j! ) from one frequency to the where A (s) is any stable transfer function which at each frequency is no larger
next (e.g. from one corner of a region to another). Nevertheless, we derive in this and the
than one in magnitude. How is this possible? If we consider all possible  A ’s, then
at each frequency  A (j! ) “generates” a disc-shaped region with radius 1 centred at
next chapter necessary and sufficient frequency-by-frequency conditions for robust stability
based on uncertainty regions. Thus, the only conservatism is in the second step where we
0, so G(j! ) + wA (j! )A (j! ) generates at each frequency a disc-shaped region of
radius jwA (j! )j centred at G(j! ) as shown in Figure 7.4.
approximate the original uncertainty region by a larger disc-shaped region as shown in
Figure 7.3.
Remark 2 Exact methods do exist (using complex region mapping, e.g. see Laughlin et al. In most cases wA (s) is a rational transfer function (although this need not always be
(1986)) which avoid the second conservative step. However, as already mentioned these the case).
262 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 263

Im multiplicative uncertainty descriptions are equivalent if at each frequency


jwI (j!)j = jwA (j!)j=jG(j!)j (7.12)
However, multiplicative (relative) weights are often preferred because their
numerical value is more informative. At frequencies where jw I (j! )j > 1 the
+


G(j! )
Re
uncertainty exceeds 100% and the Nyquist curve may pass through the origin. This
jwA (j! )j follows since, as illustrated in Figure 7.5, the radius of the discs in the Nyquist plot,
+
jwA (j!)j = jG(j!)wI (j!)j, then exceeds the distance from G(j!) to the origin.
+ At these frequencies we do not know the phase of the plant, and we allow for zeros
crossing from the left to the right-half plane. To see this, consider a frequency ! 0
where jwI (j!0 )j  1. Then there exists a j I j  1 such that Gp (j!0 ) = 0 in
(7.11), that is, there exists a possible plant with zeros at s = j! 0 . For this plant at
frequency ! 0 the input has no effect on the output, so control has no effect. It then
Figure 7.4: Disc-shaped uncertainty regions generated by complex additive uncertainty, follows that tight control is not possible at frequencies where jw I (j! )j  1 (this
Gp = G + wA  condition is derived more rigorously in (7.33)).

One may also view w A (s) as a weight which is introduced in order to normalize 7.4.3 Obtaining the weight for complex uncertainty
the perturbation to be less than 1 in magnitude at each frequency. Thus only the
magnitude of the weight matters, and in order to avoid unnecessary problems we Consider a set  of possible plants resulting, for example, from parametric
always choose wA (s) to be stable and minimum phase (this applies to all weights uncertainty as in (7.9). We now want to describe this set of plants by a single
used in this book). (lumped) complex perturbation,  A or I . This complex (disk-shaped) uncertainty
description may be generated as follows:
Im 1. Select a nominal model G(s).
2. Additive uncertainty. At each frequency find the smallest radius l A (! ) which
G (centre) includes all the possible plants :
j wA j

+ lA (!) = max jGp (j!) G(j!)j


GP 2
(7.13)
Re
If we want a rational transfer function weight, w A (s) (which may not be the case
if we only want to do analysis), then it must be chosen to cover the set, so
jwA (j!)j  lA(!) 8! (7.14)
Usually wA (s) is of low order to simplify the controller design. Furthermore, an
Figure 7.5: The set of possible plants includes the origin at frequencies where jwA (j!)j  objective of frequency-domain uncertainty is usually to represent uncertainty in a
j j j
G(j! ) , or equivalently wI (j! ) 1 j simple straightforward manner.
3. Multiplicative (relative) uncertainty. This is often the preferred uncertainty form,
The disk-shaped regions may alternatively be represented by a multiplicative and we have
G (j! ) G(j! )
uncertainty description as in (7.2), lI (!) = max p (7.15)
Gp 2 G(j!)
I : Gp (s) = G(s)(1 + wI (s)I (s)); jI (j!)j  1; 8! (7.11) and with a rational weight

By comparing (7.10) and (7.11) we see that for SISO systems the additive and jwI (j!)j  lI (!); 8! (7.16)
264 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 265

Example 7.3 Multiplicative weight for parametric uncertainty. Consider again the set as is seen from the dashed line in Figure 7.6. The magnitude of the weight crosses 1 at
of plants with parametric uncertainty given in (7.9) about ! = 0:26. This seems reasonable since we have neglected the delay in our nominal
model, which by itself yields 100% uncertainty at a frequency of about 1=max = 0:33 (see
: Gp (s) = k e s ; 2  k; ;   3 (7.17) Figure 7.8(a) below).
s + 1
We want to represent this set using multiplicative uncertainty with a rational weight wI (s). To An uncertainty description for the same parametric uncertainty, but with a mean-
simplify subsequent controller design we select a delay-free nominal model value nominal model (with delay), is given in Exercise 7.8. Parametric gain and delay
uncertainty (without time constant uncertainty) is discussed further on page 268.
G(s) = k = 2:5 (7.18)
s + 1 2:5s + 1 Remark. Pole uncertainty. In the example we represented pole (time constant) uncertainty
To obtain lI (! ) in (7.15) we consider three values (2, 2:5 and 3) for each of the three by a multiplicative perturbation, I . We may even do this for unstable plants, provided the
parameters (k; ;  ). (This is not, in general, guaranteed to yield the worst case as the worst poles do not shift between the half planes and one allows I (s) to be unstable. However, if
j
case may be at the interior of the intervals.) The corresponding relative errors (Gp G)=G j the pole uncertainty is large, and in particular if poles can cross form the LHP to the RHP, then
are shown as functions of frequency for the 33 = 27 resulting Gp ’s in Figure 7.6. The curve one should use an inverse (“feedback”) uncertainty representation as in (7.3).

7.4.4 Choice of nominal model


With parametric uncertainty represented as complex perturbations there are three
Magnitude

0
10 main options for the choice of nominal model:
1. A simplified model, e.g. a low-order, delay-free model.
2. A model of mean parameter values, G(s) = G  (s).
3. The central plant obtained from a Nyquist plot (yielding the smallest discs).

−1
Option 1 usually yields the largest uncertainty region, but the model is simple
10 −2 −1 0 1 and this facilitates controller design in later stages. Option 2 is probably the most
10 10 10 10
Frequency straightforward choice. Option 3 yields the smallest region, but in this case a
significant effort may be required to obtain the nominal model, which is usually
Figure 7.6: Relative errors for 27 combinations of k;  and  with delay-free nominal plant not a rational transfer function and a rational approximation could be of very high
j j
(dotted lines). Solid line: First-order weight wI 1 in (7.19). Dashed line: Third-order weight
j j
wI in (7.20)
order.

Example 7.4 Consider again the uncertainty set (7.17) used in Example 7.3. The nominal
for lI (! ) must at each frequency lie above all the dotted lines, and we find that lI (! ) is 0:2 at
models selected for options 1 and 2 are
low frequencies and 2:5 at high frequencies. To derive wI (s) we first try a simple first-order
weight that matches this limiting behaviour:
G1 (s) = k ; G (s) = k e s
s + 1 2 s + 1
wI 1 (s) = T s + 0:2 ; T = 4 (7.19)
(T=2:5)s + 1 For option 3 the nominal model is not rational. The Nyquist plot of the three resulting discs at
frequency ! = 0:5 are shown in Figure 7.7.
As seen from the solid line in Figure 7.6, this weight gives a good fit of lI (! ), except around
j j
! = 1 where wI 1 (j! ) is slightly too small, and so this weight does not include all possible
plants. To change this so that wI (j! ) j j
lI (! ) at all frequencies, we can multiply wI 1 by a Remark. A similar example was studied by Wang et al. (1994), who obtained the best
controller designs with option 1, although the uncertainty region is clearly much larger in
correction factor to lift the gain slightly at ! = 1. The following works well
this case. The reason for this is that the “worst-case region” in the Nyquist plot in Figure 7.7
2
wI (s) = !I 1 (s) s2 + 1:6s + 1
corresponds quite closely to those plants with the most negative phase (at coordinates about
s + 1:4s + 1
(7.20) ( 1:5; 1:5)). Thus, the additional plants included in the largest region (option 1) are
266 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 267
2
uncertainty caused by neglecting the dynamics in f (s) is

G G
1 lI (!) = max p = max jf (j!) 1j (7.21)
Gp G f (s)2f
0 Three examples illustrate the procedure.
1. Neglected delay. Let f (s) = e p s , where 0  p  max . We want to represent
-1
2 3 1 Gp = G0 (s)e p s by a delay-free plant G 0 (s) and multiplicative uncertainty. Let
us first consider the maximum delay, for which the relative error j1 e j!max j is
+
+ +

-2 shown as a function of frequency in Figure 7.8(a). The relative uncertainty crosses


1 in magnitude at about frequency 1= max , reaches 2 at frequency = max (since at
-3 this frequency e j!max = 1), and oscillates between 0 and 2 at higher frequencies
(which corresponds to the Nyquist plot of e j!max going around and around the
-4
unit circle). Similar curves are generated for smaller values of the delay, and they
-2 -1 0 1 2 3 4
also oscillate between 0 and 2 but at higher frequencies. It then follows that if we
consider all  2 [0; max ] then the relative error bound is 2 at frequencies above
Figure 7.7: Nyquist plot of Gp (j! ) at frequency ! = 0:5 (dashed region) showing complex
disc approximations using three options for the nominal model: =max, and we have

1. Simplified nominal model with no time delay
lI (!) = j1 e j!max j ! < =max
!  =max
2. Mean parameter values (7.22)
3. Nominal model corresponding to the smallest radius 2
Rational approximations of (7.22) are given in (7.26) and (7.27) with r k = 0.
generally easier to control and do not really matter when evaluating the worst-case plant with
1 1
respect to stability or performance. In conclusion, at least for SISO plants, we find that for 10 10
plants with an uncertain time delay, it is simplest and sometimes best (!) to use a delay-free
nominal model, and to represent the nominal delay as additional uncertainty.

Magnitude
0 0

Magnitude
10 10

The choice of nominal model is only an issue since we are lumping several sources −1
10 10
−1

of parametric uncertainty into a single complex perturbation. Of course, if we use


a parametric uncertainty description, based on multiple real perturbations, then we −2
10
1=max 10
−2 1=max
should always use the mean parameter values in the nominal model. −2 0 2 −2 0 2
10 10 10 10 10 10
Frequency Frequency
(a) Time delay (b) First-order lag
7.4.5 Neglected dynamics represented as uncertainty
Figure 7.8: Multiplicative uncertainty resulting from neglected dynamics
We saw above that one advantage of frequency domain uncertainty descriptions is
that one can choose to work with a simple nominal model, and represent neglected 2. Neglected lag. Let f (s) = 1=( p s + 1), where 0  p  max . In this case the
dynamics as uncertainty. We will now consider this in a little more detail. Consider resulting lI (! ), which is shown in Figure 7.8(b), can be represented by a rational
a set of plants transfer function with jw I (j! )j = lI (! ) where
Gp (s) = G0 (s)f (s) 1  s
wI (s) = 1 = max
where G0 (s) is fixed (and certain). We want to neglect the term f (s) (which may be max s + 1 max s + 1
fixed or may be an uncertain set  f ), and represent G p by multiplicative uncertainty This weight approaches 1 at high frequency, and the low-frequency asymptote
with a nominal model G = G 0 . From (7.15) we get that the magnitude of the relative crosses 1 at frequency 1= max .
268 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 269

3. Multiplicative weight for gain and delay uncertainty. Consider the following The improved weight w I (s) in (7.27) is not shown in Figure 7.9, but it would be
set of plants almost indistinguishable from the exact bound given by the solid curve. In practical
Gp (s) = kp e ps G0 (s); kp 2 [kmin; kmax ]; p 2 [min; max]
applications, it is suggested that one starts with a simple weight as in (7.26), and
(7.23)
if it later appears important to eke out a little extra performance then one can try a
which we want to represent by multiplicative uncertainty and a delay-free nominal higher-order weight as in (7.27).
model, G(s) = kG 0 (s) where k = kmin+2 kmax and rk = (kmax kmin)=2 . Lundström
k
(1994) derived the following exact expression for the relative uncertainty weight Example 7.5 Consider the set Gp (s) = kp e p s G0 (s) with 2  kp   
3 and 2 p 3.
 p We approximate this with a nominal delay-free plant G = kG  0 = 2:5G0 and relative
lI ( ! ) = rk2 + 2(1 + rk )(1 cos (max !)) for ! < =max uncertainty. The simple first-order weight in (7.26), wI (s) = 31:3:5ss+0 :2
+1 , is somewhat optimistic.
2 + rk for !  =max (7.24)
To cover all the uncertainty we may use (7.27), wI (s) = 31:3:5ss+0
+1
:2 612s22 +2:128s+1 .
 11::612s +1:739s+1
where rk is the relative uncertainty in the gain. This bound is irrational. To derive a
rational weight we first approximate the delay by a first-order Padé approximation to
get 7.4.6 Unmodelled dynamics uncertainty
1 max r 
kmax e maxs k  k(1 + rk ) 2 s k = k 1 + 2k max s + rk (7.25) Although we have spent a considerable amount of time on modelling uncertainty
max 1+ 2 s max
2 s+1 and deriving weights, we have not yet addressed the most important reason for
using frequency domain (H 1 ) uncertainty descriptions and complex perturbations,
Since only the magnitude matters this may be represented by the following first-order namely the incorporation of unmodelled dynamics. Of course, unmodelled dynamics
weight
(1 + r2k )max s + rk
is close to neglected dynamics which we have just discussed, but it is not quite the
wI (s) = max s + 1 (7.26) same. In unmodelled dynamics we also include unknown dynamics of unknown
2 or even infinite order. To represent unmodelled dynamics we usually use a simple
However, as seen from Figure 7.9 by comparing the dotted line (representing w I ) multiplicative weight of the form
s + r0
10
1
wI (s) = (7.28)
(=r1 )s + 1
where r0 is the relative uncertainty at steady-state, 1= is (approximately) the
Magnitude

lI frequency at which the relative uncertainty reaches 100%, and r 1 is the magnitude
wI
10
0
of the weight at high frequency (typically, r 1  2). Based on the above examples
and discussions it is hoped that the reader has now accumulated the necessary insight
to select reasonable values for the parameters r 0 ; r1 and  for a specific application.
The following exercise provides further support and gives a good review of the main
−1 ideas.
10 −2 −1 0 1 2
10 10 10 10 10
Frequency Exercise 7.1 Suppose that the nominal model of a plant is

Figure 7.9: Multiplicative weight for gain and delay uncertainty in (7.23) G(s) = 1
s+1
with the solid line (representing l I ), this weight wI is somewhat optimistic (too and the uncertainty in the model is parameterized by multiplicative uncertainty with the weight
small), especially around frequencies 1= max . To make sure that jw I (j! )j  lI (! )
at all frequencies we apply a correction factor and get a third-order weight wI (s) = 0:125s + 0:25
2
(0:125=4)s + 1
(1 + r2k )max s + rk max s2 + 2  0:838  max s + 1
wI (s) = max s + 1  2:max
363  2:363
2 s2 + 2  0:685  max s + 1 (7.27) Call the resulting set . Now find the extreme parameter values in each of the plants (a)-(g)
2 below so that each plant belongs to the set . All parameters are assumed to be positive. One
2:363 2:363
270 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 271

approach is to plot lI (! ) = G 1 G0 1 in (7.15) for each G0 (Ga ; Gb , etc.) and adjust the
j j Gp
j j
parameter in question until lI just touches wI (j! ) . - wI - I
(a) Neglected delay: Find the largest  for Ga = Ge s (Answer: 0:13).
(b) Neglected lag: Find the largest  for Gb = G s1+1 (Answer: 0:15). d - K q -+ ?d+ - G q-
(c) Uncertain pole: Find the range of a for Gc = s+1 a (Answer: 0:8 to 1:33).
- 6
(d) Uncertain pole (time constant form): Find the range of T for Gd = Ts1+1 (Answer: 0:7 to
1:5).
(e) Neglected resonance: Find the range of  for Ge = G (s=70)2 +21 (s=70)+1 (Answer: 0:02
to 0:8). Figure 7.10: Feedback system with multiplicative uncertainty
 m
(f) Neglected dynamics: Find the largest integer m for Gf = G 0:011s+1 (Answer: 13).
7.5.1 RS with multiplicative uncertainty
+1 (Answer: 0:07). These results
(g) Neglected RHP-zero: Find the largest z for Gg = G zzss+1
imply that a control system which meets given stability and performance requirements for all We want to determine the stability of the uncertain feedback system in Figure 7.10
plants in , is also guaranteed to satisfy the same requirements for the above plants Ga , when there is multiplicative (relative) uncertainty of magnitude jw I (j! )j. With
Gb ; : : : ; Gg . uncertainty the loop transfer function becomes
(h) Repeat the above with a new nominal plant G = 1=(s 1) (and with everything else the
same except Gd = 1=(T s 1)). (Answer: Same as above). Lp = Gp K = GK (1 + wI I ) = L + wI LI ; jI (j!)j  1; 8! (7.29)

As always, we assume (by design) stability of the nominal closed-loop system (i.e.
Exercise 7.2 Repeat Exercise 7.1 with a new weight, with I = 0). For simplicity, we also assume that the loop transfer function L p is
stable. We now use the Nyquist stability condition to test for robust stability of the
wI (s) = s + 0:3 closed-loop system. We have
(1=3)s + 1
RS def
, System stable 8Lp
We end this section with a couple of remarks on uncertainty modelling:
, Lp should not encircle the point 1; 8L p (7.30)
1. We can usually get away with just one source of complex uncertainty for SISO
systems.
2. With an H1 uncertainty description, it is possible to represent time delays
Im

(corresponding to an infinite-dimensional plant) and unmodelled dynamics of


infinite order , using a nominal model and associated weights with finite order. 1

0 Re

j1 + L(j!)j
L(j!)
7.5 SISO Robust stability
jwI Lj
We have so far discussed how to represent the uncertainty mathematically. In this
section, we derive conditions which will ensure that the system remains stable for
all perturbations in the uncertainty set, and then in the subsequent section we study Figure 7.11: Nyquist plot of Lp for robust stability
robust performance.
272 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 273

1. Graphical derivation of RS-condition. Consider the Nyquist plot of L p as shown


in Figure 7.11. Convince yourself that j 1 Lj = j1 + Lj is the distance from the 1=WI T1 (not RS)
point 1 to the centre of the disc representing L p , and that jwI Lj is the radius of
the disc. Encirclements are avoided if none of the discs cover 1, and we get from

Magnitude
0
10
Figure 7.11
RS , j wI Lj < j1 + Lj; 8! (7.31)

, 1w+I LL < 1; 8! , jwI T j < 1; 8!


−1
10
(7.32) T2 (RS)
def
, kwI T k1 < 1 (7.33) −3 −2 −1 0 1
10 10 10 10 10
Frequency
Note that for SISO systems wI = wO and T = TI = GK (1 + GK ) 1 , so
the condition could equivalently be written in terms of w I TI or wO T . Thus, the Figure 7.12: Checking robust stability with multiplicative uncertainty
requirement of robust stability for the case with multiplicative uncertainty gives an
upper bound on the complementary sensitivity:
Remark. For the “extreme” plant G0 (s) we find as expected that the closed-loop system is
RS , jT j < 1=jwI j; 8! (7.34) unstable with Kc1 = 1:13. However, with Kc2 = 0:31 the system is stable with reasonable
margins (and not at the limit of instability as one might have expected); we can increase the
We see that we have to detune the system (i.e. make T small) at frequencies where gain by almost a factor of two to Kc = 0:58 before we get instability. This illustrates that
the relative uncertainty jw I j exceeds 1 in magnitude. Condition (7.34) is exact condition (7.34) is only a sufficient condition for stability, and a violation of this bound does
(necessary and sufficient) provided there exist uncertain plants such that at each not imply instability for a specific plant G0 . However, with Kc2 = 0:31 there exists an allowed
Gp K2 on the
frequency all perturbations satisfying j(j! )j  1 are possible. If this is not the complex I and a corresponding Gp = G(1 + wI I ) that yields T2p = 1+G p K2
case, then (7.34) is only sufficient for RS, e.g. this is the case if the perturbation is limit of instability.
restricted to be real, as for the parametric gain uncertainty in (7.6).
2. Algebraic derivation of RS-condition. Since L p is assumed stable, and the
Example 7.6 Consider the following nominal plant and PI-controller nominal closed-loop is stable, the nominal loop transfer function L(j! ) does not
3( 2s + 1) 12:7s + 1 encircle 1. Therefore, since the set of plants is norm-bounded, it then follows that
G(s) = K (s) = Kc if some Lp1 in the uncertainty set encircles 1, then there must be another L p2 in
(5s + 1)(10s + 1) 12:7s
the uncertainty set which goes exactly through 1 at some frequency. Thus,
Recall that this is the inverse response process from Chapter 2. Initially, we select Kc =
Kc1 = 1:13 as suggested by the Ziegler-Nichols’ tuning rule. It results in a nominally stable RS , j1 + Lp j 6= 0; 8Lp; 8! (7.35)
closed-loop system. Suppose that one “extreme” uncertain plant is G0 (s) = 4( 3s+1)=(4s+
1)2 . For this plant the relative error (G0 G)=G is 0:33 at low frequencies; it is 1 at about
j j , j1 + Lp j > 0; 8Lp; 8! (7.36)
0:1 rad/s, and it is 5:25 at high frequencies. Based on this and (7.28) we choose the following , j1 + L + wI LI j > 0; 8jI j  1; 8! (7.37)
uncertainty weight
10s + 0:33 At each frequency the last condition is most easily violated (the worst case) when the
wI (s) =
(10=5:25)s + 1 complex number  I (j! ) is selected with jI (j! )j = 1 and with phase such that
which closely matches this relative error. We now want to evaluate whether the system remains the terms (1 + L) and wI LI have opposite signs (point in the opposite direction).
stable for all possible plants as given by Gp = G(1+ wI I ) where I (s) is any perturbation Thus
k k 
satisfying  1 1. This is not the case as seen from Figure 7.12 where we see that the RS , j1 + Lj jwI Lj > 0; 8! , jwI T j < 1; 8! (7.38)
magnitude of the nominal complementary sensitivity function T1 = GK1 =(1+ GK1 ) exceeds
j j
the bound 1= wI from about 0:1 to 1 rad/s, so (7.34) is not satisfied. To achieve robust stability and we have rederived (7.33).
we need to reduce the controller gain. By trial and error we find that reducing the gain to
Kc2 = 0:31 just achieves RS, as is seen from the curve for T2 = GK2 =(1 + GK2 ) in Remark. Unstable plants. The stability condition (7.33) also applies to the case when L and
Figure 7.12. Lp are unstable as long as the number of RHP-poles remains the same for each plant in the
274 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 275

uncertainty set. This follows since the nominal closed-loop system is assumed stable, so we 7.5.2 Comparison with gain margin
must make sure that the perturbation does not change the number of encirclements, and (7.33)
is the condition which guarantees this. By what factor, kmax , can we multiply the loop gain, L 0 = G0 K , before we get
instability? In other words, given

  Lp = kp L0 ; kp 2 [1; kmax] (7.43)

u y find the largest value of k max such that the closed-loop system is stable.
1. Real perturbation. The exact value of k max , which is obtained with  real, is the
- M gain margin (GM) from classical control. We have (recall (2.33))
1
kmax;1 = GM =
jL0 (j!180 )j (7.44)
Figure 7.13: M -structure
where !180 is the frequency where \L 0 = 180Æ.
3. M -structure derivation of RS-condition. This derivation is a preview of 2. Complex perturbation. Alternatively, represent the gain uncertainty as complex
a general analysis presented in the next chapter. The reader should not be too multiplicative uncertainty,
concerned if he or she does not fully understand the details at this point. The
derivation is based on applying the Nyquist stability condition to an alternative “loop
 0 (1 + rk )
Lp = kp L0 = kL (7.45)
transfer function” M  rather than L p . The argument goes as follows. Notice that the where
only source of instability in Figure 7.10 is the new feedback loop created by  I . If k +1 k 1
the nominal ( I = 0) feedback system is stable then the stability of the system in k = max ; rk = max (7.46)
2 kmax + 1
Figure 7.10 is equivalent to stability of the system in Figure 7.13, where  =  I  0 is not fixed, but depends on k max . The robust stability
Note that the nominal L = kL
condition kwI T k1 < 1 (which is derived for complex ) with w I = rk then gives
and
M = wI K (1 + GK ) 1 G = wI T (7.39)


rk kL0 < 1
is the transfer function from the output of  I to the input of  I . We now apply
the Nyquist stability condition to the system in Figure 7.13. We assume that  and 1 + kL  0 1 (7.47)
M = wI T are stable; the former implies that G and G p must have the same unstable
poles, the latter is equivalent to assuming nominal stability of the closed-loop system. Here both rk and k depend on k max , and (7.47) must be solved iteratively to find
The Nyquist stability condition then determines RS if and only if the “loop transfer kmax;2 . Condition (7.47) would be exact if  were complex, but since it is not we
function” M  does not encircle 1 for all . Thus, expect kmax;2 to be somewhat smaller than GM.

RS , j1 + M j > 0; 8!; 8jj  1 (7.40) Example 7.7 To check this numerically consider a system with L0 = 1s ss+2 +2 . We find
!180 = 2 [rad/s] and jL0 (j!180 )j = 0:5, and the exact factor by which we can increase
The last condition is most easily violated (the worst case) when  is selected at each the loop gain is, from (7.44), kmax;1 = GM = 2. On the other hand, use of (7.47) yields
frequency such that jj = 1 and the terms M  and 1 have opposite signs (point in kmax;2 = 1:78, which as expected is less than GM=2. This illustrates the conservatism
the opposite direction). We therefore get involved in replacing a real perturbation by a complex one.
RS , 1 jM (j!)j > 0; 8! (7.41)
Exercise 7.3 Represent the gain uncertainty in (7.43) as multiplicative complex uncertainty
, jM (j!)j < 1; 8! (7.42) with nominal model G = G0 (rather than G = kG 0 used above).
which is the same as (7.33) and (7.38) since M = w I T . The M -structure provides k k
(a) Find wI and use the RS-condition wI T 1 < 1 to find kmax;3 . Note that no iteration is
a very general way of handling robust stability, and we will discuss this at length in needed in this case since the nominal model and thus T = T0 is independent of kmax .
the next chapter where we will see that (7.42) is essentially a clever application of (b) One expects kmax;3 to be even more conservative than kmax;2 since this uncertainty
the small gain theorem where we avoid the usual conservatism since any phase in description is not even tight when  is real. Show that this is indeed the case using the
M  is allowed. numerical values from Example 7.7.
276 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 277

7.5.3 RS with inverse multiplicative uncertainty We see that we need tight control and have to make S small at frequencies where
the uncertainty is large and jw iI j exceeds 1 in magnitude. This may be somewhat
surprising since we intuitively expect to have to detune the system (and make S  1)
wiI  u iI y when we have uncertainty, while this condition tells us to do the opposite. The reason
is that this uncertainty represents pole uncertainty, and at frequencies where jw iI j
exceeds 1 we allow for poles crossing from the left to the right-half plane (G p
becoming unstable), and we then know that we need feedback (jS j < 1) in order
d - K -+ ?d+ q - G q-
- 6 to stabilize the system.
However, jS j < 1 may not always be possible. In particular, assume that the plant
has a RHP-zero at s = z . Then we have the interpolation constraint S (z ) = 1 and
we must as a prerequisite for RS, kw iI S k1 < 1, require that w iI (z )  1 (recall the
maximum modulus theorem, see (5.15)). Thus, we cannot have large pole uncertainty
with jwiI (j! )j > 1 (and hence the possibility of instability) at frequencies where the
Figure 7.14: Feedback system with inverse multiplicative uncertainty plant has a RHP-zero. This is consistent with the results we obtained in Section 5.9.
We will derive a corresponding RS-condition for a feedback system with inverse
multiplicative uncertainty (see Figure 7.14) in which

Gp = G(1 + wiI (s)iI ) 1 (7.48)


7.6 SISO Robust performance
Algebraic derivation. Assume for simplicity that the loop transfer function L p is 7.6.1 SISO nominal performance in the Nyquist plot
stable, and assume stability of the nominal closed-loop system. Robust stability is
then guaranteed if encirclements by L p (j! ) of the point 1 are avoided, and since Consider performance in terms of the weighted sensitivity function as discussed in
Lp is in a norm-bounded set we have Section 2.7.2. The condition for nominal performance (NP) is then

RS , j1 + Lp j > 0; 8Lp; 8! (7.49) NP , jwP S j < 1 8! , jwP j < j1 + Lj 8! (7.55)


, j1 + L(1 + wiI iI ) 1 j > 0; 8jiI j  1; 8! (7.50)
Now j1 + Lj represents at each frequency the distance of L(j! ) from the point 1
, j1 + wiI iI + Lj > 0; 8jiI j  1; 8! (7.51) in the Nyquist plot, so L(j! ) must be at least a distance of jw P (j! )j from 1. This
The last condition is most easily violated (the worst case) when  iI is selected at is illustrated graphically in Figure 7.15, where we see that for NP, L(j! ) must stay
each frequency such that j iI j = 1 and the terms 1 + L and w iI iI have opposite outside a disc of radius jw P (j! )j centred on 1.
signs (point in the opposite direction). Thus

RS , j1 + Lj jwiI j > 0; 8! (7.52) 7.6.2 Robust performance


, jwiI S j < 1; 8! (7.53) For robust performance we require the performance condition (7.55) to be satisfied
for all possible plants, that is, including the worst-case uncertainty.
Remark. In this derivation we have assumed that Lp is stable, but this is not necessary as
one may show by deriving the condition using the M -structure. Actually, the RS-condition
RP def
, jwP Sp j < 1 8Sp; 8! (7.56)
(7.53) applies even when the number of RHP-poles of Gp can change.
, jwP j < j1 + Lp j 8Lp; 8! (7.57)
This corresponds to requiring jyb=dj < 1 8 I in Figure 7.16, where we consider
Control implications. From (7.53) we find that the requirement of robust stability
for the case with inverse multiplicative uncertainty gives an upper bound on the
sensitivity, multiplicative uncertainty, and the set of possible loop transfer functions is
RS , jS j < 1=jwiI j; 8! (7.54) Lp = Gp K = L(1 + wI I ) = L + wI LI (7.58)
278 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 279

Im Im

j1 + L(j!)j 1+L|jw|
1 −1
0 Re 0 Re
L(j!)
L|jw|
jwP (j!)j w|jw|

wL

Figure 7.15: Nyquist plot illustration of nominal performance condition jwP j < j1 + Lj Figure 7.17: Nyquist plot illustration of robust performance condition jwP j < j1 + Lp j

1. Graphical derivation of RP-condition. Condition (7.57) is illustrated graphically (strictly speaking, max should be replaced by sup, the supremum). The perturbed
by the Nyquist plot in Figure 7.17. For RP we must require that all possible L p (j! ) sensitivity is Sp = (I +Lp ) 1 = 1=(1+L+wI LI ), and the worst-case (maximum)
stay outside a disc of radius jw P (j! )j centred on 1. Since L p at each frequency is obtained at each frequency by selecting j I j=1 such that the terms (1 + L) and
stays within a disc of radius w I L centred on L, we see from Figure 7.17 that the wI LI (which are complex numbers) point in opposite directions. We get
condition for RP is that the two discs, with radii jw P j and jwI Lj, do not overlap.
Since their centres are located a distance j1 + Lj apart, the RP-condition becomes max jwP Sp j =
jwP j jwP S j
Sp j1 + Lj jwI Lj = 1 jwI T j (7.63)

RP , jwP j + jwI Lj < j1 + Lj; 8! (7.59)


, jwP (1 + L) 1 j + jwI L(1 + L) 1 j < 1; 8!
and by substituting (7.63) into (7.62) we rederive the RP-condition in (7.61).
(7.60)
Remarks on RP-condition (7.61).
or in other words
RP , max! (jwP S j + jwI T j) < 1 (7.61) 1. The RP-condition (7.61) for this problem is closely approximated by the following mixed
H
sensitivity 1 condition:
2. Algebraic derivation of RP-condition. From the definition in (7.56) we have that
wP S p
RP is satisfied if the worst-case (maximum) weighted sensitivity at each frequency
wI T = max
!
jwP S j2 + jwI T j2 < 1 (7.64)
is less than 1, that is, 1

RP , max jwP Sp j < 1; 8! p


To be more precise, we find from (A.95) that condition (7.64) is within a factor of at most
Sp
(7.62) 2 to condition (7.61). This means that for SISO systems we can closely approximate
H
the RP-condition in terms of an 1 problem, so there is little need to make use of the
structured singular value. However, we will see in the next chapter that the situation can be
- wI - I d very different for MIMO systems.
j j
2. The RP-condition (7.61) can be used to derive bounds on the loop shape L . At a given
c- K q -+ ?c+ - G - ?c+ q- wP -yb j j j j
frequency we have that wP S + wI T < 1 (RP) is satisfied if (see Exercise 7.4)
- 6 +
jLj > 11 + jjwwPI jj ; (at frequencies where jwI j < 1) (7.65)

or if
Figure 7.16: Diagram for robust performance with multiplicative uncertainty jLj < 11 + jjwwPI jj ; (at frequencies where jwP j < 1) (7.66)
280 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 281

Conditions (7.65) and (7.66) may be combined over different frequency ranges. Condition
j j
(7.65) is most useful at low frequencies where generally wI < 1 and wP > 1 (tight j j
- wu - u
j j
performance requirement) and we need L large. Conversely, condition (7.66) is most d
j j
useful at high frequencies where generally wI > 1, (more than 100% uncertainty),
j j
wP < 1 and we need L small. The loop-shaping conditions (7.65) and (7.66) may in e q - K - G -+ ?e+ -+ e?+ q - wP -yb
the general case be obtained numerically from -conditions as outlined in Remark 13 on
page 320. This is discussed by Braatz et al. (1996) who derive bounds also in terms of S
- 6
and T , and furthermore derive necessary bounds for RP in addition to the sufficient bounds
in (7.65) and (7.66); see also Exercise 7.5.
j j j j
3. The term (NRP ) = wP S + wI T in (7.61) is the structured singular value () for RP
for this particular problem; see (8.128). We will discuss  in much more detail in the next
Figure 7.18: Diagram for robust performance in Example 7.8
chapter.
4. The structured singular value  is not equal to the worst-case weighted sensitivity,
j j
maxSp wP Sp , given in (7.63) (although many people seem to think it is). The worst-case Solution. (a) The requirement for RP is jwP Sp j < 1; 8Sp ; 8!, where the possible sensitivities
weighted sensitivity is equal to skewed- (s ) with fixed uncertainty; see Section 8.10.3. are given by
Thus, in summary we have for this particular robust performance problem:
Sp = 1 = S (7.69)
jwP S j 1 + GK + wu u 1 + wu u S
 = jwP S j + jwI T j; s =
1 jwI T j
(7.67) The condition for RP then becomes

,
wP S 8u; 8!
Note that  and s are closely related since   1 if and only if s  1. RP
1 + wu u S < 1; (7.70)

Exercise 7.4 Derive the loop-shaping bounds in (7.65) and (7.66) which are sufficient for A simple analysis shows that the worst case corresponds to selecting u with magnitude 1
jwP S j + jwI T j < 1 (RP). Hint: Start from the RP-condition in the form jwP j + jwI Lj < such that the term wu u S is purely real and negative, and hence we have
j1 + Lj and use the facts that j1 + Lj  1 jLj and j1 + Lj  jLj 1. RP , jwP S j < 1 jwu S j; 8! (7.71)

Exercise 7.5 Also derive, from jwP S j + jwI T j < 1, the following necessary bounds for RP
, jwP S j + jwu S j < 1; 8! (7.72)
(which must be satisfied) , jS (jw)j < jwP (jw)j +1 jwu (jw)j ; 8! (7.73)

jLj > j1wP jjwI1j ; (for jwP j > 1 and jwI j < 1) j j
(b) Since any real system is strictly proper we have S = 1 at high frequencies and therefore
j j j j
we must require wu (j! ) + wP (j! ) < 1 as ! !1
. With the weights in (7.68) this is
jLj < 1jwI jjwP1j ; (for jwP j < 1 and jwI j > 1) equivalent to ru + 0:25 < 1. Therefore, we must at least require ru < 0:75 for RP, so RP

cannot be satisfied if ru 0:75.
Hint: Use j1 + Lj  1 + jLj. (c) Design S1 yields RP, while S2 does not. This is seen by checking the RP-condition (7.73)
j j j j
graphically as shown in Figure 7.19; S1 has a peak of 1 while S2 has a peak of about 2:45.
Example 7.8 Robust performance problem. Consider robust performance of the SISO
system in Figure 7.18, for which we have
7.6.3 The relationship between NP, RS and RP
yb
RP def
, d
< 1; 8ju j  1; 8!; wP (s) = 0:25 + 0s:1 ; wu (s) = ru s +s 1 (7.68)
Consider a SISO system with multiplicative uncertainty, and assume that the closed-
loop is nominally stable (NS). The conditions for nominal performance (NP), robust
(a) Derive a condition for robust performance (RP). stability (RS) and robust performance (RP) can then be summarized as follows
(b) For what values of ru is it impossible to satisfy the robust performance condition?
NP , jwP S j < 1; 8! (7.74)
(c) Let ru = 0:5. Consider two cases for the nominal loop transfer function: 1) GK1 (s) =
0:5=s and 2) GK2 (s) = 0s:5 11+ss . For each system, sketch the magnitudes of S and its RS , jwI T j < 1; 8! (7.75)
performance bound as a function of frequency. Does each system satisfy robust performance? RP , jwP S j + jwI T j < 1; 8! (7.76)
282 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 283
1
10 - w2 - 2 d
jS2 j 1
jwP j + jwu j c- K q -+?c+ - G -+ ?c+ q- w1 -z
6
Magnitude

0
10 -
jS1 j
−1
10 (a)

−2

- - 
10 −2 −1 0 1 2
10 10 10
Frequency
10 10
w2 2 1

c- K q -+?c+ - G -+ ?c+ q- w1
6
Figure 7.19: Robust performance test
-

From this we see that a prerequisite for RP is that we satisfy NP and RS. This applies
in general, both for SISO and MIMO systems and for any uncertainty. In addition, (b)
for SISO systems, if we satisfy both RS and NP, then we have at each frequency
jwP S j + jwI T j  2 maxfjwP S j; jwI T jg < 2 (7.77) Figure 7.20: (a) Robust performance with multiplicative uncertainty
(b) Robust stability with combined multiplicative and inverse multiplicative uncertainty
It then follows that, within a factor of at most 2, we will automatically get RP when
the subobjectives of NP and RS are satisfied. Thus, RP is not a “big issue” for SISO
in Figure 7.20:
systems, and this is probably the main reason why there is little discussion about
robust performance in the classical control literature. On the other hand, as we will (a) RP with multiplicative uncertainty
see in the next chapter, for MIMO systems we may get very poor RP even though (b) RS with combined multiplicative and inverse multiplicative uncertainty

As usual the uncertain perturbations are normalized such that k 1 k1  1 and


the subobjectives of NP and RS are individually satisfied.
To satisfy RS we generally want T small, whereas to satisfy NP we generally want S k2 k1  1. Since we use the H1 norm to define both uncertainty and performance
small. However, we cannot make both S and T small at the same frequency because and since the weights in Figures 7.20(a) and (b) are the same, the tests for RP and RS
of the identity S + T = 1. This has implications for RP, since jw P jjS j + jwI jjT j  in cases (a) and (b), respectively, are identical. This may be argued from the block
minfjwP j; jwI jg(jS j + jT j), where jS j + jT j  jS + T j = 1, and we derive at each diagrams, or by simply evaluating the conditions for the two cases as shown below.
frequency
jwP S j + jwI T j  minfjwP j; jwI jg (7.78)
(a) The condition for RP with multiplicative uncertainty was derived in (7.61), but
with w1 replaced by w P and with w2 replaced by w I . We found
We conclude that we cannot have both jw P j > 1 (i.e. good performance) and
jwI j > 1 (i.e. more than 100% uncertainty) at the same frequency. One explanation RP , jw1 S j + jw2 T j < 1; 8! (7.79)
for this is that at frequencies where jw I j > 1 the uncertainty will allow for RHP-
zeros, and we know that we cannot have tight performance in the presence of RHP- (b) We will now derive the RS-condition for the case where L p is stable (this
zeros. assumption may be relaxed if the more general M -structure is used, see
(8.127)). We want the system to be closed-loop stable for all possible  1 and
2 . RS is equivalent to avoiding encirclements of 1 by the Nyquist plot of
7.6.4 The similarity between RS and RP Lp . That is, the distance between L p and 1 must be larger than zero, i.e.
j1 + Lp j > 0, and therefore
Robust performance may be viewed as a special case of robust stability (with
mulptiple perturbations). To see this consider the following two cases as illustrated RS , j1 + Lp j > 0 8Lp; 8! (7.80)
284 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 285

, j1 + L(1 + w2 2 )(1 w1 1 ) 1 j > 0; 81 ; 82; 8! (7.81) same frequency, which is consistent with the fact that we need feedback (S small) to
, j1 + L + Lw2 2 w1 1 j > 0; 81 ; 82; 8! (7.82) stabilize an unstable plant.
Time constant form. It is also interesting to consider another form of pole
Here the worst case is obtained when we choose  1 and 2 with magnitudes 1 uncertainty, namely that associated with the time constant:
such that the terms Lw2 2 and w1 1 are in the opposite direction of the term
1
1 + L. We get Gp (s) = G (s); min  p  max
p s + 1 0
(7.88)

RS , j1 + Lj jLw2 j jw1 j > 0; 8! (7.83) This results in uncertainty in the pole location, but the set of plants is entirely
, jw1 S j + jw2 T j < 1; 8! (7.84) different from that in (7.85). The reason is that in (7.85) the uncertainty affects the
model at low frequency, whereas in (7.88) the uncertainty affects the model at high
which is the same condition as found for RP. frequency. The corresponding uncertainty weight as derived in (7.8) is
r s
wiI (s) =  (7.89)
1 + s
7.7 Examples of parametric uncertainty This weight is zero at ! = 0 and approaches r  at high frequency, whereas the
weight wiI in (7.87) is ra at ! = 0 and approaches zero at high frequencies.

We now provide some further examples of how to represent parametric uncertainty.


The perturbations  must be real to exactly represent parametric uncertainty. 7.7.2 Parametric zero uncertainty
Consider zero uncertainty in the “time constant” form, as in
7.7.1 Parametric pole uncertainty Gp (s) = (1 + p s)G0 (s); min  p  max (7.90)
Consider uncertainty in the parameter a in a state space model, y_ = ay + bu, where the remaining dynamics G 0 (s) are as usual assumed to have no uncertainty.
corresponding to the uncertain transfer function G p (s) = b=(s ap ). More generally, For example, let 1   p  3. Then the possible zeros z p = 1=p cross from the
consider the following set of plants LHP to the RHP through infinity: z p  1=3 (in LHP) and zp  1 (in RHP). The
set of plants in (7.90) may be written as multiplicative (relative) uncertainty with
1
Gp (s) = G (s); amin  ap  amax
s ap 0 wI (s) = r s=(1 + s)
(7.85) (7.91)
The magnitude jw I (j! )j is small at low frequencies, and approaches r  (the relative
If amin and amax have different signs then this means that the plant can change from
uncertainty in  ) at high frequencies. For cases with r  > 1 we allow the zero to
stable to unstable with the pole crossing through the origin (which happens in some
cross from the LHP to the RHP (through infinity).
applications). This set of plants can be written as
Exercise 7.6 Parametric zero uncertainty in zero form. Consider the following
G0 (s)
Gp = ; 11 (7.86) alternative form of parametric zero uncertainty
s a(1 + ra ) Gp (s) = (s + zp )G0 (s); zmin  zp  zmax (7.92)
which can be exactly described by inverse multiplicative uncertainty as in (7.48) with which caters for zeros crossing from the LHP to the RHP through the origin (corresponding
nominal model G = G 0 (s)=(s a ) and to a sign change in the steady-state gain). Show that the resulting multiplicative weight is
wI (s) = rz z=(s +z ) and explain why the set of plants given by (7.92) is entirely different from
r a
wiI (s) = a (7.87) that with the zero uncertainty in “time constant” form in (7.90). Explain what the implications
s a are for control if rz > 1.

The magnitude of the weight w iI (s) is equal to ra at low frequencies. If r a is larger Remark. Both of the two zero uncertainty forms, (7.90) and (7.92), can occur in practice. An
than 1 then the plant can be both stable and unstable. As seen from the RS-condition example of the zero uncertainty form in (7.92), which allows for changes in the steady-state
in (7.53), a value of jw iI j larger than 1 means that jS j must be less than 1 at the gain, is given in Example 7.10.
286 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 287

7.7.3 Parametric state-space uncertainty (sI Ap ) 1


The above parametric uncertainty descriptions are mainly included to gain insight. W2    W1 
A general procedure for handling parametric uncertainty, more suited for numerical
calculations, is given by Packard (1988). Consider an uncertain state-space model
x_ = Ap x + Bp u (7.93) -+ ?f+ - (sI A) 1 r -
y = C p x + Dp u (7.94)
or equivalently
Gp (s) = Cp (sI Ap ) 1 Bp + Dp (7.95)
Assume that the underlying cause for the uncertainty is uncertainty in some real Figure 7.21: Uncertainty in state space A-matrix
parameters Æ1 ; Æ2 ; : : : (these could be temperature, mass, volume, etc.), and assume
in the simplest case that the state-space matrices depend linearly on these parameters
Note that Æ1 appears only once in , whereas Æ2 needs to be repeated. This is related to the
i.e.
ranks of the matrices A1 (which has rank 1) and A2 (which has rank 2).
P P P P
Ap = A + Æi Ai ; Bp = B + Æi Bi Cp = C + Æi Ci ; Dp = D + Æi Di (7.96)
Additional repetitions of the parameters Æ i may be necessary if we also have
where A; B; C and D model the nominal system. This description has multiple uncertainty in B; C and D. It can be shown that the minimum number of repetitions
 
of each Æi in the overall -matrix is equal to the rank of each matrix A i Bi
perturbations, so it cannot be represented by a single perturbation, but it should be
fairly clear that we can separate out the perturbations affecting A; B; C and D, and Ci Di
then collect them in a large diagonal matrix  with the real Æ i ’s along its diagonal. (Packard, 1988; Zhou et al., 1996). Also, note that seemingly nonlinear parameter
Some of the Æi ’s may have to be repeated. For example, we may write dependencies may be rewritten in our standard linear block diagram form, for
X example, we can handle Æ 12 (which would need Æ 1 repeated), 1++w1 Æ1 Æ2 , etc. This
w2 Æ2
Ap = A + Æi Ai = A + W2 W1 (7.97) is illustrated next by an example.

where  is diagonal with the Æ i ’s along its diagonal. Introduce (s) , (sI A) 1 , Example 7.10 Parametric uncertainty and repeated perturbations. This example
and we get illustrates how most forms of parametric uncertainty can be represented in terms of the -
Ap ) 1 = (sI A W2 W1 ) 1 = (I (s)W2 W1 ) 1 (s)
representation using linear fractional transformations (LFTs). Consider the following state
(sI (7.98) space description of a SISO plant1
This is illustrated in the block diagram of Figure 7.21, which is in the form of an x_ = Ap x + Bp u; y = Cx (7.102)
inverse additive perturbation (see Figure 8.5(d)).
1 This is actually a simple model of a chemical reactor (CSTR) where u is the feed flowrate, x1 is the
Example 7.9 Suppose Ap is a function of two parameters kp = 1 + w1 Æ1 ( 1  Æ1  1) concentration of reactant A, y = x2 is the concentration of intermediate product B and k = q is the
and p = 3 + w2 Æ2 ( 1  Æ2  1) as follows: steady-state value of the feed flowrate. Component balances yield
  V c_A = qcAf qcA k1 cA V [mol A=s]
Ap = kp2+ 2k pp kp kp p (7.99)
V c_B = qcB + k1 cA V k2 cB V [mol B=s]
where V is the reactor volume. Linearization and introduction of deviation variables, x1 = cA; x2 =
 = =1 =1 =1 and cA cB
= =1
Then
      cB , and u q, yields, with k1 ; k2 ; V ,
Ap = 3 2 +Æ1 w1 w1 +Æ2 0 w2  
7 1 w1 w1 2w2 0 (7.100) x_ 1 = (1 + q )x1 + (cAf 1)u
| {z } | {z } | {z }
A A1 A2 x_ 2 = x1 (1 + q )x2 u
where the superscript  signifies a steady-state value. The values of q and cAf depend on the operating
w2 0 Æ0 00 11 01
  " Æ1 #" #
= A + ww11 0 2 point, and it is given that at steady-state we always have q cAf =1
2w2 0 (7.101)
} | 0 {z
0 Æ2 } | 0 {z1 }
(physically, we may have an
| {z upstream mixing tank where a fixed amount of A is fed in). By introducing k = q we get the model
W2  W1 in (7.103).
288 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 289

- :4- d- Æ Æ 0  :1 
  1 k
(1 + k) 0    
Ap = 1 (1 + k) ; Bp = 1 ; C = [0 1 ]
k (7.103)
0 Æ  0
0
The constant k > 0 may vary during operation, so the above description generates a set of
6 q :1
 B  :2
q - 11 --?d-?d d? -- (sI A) 1 q q -- [ 0 C 1 ] yq-
possible plants. Assume that k = 0:5 0:1, which may be written as

jÆj  1 d- K(s) 
k = 0:5 + 0:1Æ; (7.104)
6 u
Note that the parameter k enters into the plant model in several places, and we will need to
use repeated perturbations in order to rearrange the model to fit our standard formulation
with the uncertainty represented as a block-diagonal -matrix. Figure 7.22: Block diagram of parametric uncertainty
Let us first consider the input gain uncertainty for state 1, that is, the variations in bp1 =
(1 k)=k. Even though bp1 is a nonlinear function of Æ , it has a block-diagram representation
and may thus be written as a linear fractional transformation (LFT). We have and we note that it has a RHP-zero for k < 0:414, and that the steady state gain is zero for
k = 0:414. The three plants corresponding to k = 0:5; 0:4 and 0.6 are
bp1 (Æ ) = 1 k = 0:5 0:1Æ = 1 0:2Æ (s + 0:5)
; Gp1 (s) = (s 0:1)2 ; Gp2 (s) = (s + 0:93)2
(7.105)
k 0:5 + 0:1Æ 1 + 0:2Æ G(s) =
(s + 1:5)2
(7.110)
(s + 1:4) (s + 1:6)
which may be written as a scalar LFT
From a practical point of view the pole uncertainty therefore seems to be of very little
bp1 (Æ ) = Fu (N; Æ ) = n22 + n12 Æ (1 n11 Æ ) 1 n21 (7.106) importance and we may use a simplified uncertainty description with zero uncertainty only,
e.g.
(s + zp )
with n22 = 1; n11 = 0:2; n12 n21 = 0:4. Next consider the pole uncertainty caused by gp (s) = ; 0:1  zp  0:93
(s + 1:5)2
(7.111)
variations in the A-matrix, which may be written as
     In any case, we know that because of the RHP-zero crossing through the origin, the
Ap = 11:5 01:5 + 00:1 00:1 0Æ 0Æ (7.107) performance at low frequencies will be very poor for this plant.

For our specific example with uncertainty in both B and A, the plant uncertainty may be
represented as shown in Figure 7.22 where K (s) is a scalar controller. Consequently, we

may pull out the perturbations and collect them in a 3 3 diagonal -block with the scalar 7.8 Additional exercises
perturbation Æ repeated three times,
2 3 Exercise 7.7 Consider a “true” plant
Æ
=4 Æ 3e 0:1s
G0 (s) =
5 (7.108)
Æ (2s + 1)(0:1s + 1)2
and we may then obtain the interconnection matrix P by rearranging the block diagram of (a) Derive and sketch the additive uncertainty weight when the nominal model is G(s) =
Figure 7.22 to fit Figure 3.21. It is rather tedious to do this by hand, but it is relatively 3=(2s + 1).
straightforward with the appropriate software tools.
(b) Derive the corresponding robust stability condition.
(c) Apply this test for the controller K (s) = k=s and find the values of k that yield stability.
Is this condition tight?
Remark. The above example is included in order to show that quite complex uncertainty
representations can be captured by the general framework of block-diagonal perturbations. It
Exercise 7.8 Uncertainty weight for a first-order model with delay. Laughlin et al.
is not suggested, however, that such a complicated description should be used in practice for
(1987) considered the following parametric uncertainty description
this example. A little more analysis will show why. The transfer function for this plant is
Gp (s) = kp e p s ; k 2 [k ; k ];  2 [ ;  ];  2 [ ;  ]
(s + (k+2:414)(k k 0:414) ) p s + 1 p min max p min max p min max
Gp (s) =
(s + 1 + k)2
(7.109) (7.112)
290 MULTIVARIABLE FEEDBACK CONTROL UNCERTAINTY AND ROBUSTNESS 291
 ;
where all parameters are assumed positive. They chose the mean parameter values as (k;  ) (a) Derive (7.118) and (7.119). (Hint: The gain variation in (7.117) can be written exactly as
giving the nominal model kp = ki =(1 rk ).)
G(s) = G (s) , k e s (7.113) (b) Show that the form in (7.118) does not allow for kp = 0.
s + 1
and suggested use of the following multiplicative uncertainty weight (c) Discuss why (b) may be a possible advantage.

wIL (s) = kmax  s + 1  T s + 1 1; T = max min Exercise 7.12 The model of an industrial robot arm is as follows
k min s + 1 T s + 1
(7.114)
4
G(s) = 250(as2 + 0:0001s + 100)
(a) Show that the resulting stable and minimum phase weight corresponding to the uncertainty s(as2 + 0:0001(500a + 1)s + 100(500a + 1))
description in (7.17) is
2
where a [0:0002; 0:002]. Sketch the Bode plot for the two extreme values of a. What kind of
wIL (s) = (1:25s2 + 1:55s + 0:2)=(2s + 1)(0:25s + 1) (7.115) control performance do you expect? Discuss how you may best represent this uncertainty.
Note that this weight cannot be compared with (7.19) or (7.20) since the nominal plant is
different.
(b) Plot the magnitude of wIL as a function of frequency. Find the frequency where the weight 7.9 Conclusion
crosses 1 in magnitude, and compare this with 1=max . Comment on your answer.
j j
(c) Find lI (j! ) using (7.15) and compare with wIL . Does the weight (7.115) and the
In this chapter we have shown how model uncertainty for SISO systems can be
uncertainty model (7.2) include all possible plants? (Answer: No, not quite around frequency
! = 5). represented in the frequency domain using complex norm-bounded perturbations,
kk1  1. At the end of the chapter we also discussed how to represent parametric
uncertainty using real perturbations.
Exercise 7.9 Consider again the system in Figure 7.18. What kind of uncertainty might wu
and u represent? We showed that the requirement of robust stability for the case of multiplicative
complex uncertainty imposes an upper bound on the allowed complementary
Exercise 7.10 Neglected dynamics. Assume we have derived the following detailed model sensitivity, jwI T j < 1; 8!: Similarly, the inverse multiplicative uncertainty imposes
an upper bound on the sensitivity, jw iI S j < 1; 8! . We also derived a condition for
3( 0:5s + 1) robust performance with multiplicative uncertainty, jw P S j + jwI T j < 1; 8! .
Gdetail (s) =
(2s + 1)(0:1s + 1)2
(7.116)
The approach in this chapter was rather elementary, and to extend the results to
and we want to use the simplified nominal model G(s) = 3=(2s + 1) with multiplicative MIMO systems and to more complex uncertainty descriptions we need to make use
uncertainty. Plot lI (! ) and approximate it by a rational transfer function wI (s).
of the structured singular value, . This is the theme of the next chapter, where we
find that jwI T j and jwiI S j are the structured singular values for evaluating robust
Exercise 7.11 Parametric gain uncertainty. We showed in Example 7.1 how to represent stability for the two sources of uncertainty in question, whereas jw P S j + jwI T j is
scalar parametric gain uncertainty Gp (s) = kp G0 (s) where
the structured singular value for evaluating robust performance with multiplicative
kmin  kp  kmax (7.117) uncertainty.
 0 (s) and
as multiplicative uncertainty Gp = G(1 + wI I ) with nominal model G(s) = kG
uncertainty weight wI = rk = (kmax kmin )=(kmax + kmin ). I is here a real scalar,
 
1 I 1. Alternatively, we can represent gain uncertainty as inverse multiplicative
uncertainty:

iI : Gp (s) = G(s)(1 + wiI (s)iI ) 1 ; 1  iI 1 (7.118)

with wiI = rk and G(s) = ki G where

ki = 2 kmin kmax (7.119)


kmax + kmin
292 MULTIVARIABLE FEEDBACK CONTROL

ROBUST STABILITY AND


PERFORMANCE ANALYSIS
The objective of this chapter is to present a general method for analyzing robust stability and
robust performance of MIMO systems with multiple perturbations. Our main analysis tool
will be the structured singular value, . We also show how the “optimal” robust controller, in
terms of minimizing , can be designed using DK -iteration. This involves solving a sequence
H
of scaled 1 problems.

8.1 General control configuration with uncertainty


For useful notation and an introduction to model uncertainty the reader is referred
to Sections 7.1 and 7.2. The starting point for our robustness analysis is a system
representation in which the uncertain perturbations are “pulled out” into a block-
diagonal matrix, 2 3
1
6 .. 7
6 7
 = diagfi g = 6 . 7 (8.1)
6
4 i 7
5
..
.

where each i represents a specific source of uncertainty, e.g. input uncertainty,  I ,


or parametric uncertainty, Æ i , where Æi is real. If we also pull out the controller K ,
we get the generalized plant P , as shown in Figure 8.1. This form is useful for
controller synthesis. Alternatively, if the controller is given and we want to analyze
the uncertain system, we use the N -structure in Figure 8.2.
In Section 3.8.8, we discussed how to find P and N for cases without uncertainty.
The procedure with uncertainty is similar and is demonstrated by examples below;
see Section 8.3. To illustrate the main idea, consider Figure 8.4 where it is shown
how to pull out the perturbation blocks to form  and the nominal system N . As
294 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 295

 
u y
-
w -
- P -z - 3 -

u v w - - 1 - z
-

K  - 2
-

Figure 8.1: General control configuration (for controller synthesis)


(a) Original system with multiple perturbations

u y +
-
w - N -z
1 

2 
Figure 8.2: N -structure for robust performance analysis
3 

shown in (3.111), N is related to P and K by a lower LFT

N = Fl (P; K ) , P11 + P12 K (I P22 K ) 1P21 (8.2)

Similarly, the uncertain closed-loop transfer function from w to z , z = F w, is related -


to N and  by an upper LFT (see (3.112)),

F = Fu (N; ) , N22 + N21 (I N11 ) 1 N12 (8.3)


w - - z
-

To analyze robust stability of F , we can then rearrange the system into the M -
-

  N
u y (b) Pulling out the perturbations

- M
Figure 8.4: Rearranging an uncertain system into the N -structure

Figure 8.3: M -structure for robust stability analysis


296 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 297

structure of Figure 8.3 where M = N 11 is the transfer function from the output to From the large RGA-elements we know that G becomes singular for small relative changes
the input of the perturbations. in the individual elements. For example, from (6.88) we know that perturbing the 1; 2-element
from 86:4 to 88:9 makes G singular. Since variations in the steady-state gains of 50% 
or more may occur during operation of the distillation process, this seems to indicate that
independent control of both outputs is impossible. However, this conclusion is incorrect since,
8.2 Representing uncertainty for a distillation process, G never becomes singular. The reason is that the transfer function
elements are coupled due to underlying physical constraints (e.g. the material balance).
Specifically, for the distillation process a more reasonable description of the gain uncertainty
As usual, each individual perturbation is assumed to be stable and is normalized, is (Skogestad et al., 1988)
 
 (i (j!))  1 8! (8.4) Gp = G + w Æ Æ ; Æ 1
j j (8.7)
Æ Æ
For a complex scalar perturbation we have jÆ i (j! )j  1; 8! , and for a real scalar w in this case is a real constant, e.g. w = 50. For the numerical data above
perturbation 1  Æ i  1. Since from (A.47) the maximum singular value of a
where
det Gp = det G irrespective of Æ , so Gp is never singular for this uncertainty. (Note that
block diagonal matrix is equal to the largest of the maximum singular values of the det Gp = det G is not generally true for the uncertainty description given in (8.7)).
individual blocks, it then follows for  = diagf i g that

 (i (j!))  1 8!; 8i , kk1  1 Exercise 8.1 The uncertain plant in (8.7) may be represented in the additive uncertainty
(8.5) form Gp= G + W2 A W1 where A = Æ is a single scalar perturbation. Find W1 and W2 .
Note that  has structure, and therefore in the robustness analysis we do not want
to allow all  such that (8.5) is satisfied. Only the subset which has the block- 8.2.2 Parametric uncertainty
diagonal structure in (8.1) should be considered. In some cases the blocks in  may
be repeated or may be real, that is, we have additional structure. For example, as The representation of parametric uncertainty, as discussed in Chapter 7 for SISO
shown in Section 7.7.3, repetition is often needed to handle parametric uncertainty. systems, carries straight over to MIMO systems. However, the inclusion of
parametric uncertainty may be more significant for MIMO plants because it offers
Remark. The assumption of a stable  may be relaxed, but then the resulting robust stability a simple method of representing the coupling between uncertain transfer function
and performance conditions will be harder to derive and more complex to state. Furthermore, elements. For example, the simple uncertainty description used in (8.7) originated
if we use a suitable form for the uncertainty and allow for multiple perturbations, then we can from a parametric uncertainty description of the distillation process.
always generate the desired class of plants with stable perturbations, so assuming  stable is
not really a restriction.

8.2.3 Unstructured uncertainty


8.2.1 Differences between SISO and MIMO systems Unstructured perturbations are often used to get a simple uncertainty model. We here
define unstructured uncertainty as the use of a “full” complex perturbation matrix ,
The main difference between SISO and MIMO systems is the concept of directions
usually with dimensions compatible with those of the plant, where at each frequency
which is only relevant in the latter. As a consequence MIMO systems may experience
much larger sensitivity to uncertainty than SISO systems. The following example
 ((j!))  1 is allowed.
any (j! ) satisfying 
illustrates that for MIMO systems it is sometimes critical to represent the coupling Six common forms of unstructured uncertainty are shown in Figure 8.5. In
between uncertainty in different transfer function elements. Figure 8.5(a), (b) and (c) are shown three feedforward forms; additive uncertainty,
multiplicative input uncertainty and multiplicative output uncertainty:
Example 8.1 Coupling between transfer function elements. Consider a distillation
process where at steady-state A : Gp = G + EA ; Ea = wA a (8.8)
    I : Gp = G(I + EI ); EI = wI I (8.9)
G= 87:8 86:4 35:1 34:1
108:2 109:6 ;  = RGA(G) = 34:1 35:1 (8.6) O : Gp = (I + EO )G; EO = wO O (8.10)
298 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 299

- wA - A wiA  iA
f g
into a larger perturbation,  = diag I ; O . However, this  is a block-diagonal matrix
and is therefore no longer truly unstructured.

q -G - c?-
+
+
- ?c - G
+
+
q- Lumping uncertainty into a single perturbation
(a) (d) For SISO systems we usually lump multiple sources of uncertainty into a single
complex perturbation; often in multiplicative form. This may also be done for MIMO
- wI - I wiI  iI  systems, but then it makes a difference whether the perturbation is at the input or the
output.

q - c?- G -
+
+
- ?c
+
+
-q G - Since output uncertainty is frequently less restrictive than input uncertainty in terms
of control performance (see Section 6.10.4), we first attempt to lump the uncertainty
at the output. For example, a set of plants  may be represented by multiplicative
(b) (e) output uncertainty with a scalar weight w O (s) using
Gp = (I + wO O )G; kO k1  1
- wO - O wiO  iO
(8.14)
where, similar to (7.15),

-G q - ?c -
+
+
- G - ?c +
+
q- lO (!) = max  (Gp
Gp 2

G)G 1 (j!) ; jwO (j!)j  lO (!) 8! (8.15)

(c) (f) (we can use the pseudo-inverse if G is singular). If the resulting uncertainty weight is
reasonable (i.e. it must at least be less than 1 in the frequency range where we want
Figure 8.5: (a) Additive uncertainty, (b) Multiplicative input uncertainty, (c) Multiplicative control), and the subsequent analysis shows that robust stability and performance
output uncertainty, (d) Inverse additive uncertainty, (e) Inverse multiplicative input uncertainty,
(f) Inverse multiplicative output uncertainty may be achieved, then this lumping of uncertainty at the output is fine. If this is
not the case, then one may try to lump the uncertainty at the input instead, using
multiplicative input uncertainty with a scalar weight,
In Figure 8.5(d), (e) and (f) are shown three feedback or inverse forms;
inverse additive uncertainty, inverse multiplicative input uncertainty and inverse Gp = G(I + wI I ); kI k1  1 (8.16)
multiplicative output uncertainty:
where, similar to (7.15),
iA : Gp = G(I EiA G) 1 ; EiA = wiA iA (8.11)
lI (!) = max  G 1 (Gp

G)(j!) ; jwI (j!)j  lI (!) 8! (8.17)
iI : Gp = G(I EiI ) ; 1 EiI = wiI iI (8.12) Gp 2
iO : Gp = (I EiO ) 1 G; EiO = wiO iO (8.13) However, in many cases this approach of lumping uncertainty either at the output
or the input does not work well. This is because one cannot in general shift a
The negative sign in front of the E ’s does not really matter here since we assume
perturbation from one location in the plant (say at the input) to another location
that  can have any sign.  denotes the normalized perturbation and E the “actual” (say the output) without introducing candidate plants which were not present in the
perturbation. We have here used scalar weights w, so E = w = w, but
original set. In particular, one should be careful when the plant is ill-conditioned.
sometimes one may want to use matrix weights, E = W 2 W1 where W1 and W2
This is discussed next.
are given transfer function matrices.
Another common form of unstructured uncertainty is coprime factor uncertainty
discussed later in Section 8.6.2. Moving uncertainty from the input to the output

Remark. In practice, one can have several perturbations which themselves are unstructured. For a scalar plant, we have G p = G(1 + wI I ) = (1 + wO O )G and we may
For example, we may have I at the input and O at the output, which may be combined simply “move” the multiplicative uncertainty from the input to the output without
300 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 301

changing the value of the weight, i.e. w I = wO . However, for multivariable plants is incorrect. Fortunately, we can instead represent this additive uncertainty as multiplicative
we usually need to multiply by the condition number (G) as is shown next. output uncertainty (which is also generally preferable for a subsequent controller design) with
Suppose the true uncertainty is represented as unstructured input uncertainty (E I is
lO =  ((G0 G)G 1 ) = 0:10. Therefore output uncertainty works well for this particular
example.
a full matrix) on the form
Gp = G(I + EI ) (8.18) Conclusion. Ideally, we would like to lump several sources of uncertainty into a
Then from (8.17) the magnitude of multiplicative input uncertainty is single perturbation to get a simple uncertainty description. Often an unstructured
multiplicative output perturbations is used. However, from the above discussion we
lI (!) = max  (G 1 (Gp G)) = max  (EI ) (8.19) have learnt that we should be careful about doing this, at least for plants with a
E I E I large condition number. In such cases we may have to represent the uncertainty as
On the other hand, if we want to represent (8.18) as multiplicative output uncertainty, it occurs physically (at the input, in the elements, etc.) thereby generating several
then from (8.15) perturbations. For uncertainty associated with unstable plant poles, we should use
one of the inverse forms in Figure 8.5.
lO (!) = max  ((Gp G)G 1 ) = max  (GEI G 1 ) (8.20)
EI EI
which is much larger than l I (! ) if the condition number of the plant is large. To see
this, write EI = wI I where we allow any  I (j! ) satisfying   (I (j!))  1; 8!.
 
Then at a given frequency

lO (!) = jwI j max  (GI G 1 ) = jwI (j!)j (G(j!)) (8.21) - H11 H12
I
Proof of (8.21): Write at each frequency G = U V H and G 1 = U eV
e e H . Select I =
u - H21 H22 -y
V Ue H (which is a unitary matrix with all singular values equal to 1). Then  (GI G 1 ) =
eV H) = 
 (U  e =
 ()  (G)(G 1 ) = (G). 2
Figure 8.6: Uncertain plant, y = Gp u, represented by LFT, see (8.23)
Example 8.2 Assume the relative input uncertainty is 10%, that is, wI = 0:1, and the

condition number of the plant is 141:7. Then we must select l0 = wO = 0:1 141:7 = 14:2 in
Exercise 8.2 A fairly general way of representing an uncertain plant Gp is in terms of a
order to represent this as multiplicative output uncertainty (this is larger than 1 and therefore
linear fractional transformation (LFT) of  as shown in Figure 8.6. Here
not useful for controller design).   
Gp = Fu H 11 H12 1
H H ;  = H22 + H21 (I H11 ) H12
21 22 (8.23)
Also for diagonal uncertainty (E I diagonal) we may have a similar situation. For
example, if the plant has large RGA-elements then the elements in GE I G 1 will where G = H22 is the nominal plant model. Obtain H for each of the six uncertainty
be much larger than those of E I , see (A.80), making it impractical to move the forms in (8.8)-(8.13) using E = W2 W1 (Hint for the inverse forms: (I W1 W2 ) 1 =
uncertainty from the input to the output. I + W1 (I W2 W1 ) 1 W2 , see (3.7)–(3.9)).
Exercise 8.3 Obtain H in Figure 8.6 for the uncertain plant in Figure 7.20(b).
Example 8.3 Let  be the set of plants generated by the additive uncertainty in (8.7) with
w = 10 (corresponding to about 10% uncertainty in each element). Then from (8.7) one plant Exercise 8.4 Obtain H in Figure 8.6 for the uncertain plant in Figure 7.22.
G0 in this set (corresponding to Æ = 1) has

G0 = G + 10 10 
10 10 (8.22) 8.2.4 Diagonal uncertainty
 (G 1 (G0 G)) = 14:3. Therefore, to represent G0 in terms of input
for which we have lI =  By “diagonal uncertainty” we mean that the perturbation is a complex diagonal
uncertainty we would need a relative uncertainty of more than 1400%. This would imply that matrix
the plant could become singular at steady-state and thus impossible to control, which we know (s) = diagfÆi (s)g; jÆi (j!)j  1; 8!; 8i (8.24)
302 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 303

(usually of the same size as the plant). For example, this is the case if  is diagonal One can then imagine measuring these flows and using cascade control so that each flow can
in any of the six uncertainty forms in Figure 8.5. Diagonal uncertainty usually arises be adjusted more accurately. However, even in this case there will be uncertainty related to the
from a consideration of uncertainty or neglected dynamics in the individual input accuracy of each measurement. Note that it is not the absolute measurement error that yields
channels (actuators) or in the individual output channels (sensors). This type of problems, but rather the error in the sensitivity of the measurement with respect to changes
diagonal uncertainty is always present, and since it has a scalar origin it may be (i.e. the “gain” of the sensor). For example, assume that the nominal flow in our shower is 1
l/min and we want to increase it to 1.1 l/min, that is, in terms of deviation variables we want
represented using the methods presented in Chapter 7.
u = 0:1 [l/min]. Suppose the vendor guarantees that the measurement error is less than 1%.
To make this clearer, let us consider uncertainty in the input channels. With each But, even with this small absolute error, the actual flow rate may have increased from 0.99
input ui there is associated a separate physical system (amplifier, signal converter, l/min (measured value of 1 l/min is 1% too high) to 1.11 l/min (measured value of 1.1 l/min
actuator, valve, etc.) which based on the controller output signal, u i , generates a is 1% too low), corresponding to a change u0 = 0:12 [l/min], and an input gain uncertainty of
physical plant input m i 20%.
mi = hi (s)ui (8.25)
In conclusion, diagonal input uncertainty, as given in (8.27), should always be
The scalar transfer function h i (s) is often absorbed into the plant model G(s), but for considered because:
representing the uncertainty it is important to notice that it originates at the input. We
can represent this actuator uncertainty as multiplicative (relative) uncertainty given 1. It is always present and a system which is sensitive to this uncertainty will not
by
hpi (s) = hi (s)(1 + wIi (s)Æi (s)); jÆi (j!)j  1; 8!
work in practice.
(8.26) 2. It often restricts achievable performance with multivariable control.
which after combining all input channels results in diagonal input uncertainty for the
plant

Gp (s) = G(1 + WI I ); I = diagfÆi g; WI = diagfwIi g (8.27) 8.3 Obtaining P , N and M


Normally we would represent the uncertainty in each input or output channel using
a simple weight in the form given in (7.28), namely We will now illustrate, by way of an example, how to obtain the interconnection
matrices P , N and M in a given situation.
s + r0
w(s) = (8.28)
(=r1 )s + 1
- WI y -
I
u
w
where r0 is the relative uncertainty at steady-state, 1= is (approximately) the
frequency where the relative uncertainty reaches 100%, and r 1 is the magnitude of
the weight at higher frequencies. Typically, the uncertainty jwj, associated with each d v- K u q d+-
-+ ? G d+ q- WP -z
-+ ?
input, is at least 10% at steady-state (r 0  0:1), and it increases at higher frequencies
- 6
to account for neglected or uncertain dynamics (typically, r 1  2).
Remark 1 The diagonal uncertainty in (8.27) originates from independent scalar uncertainty
in each input channel. If we choose to represent this as unstructured input uncertainty (I is
a full matrix) then we must realize that this will introduce non-physical couplings at the input Figure 8.7: System with multiplicative input uncertainty and performance measured at the
to the plant, resulting in a set of plants which is too large, and the resulting robustness analysis output
may be conservative (meaning that we may incorrectly conclude that the system may not meet
its specifications).
Remark 2 The claim is often made that one can easily reduce the static input gain uncertainty Example 8.4 System with input uncertainty. Consider a feedback system with
to significantly less than 10%, but this is probably not true in most cases. Consider again multiplicative input uncertainty I as shown in Figure 8.7. Here WI is a normalization weight
(8.25). A commonly suggested method to reduce the uncertainty is to measure the actual for the uncertainty and WP is a performance weight. We want to derive the generalized plant
input (mi ) and employ local feedback (cascade control) to readjust ui . As a simple example, P in Figure 8.1 which has inputs [ u w u ]T and outputs [ y z v ]T . By writing down
 
consider a bathroom shower, in which the input variables are the flows of hot and cold water. the equations (e.g. see Example 3.13) or simply by inspecting Figure 8.7 (remember to break
304 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 305

the loop before and after K ) we get Exercise 8.9 Find P for the uncertain system in Figure 7.18.
"
0 0 WI #
P = WP G WP W P G (8.29) Exercise 8.10 Find P for the uncertain plant Gp in (8.23) when w = r and z = y r.
G I G
It is recommended that the reader carefully derives P (as instructed in Exercise 8.5). Note Exercise 8.11 Find the interconnection matrix N for the uncertain system in Figure 7.18.
that the transfer function from u to y (upper left element in P ) is 0 because u has no What is M ?
direct effect on y (except through K ). Next, we want to derive the matrix N corresponding
to Figure 8.2. First, partition P to be compatible with K , i.e. Exercise 8.12 Find the transfer function M = N11 for studying robust stability for the
    uncertain plant Gp in (8.23).
P11 = W0 G W0 ; P12 = WWIG
P P P
(8.30)

P21 = [ G I ]; P22 = G (8.31) - W1I - I - W2I -W1O - O -W2O


and then find N = Fl (P; K ) using (8.2). We get (see Exercise 8.7)

N= W

WI KG(I + KG) 1 WI K (I + GK ) 1
( + ) 1 ( + ) 1

c- K q c -G
-? +
q - ?c +

6
G I KG W I GK (8.32)
P P - + +

 N directlyfromFigure 8.7 by evaluating the closed-loop transfer


Alternatively, we canderive
u y
function from inputs w to outputs z (without breaking the loop before and after K ).
For example, to derive N12 , which is the transfer function from w to y , we start at the output Figure 8.8: System with input and output multiplicative uncertainty
(y ) and move backwards to the input (w) using the MIMO Rule in Section 3.2 (we first meet
WI , then K and we then exit the feedback loop and get the term (I + GK ) 1 ).
The upper left block, N11 , in (8.32) is the transfer function from u to y . This is the Exercise 8.13 M -structure for combined input and output uncertainties. Consider
transfer function M needed in Figure 8.3 for evaluating robust stability. Thus, we have the block diagram in Figure 8.8 where we have both input and output multiplicative
M = WI KG(I + KG) 1 = WI TI . uncertainty blocks. The set of possible plants is given by

Remark. Of course, deriving N from P is straightforward using available software. For Gp = (I + W2O O W1O )G(I + W2I I W1I ) (8.33)
example, in the MATLAB -toolbox we can evaluate N = Fl (P; K ) using the command
N=starp(P,K) , and with a specific  the perturbed transfer function Fu (N; ) from w
k k 
where I 1 k k 
1 and O 1 1. Collect the perturbations into  = diagfI ; O g
and rearrange Figure 8.8 into the M -structure in Figure 8.3 Show that
to z is obtained with the command F=starp(delta,N).
   
Exercise 8.5 Show in detail how P in (8.29) is derived.
M = W01I W01O TI
SG
KS
T
W2I
0
0
W2O (8.34)

Exercise 8.6 For the system in Figure 8.7 we see easily from the block diagram that the Exercise 8.14 Find  for the uncertain system in Figure 7.20(b).
uncertain transfer function from w to z is F = WP (I + G(I + WI I )K ) 1 . Show that this
is identical to Fu (N; ) evaluated using (8.35) where from (8.32) we have N11 = WI TI ,
N12 = WI KS , N21 = WP SG and N22 = WP S .
8.4 Definitions of robust stability and robust
Exercise 8.7 Derive N in (8.32) from P in (8.29) using the lower LFT in (8.2). You will
note that the algebra is quite tedious, and that it is much simpler to derive N directly from the performance
block diagram as described above.
We have discussed how to represent an uncertain set of plants in terms of the N -
Exercise 8.8 Derive P and N for the case when the multiplicative uncertainty is at the structure in Figure 8.2. The next step is to check whether we have stability and
output rather than the input. acceptable performance for all plants in the set:
306 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 307

1. Robust stability (RS) analysis: with a given controller K we determine whether to mean “for all ’s in the set of allowed perturbations”, and “maximizing over all ’s in
the system remains stable for all plants in the uncertainty set. H
the set of allowed perturbations”. By allowed perturbations we mean that the 1 norm of 
2. Robust performance (RP) analysis: if RS is satisfied, we determine how “large” k k 
is less or equal to 1,  1 1, and that  has a specified block-diagonal structure where
the transfer function from exogenous inputs w to outputs z may be for all plants certain blocks may be restricted to be real. To be mathematically exact, we should replace 
in the uncertainty set. in (8.40) by  2B  , where
Before proceeding, we need to define performance more precisely. In Figure 8.2, w B = f 2  : kk1  1g
represents the exogenous inputs (normalized disturbances and references), and z the
exogenous outputs (normalized errors). We have z = F ()w, where from (8.3)
is the set of unity norm-bounded perturbations with a given structure . The allowed structure
should also be defined, for example by
F = Fu (N; ) , N22 + N21 (I N11 ) 1 N12 (8.35)
 = fdiag [Æ1Ir1; : : : ; ÆS IrS ; 1; : : : ; F ] : Æi 2 R; j 2 Cmj mj g
We here use the H1 norm to define performance and require for RP that where in this case S denotes the number of real scalars (some of which may be repeated), and
kF ()k1  for all allowed ’s. A typical choice is F = w P Sp (the
1 F the number of complex blocks. This gets rather involved. Fortunately, this amount of detail
weighted sensitivity function), where w P is the performance weight (capital P for is rarely required as it is usually clear what we mean by “for all allowed perturbations” or
performance) and S p represents the set of perturbed sensitivity functions (lower-case 8
“ ”.
p for perturbed).
In terms of the N -structure in Figure 8.2 our requirements for stability and
performance can then be summarized as follows
def
8.5 Robust stability of the M -structure 
NS , N is internally stable (8.36)
NP def
, kN22k1 < 1; and NS (8.37) Consider the uncertain N -system in Figure 8.2 for which the transfer function from
def w to z is, as in (8.35), given by
RS , F = Fu (N; ) is stable 8; kk1  1; and NS (8.38)
RP def
, kF k1 < 1; 8; kk1  1; and NS (8.39) Fu (N; ) = N22 + N21 (I N11 ) 1 N12 (8.41)

Suppose that the system is nominally stable (with  = 0), that is, N is stable (which
These definitions of RS and RP are useful only if we can test them in an efficient
means that the whole of N , and not only N 22 must be stable ). We also assume that 
manner, that is, without having to search through the infinite set of allowable
is stable. We then see directly from (8.41) that the only possible source of instability
perturbations . We will show how this can be done by introducing the structured
is the feedback term (I N 11 ) 1 . Thus, when we have nominal stability (NS), the
singular value, , as our analysis tool. At the end of the chapter we also discuss
stability of the system in Figure 8.2 is equivalent to the stability of the M -structure
how to synthesize controllers such that we have “optimal robust performance” by
in Figure 8.3 where M = N 11 .
minimizing  over the set of stabilizing controllers.
We thus need to derive conditions for checking the stability of the M -structure.
Remark 1 Important. As a prerequisite for nominal performance (NP), robust stability (RS) The next theorem follows from the generalized Nyquist Theorem 4.7. It applies to
and robust performance (RP), we must first satisfy nominal stability (NS). This is because
the frequency-by-frequency conditions can also be satisfied for unstable systems.
H1 norm-bounded -perturbations, but as can be seen from the statement it also
applies to any other convex set of perturbations (e.g. sets with other structures or sets
Remark 2 Convention for inequalities. In this book we use the convention that the bounded by different norms).
perturbations are bounded such that they are less than or equal to one. This results in a stability
condition with a strict inequality, for example, RS  18k k  k k
1 if M 1 < 1. (We could
alternatively have bounded the uncertainty with a strict inequality, yielding the equivalent Theorem 8.1 Determinant stability condition (Real or complex perturbations).
8k k
condition RS  1 < 1 if M 1 1.)k k  Assume that the nominal system M (s) and the perturbations (s) are stable.
Consider the convex set of perturbations , such that if  0 is an allowed
perturbation then so is c 0 where c is any real scalar such that jcj  1. Then the
Remark 3 Allowed perturbations. For simplicity below we will use the shorthand notation

8 and max
 (8.40) M -system in Figure 8.3 is stable for all allowed perturbations (we have RS) if and
308 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 309

only if Remark 2 In words, Theorem 8.2 tells us that we have stability if and only if the spectral
radius of M  is less than 1 at all frequencies and for all allowed perturbations, . The main
Nyquist plot of det (I M (s)) does not encircle the origin, 8 (8.42) problem here is of course that we have to test the condition for an infinite set of ’s, and this
, det (I M (j!)) 6= 0; 8!; 8 (8.43)
is difficult to check numerically.

, i (M ) 6= 1; 8i; 8!; 8
Remark 3 Theorem 8.1, which applies to both real and complex perturbations, forms the
(8.44) basis for the general definition of the structured singular value in (8.76).

Proof: Condition (8.42) is simply the generalized Nyquist Theorem (page 147) applied to a
positive feedback system with a stable loop transfer function M .
(8.42) ) (8.43): This is obvious since by “encirclement of the origin” we also include the 8.6 RS for complex unstructured uncertainty
origin itself.
(8.42) ( (8.43) is proved by proving not(8.42) ) not(8.43): First note that0 with  = 0, In this section, we consider the special case where (s) is allowed to be any (full)
det(I M ) = 1 at all frequencies. Assume there exists a perturbation  such that the complex transfer function matrix satisfying kk 1  1. This is often referred to as
image of det(I M 0 (s)) encircles the origin as s traverses the Nyquist D-contour. Because unstructured uncertainty or as full-block complex perturbation uncertainty.
the Nyquist contour and its map is closed, there then exists another perturbation in the set,
00 = 0 with  [0; 1], and an !0 such that det(I M 00 (j! 0 )) = 0.
2
Q Lemma 8.3 Let  be the set of all complex matrices such that 
 ()  1. Then the
(8.44) is equivalent to (8.43) since det(I A) = i i (I A) and i (I A) = 1 i (A) following holds
(see Appendix A.2.1). 2
max (M ) = max  (M ) = max  () (M ) =  (M ) (8.47)
The following is a special case of Theorem 8.1 which applies to complex
  
perturbations.

Theorem 8.2 Spectral radius condition for complex perturbations. Assume that Proof: In general, the spectral radius () provides a lower bound on the spectral norm (
 ) (see
the nominal system M (s) and the perturbations (s) are stable. Consider the class (A.116)), and we have
of perturbations, , such that if  0 is an allowed perturbation then so is c 0 where
c is any complex scalar such that jcj  1. Then the M - system in Figure 8.3 is  (M )  max
max   (M )  max   () (M ) =  (M ) (8.48)

stable for all allowed perturbations (we have RS) if and only if where the second inequality in (8.48) follows since   (AB )   (A)(B ). Now, we need
to show that we actually have equality. This will be the case if for any M there exists an
(M (j!)) < 1; 8!; 8 (8.45) allowed 0 such that (M 0 ) =   (M ). Such a 0 does indeed exist if we allow 0 to be
a full matrix such that all directions in 0 are allowed: Select 0 = V U H where U and V
or equivalently are matrices of the left and right singular vectors of M = U V H . Then   (0 ) = 1 and
RS , max (M (j!)) < 1;
 8! (8.46) (M 0 ) = (U V H V U H ) = (U U H ) = () =  (M ). The second to last equality
follows since U H = U 1 and the eigenvalues are invariant under similarity transformations.
Proof: (8.45) ) ,
(8.43) ( RS) is “obvious”: It follows from the definition of the spectral 2
radius , and applies also to real ’s.
(8.43) )(8.45) is proved by proving not(8.45) ) not(8.43): Assume there exists a Lemma 8.3 together with Theorem 8.2 directly yield the following theorem:
perturbation 0 such that (M 0 ) = 1 at some frequency. Then i (M 0 ) = 1 for some
j j
eigenvalue i, and there always exists another perturbation in the set, 00 = c0 where c is Theorem 8.4 RS for unstructured (“full”) perturbations. Assume that the
a complex scalar with jj
c = 1, such that Q i (M 00 ) = +1 (real and positive) and therefore nominal system M (s) is stable (NS) and that the perturbations (s) are stable. Then
det(I M 00 ) = i i (I M 00 ) = i (1 i (M 00 )) = 0. Finally, the equivalence
Q
the M -system in Figure 8.3 is stable for all perturbations  satisfying kk 1  1
between (8.45) and (8.46) is simply the definition of max . 2 (i.e. we have RS) if and only if
Remark 1 The proof of (8.45) relies on adjusting the phase of i (Mc0 ) using the complex
scalar c and thus requires the perturbation to be complex.
 (M (j!)) < 1 8w , kM k1 < 1 (8.49)
310 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 311

Remark 1 Condition (8.49) may be rewritten as Note that the SISO-condition (7.33) follows as a special case of (8.60) Similarly,
RS ,  (M (j! ))  ((j! )) < 1; 8!; 8; (7.53) follows as a special case of the inverse multiplicative output uncertainty in
(8.50)
(8.58):
)
RS 8Gp = (I wiO iO ) 1 G; kiO k1  1 , kwiO S k1 < 1
The sufficiency of (8.50) ( ) also follows directly from the small gain theorem by choosing
L = M . The small gain theorem applies to any operator norm satisfying AB k k  (8.61)
k kk k
A B .
In general, the unstructured uncertainty descriptions in terms of a single perturbation
H
Remark 2 An important reason for using the 1 norm to describe model uncertainty, is that
H
the stability condition in (8.50) is both necessary and sufficient. In contrast, use of the 2
are not “tight” (in the sense that at each frequency all complex perturbations
 ((j!))  1 may not be possible in practice). Thus, the above RS-
satisfying 
norm yields neither necessary nor sufficient conditions for stability. We do not get sufficiency
H
since the 2 norm does not in general satisfy ABk kk kk kA B . conditions are often conservative. In order to get tighter conditions we must use a
tighter uncertainty description in terms of a block-diagonal .

8.6.1 Application of the unstructured RS-condition


8.6.2 RS for coprime factor uncertainty
We will now present necessary and sufficient conditions for robust stability (RS) for
each of the six single unstructured perturbations in Figure 8.5. with
- N -+ e- M 
E = W2 W1 ; kk1  1 (8.51)

To derive the matrix M we simply “isolate” the perturbation, and determine the
transfer function matrix q - Nl e+ -
-+ ? Ml 1 q
M = W1 M0 W2 (8.52)
from the output to the input of the perturbation, where M 0 for each of the six
cases becomes (disregarding some negative signs which do not affect the subsequent
robustness condition) is given by
K 
Gp = G + EA : M0 = K (I + GK ) 1 = KS (8.53)
Gp = G(I + EI ) : M0 = K (I + GK ) 1 G = TI (8.54) Figure 8.9: Coprime uncertainty
Gp = (I + EO )G : M0 = GK (I + GK ) 1 = T (8.55)
Robust stability bounds in terms of the H 1 norm (RS , kM k1 < 1) are in general
Gp = G(I EiA G) 1 : M0 = (I + GK ) 1 G = SG (8.56)
Gp = G(I EiI ) 1 : M0 = (I + KG) 1 = SI
only tight when there is a single full perturbation block. An “exception” to this
(8.57) is when the uncertainty blocks enter or exit from the same location in the block
Gp = (I EiO ) 1 G : M0 = (I + GK ) 1 = S (8.58) diagram, because they can then be stacked on top of each other or side-by-side, in
an overall  which is then a full matrix. If we norm-bound the combined (stacked)
uncertainty, we then get a tight condition for RS in terms of kM k 1 .
For example, (8.54) and (8.55) follow from the diagonal elements in the M -matrix
in (8.34), and the others are derived in a similar fashion. Note that the sign of M 0 One important uncertainty description that falls into this category is the coprime
does not matter as it may be absorbed into . Theorem 8.4 then yields uncertainty description shown in Figure 8.9, for which the set of plants is

RS , kW1 M0 W2 (j!)k1 < 1; 8 w (8.59) Gp = (Ml + M ) 1 (Nl + N ); k [ N M ] k1   (8.62)

For instance, from (8.54) and (8.59) we get for multiplicative input uncertainty with where G = M 1 Nl is a left coprime factorization of the nominal plant, see (4.20).
l
a scalar weight: This uncertainty description is surprisingly general, it allows both zeros and poles
to cross into the right-half plane, and has proved to be very useful in applications
RS 8Gp = G(I + wI I ); kI k1  1 , kwI TI k1 < 1 (8.60) (McFarlane and Glover, 1990). Since we have no weights on the perturbations, it
312 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 313

is reasonable to use a normalized coprime factorization of the nominal plant; see SAME UNCERTAINTY
(4.25). In any case, to test for RS we can rearrange the block diagram to match the
M -structure in Figure 8.3 with 1
  D  2
.
 D 1
 = [ N M ] ; M = K (I + GK ) 1 M 1 .
.
I l (8.63)

We then get from Theorem 8.4

RS 8k N M k1   , kM k1 < 1= (8.64)

The above robust stability result is central to the H 1 loop-shaping design procedure
-D 1 - M - D
discussed in Chapter 9.
NEW M : DMD 1
The comprime uncertainty description provides a good “generic” uncertainty
description for cases where we do not use any specific a priori uncertainty
Figure 8.10: Use of block-diagonal scalings, D = D
information. Note that the uncertainty magnitude is , so it is not normalized to be
less than 1 in this case. This is because this uncertainty description is most often used
in a controller design procedure where the objective is to maximize the magnitude of stability must be independent of scaling. To this effect, introduce the block-diagonal
the uncertainty () such that RS is maintained. scaling matrix
D = diagfdi Ii g (8.66)
k
Remark. In (8.62) we bound the combined (stacked) uncertainty, [ N M ] 1 k  ,
where di is a scalar and Ii is an identity matrix of the same dimension as the i’th
k k  k
which is not quite the same as bounding the individual blocks, N 1  and M 1 . pk  perturbation block,  i . Now rescale the inputs and outputs to M and  by inserting
However, from (A.45) we see that these two approaches differ at most by a factor of 2, so it
is not an important issue from a practical point of view. the matrices D and D 1 on both sides as shown in Figure 8.10. This clearly has no
effect on stability. Next, note that with the chosen form for the scalings we have for
each perturbation block  i = di i di 1 , that is, we have  = DD 1 . This means
that (8.65) must also apply if we replace M by DMD 1 (see Figure 8.10), and we
Exercise 8.15 Consider combined multiplicative and inverse multiplicative uncertainty at
the output, Gp = (I iO WiO ) 1 (I + O WO )G, where we choose to norm-bound the
k
combined uncertainty, [ iO O ] 1 k  1. Make a block diagram of the uncertain plant, have
and derive a necessary and sufficient condition for robust stability of the closed-loop system. RS if  (DMD 1 ) < 1; 8! (8.67)
This applies for any D in (8.66), and therefore the “most improved” (least
conservative) RS-condition is obtained by minimizing at each frequency the scaled
singular value, and we have
8.7 RS with structured uncertainty: Motivation
RS if minD(!)2D  (D(!)M (j!)D(!) 1 ) < 1; 8! (8.68)
Consider now the presence of structured uncertainty, where  = diagf i g is block-
diagonal. To test for robust stability we rearrange the system into the M -structure where D is the set of block-diagonal matrices whose structure is compatible to that
and we have from (8.49) of , i.e, D = D. We will return with more examples of this compatibility
later. Note that when  is a full matrix, we must select D = dI and we have
RS if  (M (j!)) < 1; 8! (8.65)  (DMD 1 ) = (M ), and so as expected (8.68) is identical to (8.65). However,
when  has structure, we get more degrees of freedom in D, and   (DMD 1 ) may
We have here written “if” rather than “if and only if” since this condition is only be significantly smaller than 
 (M ).
sufficient for RS when  has “no structure” (full-block uncertainty). The question is
whether we can take advantage of the fact that  = diagf i g is structured to obtain Remark 1 Historically, the RS-condition in (8.68) directly motivated the introduction of the
an RS-condition which is tighter than (8.65). One idea is to make use of the fact that structured singular value, (M ), discussed in detail in the next section. As one might guess,
314 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 315


we have that (M ) minD   (DMD 1 ). In fact, for block-diagonal complex perturbations Note that the perturbation  in (8.72) is a full matrix. If we restrict  to be diagonal
 (DMD 1 ).
we generally have that (M ) is very close to minD  then we need a larger perturbation to make det(I M ) = 0. This is illustrated
Remark 2 Other norms. Condition (8.68) is essentially a scaled version of the small gain next.
theorem. Thus, a similar condition applies when we use other matrix norms. The M -
k k 8
structure in Figure 8.3 is stable for all block-diagonal ’s which satisfy (j! ) 1; w Example 8.5 continued. Diagonal perturbation ( is structured). For the matrix M in
if (8.71), the smallest diagonal  which makes det(I M ) = 0 is
k k
min D(! )M (j! )D(! ) < 1; !1 8  
D(!)2D
(8.69) 1 1 0
=
3 0 1
(8.73)
where D as before is compatible with the block-structure of . Any matrix norm may be
k k
used; for example, the Frobenius norm, M F , or any induced matrix norm such as M i1k k with 
 () = 0:333. Thus (M ) = 3 when  is a diagonal matrix.
k k
(maximum column sum), M i1 (maximum row sum), or M i2 =  k k  (M ), which is the
one we will use. Although in some cases it may be convenient to use other norms, we usually The above example shows that  depends on the structure of . The following
prefer 
 because for this norm we get a necessary and sufficient RS-condition. example demonstrates that  also depends on whether the perturbation is real or
complex.

j j
Example 8.6  of a scalar. If M is a scalar then in most cases (M ) = M . This follows
8.8 The structured singular value j j j j
from (8.70) by selecting  = 1= M such that (1 M ) = 0. However, this requires that
we can select the phase of  such that M  is real, which is impossible when  is real and
The structured singular value (denoted Mu, mu, SSV or ) is a function which M has an imaginary component, so in this case (M ) = 0. In summary, we have for a scalar
provides a generalization of the singular value,   , and the spectral radius, . We M,
will use  to get necessary and sufficient conditions for robust stability and also for  complex : (M ) = jM j (8.74)
robust performance. How is  defined? A simple statement is: 

Find the smallest structured  (measured in terms of 


 ()) which makes the  real : (M ) = jM0j for real M
otherwise (8.75)
matrix I M  singular; then (M ) = 1=  ().
The definition of  in (8.70) involves varying   (). However, we prefer to normalize
Mathematically,  such that  ()  1. We can do this by scaling  by a factor k m , and looking
(M ) 1 , min
 f ()j det(I M ) = 0 for structured g (8.70) for the smallest km which makes the matrix I k m M  singular, and  is then the
reciprocal of this smallest k m , i.e.  = 1=km . This results in the following alternative
Clearly, (M ) depends not only on M but also on the allowed structure for . This definition of .
is sometimes shown explicitly by using the notation   (M ).
Definition 8.1 Structured Singular Value. Let M be a given complex matrix and
Remark. For the case where  is “unstructured” (a full matrix), the smallest  which yields let  = diagfi g denote a set of complex matrices with   ()  1 and with a given
singularity has 
 () = 1= (M ), and we have (M ) =  (M ). A particular smallest  block-diagonal structure (in which some of the blocks may be repeated and some may
which achieves this is  = 11 v1 uH
1. be restricted to be real). The real non-negative function (M ), called the structured
singular value, is defined by
Example 8.5 Full perturbation ( is unstructured). Consider
1

2 2  =  0:894 0:447  3:162 0  0:707 0:707 H (M ) ,
minfkm j det(I km M ) = 0 for structured ;  ()  1g
(8.76)
M= 1 1 0:447 0:894 0 0 0:707 0:707 (8.71)
If no such structured  exists then (M ) = 0.
The perturbation
1  0:707  
0:100 
:894 0:447 ] = 00::200
1 A value of  = 1 means that there exists a perturbation with 
 () = 1 which is
=
1
v1 uH
1 =
3:162 0: 707 [ 0 200 0:100 (8.72)
just large enough to make I M  singular. A larger value of  is “bad” as it means
with 
 () = 1= (M ) = 1=3:162 = 0:316 makes det(I M ) = 0. Thus (M ) = 3:162 that a smaller perturbation makes I M  singular, whereas a smaller value of  is
when  is a full matrix. “good”.
316 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 317

8.8.1 Remarks on the definition of  In addition, the upper bounds given below for complex perturbations, e.g.
 (M )  minD2D  (DMD 1 ) in (8.87), also hold for real or mixed
1. The structured singular value was introduced by Doyle (1982). At the same time (in fact, in real/complex perturbations . This follows because complex perturbations include
the same issue of the same journal) Safonov (1982) introduced the Multivariable Stability real perturbations as a special case. However, the lower bounds, e.g. (M )  (M )
Margin km for a diagonally perturbed system as the inverse of , that is, km (M ) =
(M ) 1 . In many respects, this is a more natural definition of a robustness margin.
in (8.82), generally hold only for complex perturbations.
However, (M ) has a number of other advantages, such as providing a generalization
of the spectral radius, (M ), and the spectral norm, 
 (M ).
2. The  corresponding to the smallest km in (8.76) will always have   () = 1, since if 8.8.3  for complex 
det(I km 0 M 0 ) = 0 for some 0 with  (0 ) = c < 1, then 1=km 0 cannot be the
structured singular value of M , since there exists a smaller scalar km = km 0 c such that When all the blocks in  are complex,  may be computed relatively easily. This
det(I km M ) = 0 where  = 1c 0 and  () = 1. is discussed below and in more detail in the survey paper by Packard and Doyle
3. Note that with km = 0 we obtain I km M  = I which is clearly non-singular. Thus, (1993). The results are mainly based on the following result, which may be viewed
one possible way to obtain  numerically, is to start with km = 0 , and gradually increase as another definition of  that applies for complex  only.
km until we first find an allowed  with  () = 1 such that (I km M ) is singular
(this value of km is then 1=). By “allowed” we mean that  must have the specified  ()  1:
Lemma 8.5 For complex perturbations  with 
block-diagonal structure and that some of the blocks may have to be real.
4. The sequence of M and  in the definition of  does not matter. This follows from the
identity (A.12) which yields
(M ) = max;()1 (M ) (8.79)

det(I km M ) = det(I km M ) (8.77) Proof: The lemma follows directly from the definition of  and the equivalence between (8.43)
5. In most cases M and  are square, but this need not be the case. If they are non-square,
and (8.46). 2
then we make use of (8.77) and work with either M  or M (whichever has the lowest
dimension).
Properties of  for complex perturbations
The remainder of this section deals with the properties and computation of . Readers
Most of the properties below follow easily from (8.79).
who are primarily interested in the practical use of  may skip most of this material.
1. ( M ) = j j(M ) for any (complex) scalar .


2. For a repeated scalar complex perturbation we have
8.8.2 Properties of  for real and complex
 = ÆI (Æ is a complex scalar) : (M ) = (M ) (8.80)
Two properties of  which hold for both real and complex perturbations are:
Proof: Follows directly from (8.79) since there are no degrees-of-freedom for the
1. ( M ) = j j(M ) for any real scalar . maximization. 2
2. Let  = diagf1 ; 2 g be a block-diagonal perturbation (in which  1 and 2
3. For a full block complex perturbation we have from (8.79) and (8.47):
may have additional structure) and let M be partitioned accordingly. Then

(M )  maxf1 (M11 ); 2 (M22 )g (8.78)


 full matrix : (M ) =  (M ) (8.81)

Proof: Consider det(I 1 4.  for complex perturbations is bounded by the spectral radius and the singular
 M ) where  =  (M ) and use Schur’s formula in (A.14)
with A11 = I  M11 1 and A12 = I 1 M22 2 .
1 value (spectral norm):
2
(M )  (M )   (M ) (8.82)
In words, (8.78) simply says that robustness with respect to two perturbations
taken together is at least as bad as for the worst perturbation considered alone. This follows from (8.80) and (8.81), since selecting  = ÆI gives the fewest
This agrees with our intuition that we cannot improve robust stability by including degrees-of-freedom for the optimization in (8.79), whereas selecting  full gives
another uncertain perturbation. the most degrees-of-freedom.
318 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 319

5. Consider any unitary matrix U with the same structure as . Then Some examples of D’s which commute with  are

(MU ) = (M ) = (UM ) (8.83)  = ÆI : D = full matrix (8.88)


 = full matrix : D = dI
= M 0 where  (0 ) =  (U ) =  (),
(8.89)
Proof: Follows from (8.79) by writing MU     
and so U may always be absorbed into . 2  =  1 (full) 0 : D = d1 I 0 (8.90)
0 2 (full) 0 d2 I
6. Consider any matrix D which commutes with , that is, D = D. Then  = diagf1 (full); Æ2 I; Æ3 ; Æ4 g : D = diagfd1 I; D2 (full); d3 ; d4 g (8.91)
(DM ) = (MD) and (DMD 1 ) = (M ) (8.84) In short, we see that the structures of  and D are “opposites”.
9. Without affecting the optimization in (8.87), we may assume the blocks in D to be
Proof: (DM ) = (MD) follows from
Hermitian positive definite, i.e. D i = DiH > 0, and for scalars d i > 0 (Packard
 (DM ) = max
 (DM ) = max
 (M D) = max
 (MD) =  (MD) (8.85) and Doyle, 1993).
10. One can always simplify the optimization in (8.87) by fixing one of the scalar
The first equality is (8.79). The second equality applies since (AB ) = (BA) (by the blocks in D equal to 1. For example, let D = diagfd 1 ; d2 ; : : : ; dn g, then one may
eigenvalue properties in the Appendix). The key step is the third equality which applies without loss of generality set d n = 1.
only when D = D. The fourth equality again follows from (8.79). 2 Proof: Let D 0 = d1n D and note that  (DMD 1 ) =  (D0 MD0 1 ). 2
7. Improved lower bound. Define U as the set of all unitary matrices U with the Similarly, for cases where  has one or more scalar blocks, one may simplify
same block-diagonal structure as . Then for complex  the optimization in (8.86) by fixing one of the corresponding unitary scalars in U
equal to 1. This follows from Property 1 with jcj = 1.
(M ) = maxU 2U (MU ) (8.86) 11. The following property is useful for finding (AB ) when  has a structure similar
to that of A or B :
Proof: The proof of this important result is given by Doyle (1982) and Packard and Doyle (AB )   (A)A (B ) (8.92)
(1993). It follows from a generalization of the maximum modulus theorem for rational
functions. 2  (AB )   (B )B (A) (8.93)

The result (8.86) is motivated by combining (8.83) and (8.82) to yield Here the subscript “A” denotes the structure of the matrix A, and “B ”
denotes the structure of B .
(M )  max (MU ) Proof: The proof is from (Skogestad and Morari, 1988a). Use the fact that (AB ) =
U 2U
max (AB ) = max (V B )(A) where V = A= (A). When we maximize over
The surprise is that this is always an equality. Unfortunately, the optimization in  then V generates a certain set of matrices with  (V )  1. Let us extend this set by
(8.86) is not convex and so it may be difficult to use in calculating  numerically.  (V )  1 and with the same structure as A. We
maximizing over all matrices V with 
then get (AB )  maxV (V B )  (A) = V (B )(A). 2
8. Improved upper bound. Define D to be the set of matrices D which commute
with  (i.e. satisfy D = D). Then it follows from (8.84) and (8.82) that Some special cases of (8.92):
(a) If A is a full matrix then the structure of A is a full matrix, and we simply
(M )  minD2D (DMD 1 ) (8.87) get (AB )    (A) (B ) (which is not a very exciting result since we always
have (AB )    (AB )   (A) (B )).
This optimization is convex in D (i.e. has only one minimum, the global (b) If  has the same structure as A (e.g. they are both diagonal) then
minimum) and it may be shown (Doyle, 1982) that the inequality is in fact an
equality if there are 3 or fewer blocks in . Furthermore, numerical evidence  (AB )   (A) (B ) (8.94)
suggests that the bound is tight (within a few percent) for 4 blocks or more; the
worst known example has an upper bound which is about 15% larger than  (Balas Note: (8.94) is stated incorrectly in Doyle (1982) since it is not specified that  must
et al., 1993). have the same structure as A; see also Exercise 8.20.
320 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 321

(c) If  = ÆI (i.e.  consists of repeated scalars), we get the spectral radius We will use approach (a) here and leave (b) and (c) for Exercise 8.16. We have
inequality (AB )  
 (A)A (B ). A useful special case of this is     
M  = ab ab Æ1 Æ2 = ab [ Æ1 Æ2 ] = M
fe
(M )   () (M ) (8.95)
From (8.77) we then get
12. A generalization of (8.92) and (8.93) is:  
det(I M ) = det(I eM
 f) = 1 [ Æ1 Æ2 ] a =1 aÆ1 bÆ2
  b
 (ARB )   (R)2e B0 A0 (8.96)
The smallest Æ1 and Æ2 which make this matrix singular, i.e. 1 aÆ1 bÆ2 = 0, are
j j j j jj
obtained when Æ1 = Æ2 = Æ and the phases of Æ1 and Æ2 are adjusted such that
where e = diagf; Rg. The result is proved by (Skogestad and Morari, 1988a). 1 a Æj jj j jjj j jj jj jj
b Æ = 0. We get Æ = 1=( a + b ), and from (8.70) we have that
13. The following is a further generalization of these bounds. Assume that M is an
jj jj jj
 = 1= Æ = a + b . 2
LFT of R: M = N11 + N12 R(I N22 R) 1 N21 . The problem is to find an upper
 (R)  c, which guarantees that  (M ) < 1 when  (N11 ) < 1.
bound on R,  Exercise 8.16 (b) For M in (8.98) and a diagonal  show that (M ) = jaj + jbj
using the lower “bound” (M ) = maxU (MU ) (which is always exact). Hint: Use
Skogestad and Morari (1988a) show that the best upper bound is the c which
U = diagfej ; 1g (the blocks in U are unitary scalars, and we may fix one of them equal
solves   to 1).
N11 N12 = 1
e cN
21 cN22
(8.97) (c) ForM in (8.98) and a diagonal  show that (M ) = jaj + jbj using the upper bound
(M )  minD  (DMD 1 ) (which is exact in this case since D has two “blocks”).
where e = diagf; Rg, and c is easily computed using skewed-. Given the Solution: Use D = diagfd; 1g. Since DMD 1 is a singular matrix we have from (A.36) that
-condition (M ) < 1 (for RS or RP), (8.97) may be used to derive a sufficient p 
loop-shaping bound on a transfer function of interest, e.g. R may be S , T , L, L 1  (DMD 1 ) =  1ab da 2 2 2
b = jaj + jdaj + jb=dj + jbj
2 (8.99)
d
or K .
p
want to minimize with respect to d. The solution is
which wep d = jbj=jaj which gives
Remark. Above we have used minD . To be mathematically correct, we should have used (M ) = a 2 + 2 ab + b 2 = a + b .
jj j j jj jj jj
inf D because the set of allowed D’s is not bounded and therefore the exact minimum may not
be achieved (although we may be get arbitrarily close). The use of max (rather than sup ) Exercise 8.17 Let c be a complex scalar. Show that for
is mathematically correct since the set  is closed (with  
 () 1). 
M11 cM12
  
 = diagf1 ; 2 g :  M 11 M12
M21 M22 =  1c M21 M22 (8.100)
Example 8.7 Let M and  be complex 2  2 matrices. Then
8 Example 8.8 Let M be a partitioned matrix with both diagonal blocks equal to zero. Then
  < (M ) = ja + bj for  = ÆI 8 p
M = ab ab ; (M ) = : jaj + jbj for  = diagfÆ1 ; Æ2 g   <  (M ) = (AB ) for  = ÆI
 B0 A0 = :  (A)(B )
p (8.98) p
 (M ) = 2jaj2 + 2jbj2 for  a full matrix for  = diagf1 ; 2 g; i full
| {z }  (M ) = maxf (A);  (B )g for  a full matrix
M
j j
Proof: For  = ÆI , (M ) = (M ) and (M ) = a + b since M is singular and its non- (8.101)
p eigenvalue is 1 (M ) = tr(M ) = a + b. For  full, (M ) = 
zero  (M ) and  (M ) =
2 a 2 + 2 b 2 since M is singular and its non-zero singular value is  (M ) = M F , see
jj jj k k Proof:
p p i (M ) =
From the definitionpof eigenvalues and Schur’s formula (A.14) we get
(A.126). For a diagonal , it is interesting to consider three different proofs of the result i (AB ) and (M ) = (AB ) follows. For block-diagonal , (M ) =  (A)(B )
jj jj
( M ) = a + b : follows in a similar way using (M ) = max (M ) = max1 ;2 (A2 B 1 ), and
(a) A direct calculation based on the definition of . then realizing that we can always select 1 and 2 such that (A2 Bp 1 ) =  (A)(B )
(b) Use of the lower “bound” in (8.86) (which is always exact). f g
 (M ) = max  (A);  (B ) follows since  (M ) = (M H M ) where
(recall (8.47)). 
(c) Use of the upper bound in (8.87) (which is exact here since we have only two blocks). f
M H M = diag B H B; AH A . g 2
322 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 323

Exercise 8.18 Let M be a complex 3  3 matrix and  = diagfÆ1 ; Æ2 Æ3 g. Prove that Proof: (M ) < 1 , km > 1, so if (M ) < 1 at all frequencies the required perturbation
" #  to make det(I M ) = 0 is larger than 1, and the system is stable. On the other hand,
a a a (M ) = 1 , km = 1, so if (M ) = 1 at some frequency there does exist a perturbation
M = b b b ; (M ) = jaj + jbj + jcj
c c c  () = 1 such that det(I M ) = 0 at this frequency, and the system is unstable. 2
with 

Exercise 8.19 Let a; b; c and d be complex scalars. Show that for Condition (8.105) for robust stability may be rewritten as
   
 = diagfÆ1 ; Æ2 g :  ab ad ab ab
bc cd =  cd cd = jabj + jcdj (8.102) RS , (M (j!))  ((j!)) < 1; 8! (8.106)

Does this hold when  is scalar times identity, or when  is full? (Answers: Yes and No). which may be interpreted as a “generalized small gain theorem” that also takes into
account the structure of .
Exercise 8.20 Assume A and B are square matrices. Show by a counterexample that
One may argue whether Theorem 8.6 is really a theorem, or a restatement of the
 (AB ) is not in general equal to  (BA). Under what conditions is (AB ) = (BA)?
definition of . In either case, we see from (8.105) that it is trivial to check for robust
(Hint: Recall (8.84)).
stability provided we can compute .
Exercise 8.21 If (8.94) were true for any structure of  then it would imply (AB )  Let us consider two examples that illustrate how we use  to check for robust stability
 (A)(B ). Show by a counterexample that this is not true. with structured uncertainty. In the first example, the structure of the uncertainty is
important, and an analysis based on the H 1 norm leads to the incorrect conclusion
that the system is not robustly stable. In the second example the structure makes no
difference.

8.9 Robust stability with structured uncertainty Example 8.9 RS with diagonal input uncertainty Consider robust stability of the

Consider stability of the M -structure in Figure 8.3 for the case where  is a 2
10
set of norm-bounded block-diagonal perturbations. From the determinant stability
condition in (8.43) which applies to both complex and real perturbations we get 1 1  (TI )
jwI (j!)j
10

RS , det(I M (j!)) 6= 0; 8!; 8;  ((j!))  1 8!

Magnitude
(8.103) 0
10
I (TI )
A problem with (8.103) is that it is only a “yes/no” condition. To find the factor k m −1
10
by which the system is robustly stable, we scale the uncertainty  by k m , and look
for the smallest km which yields “borderline instability”, namely
−2
10

det(I km M ) = 0
−3
(8.104) 10 −3 −2 −1 0 1 2
10 10 10 10 10 10
Frequency
From the definition of  in (8.76) this value is k m = 1=(M ), and we obtain the
following necessary and sufficient condition for robust stability. Figure 8.11: Robust stability for diagonal input uncertainty is guaranteed since I (TI ) <
j j 8
1= wI ; ! . The use of unstructured uncertainty and  (TI ) is conservative
Theorem 8.6 RS for block-diagonal perturbations (real or complex). Assume
that the nominal system M and the perturbations  are stable. Then the M -system
feedback system in Figure 8.7 for the case when the multiplicative input uncertainty is
 ()  1; 8!, if and only if
in Figure 8.3 is stable for all allowed perturbations with 

diagonal. A nominal 2 2 plant and the controller (which represents PI-control of a distillation
process using the DV-configuration) is given by

(M (j!)) < 1; 8! (8.105) G(s) = 1 87:8 1:4 ; K (s) = 1 + s  0:0015 0  (8.107)
108:2 1:4
s + 1 0 0:075
s
324 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 325

(time in minutes). The controller results in a nominally stable system with acceptable
performance. Assume there is complex multiplicative uncertainty in each manipulated input of
1
magnitude 10

wI (s) = s + 0:2 (8.108)


0:5s + 1 (T )

Magnitude
This implies a relative uncertainty of up to 20% in the low frequency range, which increases at
high frequencies, reaching a value of 1 (100% uncertainty) at about 1 rad/min. The increase 0
10
with frequency allows for various neglected dynamics associated with the actuator and valve.
The uncertainty may be represented as multiplicative input uncertainty as shown in Figure 8.7
where I is a diagonal complex matrix and the weight is WI = wI I where wI (s) is a
scalar. On rearranging the block diagram to match the M -structure in Figure 8.3 we get
M = wI KG(I + KG) 1 = wI TI (recall (8.32)), and the RS-condition (M ) < 1 in
−1
10 −2 −1 0 1 2
10 10 10 10 10
Theorem 8.6 yields Frequency
 
, 1 !; I = Æ1
RS I (TI ) <
jwI (j!)j 8 Æ2 (8.109)

This condition is shown graphically in Figure 8.11 and is seen to be satisfied at all frequencies, Figure 8.12: -plot for robust stability of spinning satellite
so the system is robustly stable. Also in Figure 8.11,   (TI ) can be seen to be larger than
j j
1= wI (j! ) over a wide frequency range. This shows that the system would be unstable for
full-block input uncertainty (I full). However, full-block uncertainty is not reasonable for 8.9.1 What do  6 = 1 and skewed- mean?
this plant, and therefore we conclude that the use of the singular value is conservative in this
case. This demonstrates the need for the structured singular value. A value of  = 1:1 for robust stability means that all the uncertainty blocks must be
decreased in magnitude by a factor 1.1 in order to guarantee stability.
Exercise 8.22 Consider the same example and check for robust stability with full-block
multiplicative output uncertainty of the same magnitude. (Solution: RS is satisfied). But if we want to keep some of the uncertainty blocks fixed, how large can one
Example 8.10 RS of spinning satellite. Recall Motivating Example No. 1 from Section particular source of uncertainty be before we get instability? We define this value
3.7.1 with the plant G(s) given in (3.76) and the controller K = I . We want to study how as 1=s , where s is called skewed-. We may view  s (M ) as a generalization of
sensitive this design is to multiplicative input uncertainty. (M ).
In this case TI = T , so for RS there is no difference between multiplicative input and For example, let  = diagf 1 ; 2 g and assume we have fixed k 1 k  1 and we
multiplicative output uncertainty. In Figure 8.12, we plot (T ) as a function of frequency. We want to find how large  2 can be before we get instability. The solution is to select
find for this case that (T ) = 
 (T ) irrespective of the structure of the complex multiplicative
perturbation (full-block, diagonal or repeated complex scalar). Since (T ) crosses 1 at about  
10 rad/s, we can tolerate more than 100% uncertainty at frequencies above 10 rad/s. At low Km = I0 k 0 I (8.110)
frequencies (T ) is about 10, so to guarantee RS we can at most tolerate 10% (complex) m
uncertainty at low frequencies. This confirms the results from Section 3.7.1, where we found
that real perturbations Æ1 = 0:1 and Æ2 = 0:1 yield instability. Thus, the use of complex and look at each frequency for the smallest value of km which makes det(I
rather than real perturbations is not conservative in this case, at least for I diagonal. Km M ) = 0, and we have that skewed- is
However, with repeated scalar perturbations (i.e. the uncertainty in each channel is identical)
there is a difference between real and complex perturbations. With repeated real perturbations,
s (M ) , 1=km
available software (e.g. using the command mu with blk = [-2 0] in the -toolbox in
MATLAB) yields a peak -value of 1, so we can tolerate a perturbation Æ1 = Æ2 of magnitude
1 before getting instability (This is confirmed by considering the characteristic polynomial in Note that to compute skewed- we must first define which part of the perturbations is
(3.80), from which we see that Æ1 = Æ2 = 1 yields instability.) On the other hand, with to be constant.  s (M ) is always further from 1 than (M ) is, i.e.  s   for  > 1,
complex repeated perturbations, we have that (T ) = (T ) is 10 at low frequencies, so s =  for  = 1, and s   for  < 1. In practice, with available software to
instability may occur with a (non-physical) complex Æ1 = Æ2 of magnitude 0:1. (Indeed, from compute , we obtain  s by iterating on k m until (Km M ) = 1 where Km may be
(3.80) we see that the non-physical constant perturbation Æ1 = Æ2 = j 0:1 yields instability.) as in (8.110). This iteration is straightforward since  increases uniformly with k m .
326 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 327

8.10 Robust performance 3. Since 


b always has structure, the use of the H1 norm, kN k1 < 1, is generally
conservative for robust performance.
4. From (8.78) we have that
Robust performance (RP) means that the performance objective is satisfied for all
possible plants in the uncertainty set, even the worst-case plant. We showed in b (N )  maxf (N11 ); P (N22 )g (8.114)
Chapter 7 that for a SISO system with an H 1 performance objective, the RP- | {z } | {z } | {z }
RS NP
RP
condition is identical to a RS-condition with an additional perturbation block.
where as just noted P (N22 ) =   (N22 ). (8.114) implies that RS ( (N11 ) < 1) and
This also holds for MIMO systems, as illustrated by the step-wise derivation in
NP ( (N22 ) < 1) are automatically satisfied when RP ((N ) < 1) is satisfied. However,
Figure 8.13. Step B is the key step and the reader is advised to study this carefully in note that NS (stability of N ) is not guaranteed by (8.112) and must be tested separately
the treatment below. Note that the block  P (where capital P denotes Performance)
is always a full matrix. It is a fictitious uncertainty block representing the H 1
(Beware! It is a common mistake to get a design with apparently great RP, but which is not
nominally stable and thus is actually robustly unstable).
performance specification. 5. For a generalization of Theorem 8.7 see the main loop theorem of Packard and Doyle
(1993); see also Zhou et al. (1996).

8.10.1 Testing RP using 


Block diagram proof of Theorem 8.7
To test for RP, we first “pull out” the uncertain perturbations and rearrange the
uncertain system into the N -form of Figure 8.2. Our RP-requirement, as given In the following, let F = F u (N; ) denote the perturbed closed-loop system for
in (8.39), is that the H 1 norm of the transfer function F = F u (N; ) remains less which we want to test RP. The theorem is proved by the equivalence between the
than 1 for all allowed perturbations. This may be tested exactly by computing (N ) various block diagrams in Figure 8.13.
as stated in the following theorem. Step A. This is simply the definition of RP; kF k 1 < 1.
Theorem 8.7 Robust performance. Rearrange the uncertain system into the N - Step B (the key step). Recall first from Theorem 8.4 that stability of the M -
structure of Figure 8.13. Assume nominal stability such that N is (internally) stable. structure in Figure 8.3, where  is a full complex matrix, is equivalent to kM k 1 <
Then
1. From this theorem, we get that the RP-condition kF k 1 < 1 is equivalent to RS
of the F P -structure, where  P is a full complex matrix.
RP def
, kF k1 = kFu (N; )k1 < 1; 8kk1  1 (8.111) Step C. Introduce F = F u (N; ) from Figure 8.2.
, b (N (j!)) < 1; 8w (8.112) Step D. Collect  and P into the block-diagonal matrix b . We then have that
the original RP-problem is equivalent to RS of the N b -structure which from
where  is computed with respect to the structure Theorem 8.6 is equivalent to  
b (N ) < 1 . 2
 
b = 
 0 (8.113)
0 P Algebraic proof of Theorem 8.7
and P is a full complex perturbation with the same dimensions as F T . The definition of  gives at each frequency

Below we prove the theorem in two alternative ways, but first a few remarks: b (N (j! )) < 1 , det(I b j! )) 6= 0; 8
N (j! )( b;  b j! ))  1
 ((
k k
1. Condition (8.112) allows us to test if F 1 < 1 for all possible ’s without having to test By Schur’s formula in (A.14) we have
each  individually. Essentially,  is defined such that it directly addresses the worst case.  
2. The -condition for RP involves the enlarged perturbation  f g
b = diag ; P . Here
det(I b = det I N11 
N ) N12 P
, which itself may be a block-diagonal matrix, represents the true uncertainty, whereas N21  I N22 p =
H
P is a full complex matrix stemming from the 1 norm performance specification.
det(I N11 )  det [I N22 P N21 (I N11 ) 1 N12 P ] =
For example, for the nominal system (with  = 0) we get from (8.81) that   (N22 ) =
P (N22 ), and we see that P must be a full matrix. det(I N11 )  det[I (N22 + N21 (I N11 ) 1 N12 )P ] =
328 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 329

det(I N11 )  det(I Fu (N; )P )


RP
STEP A m Since this expression should not be zero, both terms must be non-zero at each frequency, i.e.

k F () k1 < 1; 8 k  k1  1 det(I N11 ) 6= 0 8 ,  (N11 ) < 1; 8! (RS)

m and for all 


STEP B
det(I F P ) 6= 0 8P , P (F ) < 1 ,  (F ) < 1; 8! (RP definition)
P 
8 k P k1  1 Theorem 8.7 is proved by reading the above lines in the opposite direction. Note that it is not
is RS, necessary to test for RS separately as it follows as a special case of the RP requirement. 2
- F () 8 k  k1  1
8.10.2 Summary of -conditions for NP, RS and RP
STEP C m
Rearrange the uncertain system into the N -structure of Figure 8.2, where the
P  block-diagonal perturbations satisfy kk 1  1. Introduce

F = Fu (N; ) = N22 + N21 (I N11 ) 1 N12


8 k P k1  1
  is RS, and let the performance requirement (RP) be kF k 1  1 for all allowable
8 k  k1  1 perturbations. Then we have:

- NS , N (internally) stable (8.115)


- N NP ,  (N22 ) = P < 1; 8!; and NS (8.116)
STEP D m RS ,  (N11 ) < 1; 8!; and NS
 
(8.117)
 e =  0 ;
b
RP , e (N ) < 1; 8!;  and NS (8.118)
 0  0 P
0 P
is RS, 8 k b k1  1 Here  is a block-diagonal matrix (its detailed structure depends on the uncertainty
we are representing), whereas  P always is a full complex matrix. Note that nominal
- N stability (NS) must be tested separately in all cases.
Although the structured singular value is not a norm, it is sometimes convenient to
refer to the peak -value as the “-norm”. For a stable rational transfer matrix H (s),
m (RS theorem)
with an associated block structure , we therefore define

b (N ) < 1; 8w kH (s)k , max


! 
 (H (j!))

For a nominally stable system we then have


Figure 8.13: RP as a special case of structured RS. F = Fu (N; )
NP , kN22k1 < 1; RS , kN11k < 1; RP , kN ke < 1
330 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 331

8.10.3 Worst-case performance and skewed- Here wP (s) and wI (s) are scalar weights, so the performance objective is the same
for all the outputs, and the uncertainty is the same for all inputs. We will mostly
Assume we have a system for which the peak -value for RP is 1:1. What does this assume that I is diagonal, but we will also consider the case when  I is a full
mean? The definition of  tells us that our RP-requirement would be satisfied exactly matrix. This problem is excellent for illustrating the robustness analysis of uncertain
if we reduced both the performance requirement and the uncertainty by a factor of
1.1. So,  does not directly give us the worst-case performance, i.e. max  
 (F ()),
as one might have expected. - WI - I w

d- q -+ d?+- -+ d?+-q
To find the worst-case weighted performance for a given uncertainty, one needs to
 ()  1), that is, we must compute
keep the magnitude of the perturbations fixed ( K G WP -z
skewed- of N as discussed in Section 8.9.1. We have, in this case, - 6
max  (Fl (N; )(j!)) = s (N (j!)) (8.119)
 ()1

To find s numerically, we scale the performance part of N by a factor k m = 1=s


+
and iterate on k m until  = 1. That is, at each frequency skewed- is the value
s (N ) which solves I 
 
(Km N ) = 1; Km = I0 1=
0
-
s
- -z
(8.120)
w N
Note that  underestimates how bad or good the actual worst-case performance is.
This follows because  s (N ) is always further from 1 than (N ). Figure 8.14: Robust performance of system with input uncertainty

Remark. The corresponding worst-case perturbation may be obtained as follows: First


compute the worst-case performance at each frequency using skewed-. At the frequency multivariable systems. It should be noted, however, that although the problem set-up
where s (N ) has its peak, we may extract the corresponding worst-case perturbation in (8.121) and (8.122) is fine for analyzing a given controller, it is less suitable for
generated by the software, and then find a stable, all-pass transfer function that matches controller synthesis. For example, the problem formulation does not penalize directly
this. In the MATLAB -toolbox, the single command wcperf combines these three steps: the outputs from the controller.
[delwc,mulow,muup] = wcperf(N,blk,1);.
In this section, we will:

8.11 Application: RP with input uncertainty


1. Find the interconnection matrix N for this problem.
We will now consider in some detail the case of multiplicative input uncertainty with 2. Consider the SISO case, so that useful connections can be made with results from
performance defined in terms of weighted sensitivity, as illustrated in Figure 8.14. the previous chapter.
The performance requirement is then 3. Consider a multivariable distillation process for which we have already seen from
simulations in Chapter 3 that a decoupling controller is sensitive to small errors
RP def
, kwP (I + Gp K ) 1 k1 < 1; 8Gp (8.121)
in the input gains. We will find that  for RP is indeed much larger than 1 for this
decoupling controller.
where the set of plants is given by 4. Find some simple bounds on  for this problem and discuss the role of the
condition number.
Gp = G(I + wI I ); kI k1  1 (8.122) 5. Make comparisons with the case where the uncertainty is located at the output.
332 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 333

8.11.1 Interconnection matrix 8.11.3 Robust performance for 2  2 distillation process


On rearranging the system into the N -structure, as shown in Figure 8.14, we get, Consider again the distillation process example from Chapter 3 (Motivating Example
as in (8.32),   No. 2) and the corresponding inverse-based controller:
N = wwISG TI wI KS
wP S (8.123) 1  87:8 86:4 ; K (s) = 0:7 G(s) 1
P G(s) =
75s + 1 108:2 109:6 (8.130)
s
where TI = KG(I + KG) 1 , S = (I + GK ) 1 and for simplicity we have omitted
the negative
 signs
 in the 1,1 and 1,2 blocks of N , since (N ) = (UN ) with unitary The controller provides a nominally decoupled system with
U= 0 I I 0 ; see (8.83).
L = l I; S = I and T = tI (8.131)
For a given controller K we can now test for NS, NP, RS and RP using (8.115)-
(8.118). Here  =  I may be a full or diagonal matrix (depending on the physical where
situation). 0:7 1 s 0 :7 1
l= ; = = ; t=1 = =
s 1 + l s + 0:7 s + 0:7 1:43s + 1
8.11.2 RP with input uncertainty for SISO system We have used  for the nominal sensitivity in each loop to distinguish it from the
Laplace variable s. Recall from Figure 3.12 that this controller gave an excellent
For a SISO system, conditions (8.115)-(8.118) with N as in (8.123) become nominal response, but that the response with 20% gain uncertainty in each input
channel was extremely poor. We will now confirm these findings by a -analysis. To
NS , S , SG, KS and TI are stable (8.124)
this effect we use the following weights for uncertainty and performance:
NP , jwP S j < 1; 8! (8.125)
RS , jwI TI j < 1; 8! (8.126) wI (s) =
s + 0:2
; wP (s) =
s=2 + 0:05
(8.132)
RP , jwP S j + jwI TI j < 1; 8! (8.127) 0:5s + 1 s
With reference to (7.26) we see the weight w I (s) may approximately represent a
20% gain error and a neglected time delay of 0.9 min. jw I (j! )j levels off at 2
The RP-condition (8.127) follows from (8.102); that is
   
(N ) =  wwISGTI wI KS =  wI TI wI TI = jw T j + jw S j (200% uncertainty) at high frequencies. With reference to (2.72) we see that the
wP S wP S wP S I I P (8.128)
performance weight w P (s) specifies integral action, a closed-loop bandwidth of
P
about 0.05 [rad/min] (which is relatively slow in the presence of an allowed time
where we have used T I = KSG. For SISO systems TI = T , and we see that delay of 0.9 min) and a maximum peak for   (S ) of M s = 2.
(8.127) is identical to (7.61), which was derived in Chapter 7 using a simple graphical
argument based on the Nyquist plot of L = GK . We now test for NS, NP, NS and RP. Note that I is a diagonal matrix in this
example.
Robust performance optimization, in terms of weighted sensitivity with multiplica-
tive uncertainty for a SISO system, thus involves minimizing the peak value of NS With G and K as given in (8.130) we find that S , SG, KS and T I are stable, so
(N ) = jwI T j + jwP S j. This may be solved using DK -iteration as outlined later in the system is nominally stable.
Section 8.12. A closely related problem, which is easier to solve both mathematically
and numerically, is to minimize the peak value (H 1 norm) of the mixed sensitivity NP With the decoupling controller we have

matrix   s=2 + 0:05
Nmix = wwPTS  (N22 ) =  (wP S ) =
I
(8.129) s + 0:7
p get that at each frequency (N ) = jw I p
From (A.95) we T j + jwP S j differs from and we see from the dashed-dot line in Figure 8.15 that the NP-condition
 (Nmix ) = jwI T j2 + jwP S j2 by at most a factor 2; recall (7.64). Thus, is easily satisfied: 
 (wP S ) is small at low frequencies (0:05=0:7 = 0:07 at
minimizing kNmixk1 is close to optimizing robust performance in terms of (N ). ! = 0) and approaches 1=2 = 0:5 at high frequencies.
334 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 335
6

RP
4

Table 8.1: MATLAB program for -analysis (generates Figure 8.15)




% Uses the Mu toolbox


2 G0 = [87.8 -86.4; 108.2 -109.6];
dyn = nd2sys(1,[75 1]);
Dyn=daug(dyn,dyn); G=mmult(Dyn,G0);
NP %
RS % Inverse-based control.
0 −3 −2 −1 0 1 2 %
10 10 10 10 10 10 dynk=nd2sys([75 1],[1 1.e-5],0.7);
Frequency Dynk=daug(dynk,dynk); Kinv=mmult(Dynk,minv(G0));
%
Figure 8.15: -plots for distillation process with decoupling controller
% Weights.
%
wp=nd2sys([10 1],[10 1.e-5],0.5); Wp=daug(wp,wp);
wi=nd2sys([1 0.2],[0.5 1]); Wi=daug(wi,wi);
RS Since in this case wI TI = wI T is a scalar times the identity matrix, we have, %

independent of the structure of  I , that


% Generalized plant P.
%
systemnames = ’G Wp Wi’;
5s + 1
I (wI TI ) = jwI tj = 0:2
inputvar = ’[ydel(2); w(2) ; u(2)]’;

(0:5s + 1)(1:43s + 1)
outputvar = ’[Wi; Wp; -G-w]’;
input to G = ’[u+ydel]’;
input to Wp = ’[G+w]’; input to Wi = ’[u]’;
and we see from the dashed line in Figure 8.15 that RS is easily satisfied. sysoutname = ’P’;
The peak value of  I (M ) over frequency is kM k I = 0:53. This means cleanupsysic = ’yes’; sysic;
%
that we may increase the uncertainty by a factor of 1=0:53 = 1:89 before the N = starp(P,Kinv); omega = logspace(-3,3,61);
Nf = frsp(N,omega);
worst-case uncertainty yields instability, that is, we can tolerate about 38% gain %
uncertainty and a time delay of about 1.7 min before we get instability. % mu for RP.
%
RP Although our system has good robustness margins (RS easily satisfied) and blk = [1 1; 1 1; 2 2];
[mubnds,rowd,sens,rowp,rowg] = mu(Nf,blk,’c’);
excellent nominal performance we know from the simulations in Figure 3.12
that the robust performance is poor. This is confirmed by the -curve for RP
muRP = sel(mubnds,’:’,1); pkvnorm(muRP) % (ans = 5.7726).
%
in Figure 8.15 which was computed numerically using   b (N ) with N as in
% Worst-case weighted sensitivity

b = diagfI ; P g and I = diagfÆ1 ; Æ2 g. The peak value is close


%
(8.123),  [delworst,muslow,musup] = wcperf(Nf,blk,1); musup % (musup = 44.93 for
% % delta=1).
to 6, meaning that even with 6 times less uncertainty, the weighted sensitivity % mu for RS.
will be about 6 times larger than what we require. The peak of the actual worst- %
Nrs=sel(Nf,1:2,1:2);
case weighted sensitivity with uncertainty blocks of magnitude 1, which may [mubnds,rowd,sens,rowp,rowg]=mu(Nrs,[1 1; 1 1],’c’);
be computed using skewed-, is for comparison 44.93. muRS = sel(mubnds,’:’,1); pkvnorm(muRS) % (ans = 0.5242).
%

The MATLAB -toolbox commands to generate Figure 8.15 are given in Table 8.1.
% mu for NP (= max. singular value of Nnp).
%
In general,  with unstructured uncertainty ( I full) is larger than  with structured
Nnp=sel(Nf,3:4,3:4);
[mubnds,rowd,sens,rowp,rowg]=mu(Nnp,[2 2],’c’);
uncertainty ( I diagonal). However, for our particular plant and controller in (8.130) muNP = sel(mubnds,’:’,1); pkvnorm(muNP) % (ans = 0.5000).
vplot(’liv,m’,muRP,muRS,muNP);
it appears from numerical calculations and by use of (8.135) below, that they are the
same. Of course, this is not generally true, as is confirmed in the following exercise.

Exercise 8.23 Consider the plant G(s) in (8.107) which is ill-conditioned with (G) =
70:8 at all frequencies (but note that the RGA-elements of G are all about 0:5). With an
336 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 337

inverse-based controller K (s) = 0s:7 G(s) 1 , compute  for RP with both diagonal and full- Example 8.11 For the distillation process studied above, we have (G) = (K ) = 141:7
block input uncertainty using the weights in (8.132). The value of  is much smaller in the at all frequencies, and at frequency w = 1 rad/min the upper bound given by (8.133) becomes
p
former case. (0:52 + 0:41)(1 + 141:7) = 13:1. This is higher than the actual value of (N ) which is
5:56, which illustrates that the bound in (8.133) is generally not tight.

8.11.4 Robust performance and the condition number Inverse-based controller. With an inverse-based controller (resulting in the nominal
decoupled system (8.131)) and unstructured input uncertainty, it is possible to derive
In this subsection we consider the relationship between  for RP and the condition an analytic expression for  for RP with N as in (8.123):
number of the plant or of the controller. We consider unstructured multiplicative
s
input uncertainty (i.e.  I is a full matrix) and performance measured in terms of  
weighted sensitivity. e (N ) = jwP j2 + jwI tj2 + jwP j  jwI tj (G) + (1G) (8.135)
Any controller. Let N be given as in (8.123). Then
RP RS NP where  is the nominal sensitivity and (G) is the condition number of the plant. We
z }| { z }| { z }| { p pwith a large condition number,  for RP increases approximately
see that for plants
e (N )  [ (wI TI ) +  (wP S )](1 + k) (8.133) in proportion to (G).
where k is either the condition number of the plant or the controller (the smallest one
Proof of (8.135): The proof originates from Stein and Doyle (1991). The upper -bound in
should be used):
k = (G) or k = (K ) (8.134)
f g
(8.87) with D = diag dI; I yields
 1  1
(N ) = min  w wI(tIdG) wI tw(dGI) = min t(d)
 w wI(tId) wI w
Proof of (8.133): Since I is a full matrix, (8.87) yields d P P d P P I
 1 
 
= min max  wPw(Id
t wI t(di )
(N ) = min  d N1 11 dN12 d i i) wP 
d N21 N22 p
= min
d
max
i
jwP j2 + jwI tj2 + jwP di j2 + jwI t(di) 1 j2
where from (A.46)
  We have here used the SVD of G = U V H at each frequency, and have used the fact that  
 d w I TI dwI KS   (wI TI I dG 1 ) +  (wP S d 1 G I )
   
1 wP SG wP S is unitary invariant. i denotes the i’th singular value of G. The expression is minimized by
j j j
selecting at each frequency d = wI t =( wP   j
 (G)(G)), see (8.99), and hence the desired
  (wI TI ) | (I {zdG 1}) +(wP S ) | (d 1{zG I }) result. For more details see Zhou et al. (1996) pp. 293-295. 2
1+jdj (G 1 ) 1+jd 1 j (G)
q p
Example 8.12 For the distillation column example studied above, we have at frequency
 (G) ! = 1 rad/min, jwP j = 0:41 and
and selecting d =  (G 1 ) = (G) gives
frequencies, (8.135) yields
p jwI tj = 0:52, and since (G) = 141:7 at all
(N ) = 0:17 + 0:27 + 30:51 = 5:56 which agrees with the
p
(N )  [ (wI TI ) +  (wP S )] (1 + (G)) plot in Figure 8.15.

A similar derivation may be performed using SG = K 1 TI to derive the same expression


but with (K ) instead of (G). 2 Worst-case performance (any controller)

From (8.133) we see that with a “round” controller, i.e. one with (K ) = 1, there We next derive relationships between worst-case performance and the condition
is less sensitivity to uncertainty (but it may be difficult to achieve NP in this case).  (S 0 ). We then
number. Suppose that at each frequency the worst-case sensitivity is 
On the other hand, we would expect  for RP to be large if we used an inverse-based have that the worst-case weighted sensitivity is equal to skewed-:
controller for a plant with a large condition number, since then (K ) = (G) is
max  (wP Sp ) =  (wP S 0 ) = s (N )
large. This is confirmed by (8.135) below. Sp
338 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 339

Now, recall that in Section 6.10.4 we derived a number of upper bounds on  (S 0 ), This follows since the uncertainty and performance blocks both enter at the output
and referring back to (6.72) we find (see Section 8.6.2) and from (A.45) the difference between bounding the combined
 (S ) perturbations, 
p[  O P ] and individual perturbations,  ( O ) and  (P ), is at
 (S 0 )  (G) (8.136) most a factor of 2. Thus, in this case we “automatically” achieve RP (at least within
p
1  (wI TI ) 2) if we have satisfied separately the subobjectives of NP and RS. This confirms
A similar bound involving (K ) applies. We then have our findings from Section 6.10.4 that multiplicative output uncertainty poses no
particular problem for performance. It also implies that for practical purposes we
 (wP S )
s (N ) =  (wP S 0 )  k (8.137) may optimize robust performance with output uncertainty by minimizing the H 1
1  (wI TI ) 
norm of the stacked matrix w OT .
wP S
where k as before denotes either the condition number of the plant or the controller
(preferably the smallest). Equation (8.137) holds for any controller and for any
structure of the uncertainty (including  I unstructured). Exercise 8.24 Consider the RP-problem with weighted sensitivity and multiplicative output
uncertainty. Derive the interconnection matrix N for, 1) the conventional case with 
b =
Remark 1 In Section 6.10.4 we derived tighter upper bounds for cases when I is restricted f g
diag ; P , and 2) the stacked case when  b = [  P ]. Use this to prove (8.139).
to be diagonal and when we have a decoupling controller. In (6.78) we also derived a lower
bound in terms of the RGA.
Remark 2 Since s =  when  = 1, we may, from (8.133), (8.137) and expressions similar
to (6.76) and (6.77), derive the following sufficient (conservative) tests for RP ((N ) < 1)
with unstructured input uncertainty (any controller):
p 8.12 -synthesis and DK -iteration
RP ( [(wP S ) +  (wI TI )](1 + k) < 1; 8 !
RP ( k (wP S ) +  (wI TI ) < 1; 8 ! The structured singular value  is a very powerful tool for the analysis of robust
RP (  (wP S ) + k (wI T ) < 1; 8 ! performance with a given controller. However, one may also seek to find the
where k denotes the condition number of the plant or the controller (the smallest being the
controller that minimizes a given -condition: this is the -synthesis problem.
most useful).

Example 8.13 For the distillation process the upper bound given by (8.137) at ! = 1 8.12.1 DK -iteration
rad/min is141:7  0:41=(1 0:52) = 121. This is higher than the actual peak value of
s = maxSp  (wP Sp ) which as found earlier is 44:9 (at frequency 1:2 rad/min), and At present there is no direct method to synthesize a -optimal controller. However,
demonstrates that these bounds are not generally tight. for complex perturbations a method known as DK -iteration is available. It combines
H1 -synthesis and -analysis, and often yields good results. The starting point is the
upper bound (8.87) on  in terms of the scaled singular value
8.11.5 Comparison with output uncertainty
(N )  Dmin
2D
 (DND 1 )
Consider output multiplicative uncertainty of magnitude w O (j! ). In this case we get
the interconnection matrix
  The idea is to find the controller that minimizes the peak value over frequency of this
N= w O T wO T (8.138) upper bound, namely
wP S wP S min(min kDN (K )D 1 k1 ) (8.140)
K D2D
and for any structure of the uncertainty (N ) is bounded as follows:
by alternating between minimizing kDN (K )D 1 k1 with respect to either K or D
RS
 z RP z }| { (while holding the other fixed). To start the iterations, one selects an initial stable
 }| { p
 w OT
wP S  (N )  2  wP S
wO T (8.139) rational transfer matrix D(s) with appropriate structure. The identity matrix is often
a good initial choice for D provided the system has been reasonably scaled for
| {z }
NP performance. The DK -iteration then proceeds as follows:
340 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 341

1. K-step. Synthesize an H 1 controller for the scaled problem, 8.12.2 Adjusting the performance weight
minK kDN (K )D 1 k1 with fixed D(s).
2. D-step. Find D(j! ) to minimize at each frequency   (DND 1 (j!)) with fixed Recall that if  at a given frequency is different from 1, then the interpretation is
N. that at this frequency we can tolerate 1=-times more uncertainty and still satisfy our
3. Fit the magnitude of each element of D(j! ) to a stable and minimum phase performance objective with a margin of 1=. In -synthesis, the designer will usually
transfer function D(s) and go to Step 1. adjust some parameter(s) in the performance or uncertainty weights until the peak -
value is close to 1. Sometimes the uncertainty is fixed, and we effectively optimize
worst-case performance by adjusting a parameter in the performance weight. For
The iteration may continue until satisfactory performance is achieved, kDND 1 k1 < example, consider the performance weight
1, or until the H1 norm no longer decreases. One fundamental problem with this s=M + !B
wP (s) =
s + !B A
approach is that although each of the minimization steps (K-step and D-step) are (8.141)
convex, joint convexity is not guaranteed. Therefore, the iterations may converge to
a local optimum. However, practical experience suggests that the method works well where we want to keep M constant and find the highest achievable bandwidth
in most cases.  . The optimization problem becomes
frequency ! B

The order of the controller resulting from each iteration is equal to the number max j!B j such that (N ) < 1; 8! (8.142)
of states in the plant G(s) plus the number of states in the weights plus twice  . This may
where N , the interconnection matrix for the RP-problem, depends on ! B
the number of states in D(s). For most cases, the true -optimal controller is not
be implemented as an outer loop around the DK -iteration.
rational, and will thus be of infinite order, but because we use a finite-order D(s) to
approximate the D-scales, we get a controller of finite (but often high) order. The true
-optimal controller would have a flat -curve (as a function of frequency), except 8.12.3 Fixed structure controller
at infinite frequency where  generally has to approach a fixed value independent of
the controller (because L(j 1) = 0 for real systems). However, with a finite-order Sometimes it is desirable to find a low-order controller with a given structure. This
controller we will generally not be able (and it may not be desirable) to extend the may be achieved by numerical optimization where  is minimized with respect to
flatness to infinite frequencies. the controller parameters The problem here is that the optimization is not generally
convex in the parameters. Sometimes it helps to switch the optimization between
The DK-iteration depends heavily on optimal solutions for Steps 1 and 2, and also minimizing the peak of  (i.e. kk 1 ) and minimizing the integral square deviation
on good fits in Step 3, preferably by a transfer function of low order. One reason of  away from k (i.e. k(j! ) k k 2 ) where k usually is close to 1. The latter is an
for preferring a low-order fit is that this reduces the order of the H 1 problem, attempt to “flatten out” .
which usually improves the numerical properties of the H 1 optimization (Step 1)
and also yields a controller of lower order. In some cases the iterations converge
slowly, and it may be difficult to judge whether the iterations are converging or not. 8.12.4 Example: -synthesis with DK -iteration
One may even experience the -value increasing. This may be caused by numerical
problems or inaccuracies (e.g. the upper bound -value in Step 2 being higher than We will consider again the case of multiplicative input uncertainty and performance
the H1 norm obtained in Step 1), or by a poor fit of the D-scales. In any case, if the defined in terms of weighted sensitivity, as discussed in detail in Section 8.11.
iterations converge slowly, then one may consider going back to the initial problem We noted there that this set-up is fine for analysis, but less suitable for controller
and rescaling the inputs and outputs. synthesis, as it does not explicitly penalize the outputs from the controller.
Nevertheless we will use it here as an example of -synthesis because of its
In the K -step (Step 1) where the H 1 controller is synthesized, it is often desirable to simplicity. The resulting controller will have very large gains at high frequencies and
use a slightly sub-optimal controller (e.g. with an H 1 norm, , which is 5% higher should not be used directly for implementation. In practice, one can add extra roll-
than the optimal value, min ). This yields a blend of H 1 and H2 optimality with a off to the controller (which should work well because the system should be robust
controller which usually has a steeper high-frequency roll-off than the H 1 optimal with respect to uncertain high-frequency dynamics), or one may consider a more
controller. complicated problem set-up (see Section 12.4).
342 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 343

With this caution in mind, we proceed with the problem description. Again, we use
the model of the simplified distillation process
1  87:8 86:4 
G(s) =
75s + 1 108:2 109:6 (8.143)
Table 8.2: MATLAB program to perform DK -iteration
% Uses the Mu toolbox
The uncertainty weight w I I and performance weight w P I are given in (8.132), and G0 = [87.8 -86.4; 108.2 -109.6]; % Distillation
dyn = nd2sys(1,[75 1]); Dyn = daug(dyn,dyn); % process.
are shown graphically in Figure 8.16. The objective is to minimize the peak value
e = diagfI ; P g. We will consider
G = mmult(Dyn,G0);
of e (N ), where N is given in (8.123) and  %
diagonal input uncertainty (which is always present in any real problem), so  I is
% Weights.

a 2  2 diagonal matrix.  P is a full 2  2 matrix representing the performance


%
wp = nd2sys([10 1],[10 1.e-5],0.5); % Approximated
specification. Note that we have only three complex uncertainty blocks, so (N ) is
wi = nd2sys([1 0.2],[0.5 1]); % integrator.

 (DND 1 ) in this case.


Wp = daug(wp,wp); Wi = daug(wi,wi);
equal to the upper bound min D  %
% Generalized plant P. %
We will now use DK -iteration in attempt to obtain the -optimal controller for systemnames = ’G Wp Wi’;
this example. The appropriate commands for the MATLAB -toolbox are listed in
inputvar = ’[ydel(2); w(2) ; u(2)]’;
outputvar = ’[Wi; Wp; -G-w]’;
Table 8.2. input to G = ’[u+ydel]’;
input to Wp = ’[G+w]’; input to Wi = ’[u]’;
sysoutname = ’P’; cleanupsysic = ’yes’;
2
10 sysic;
%
% Initialize.
%
1 omega = logspace(-3,3,61);
10
Magnitude

blk = [1 1; 1 1; 2 2];
nmeas=2; nu=2; gmin=0.9; gamma=2; tol=0.01; d0 = 1;
wP wI dsysl = daug(d0,d0,eye(2),eye(2)); dsysr=dsysl;
%
0
10 % START ITERATION.
%
% STEP 1: Find H-infinity optimal controller
% with given scalings:
−1 %
10 −3 −2 −1 0 1 2 DPD = mmult(dsysl,P,minv(dsysr)); gmax=1.05*gamma;
10 10 10 10 10 10 [K,Nsc,gamma] = hinfsyn(DPD,nmeas,nu,gmin,gmax,tol);
Frequency Nf=frsp(Nsc,omega); % (Remark:
% % Without scaling:
Figure 8.16: Uncertainty and performance weights. Notice that there is a frequency range % % N=starp(P,K);).
% STEP 2: Compute mu using upper bound:
(“window”) where both weights are less than one in magnitude. %
[mubnds,rowd,sens,rowp,rowg] = mu(Nf,blk,’c’);

First the generalized plant P as given in (8.29) is constructed. It includes the plant
vplot(’liv,m’,mubnds); murp=pkvnorm(mubnds,inf)
%
model, the uncertainty weight and the performance weight, but not the controller % STEP 3: Fit resulting D-scales:

which is to be designed (note that N = F l (P; K )). Then the block-structure is


%
[dsysl,dsysr]=musynflp(dsysl,rowd,sens,blk,nmeas,nu); % choose 4th order.
defined; it consists of two 1  1 blocks to represent  I and a 2  2 block to %

represent P . The scaling matrix D for DND 1 then has the structure D =
% New Version:

diagfd1 ; d2 ; d3 I2 g where I2 is a 2  2 identity matrix, and we may set d 3 = 1. As


% [dsysL,dsysR]=msf(Nf,mubnds,rowd,sens,blk); % order: 4, 4, 0.
% dsysl=daug(dsysL,eye(2)); dsysr=daug(dsysR,eye(2));

initial scalings we select d01 = d02 = 1. P is then scaled with the matrix diagfD; I 2 g
%
% GOTO STEP 1 (unless satisfied with murp).
where I2 is associated with the inputs and outputs from the controller (we do not %

want to scale the controller).


Iteration No. 1. Step 1: With the initial scalings, D 0 = I , the H1 software produced
a 6 state controller (2 states from the plant model and 2 from each of the weights)
344 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 345

with an H1 norm of = 1:1823. Step 2: The upper -bound gave the -curve
shown as curve “Iter. 1” in Figure 8.17, corresponding to a peak value of =1.1818. 4th order fit
Step 3: The frequency-dependent d 1 (! ) and d2 (! ) from Step 2 were each fitted using
a 4th order transfer function. d 1 (w) and the fitted 4th-order transfer function (dotted
0 Initial
10

Magnitude
line) are shown in Figure 8.18 and labelled “Iter. 1”. The fit is very good so it is hard
to distinguish the two curves. d 2 is not shown because it was found that d 1  d2
(indicating that the worst-case full-block  I is in fact diagonal). 10
−1
Iter. 1

Iteration No. 2. Step 1: With the 8 state scaling D 1 (s) the H1 software gave a 22
state controller and kD 1 N (D1 ) 1 k1 = 1:0238. Step 2: This controller gave a peak
Optimal Iter. 2

value of  of 1.0238. Step 3: The resulting scalings D 2 were only slightly changed
−2
10

from the previous iteration as can be seen from d 21 (! ) labelled “Iter. 2” in Figure 8.18.
−3 −2 −1 0 1 2 3
10 10 10 10 10 10 10
Frequency [rad/min]
Iteration No. 3. Step 1: With the scalings D 2 (s) the H1 norm was only slightly
Figure 8.18: Change in D-scale d1 during DK -iteration
reduced from 1.024 to 1.019. Since the improvement was very small and since the
value was very close to the desired value of 1, it was decided to stop the iterations.
The resulting controller with 22 states (denoted K 3 in the following) gives a peak RP

-value of 1.019. 1
NP
0.8


Iter. 1 0.6

Iter. 2 0.4
1 Iter. 3
Optimal RS
0.2


0.8 0 −3 −2 −1 0 1 2 3
10 10 10 10 10 10 10
Frequency [rad/min]
0.6
Figure 8.19: -plots with -“optimal” controller K3
−3 −2 −1 0 1 2 3
10 10 10 10 10 10 10
Frequency [rad/min]
where EIi = I + wI I is a diagonal transfer function matrix representing input
Figure 8.17: Change in  during DK -iteration uncertainty (with nominal E I 0 = I ). Recall that the uncertainty weight is
s + 0:2
wI (s) =
0:5s + 1
Analysis of -“optimal” controller K 3 which is 0.2 in magnitude at low frequencies. Thus, the following input gain
perturbations are allowable
The final -curves for NP, RS and RP with controller K 3 are shown in Figure 8.19.        
The objectives of RS and NP are easily satisfied. Furthermore, the peak -value of EI 1 = 10:2 10:2 ; EI 2 = 00:8 10:2 ; EI 3 = 10:2 00:8 ; EI 4 = 00:8 00:8
1.019 with controller K 3 is only slightly above 1, so the performance specification
 (wP Sp ) < 1 is almost satisfied for all possible plants. To confirm this we These perturbations do not make use of the fact that w I (s) increases with frequency.
considered the nominal plant and six perturbed plants Two allowed dynamic perturbations for the diagonal elements in w I I are
s + 0:2 s + 0:2
G0i (s) = G(s)EIi (s) 1 (s) =
0:5s + 1
; 2 (s) =
0:5s + 1
346 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 347

gains 1.2 and 0.8, such as G 02 , G03 or G06 . Overall, the worst-case of these six plants
1 seems to be G06 = GEI 6 , which has   (S 0 ) close to the bound at low frequencies,
wP and has a peak of about 2.02 (above the allowed bound of 2) at 1.6 rad/min.
10
0 To find the “true” worst-case performance and plant we used the MATLAB -tools
command wcperf as explained in Section 8.10.3 on page 330. This gives a worst-
case performance of max Sp kwP Sp k1 = 1:037, and the sensitivity function for the


corresponding worst-case plant G 0wc (s) = G(s)(I + wI (s)wc (s)) found with the
 (S 0 )
software is shown by the upper solid line in Figure 8.20. It has a peak value of 
of about 2.05 at 0.79 rad/min.
−1
10 −2 −1 0 1
10 10 10 10
Remark. The “worst-case” plant is not unique, and there are many plants which yield a worst-
Frequency [rad/min]
k k
case performance of maxSp wP Sp 1 = 1:037. For example, it is likely that we could find
Figure 8.20: Perturbed sensitivity functions   (S0 ) using -“optimal” controller K3 . Dotted plants which were more consistently “worse” at all frequencies than the one shown by the
lines: Plants G0i ; i = 1; 6. Lower solid line: Nominal plant G. Upper solid line: Worst-case upper solid line in Figure 8.20.
plant G0wc .
The time response of y 1 and y2 to a filtered setpoint change in y 1 , r1 = 1=(5s + 1),
1
y1 is shown in Figure 8.21 both for the nominal case (solid line) and for 20% input
0.8 gain uncertainty (dashed line) using the plant G 03 = GF3 (which we know is one of
the worst plants). The response is interactive, but shows no strong sensitivity to the
0.6
uncertainty. The response with uncertainty is seen to be much better than that with
0.4 the inverse-based controller studied earlier and shown in Figure 3.12.
0.2
y2 Remarks on the -synthesis example.
0
0 10 20 30 40 50 60 70 80 90 100 1. By trial and error, and many long nights, Petter Lundström was able to reduce the peak
Time [min] -value for robust performance for this problem down to about opt = 0:974 (Lundström,
1994). The resulting design produces the curves labelled optimal in Figures 8.17 and 8.18.
Figure 8.21: Setpoint response for -“optimal” controller K3 . Solid line: nominal plant.
H
The corresponding controller, Kopt , may be synthesized using 1 -synthesis with the
Dashed line: uncertain plant G03
following third-order D-scales

corresponding to elements in E Ii of d1 (s) = d2 (s) = 2 (0:001s + 1)( s + 0:25)(s + 0:054) ; d = 1


3
((s + 0:67)2 + 0:562 )(s + 0:013)
(8.144)

0:417s + 1 0:633s + 1 2. Note that the optimal controller Kopt for this problem has a SVD-form. That is, let
f1 (s) = 1 + 1 (s) = 1:2 ; f2 (s) = 1 + 2 (s) = 0:8
0:5s + 1 0:5s + 1 G = U V H , then Kopt = V Ks U H where Ks is a diagonal matrix. This arises because
so let us also consider in this example U and V are constant matrices. For more details see Hovd (1992) and Hovd
    et al. (1994).
EI 5 = f10(s) f10(s) ; EI 6 = f20(s) f10(s) 3. For this particular plant it appears that the worst-case full-block input uncertainty is a
diagonal perturbation, so we might as well have used a full matrix for I . But this does

 (S i0 ), is shown in Figure 8.20 for


not hold in general.
The maximum singular value of the sensitivity,  H
4. The 1 software may encounter numerical problems if P (s) has poles on the j! -axis.
the nominal and six perturbed plants, and is seen to be almost below the bound This is the reason why in the MATLAB code we have moved the integrators (in the
1=jwI (j!)j for all seven cases (i = 0; 6) illustrating that RP is almost satisfied. The performance weights) slightly into the left-half plane.
sensitivity for the nominal plant is shown by the lower solid line, and the others with H
5. The initial choice of scaling D = I gave a good design for this plant with an 1 norm
dotted lines. At low frequencies the worst-case corresponds closely to a plant with of about 1.18. This scaling worked well because the inputs and outputs had been scaled
348 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 349

to be of unit magnitude. For a comparison, consider the original model in Skogestad et al. model. Another advantage of constant D-scales is that the computation of  is then
(1988) which was in terms of unscaled physical variables. straightforward and may be solved using LMIs, see (8.151) below.

Gunscaled (s) = 1 0:878 0:864 
75s + 1 1:082 1:096 (8.145)
8.13.2 Real perturbations and the mixed  problem
(8.145) has all its elements 100 times smaller than in the scaled model (8.143). Therefore,
using this model should give the same optimal -value but with controller gains 100 times
larger. However, starting the DK -iteration with D = I works very poorly in this case. The We have not discussed in any detail the analysis and design problems which arise
H
first iteration yields an 1 norm of 14.9 (Step 1) resulting in a peak -value of 5.2 (Step with real or, more importantly, mixed real and complex perturbations.
2). Subsequent iterations yield with 3rd and 4th order fits of the D-scales the following The current algorithms, implemented in the MATLAB -toolbox, employ a
peak -values: 2.92, 2.22, 1.87, 1.67, 1.58, 1.53, 1.49, 1.46, 1.44, 1.42. At this point (after
11 iterations) the -plot is fairly flat up to 10 [rad/min] and one may be tempted to stop
generalization of the upper bound   (DMD 1 ), where in addition to D-matrices,
the iterations. However, we are still far away from the optimal value which we know is
which exploit the block-diagonal structure of the perturbations, there are G-matrices,
less than 1. This demonstrates the importance of good initial D-scales, which is related to which exploit the structure of the real perturbations. The G-matrices (which should
scaling the plant model properly. not be confused with the plant transfer function G(s)) have real diagonal elements at
locations where  is real and have zeros elsewhere. The algorithm in the -toolbox
Exercise 8.25 Explain why the optimal -value would be the same if in the model (8.143) makes use of the following result from Young et al. (1992): if there exists a > 0, a
we changed the time constant of 75 [min] to another value. Note that the -iteration itself D and a G with the appropriate block-diagonal structure such that
would be affected.  
1 1 1
 (I + G2 ) 4 ( DMD 1 jG)(I + G2 ) 4 1 (8.146)

then (M )  . For more details, the reader is referred to Young (1993).
8.13 Further remarks on 
There is also a corresponding DGK -iteration procedure for synthesis (Young, 1994).
The practical implementation of this algorithm is however difficult, and a very high
8.13.1 Further justification for the upper bound on  order fit may be required for the G-scales. An alternative approach which involves
solving a series of scaled DK -iterations is given by Tøffner-Clausen et al. (1995).
For complex perturbations, the scaled singular value   (DND 1 ) is a tight upper
bound on (N ) in most cases, and minimizing the upper bound kDND 1 k1 forms
the basis for the DK-iteration. However, kDND 1 k1 is also of interest in its own
right. The reason for this, is that when all uncertainty blocks are full and complex, 8.13.3 Computational complexity
the upper bound provides a necessary and sufficient condition for robustness to
arbitrary-slow time-varying linear uncertainty (Poolla and Tikku, 1995). On the It has been established that the computational complexity of computing  has a
other hand, the use of  assumes the uncertain perturbations to be time-invariant. combinatoric (non-polynomial, “NP-hard”) growth with the number of parameters
In some cases, it can be argued that slowly time-varying uncertainty is more useful involved even for purely complex perturbations (Toker and Ozbay, 1995).
than constant perturbations, and therefore that it is better to minimize kDND 1 k1 This does not mean, however, that practical algorithms are not possible, and we
instead of (N ). In addition, by considering how D(! ) varies with frequency, one have described practical algorithms for computing upper bounds of  for cases with
can find bounds on the allowed time variations in the perturbations. complex, real or mixed real/complex perturbations.
Another interesting fact is that the use of constant D-scales (D is not allowed to
As mentioned, the upper bound   (DMD 1 ) for complex perturbations is generally
vary with frequency), provides a necessary and sufficient condition for robustness
tight, whereas the present upper bounds for mixed perturbations (see (8.146)) may
to arbitrary-fast time-varying linear uncertainty (Shamma, 1994). It may be argued
be arbitrarily conservative.
that such perturbations are unlikely in a practical situation. Nevertheless, we see
that if we can get an acceptable controller design using constant D-scales, then we There also exists a number of lower bounds for computing . Most of these involve
know that this controller will work very well even for rapid changes in the plant generating a perturbation which makes I M  singular.
350 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 351

8.13.4 Discrete case 8.13.5 Relationship to linear matrix inequalities (LMIs)


It is also possible to use  for analyzing robust performance of discrete-time systems An example of an LMI problem is the following. For given matrices P; Q; R and S ,
(Packard and Doyle, 1993). Consider a discrete time system does there exist an X = X H (where X may have a block-diagonal structure) such
that
xk+1 = Axk + Buk ; yk = Cxk + Duk P H XP QH XQ + XR + RH X + S < 0 ? (8.149)
The corresponding discrete transfer function matrix from u to y is N (z ) = C (zI Depending on the particular problem, the < may be replaced by . These inequality
A) 1 B + D. First, note that the H1 norm of a discrete transfer function is conditions produce a set of solutions which are convex, which make LMIs attractive
computationally. Sometimes, the matrices P; Q; R and S are functions of a real
kN k1 , jmax  (C (zI A) 1 B + D) parameter , and we want to know, for example, what is the largest for which
zj1
there is no solution.
This follows since evaluation on the j! -axis in the continuous case is equivalent to
The upper bound for  can be rewritten as an LMI:
the unit circle (jz j = 1) in the discrete case. Second, note that N (z ) may be written
as an LFT in terms of 1=z ,  (DMD 1 ) < , (D 1 M H DDMD 1 ) < 2 (8.150)

N (z ) = C (zI
1 A B
A) 1 B + D = Fu (H; I ); H = C
 
(8.147)
, D M DDMD 1 2 I < 0 , M H D2 M 2 D2 < 0 (8.151)
1 H
z D
which is an LMI in X = D 2 > 0. To compute the upper bound for  based on this
Thus, by introducing Æ z = 1=z and z = Æz I we have from the main loop theorem LMI we need to iterate on . It has been shown that a number of other problems,
of Packard and Doyle (1993) (which generalizes Theorem 8.7) that kN k 1 < 1 (NP) including H2 and H1 optimal control problems, can be reduced to solving LMIs.
if and only if The reader is referred to Boyd et al. (1994) for more details.
b = diagfz ; P g
b (H ) < 1;  (8.148)
where z is a matrix of repeated complex scalars, representing the discrete
“frequencies”, and  P is a full complex matrix, representing the singular value 8.14 Conclusion
performance specification. Thus, we see that the search over frequencies in the
frequency domain is avoided, but at the expense of a complicated -calculation. The
condition in (8.148) is also referred to as the state-space  test. In this chapter and the last we have discussed how to represent uncertainty and how
to analyze its effect on stability (RS) and performance (RP) using the structured
Condition (8.148) only considers nominal performance (NP). However, note that in
singular value  as our main tool.
this case nominal stability (NS) follows as a special case (and thus does not need
b (H )  1 (NP) we have from (8.78) that
to be tested separately), since when   To analyze robust stability (RS) of an uncertain system we make use of the M -
z (A) = (A) < 1, which is the well-known stability condition for discrete structure (Figure 8.3) where M represents the transfer function for the “new”
systems. feedback part generated by the uncertainty. From the small gain theorem,
We can also generalize the treatment to consider RS and RP. In particular, since
the state-space matrices are contained explicitly in H in (8.147), it follows that the
RS (  (M ) < 1 8! (8.152)
discrete time formulation is convenient if we want to consider parametric uncertainty which is tight (necessary and sufficient) for the special case where at each frequency
in the state-space matrices. This is discussed by Packard and Doyle (1993). However, any complex  satisfying   ()  1 is allowed. More generally, the tight condition
this results in real perturbations, and the resulting -problem which involves repeated is
complex perturbations (from the evaluation of z on the unit circle), a full-block RS , (M ) < 1 8! (8.153)
complex perturbation (from the performance specification), and real perturbations
(from the uncertainty), is difficult to solve numerically both for analysis and in where (M ) is the structured singular value (M ). The calculation of  makes use
particular for synthesis. For this reason the discrete-time formulation is little used of the fact that  has a given block-diagonal structure, where certain blocks may
in practical applications. also be real (e.g. to handle parametric uncertainty).
352 MULTIVARIABLE FEEDBACK CONTROL ROBUST STABILITY AND PERFORMANCE 353

We defined robust performance (RP) as kF l (N; )k1 < 1 for all allowed ’s. Since 3. There is always uncertainty with respect to the inputs and outputs, so it is
we used the H1 norm in both the representation of uncertainty and the definition of generally “safe” to include diagonal input and output uncertainty. The relative
performance, we found that RP could be viewed as a special case of RS, and we (multiplicative) form is very convenient in this case.
derived 4.  is most commonly used for analysis. If  is used for synthesis, then we
RP , (N ) < 1 8! (8.154) recommend that you keep the uncertainty fixed and adjust the parameters in the
where  is computed with respect to the block-diagonal structure diagf;  P g. performance weight until  is close to 1.
Here  represents the uncertainty and  P is a fictitious full uncertainty block
representing the H 1 performance bound.
It should be noted that there are two main approaches to getting a robust design:
1. We aim to make the system robust to some “general” class of uncertainty which
we do not explicitly model. For SISO systems the classical gain and phase margins
and the peaks of S and T provide useful general robustness measures. For MIMO
systems, normalized coprime factor uncertainty provides a good general class
of uncertainty, and the associated Glover-McFarlane H 1 loop-shaping design
procedure, see Chapter 10, has proved itself very useful in applications.
2. We explicitly model and quantify the uncertainty in the plant and aim to make
the system robust to this specific uncertainty. This second approach has been the
focus of the preceding two chapters. Potentially, it yields better designs, but it
may require a much larger effort in terms of uncertainty modelling, especially if
parametric uncertainty is considered. Analysis and, in particular, synthesis using
 can be very involved.
In applications, it is therefore recommended to start with the first approach, at least
for design. The robust stability and performance is then analyzed in simulations and
using the structured singular value, for example, by considering first simple sources
of uncertainty such as multiplicative input uncertainty. One then iterates between
design and analysis until a satisfactory solution is obtained.

Practical -analysis

We end the chapter by providing a few recommendations on how to use the structured
singular value  in practice.
1. Because of the effort involved in deriving detailed uncertainty descriptions, and
the subsequent complexity in synthesizing controllers, the rule is to “start simple”
with a crude uncertainty description, and then to see whether the performance
specifications can be met. Only if they can’t, should one consider more detailed
uncertainty descriptions such as parametric uncertainty (with real perturbations).
2. The use of  implies a worst-case analysis, so one should be careful about
including too many sources of uncertainty, noise and disturbances – otherwise
it becomes very unlikely for the worst case to occur, and the resulting analysis
and design may be unnecessarily conservative.
354 MULTIVARIABLE FEEDBACK CONTROL

CONTROLLER DESIGN
In this chapter, we present practical procedures for multivariable controller design which are
relatively straightforward to apply and which, in our opinion, have an important role to play
in industrial control.
For industrial systems which are either SISO or loosely coupled, the classical loop-shaping
approach to control system design as described in Section 2.6 has been successfully applied.
But for truly multivariable systems it has only been in the last decade, or so, that reliable
generalizations of this classical approach have emerged.

9.1 Trade-offs in MIMO feedback design


The shaping of multivariable transfer functions is based on the idea that a satisfactory
definition of gain (range of gain) for a matrix transfer function is given by the
singular values of the transfer function. By multivariable transfer function shaping,
therefore, we mean the shaping of singular values of appropriately specified transfer
functions such as the loop transfer function or possibly one or more closed-loop
transfer functions. This methodology for controller design is central to the practical
procedures described in this chapter.
In February 1981, the IEEE Transactions on Automatic Control published a Special
Issue on Linear Multivariable Control Systems, the first six papers of which were
on the use of singular values in the analysis and design of multivariable feedback
systems. The paper by Doyle and Stein (1981) was particularly influential: it was
primarily concerned with the fundamental question of how to achieve the benefits of
feedback in the presence of unstructured uncertainty, and through the use of singular
values it showed how the classical loop-shaping ideas of feedback design could be
generalized to multivariable systems. To see how this was done, consider the one
degree-of-freedom configuration shown in Figure 9.1. The plant G and controller
K interconnection is driven by reference commands r, output disturbances d, and
measurement noise n. y are the outputs to be controlled, and u are the control
356 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 357

signals. In terms of the sensitivity function S = (I + GK ) 1 and the closed-loop typically a low frequency requirement, while noise mitigation is often only relevant
transfer function T = GK (I + GK ) 1 = I S , we have the following important at higher frequencies.
relationships: In classical loop shaping, it is the magnitude of the open-loop transfer function
d L = GK which is shaped, whereas the above design requirements are all in terms of
closed-loop transfer functions. However, recall from (3.51) that

r -+ e - K u - G e+
-+ ? q -y  (L) 1 
1
 (L) + 1 (9.3)
6-  (S )
from which we see that   (S )  1=(L) at frequencies where (L) is much larger
e+ p
than 1. It also follows that at the bandwidth frequency (where 1= (S (j! B )) =
2 = 1:41) we have (L(j!B )) between 0.41 and 2.41. Furthermore, from T =
+ 6 L(I + L) 1 it follows that  (T )   (L) at frequencies where  (L) is small. Thus,
n over specified frequency ranges, it is relatively easy to approximate the closed-loop
requirements by the following open-loop objectives:

Figure 9.1: One degree-of-freedom feedback configuration 1. For disturbance rejection make  (GK ) large; valid for frequencies at which
(GK )  1.
2. For noise attenuation make   (GK ) small; valid for frequencies at which
 (GK )  1.
y(s) = T (s)r(s) + S (s)d(s) T (s)n(s) (9.1) 3. For reference tracking make  (GK ) large; valid for frequencies at which
u(s) = K (s)S (s) [r(s) n(s) d(s)] (9.2) (GK )  1.
4. For control energy reduction make   (K ) small; valid for frequencies at which
These relationships determine several closed-loop objectives, in addition to the  (GK )  1.
requirement that K stabilizes G, namely: 5. For robust stability to an additive perturbation make   (K ) small; valid for
frequencies at which  (GK )  1.
For disturbance rejection make  (S ) small. 6. For robust stability to a multiplicative output perturbation make   (GK ) small;
1.
For noise attenuation make  (T ) small.
2.
 (GK )  1.
valid for frequencies at which 
3. For reference tracking make  (T )  (T )  1.
4. For control energy reduction make   (KS ) small. Typically, the open-loop requirements 1 and 3 are valid and important at low
frequencies, 0  !  ! l  !B , while 2, 4, 5 and 6 are conditions which are valid
If the unstructured uncertainty in the plant model G is represented by an additive
and important at high frequencies, ! B  !h  !  1, as illustrated in Figure 9.2.
perturbation, i.e. G p = G + , then a further closed-loop objective is
From this we see that at frequencies where we want high gains (at low frequencies)
5. For robust stability in the presence of an additive perturbation make 
 (KS ) small. the “worst-case” direction is related to  (GK ), whereas at frequencies where we
want low gains (at high frequencies) the “worst-case” direction is related to 
(GK ).
Alternatively, if the uncertainty is modelled by a multiplicative output perturbation
such that Gp = (I + )G, then we have: Exercise 9.1 Show that the closed-loop objectives 1 to 6 can be approximated by the open-
loop objectives 1 to 6 at the specified frequency ranges.
6. For robust stability in the presence of a multiplicative output perturbation make
 (T ) small.
From Figure 9.2, it follows that the control engineer must design K so that 
 (GK )
The closed-loop requirements 1 to 6 cannot all be satisfied simultaneously. Feedback and  (GK ) avoid the shaded regions. That is, for good performance,  (GK ) must
design is therefore a trade-off over frequency of conflicting objectives. This is be made to lie above a performance boundary for all ! up to ! l , and for robust
not always as difficult as it sounds because the frequency ranges over which the stability 
 (GK ) must be forced below a robustness boundary for all ! above ! h .
objectives are important can be quite different. For example, disturbance rejection is To shape the singular values of GK by selecting K is a relatively easy task, but to
358 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 359

log magnitude 9.2 LQG control


 (GK )
Optimal control, building on the optimal filtering work of Wiener in the 1940’s,
wh log(w ) reached maturity in the 1960’s with what we now call linear quadratic gaussian
wl Robust stability, noise attenuation, or LQG Control. Its development coincided with large research programs and
Performance
control energy reduction boundary considerable funding in the United States and the former Soviet Union on
boundary space related problems. These were problems, such as rocket manoeuvering with
 (GK ) minimum fuel consumption, which could be well defined and easily formulated as
optimizations. Aerospace engineers were particularly successful at applying LQG,
but when other control engineers attempted to use LQG on everyday industrial
problems a different story emerged. Accurate plant models were frequently not
Figure 9.2: Design trade-offs for the multivariable loop transfer function GK available and the assumption of white noise disturbances was not always relevant or
meaningful to practising control engineers. As a result LQG designs were sometimes
not robust enough to be used in practice. In this section, we will describe the LQG
problem and its solution, we will discuss its robustness properties, and we will
do this in a way which also guarantees closed-loop stability is in general difficult. describe procedures for improving robustness. Many text books consider this topic
Closed-loop stability cannot be determined from open-loop singular values. in far greater detail; we recommend Anderson and Moore (1989) and Kwakernaak
and Sivan (1972).

For SISO systems, it is clear from Bode’s work (1945) that closed-loop stability is
9.2.1 Traditional LQG and LQR problems
closely related to open-loop gain and phase near the crossover frequency ! c , where
jGK (j!c )j = 1. In particular, the roll-off rate from high to low gain at crossover In traditional LQG Control, it is assumed that the plant dynamics are linear and
is limited by phase requirements for stability, and in practice this corresponds to a known, and that the measurement noise and disturbance signals (process noise) are
roll-off rate less than 40 dB=decade; see Section 2.6.2. An immediate consequence stochastic with known statistical properties. That is, we have a plant model
of this is that there is a lower limit to the difference between ! h and !l in Figure 9.2.
x_ = Ax + Bu + wd (9.4)
y = Cx + Du + wn (9.5)
For MIMO systems a similar gain-phase relationship holds in the crossover
frequency region, but this is in terms of the eigenvalues of GK and results in a limit where we for simplicity set D = 0 (see the remark below). w d and wn are the
on the roll-off rate of the magnitude of the eigenvalues of GK , not the singular values disturbance (process noise) and measurement noise inputs respectively, which are
(Doyle and Stein, 1981). The stability constraint is therefore even more difficult to usually assumed to be uncorrelated zero-mean Gaussian stochastic processes with
handle in multivariable loop-shaping than it is in classical loop-shaping. To overcome constant power spectral density matrices W and V respectively. That is, w d and wn
this difficulty Doyle and Stein (1981) proposed that the loop-shaping should be done are white noise processes with covariances
with a controller that was already known to guarantee stability. They suggested that 
an LQG controller could be used in which the regulator part is designed using a E wd (t)wd ( )T = W Æ(t  ) (9.6)

“sensitivity recovery” procedure of Kwakernaak (1969) to give desirable properties E wn (t)wn ( )T = V Æ(t  ) (9.7)
(gain and phase margins) in GK . They also gave a dual “robustness recovery”
procedure for designing the filter in an LQG controller to give desirable properties and
in KG. Recall that KG is not in general equal to GK , which implies that stability
 
margins vary from one break point to another in a multivariable system. Both of these E wd (t)wn ( )T = 0; E wn (t)wd ( )T = 0 (9.8)
loop transfer recovery (LTR) procedures are discussed below after first describing
traditional LQG control. where E is the expectation operator and Æ (t  ) is a delta function.
360 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 361
wd wn
The LQG control problem is to find the optimal control u(t) which minimizes
? ?
(
J = E lim
1 T T
Z

x Qx + uT Ru dt
)
(9.9)
qu - Plant
y
T !1 T 0

?
where Q and R are appropriately chosen constant weighting matrices (design
parameters) such that Q = Q T  0 and R = RT > 0. The name LQG arises B Kf 
from the use of a linear model, an integral Quadratic cost function, and Gaussian
white noise processes to model disturbance signals and noise.
d++ xb_ -
-+ ? R
q- C
yb -- d
The solution to the LQG problem, known as the Separation Theorem or Certainty
Equivalence Principle, is surprisingly simple and elegant. It consists of first
6 +

determining the optimal control to a deterministic linear quadratic regulator (LQR)


problem: namely, the above LQG problem without w d and wn . It happens that the A q Kalman
Filter
solution to this problem can be written in terms of the simple state feedback law

u(t) = Kr x(t) (9.10)


Kr xb
LQ Regulator
where Kr is a constant matrix which is easy to compute and is clearly independent Figure 9.4: The LQG controller and noisy plant
of W and V , the statistical properties of the n plant noise. The next
o step is to find an
optimal estimate xb of the state x, so that E [x x
T
b] [x x b] is minimized. The
optimal state estimate is given by a Kalman filter and is independent of Q and R. We will now give the equations necessary to find the optimal state-feedback matrix
The required solution to the LQG problem is then found by replacing x by x b, to give Kr and the Kalman filter.
u(t) = Kr xb(t). We therefore see that the LQG problem and its solution can be Optimal state feedback. The LQR problem, where all the states are known, is the
separated into two distinct parts, as illustrated in Figure 9.3. deterministic initial value problem: given the system x_ = Ax + Bu with a non-zero
initial state x(0), find the input signal u(t) which takes the system to the zero state
wd wn (x = 0) in an optimal manner, i.e. by minimizing the deterministic cost
Z 1
? ? Jr = (x(t)T Qx(t) + u(t)T Ru(t))dt (9.11)
r
u - Plant
y 0
The optimal solution (for any initial state) is u(t) = K r x(t), where
Kr = R 1 B T X (9.12)

? and X = X T  0 is the unique positive-semidefinite solution of the algebraic


Deterministic Riccati equation
linear quadratic
 xb Kalman Filter
 AT X + XA XBR 1 B T X + Q = 0 (9.13)
regulator
constant, Kr dynamic system
Kalman filter. The Kalman filter has the structure of an ordinary state-estimator or
observer, as shown in Figure 9.4, with

Figure 9.3: The Separation Theorem xb_ = Axb + Bu + Kf (y C xb) (9.14)


362 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 363
n o wd wn
The optimal choice of K f , which minimizes E [x xb]T [x xb] , is given by
r -+ g- - R
- -K r ? ?
Kf = Y C T V 1 (9.15)
6 - q u- Plant q -y
where Y = Y T  0 is the unique positive-semidefinite solution of the algebraic
Riccati equation
Y C T V 1 CY + W = 0

Y AT + AY (9.16) Kalman
Filter  q
LQG: Combined optimal state estimation and optimal state feedback. The LQG
control problem is to minimize J in (9.9). The structure of the LQG controller is
illustrated in Figure 9.4; its transfer function, from y to u (i.e. assuming positive
feedback), is easily shown to be given by Figure 9.5: LQG controller with integral action and reference input
 
KLQG(s) =s A BKr Kf C Kf 2.5
Kr 0
 
A BR 1 B T X Y C T V 1 C Y C T V 1
2

= R 1BT X 0 (9.17) 1.5


y(t)
1

It has the same degree (number of poles) as the plant. 0.5 u(t)
Remark 1 The optimal gain matrices Kf and Kr exist, and the LQG-controlled system
0

1
is internally stable, provided the systems with state-space realizations (A; B; Q 2 ) and −0.5
12
0 5 10 15 20 25 30 35 40 45 50

(A; W ; C ) are stabilizable and detectable. Time [sec]

Remark 2 If the plant model is bi-proper, with a nonzero D-term in (9.5), then the Kalman Figure 9.6: LQG design for inverse response process.
filter equation (9.14) has the extra term Kf Du on the right-hand side, and the A-matrix of Closed-loop response to unit step in reference.
the LQG-controller in (9.17) has the extra term +Kf DKr .

Exercise 9.2 For the plant and LQG controller arrangement of Figure 9.4, show that the introduced in Chapter 2. Recall from (2.26) that the plant model has a RHP-zero and is given
closed-loop dynamics are described by by G(s) = (5s3( 2s+1)
+1)(10s+1) .
       
d x A BKr BKr x I 0 wd
x xb = 0 A Kf C x xb + I Kf wn
The standard LQG design procedure does not give a controller with integral action, so we
dt augment the plant G(s) with R an integrator before designing the state feedback regulator. For
the objective function J = (xT Qx + uT Ru)dt we choose Q such that only the integrated
states y r are weighted and we choose the input weight R = 1. (Only the ratio between Q
This shows that the closed-loop poles are simply the union of the poles of the deterministic
LQR system (eigenvalues of A BKr ) and the poles of the Kalman filter (eigenvalues of
and R matters and reducing R yields a faster response). The Kalman filter is set up so that
A Kf C ). It is exactly as we would have expected from the Separation Theorem. we do not estimate the integrated states. For the noise weights we select W = wI (process
noise directly on the states) with w = 1, and be choose V = 1 (measurement noise). (Only
For the LQG-controller, as shown in Figure 9.4, ut is not easy to see where to position the ratio between w and V matter and reducing V yields a faster response). The MATLAB
the reference input r, and how integral action may be included, if desired. One file in Table 9.1 was used to design the LQG controller. The resulting closed-loop response is
strategy is illustrated Figure 9.5. Here the control error r y is integrated and the shown in Figure 9.6. The reponse is good and compares nicely with the loop-shaping design
regulator Kr is designed for the plant augmented with these integrated states. in Figure 2.17.

Example 9.1 LQG design for inverse response process. We here design an LQG-
controller with integral action (see Figure 9.5) for the SISO inverse response process Exercise 9.3 Derive the equations used in the MATLAB file in Table 9.1.
364 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 365

Table 9.1: MATLAB commands to generate LQG controller in Example 9.1


(ii) ki = 1 and ji j  60Æ, i = 1; 2; : : : ; m
% Uses the Control toolbox
where m is the number of plant inputs. For a single-input plant, the above shows that
the Nyquist diagram of the open-loop regulator transfer function K r (sI A) 1 B
num=3*[-2 1]; den=conv([5 1],[10 1]); % original plant
[a,b,c,d] = tf2ss(num,den); % plant is (a,b,c,d)
% Model dimensions:
p = size(c,1); % no. of outputs (y) will always lie outside the unit circle with centre 1. This was first shown by Kalman
[n,m] = size(b); % no. of states and inputs (u) (1964), and is illustrated in Example 9.2 below.
0nm=zeros(nm); 0mm=zeros(mm);
0nn=zeros(nn); 0mn=zeros(mn);
% 1) Design state feedback regulator Example 9.2 LQR design of a first order process. Consider a first order process G(s) =
A = [a 0nm;-c 0mm]; B = [b;-d];
Q=[0nn 0nm;0mn eye(m,m)];
%
%
augment plant with integrators
weight on integrated error
1=(s a) with the state-space realization
R=eye(m); % input weight
Kr=lqr(A,B,Q,R); % optimal state-feedback regulator x_ (t) = ax(t) + u(t); y (t) = x(t)
Krp=Kr(1:m,1:n);Kri=Kr(1:m,n+1:n+m); % extract integrator and state feedbacks
% 2) Design Kalman filter % don’t estimate integrator states so that the state is directly measured. For a non-zero initial state the cost function to be
Bnoise = eye(n); % process noise model (Gd)
minimized is Z 1
(x2 + Ru2 )dt
W = eye(n); % process noise weight
V = 1*eye(m); % measurement noise weight Jr =
Ke = lqe(a,Bnoise,c,W,V); % Kalman filter gain 0
The algebraic Riccati equation (9.13) becomes (A = a, B = 1, Q = 1)
% 3) Form controller from [r y]’ to u
Ac=[0mm 0mn;-b*Kri a-b*Krp-Ke*c]; % integrators included

aX + Xa XR 1 X + 1 = 0 2
Bc = [eye(m) -eye(m);0nm +Ke];
Cc = [-Kri -Krp]; Dc = [0mm 0mm];
Klqg = ss(Ac,Bc,Cc,Dc); % Final 2-DOF controller. Includes
, X 2aRX R = 0
p
% integrators, Kr and Kalman filter
which, since X 
0, gives X = aR + (aR)2 + R. The optimal control is given by
u = Kr x where from (9.12)
p
9.2.2 Robustness properties Kr = X=R = a + a2 + 1=R
For an LQG-controlled system with a combined Kalman filter and LQR control law and we get the closed-loop system
p
a2 + 1=R x
there are no guaranteed stability margins. This was brought starkly to the attention
x_ = ax + u =
of the control community by Doyle (1978) (in a paper entitled “Guaranteed Margins
p
for LQG Regulators” with a very compact abstract which simply states “There are The closed-loop pole is located at s = a2 + 1=R < 0. Thus, the root locus for the
none”). He showed, by example, that there exist LQG combinations with arbitrarily optimal closed-loop pole with respect to R starts at s = jj 1
a for R = (infinite weight
small gain margins. on the input) and moves to 1 along the real axis as R approaches zero. Note that the root
locus is identical for stable (a < 0) and unstable (a > 0) plants G(s) with the same value
However, for an LQR-controlled system (i.e. assuming all the states are available and
jj
of a . In particular, for a > 0 we see that the minimum input energy needed to stabilize the
no stochastic inputs) it is well known (Kalman, 1964; Safonov and Athans, 1977) 1 jj
plant (corresponding to R = ) is obtained with the input u = 2 a x, which moves the
that, if the weight R is chosen to be diagonal, the sensitivity function S = (I + pole from s = a to its mirror image at s = a.
Kr (sI A) 1 B ) 1 satisfies the Kalman inequality ForR small (“cheap control”) the gain crossover frequency
p of the loop transfer function
 (S (j!))  1; 8w (9.18)
L = GKr = Kr =(s a) is given approximately by !c  1=R. Note also that L(j! ) has
a roll-off of -1 at high frequencies, which is a general property of LQR designs. Furthermore,
the Nyquist plot of L(j! ) avoids the unit disc centred on the critical point 1, that is
From this it can be shown that the system will have a gain margin equal to infinity,
a gain reduction margin equal to 0.5, and a (minimum) phase margin of 60 Æ in
j j j j
S (j! ) = 1= 1 + L(j! ) 1 at all frequencies. This is obvious for the stable plant with
a < 0 since Kr > 0 and then the phase of L(j! ) varies from 0Æ (at zero frequency) to 90Æ
each plant input control channel. This means that in the LQR-controlled system (at infinite frequency). The surprise is that it is also true for the unstable plant with a > 0
u = Kr x, a complex perturbation diag ki eji can be introduced at the plant even though the phase of L(j! ) varies from 180Æ to 90Æ .
inputs without causing instability providing
(i) i = 0 and 0:5  ki  1, i = 1; 2; : : : ; m Consider now the Kalman filter shown earlier in Figure 9.4. Notice that it is itself a
feedback system. Arguments dual to those employed for the LQR-controlled system
or can then be used to show that, if the power spectral density matrix V is chosen to
366 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 367

be diagonal, then at the input to the Kalman gain matrix K f there will be an infinite Remark. L3 (s) and L4 (s) are surprisingly simple. For L3 (s) the reason is that after opening
gain margin, a gain reduction margin of 0.5 and a minimum phase margin of 60 Æ . the loop at point 3 the error dynamics (point 4) of the Kalman filter are not excited by the plant
Consequently, for a single-output plant, the Nyquist diagram of the open-loop filter inputs; in fact they are uncontrollable from u.
transfer function C (sI A) 1 Kf will lie outside the unit circle with centre at 1.
Exercise 9.4 Derive the expressions for L1 (s), L2 (s), L3 (s) and L4 (s), and explain why
An LQR-controlled system has good stability margins at the plant inputs, and a L4 (s) (like L3 (s)) has such a simple form.
Kalman filter has good stability margins at the inputs to K f , so why are there
no guarantees for LQG control? To answer this, consider the LQG controller At points 3 and 4 we have the guaranteed robustness properties of the LQR system
arrangement shown in Figure 9.7. The loop transfer functions associated with the and the Kalman filter respectively. But at the actual input and output of the plant
(points 1 and 2) where we are most interested in achieving good stability margins, we
wd wn have complex transfer functions which in general give no guarantees of satisfactory
? ? robustness properties. Notice also that points 3 and 4 are effectively inside the LQG
u 1
 - Plant, G(s)
2
 y controller which has to be implemented, most likely as software, and so we have
good stability margins where they are not really needed and no guarantees where

q
they are.

3 ?
Fortunately, for a minimum phase plant procedures developed by Kwakernaak
(1969) and Doyle and Stein (1979; 1981) show how, by a suitable choice of
Kr B parameters, either L 1 (s) can be made to tend asymptotically to L 3 (s) or L2 (s) can
6 be made to approach L 4 (s). These procedures are considered next.

q (s)  ?d++ Kf  4 d+


-6 9.2.3 Loop transfer recovery (LTR) procedures

- C
For full details of the recovery procedures, we refer the reader to the original
communications (Kwakernaak, 1969; Doyle and Stein, 1979; Doyle and Stein, 1981)
or to the tutorial paper by Stein and Athans (1987). We will only give an outline of
Controller, KLQG (s)
the major steps here, since we will argue later that the procedures are somewhat
limited for practical control system design. For a more recent appraisal of LTR, we
recommend a Special Issue of the International Journal of Robust and Nonlinear
Figure 9.7: LQG-controlled plant Control, edited by Niemann and Stoustrup (1995).
The LQG loop transfer function L 2 (s) can be made to approach C (s)K f , with its
labelled points 1 to 4 are respectively guaranteed stability margins, if K r in the LQR problem is designed to be large using
the sensitivity recovery procedure of Kwakernaak (1969). It is necessary to assume
L1 (s) = Kr (s) 1 + BKr + Kf C 1 Kf C (s)B
 
that the plant model G(s) is minimum phase and that it has at least as many inputs
= KLQG(s)G(s) (9.19) as outputs.
L2 (s) = G(s)KLQG(s) (9.20) Alternatively, the LQG loop transfer function L 1 (s) can be made to approach
L3 (s) = Kr (s)B (regulator transfer function) (9.21)
Kr (s)B by designing K f in the Kalman filter to be large using the robustness
recovery procedure of Doyle and Stein (1979). Again, it is necessary to assume that
L4 (s) = C (s)Kf (filter transfer function) (9.22) the plant model G(s) is minimum phase, but this time it must have at least as many
outputs as inputs.
where
4 (sI A) 1
(s) = (9.23)
The procedures are dual and therefore we will only consider recovering robustness
at the plant output. That is, we aim to make L 2 (s) = G(s)KLQG (s) approximately
KLQG(s) is as in (9.17) and G(s) = C (s)B is the plant model. equal to the Kalman filter transfer function C (s)K f .
368 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 369

First, we design a Kalman filter whose transfer function C (s)K f is desirable. This control problem formulation into which we can cast all H 2 and H1 optimizations
is done, in an iterative fashion, by choosing the power spectral density matrices of practical interest. The general H 2 and H1 problems will be described along with
W and V so that the minimum singular value of C (s)K f is large enough at low some specific and typical control problems. It is not our intention to describe in detail
frequencies for good performance and its maximum singular value is small enough the mathematical solutions, since efficient, commercial software for solving such
at high frequencies for robust stability, as discussed in section 9.1. Notice that W and problems is now so easily available. Rather we seek to provide an understanding
V are being used here as design parameters and their associated stochastic processes of some useful problem formulations which might then be used by the reader, or
are considered to be fictitious. In tuning W and V we should be careful to choose V modified to suit his or her application.
as diagonal and W = (BS )(BS ) T , where S is a scaling matrix which can be used to
balance, raise, or lower the singular values. When the singular values of C (s)K f
are thought to be satisfactory, loop transfer recovery is achieved by designing K r in 9.3.1 General control problem formulation
an LQR problem with Q = C T C and R = I , where  is a scalar. As  tends to
zero G(s)KLQG tends to the desired loop transfer function C (s)K f . There are many ways in which feedback design problems can be cast as H 2 and
H1 optimization problems. It is very useful therefore to have a standard problem
Much has been written on the use of LTR procedures in multivariable control system formulation into which any particular problem may be manipulated. Such a general
design. But as methods for multivariable loop-shaping they are limited in their formulation is afforded by the general configuration shown in Figure 9.8 and
applicability and sometimes difficult to use. Their main limitation is to minimum discussed earlier in Chapter 3. The system of Figure 9.8 is described by
phase plants. This is because the recovery procedures work by cancelling the plant
zeros, and a cancelled non-minimum phase zero would lead to instability. The w - -z
cancellation of lightly damped zeros is also of concern because of undesirable
oscillations at these modes during transients. A further disadvantage is that the
- P
limiting process ( ! 0) which brings about full recovery also introduces high u v
gains which may cause problems with unmodelled dynamics. Because of the above
disadvantages, the recovery procedures are not usually taken to their limits ( !
0) to achieve full recovery, but rather a set of designs is obtained (for small )
K 
and an acceptable design is selected. The result is a somewhat ad-hoc design
procedure in which the singular values of a loop transfer function, G(s)K LQG (s) or Figure 9.8: General control configuration
KLQG (s)G(s), are indirectly shaped. A more direct and intuitively appealing method
for multivariable loop-shaping will be given in Section 9.4.       
z = P (s) wu = P11 (s) P12 (s) w (9.24)
v P21 (s) P22 (s) u
9.3 H2 and H1 control u = K (s)v (9.25)

with a state-space realization of the generalized plant P given by


2 3
Motivated by the shortcomings of LQG control there was in the 1980’s a significant A B1 B2
shift towards H1 optimization for robust control. This development originated from P = s 4 C1 D11 D12 5 (9.26)
the influential work of Zames (1981), although an earlier use of H 1 optimization in C2 D21 D22
an engineering context can be found in Helton (1976). Zames argued that the poor
robustness properties of LQG could be attributed to the integral criterion in terms of The signals are: u the control variables, v the measured variables, w the exogenous
the H2 norm, and he also criticized the representation of uncertain disturbances by signals such as disturbances w d and commands r, and z the so-called “error” signals
white noise processes as often unrealistic. As the H 1 theory developed, however, which are to be minimized in some sense to meet the control objectives. As shown in
the two approaches of H 2 and H1 control were seen to be more closely related than (3.102) the closed-loop transfer function from w to z is given by the linear fractional
originally thought, particularly in the solution process; see for example Glover and transformation
Doyle (1988) and Doyle et al. (1989). In this section, we will begin with a general z = Fl (P; K )w (9.27)
370 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 371
T C1 = 0 and B1 DT = 0.
D12
where (A7) 21
Fl (P; K ) = P11 + P12 K (I P22 K ) 1 P21 (9.28) (A8) (A; B1 ) is stabilizable and (A; C1 ) is detectable.
H2 and H1 control involve the minimization of the H 2 and H1 norms of Fl (P; K ) Assumption (A7) is common in H 2 control e.g. in LQG where there are no cross
respectively. We will consider each of them in turn. T C1 = 0), and the process noise and measurement
terms in the cost function (D 12
First some remarks about the algorithms used to solve such problems. The most T
noise are uncorrelated (B 1 D21 = 0). Notice that if (A7) holds then (A3) and (A4)
general, widely available and widely used algorithms for H 2 and H1 control may be replaced by (A8).
problems are based on the state-space solutions in Glover and Doyle (1988) and
Doyle et al. (1989). It is worth mentioning again that the similarities between H 2 and Whilst the above assumptions may appear daunting, most sensibly posed control
H1 theory are most clearly evident in the aforementioned algorithms. For example, problems will meet them. Therefore, if the software (e.g. -tools or the Robust
both H2 and H1 require the solutions to two Riccati equations, they both give Control toolbox of MATLAB) complains, then it probably means that your control
controllers of state-dimension equal to that of the generalized plant P , and they problem is not well formulated and you should think again.
both exhibit a separation structure in the controller already seen in LQG control. Lastly, it should be said that H 1 algorithms, in general, find a sub-optimal controller.
An algorithm for H 1 control problems is summarized in Section 9.3.4. That is, for a specified a stabilizing controller is found for which kF l (P; K )k1 <
The following assumptions are typically made in H 2 and H1 problems: . If an optimal controller is required then the algorithm can be used iteratively,
reducing until the minimum is reached within a given tolerance. In general, to
(A1) (A; B2 ; C2 ) is stabilizable and detectable. find an optimal H 1 controller is numerically and theoretically complicated. This
(A2) D12 and D21 have full rank. contrasts significantly with H 2 theory, in which the optimal controller is unique and
  can be found from the solution of just two Riccati equations.
(A3)
A j!I B2 has full column rank for all !.
C1 D12
(A4)
 
A j!I B1 has full row rank for all !. 9.3.2 H2 optimal control
C2 D21
The standard H 2 optimal control problem is to find a stabilizing controller K which
(A5) D11 = 0 and D22 = 0.
minimizes
Assumption (A1) is required for the existence of stabilizing controllers K , and s
1
Z 1 4 F (P; K )
assumption (A2) is sufficient to ensure the controllers are proper and hence k F (s)k2 = 2
tr [F (j!)F (j!)H ] d!; F = l (9.29)
realizable. Assumptions (A3) and (A4) ensure that the optimal controller does not 1
try to cancel poles or zeros on the imaginary axis which would result in closed-loop
instability. Assumption (A5) is conventional in H 2 control. D11 = 0 makes P11 For a particular problem the generalized plant P will include the plant model, the
strictly proper. Recall that H 2 is the set of strictly proper stable transfer functions. interconnection structure, and the designer specified weighting functions. This is
D22 = 0 makes P22 strictly proper and simplifies the formulas in the H 2 algorithms. illustrated for the LQG problem in the next subsection.
In H1 , neither D11 = 0, nor D22 = 0, is required but they do significantly As discussed in Section 4.10.1 and noted in Tables A.1 and A.2 on page 538,
simplify the algorithm formulas. If they are not zero, an equivalent H 1 problem the H2 norm can be given different deterministic interpretations. It also has the
can be constructed in which they are; see (Safonov et al., 1989) and (Green and following stochastic interpretation. Suppose in the general control configuration that
Limebeer, 1995). For simplicity, it is also sometimes assumed that D 12 and D21 are the exogenous input w is white noise of unit intensity. That is
given by


0

  E w(t)w( )T = IÆ(t  ) (9.30)
(A6) D12 = I and D21 = 0 I .
The expected power in the error signal z is then given by
This can be achieved, without loss of generality, by a scaling of u and v and a unitary ( Z T )
transformation of w and z ; see for example Maciejowski (1989). In addition, for 1
E lim z (t)T z (t)dt (9.31)
simplicity of exposition, the following additional assumptions are sometimes made T !1 2T T
372 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 373

= tr E z (t)z (t)H where
1 1 
Z z (s) = Fl (P; K )w(s)
 (9.40)
= tr F (j!)F (j!)H d! and the generalized plant P is given by
2 1
2 3
(by Parseval’s Theorem) A W 12 0 B
kF k22 = kFl (P; K )k22
= (9.32)
  6 1
P11 P12 =s 6 Q 2 0 0 0 7
12 7
P= P21 P22 6
R 7 (9.41)
4 0 0 0 5
Thus, by minimizing the H 2 norm, the output (or error) power of the generalized - - - - - - - - - - - 1- - - - - -
system, due to a unit intensity white noise input, is minimized; we are minimizing C 0 V2 0
the root-mean-square (rms) value of z . The above formulation of the LQG problem is illustrated in the general setting in
Figure 9.9. With the standard assumptions for the LQG problem, application of the
general H2 formulas (Doyle et al., 1989) to this formulation gives the familiar LQG
9.3.3 LQG: a special H2 optimal controller optimal controller as in (9.17).

An important special case of H 2 optimal control is the LQG problem described in P



- W 21 wd - R 12 - z
subsection 9.2.1. For the stochastic system
w -
x_ = Ax + Bu + wd (9.33)
y = Cx + wn (9.34) q - B -+ ?d+ - (sI A) 1 q? - Q 21
where 
wd (t)

W 0
   C
-+ d+
T T
E wn (t) [ wd ( ) wn ( ) ] = 0 V Æ(t  ) (9.35)
- V 12 wn
The LQG problem is to find u = K (s)y such that u y

( Z )
1 T T  K
J =E lim x Qx + uT Ru dt (9.36)
T !1 T 0

is minimized with Q = QT  0 and R = RT > 0. Figure 9.9: The LQG problem formulated in the general control configuration
This problem can be cast as an H 2 optimization in the general framework in the
following manner. Define an error signal z as
 1  
x
9.3.4 H1 optimal control
z= Q
2 0
1
With reference to the general control configuration of Figure 9.8, the standard H 1
(9.37)
0 R2 u
optimal control problem is to find all stabilizing controllers K which minimize
and represent the stochastic inputs w d , wn as
   
kFl (P; K )k1 = max
!
 (Fl (P; K )(j!)) (9.42)
wd = W 12 01 w
wn (9.38) As discussed in Section 4.10.2 the H 1 norm has several interpretations in terms of
0 V2
performance. One is that it minimizes the peak of the maximum singular value of
where w is a white noise process of unit intensity. Then the LQG cost function is Fl (P (j!); K (j!)). It also has a time domain interpretation as the induced (worst-
( ) case) 2-norm. Let z = F l (P; K )w, then
Z
1 T kz (t)k2
J = E lim z (t)T z (t)dt = kFl (P; K )k22 (9.39) kFl (P; K )k1 = wmax
T !1 T 0 (t)6=0 kw(t)k2
(9.43)
374 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 375
qR
where kz (t)k2 = 1 P jz (t)j2 dt is the 2-norm of the vector signal. and a state feedback
0 i i
u = F1 xb
In practice, it is usually not necessary to obtain an optimal controller for the H 1
(9.51)
problem, and it is often computationally (and theoretically) simpler to design a sub- Upon comparing the observer in (9.50) with the Kalman filter in (9.14) we see that it
optimal one (i.e. one close to the optimal ones in the sense of the H 1 norm). Let min contains an additional term B 1 w
bworst , where w
bworst can be interpreted as an estimate
be the minimum value of kF l (P; K )k1 over all stabilizing controllers K . Then the of the worst-case disturbance (exogenous input). Note that for the special case of H 1
H1 sub-optimal control problem is: given a > min, find all stabilizing controllers loop shaping this extra term is not present. This is discussed in Section 9.4.4.
K such that -iteration. If we desire a controller that achieves min , to within a specified
kFl (P; K )k1 < tolerance, then we can perform a bisection on until its value is sufficiently accurate.
This can be solved efficiently using the algorithm of Doyle et al. (1989), and The above result provides a test for each value of to determine whether it is less
by reducing iteratively, an optimal solution is approached. The algorithm is than min or greater than min .
summarized below with all the simplifying assumptions. Given all the assumptions (A1) to (A8) the above is the most simple form of
General H1 algorithm. For the general control configuration of Figure 9.8 the general H1 algorithm. For the more general situation, where some of the
described by equations (9.24)-(9.26), with assumptions (A1) to (A8) in Section 9.3.1, assumptions are relaxed, the reader is referred to the original source (Glover and
there exists a stabilizing controller K (s) such that kF l (P; K )k1 < if and only if Doyle, 1988). In practice, we would expect a user to have access to commercial
software such as MATLAB and its toolboxes.
(i) X1  0 is a solution to the algebraic Riccati equation In Section 2.7, we distinguished between two methodologies for H 1 controller
AT X1 + X1 A + C1T C1 + X1 ( 2 B1 B1T B2 B2T )X1 = 0 (9.44) design: the transfer function shaping approach and the signal-based approach. In
  the former, H 1 optimization is used to shape the singular values of specified
such that Re i A + ( 2 B1 B1T B2 B2T )X1 < 0, 8i; and transfer functions over frequency. The maximum singular values are relatively easy
(ii) Y1  0 is a solution to the algebraic Riccati equation to shape by forcing them to lie below user defined bounds, thereby ensuring desirable
AY1 + Y1 AT + B1 B1T + Y1 ( 2 C1T C1 C2T C2 )Y1 = 0
bandwidths and roll-off rates. In the signal-based approach, we seek to minimize the
(9.45) energy in certain error signals given a set of exogenous input signals. The latter
 
such that Re i A + Y1 ( 2 C1T C1 C2T C2 ) < 0, 8i; and might include the outputs of perturbations representing uncertainty, as well as the
(iii) (X1 Y1 ) < 2 usual disturbances, noise, and command signals. Both of these two approaches will
be considered again in the remainder of this section. In each case we will examine a
All such controllers are then given by K = F l (Kc ; Q) where particular problem and formulate it in the general control configuration.
2
A1 Z1L1 Z1 B2
3
A difficulty that sometimes arises with H 1 control is the selection of weights
s 4
Kc (s) = F1 0 I 5 (9.46) such that the H1 optimal controller provides a good trade-off between conflicting
C2 I 0 objectives in various frequency ranges. Thus, for practical designs it is sometimes
recommended to perform only a few iterations of the H 1 algorithm. The justification
F1 = B2T X1 ; L1 = Y1 C2T ; Z1 = (I 2 Y1 X1 ) 1 (9.47) for this is that the initial design, after one iteration, is similar to an H 2 design which
2 T
A1 = A + B1 B1 X1 + B2 F1 + Z1 L1 C2 does trade-off over various frequency ranges. Therefore stopping the iterations before
the optimal value is achieved gives the design an H 2 flavour which may be desirable.
(9.48)
and Q(s) is any stable proper transfer function such that kQk 1 < . For Q(s) = 0,
we get
K (s) = Kc (s) = Z1L1 (sI A1 ) 1 F1
11 (9.49) 9.3.5 Mixed-sensitivity H1 control
This is called the “central” controller and has the same number of states as the
generalized plant P (s). The central controller can be separated into a state estimator Mixed-sensitivity is the name given to transfer function shaping problems in which
(observer) of the form the sensitivity function S = (I + GK ) 1 is shaped along with one or more other
closed-loop transfer functions such as KS or the complementary sensitivity function
xb_ = Axb + B 2 B T X xb +B u + Z L (C xb y)
1| 1 1} 2 1 1 2 (9.50) T = I S . Earlier in this chapter, by examining a typical one degree-of-freedom
{z
wbworst configuration, Figure 9.1, we saw quite clearly the importance of S , KS , and T .
376 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 377

P
- - z1 9=
Suppose, therefore, that we have a regulation problem in which we want to reject a
disturbance d entering at the plant output and it is assumed that the measurement W1
w=d
noise is relatively insignificant. Tracking is not an issue and therefore for this z
problem it makes sense to shape the closed-loop transfer functions S and KS in
a one degree-of-freedom setting. Recall that S is the transfer function between d
- W2 - z2 ;
and the output, and KS the transfer function between d and the control signals. It is
important to include KS as a mechanism for limiting the size and bandwidth of the
controller, and hence the control energy used. The size of KS is also important for q- G -+ d?+ qy -- d
robust stability with respect to uncertainty modelled as additive plant perturbations.
u
6+
Setpoint r = 0 v
The disturbance d is typically a low frequency signal, and therefore it will be
successfully rejected if the maximum singular value of S is made small over the
same low frequencies. To do this we could select a scalar low pass filter w 1 (s) with a K 
bandwidth equal to that of the disturbance, and then find a stabilizing controller that
minimizes kw1 S k1 . This cost function alone is not very practical. It focuses on just
one closed-loop transfer function and for plants without right-half plane zeros the Figure 9.10: S=KS mixed-sensitivity optimization in standard form (regulation)
optimal controller has infinite gains. In the presence of a nonminimum phase zero,
the stability requirement will indirectly limit the controller gains, but it is far more
where the partitioning is such that
useful in practice to minimize
  2 3
w1 S z1   

w2 KS (9.52) 4 z2 5 = P11 P12 w (9.54)
1 --- P21 P22 u
v
where w2 (s) is a scalar high pass filter with a crossover frequency approximately
equal to that of the desired closed-loop bandwidth. and  
Fl (P; K ) = W1 S
In general, the scalar weighting functions w 1 (s) and w2 (s) can be replaced by W2 KS (9.55)
matrices W1 (s) and W2 (s). This can be useful for systems with channels of quite
different bandwidths when diagonal weights are recommended, but anything more
Another interpretation can be put on the S=KS mixed-sensitivity optimization as
complicated is usually not worth the effort.
shown in the standard control configuration of Figure 9.11. Here we consider a
tracking problem. The exogenous input is a reference command r, and the error
signals are z1 = W1 e = W1 (r y ) and z2 = W2 u. As in the regulation problem
Remark. Note we have here outlined an alternative way of selecting the weights from that in
Example 2.11 and Section 3.4.6. There W1 = WP was selected with a crossover frequency
equal to that of the desired closed-loop bandwidth and W2 = Wu was selected as a constant, of Figure 9.10, we have in this tracking problem z 1 = W1 Sw and z2 = W2 KSw.
usually Wu = I . An example of the use of S=KS mixed sensitivity minimization is given in Chapter
12, where it is used to design a rotorcraft control law. In this helicopter problem,
you will see that the exogenous input w is passed through a weight W 3 before it
To see how this mixed-sensitivity problem can be formulated in the general setting,
impinges on the system. W 3 is chosen to weight the input signal and not directly to
we can imagine the disturbance d as a single exogenous input and define an error
 T shape S or KS . This signal-based approach to weight selection is the topic of the
signal z = z1T z2T , where z1 = W1 y and z2 = W2 u, as illustrated in next sub-section.
Figure 9.10. It is not difficult from Figure 9.10 to show that z 1 = W1 Sw and
z2 = W2 KSw as required, and to determine the elements of the generalized plant P Another useful mixed sensitivity optimization problem, again in a one degree-of-
as     freedom setting, is to find a stabilizing controller which minimizes
P11 = W01 P12 = WW1G 
W1 S


2 (9.53) (9.56)
P21 = I P22 = G W2 T
1
378 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 379

P
- - z1 9=
Exercise 9.5 For the cost function
w=r W1 2
W1 S
3


z 4 W2 T 5
- - z2 ; (9.58)
W2 W3 KS
1
formulate a standard problem, draw the corresponding control configuration and give

q- G -- d?+ q
expressions for the generalized plant P .

The shaping of closed-loop transfer functions as described above with the “stacked”
u v cost functions becomes difficult with more than two functions. With two, the process
is relatively easy. The bandwidth requirements on each are usually complementary
K  and simple, stable, low-pass and high-pass filters are sufficient to carry out the
required shaping and trade-offs. We stress that the weights W i in mixed-sensitivity
H1 optimal control must all be stable. If they are not, assumption (A1) in Section
Figure 9.11: S=KS mixed-sensitivity minimization in standard form (tracking) 9.3.1 is not satisfied, and the general H 1 algorithm is not applicable. Therefore if
we wish, for example, to emphasize the minimization of S at low frequencies by
weighting with a term including integral action, we would have to approximate 1s
The ability to shape T is desirable for tracking problems and noise attenuation. It by s+1 , where  << 1. This is exactly what was done in Example 2.11. Similarly

is also important for robust stability with respect to multiplicative perturbations at one might be interested in weighting KS with a non-proper weight to ensure that
the plant output. The S=T mixed-sensitivity minimization problem can be put into K is small outside the system bandwidth. But the standard assumptions preclude
the standard control configuration as shown in Figure 9.12. The elements of the such a weight. The trick here is to replace a non-proper term such as (1 +  1 s) by
(1 + 1 s)=(1 + 2 s) where 2 << 1 . A useful discussion of the tricks involved in
P using “unstable” and “non-proper” weights in H 1 control can be found in Meinsma
w=r
- W1 - z1 9= (1995).
z For more complex problems, information might be given about several exogenous
- W2 - z2 ; signals in addition to a variety of signals to be minimized and classes of plant
perturbations to be robust against. In which case, the mixed-sensitivity approach is
not general enough and we are forced to look at more advanced techniques such as
- G q-- ?d+ q the signal-based approach considered next.

u v
9.3.6 Signal-based H1 control

K  The signal-based approach to controller design is very general and is appropriate


for multivariable problems in which several objectives must be taken into account
simultaneously. In this approach, we define the plant and possibly the model
Figure 9.12: S=T mixed-sensitivity optimization in standard form uncertainty, we define the class of external signals affecting the system and we define
the norm of the error signals we want to keep small. The focus of attention has moved
corresponding generalized plant P are to the size of signals and away from the size and bandwidth of selected closed-loop
    transfer functions.
P11 = W01 P12 = WW1GG Weights are used to describe the expected or known frequency content of exogenous
2 (9.57) signals and the desired frequency content of error signals. Weights are also used
P21 = I P22 = G if a perturbation is used to model uncertainty, as in Figure 9.13, where G is the
380 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 381

nominal model, W is a weighting function that captures the relative model fidelity interconnection diagram of Figure 9.14. G and G d are nominal models of the plant
over frequency, and  represents unmodelled dynamics usually normalized via W so and disturbance dynamics, and K is the controller to be designed. The weights W d ,
that kk1 < 1; see Chapter 8 for more details. As in mixed-sensitivity H 1 control, Wi and Wn may be constant or dynamic and describe the relative importance and/or
the weights in signal-based H 1 control need to be stable and proper for the general frequency content of the disturbances, set points, and noise signals. The weight W ref
H1 algorithm to be applicable. is a desired closed-loop transfer function between the weighted set point r s and the
actual output y . The weights W e and Wu reflect the desired frequency content of the
- W -  error (y yref ) and the control signals u, respectively. The problem can be cast as a
standard H1 optimization in the general control configuration by defining
q -+ ?d+ - G - 2
d
3

z1

w= 4 r 5 z= z2
n (9.59)
Figure 9.13: Multiplicative dynamic uncertainty model
 
v= rs u=u
LQG control is a simple example of the signal-based approach, in which the ym
exogenous signals are assumed to be stochastic (or alternatively impulses in a
deterministic setting) and the error signals are measured in terms of the 2-norm. As in the general setting of Figure 9.8.
we have already seen, the weights Q and R are constant, but LQG can be generalized
to include frequency dependent weights on the signals leading to what is sometimes Suppose we now introduce a multiplicative dynamic uncertainty model at the input
called Wiener-Hopf design, or simply H 2 control. to the plant as shown in Figure 9.15. The problem we now want to solve is: find a
stabilizing controller K such that the H 1 norm of the transfer function between w
When we consider a system’s response to persistent sinusoidal signals of varying and z is less than 1 for all , where kk 1 < 1. We have assumed in this statement
frequency, or when we consider the induced 2-norm between the exogenous input
signals and the error signals, we are required to minimize the H 1 norm. In the
that the signal weights have normalized the 2-norm of the exogenous input signals to
unity. This problem is a non-standard H 1 optimization. It is a robust performance
absence of model uncertainty, there does not appear to be an overwhelming case problem for which the -synthesis procedure, outlined in Chapter 8, can be applied.
for using the H 1 norm rather than the more traditional H 2 norm. However, when
uncertainty is addressed, as it always should be, H 1 is clearly the more natural
Mathematically, we require the structured singular value
approach using component uncertainty models as in Figure 9.13.
- Wref yref --c+ - We -z1
- Wref yref-- d+ - -z1 6
We d - Wd -
6 Gd
d - Wd - Gd - W y-  u

r - Wi
rs q -- q
u- G d+ q y
-+ ?
r - Wi rs -
-K q q q -+?c+- G -+?c+ q y
K ym
ym - -z2 - Wu -z2
Wu
n - Wn -+ c+
n - Wn -+ d+
Figure 9.15: An H1 robust performance problem
Figure 9.14: A signal-based H1 control problem
A typical problem using the signal-based approach to H 1 control is illustrated in the (M (j!)) < 1; 8! (9.60)
382 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 383

where M is the transfer function matrix between However, as shown by Limebeer et al. (1993), the procedure can be extended
2 3 by introducing a second degree-of-freedom in the controller and formulating a
d 2
z1
3
standard H1 optimization problem which allows one to trade off robust stabilization
6
6 r 7
7 and 4 z2 5 (9.61) against closed-loop model-matching. We will describe this two degrees-of-freedom
4 n 5
 extension and further show that such controllers have a special observer-based
Æ structure which can be taken advantage of in controller implementation.
and the associated block diagonal perturbation has 2 blocks: a fictitious performance
T T
block between [ d T rT nT ] and [ z1T z2T ] , and an uncertainty block 
between u and y . Whilst the structured singular value is a useful analysis tool for 9.4.1 Robust stabilization
assessing designs, -synthesis is sometimes difficult to use and often too complex for
the practical problem at hand. In its full generality, the -synthesis problem is not yet For multivariable systems, classical gain and phase margins are unreliable indicators
solved mathematically; where solutions exist the controllers tend to be of very high of robust stability when defined for each channel (or loop), taken one at a time,
order; the algorithms may not always converge and design problems are sometimes because simultaneous perturbations in more than one loop are not then catered for.
difficult to formulate directly. More general perturbations like diagfk i g and diag eji , as discussed in section
For many industrial control problems, a design procedure is required which offers 9.2.2, are required to capture the uncertainty, but even these are limited. It is now
more flexibility than mixed-sensitivity H 1 control, but is not as complicated as - common practice, as seen in Chapter 8, to model uncertainty by stable norm-bounded
synthesis. For simplicity, it should be based on classical loop-shaping ideas and it dynamic (complex) matrix perturbations. With a single perturbation, the associated
should not be limited in its applications like LTR procedures. In the next section, we robustness tests is in terms of the maximum singular values of various closed-
present such a controller design procedure. loop transfer functions. Use of a single stable perturbation, restricts the plant and
perturbed plant models to either have the same number of unstable poles or the same
number of unstable (RHP) zeros.

9.4 H1 loop-shaping design To overcome this, two stable perturbations can be used, one on each of the factors
in a coprime factorization of the plant, as shown in Section 8.6.2. Although this
uncertainty description seems unrealistic and less intuitive than the others, it is in fact
The loop-shaping design procedure described in this section is based on H 1 robust quite general, and for our purposes it leads to a very useful H 1 robust stabilization
stabilization combined with classical loop shaping, as proposed by McFarlane and problem. Before presenting the problem, we will first recall the uncertainty model
Glover (1990). It is essentially a two stage design process. First, the open-loop given in (8.62).
plant is augmented by pre and post-compensators to give a desired shape to the
We will consider the stabilization of a plant G which has a normalized left coprime
singular values of the open-loop frequency response. Then the resulting shaped
plant is robustly stabilized with respect to coprime factor uncertainty using H 1
factorization (as discussed in Section 4.1.5)
optimization. An important advantage is that no problem-dependent uncertainty
modelling, or weight selection, is required in this second step.
G = M 1N (9.62)

We will begin the section with a description of the H 1 robust stabilization problem where we have dropped the subscript from M and N for simplicity. A perturbed
(Glover and McFarlane, 1989). This is a particularly nice problem because it does plant model Gp can then be written as
not require -iteration for its solution, and explicit formulas for the corresponding
controllers are available. The formulas are relatively simple and so will be presented Gp = (M + M ) 1 (N + N ) (9.63)
in full.
Following this, a step by step procedure for H 1 loop-shaping design is presented. where M , N are stable unknown transfer functions which represent the
This systematic procedure has its origin in the Ph.D. thesis of Hyde (1991) uncertainty in the nominal plant model G. The objective of robust stabilization it
and has since been successfully applied to several industrial problems. The to stabilize not only the nominal model G, but a family of perturbed plants defined
procedure synthesizes what is in effect a single degree-of-freedom controller. This by
  
can be a limitation if there are stringent requirements on command following. Gp = (M + M ) 1 (N + N ) : k N M k1 <  (9.64)
384 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 385

- N -+ d- M  Notice that the formulas simplify considerably for a strictly proper plant, i.e. when
D = 0.

q- -+ d?+ - q
A controller (the “central” controller in McFarlane and Glover (1990)) which

u N M 1 y
guarantees that  
K

(I GK ) 1 M 1  (9.69)
I 1

K  for a specified
> min , is given by
 
K =s A + BF + 2 (LT ) 1 ZC T (C + DF ) 2 (LT ) 1 ZC T
Figure 9.16: H1 robust stabilization problem BT X DT (9.70)

F = S 1(DT C + B T X ) (9.71)
where  > 0 is then the stability margin. To maximize this stability margin is the L = (1 2 )I + XZ: (9.72)
problem of robust stabilization of normalized coprime factor plant descriptions as
The MATLAB function coprimeunc, listed in Table 9.2, can be used to generate
introduced and solved by Glover and McFarlane (1989).
the controller in (9.70). It is important to emphasize that since we can compute
For the perturbed feedback system of Figure 9.16, as already derived in (8.64), the min from (9.66) we get an explicit solution by solving just two Riccati equations
stability property is robust if and only if the nominal feedback system is stable and (aresolv) and avoid the -iteration needed to solve the general H 1 problem.
 
4 K (I  1

GK ) 1 M 1
Remark 1 An example of the use of coprimeunc is given in Example 9.3 below.
= I (9.65)
1 Remark 2 Notice that, if = min in (9.70), then L = (XZ )I + XZ , which is singular,
  and thus (9.70) cannot be implemented. If for some unusual reason the truly optimal controller
Notice that is the H1 norm from  to u and (I
y GK ) 1 is the sensitivity is required, then this problem can be resolved using a descriptor system approach, the details
of which can be found in Safonov et al. (1989).
function for this positive feedback arrangement.
Remark 3 Alternatively, from Glover and McFarlane (1989), all controllers achieving =
The lowest achievable value of and the corresponding maximum stability margin  min are given by K = UV 1 , where U and V are stable, (U; V ) is a right coprime
are given by Glover and McFarlane (1989) as factorization of K , and U; V satisfy
   
n o 21 N U
1 = 1
min = max k[N M ]k2H = (1 + (XZ )) 2
1
(9.66)
M + V


1
= k[N M ]kH (9.73)

where k  kH denotes Hankel norm,  denotes the spectral radius (maximum The determination of U and V is a Nehari extension problem: that is, a problem in which an
eigenvalue), and for a minimal state-space realization (A; B; C; D) of G, Z is the unstable transfer function R(s) is approximated by a stable transfer function Q(s), such that
unique positive definite solution to the algebraic Riccati equation
kR + Q 1 is minimized, the minimum being R H . A solution to this problem is given in
k k k
Glover (1984).
(A BS 1DT C )Z +Z (A BS 1DT C )T ZC T R 1 CZ +BS 1B T = 0 (9.67)
H
Exercise 9.6 Formulate the 1 robust stabilization problem in the general control
where configuration of Figure 9.8, and determine a transfer function expression and a state-space
realization for the generalized plant P .
R = I + DDT ; S = I + DT D
and X is the unique positive definite solution of the following algebraic Riccati
equation 9.4.2 A systematic H1 loop-shaping design procedure
(A BS 1 DT C )T X + X (A BS 1 DT C ) XBS 1 B T X + C T R 1 C = 0 Robust stabilization alone is not much use in practice because the designer is not able
(9.68) to specify any performance requirements. To do this McFarlane and Glover (1990)
386 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 387

proposed pre- and post-compensating the plant to shape the open-loop singular
values prior to robust stabilization of the “shaped” plant.
If W1 and W2 are the pre- and post-compensators respectively, then the shaped plant
Gs is given by
Gs = W2 GW1 (9.74)
as shown in Figure 9.17. The controller K s is synthesized by solving the robust

Gs
Table 9.2: MATLAB function to generate the H1 controller in (9.70)
- W1 - G - W2
% Uses the Robust Control or Mu toolbox
function [Ac,Bc,Cc,Dc,gammin]=coprimeunc(a,b,c,d,gamrel)
%
% Finds the controller which optimally ‘‘robustifies’’ a given shaped plant
% in terms of tolerating maximum coprime uncertainty.
%
Ks 
% INPUTS:
% a,b,c,d: State-space description of (shaped) plant.
% gamrel: gamma used is gamrel*gammin (typical gamrel=1.1)
% Figure 9.17: The shaped plant and controller
% OUTPUTS:
stabilization problem of section 9.4.1 for the shaped plant G s with a normalized left
% Ac,Bc,Cc,Dc: "Robustifying" controller (positive feedback).

coprime factorization G s = Ms 1 Ns . The feedback controller for the plant G is


%

then K = W1 Ks W2 . The above procedure contains all the essential ingredients of


S=eye(size(d’*d))+d’*d;
R=eye(size(d*d’))+d*d’;
A1=a-b*inv(S)*d’*c; classical loop shaping, and can easily be implemented using the formulas already
Q1=c’*inv(R)*c;
R1=b*inv(S)*b’; presented and reliable algorithms in, for example, MATLAB.
We first present a simple SISO example, where W 2 = 1 and we select W1 to get
[x1,x2,eig,xerr,wellposed,X] = aresolv(A1,Q1,R1);
% Alt. Mu toolbox:
%[x1,x2, fail, reig min] = ric schr([A1 -R1; -Q1 -A1’]); X = x2/x1; acceptable disturbance rejection. We will afterwards present a systematic procedure
for selecting the weights W 1 and W2 .
[x1,x2,eig,xerr,wellposed,Z] = aresolv(A1’,R1,Q1);
% Alt. Mu toolbox:
%[x1, x2, fail, reig min] = ric schr([A1’ -Q1; -R1 -A1]); Z = x2/x1;

H
% Optimal gamma:
gammin=sqrt(1+max(eig(X*Z))) Example 9.3 Glover-McFarlane 1 loop shaping for the disturbance process.
% Use higher gamma..... Consider the disturbance process in (2.54) which was studied in detail in Chapter 2,
gam = gamrel*gammin;

G(s) = 200 1
; Gd (s) = 100
L=(1-gam*gam)*eye(size(X*Z)) + X*Z;

10s + 1 (0:05s + 1)2


F=-inv(S)*(d’*c+b’*X); (9.75)
Ac=a+b*F+gam*gam*inv(L’)*Z*c’*(c+d*F); 10s + 1
Bc=gam*gam*inv(L’)*Z*c’;
Cc=b’*X; We want as good disturbance rejection as possible, and the gain crossover frequency wc for
Dc=-d’;
the final design should be about 10 rad/s.
In Example 2.8 we argued that for acceptable disturbance rejection with minimum input
j j j j
usage, the loop shape (“shaped plant”) Gs = GW1 should be similar to Gd , so j j
W1 = G 1 Gd is desired. Then after neglecting the high-frequency dynamics in G(s)
j j j j
this yields an initial weight W1 = 0:5. To improve the performance at low frequencies we add
integral action, and we also add a phase-advance term s + 2 to reduce the slope for L from
2 at lower frequencies to about 1 at crossover. Finally, to make the response a little faster
we multiply the gain by a factor 2 to get the weight

W1 = s + 2 (9.76)
s
388 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 389

4
to that with K3 (see Figure 2.23), but it has a slightly smaller overshoot of 21% rather than
10
24%. To reduce this overshoot we would need to use a two degrees-of-freedom controller.
jGs j 1

jGs Ks j
H
2
Magnitude

10 0.5 Exercise 9.7 Design an 1 loop-shaping controller for the disturbance process in (9.75)
using the weight W1 in (9.76), i.e. generate plots corresponding to those in Figure 9.18. Next,
repeat the design with W1 = 2(s + 3)=s (which results in an initial Gs which would yield
0
10 0
closed-loop instability with Kc = 1). Compute the gain and phase margins and compare
10
−2 the disturbance and reference responses. In both cases find !c and use (2.37) to compute the
−2 0 2 −0.5
10 10 10 0 1 2 3 maximum delay that can be tolerated in the plant before instability arises.
Frequency [rad/s] Time [sec]
(a) Loop shapes jL(j!)j (b) Disturbance response
Skill is required in the selection of the weights (pre- and post-compensators W 1 and
Figure 9.18: Glover-McFarlane loop-shaping design for the disturbance process. Dashed line:
W2 ), but experience on real applications has shown that robust controllers can be
Initial “shaped” design, Gs . Solid line: “robustified” design, Gs Ks designed with relatively little effort by following a few simple rules. An excellent
illustration of this is given in the thesis of Hyde (1991) who worked with Glover
on the robust control of VSTOL (vertical and/or short take-off and landing) aircraft.
This yields a shaped plant Gs = GW1 with a gain crossover frequency of 13.7 rad/s, and the Their work culminated in a successful flight test of H 1 loop-shaping control laws
magnitude of Gs (j! ) is shown by the dashed line in Figure 9.18(a). The response to a unit implemented on a Harrier jump-jet research vehicle at the UK Defence Research
step in the disturbance response is shown by the dashed line in Figure 9.18(b), and, as may Agency (DRA), Bedford in 1993. The H 1 loop-shaping procedure has also been
expected, the response with the “controller” K = W1 is too oscillatory. extensively studied and worked on by Postlethwaite and Walker (1992) in their
We now “robustify” this design so that the shaped plant tolerates as much 1 coprime factor H work on advanced control of high performance helicopters, also for the UK DRA
uncertainty as possible. This may be done with the MATLAB -toolbox using the command at Bedford. This application is discussed in detail in the helicopter case study in
ncfsyn or with the MATLAB Robust Control toolbox using the function coprimeunc given Section 12.2. More recently, H 1 loop-shaping has been tested in flight on a Bell 205
in Table 9.2: fly-by-wire helipcopter; see Postlethwaite et al. (1999) and Smerlas et al. (2001).
[Ac,Bc,Cc,Dc,gammin]=coprimeunc(A,B,C,D,gamrel) Based on these, and other studies, it is recommended that the following systematic
Here the shaped plant Gs = GW1 has state-space matrices A; B; C and D, and the procedure is followed when using H 1 loop-shaping design:
function returns the “robustifying” positive feedback controller Ks with state-space matrices
Ac; Bc; Cc and Dc. In general, Ks has the same number of poles (states) as Gs . gamrel 1. Scale the plant outputs and inputs. This is very important for most design
is the value of relative to min , and was in our case selected as 1:1. The returned variable procedures and is sometimes forgotten. In general, scaling improves the
gammin ( min ) is the inverse of the magnitude of coprime uncertainty we can tolerate before conditioning of the design problem, it enables meaningful analysis to be made

we get instability. We want min 1 as small as possible, and we usually require that min is of the robustness properties of the feedback system in the frequency domain,
less than 4, corresponding to 25% allowed coprime uncertainty. and for loop-shaping it can simplify the selection of weights. There are a variety
By applying this to our example we get min = 2:34 and an overall controller K = W1 Ks of methods available including normalization with respect to the magnitude of
with 5 states (Gs , and thus Ks , has 4 states, and W1 has 1 state). The corresponding loop the maximum or average value of the signal in question. Scaling with respect to
j j
shape Gs Ks is shown by the solid line in Figure 9.18(a). We see that the change in the maximum values is important if the controllability analysis of earlier chapters is
loop shape is small, and we note with interest that the slope around crossover is somewhat to be used. However, if one is to go straight to a design the following variation has
gentler. This translates into better margins: the gain margin (GM) is improved from 1:62 (for proved useful in practice:
Gs ) to 3:48 (for Gs Ks ), and the phase margin (PM) is improved from 13:2Æ to 51:5Æ . The (a) The outputs are scaled such that equal magnitudes of cross-coupling into each
gain crossover frequency wc is reduced slightly from 13:7 to 10:3 rad/s. The corresponding
disturbance response is shown in Figure 9.18(b) and is seen to be much improved. of the outputs is equally undesirable.
(b) Each input is scaled by a given percentage (say 10%) of its expected range
Remark. The response with the controller K = W1 Ks is quite similar to that of the loop- of operation. That is, the inputs are scaled to reflect the relative actuator
shaping controller K3 (s) designed in Chapter 2 (see curves L3 and y3 in Figure 2.21). The capabilities. An example of this type of scaling is given in the aero-engine
response for reference tracking with controller K = W1 Ks is not shown; it is also very similar case study of Chapter 12.
390 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 391

2. Order the inputs and outputs so that the plant is as diagonal as possible. The incompatible with robust stability requirements. That the loop-shapes do not
relative gain array can be useful here. The purpose of this pseudo-diagonalization change much following robust stabilization if is small ( large), is justified
is to ease the design of the pre- and post-compensators which, for simplicity, will theoretically in McFarlane and Glover (1990).
be chosen to be diagonal. 7. Analyze the design and if all the specifications are not met make further
modifications to the weights.
Next, we discuss the selection of weights to obtain the shaped plant G s = W2 GW1 8. Implement the controller. The configuration shown in Figure 9.19 has been found
where useful when compared with the conventional set up in Figure 9.1. This is because
W1 = Wp Wa Wg
- Ks(0)W2(0) -- e us - q -y
(9.77)
r W1 u - G
6+
3. Select the elements of diagonal pre- and post-compensators W p and W2 so that
the singular values of W 2 GWp are desirable. This would normally mean high
gain at low frequencies, roll-off rates of approximately 20 dB/decade (a slope of Ks  ys W2 
about 1) at the desired bandwidth(s), with higher rates at high frequencies. Some
trial and error is involved here. W 2 is usually chosen as a constant, reflecting the
Figure 9.19: A practical implementation of the loop-shaping controller
relative importance of the outputs to be controlled and the other measurements
being fed back to the controller. For example, if there are feedback measurements
the references do not directly excite the dynamics of K s , which can result in large
of two outputs to be controlled and a velocity signal, then W 2 might be chosen
amounts of overshoot (classical derivative kick). The constant prefilter ensures a
to be diag[1, 1, 0.1], where 0:1 is in the velocity signal channel. W p contains the
steady-state gain of 1 between r and y , assuming integral action in W 1 or G.
dynamic shaping. Integral action, for low frequency performance; phase-advance
for reducing the roll-off rates at crossover; and phase-lag to increase the roll-off It has recently been shown (Glover et al., 2000) that the stability margin  max =
rates at high frequencies should all be placed in W p if desired. The weights should 1= min, here defined in terms of comprime factor perturbations, can be interpreted
be chosen so that no unstable hidden modes are created in G s . in terms of simultaneous gain and phase margins in all the plant’s inputs and outputs,
4. Optional: Align the singular values at a desired bandwidth using a further constant when the H1 loop-shaping weights W 1 andW2 are diagonal. The derivation of these
weight Wa cascaded with Wp . This is effectively a constant decoupler and margins is based on the gap metric (Gergiou and Smith, 1990) and the  -gap metric
should not be used if the plant is ill-conditioned in terms of large RGA elements (Vinnicombe, 1993) measures for uncertainty. A discussion of these mesures lies
(see Section 6.10.4). The align algorithm of Kouvaritakis (1974) which has outside the scope of this book, but the interested reader is referred to the excellent
been implemented in the MATLAB Multivariable Frequency-Domain Toolbox book on the subject by Vinnicombe (2001) and the paper by Glover et al. (2000).
is recommended. We will conclude this subsection with a summary of the advantages offered by the
5. Optional: Introduce an additional gain matrix W g cascaded with Wa to provide above H1 loop-shaping design procedure:
control over actuator usage. W g is diagonal and is adjusted so that actuator rate
limits are not exceeded for reference demands and typical disturbances on the  It is relatively easy to use, being based on classical loop-shaping ideas.
scaled plant outputs. This requires some trial and error.  There exists a closed formula for the H 1 optimal cost min , which in turn
6. Robustly stabilize the shaped plant G s = W2 GW1 , where W1 = Wp Wa Wg , corresponds to a maximum stability margin  max = 1= min.
using the formulas of the previous section. First, calculate the maximum stability  No -iteration is required in the solution.
margin max = 1= min. If the margin is too small,  max < 0:25, then go back  Except for special systems, ones with all-pass factors, there are no pole-zero
to step 4 and modify the weights. Otherwise, select > min , by about 10%, cancellations between the plant and controller (Sefton and Glover, 1990; Tsai
and synthesize a suboptimal controller using equation (9.70). There is usually et al., 1992). Pole-zeros cancellations are common in many H 1 control problems
no advantage to be gained by using the optimal controller. When  max > 0:25 and are a problem when the plant has lightly damped modes.
(respectively min < 4) the design is usually successful. In this case, at least
25% coprime factor uncertainty is allowed, and we also find that the shape of the Exercise 9.8 First a definition and some useful properties.
open-loop singular values will not have changed much after robust stabilization. Definition: A stable transfer function matrix H (s) is inner if H  H = I , and co-inner if
A small value of max indicates that the chosen singular value loop-shapes are HH  = I . The operator H  is defined as H  (s) = H T ( s).
392 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 393

H
Properties: The 1 norm is invariant under right multiplication by a co-inner function and required. In Hoyle et al. (1991) and Limebeer et al. (1993) a two degrees-of-freedom
under left multiplication by an inner function. extension of the Glover-McFarlane procedure was proposed to enhance the model-
Equipped with the above definition and properties, show for the shaped Gs = Ms 1 Ns , that matching properties of the closed-loop. With this the feedback part of the controller is
H
the matrix [ Ms Ns ] is co-inner and hence that the 1 loop-shaping cost function designed to meet robust stability and disturbance rejection requirements in a manner
 similar to the one degree-of-freedom loop-shaping design procedure except that only
Ks 
Gs Ks ) 1 Ms 1

a pre-compensator weight W is used. It is assumed that the measured outputs and
I (I
(9.78)
1 the outputs to be controlled are the same although this assumption can be removed as
is equivalent to shown later. An additional prefilter part of the controller is then introduced to force

Ks Ss Ks Ss Gs

the response of the closed-loop system to follow that of a specified model, T ref , often
(9.79)
Ss Ss Gs
1
called the reference model. Both parts of the controller are synthesized by solving
where Ss = (I Gs Ks ) 1 . This shows that the problem of finding a stabilizing controller to
the design problem illustrated in Figure 9.21.
minimise the 4-block cost function (9.79) has an exact solution. - Ns -+c- Ms 

Whilst it is highly desirable, from a computational point of view, to have exact
solutions for H1 optimization problems, such problems are rare. We are fortunate r - I q
-
K1 -+ c+qu-s
6 Ns c+ - Ms 1
-+ ? q y-+ c6-- I -e
K2 
that the above robust stabilization problem is also one of great practical significance.

9.4.3 Two degrees-of-freedom controllers - Tref


Many control design problems possess two degrees-of-freedom: on the one hand,
measurement or feedback signals and on the other, commands or references. Figure 9.21: Two degrees-of-freedom H1 loop-shaping design problem
Sometimes, one degree-of-freedom is left out of the design, and the controller is
 
driven (for example) by an error signal i.e. the difference between a command The design problem is to find the stabilizing controller K = K1 K2 for
and the output. But in cases where stringent time-domain specifications are set on the shaped plant G s = GW1 , with a normalized coprime factorization G s =
the output response, a one degree-of-freedom structure may not be sufficient. A M 1 Ns , which minimizes the H1 norm of the transfer function between the signals
 sT   
general two degrees-of-freedom feedback control scheme is depicted in Figure 9.20.
r T T and uTs yT eT T as defined in Figure 9.21. The problem is
The commands and feedbacks enter the controller separately and are independently
easily cast into the general control configuration and solved suboptimally using
processed.
standard methods and -iteration. We will show this later.
r - q -y
- Controller -
The control signal to the shaped plant u s is given by
G  
us = [ K1 K2 ] y (9.80)

where K1 is the prefilter, K2 is the feedback controller, is the scaled reference, and
y is the measured output. The purpose of the prefilter is to ensure that
k(I Gs K2 ) 1 Gs K1 Tref k1   2
Figure 9.20: General two degrees-of-freedom feedback control scheme
(9.81)

The H1 loop-shaping design procedure of McFarlane and Glover is a one degree- Tref is the desired closed-loop transfer function selected by the designer to introduce
of-freedom design, although as we showed in Figure 9.19 a simple constant prefilter time-domain specifications (desired response characteristics) into the design process;
can easily be implemented for steady-state accuracy. For many tracking problems, and  is a scalar parameter that the designer can increase to place more emphasis on
however, this will not be sufficient and a dynamic two degrees-of-freedom design is model matching in the optimization at the expense of robustness.
394 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 395

From Figure 9.21 and a little bit of algebra, we have that then P may be realized by

(Bs DsT + Zs CsT )Rs 1=2 Bs


2 3
2 3 2 3 As 0 0
us (I K2 Gs ) 1 K1 K2(I Gs K2 ) 1 Ms 1 
r
 6 0 A r B r 0 0 7
y 1
(I Gs K2) Gs K1 1 1 6 7
=4  (I Gs K2 ) Ms
4 5 5 6 0 0 0 0 I 7
2 (I Gs K2 ) 1 Gs K1 Tref (I Gs K2 ) 1 Ms 1  6 7
e 6 C
6 s 0 0 Rs1=2 Ds 7
7 (9.87)
(9.82) 6
6 Cs  2 C  2 D R 1=2 D
7
In the optimization, the H 1 norm of this block matrix transfer function is minimized. s 7
6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - s-
r r 7
4 0 0 I 0 0 5
Cs 0 0 Rs1=2 Ds
Notice that the (1,2) and (2,2) blocks taken together are associated with robust
stabilization and the (3,1) block corresponds to model-matching. In addition, the and used in standard H 1 algorithms (Doyle et al., 1989) to synthesize the controller
(1,1) and (2,1) blocks help to limit actuator usage and the (3,3) block is linked K . Note that Rs = I + Ds DsT , and Zs is the unique positive definite solution to the
to the performance of the loop. For  = 0, the problem reverts to minimizing generalized Riccati equation (9.67) for G s . MATLAB commands to synthesize the
 T
the H1 norm of the transfer function between  and uTs y T , namely, the controller are given in Table 9.3.
robust stabilization problem, and the two degrees-of-freedom controller reduces to
an ordinary H 1 loop-shaping controller. H
Remark 1 We stress that we here aim to minimize the 1 norm of the entire transfer
H
function in (9.82). An alternative problem would be to minimize the 1 norm form r to e
k k
subject to an upper bound on [ Ns Ms ] 1 . This problem would involve the structured
To put the two degrees-of-freedom design problem into the standard control singular value, and the optimal controller could be obtained from solving a series of 1 H
configuration, we can define a generalized plant P by optimization problems using DK -iteration; see Section 8.12.
Remark 2 Extra measurements. In some cases, a designer has more plant outputs available
2
us 3
as measurements than can (or even need) to be controlled. These extra measurements can often
2
r 3
make the design problem easier (e.g. velocity feedback) and therefore when beneficial should
6 y 7   be used by the feedback controller K2 . This can be accommodated in the two degrees-of-
6 7
6 e 7 = P11 P12 4  5 (9.83) freedom design procedure by introducing an output selection matrix Wo . This matrix selects
6 ---7
4 5 P21 P22 ---
from the output measurements y only those which are to be controlled and hence included
us
y in the model-matching part of the optimization. In Figure 9.21, Wo is introduced between y
and the summing junction. In the optimization problem, only the equation for the error e is
2 3 1=2
0 0 I affected, and in the realization (9.87) for P one simply replaces Cs by Wo Cs and Rs
6 0 M s
1 Gs 7 2 r 3 1 = 2
by Wo Rs in the fifth row. For example, if there are four feedback measurements and only
2 T - - - M 1
6 7
s- - - -G 4  5
6 - - - - -ref
= 6 s- 7 (9.84) the first three are to be controlled then
- - - - - 7 ---
4 I 0 0 5 us 2
1 0 0 0
3
0 Ms 1 Gs Wo = 4 0 1 0 0 5 (9.88)
0 0 1 0
Further, if the shaped plant G s and the desired stable closed-loop transfer function Remark 3 Steady-state gain matching. The command signals r can be scaled by a constant
Tref have the following state-space realizations matrix Wi to make the closed-loop transfer function from r to the controlled outputs Wo y
match the desired model Tref exactly at steady-state. This is not guaranteed by the optimization
 
1
which aims to minimize the -norm of the error. The required scaling is given by
As Bs 4 W (I Gs (0)K2 (0)) 1 Gs (0)K1 (0) 1 Tref (0)
s 
Gs = Cs Ds (9.85) Wi = o (9.89)
 
Tref =s Ar Br (9.86)
Recall that Wo = I if there are no extra feedback
 measurements
 beyond those that are to be
Cr Dr controlled. The resulting controller is K = K1 Wi K2 .
396 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 397

We will conclude this subsection with a summary of the main steps required to
synthesize a two degrees-of-freedom H 1 loop-shaping controller.
1. Design a one degree-of-freedom H 1 loop-shaping controller using the procedure
of Subsection 9.4.2, but without a post-compensator weight W 2 . Hence W1 .
2. Select a desired closed-loop transfer function T ref between the commands and
Table 9.3: MATLAB commands to synthesize the H1 2-DOF controller in (9.80) controlled outputs.
% Uses MATLAB mu toolbox 3. Set the scalar parameter  to a small value greater than 1; something in the range
%
% INPUTS: Shaped plant Gs 1 to 3 will usually suffice.
% Reference model Tref 4. For the shaped plant G s = GW1 , the desired response T ref , and the scalar
%
% OUTPUT: Two degrees-of-freedom controller K parameter , solve the standard H 1 optimization
 problem defined by P in (9.87)
% to a specified tolerance to get K = K1 K2 . Remember to include W o in
% Coprime factorization of Gs
% the problem formulation if extra feedback measurements are to be used.
[As,Bs,Cs,Ds] = unpck(Gs); 5. Replace the prefilter K 1 , by K1 Wi to give exact model-matching at steady-state.
[Ar,Br,Cr,Dr] = unpck(Tref);
[nr,nr] = size(Ar); [lr,mr] = size(Dr); 6. Analyse and, if required, redesign making adjustments to  and possibly W 1 and
[ns,ns] = size(As); [ls,ms] = size(Ds); Tref .
Rs = eye(ls)+Ds*Ds.’; Ss = eye(ms)+Ds’*Ds;
A1 = (As - Bs*inv(Ss)*Ds’*Cs);
R1 = Cs’*inv(Rs)*Cs; Q1 = Bs*inv(Ss)*Bs’; The final two degrees-of-freedom H1 loop-shaping controller is illustrated in
[Z1, Z2, fail, reig min] = ric schr([A1’ -R1; -Q1 -A1]); Zs = Z2/Z1; Figure 9.22
% Alt. Robust Control toolbox:

-+ d+ -
% [Z1,Z2,eig,zerr,wellposed,Zs] = aresolv(A1’,Q1,R1);
%
r - Wi - K1 W1 - G -y
6
% Choose rho=1 (Designer’s choice) and
% build the generalized plant P in (9.87)
%


rho=1;
A = daug(As,Ar);
B1 = [zeros(ns,mr) ((Bs*Ds’)+(Zs*Cs’))*inv(sqrt(Rs));
Controller
K2
Br zeros(nr,ls)];
B2 = [Bs;zeros(nr,ms)];
C1 = [zeros(ms,ns+nr);Cs zeros(ls,nr);rho*Cs -rho*rho*Cr];

H1 loop-shaping controller
C2 = [zeros(mr,ns+nr);Cs zeros(ls,nr)];
D11 = [zeros(ms,mr+ls);zeros(ls,mr) sqrt(Rs);-rho*rho*Dr rho*sqrt(Rs)]; Figure 9.22: Two degrees-of-freedom
D12 = [eye(ms);Ds;rho*Ds];
D21 = [rho*eye(mr) zeros(mr,ls);zeros(ls,mr) sqrt(Rs)];
D22 = [zeros(mr,ms);Ds];
B = [B1 B2]; C = [C1;C2]; D = [D11 D12;D21 D22];

9.4.4 Observer-based structure for H1 loop-shaping controllers


P = pck(A,B,C,D);
% Alternative: Use sysic to generate P from Figure 9.21
% but may get extra states, since states from Gs may enter twice.
%
% Gamma iterations to obtain H-infinity controller H1 designs exhibit a separation structure in the controller. As seen from (9.50) and
% (9.51) the controller has an observer/state feedback structure, but the observer is non-
[l1,m2] = size(D12); [l2,m1] = size(D21);
nmeas = l2; ncon = m2; gmin = 1; gmax = 5; gtol = 0.01; standard, having a disturbance term (a “worst” disturbance) entering the observer
[K, Gnclp, gam] = hinfsyn(P, nmeas, ncon, gmin, gmax, gtol); state equations. For H 1 loop-shaping controllers, whether of the one or two degrees-
of-freedom variety, this extra term is not present. The clear structure of H 1 loop-
% Alt. Robust toolbox, use command: hinfopt
%
shaping controllers has several advantages:
 It is helpful in describing a controller’s function, especially to one’s managers or
clients who may not be familiar with advanced control.
 It lends itself to implementation in a gain-scheduled scheme, as shown by Hyde
and Glover (1993).
398 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 399

 r - Wi (v) -+ d+ us q - W1(v) u- G q -y
6
It offers computational savings in digital implementations and some multi-mode
switching schemes, as shown in (Samar, 1995).
?
W2 (v)
We will present the controller equations, for both one and two degrees-of-freedom
H1 loop-shaping designs. For simplicity we will assume the shaped plant is strictly ? ys
d?-+
proper, with a stabilizable and detectable state-space realization Bs (v) Hs (v) 
6
-+ d?++ - R -q Cs (v)
 
Gs =s As Bs
Cs 0 (9.90)
6
In which case, as shown in (Sefton and Glover, 1990), the single degree-of-freedom As (v) q
H1 loop-shaping controller can be realized as an observer for the shaped plant plus
a state-feedback control law. The equations are Ks (v) 

xb_ s = As xbs + Hs (Cs xbs ys ) + Bs us (9.91)


Figure 9.23: An implementation of an H1 loop-shaping controller for use when gain
us = Ks xbs (9.92) scheduling against a variable v

where x
bs is the observer state, u s and ys are respectively the input and output of the
shaped plant, and in which case the generalized plant P (s) in (9.87) simplifies to
2 3
As 0 0 Zs CsT Bs
Hs = ZsCsT (9.93) 6 0 Ar Br 0 0 7 2 3
2Xs Zs 1 Xs
  6 7
Ks = BsT I 2I (9.94) 6 0 0 0 0 I 7
4 4 CA DB1 DB2
P =s 6
6 Cs 0
2 r 0
0 I 0 7
7 = 1 11 12 5 (9.97)
6 Cs 7
6 - - - - - - - -- C I- - - - - 0- - 7 C2 D21 D22
where Zs and Xs are the appropriate solutions to the generalized algebraic Riccati 4 0 0
- - - - -
I
- - - - -
0 0 5
equations for G s given in (9.67) and (9.68). Cs 0 0 I 0
In Figure 9.23, an implementation of an observer-based H 1 loop-shaping controller  
Walker then shows that a stabilizing controller K = K1 K2 satisfying
is shown in block diagram form. The same structure was used by Hyde and Glover
(1993) in their VSTOL design which was scheduled as a function of aircraft forward
kFl (P; K )k1 < exists if, and only if,
p
speed. (i) > 1 + 2 , and
Walker (1996) has shown that the two degrees-of-freedom H 1 loop-shaping (ii) X1  0 is a solution to the algebraic Riccati equation
controller also has an observer-based structure. He considers a stabilizable and
detectable plant
X1 A + AT X1 + C1T C1 F T (D T JD )F = 0 (9.98)
 

As Bs

such that Re i A + B F < 0 8i, where
Gs =s Cs 0 (9.95)
F = (D T JD ) 1 (D T JC
 + B T X1 ) (9.99)
 
and a desired closed-loop transfer function D = DI 11 D012 (9.100)
w
   
Ar Br I 0
Tref =s Cr 0 (9.96) J = 0 z
2 Iw (9.101)
400 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 401

where Iz and Iw are unit matrices of dimensions equal to those of the error a bilinear transformation from the s-domain to the z -domain, but there can be
signal z , and exogenous input w, respectively, in the standard configuration. advantages in being able to design directly in discrete-time. In Samar (1995) and
Notice that this H1 controller depends on the solution to just one algebraic Riccati
Postlethwaite et al. (1995), observer-based state-space equations are derived directly
in discrete-time for the two degrees-of-freedom H 1 loop-shaping controller and
equation, not two. This is a characteristic of the two degrees-of-freedom H 1 loop- successfully applied to an aero engine. This application was on a real engine, a
shaping controller (Hoyle et al., 1991). Spey engine, which is a Rolls Royce 2-spool reheated turbofan housed at the UK
Walker further shows that if (i) and (ii) are satisfied, then a stabilizing controller Defence Research Agency, Pyestock. As this was a real application, a number of
K (s) satisfying kFl (P; K )k1 < has the following equations: important implementation issues needed to be addressed. Although these are outside
xb_ s = As xbs + Hs (Cs xbs ys ) + Bs us
the general scope of this book, they will be briefly mentioned now.
(9.102)
x_ r = Ar xr + Br r (9.103) Anti-windup. In H1 loop-shaping the pre-compensator weight W 1 would normally
us = BsT X111 xbs BsT X112 xr (9.104)
include integral action in order to reject low frequency disturbances acting on the
system. However, in the case of actuator saturation the integrators continue to
where X111 and X112 are elements of integrate their input and hence cause windup problems. An anti-windup scheme is
  therefore required on the weighting function W 1 . The approach we recommend is to
X1 = X 111 X112
X121 X122 (9.105) implement the weight W 1 in its self-conditioned or Hanus form. Let the weight W 1
have a realization
 
which has been partitioned conformally with W1 =s Aw Bw (9.108)
  Cw Dw
A= As 0 (9.106)
0 Ar and let u be the input to the plant actuators and u s the input to the shaped plant.
and Hs is as in (9.93). Then u = W1 us . When implemented in Hanus form, the expression for u becomes

The structure of this controller is shown in Figure 9.24, where the state-feedback
gain matrices Fs and Fr are defined by
output from

+ c-
shaped plant
4 BT X 4 BT X Hs ys
Fs = s 111 Fr = s 112 (9.107) 6ybs
The controller consists of a state observer for the shaped plant G s , a model of the Cs
desired closed-loop transfer function T ref (without Cr ) and a state-feedback control
law that uses both the observer and reference-model states. - Bs c++ -
-+ ? R
qq6x-s Fs
As in the one degree-of-freedom case, this observer-based structure is useful in gain- 6 b
scheduling. The reference-model part of the controller is also nice because it is often input to As 
the same at different design operating points and so may not need to be changed at all
us
shaped plant
q ?c--
during a scheduled operation of the controller. Likewise, parts of the observer may
not change; for example, if the weight W 1 (s) is the same at all the design operating
- -+c+ - R
q
xr- 6
Br Fr
points. Therefore whilst the structure of the controller is comforting in the familiarity
6
of its parts, it also has some significant advantages when it comes to implementation.
Ar 
commands
r
9.4.5 Implementation issues
Discrete-time controllers. For implementation purposes, discrete-time controllers
are usually required. These can be obtained from a continuous-time design using Figure 9.24: Structure of the two degrees-of-freedom H1 loop-shaping controller
402 MULTIVARIABLE FEEDBACK CONTROL CONTROLLER DESIGN 403

(Hanus et al., 1987) optimal control also has a feed-through term from r which gives a reference model
   that can be inverted. Consequently, in the aero-engine example the reference models
u= Aw Bw Dw 1 Cw 0 Bw Dw 1 us (9.109) for the three controllers were each conditioned so that the inputs to the shaped plant
Cw Dw 0 ua from the off-line controller followed the actual shaped plant input u as given by the
on-line controller.
where ua is the actual plant input, that is the measurement at the output of the
actuators which therefore contains information about possible actuator saturation. Satisfactory solutions to implementation issues such as those discussed above are
The situation is illustrated in Figure 9.25, where the actuators are each modelled by crucial if advanced control methods are to gain wider acceptance in industry. We
a unit gain and a saturation. The Hanus form prevents windup by keeping the states have tried to demonstrate here that the observer-based structure of the H 1 loop-
of W1 consistent with the actual plant input at all times. When there is no saturation shaping controller is helpful in this regard.
ua = u, the dynamics of W 1 remain unaffected and (9.109) simplifies to (9.108).
But when ua 6= u the dynamics are inverted and driven by u a so that the states
remain consistent with the actual plant input u a . Notice that such an implementation
requires W1 to be invertible and minimum phase.
9.5 Conclusion
actuator We have described several methods and techniques for controller design, but our
saturation
us - Self- emphasis has been on H 1 loop shaping which is easy to apply and in our experience
u - 6- q -
ua
G - works very well in practice. It combines classical loop-shaping ideas (familiar to
- conditioned
W1 most practising engineers) with an effective method for robustly stabilizing the
feedback loop. For complex problems, such as unstable plants with multiple gain
crossover frequencies, it may not be easy to decide on a desired loop shape. In which
case, we would suggest doing an initial LQG design (with simple weights) and using
the resulting loop shape as a reasonable one to aim for in H 1 loop shaping.
Figure 9.25: Self-conditioned weight W1 An alternative to H 1 loop shaping is a standard H 1 design with a “stacked”
cost function such as in S/KS mixed-sensitivity optimization. In this approach, H 1
optimization is used to shape two or sometimes three closed-loop transfer functions.
However, with more functions the shaping becomes increasingly difficult for the
Exercise 9.9 Show that the Hanus form of the weight W1 in (9.109) simplifies to (9.108)
when there is no saturation i.e. when ua = u.
designer.
In other design situations where there are several performance objectives (e.g. on
Bumpless transfer. In the aero-engine application, a multi-mode switched signals, model following and model uncertainty), it may be more appropriate to
controller was designed. This consisted of three controllers, each designed for a follow a signal-based H 2 or H1 approach. But again the problem formulations
different set of engine output variables, which were switched between depending become so complex that the designer has little direct influence on the design.
on the most significant outputs at any given time. To ensure smooth transition from After a design, the resulting controller should be analyzed with respect to robustness
one controller to another - bumpless transfer - it was found useful to condition the and tested by nonlinear simulation. For the former, we recommend -analysis as
reference models and the observers in each of the controllers. Thus when on-line, the discussed in Chapter 8, and if the design is not robust, then the weights will need
observer state evolves according to an equation of the form (9.102) but when off-line modifying in a redesign. Sometimes one might consider synthesizing a -optimal
the state equation becomes controller, but this complexity is rarely necessary in practice. Moreover, one should
be careful about combining controller synthesis and analysis into a single step. The
xb_ s = As xbs + Hs (Cs xbs ys ) + Bs uas (9.110) following quote from Rosenbrock (1974) illustrates the dilemma:
where uas is the actual input to the shaped plant governed by the on-line controller. In synthesis the designer specifies in detail the properties which his
The reference model with state feedback given by (9.103) and (9.104) is not system must have, to the point where there is only one possible solution.
invertible and therefore cannot be self-conditioned. However, in discrete-time the ... The act of specifying the requirements in detail implies the final
404 MULTIVARIABLE FEEDBACK CONTROL

solution, yet has to be done in ignorance of this solution, which can then
turn out to be unsuitable in ways that were not foreseen.

10
Therefore, control system design usually proceeds iteratively through the steps
of modelling, control structure design, controllability analysis, performance and
robustness weights selection, controller synthesis, control system analysis and
nonlinear simulation. Rosenbrock (1974) makes the following observation:
Solutions are constrained by so many requirements that it is virtually
CONTROL STRUCTURE
DESIGN
impossible to list them all. The designer finds himself threading a maze of
such requirements, attempting to reconcile conflicting demands of cost,
performance, easy maintenance, and so on. A good design usually has
strong aesthetic appeal to those who are competent in the subject.

Most (if not all) available control theories assume that a control structure is given at the outset.
They therefore fail to answer some basic questions which a control engineer regularly meets
in practice. Which variables should be controlled, which variables should be measured, which
inputs should be manipulated, and which links should be made between them? The objective
of this chapter is to describe the main issues involved in control structure design and to present
some of the available quantitative methods, for example, for decentralized control.

10.1 Introduction

Control structure design was considered by Foss (1973) in his paper entitled
“Critique of process control theory” where he concluded by challenging the control
theoreticians of the day to close the gap between theory and applications in this
important area. Later Morari et al. (1980) presented an overview of control structure
design, hierarchical control and multilevel optimization in their paper “Studies in the
synthesis of control structure for chemical processes”, but the gap still remained, and
still does to some extent today.
Control structure design is clearly important in the chemical process industry because
of the complexity of these plants, but the same issues are relevant in most other areas
of control where we have large-scale systems. For example, in the late 1980s Carl
Nett (Nett, 1989; Nett and Minto, 1989) gave a number of lectures based on his
experience on aero-engine control at General Electric, under the title “A quantitative
approach to the selection and partitioning of measurements and manipulations for
the control of complex systems”. He noted that increases in controller complexity
unnecessarily outpaces increases in plant complexity, and that the objective should
be to
406 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 407

... minimize control system complexity subject to the achievement of refers only to the structuring (decomposition) of the controller K itself (also
accuracy specifications in the face of uncertainty. called the measurement/manipulation partitioning or input/output pairing). Control
configuration issues are discussed in more detail in Section 10.6.
(weighted) (weighted) The selection of controlled outputs, manipulations and measurements (tasks 1 and 2

- -z
exogenous inputs exogenous outputs combined) is sometimes called input/output selection.
w
- P Ideally, the tasks involved in designing a complete control system are performed
sequentially; first a “top-down” selection of controlled outputs, measurements and
inputs (with little regard to the configuration of the controller K ) and then a “bottom-
u v up” design of the control system (in which the selection of the control configuration
control signals sensed outputs
K  is the most important decision). However, in practice the tasks are closely related
in that one decision directly influences the others, so the procedure may involve
iteration.
One important reason for decomposing the control system into a specific control
Figure 10.1: General control configuration
configuration is that it may allow for simple tuning of the subcontrollers without
In Chapter 3.8 we considered the general control problem formulation in Figure 10.1, the need for a detailed plant model describing the dynamics and interactions in the
and stated that the controller design problem is to process. Multivariable centralized controllers may always outperform decomposed
(decentralized) controllers, but this performance gain must be traded off against the
 Find a controller K which based on the information in v , generates a control signal cost of obtaining and maintaining a sufficiently detailed plant model.
u which counteracts the influence of w on z , thereby minimizing the closed-loop The number of possible control structures shows a combinatorial growth, so for
norm from w to z . most systems a careful evaluation of all alternative control structures is impractical.
However, if we go back to Chapter 1 (page 1), then we see that this is only Step 7 in Fortunately, we can often from physical insight obtain a reasonable choice of
the overall process of designing a control system. In this chapter we are concerned controlled outputs, measurements and manipulated inputs. In other cases, simple
with the structural decisions (Steps 4, 5, 6 and 7) associated with the following tasks controllability measures as presented in Chapters 5 and 6 may be used for quickly
of control structure design: evaluating or screening alternative control structures.
Some discussion on control structure design in the process industry is given by
1. The selection of controlled outputs (a set of variables which are to be controlled Morari (1982), Shinskey (1988), Stephanopoulos (1984) and Balchen and Mumme
to achieve a set of specific objectives; see sections 10.2 and 10.3): What are the (1988). A survey on control structure design is given by van de Wal and de Jager
variables z in Figure 10.1? (1995). A review of control structure design in the chemical process industry
2. The selection of manipulations and measurements (sets of variables which can be (plantwide control) is given by Larsson and Skogestad (2000). The reader is
manipulated and measured for control purposes; see section 10.4): What are the referred to Chapter 5 (page 160) for an overview of the literature on input-output
variable sets u and v in Figure 10.1? controllability analysis.
3. The selection of a control configuration (a structure interconnecting measure-
ments/commands and manipulated variables; see sections 10.6, 10.7 and 10.8):
What is the structure of K in Figure 10.1, that is, how should we “pair” the vari-
able sets u and v ? 10.2 Optimization and control
4. The selection of a controller type (control law specification, e.g. PID-controller,
decoupler, LQG, etc): What algorithm is used for K in Figure 10.1?
In Sections 10.2 and 10.3 we are concerned with the selection of controlled variables
The distinction between the words control structure and control configuration may (outputs). These are the variables z in Figure 10.1, but we will in these two sections
seem minor, but note that it is significant within the context of this book. The call them y .
control structure (or control strategy) refers to all structural decisions included The selection of controlled outputs involves selecting the variables y to be controlled
in the design of a control system. On the other hand, the control configuration at given reference values, y  r. Here the reference value r is set at some higher layer
408 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 409

in the control hierarchy. Thus, the selection of controlled outputs (for the control sending reference values (setpoints) to the layer below, and the lower layer reporting
layer) is usually intimately related to the hierarchical structuring of the control back any problems in achieving this, see Figure 10.3(b).
system which is often divided into two layers: The optimization tends to be performed open-loop with limited use of feedback.
 optimization layer — computes the desired reference commands r (outside the
On the other hand, the control layer is mainly based on feedback information. The
optimization is often based on nonlinear steady-state models, whereas we often use
scope of this book)
 control layer — implements these commands to achieve y  r (the focus of this
linear dynamic models in the control layer (as we do throughout the book).
book). There is usually a time scale separation with faster lower layers as indicated in
Figure 10.2. This means that the setpoints, as viewed from a given layer in the
Additional layers are possible, as is illustrated in Figure 10.2 which shows a typical hierarchy, are updated only periodically. Between these updates, when the setpoints
are constant, it is important that the system remains reasonably close to its optimum.
Scheduling This observation is the basis for Section 10.3 which deals with selecting outputs for
(weeks) the control layer.
From a theoretical point of view, the optimal coordination of the inputs and thus
? the optimal performance is obtained with a centralized optimizing controller, which
combines the two layers of optimization and control; see Figure 10.3(c). All control
Site-wide optimization
(day) actions in such an ideal control system would be perfectly coordinated and the
A control system would use on-line dynamic optimization based on a nonlinear
AA dynamic model of the complete plant instead of, for example, infrequent steady-state
?A optimization. However, this solution is normally not used for a number of reasons;
U including the cost of modelling, the difficulty of controller design, maintenance and
modification, robustness problems, operator acceptance, and the lack of computing
Local optimization
power.


(hour)




As noted above we may also decompose the control layer, and from now on when we



talk about control configurations, hierarchical decomposition and decentralization,

?
Supervisory
we generally refer to the control layer.
Mesarovic (1970) reviews some ideas related to on-line multi-layer structures
control applied to large-scale industrial complexes. However, according to Lunze (1992),

9CC
(minutes) multilayer structures, although often used in practice, lack a formal analytical
Control
+ C treatment. Nevertheless, in the next section we provide some ideas on how to select
 C
layer
objectives (controlled outputs) for the control layer, such that the overall goal is
W
Regulatory
satisfied.

control Remark 1 In accordance with Lunze (1992) we have purposely used the word layer rather
(seconds) than level for the hierarchical decomposition of the control system. The difference is that in
a multilevel system all units contribute to satisfying the same goal, whereas in a multilayer
system the different units have different objectives (which preferably contribute to the overall
Figure 10.2: Typical control system hierarchy in a chemical plant goal). Multilevel systems have been studied in connection with the solution of optimization
problems.

control hierarchy for a complete chemical plant. Here the control layer is subdivided Remark 2 The tasks within any layer can be performed by humans (e.g. manual control), and
the interaction and task sharing between the automatic control system and the human operators
into two layers: supervisory control (“advanced control”) and regulatory control
are very important in most cases, e.g. an aircraft pilot. However, these issues are outside the
(“base control”). We have also included a scheduling layer above the optimization. In
scope of this book.
general, the information flow in such a control hierarchy is based on the higher layer
410 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 411
Objective Objective Objective
to keep the temperature y at its predetermined value T .
? ? ?

The (a) open-loop and (b) closed-loop implementations of the cake baking process are
Optimizing illustrated in Figure 10.3. In (b) the “optimizer” is the cook book which has a pre-computed
Optimizer Optimizer
Controller y table of the optimal temperature profile. The reference value r for temperature is then sent
u
? + ?d-
r y u
? down to the control layer which consists of a simple feedback controller (the thermostat).

G
? G Recall that the title of this section is selection of controlled outputs. In the cake
baking process we select oven temperature as the controlled output y in the control
?
y
Controller
layer. It is interesting to note that controlling the oven temperature in itself has no
u
? direct relation to the overall goal of making a well-baked cake. So why do we select
the oven temperature as a controlled output? We now want to outline an approach for
G answering questions of this kind.
In the following, we let y denote the selected controlled outputs in the control layer.
Note that this may also include directly using the inputs (open-loop implementation)
by selecting y = u. Two distinct questions arise:
(a) (b) (c)
Figure 10.3: Alternative structures for optimization and control. (a) Open-loop optimization. 1. What variables y should be selected as the controlled variables?
(b) Closed-loop implementation with separate control layer. (c) Integrated optimization and 2. What is the optimal reference value (y opt ) for these variables?
control.
The second problem is one of optimization and is extensively studied (but not in
this book). Here we want to gain some insight into the first problem. We make the
10.3 Selection of controlled outputs following assumptions:
(a) The overall goal can be quantified in terms of a scalar cost function J which
A controlled output is an output variable (usually measured) with an associated we want to minimize.
control objective (usually a reference value). In many cases, it is clear from a physical (b) For a given disturbance d, there exists an optimal value u opt (d) and
understanding of the process what the controlled outputs should be. For example, if corresponding value y opt (d) which minimizes the cost function J .
we consider heating or cooling a room, then we should select room temperature as the (c) The reference values r for the controlled outputs y should be constant, i.e. r
controlled output y . In other cases it is less obvious because each control objective should be independent of the disturbances d. Typically, some average value is
may not be associated with a measured output variable. Then the controlled outputs selected, e.g. r = yopt (d)
y are selected to achieve the overall system goal, and may not appear to be important
variables in themselves. For example, in the cake baking process we may assign to each cake a number P
on a scale from 0 to 10, based on cake quality. A perfectly baked cake achieves
Example 10.1 Cake baking. To get an idea of the issues involved in output selection let P = 10, and an acceptably baked cake achieves P > 6 (a completely burned cake
us consider the process of baking a cake. The overall goal is to make a cake which is well may correspond to P = 1). In another case P could be the operating profit. In both
baked inside and with a nice exterior. The manipulated input for achieving this is the heat cases we can select J = P , and the overall goal of the control system is then to
input, u = Q, (and we will assume that the duration of the baking is fixed, e.g. at 15 minutes). minimize J .
Now, if we had never baked a cake before, and if we were to construct the stove ourselves, we
might consider directly manipulating the heat input to the stove, possibly with a watt-meter The system behaviour is a function of the independent variables u and d, so we may
measurement. However, this open-loop implementation would not work well, as the optimal write J = J (u; d). For a given disturbance d the optimal value of the cost function
heat input depends strongly on the particular oven we use, and the operation is also sensitive is
to disturbances, for example, from opening the oven door or whatever else might be in the Jopt (d) , J (uopt ; d) = min
u
J (u; d) (10.1)
oven. In shortm the open-loop implementation is sensitive to uncertainty. An effective way of
reducing the uncertainty is to use feedback. Therefore, in practice we look up the optimal oven Ideally, we want u = u opt . However, this will not be achieved in practice, and we
temperature in a cook book, and use a closed-loop implementation where a thermostat is used select controlled outputs y such that:
412 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 413

 The input u (generated by feedback to achieve y  r) should be close to the (e) The optimization problem is unconstrained. If it is optimal to keep some
optimal input u opt (d). variable at a constraint, then we assume that this is implemented and consider
the remaining unconstrained problem.
Note that we have assumed that r is independent of d. (f) The dynamics of the problem can be neglected, that is, we consider the steady-
What happens if u 6= uopt , e.g. due to a disturbance? Obviously, we then have a loss state control and optimization.
which can be quantified by L = J J opt , and a reasonable objective for selecting For a fixed d we may then express J (u; d) in terms of a Taylor series expansion in u
controlled outputs y is to minimize some norm of the loss, for example, the worst- around the optimal point. We get
case loss
 
@J T
Worst case loss :  , max j J (u; d) J (uopt ; d) j J (u; d) = Jopt (d) + (u uopt (d)) +
d2D | {z }
(10.2) @u opt
L | {z }
=0 
Here D is the set of possible disturbances. As “disturbances” we should also include 1 @2J
changes in operating point and model uncertainty. 2
(u uopt (d))T
@u2 opt
(u uopt(d)) +  (10.3)

We will neglect terms of third order and higher (which assumes that we are
10.3.1 Selecting controlled outputs: Direct evaluation of cost reasonably close to the optimum). The second term on the right hand side in (10.3)
is zero at the optimal point for an unconstrained problem.
The “brute force” approach for selecting controlled variables is to evaluate the Equation (10.3) quantifies how u u opt affects the cost function. Next, to study how
loss for alternative sets of controlled variables. Specically, by solving the nonlinear this relates to output selection we use a linearized model of the plant, which for a
equations, we evaluate directly the cost function J for various disturbances d and fixed d becomes y yopt = G(u uopt ) where G is the steady-state gain matrix. If
control errors e, assuming y = r + e where r is kept constant. The set of controlled G is invertible we then get
outputs with smallest worst-case or average value of J is then preferred. This
approach is may be time consuming because the solution of the nonlinear equations u uopt = G 1 (y yopt) (10.4)
must be repeated for each candidate set of controlled outputs. y
(If G is not invertible we may use the pseudo-inverse G which results in the smallest
If we with constant references (setpoints) r can achieve an acceptable loss, then this possible ku uopt k2 for a given y y opt .) We get
set of controlled variables is said to be self-optimizing. Here r is usually selected as  2 
1  @J
the optimal value for the nominal disturbance, but this may not be the best choice J Jopt  G 1 (y yopt ) T G 1 (y yopt)
@u2 opt
(10.5)
and its value may also be found by optimization (“optimal back-off”). 2
The special case of measurement selection for indirect control is covered on where the term (@ 2 J=@u2 )opt is independent of y . Obviously, we would like to select
page 439. the controlled outputs such that y y opt is zero. However, this is not possible in
practice. To see this, write

10.3.2 Selecting controlled outputs: Linear analysis y yopt = y r + r yopt = e + eopt (10.6)

We here use a linear analysis of the loss function. This results in the useful minimum First, we have an optimization error e opt (d) , r yopt (d), because the algorithm
singular value rule. However, note that this is a local analysis, which may be (e.g. a cook book) pre-computes a desired r which is different from the optimal
misleading, for example, if the optimum point of operation is close to infeasibility. yopt (d). In addition, we have a control error e = y r because the control
layer is not perfect, for example due to poor control performance or an incorrect
Consider the loss L = J (u; d) Jopt (d) (10.2), where d is a fixed (generally non- measurement or estimate (steady-state bias) of y . If the control itself is perfect then
zero) disturbance. We make the following additional assumptions: e = n (measurement noise). In most cases the errors e and e opt (d) can be assumed
(d) The cost function J is smooth, or more precisely twice differentiable. independent.
414 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 415

Example 10.1 Cake baking, continued. Let us return to our initial question: Why select 3. Scale the candidate outputs such that for each output the sum of the magnitudes
the oven temperature as a controlled output? We have two alternatives: a closed-loop of vi and the control error (e i , including measurement noise n i ) is similar (e.g.
implementation with y = T (the oven temperature) and an open-loop implementation with jvi j + jei j = 1).
y = u = Q (the heat input). From experience, we know that the optimal oven temperature 4. Scale the inputs such that a unit deviation in each input from its optimal value has

Topt is largely independent of disturbances and is almost the same for any oven. This means the same effect on the cost function J (i.e. such that @ 2 J=@u2 opt is close to a
that we may always specify the same oven temperature, say Tr = 190Æ C, as obtained from the
cook book. On the other hand, the optimal heat input Qopt depends strongly on the heat loss,
constant times a unitary matrix).
the size of the oven, etc, and may vary between, say 100W and 5000W. A cook book would 5. Select as candidates those sets of controlled outputs which correspond to a large
then need to list a different value of Qr for each kind of oven and would in addition need some value of  (G). G is the transfer function for the effect of the scaled inputs on the
correction factor depending on the room temperature, how often the oven door is opened, etc. scaled outputs.
Therefore, we find that it is much easier to keep eopt = T Topt [Æ C] small than to keep
Qr Qopt [W] small. In summary, the main reason for controlling the oven temperature is to Note that the disturbances and measurement noise enter indirectly through the
minimize the optimization error. scaling of the outputs (!).

Example. The aero-engine application in Chapter 12 provides a nice illustration of


From (10.5) and (10.6), we conclude that we should select the controlled outputs y output selection. There the overall goal is to operate the engine optimally in terms of fuel
such that: consumption, while at the same time staying safely away from instability. The optimization
1. G 1 is small (i.e. G is large); the choice of y should be such that the inputs have layer is a look-up table, which gives the optimal parameters for the engine at various operating
a large effect on y . points. Since the engine at steady-state has three degrees-of-freedom we need to specify three
2. eopt (d) = r yopt (d) is small; the choice of y should be such that its optimal variables to keep the engine approximately at the optimal point, and five alternative sets of
value yopt (d) depends only weakly on the disturbances and other changes. three outputs are given. The outputs are scaled as outlined above, and a good output set is
3. e = y r is small; the choice of y should be such that it is easy to keep the control then one with a large value of  (G), provided we can also achieve good dynamic control
error e small. performance.

Note that  (G 1 ) = 1=(G), and so we want the smallest singular value of the Remark. Note that our desire to have  (G) large for output selection is not related to the
steady-state gain matrix to be large (but recall that singular values depend on scaling desire to have (G) large to avoid input constraints as discussed in Section 6.9. In particular,
as is discussed below). The desire to have  (G) large is consistent with our intuition the scalings, and thus the matrix G, are different for the two cases.
that we should ensure that the controlled outputs are independent of each other.
To use  (G) to select controlled outputs, we see from (10.5) that we should first
scale the outputs such that the expected magnitude of y i yiopt is similar (e.g. 1)
10.3.3 Selection of controlled variables: Summary
in magnitude for each output, and scale the inputs such that the effect of a given Generally, the optimal values of all variables will change with time during operation
deviation u j ujopt on the cost function J is similar for each input (such that
@ 2 J=@u2 opt is close to a constant times a unitary matrix). We must also assume
(due to disturbances and other changes). For practical reasons, we have considered
a hierarchical strategy where the optimization is performed only periodically. The
that the variations in y i yiopt are uncorrelated, or more precisely, we must assume: question is then: Which variables (controlled outputs) should be kept constant
(g) The “worst-case” combination of output deviations, y i yiopt , corresponding (between each optimization)? Essentially, we found that we should select variables y
to the direction of  (G), can occur in practice. for which the variation in optimal value and control error is small compared to their
controllable range (the range y may reach by varying the input u). We considered
Procedure. The use of the minimum singular value to select controlled outputs may
two approaches for selecting controlled outputs:
be summarized in the following procedure:
1. “Brute force” evaluation to find the set with the smallest loss imposed by using
1. From a (nonlinear) model compute the optimal parameters (inputs and outputs) constant values for the setpoints r.
for various conditions (disturbances, operating points). (This yields a “look-up” 2. Maximization of  (G) where G is appropriately scaled (see the above procedure).
table of optimal parameter values as a function of the operating conditions.)
2. From this data obtain for each candidate output the variation in its optimal value, If the loss imposed by keeping constant setpoints is acceptable then we have self-
vi = (yiopt;max yiopt;min )=2. optimizing control. The objective of the control layer is then to keep the controlled
416 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 417

outputs at their reference values (which are computed by the optimization layer). The  yall = all candidate outputs (measurements)
controlled outputs are often measured, but we may also estimate their values based  uall = all candidate inputs (manipulations)
on other measured variables. We may also use other measurements to improve the
The model for a particular combination of inputs and outputs is then y = Gu + G d d
control of the controlled outputs, for example, by use of cascade control. Thus, the
where
selection of controlled and measured outputs are two separate issues, although the
two decisions are obviously closely related.
G = SO Gall SI ; Gd = SO Gdall (10.7)
Here SO is a non-square input “selection” matrix with a 1 and otherwise 0’s in
The measurement selection problem is briefly discussed in the next section. Then
each row, and S I is a non-square output “selection” matrix with a 1 and otherwise
in section 10.5 we discuss the relative gain array of the “big” transfer matrix (with
all candidate outputs included), as a useful screening tool for selecting controlled
0’s in each column. For example, with S O = I all outputs are selected, and with
outputs.
SO = [ 0 I ] output 1 has not been selected.
To evaluate the alternative combinations, one may, based on G and G d , perform an
input-output controllability analysis as outlined in Chapter 6 for each combination
(e.g, consider the minimum singular value, RHP-zeros, interactions, etc). At least this
10.4 Selection of manipulations and measurements may be useful for eliminating some alternatives. A more involved approach, based
on analyzing achievable robust performance by neglecting causality, is outlined by
We are here concerned with the variable sets u and v in Figure 10.1. Note that the Lee et al. (1995). This approach is more involved both in terms of computation time
measurements used by the controller (v ) are in general different from the controlled and in the effort required to define the robust performance objective. An even more
variables (z ), because 1) we may not be able to measure all the controlled variables, involved (and exact) approach would be to synthesize controllers for optimal robust
and 2) we may want to measure and control additional variables in order to performance for each candidate combination.

 stabilize the plant (or more generally change its dynamics)


However, the number of combinations has a combinatorial growth, so even a simple
 improve local disturbance rejection
input-output controllability analysis becomes very time-consuming if there are many
alternatives. For a plant where we want to select m from M candidate manipulations,
Stabilization. We usually start the controller design by designing a (lower-layer) and l from L candidate measurements, the number of possibilities is
  
controller to stabilize the plant. The issue is then: Which outputs (measurements) L M L! M!
and inputs (manipulatons) should be used for stabilization? We should clearly = (10.8)
l m l!(L l)! m!(M m)!
avoid saturation of the inputs, because this makes the system effective open-loop
and stabilization is impossible. A reasonable objective is therefore to minimize A few examples: for m = l = 1 and M = L = 2 the number of possibilities is 4; for
the required input usage of the stabilizing control system. It turns out that this is m = l = 2 and M = L = 4 it is 36; for m = l = 5 and M = L = 10 it is 63504;
achieved, for a single unstable mode, by selecting the output (measurement) and and for m = M , l = 5 and L = 100 (selecting 5 measurements out of 100 possible)
input (manipulation) corresponding to the largest elements in the output and input there are 75287520 possible combinations.
pole vectors (y p and up ), respectively (see remark on page 2) (Havre, 1998)(Havre Remark. The number of possibilities is much larger if we considerP all possible combinations
and Skogestad, 1998b). This choice maximizes the (state) controllability and with 1 to M inputs and 1 to L outputs. The number is (Nett, 1989): M
PL L M 
m=1 l=1 l m .For
observability of the unstable mode. example, with M = L = 2 there are 4+2+2+1=9 candidates (4 structures with one input and
Local disturbance rejection. For measurements, the rule is generally to select those one output, 2 structures with two inputs and one output, 2 structures with one input and two
which have a strong relationship with the controlled outputs, or which may quickly outputs, and 1 structure with two inputs and two outputs).
detect a major disturbance and which together with manipulations can be used for
One way of avoiding this combinatorial problem is to base the selection directly on
local disturbance rejection.
the “big” models G all and Gdall . For example, one may consider the singular value
The selected manipulations should have a large effect on the controlled outputs, decomposition and relative gain array of G all as discussed in the next section. This
and should be located “close” (in terms of dynamic response) to the outputs and rather crude analysis may be used, together with physical insight, rules of thumb
measurements. and simple controllability measures, to perform a pre-screening in order to reduce
For a more formal analysis we may consider the model y all = Gall uall + Gdall d. the possibilities to a manageable number. These candidate combinations can then be
Here analyzed more carefully.
418 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 419

10.5 RGA for non-square plant Proof: See Appendix A.4.2. 2

A simple but effective screening tool for selecting inputs and outputs, which avoids The RGA is a useful screening tool because it need only be computed once. It
the combinatorial problem just mentioned, is the relative gain array (RGA) of the includes all the alternative inputs and/or outputs and thus avoids the combinatorial
“big” transfer matrix G all with all candidate inputs and outputs included,  = problem. From (10.12) we see that the row and column sums of the RGA provide
Gall  Gyall .
T a useful way of interpreting the information available in the singular vectors. For
the case of extra inputs the RGA-values depend on the input scaling, and for extra
Essentially, for the case of many candidate manipulations (inputs) one may consider outputs on the output scaling. The variables must therefore be scaled prior to the
not using those manipulations corresponding to columns in the RGA where the sum analysis.
of the elements is much smaller than 1 (Cao, 1995). Similarly, for the case of many
candidate measured outputs (or controlled outputs) one may consider not using those Example 10.2 Consider a plant with 2 inputs and 6 candidate outputs of which we want to
outputs corresponding to rows in the RGA where the sum of the elements is much select 2. The plant and its RGA-matrix are
smaller than 1. 2 10 10 3 2 0:1050 0:6303 3
To see this, write the singular value decomposition of G all as 6 109 77 6 0:5742 0:1008 77
6 2 1 7;  = 66 0:1317 0:0616 7
Gall = 66 2 1 7 6 0:4034 0:2101 75
Gall = U V H = Ur r VrH (10.9) 4
2 25 4
0:0042 0:0252
0 2 0 0:2969
where r consists only of the r = rank(G) non-zero singular values, U r consists
There exist 62 = 15 combinations with 2 inputs and 2 outputs. The RGA may

of the r first columns of U , and V r consists of the r first columns of V . Thus, V r
consists of the input directions with a non-zero effect on the outputs, and U r consists be useful in providing an initial screening. The six row sums of the RGA-matrix are
of the output directions we can affect (reach) by use of the inputs. 0:5252; 0:4734; 0:0700; 0:6134; 0:0210 and 0:2969. To maximize the output projection we
T should select outputs 1 and 4. For this selection  (G) = 2:12 whereas  (Gall ) = 2 (Gall ) =
Let ej = [ 0    0 1 0    0 ] be a unit vector with a 1 in position j and 2:69 with all outputs included. This shows that we have not lost much gain in the low-gain
0’s elsewhere. Then the j ’th input is u j = eTj u. Define ei in a similar way such that direction by using only 2 of the 6 outputs. However, there are a large number of other factors
the i’th output is y i = eTi y . We then have that e Tj Vr yields the projection of a unit that determine controllability, such as RHP-zeros, sensitivity to uncertainty, and these must be
input uj onto the effective input space of G, and we follow Cao (1995) and define taken into account when making the final selection.

Projection for input j = keTj Vr k2 (10.10) The following example shows that although the RGA is an efficient screening tool,
it must be used with some caution.
which is a number between 0 and 1. Similarly, e Ti Ur yields the projection of a unit
output yi onto the effective (reachable) output space of G, and we define Example 10.3 Consider a plant with 2 inputs and 4 candidate outputs of which we want to
select 2. We have:
Projection for output i = keTi Ur k2
2
10 10
3 2
2:57 3:27
3

Gall = 64 10 9 75;  = 64 1:96 1:43 75


(10.11)
2 1 0:80 0:42
which is a number between 0 and 1. The following theorem links the input and output 2 1 0:80 0:42
(measurement) projection to the column and row sums of the RGA. The four row sums of the RGA-matrix are 0:70, 0:53, 0:38 and 0:38. Thus, to maximize
the
 output projection we should select outputs 1 and 2. However, this yields a plant G1 =
Theorem 10.1 (RGA and input and output projections.) The i’th row sum of the 10 10  which is ill-conditioned with large RGA-elements, (G1 ) =  9 10 , and
RGA is equal to the square of the i’th output projection, and the j ’th column sum of 10 9 10 9
the RGA is equal to the square of the j ’th input projection, i.e. is likely to be difficult
 to control. On the other hand, selecting
  1 and 3 yields
outputs
G2 = 10 10 which is well-conditioned with (G2 ) = 1 2
m
X l
X
2 1 2 1
. For comparison,

ij = keTi Ur k22 ; ij = keTj Vr k22 (10.12) the minimum singular values are: (Gall ) = 1:05,  (G1 ) = 0:51, and  (G2 ) = 0:70.
j =1 i=1
We discuss on page 435 the selection of extra measurements for use in a cascade
For a square non-singular matrix both the row and column sums in (10.12) are 1. control system.
420 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 421

10.6 Control configuration elements measurements/commands and manipulated inputs such that the feedback part of the
overall controller K in (10.13) has a fixed block-diagonal structure.
We now assume that the measurements, manipulations and controlled outputs are
Cascade control is when the output from one controller is the input to another. This
fixed. The available synthesis theories presented in this book result in a multivariable
is broader than the conventional definition of cascade control which is that the
controller K which connects all available measurements/commands (v ) with all
output from one controller is the reference command (setpoint) to another.
available manipulations (u),
u = Kv (10.13) Feedforward elements link measured disturbances and manipulated inputs.
Decoupling elements link one set of manipulated inputs (“measurements”) with
(the variables v will mostly be denoted y in the following). However, such a “big”
another set of manipulated inputs. They are used to improve the performance
(full) controller may not be desirable. By control configuration selection we mean
of decentralized control systems, and are often viewed as feedforward elements
the partitioning of measurements/commands and manipulations within the control
(although this is not correct when we view the control system as a whole) where
layer. More specifically, we define
the “measured disturbance” is the manipulated input computed by another
Control configuration. The restrictions imposed on the overall controller K by decentralized controller.
decomposing it into a set of local controllers (subcontrollers, units, elements, Selectors are used to select for control, depending on the conditions of the system,
blocks) with predetermined links and with a possibly predetermined design a subset of the manipulated inputs or a subset of the outputs.
sequence where subcontrollers are designed locally.
In addition to restrictions on the structure of K , we may impose restrictions on
In a conventional feedback system a typical restriction on K is to use a one degree- the way, or rather in which sequence, the subcontrollers are designed. For most
of-freedom controller (so that we have the same controller for r and y ). Obviously, decomposed control systems we design the controllers sequentially, starting with the
this limits the achievable performance compared to that of a two degrees of freedom “fast” or “inner” or “lower-layer” control loops in the control hierarchy. In particular,
controller. In other cases we may use a two degrees-of-freedom controller, but we this is relevant for cascade control systems, and it is sometimes also used in the
may impose the restriction that the feedback part of the controller (K y ) is first design of decentralized control systems.
designed locally for disturbance rejection, and then the prefilter (K r ) is designed for
command tracking. In general this will limit the achievable performance compared The choice of control configuration leads to two different ways of partitioning the
to a simultaneous design (see also the remark on page 105). Similar arguments apply control system:
to other cascade schemes.  Vertical decomposition. This usually results from a sequential design of the
Some elements used to build up a specific control configuration are: control system, e.g. based on cascading (series interconnecting) the controllers
in a hierarchical manner.
 Cascade controllers  Horizontal decomposition. This usually involves a set of independent decentral-
 Decentralized controllers ized controllers.
 Feedforward elements
 Decoupling elements Remark 1 Sequential design of a decentralized controller results in a control system which
 Selectors is decomposed both horizontally (since K is diagonal) as well as vertically (since controllers
at higher layers are tuned with lower-layer controllers in place).
These are discussed in more detail below, and in the context of the process industry Remark 2 Of course, a performance loss is inevitable if we decompose the control system.
in Shinskey (1988) and Balchen and Mumme (1988). First, some definitions: For example, for a hierarchical decentralized control system, if we select a poor configuration
at the lower (base) control layer, then this may pose fundamental limitations on the achievable
Decentralized control is when the control system consists of independent feedback performance which cannot be overcome by advanced controller designs at higher layers.
controllers which interconnect a subset of the output measurements/commands These limitations imposed by the lower-layer controllers may include RHP-zeros (see the
with a subset of the manipulated inputs. These subsets should not be used by aero-engine case study in Chapter 12) or strong interactions (see the distillation case study in
any other controller. Chapter 12 where the LV -configuration yields large RGA-elements at low frequencies).

This definition of decentralized control is consistent with its use by the In this section, we discuss cascade controllers and selectors, and give some
control community. In decentralized control we may rearrange the ordering of justification for using such “suboptimal” configurations rather than directly
422 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 423

designing the overall controller K . Later, in Section 10.7, we discuss in more r1 -+- c - K1
r2-
+ c- K2 u2- Plant q -y1
detail the hierarchical decomposition, including cascade control, partially controlled
systems and sequential controller design. Finally, in Section 10.8 we consider
6 -
6 y2
decentralized diagonal control.
(a) Extra measurements y2 (conventional cascade control)

10.6.1 Cascade control systems ru2 -+- c - K1


u-1
We want to illustrate how a control system which is decomposed into subcontrollers
6 q -y
-+- c - q u-2
Plant
can be used to solve multivariable control problems. For simplicity, we here use r K2
single-input single-output (SISO) controllers of the form 6
ui = Ki (s)(ri yi ) (10.14)
(b) Extra inputs u2 (input resetting)
where Ki (s) is a scalar. Note that whenever we close a SISO control loop we lose the
corresponding input, u i , as a degree of freedom, but at the same time the reference, Figure 10.4: Cascade implementations
ri , becomes a new degree of freedom.
It may look like it is not possible to handle non-square systems with SISO controllers. where in most cases r2 = 0 (since we do not have a degree of freedom to control
However, since the input to the controller in (10.14) is a reference minus a y2 ).
measurement, we can cascade controllers to make use of extra measurements or
Cascade implementation (conventional cascade control). To obtain an implemen-
extra inputs. A cascade control structure results when either of the following two
tation with two SISO controllers we may cascade the controllers as illustrated in
situations arise:
Figure 10.4(a):
 The reference r i is an output from another controller (typically used for the case of r2 = K1 (s)(r1 y1 ); (10.16)
an extra measurement y i ), see Figure 10.4(a). This is conventional cascade control.
u2 = K2(s)(r2 y2 ); r2 = ub1 (10.17)
 The “measurement” y i is an output from another controller (typically used for Note that the output r 2 from the slower primary controller K 1 is not a manipulated
the case of an extra manipulated input u j ; e.g. in Figure 10.4(b) where u 2 is the plant input, but rather the reference input to the faster secondary (or slave) controller
“measurement” for controller K 1 ). This cascade scheme is referred to as input K2 . For example, cascades based on measuring the actual manipulated variable (in
resetting. which case y2 = um ) are commonly used to reduce uncertainty and nonlinearity at
the plant input.
With r2 = 0 in (10.15) the relationship between the centralized and cascade
10.6.2 Cascade control: Extra measurements implementation is K11 = K2 K1 and K12 = K2 .

In many cases we make use of extra measurements y 2 (secondary outputs) to provide An advantage with the cascade implementation is that it more clearly decouples the
local disturbance rejection and linearization, or to reduce the effect of measurement design of the two controllers. It also shows more clearly that r 2 is not a degree-of-
noise. For example, velocity feedback is frequently used in mechanical systems, and freedom at higher layers in the control system. Finally, it allows for integral action
local flow cascades are used in process systems. Let u be the manipulated input, in both loops (whereas usually only K 11 should have integral action in (10.15)).
y1 the controlled output (with an associated control objective r 1 ) and y2 the extra On the other hand, a centralized implementation is better suited for direct
measurement. multivariable synthesis; see the velocity feedback for the helicopter case study in
Centralized (parallel) implementation. A centralized implementation u = K (r Section 12.2.
y), where K is a 2-input-1-output controller, may be written
Remark. Consider conventional cascade control in Figure 10.4(a). In the general case y1 and
u = K11 (s)(r1 y1 ) + K12(s)(r2 y2 ) (10.15) y2 are not directly related to each other, and this is sometimes referred to as parallel cascade
424 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 425
d d
r1 -+- c - K1 -+- c - K2
u2-
G2 -+ c?+2 q - G1 -+ c?+1 q y-1 Compare this with the case where we only measure y1 , so G = G1 G2 , and use a PID-
controller K (s) with the same dynamics as K1 (s) but with a smaller value of Kc . What is the
6 6 y2 achievable bandwidth? Find a reasonable value for Kc (starting with Kc = 1) and sketch the
closed-loop response (you will see that it is about a factor 5 slower without the inner cascade).

Figure 10.5: Common case of cascade control where the primary output y1 depends directly
on the extra measurement y2 . 10.6.3 Cascade control: Extra inputs
In some cases we have more manipulated inputs than controlled outputs. These may
control. However, it is common to encounter the situation in Figure 10.5where y1 depends
directly on y2 . This is a special case of Figure 10.4(a) with “Plant”= G1 G2 , and it is
be used to improve control performance. Consider a plant with a single controlled
G2 output y and two manipulated inputs u 1 and u2 . Sometimes u2 is an extra input
considered further in Example 10.1. which can be used to improve the fast (transient) control of y , but if it does not have
sufficient power or is too costly to use for long-term control, then after a while it is
Exercise 10.1 Conventional cascade control. With reference to the special (but common) reset to some desired value (“ideal resting value”).
case of conventional cascade control shown in Figure 10.5, Morari and Zafiriou (1989)
conclude that the use of extra measurements is useful under the following circumstances:
Centralized (parallel) implementation. A centralized implementation u = K (r
y) where K is a 1-input 2-output controller, may be written
(a) The disturbance d2 is significant and G1 is non-minimum phase.
(b) The plant G2 has considerable uncertainty associated with it – e.g. a poorly known u1 = K11 (s)(r y); u2 = K21 (s)(r y) (10.18)
nonlinear behaviour – and the inner loop serves to remove the uncertainty.

In terms of design they recommended that K2 is first designed to minimize the effect of d2 Here two inputs are used to control one output, so to get a unique steady-state for the
on y1 (with K1 = 0) and then K1 is designed to minimize the effect of d1 on y1 . We want inputs u1 and u2 . We usually let K11 have integral control whereas K 21 does not.
to derive conclusions (a) and (b) from an input-output controllability analysis, and also, (c) Then u2 (t) will only be used for transient (fast) control and will return to zero (or
explain why we may choose to use cascade control if we want to use simple controllers (even more precisely to its desired value r u2 ) as t ! 1.
with d2 = 0).
Cascade implementation (input resetting). To obtain an implementation with two
Outline of solution: (a) Note that if G1 is minimum phase, then the input-output controllability SISO controllers we may cascade the controllers as shown in Figure 10.4(b). We
of G2 and G1 G2 are in theory the same, and for rejecting d2 there is no fundamental again let input u2 take care of the fast control and u 1 of the long-term control. The
advantage in measuring y1 rather than y2 . (b) The inner loop L2 = G2 K2 removes fast control loop is then
the uncertainty if it is sufficiently fast (high gain feedback) and yields a transfer function
(I + L2 ) 1 L2 close to I at frequencies where K1 is active. (c) In most cases, such as when u2 = K2 (s)(r y) (10.19)
PID controllers are used, the practical bandwidth is limited by the frequency wu where the The objective of the other slower controller is then to use input u 1 to reset input u2
phase of the plant is 180Æ (see section 5.12), so an inner cascade loop may yield faster to its desired value ru2 :
control (for rejecting d1 and tracking r1 ) if the phase of G2 is less than that of G1 G2 .
u1 = K1(s)(ru2 y1 ); y1 = u2 (10.20)
Exercise 10.2 To illustrate the benefit of using inner cascades for high-order plants, case
(c) in the above example, consider Figure 10.5 and let and we see that the output from the fast controller K 2 is the “measurement” for the
slow controller K1 .
G1 = 1 2 ; G 2 = 1
(s + 1) s+1 With ru2 = 0 the relationship between the centralized and cascade implementation
We use a fast proportional controller K2 = 25 in the inner loop, whereas a somewhat slower is K11 = K1 K2 and K21 = K2 .
PID-controller is used in the outer loop, The cascade implementation again has the advantage of decoupling the design of the
2 two controllers. It also shows more clearly that r u2 , the reference for u 2 , may be used
K1 (s) = Kc (s + 1) ; Kc = 5 as a degree-of-freedom at higher layers in the control system. Finally, we can have
s(0:1s + 1) integral action in both K 1 and K2 , but note that the gain of K 1 should be negative
Sketch the closed-loop response. What is the bandwidth for each of the two loops? (if effects of u1 and u2 on y are both positive).
426 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 427

Remark 1 Typically, the controllers in a cascade system are tuned one at a time starting with u3 = K3 (s)(r3 y3 ); y3 = u2 (10.23)
the fast loop. For example, for the control system in Figure 10.6 we would probably tune the Controller K1 controls the primary output y1 at its reference r1 by adjusting the “input” u b1 ,
three controllers in the order K2 (inner cascade using fast input), K3 (input resetting using which is the reference value for y2 . Controller K2 controls the secondary output y2 using
slower input), and K1 (final adjustment of y1 ). input u2 . Finally, controller K3 manipulates u3 slowly in order to reset input u2 to its desired
Remark 2 In process control, the cascade implementation of input resetting is sometimes value r3 .
referred to as valve position control, because the extra input u2 , usually a valve, is reset to a
desired position by the outer cascade. Exercise 10.5 Process control application. A practical case of a control system like the
one in Figure 10.6 is in the use of a pre-heater to keep the reactor temperature y1 at a given
Exercise 10.3 Draw the block diagrams for the two centralized (parallel) implementations value r1 . In this case y2 may be the outlet temperature from the pre-heater, u2 the bypass flow
(which should be reset to r3 , say 10% of the total flow), and u3 the flow of heating medium
corresponding to Figure 10.4.
(steam). Make a process flowsheet with instrumentation lines (not a block diagram) for this
heater/reactor process.
Exercise 10.4 Derive the closed-loop transfer functions for the effect of r on y , u1 and
u2 for the cascade input resetting scheme in Figure 10.4(b). As an example use G =
[ G11 G12 ] = [ 1 1 ] and use integral action in both controllers, K1 = 1=s and
K2 = 10=s. Show that input u2 is reset at steady-state. 10.6.4 Extra inputs and outputs (local feedback)
In many cases performance may be improved with local feedback loops involving
Example 10.4 Two layers of cascade control. Consider the system in Figure 10.6 with two
manipulated inputs (u2 and u3 ), one controlled output (y1 which should be close to r1 ) and extra manipulated inputs and extra measurements. However, the improvement must
two measured variables (y1 and y2 ). Input u2 has a more direct effect on y1 than does input be traded off against the cost of the extra actuator, measurement and control system.
u3 (there is a large delay in G3 (s)). Input u2 should only be used for transient control as it is An example where local feedback is required to counteract the effect of high-order
desirable that it remains close to r3 = ru2 . The extra measurement y2 is closer than y1 to the lags is given for a neutralization process in Figure 5.24 on page 208. The use of local
input u2 and may be useful for detecting disturbances (not shown) affecting G1 . feedback is also discussed by Horowitz (1991).

r1 -+ ?e- - K1
10.6.5 Selectors
Split-range control for extra inputs. We assumed above that the extra input is used
to improve dynamic performance. Another situation is when input constraints make
it necessary to add a manipulated input. In this case the control range is often split
r2 -+ ?e- - K2
u2 q - G1 -+ ey2 q- G2 q - y1 such that, for example, u 1 is used for control when y 2 [y min ; y1 ], and u2 is used
when y 2 [y1 ; ymax ].
6+ Selectors for too few inputs. A completely different situation occurs if there are
too few inputs. Consider the case with one input (u) and several outputs (y 1 ; y2 ; : : :).
r3
-+ ?e- - K3
u3 - G3 In this case, we cannot control all the outputs independently, so we either need to
control all the outputs in some average manner, or we need to make a choice about
which outputs are the most important to control. Selectors or logic switches are often
Figure 10.6: Control configuration with two layers of cascade control. used for the latter. Auctioneering selectors are used to decide to control one of several
similar outputs. For example, this may be used to adjust the heat input (u) to keep
In Figure 10.6 controllers K1 and K2 are cascaded in a conventional manner, whereas the maximum temperature (max i yi ) in a fired heater below some value. Override
controllers K2 and K3 are cascaded to achieve input resetting. The corresponding equations selectors are used when several controllers compute the input value, and we select
are the smallest (or largest) as the input. For example, this is used in a heater where the
ub1 = K1 (s)(r1 y1 ) (10.21) heat input (u) normally controls temperature (y 1 ), except when the pressure (y 2 ) is
u2 = K2 (s)(r2 y2 ); r2 = ub1 (10.22) too large and pressure control takes over.
428 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 429

10.6.6 Why use cascade and decentralized control? configuration is possible. The modelling effort in this case is less, because the model
may be of a more “generic” nature and does not need to be modified for each
As is evident from Figure 10.6(a), decomposed control configurations can easily particular application.
become quite complex and difficult to maintain and understand. It may therefore be
both simpler and better in terms of control performance to set up the controller design
problem as an optimization problem and let the computer do the job, resulting in a
centralized multivariable controller as used in other chapters of this book. 10.7 Hierarchical and partial control
If this is the case, why is cascade and decentralized control used in practice? There
are a number of reasons, but the most important one is probably the cost associated A hierarchical control system results when we design the subcontrollers in a
with obtaining good plant models, which are a prerequisite for applying multivariable sequential manner, usually starting with the fast loops (“bottom-up”). This means
control. On the other hand, with cascade and decentralized control each controller is that the controller at some higher layer in the hierarchy is designed based on a
usually tuned one at a time with a minimum of modelling effort, sometimes even on- partially controlled plant. In this section we derive transfer functions for partial
line by selecting only a few parameters (e.g, the gain and integral time constant of a control, and provide some guidelines for designing hierarchical control systems.
PI-controller). A fundamental reason for applying cascade and decentralized control
is thus to save on modelling effort. Since cascade and decentralized control systems
depend more strongly on feedback rather than models as their source of information, 10.7.1 Partial control
it is usually more important (relative to centralized multivariable control) that the
fast control loops be tuned to respond quickly. Partial control involves controlling only a subset of the outputs for which there is a
control objective. We divide the outputs into two classes:
Other advantages of cascade and decentralized control include the following: they are
often easier to understand by operators, they reduce the need for control links and
allow for decentralized implementation, their tuning parameters have a direct and
 y1 – (temporarily) uncontrolled output (for which there is an associated control
objective)
“localized” effect, and they tend to be less sensitive to uncertainty, for example, in
the input channels. The issue of simplified implementation and reduced computation
 y2 – (locally) measured and controlled output
load is also important in many applications, but is becoming less relevant as the cost We also subdivide the available manipulated inputs in a similar manner:
of computing power is reduced.
 u2 – inputs used for controlling y 2
Based on the above discussion, the main challenge is to find a control configuration
which allows the (sub)controllers to be tuned independently based on a minimum  u1 – remaining inputs (which may be used for controlling y 1 )
of model information (the pairing problem). For industrial problems, the number of We have inserted the word temporarily above, since y 1 is normally a controlled
possible pairings is usually very high, but in most cases physical insight and simple output at some higher layer in the hierarchy. However, we here consider the partially
tools, such as the RGA, can be helpful in reducing the number of alternatives to controlled system as it appears after having implemented only a local control system
a manageable number. To be able to tune the controllers independently, we must where u2 is used to control y 2 . In most of the development that follows we assume
require that the loops interact only to a limited extent. For example, one desirable that the outputs y 2 are tightly controlled.
property is that the steady-state gain from u i to yi in an “inner” loop (which has
already been tuned), does not change too much as outer loops are closed. For Four applications of partial control are:
decentralized diagonal control the RGA is a useful tool for addressing this pairing 1. Sequential design of decentralized controllers. The outputs y (which include
problem. y1 and y2 ) all have an associated control objective, and we use a hierarchical
Why do we need a theory for cascade and decentralized control? We just argued control system. We first design a controller K 2 to control the subset y 2 . With
that the main advantage of decentralized control was its saving on the modelling this controller K2 in place (a partially controlled system), we may then design a
effort, but any theoretical treatment of decentralized control requires a plant model. controller K1 for the remaining outputs.
This seems to be a contradiction. However, even though we may not want to use 2. Sequential design of conventional cascade control. The outputs y 2 are
a model to tune the controllers, we may still want to use a model to decide on a additional measured (“secondary”) variables which are not important variables
control structure and to decide on whether acceptable control with a decentralized in themselves. The reason for controlling y 2 is to improve the control of y 1 . The
430 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 431

references r2 are used as degrees of freedom for controlling y 1 so the set u1 is


often empty. d
3. “True” partial control. The outputs y (which include y 1 and y2 ) all have an ?
associated control objective, and we consider whether by controlling only the
subset y2 ; we can indirectly achieve acceptable control of y 1 , that is, the outputs Gd1 Gd2
y1 remain uncontrolled and the set u 1 remains unused.
4. Indirect control. The outputs y 1 have an associated control objective, but they
are not measured. Instead, we aim at indirectly controlling y 1 by controlling the
“secondary” measured variables y 2 (which have no associated control objective).
The references r 2 are used as degrees of freedom and the set u 1 is empty. This
u1 - G11 G12 -+ ?d+ y-
1
is similar to cascade control, but there is no “outer” loop involving y 1 . Indirect
control was discussed in Section 10.7.4.
u2 - G21 G22 -+ d?+
The following table shows more clearly the difference between the four applications +d ?y2 n2
-d
of partial control. In all cases there is a control objective associated with y 1 and a
feedback loop involving measurement and control of y 2 . K2  ?+ r2
+
Measurement and Control objective
Figure 10.7: Partial control
control of y 1 ? for y2 ?
Sequential decentralized control Yes Yes
Sequential cascade control Yes No Remark. (10.26) may be rewritten in terms of linear fractional transformations. For example,
“True” partial control No Yes the transfer function from u1 to y1 is
Indirect control No No Fl (G; K2 ) = G11 G12 K2 (I + G22 K2 ) 1 G21 (10.27)

The four problems are closely related, and in all cases we (1) want the effect of the Tight control of y2 . In some cases we can assume that the control of y 2 is fast
disturbances on y 1 to be small (when y 2 is controlled), and (2) want it to be easy to compared to the control of y 1 . To obtain the model we may formally let K 2 ! 1 in
control y2 using u2 (dynamically). . Let us derive the transfer functions for y 1 when (10.26), but it is better to solve for u 2 in (10.25) to get
y2 is controlled. One difficulty is that this requires a separate analysis for each choice u2 = G221 Gd2 d G221 G21 u1 + G221 y2
of y2 and u2 , and the number of alternatives has a combinatorial growth as illustrated
by (10.8). We have here assumed that G 22 is square and invertible, otherwise we can get the
By partitioning the inputs and outputs, the overall model y = Gu may be written least-square solution by replacing G 221 by the pseudo-inverse, G y22 . On substituting
this into (10.24) we get
y1 = G11 u1 + G12 u2 + Gd1 d (10.24) y1 = (G11 G12 G221 G21 ) u1 + (Gd1 G12 G221 Gd2 ) d + G12 G221 (r|2 {z e2})
| {z } | {z } | {z }
y2 = G21 u1 + G22 u2 + Gd2 d (10.25) , Pu , Pd , Pr y2
Assume now that feedback control u 2 = K2 (r2 y2 n2 ) is used for the “secondary” (10.28)
subsystem involving u 2 and y2 , see Figure 10.7. By eliminating u 2 and y2 , we then where Pd is called the partial disturbance gain, which is the disturbance gain for
get the following model for the resulting partially controlled system: a system under perfect partial control, and P u is the effect of u1 on y1 with y2
perfectly controlled. In many cases the set u 1 is empty (there are no extra inputs).

y1 = G11 G12 K2(I + G22 K2) 1 G21 u1 + The advantage of the model (10.28) over (10.26) is that it is independent of K 2 , but
 we stress that it only applies at frequencies where y 2 is tightly controlled. For the
Gd1 G12 K2 (I + G22 K2 ) 1 Gd2 d +
case of tight control we have e 2 , y2 r2 = n2 , i.e., the control error e 2 equals the
G12 K2 (I + G22 K2) 1 (r2 n2 ) (10.26) measurement error (noise) n 2 .
432 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 433

Remark. Relationships similar to those given in (10.28) have been derived by many authors, exist in the original overall problem involving u and y . Consider the controllability
e.g. see the work of Manousiouthakis et al. (1986) on block relative gains and the work of of Pu for y2 tightly controlled, which should not be much worse than that of G.
Haggblom and Waller (1988) on distillation control configurations.
These three criteria are important for selecting control configurations for distillation
columns as is discussed in the next example.
10.7.2 Hierarchical control and sequential design
Example 10.5 Control configurations for distillation columns. The overall control
A hierarchical control system arises when we apply a sequential design procedure to problem for the distillation column in Figure 10.8 has 5 inputs
a cascade or decentralized control system.
u = [ L V D B VT ]T
The idea is to first implement a local lower-layer (or inner) control system for
controlling the outputs y 2 . Next, with this lower-layer control system in place, we (these are all flows: reflux L, boilup V , distillate D, bottom flow B , overhead vapour VT ) and
design a controller K 1 to control y1 . The appropriate model for designing K 1 is 5 outputs
given by (10.26) (for the general case) or (10.28) (for the case when we can assume y = [ yD xB MD MB p ]T
y2 perfectly controlled). (these are compositions and inventories: top composition yD , bottom composition xB ,
The objectives for this hierarchical decomposition may vary: condenser holdup MD , reboiler holdup MB , pressure p) see Figure 10.8. This problem
usually has no inherent control limitations caused by RHP-zeros, but the plant has poles fin
1. To allow for simple or even on-line tuning of the lower-layer control system (K 2 ). or close to the origin and needs to be stabilized. In addition, for high-purity separations the
2. To allow the use of longer sampling intervals for the higher layers (K 1 ). 
5 5 RGA-matrix may have some large elements. Another complication is that composition
3. To allow simple models when designing the higher-layer control system (K 1 ). measurements are often expensive and unreliable.
The high-frequency dynamics of the models of the partially controlled plant (e.g. In most cases, the distillation column is first stabilized by closing three decentralized SISO
Pu and Pr ) may be simplified if K1 is mainly effective at lower frequencies. loops for level and pressure so
4. To “stabilize”1 the plant using a lower-layer control system (K 2 ) such that it is
amenable to manual control. y2 = [ MD MB p ]T
and the remaining outputs are
y1 = [ yD xB ]T
The latter is the case in many process control applications where we first close a
number of faster “regulatory” loops in order to “stabilize” the plant. The higher
layer control system (K 1 ) is then used mainly for optimization purposes, and is not The three SISO loops for controlling y2 usually interact weakly and may be tuned
required to operate the plant. independently of each other. However, since each level (tank) has an inlet and two outlet
flows, there exists many possible choices for u2 (and thus for u1 ). By convention, each choice
Based on these objectives, Hovd and Skogestad (1993) proposed some criteria for (“configuration”) is named by the inputs u1 left for composition control.
selecting u2 and y2 for use in the lower-layer control system:
For example, the “LV -configuration” used in many examples in this book refers to a partially
1. The lower layer must quickly implement the setpoints computed by the higher controlled system where we use
layers, that is, the input-output controllability of the subsystem involving use of u1 = [ L V ]T
u2 to control y2 should be good (consider G 22 and Gd2 ). to control y1 (and we assume that there is a control system in place which uses u2 =
2. The control of y 2 using u2 should provide local disturbance rejection, that is, [D B VT ]T to control y2 ). The LV -configuration is good from the point of view that
it should minimize the effect of disturbances on y 1 (consider Pd for y2 tightly control of y1 using u1 is nearly independent of the tuning of the controller K2 involving y2 and
controlled). u2 . However, the problem of controlling y1 by u1 (“plant” Pu ) is often strongly interactive
with large steady-state RGA-elements in Pu .
3. The control of y 2 using u2 should not impose unnecessary control limitations on
the remaining control problem which involves using u 1 and/or r2 to control y1 . By Another configuration is the DV -configuration where

u1 = [ D V ]T
“unnecessary” we mean limitations (RHP-zeros, ill-conditioning, etc.) that did not
1 The terms “stabilize” and “unstable” as used by process operators may not refer to a plant that is unstable
in a mathematical sense, but rather to a plant that is sensitive to disturbances and which is difficult to and thus u2 = [ L B VT ]T . In this case, the steady-state interactions from u1 to y1 are
control manually. generally much less, and Pu has small RGA-elements. But the model in (10.26) depends
434 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 435

Because of the problems of interactions and the high cost of composition measurements, we
often find in practice that only one of the two product compositions is controlled (“true”
partial control). This is discussed in detail in Example 10.7 below. Another common solution
VT P C is to make use of additional temperature measurements from the column, where their reference
MD LC values are set by a composition controller in a cascade manner.
p
L D yD In summary, the overall 5  5 distillation control problem is solved by first designing
a 3  3 controller K2 for levels and pressure, and then designing a 2  2 controller
K1 for the composition control. This is then a case of (block) decentralized control
F zF where the controller blocks K 1 and K2 are designed sequentially (in addition, the
blocks K1 and K2 may themselves be decentralized).
Sequential design is also used for the design of cascade control systems. This is
discussed next.
V
MB LC
Sequential design of cascade control systems
B xB
Consider the conventional cascade control system in Figure 10.4(a), where we have
Figure 10.8: Typical distillation column controlled with the LV -configuration additional “secondary” measurements y 2 with no associated control objective, and
the objective is to improve the control of the primary outputs y 1 by locally controlling
y2 . The idea is that this should reduce the effect of disturbances and uncertainty on
strongly on K2 (i.e. on the tuning of the level loops), and a slow level loop for MD may y1 .
introduce unfavourable dynamics for the response from u1 to y1 .
From (10.28), it follows that we should select secondary measurements y 2 (and
There are also many other possible configurations (choices for the two inputs in u1 ); with
inputs u2 ) such that kPd k is small and at least smaller than kGd1 k. In particular, these
five inputs there are 10 alternative configurations. Furthermore, one often allows for the
arguments apply at higher frequencies. Furthermore, it should be easy to control y 1
possibility of using ratios between flows, e.g. L=D, as possible degrees of freedom in u1 ,
and this sharply increases the number of alternatives. by using as degrees of freedom the references r 2 (for the secondary outputs) or the
unused inputs u 1 . More precisely, we want the input-output controllability of the
Expressions which directly relate the models for various configurations, e.g. relationships “plant” [ Pu Pr ] (or Pr if the set u1 is empty) with disturbance model P d , to be
between PuLV ; PdLV and PuDV ; PdDV etc., are given in Haggblom and Waller (1988) and better than that of the plant [ G 11 G12 ] (or G12 ) with disturbance model G d1 .
Skogestad and Morari (1987a). However, it may be simpler to start from the overall 5 5 
model G, and derive the models for the configurations using (10.26) or (10.28), see also the
MATLAB file on page 501.
Remark. Most of the arguments given in Section 10.2, for the separation into an optimization
To select a good distillation control configuration, one should first consider the problem of and a control layer, and in Section 10.3, for the selection of controlled outputs, apply to cascade
controlling levels and pressure (y2 ). This eliminates a few alternatives, so the final choice is control if the term “optimization layer” is replaced by “primary controller”, and “control layer”

based on the 2 2 composition control problem (y1 ). If y2 is tightly controlled then none is replaced by “secondary controller”.
of the configurations seem to yield RHP-zeros in Pu . Important issues to consider then are
disturbance sensitivity (the partial disturbance gain Pd should be small) and the interactions
(the RGA-elements of Pu ). These issues are discussed by, for example, Waller et al. (1988) Exercise 10.6 The block diagram in Figure 10.5 shows a cascade control system where
and Skogestad et al. (1990). Another important issue is that it is often not desirable to have the primary output y1 depends directly on the extra measurement y2 , so G12 = G1 G2 ,
tight level loops and some configurations, like the DV -configuration mentioned above, are G22 = G2 , Gd1 = [ I G1 ] and Gd2 = [0 I ]. Show that Pd = [ I 0 ] and Pr = G1
sensitive to the tuning of K2 . Then the expressions for Pu and Pd , which are used in the and discuss the result. Note that Pr is the “new” plant as it appears with the inner loop
references mentioned above, may not apply. This is further discussed in Skogestad (1997). closed.
436 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 437

10.7.3 “True” partial control We want Pdk small so from (10.29) we derive direct insight into how to select the
uncontrolled output and unused input:
We here consider the case where we attempt to leave a set of primary outputs y 1
uncontrolled. This “true” partial control may be possible in cases where the outputs 1. Select the unused input u j such that the j ’th row in G 1 Gd has small elements.
are correlated such that controlling the outputs y 2 indirectly gives acceptable control That is, keep the input constant (unused) if its desired change is small.
of y1 . One justification for partial control is that measurements, actuators and control 2. Select the uncontrolled output y i and unused input u j such that the ji’th element
links cost money, and we therefore prefer control schemes with as few control loops in G 1 is large. That is, keep an output uncontrolled if it is insensitive to changes
as possible. in the unused input with the other outputs controlled.
To analyze the feasibility of partial control, consider the effect of disturbances on the
uncontrolled output(s) y 1 as given by (10.28). Suppose all variables have been scaled Example 10.6 Consider the FCC process in Exercise 6.16 on page 250 with
as discussed in Section 1.4. Then we have that: "
16:8 30:5 4:30 # "
0:09 0:02 0:06 #
 A set of outputs y1 may be left uncontrolled only if the effects of all disturbances
G(0) = 16:7 31:0 1:41 ; G 1 (0) = 0:03 0:03 0:02
1:27 54:1 5:40 0:34 0:32 0:38
on y1 , as expressed by the elements in the corresponding partial disturbance gain
matrix Pd , are less than 1 in magnitude at all frequencies. where we want to leave one input unused and one output uncontrolled. From the second rule,
since all elements in the third row of G 1 are large, it seems reasonable to let input u3 be
Therefore, to evaluate the feasibility of partial control one must for each choice of unused, as is done in Exercise 6.16. (The outputs are mainly selected to avoid the presence of
controlled outputs (y 2 ) and corresponding inputs (u 2 ), rearrange the system as in RHP-zeros, see Exercise 6.16).
(10.24) and (10.25) and compute P d using (10.28).
There may also be changes in r 2 (of magnitude R 2 ) which may be regarded as (10.29) may be generalized to the case with several uncontrolled outputs / unused
disturbances on the uncontrolled outputs y 1 . From (10.28) then, we also have that: inputs (Zhao and Skogestad, 1997). We first reorder G such that the upper left 11-
subsystem contains the uncontrolled and unused variables. If G (and thus G 11 ) is
 A set of outputs y1 may be left uncontrolled only if the effects of all reference square, we then have
changes in the controlled outputs (y 2 ) on y1 , as expressed by the elements in the
Pd = G 1 11 1 G 1 Gd 1
    
matrix G12 G221 R2 , are less than 1 in magnitude at all frequencies.
(10.30)
This result is derived from the definition of P d in (10.28) by making use of the Schur
One uncontrolled output and one unused input. “True” partial control is often
considered if we have an m  m plant G(s) where acceptable control of all m
complement in (A.7).
outputs is difficult, and we consider leaving one input u j unused andone output We next consider a 2  2 distillation process where it is difficult to control both
y1 and u outputs independently due to strong interactions, and we leave one output (y 1 )
yi uncontrolled. In this case, as an alternative to rearranging y into y2
  uncontrolled. To improve the performance of y 1 we also consider the use of
into uu1 for each candidate control configuration and computing P d from (10.28), feedforward control where u 1 is adjusted based on measuring the disturbance (but
2 we need no measurement of y 1 ).
we may directly evaluate the partial disturbance gain based on the overall model
y = Gu + Gd d. The effect of a disturbance d k on the uncontrolled output y i is

Example 10.7 Partial and feedforward control of 2 2 distillation process. Consider
[G 1 Gd ]jk
 
@yi a distillation process with 2 inputs (reflux L and boilup V ), 2 outputs (product compositions
Pdk = =
[G 1 ]ji yD and xB ) and 2 disturbances (feed flowrate F and feed composition zF ). We assume that
(10.29)
@dk uj =0;yl6=i =0
changes in the reference (r1 and r2 ) are infrequent and they will not be considered. At steady-
where “uj = 0; yl6=i = 0” means that input u j is constant (unused) and the remaining state (s = 0) we have
outputs yl6=i are constant (perfectly controlled). 
86:4 ; Gd =  7:88 8:81 ; G 1 Gd =  0:54 0:005  (10.31)
G = 87:8
108:2 109:6 11:72 11:19 0:64 0:107
Proof of (10.29): The proof is from Skogestad and Wolff (1992). Rewrite y = Gu + [Gd ]k dk
as u = G 1 y [G 1 ]k Gd d. Set yl = 0 for all l = i. Then uj = [G 1 ]ji yi [G 1 Gd ]jk dk
6 Since the row elements in G 1 Gd are similar in magnitude as are also the elements of G 1
and by setting uj = 0 we find yi =dk = [G 1 Gd ]jk =[G 1 ]ji . 2 (between 0:3 and 0:4), the rules following (10.29) do not clearly favour any particular partial
438 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 439

control scheme. This is confirmed by the values of Pd , which are seen to be quite similar for is shown as curve 3 in Figure 10.9. However, due to measurement error we cannot achieve
the four candidate partial control schemes: 
perfect feedforward control, so let us assume the error is 20%, and use u1 = 1:2 0:54d1 . The
 T  T  T  T 
steady-state effect of the disturbance is then Pd (0)(1 1:2) = 1:36 0:2 = 0:27, which is
Pd21;2 = 1:36 2;1 1:63 ; Pd12;2 = 1:72 ; Pd12;1 = 2:00 still acceptable. But, as seen from the frequency-dependent plot (curve 4), the effect is above
0:011 ; Pd1 = 0:27 0:014 0:33 0:5 at higher frequencies, which may not be desirable. The reason for this undesirable peak
is that the feedforward controller, which is purely static, reacts too fast, and in fact makes the
The superscripts denote the controlled output and corresponding input. Importantly, in all
response worse at higher frequencies (as seen when comparing curves 3 and 4 with curve 2).
four cases, the magnitudes of the elements in Pd are much smaller than in Gd , so control of
To avoid this we filter the feedforward action with a time constant of 3 min resulting in the
one output significantly reduces the effect of the disturbances on the uncontrolled output. In
following feedforward controller:
particular, this is the case for disturbance 2, for which the gain is reduced from about 10 to
0:33 and less. u1 = 0:54 d1 (10.32)
3s + 1
Let us consider in more detail scheme 1 which has the smallest disturbance sensitivity for To be realistic we again assume an error of 20%. The resulting effect of the disturbance on
the uncontrolled output (Pd21;2 ). This scheme corresponds to controlling output y2 (the bottom the uncontrolled output is shown by curve 5, and we see that the effect is now less than 0:27
composition) using u2 (the boilup V ) and with y1 (the top composition) uncontrolled. We use at all frequencies, so the performance is acceptable.
a dynamic model which includes liquid flow dynamics; the model is given in Section 12.4.
Frequency-dependent plots of Gd and Pd show that the conclusion at steady state also applies
Remark. In the example there are four alternative partial control schemes with quite similar
at higher frequencies. This is illustrated in Figure 10.9, where we show for the uncontrolled
disturbance sensitivity for the uncontrolled output. To decide on the best scheme, we should
output y1 and the worst disturbance d1 both the open-loop disturbance gain (Gd11 , Curve 1)
and the partial disturbance gain (Pd211 ;2 , Curve 2). For disturbance d the partial disturbance
2

also perform a controllability analysis of the feedback properties of the four 1 1 problems.
Performing such an analysis, we find that schemes 1 (the one chosen) and 4 are preferable,
gain (not shown) remains below 1 at all frequencies.
because the input in these two cases has a more direct effect on the output, and with less phase
1
lag.
10
1. Gd11
2. Pd211
;2 In conclusion, for this example it is difficult to control both outputs simultaneously
0
using feedback control due to strong interactions. However, we can almost achieve
Magnitude

10

4. 20% error in FF
acceptable control of both outputs by leaving y 1 uncontrolled. The effect of the
5. Add filter to FF most difficult disturbance on y 1 can be further reduced using a simple feedforward
controller (10.32) from disturbance d 1 to u1 .
−1
10

3. Add static Feed-Forward


−2
10
10
−3
10
−2
10
−1
10
0
10
1
10.7.4 Measurement selection for indirect control
Frequency [rad/min]
Assume the overall goal is to keep some variable y 1 at a given value (setpoint) r 1 ,
Figure 10.9: Effect of disturbance 1 on output 1 for distillation column example e.g. our objective is to minimize J = ky 1 r1 k. We assume we cannot measure y 1 ,
and instead we attempt to achieve our goal by controlling y 2 at a constant value r 2 .
The partial disturbance gain for disturbance d1 (the feed flowrate F ) is somewhat above 1 at For small changes we may assume linearity and write
low frequencies (Pd (0) = 1:36), so let us next consider how we may reduce its effect on y1 .
One approach is to reduce the disturbance itself, for example, by installing a buffer tank (as y1 = G1 u + Gd1 d (10.33)
in pH-example in Chapter 5.16.3). However, a buffer tank has no effect at steady-state, so it
does not help in this case.
y2 = G2 u + Gd2 d (10.34)
Another approach is to install a feedforward controller based on measuring d1 and adjusting
u1 (the reflux L) which is so far unused. In practice, this is easily implemented as a ratio With feedback control of y 2 we get y2 = r2 + e2 where e2 is the control error. We
controller which keeps L=F constant. This eliminates the steady-state effect of d1 on y1 now follow the derivation that led to P d in (10.28): Solving for u 2 in (10.34) and
(provided the other control loop is closed). In terms of our linear model, the mathematical substituting into (10.33) yields
equivalence of this ratio controller is to use u1 = 0:54d1 , where 0:54 is the 1; 1-element
in G 1 Gd . The effect of the disturbance after including this static feedforward controller y1 = (Gd1 G1 G2 1 Gd2 )d + G1 G2 1 (r2 + e2 )
440 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 441

With e2 = 0 and d = 0 this gives y1 = G1 G2 1 r2 , so r2 must be chosen such that 10.8 Decentralized feedback control
r1 = G1 G2 1 r2 (10.35)
he control error in the primary output is then K (s)
y1 r1 = (Gd1 G1 G2 1 Gd2 ) d + G1 G2 1 e2
d - q -y1
r1 -+ ? u1 -
G( s)
(10.36) -
| {z } | {z } k1
Pd Pr
To minimize J = ky1 r1 k we should therefore select controlled outputs such that r2 -d
+ - k2 u2 - q -y2
kPd dk and kPr e2 k are small. Note that Pd depends on the scaling of disturbances d
and “primary” outputs y 1 (and is independent of the scaling of inputs u and selected
6-
outputs y2 , at least for square plants). The magnitude of the control error e 2 depends
on the choice of outputs y 2 . Based on (10.36) a procedure for selecting controlled
outputs y2 may be suggested:
Figure 10.10: Decentralized diagonal control of a 2  2 plant
Scale the disturbances d to be of magnitude 1 (as usual), and scale the
outputs y2 so that the expected control error e 2 (measurement noise) is In this section, G(s) is a square plant which is to be controlled using a diagonal
of magnitude 1 for each output (this is different from the output scaling controller (see Figure 10.10)
2 3
used in other cases). Then to minimize the control error for the primary k1 (s)
outputs, J = ky1 r1 k, we should select sets of controlled outputs which: 6 k2 (s) 7
K (s) = diagfki (s)g = 664 7
7 (10.38)
Minimizes k [ Pd Pr ] k
.. 5
(10.37) .
km (s)
Remark 1 The choice of norm in (10.37) is usually of secondary importance. The maximum
kk  k k 
singular value arises if d 2 1 and e2 2 1, and we want to minimize y1 r1 2 . k k This is the problem of decentralized diagonal feedback control. The design of
decentralized control systems involves two steps:
Remark 2 For the choice y2 = y1 we have that r1 = r2 is independent of d and the matrix
Pd in (10.36) and (10.37) is zero. However, Pr is still non-zero. 1. The choice of pairings (control configuration selection)
Remark 3 In some cases this measurement selection problem involves a trade-off between 2. The design (tuning) of each controller, k i (s).
k k
wanting Pd small (wanting a strong correlation between measured outputs y2 and “primary”
k k
outputs y1 ) and wanting Pr small (wanting the effect of control errors (measurement noise)
The optimal solution to this problem is very difficult mathematically, because the
to be small). For example, this is the case in a distillation column when we use temperatures optimal controller is in general of infinite order and may be non-unique; we do
inside the column (y2 ) for indirect control of the product compositions (y1 ). For a high-purity not address it in this book. The reader is referred to the literature (e.g. Sourlas
separation, we cannot place the measurement too close to the column end due to sensitivity to and Manousiouthakis, 1995) for more details. Rather we aim at providing simple
k k
measurement error ( Pr becomes large), and we cannot place it too far from the column end tools for pairing selections (step 1) and for analyzing the achievable performance
k k
due to sensitivity to disturbances ( Pd becomes large). (controllability) of diagonally controlled plants (which may assist in step 2).
Remark 4 Indirect control is related to the idea of inferential control which is commonly Notation for decentralized diagonal control. G(s) denotes a square m  m plant
used in the process industry. However, in inferential control the idea is usually to use with elements gij . Gij (s) denotes the remaining (m 1)  (m 1) plant obtained
the measurement of y2 to estimate (infer) y1 and then to control this estimate rather than by removing row i and column j in G(s). With a particular choice of pairing we can
controlling y2 directly, e.g. see Stephanopoulos (1984). However, there is no universal
rearrange the columns or rows of G(s) such that the paired elements are along the
diagonal of G(s). We then have that the controller K (s) is diagonal (diagfk i g), and
agreement on these terms, and Marlin (1995) uses the term inferential control to mean indirect
control as discussed above.
we also introduce
Remark 5 The problem of indirect control is closely related to that of cascade control 2 3
discussed in Section 10.7.2. The main difference is that in cascade control we also measure and g11
6 g22 7
k k
control y1 in an outer loop. In this case we want [ Pd Pr ] small only at high frequencies Ge , diagfgii g = 6
6 ..
7
7 (10.39)
beyond the bandwidth of the outer loop involving y1 . 4 . 5
gmm
442 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 443

as the matrix consisting of the diagonal elements of G. The loop transfer function The Relative Gain Array (RGA) is the corresponding matrix of relative gains.
in loop i is denoted L i = gii ki , which is also equal to the i’th diagonal element of From (10.45) we get (G) = G  (G 1 )T where  denotes element-by-element
L = GK . multiplication (the Schur product). This is identical to our definition of the RGA-
matrix in (3.69).
Intuitively, we would like to pair variables u j and yi so that ij is close to 1, because
10.8.1 RGA as interaction measure for decentralized control this means that the gain from u j to yi is unaffected by closing the other loops. More
precicely, we would like to pair such that the rearranged system, with the pairings
We here follow Bristol (1966), and show that the RGA provides a measure of
along the diagonal, has a RGA matrix close to identity (see Pairing Rule 1, page 445).
the interactions caused by decentralized diagonal control. Let u j and yi denote a
particular input and output for the multivariable plant G(s), and assume that our task
is to use uj to control yi . Bristol argued that there will be two extreme cases:
10.8.2 Factorization of sensitivity function
 Other loops open: All other inputs are constant, i.e. u k = 0; 8k 6= j .
 Other loops closed: All other outputs are constant, i.e. y k = 0; 8k 6= i. The magnitude of the off-diagonal elements in G (the interactions) relative to its
diagonal elements are given by the matrix

E , (G Ge)Ge 1
In the latter case, it is assumed that the other loops are closed with perfect control.
Perfect control is only possible at steady-state, but it is a good approximation at (10.46)
frequencies within the bandwidth of each loop. We now evaluate the effect @y i =@uj
of “our” given input u j on “our” given output y i for the two extreme cases. We get An important relationship for decentralized control is given by the following
factorization of the return difference operator:
 
@yi
Other loops open: = gij (10.40) (I + GK ) = (I + E Te) (I + GK
e ) (10.47)
@uj uk =0;k6=j | {z } | {z } | {z }

@yi
 overall interactions individual loops
, gb
@uj yk =0;k6=i ij = (I + GK ) 1 ,
Other loops closed: (10.41)
or equivalently in terms of the sensitivity function S

Here gij = [G]ij is the ij ’th element of G, whereas gbij ji’th


element of G 1
is the inverse of the
S = Se(I + E Te) 1 (10.48)
gbij = 1=[G 1 ]ji (10.42)
Here
To derive (10.42) note that
e ) 1 = diagf 1
  Se , (I + GK g and Te = I Se (10.49)
@yi 1 + gii ki
y = Gu ) = [G]ij (10.43)
@uj uk =0;k6=j contain the sensitivity and complementary sensitivity functions for the individual
loops. Note that Se is not equal to the matrix of diagonal elements of S . (10.48)
and interchange the roles of G and G 1 , of u and y , and of i and j to get follows from (A.139) with G = G e and G0 = G. The reader is encouraged to
 
@uj confirm that (10.48) is correct, because most of the important results for stability
u = G 1y ) = [G 1 ]ji (10.44) and performance using decentralized control may be derived from this expression.
@yi yk =0;k6=i
and (10.42) follows. Bristol argued that the ratio between the gains in (10.40) and
(10.41), corresponding to the two extreme cases, is a useful measure of interactions,
10.8.3 Stability of decentralized control systems
and he introduced the term, ij ’th relative gain defined as
Consider a square plant with single-loop controllers. For a 2  2 plant there are two
gij alternative pairings, a 3  3 plant offers 6, a 4  4 plant 24, and an m  m plant
ij , = [G]ij [G 1 ]ji (10.45) has m! alternatives. Thus, tools are needed which are capable of quickly evaluating
gbij
444 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 445

alternative pairings. In this section we first derive sufficient conditions for stability or alternatively, in terms of the columns,
which may be used to select promising pairings. These give rules in terms of diagonal X
dominance. We then derive necessary conditions for stability which may be used to jeti j < jgii j= jgji j 8i; 8! (10.53)
eliminate undesirable pairings. j 6=i
This gives the important insight that we prefer to pair on large elements in G.
A. Sufficient conditions for stability
Remark 1 We cannot say that (10.51) is always less conservative than (10.52) and (10.53).
It is true that the smallest of the i = 1; : : : m upper bounds in (10.52) or (10.53) is always
For decentralized diagonal control, it is desirable that the system can be tuned
smaller (more restrictive) than 1=(E ) in (10.51). However, (10.51) imposes the same bound
and operated one loop at a time. Assume therefore that G is stable and each j j
on e ti for each loop, whereas (10.52) and (10.53) give individual bounds, some of which may
individual loop is stable by itself ( Se and Te are stable). Then from the factorization be less restrictive than 1=(E ).
S = Se(I + E Te) 1 in (10.47) and the generalized Nyquist theorem in Lemma A.5
Remark 2 Another definition of generalized diagonal dominance is that (jE j) < 1, where
(page 540), it follows that the overall system is stable (S is stable) if and only if
(jE j) is the Perron root; see (A.127). However, since (E ) = (DED 1 ), see (8.84) where
det(I + E Te(s)) does not encircle the origin as s traverses the Nyquist D-contour. D in this case is diagonal, it follows from (A.127) that (E )  (jE j), and it is better (less
From the spectral radius stability condition in (4.107) we then have that the overall restrictive) to use (E ) to define diagonal dominance.
system is stable if
Remark 3 Condition (10.51) and the use of (E ) for (nominal) stability of the decentralized
(E Te(j!)) < 1; 8! (10.50) control system can be generalized to include robust stability and robust performance; see
This sufficient condition for overall stability can, as discussed by Grosdidier and equations (31a-b) in Skogestad and Morari (1989).
Morari (1986), be used to obtain a number of even weaker stability conditions.
Sufficient conditions for stability in terms of RGA. We now want to show that for
Sufficient conditions in terms of E . The least conservative approach is to split
up (E Te) using the structured singular value. From (8.92) we have (E Te) 
closed-loop stability it is desirable to select pairings such that the RGA is close to
the identity matrix in the crossover region. The next simple theorem, which applies
(E ) (T ) and from (10.50) we get the following theorem (as first derived by to a triangular plant, will enable us to do this:
Grosdidier and Morari, 1986):
Theorem 10.3 Suppose the plant G(s) is stable. If the RGA-matrix (G) = I 8!
Theorem 10.2 Assume G is stable and that the individual loops are stable ( Te is
then stability of each of the individual loops implies stability of the entire system.
stable). Then the entire system is closed-loop stable (T is stable) if

 (Te) = max
i
jeti j < 1=(E ) 8! (10.51) Proof: From the definition of the RGA it follows that (G) = I can only arise from a
triangular G(s) or from G(s)-matrices that can be made triangular by interchanging rows
and columns in such a way that the diagonal elements remain the same but in a different order
Here (E ) is called the structured singular value interaction measure, and is (the pairings remain the same). A plant with a “triangularized” transfer matrix (as described
computed with respect to the diagonal structure of Te, where we may view Te as above) controlled by a diagonal controller has only one-way coupling and will always yield
the “design uncertainty”. We would like to use integral action in the loops, that is, a stable system provided the individual loops are stable. Mathematically, E = (G G e 1
e )G
we want Te  I at low frequencies, i.e. 
 ( Te)  1. Thus, in order to satisfy (10.51) can be made triangular, and since the diagonal elements of E are zero, it follows that all
we need (E )  1 at low frequencies where we have tight control. This gives the eigenvalues of ETe are zero, so (E Te) = 0 and (10.50) is satisfied. 2
following rule:
RGA at crossover frequencies. In most cases, it is sufficient for overall stability to
Prefer pairings for which we have (E ) < 1 (“generalized diagonal dominance”) require that G(j! ) is close to triangular (or (G)  I ) at crossover frequencies:
at low frequencies.
Another approach is to use Gershgorin’s theorem, see page 514. From (10.50) we Pairing Rule 1. To achieve stability with decentralized control prefer pairings such
then derive the following sufficient condition for overall stability in terms of the that at frequencies ! around crossover, the rearranged matrix G(j! ) (with the
rows of G: X
paired elements along the diaginal) is close to triangular. This is equivalent to
jeti j < jgii j= jgij j 8i; 8! (10.52) requiring (G(j! ))  I , i.e. the RGA-number k(G(j! )) I k sum should be
j 6=i small.
446 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 447

Derivation of Pairing rule 1. Assume that Se is stable, and that Se (s) = SeG e(s)G(s) 1 is Definition 10.1 Decentralized Integral Controllability (DIC). The plant G(s)
stable and has no RHP-zeros (which is always satisfied if both G and G are stable and have
e (corresponding to a given pairing with the paired elements along its diagonal) is
no RHP-zeros). Then from (10.60) the overall system is stable (S is stable) if and only if DIC if there exists a stabilizing decentralized controller with integral action in each
(I + Se( I )) 1 is stable. Here Se( I ) is stable, so from the spectral radius stability loop such that each individual loop may be detuned independently by a factor  i
condition in (4.107) the overall system is stable if (0  i  1) without introducing instability.
(Se( I )(j! )) < 1; 8! (10.54)
Note that DIC considers the existence of a controller, so it depends only on the plant
At low frequencies, this condition is usually satisfied because Se is small. At higher G and the chosen pairings. The steady-state RGA provides a very useful tool to test
f g
frequencies, where the elements in Se = diag sei approach and possibly exceed 1 in for DIC, as is clear from the following result which was first proved by Grosdidier
magnitude, (10.54) may be satisfied if G(j! ) is close to triangular. This is because I et al. (1985):
and thus Se( I ) are then close to triangular, with diagonal elements close to zero, so the
eigenvalues of Se( I )(j! ) are close to zero, (10.54) is satisfied and we have stability of Theorem 10.4 Steady-state RGA and DIC. Consider a stable square plant G and
S . This conclusion also holds for plants with RHP-zeros provided they are located beyond the a diagonal controller K with integral action in all elements, and assume that the
crossover frequency range. 2 loop transfer function GK is strictly proper. If a pairing of outputs and manipulated
Example. Consider a plant and its RGA-matrix inputs corresponds to a negative steady-state relative gain, then the closed-loop
 system has at least one of the following properties:
G= 5 1 ; (G) =  0:625 0:375 
6 2 0:375 0:625 (a) The overall closed-loop system is unstable.
(b) The loop with the negative relative gain is unstable by itself.
The RGA indicates that G is diagonally dominant and that we would prefer to use the diagonal (c) The closed-loop system is unstable if the loop with the negative relative gain is
pairing. This is confirned by computing the relative interactions as given by the matrix E : opened (broken).
   
Ge = 5 0 1 0:375 0:3125 This can be summarized as follows:
0 2 ; E = (G Ge)Ge = 0:75 0:375
A stable (reordered) plant G(s) is DIC only if  ii (0)  0 for all i. (10.55)
. The SSV-interaction measure is (E ) = 0:6124, so the plant is diagonally dominant, and
from (10.51) stability of the individual loops will guarantee stability of the overall closed-loop
j j
system. Note that the Perron root ( E ) = 0:8591 which shows that the use of (E ) is less Proof: The theorem may be proved by setting Te = I in (10.47) and applying the generalized
conservative. Nyquist stability condition. Alternatively, we can use Theorem 6.5 on page 245 and select
f g det Gii we have
G0 = diag gii ; Gii . Since det G0 = gii det Gii and from (A.77) ii = giidet
It is not possible in this case to conclude from the Gershgorin bounds in (10.52) and (10.53) 0 G
that the plant is diagonally dominant, because the off-diagonal element of 6 is larger than any
det G =detG = ii and Theorem 10.4 follows. 2
of the diagonal elements.
Each of the three possible instabilities in Theorem 10.4 resulting from pairing on a
negative value of  ij (0) is undesirable. The worst case is (a) when the overall system
B. Necessary steady-state conditions for stability is unstable, but situation (c) is also highly undesirable as it will imply instability if
the loop with the negative relative gain somehow becomes inactive, for example, due
A desirable property of a decentralized control system is that it has integrity, i.e. the to input saturation. Situation (b) is unacceptable if the loop in question is intended to
closed-loop system should remain stable as subsystem controllers are brought in and be operated by itself, or if all the other loops may become inactive, e.g. due to input
out of service. Mathematically, the system possesses integrity if it remains stable saturation.
when the controller K is replaced by E K where E = diagf i g and i may take on
the values of i = 0 or i = 1. Remarks on DIC and RGA.
An even stronger requirement is that the system remains stable as the gain in 1. DIC was introduced by Skogestad and Morari (1988b). A detailed survey of conditions for
various loops are reduced (detuned) by an arbitrary factor, i.e. 0   i  1 DIC and other related properties is given by Campo and Morari (1994).
(“complete detunability”). Decentralized integral controllability (DIC) is concerned 2. Unstable plants are not DIC. The reason is that with all i = 0 we are left with the
with whether this is possible integral control: uncontrolled plant G, and the system will be (internally) unstable if G(s) is unstable.
448 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 449

3. For i = 0 we assume that the integrator of the corresponding SISO controller has been it is easy to show (Grosdidier and Morari, 1986) that (E (0)) < 1 is equivalent to
removed, otherwise the integrator would yield internal instability. 11 (0) > 0:5, which is conservative when compared with the necessary and sufficient
 
4. For 2 2 and 3 3 plants we have even tighter conditions for DIC than (10.55). For 2 2  condition 11 (0) > 0 in (10.56).
plants (Skogestad and Morari, 1988b) 9. If the plant has j! -axis poles, e.g. integrators, it is recommended that, prior to the RGA-
analysis, these are moved slightly into the LHP (e.g. by using very low-gain feedback).
DIC , 11 (0) > 0 (10.56) This will have no practical significance for the subsequent analysis.
For 3  3 plants with positive diagonal RGA-elements of G(0) and of Gii (0); i = 1; 2; 3 10. Since Theorem 6.5 applies to unstable plants, we may also easily extend Theorem 10.4
to unstable plants (and in this case one may actually desire to pair on a negative RGA-
(its three principal submatrices) we have (Yu and Fan, 1990)
p p p
element). This is shown in Hovd and Skogestad (1994a). Alternatively, one may first
DIC , 11 (0) + 22 (0) + 33 (0)  1 (10.57) implement a stabilizing controller and then analyze the partially controlled system as if
it were the plant G(s).
(Strictly speaking, as
ppointed outp by Campo and
p Morari (1994), we do not have equivalence 11. The above results only address stability. Performance is analyzed in Section 10.8.5.
for the case when 11 (0) + 22 (0) + 33 (0) is identical to 1, but this has little
practical significance).

5. One cannot expect tight conditions for DIC in terms of the RGA for 4 4 systems or higher.
10.8.4 The RGA and right-half plane zeros: Further reasons for
The reason is that the RGA essentially only considers “corner values”, i = 0 or i = 1
(integrity), for the detuning factor in each loop in the definition of DIC. This is clear from not pairing on negative RGA elements
det Gii , where G corresponds to i = 1 for all i, gii corresponds to
the fact that ii = giidet G
i = 1 with the other k = 0, and Gii corresponds to i = 0 with the other k = 1. Bristol (1966) claimed that negative values of  ii (0) implied the presence of RHP-
6. Determinant conditions for integrity (DIC). The following condition is concerned with zeros. This is indeed true as illustrated by the following two theorems:
whether it is possible to design a decentralized controller for the plant such that the
system possesses integrity, which is a prerequisite for having DIC: Assume without loss
of generality that the signs of the rows or columns of G have been adjusted such that
Theorem 10.5 (Hovd and Skogestad, 1992) Consider a transfer function matrix
all diagonal elements of G are positive, i.e. gii (0)  0. Then one may compute the G(s) with no zeros or poles at s = 0. Assume lims!1 ij (s) is finite and different
determinant of G(0) and all its principal submatrices (obtained by deleting rows and from zero. If ij (j 1) and ij (0) have different signs then at least one of the
corresponding columns in G(0)), which should all have the same sign for DIC. following must be true:
This determinant condition follows by applying Theorem 6.5 to all possible combinations a) The element gij (s) has a RHP-zero.
of i = 0 or 1 as illustrated in the proof of Theorem 10.4, and is equivalent to requiring b) The overall plant G(s) has a RHP-zero.
that the so-called Niederlinski indices, c) The subsystem with input j and output i removed, G ij (s), has a RHP-zero.
NI = det G(0)=i gii (0) (10.58)
Theorem 10.6 (Grosdidier et al., 1985) Consider a stable transfer function matrix
of G(0) and its principal submatrices are all positive. Actually, this yields more information
det Gii so G(s) with elements gij (s). Let gbij (s) denote the closed-loop transfer function
than the RGA, because in the RGA the terms are combined into ii = giidet G between input uj and output y i with all the other outputs under integral control.
we may have cases where two negative determinants result in a positive RGA-element.
Assume that: (i) gij (s) has no RHP-zeros, (ii) the loop transfer function GK is
strictly proper, (iii) all other elements of G(s) have equal or higher pole excess than
Nevertheless, the RGA is usually the preferred tool because it does not have to be
recomputed for each pairing.
7. DIC is also closely related to D-stability, see papers by Yu and Fan (1990) and Campo gij (s). We then have:
and Morari (1994). The theory of D-stability provides necessary and sufficient conditions If ij (0) < 0 then gbij (s) has an odd number of RHP-poles and RHP-zeros.
except in a few special cases, such as when the determinant of one or more of the
submatrices is zero.
8. If we assume that the controllers have integral action, then T (0) = I , and we can Negative RGA-elements and decentralized performance With decentralized
derive from (10.51) that a sufficient condition for DIC is that G is generalized diagonally control we usually design and implement the controller by tuning and closing one
dominant at steady-state, that is, loop at a time in a sequential manner. Assume that we pair on a negative steady-state
(E (0)) < 1 RGA-element, ij (0) < 0, assume that ij (1) is positive (it is usually close to 1,
This is proved by Braatz (1993, p.154). However, the requirement is only sufficient for see Pairing rule 1), and assume that the element g ij has no RHP-zero. Then taken

DIC and therefore cannot be used to eliminate designs. Specifically, for a 2 2 system together the above two theorems then have the following implications:
450 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 451

(a) If we start by closing this loop (involving input u i and output y j ), then we will get worse than (b) with ii = 5. They found the achieveable closed-loop time constants to be 1160
a RHP-zero (in Gij (s)) which will limit the performance in the other outputs (follows and 220, respectively, which in both cases is very slow compared to the RHP-zero which has
from Theorem 10.5 by assuming that G has no RHP-zero and that  ij (1) > 0). a time constant of 1.
(b) If we end by closing this loop, then we will get a RHP-zero i(in gb ij (s)) which
will limit the performance in output y i (follows from Theorem 10.6). 
Exercise 10.7 (a) Assume that the 4 4 matrix in (A.82) represents the steady-state model
of a plant. Show that 20 of the 24 possible pairings can be eliminated by requiring DIC. (b)
In conclusion, pairing on a negative RGA-element will, in addition to resulting 
Consider the 3 3 FCC process in Exercise 6.16 on page 250. Show that 5 of the 6 possible
in potential instability as given in Theorem 10.4, also limit the closed-loop pairings can be eliminated by requiring DIC.
decentralized performance.
We have then firmly established the following rule:
Pairing Rule 2. For a stable plant avoid pairings that correspond to negative 10.8.5 Performance of decentralized control systems
steady-state RGA-elements,  ij (0) < 0.
Above we used the factorization S = Se(I + E Te) 1 in (10.48) to study stability.
The RGA is a very efficient tool because it does not have to be recomputed for Here we want to consider perfomance. A related factorization which follows from
each possible choice of pairing. This follows since any permutation of the rows and (A.140) is
columns of G results in the same permutation in the RGA of G. To achieve DIC one S = (I + Se( I )) 1 Se (10.60)
has to pair on a positive RGA(0)-element in each row and column, and therefore one
can often eliminate many alternative pairings by a simple glance at the RGA-matrix. where is the Performance Relative Gain Array (PRGA),

(s) , Ge(s)G 1 (s)


This is illustrated by the following example.
(10.61)
Example 10.8 Consider a 3  3 plant with which is a scaled inverse of the plant. Note that E = 1 I . At frequencies
"
10:2 5:6 1:4 #
0:96 "
1:45 1:41 #
where feedback is effective ( S  0), (10.60) yields S  S which shows that
e e
G(0) = 15:5 8:4 0:7 ; (0) = 0:94 0:37 0:43 (10.59)
18:1 0:4 1:8 0:90 0:07 1:98 is important when evaluating performance with decentralized control. The diagonal
elements of the PRGA-matrix are equal to the diagonal elements of the RGA,

For a 3 3 plant there are 6 alternative pairings, but from the steady-state RGA we see that ii = ii , and this is the reason for its name. Note that the off-diagonal elements of
there is only one positive element in column 2 (12 = 1:45), and only one positive element in the PRGA depend on the relative scaling on the outputs, whereas the RGA is scaling
row 3 (33 = 1:98), and therefore there is only one possible pairing with all RGA-elements independent. On the other hand, the PRGA measures also one-way interaction,
positive (u1 $ $ $
y2 , u2 y1 , u3 y3 ). Thus, if we require DIC we can from a quick glance whereas the RGA only measures two-way interaction.
at the steady-state RGA eliminate five of the six alternative pairings.
We will also make use of the related Closed-Loop Disturbance Gain (CLDG) matrix,
defined as
Ged (s) , (s)Gd (s) = Ge(s)G 1 (s)Gd (s)
Example 10.9 Consider the plant and RGA
(10.62)
"
1 4:19 25:96 # "
1 5 5#
G(s) = ( s + 1)2 6:19 1 25:96 ; (G) = 5 1 5 The CLDG depends on both output and disturbance scaling.
(5s + 1) 1 1 1 5 5 1
In the following, we consider performance in terms of the control error
Note that the RGA is constant, independent of frequency. Only two of the six possible pairings
give positive steady-state RGA-elements (Pairing Rule 2): (a) The (diagonal) pairing on all e = y r = Gu + Gd d r (10.63)
ii = 1. (b) The pairing on all ii = 5. Intuitively, one may expect pairing (a) to be the best
since it corresponds to pairing on RGA-elements equal to 1. However, the RGA-matrix is far Suppose the system has been scaled as outlined in Section 1.4, such that at each
k k
from identity, and the RGA-number,  I sum , is 30 for both alternatives. Thus, none of the frequency:
two alternatives satisfy Pairing Rule 1, and we are led to conclude that decentralized control
should not be used for this plant. 1. Each disturbance is less than 1 in magnitude, jd k j < 1.
Remark. (Hovd and Skogestad, 1992) confirm this conclusion by designing PI controllers for 2. Each reference change is less than the corresponding diagonal element in R,
the two cases. Surprisingly, they found pairing (a) corresponding to ii = 1 to be significantly jrj j < Rj .
452 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 453

3. For each output the acceptable control error is less than 1, je i j < 1. and the response in output i to a single disturbance dk and a single reference change rj is

For SISO systems, we found in Section 5.10 that in terms of scaled variables we ei  sei gedik dk sei ik rk (10.70)
must at all frequencies require
where sei = 1=(1 + gii ki ) is the sensitivity function for loop i by itself. Thus, to achieve
j1 + Lj > jGd j and j1 + Lj > jRj (10.64) j j j j j j
ei < 1 for dk = 1 we must require sei egdik < 1 and (10.65) follows. Similarly, to achieve
j j j j j j j j
ei < 1 for rj = Rj we must require si ik Rj < 1 and (10.66) follows. Also note that
for acceptable disturbance rejection and command tracking, respectively. Note that j j
si ik < 1 will imply that assumption (10.67) is valid. Since R usually has all of its elements
L; Gd and R are all scalars in this case. For decentralized control these requirements larger than 1, in most cases (10.67) will be automatically satisfied if (10.66) is satisfied, so we
may be directly generalized by introducing the PRGA-matrix, = GG e 1 , and the normally need not check assumption (10.67). 2
CLDG-matrix, G ed = Gd . These generalizations will be presented and discussed
Remark 1 (10.68) may also be derived from (10.48) by assuming Te I which yields
next, and then subsequently proved. (I + E Te) 1 (I + E ) 1 = .

Single disturbance. Consider a single disturbance, in which case G d is a vector, Remark 2 Consider a particular disturbance with model gd . Its effect on output i with no
and let gdi denote the i’th element of G d . Let Li = gii ki denote the loop transfer control is gdi , and the ratio between gedi (the CLDG) and gdi is the relative disturbance gain
function in loop i. Consider frequencies where feedback is effective so Se is small (RDG) ( i ) of Stanley et al. (1985) (see also Skogestad and Morari (1987b)):
(and (10.67) is valid). Then for acceptable disturbance rejection (je i j < 1) we must 1 gd ]i =[gd ]i
with decentralized control require for each loop i,
i , egdi =gdi = [GG
e (10.71)

Thus i , which is scaling independent, gives the change in the effect of the disturbance caused
j1 + Li j > jgedi j 8i (10.65) by decentralized control. It is desirable to have i small, as this means that the interactions are
which is the same as the SISO-condition (5.52) except that G d is replaced by the
such that they reduce the apparent effect of the disturbance, such that one does not need high
CLDG, egdi. In words, egdi gives the “apparent” disturbance gain as seen from loop i
j j
gains Li in the individual loops.

when the system is controlled using decentralized control.


Single reference change. Similarly, consider a change in reference for output j 10.8.6 Summary: Controllability analysis for decentralized
of magnitude R j . Consider frequencies where feedback is effective (and (10.67) is control
valid). Then for acceptable reference tracking (je i j < 1) we must require for each
loop i When considering decentralized diagonal control of a plant, one should first check
j1 + Li j > j ij j  jRj j 8i (10.66) that the plant is controllable with any controller. If the plant is unstable, then as
which is the same as the SISO-condition except for the PRGA-factor, j ij j. In other usual the unstable modes must be controllable and observable. In addition, the
words, when the other loops are closed the response in loop i gets slower by a factor unstable modes must not be decentralized fixed modes, otherwise the plant cannot
j ii j. Consequently, for performance it is desirable to have small elements in , at be stabilized with a diagonal controller (Lunze, 1992). For example, this is the case
least at frequencies where feedback is effective. However, at frequencies close to for a triangular plant if the unstable mode appears only in the off-diagonal elements.
crossover, stability is the main issue, and since the diagonal elements of the PRGA The next step is to compute the RGA-matrix as a function of frequency, and to
and RGA are equal, we usually prefer to have ii close to 1 (recall Pairing Rule 1 on determine if one can find a good set of input-output pairs bearing in mind the
page 445). following:

Proofs of (10.65) and (10.66): At frequencies where feedback is effective, Se is small, so 1. Prefer pairings which have the RGA-matrix close to identity at frequencies around
crossover, i.e. the RGA-number k(j! ) I k should be small. This rule is to
I + Se( I)  I (10.67) ensure that interactions from other loops do not cause instability as discussed
and from (10.60) we have following (10.54).
S  Se (10.68) 2. Avoid a pairing ij with negative steady-state RGA elements,  ij (G(0)).
3. Prefer a pairing ij where g ij puts minimal restrictions on the achievable
bandwidth. Specifically, the frequency ! uij where \gij (j!uij ) = 180Æ should
The closed-loop response then becomes

e = SGd d Sr  SeGed d Se r (10.69) be as large as possible.


454 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 455

This rule favours pairing on variables “close to each other”, which makes it easier the interactions to achieve the desired performance as loop i by itself has no effect. An example
to satisfy (10.65) and (10.66) physically while at the same time achieving stability. of this is in distillation control when the LV -configuration is not used, see Example 10.5.
It is also consistent with the desire that (j! ) is close to I .
Example 10.10 Application to distillation process. In order to demonstrate the use
When a reasonable choice of pairings has been made, one should rearrange G to have of the frequency dependent RGA and CLDG for evaluation of expected diagonal control
the paired elements along the diagonal and perform a controllability analysis. performance, we consider again the distillation process used in Example 10.7. The LV
configuration is used, that is, the manipulated inputs are reflux L (u1 ) and boilup V (u2 ).
4. Compute the CLDG and PRGA, and plot these as a function of frequency. Outputs are the product compositions yD (y1 ) and xB (y2 ). Disturbances in feed flowrate F
5. For systems with many loops, it is best to perform the analysis one loop at the (d1 ) and feed composition zF (d2 ), are included in the model. The disturbances and outputs
time, that is, for each loop i, plot jgedik j for each disturbance k and plot j ij j have been scaled such that a magnitude of 1 corresponds to a change in F of 20%, a change
for each reference j (assuming here for simplicity that each reference is of unit in zF of 20%, and a change in xB and yD of 0:01 mole fraction units. The 5 state dynamic
magnitude). For performance, we need j1 + L i j to be larger than each of these model is given in Section 12.4.
G(s) is stable and has no RHP-zeros. The plant and RGA-
j1 + Li j > max fjgedik j; j ij jg
Initial controllability analysis.
Performance : (10.72) matrix at steady-state are
k;j

G(0) = 87:8 86:4  
35:1 34:1 
To achieve stability of the individual loops one must analyze g ii (s) to ensure 108:2 109:6 ; (0) = 34:1 35:1 (10.74)
that the bandwidth required by (10.72) is achievable. Note that RHP-zeros in the
diagonal elements may limit achievable decentralized control, whereas they may The RGA-elements are much larger than 1 and indicate a plant that is fundamentally
difficult to control. Fortunately, the flow dynamics partially decouple the response at higher
not pose any problems for a multivariable controller. Since with decentralized
control we usually want to use simple controllers, the achievable bandwidth

frequencies, and we find that (j! ) I at frequencies above about 0:5 rad/min. Therefore if

in each loop will be limited by the frequency where \g ii is 180Æ (recall


we can achieve sufficiently fast control, the large steady-state RGA-elements may be less of a
problem.
Section 5.12).
6. As already mentioned one may check for constraints by considering the elements
of G 1 Gd and making sure that they do not exceed one in magnitude within the
frequency range where control is needed. Equivalently, one may for each loop i
1
10

plot jgii j, and the requirement is then that

Magnitude
To avoid input constraints : jgii j > jgedik j; 8k (10.73) 10
0

1 Gd ). gd22 gd21
at frequencies where jgedik j is larger than 1 (this follows since G
ed = GG
e
gd11 gd12
This provides a direct generalization of the requirement jGj > jG d j for SISO
systems. The advantage of (10.73) compared to using G 1 Gd is that we can limit
−1
10 −3 −2 −1 0 1
10 10 10 10 10
Frequency [rad/min]
ourselves to frequencies where control is needed to reject the disturbance (where
jgedik j > 1). j j
Figure 10.11: Disturbance gains gdik , for effect of disturbance k on output i

If the plant is not controllable, then one may consider another choice of pairings and The steady-state effect of the two disturbances is given by
go back to Step 4. If one still cannot find any pairings which are controllable, then  
Gd (0) = 7:88 8:81
one should consider multivariable control.
11:72 11:19 (10.75)

7. If the chosen pairing is controllable then the analysis based on (10.72) tells us and the magnitudes of the elements in Gd (j! ) are plotted as a function of frequency in
directly how large jL i j = jgii ki j must be, and can be used as a basis for designing Figure 10.11. From this plot the two disturbances seem to be equally difficult to reject with
the controller k i (s) for loop i. magnitudes larger than 1 up to a frequency of about 0:1 rad/min. We conclude that control is
needed up to 0.1 rad/min. The magnitude of the elements in G 1 Gd (j! ) (not shown) are all
Remark. In some cases, pairings which violate the above rules may be chosen. For example, less than 1 at all frequencies (at least up to 10 rad/min), and so it will be assumed that input
one may even choose to pair on elements with gii = 0 which yield ii = 0. One then relies on constraints pose no problem.
456 MULTIVARIABLE FEEDBACK CONTROL CONTROL STRUCTURE DESIGN 457
2
10 0.4

gd11
e gd21
e 0.2 y2
Magnitude 10
1

gd22
e 0

10
0 −0.2
y1
gd12
e −0.4
0 10 20 30 40 50 60 70 80 90 100
10
−1
−3 −2 −1 0 1
Time [min]
10 10 10 10 10
Frequency [rad/min] Figure 10.14: Decentralized PI-control. Responses to a unit step in d1 at t = 0 and a unit step
in d2 at t = 50 min
j j
gdik , for effect of disturbance k on output i
Figure 10.12: Closed-loop disturbance gains, e

Also, for loop 2 we find that disturbance 1 is the most difficult, and from ged12 we require a
Choice of pairings. The selection of u1 to control y1 and u2 to control y2 , corresponds to loop gain larger than 1 up to about 0:3 rad/min. A bandwidth of about 0:2 to 0:3 rad/min in

pairing on positive elements of (0) and (j! ) I at high frequencies. This seems sensible, each loop, is required for rejecting disturbance 1, and should be achievable in practice.
and is used in the following.
Observed control performance. To check the validity of the above results we designed two
Analysis of decentralized control. The elements in the CLDG and PRGA matrices are shown
single-loop PI controllers:
as functions of frequency in Figures 10.12 and 10.13. At steady-state we have
k1 (s) = 0:261 1 + 3:76s ; k2 (s) = 0:375 1 + 3:31s

(0) = 35:1 27:6 ; Ged (0) = (0)Gd (0) =  47:7 0:40  (10.77)
43:2 35:1 (10.76)
70:5 11:7 3:76s 3:31s
In this particular case the off-diagonal elements of RGA () and PRGA ( ) are quite similar. The loop gains, Li = gii ki , with these controllers are larger than the closed-loop disturbance
We note that Ged (0) is very different from Gd (0), and this also holds at higher frequencies. For gains, jÆik j, at frequencies up to crossover. Closed-loop simulations with these controllers are
disturbance 1 (first column in G ed ) we find that the interactions increase the apparent effect of shown in Figure 10.14. The simulations confirm that disturbance 2 is more easily rejected than
the disturbance, whereas they reduce the effect of disturbance 2, at least on output 1. disturbance 1.

2
10 In summary, there is an excellent agreement between the controllability analysis and
the simulations, as has also been confirmed by a number of other examples.
Magnitude

1
10

0 12 21 11 = 22 10.8.7 Sequential design of decentralized controllers


10

The results presented in this section on decentralized control are most useful for
10
−1
−3 −2 −1 0 1
the case when the local controllers k i (s) are designed independently, that is, each
10 10 10 10 10
Frequency [rad/min] controller is designed locally and then all the loops are closed. As discussed above,
one problem with this is that the interactions may cause the overall system (T ) to
Figure 10.13: PRGA-elements j ij j for effect of reference j on output i be unstable, even though the local loops ( Te) are stable. This will not happen if the
plant is diagonally dominant, such that we satisfy, for example,   ( Te) < 1=(E ) in
We now consider one loop at a time to find the required bandwidth. For loop 1 (output 1) we (10.51).
consider 11 and 12 for references, and e gd11 and egd12 for disturbances. Disturbance 1 is the
most difficult, and we need 1 + L1 > b j j j j
gd11 at frequencies where bgd11 is larger than 1, j j The stability problem is avoided if the controllers are designed sequentially as is
which is up to about 0:2 rad/min. The magnitude of the PRGA-elements are somewhat smaller commonly done in practice when, for example, the bandwidths of the loops are
than ej j
gd11 (at least at low frequencies), so reference tracking will be achieved if we can reject quite different. In this case the outer loops are tuned with the inner (fast) loops in
disturbance 1. From e gd12 we see that disturbance 2 has almost no effect on output 1 under place, and each step may be considered as a SISO control problem. In particular,
feedback control. overall stability is determined by m SISO stability conditions. However, the issue
458 MULTIVARIABLE FEEDBACK CONTROL

of performance is more complicated because the closing of a loop may cause


“disturbances” (interactions) into a previously designed loop. The engineer must then
go back and redesign a loop that has been designed earlier. Thus sequential design
may involve many iterations; see Hovd and Skogestad (1994b). The performance
bounds in (10.72) are useful for determining the required bandwidth in each loop 11
and may thus suggest a suitable sequence in which to design the controllers.

MODEL REDUCTION
Although the analysis and derivations given in this section apply when we design
the controllers sequentially, it is often useful, after having designed a lower-layer
controller (the inner fast loops), to redo the analysis based on the model of the
partially controlled system using (10.26) or (10.28). For example, this is usually
done for distillation columns, where we base the analysis of the composition control
problem on a 2  2 model of the partially controlled 5  5 plant, see Examples 10.5
and 10.10. This chapter describes methods for reducing the order of a plant or controller model. We place
considerable emphasis on reduced order models obtained by residualizing the less controllable
and observable states of a balanced realization. We also present the more familiar methods of
10.8.8 Conclusions on decentralized control balanced truncation and optimal Hankel norm approximation.

In this section, we have derived a number of conditions for the stability, e.g. (10.51)
and (10.55), and performance, e.g. (10.65) and (10.66), of decentralized control
systems. The conditions may be useful in determining appropriate pairings of inputs 11.1 Introduction
and outputs and the sequence in which the decentralized controllers should be
designed. Recall, however, that in many practical cases decentralized controllers are Modern controller design methods such as H 1 and LQG, produce controllers of
tuned based on local models or even on-line. The conditions/bounds are also useful in order at least equal to that of the plant, and usually higher because of the inclusion
an input-output controllability analysis for determining the viability of decentralized of weights. These control laws may be too complex with regards to practical
control. implementation and simpler designs are then sought. For this purpose, one can either
Some exercises which include a controllability analysis of decentralized control are reduce the order of the plant model prior to controller design, or reduce the controller
given at the end of Chapter 6. in the final stage, or both.
The central problem we address is: given a high-order linear time-invariant stable
model G, find a low-order approximation G a such that the infinity (H 1 or L1 ) norm
of the difference, kG G a k1 , is small. By model order, we mean the dimension of
10.9 Conclusion the state vector in a minimal realization. This is sometimes called the McMillan
degree.
The issue of control structure design is very important in applications, but it has So far in this book we have only been interested in the infinity (H 1 ) norm of stable
received relatively little attention in the control community during the last 40 years. systems. But the error G G a may be unstable and the definition of the infinity norm
In this chapter, we have discussed the issues involved, and we have provided some needs to be extended to unstable systems. L 1 defines the set of rational functions
ideas and tools. There is clearly a need for better tools and theory in this area. which have no poles on the imaginary axis, it includes H 1 , and its norm (like H 1 )
is given by kGk1 = supw   (G(jw)).
We will describe three main methods for tackling this problem: balanced truncation,
balanced residualization and optimal Hankel norm approximation. Each method
gives a stable approximation and a guaranteed bound on the error in the
approximation. We will further show how the methods can be employed to reduce
the order of an unstable model G. All these methods start from a special state-space
460 MULTIVARIABLE FEEDBACK CONTROL MODEL REDUCTION 461

realization of G referred to as balanced. We will describe this realization, but first It is interesting to note that the error depends on the residues c i bTi as well as the i .
we will show how the techniques of truncation and residualization can be used to The distance of  i from the imaginary axis is therefore not a reliable indicator of
remove the high frequency or fast modes of a state-space realization. whether the associated mode should be included in the reduced order model or not.
An advantage of modal truncation is that the poles of the truncated model are a subset
of the poles of the original model and therefore retain any physical interpretation they
might have, e.g. the phugoid mode in aircraft dynamics.
11.2 Truncation and residualization
Let (A; B; C; D) be a minimal realization
 of a stable system G(s), and partition the 11.2.2 Residualization
state vector x, of dimension n, into x1 where x is the vector of n k
x2 2 states
In truncation, we discard all the states and dynamics associated with x 2 . Suppose
which we wish to remove. With appropriate partitioning of A, B and C , the state- that instead of this we simply set x_ 2 = 0, i.e. we residualize x2 , in the state-space
space equations become equations. One can then solve for x 2 in terms of x1 and u, and back substitution of
x_ 1 = A11 x1 + A12 x2 + B1 u (11.1) x2 , then gives
x_ 2 = A21 x1 + A22 x2 + B2 u x_ 1 = (A11 A12 A221 A21 )x1 + (B1 A12 A221 B2 )u (11.5)
y = C1 x1 + C2 x2 + Du 1
y = (C1 C2 A22 A21 )x1 + (D C2 A22 B2 )u 1 (11.6)
Let us assume A22 is invertible and define
4 A
11 A12 A221 A21
11.2.1 Truncation Ar = (11.7)
s s 4 1
A k -th order truncation of the realization G = (A; B; C; D) is given by Ga = Br = B1 A12 A22 B2 (11.8)
(A11 ; B1 ; C1 ; D). The truncated model G a is equal to G at infinite frequency, 4
G(1) = Ga (1) = D, but apart from this there is little that can be said in the Cr = C1 C2 A221 A21 (11.9)
general case about the relationship between G and G a . If, however, A is in Jordan 4
Dr = D C2 A22 B2 1 (11.10)
form then it is easy to order the states so that x 2 corresponds to high frequency or
s
fast modes. This is discussed next. The reduced order model G a (s) = (Ar ; Br ; Cr ; Dr ) is called a residualization of
Modal truncation. For simplicity, assume that A has been diagonalized so that G(s) =s (A; B; C; D). Usually (A; B; C; D) will have been put into Jordan form,
with the eigenvalues ordered so that x 2 contains the fast modes. Model reduction
2
1 0    0 3 2 T3
b1 by residualization is then equivalent to singular perturbational approximation, where
6 0 2    0 7 6 bT
6 2 7
7
A=6 5 B = 4 .. 5 C = [ c1 c2    cn ]
the derivatives of the fastest states are allowed to approach zero with some parameter
4 .. .. . . .. 7 (11.2)
. . . . . . An important property of residualization is that it preserves the steady-state gain
0 0    n bTn of the system, Ga (0) = G(0). This should be no surprise since the residualization
process sets derivatives to zero, which are zero anyway at steady-state. But it is in
Then, if the i are ordered so that j 1 j < j2 j <   , the fastest modes are removed stark contrast to truncation which retains the system behaviour at infinite frequency.
from the model after truncation. The difference between G and G a following a k -th This contrast between truncation and residualization follows from the simple bilinear
order model truncation is given by relationship s ! 1s which relates the two (e.g. Liu and Anderson, 1989)
n
X ci bTi It is clear from the discussion above that truncation is to be preferred when accuracy
G Ga = (11.3)
i=k+1
s i is required at high frequencies, whereas residualization is better for low frequency
modelling.
and therefore
n Both methods depend to a large extent on the original realization and we have
 (ci bTi )
X
kG Ga k1  suggested the use of the Jordan form. A better realization, with many useful
i=k+1 jRe(i )j
(11.4)
properties, is the balanced realization which will be considered next.
462 MULTIVARIABLE FEEDBACK CONTROL MODEL REDUCTION 463

11.3 Balanced realizations 11.4 Balanced truncation and balanced


residualization
In words only: A balanced realization is an asymptotically stable minimal realization
in which the controllability and observability Gramians are equal and diagonal. Let the balanced realization (A; B; C; D) of G(s) and the corresponding  be
partitioned compatibly as
More formally: Let (A; B; C; D) be a minimal realization of a stable, rational  
A11 A12 ; B =
 
B1 ; C =  C C 
transfer function G(s), then (A; B; C; D) is called balanced if the solutions to the A= A21 A22 B2 1 2 (11.15)
following Lyapunov equations
 
= 1 0 (11.16)
AP + P AT + BB T = 0 (11.11) 0 2
AT Q + QA + C T C = 0 (11.12) where 1 = diag(1 ; 2 ; : : : ; k ); 2 = diag(k+1 ; k+2 ; : : : ; n ) and k >
k+1 .
4 Balanced truncation. The reduced order model given by (A 11 ; B1 ; C1 ; D) is called
are P = Q = diag (1 ; 2 ; : : : ; n ) = , where 1  2  : : :  n > 0. P and Q a balanced truncation of the full order system G(s). This idea of balancing the
are the controllability and observability Gramians, also defined by system and then discarding the states corresponding to small Hankel singular values
was first introduced by Moore (1981). A balanced truncation is also a balanced
4
Z 1 T realization (Pernebo and Silverman, 1982), and the infinity norm of the error between
P = eAt BB T eA t dt (11.13) G(s) and the reduced order system is bounded by twice the sum of the last n k
Z0 1 Hankel singular values, i.e. twice the trace of  2 or simply “twice the sum of the
4
Q =
T
eA t C T CeAt dt (11.14) tail” (Glover, 1984; Enns, 1984). For the case of repeated Hankel singular values,
0 Glover (1984) shows that each repeated Hankel singular value is to be counted only
once in calculating the sum.
 is therefore simply referred to as the Gramian of G(s). The  i are the ordered
4 1
Hankel singular values of G(s), more generally defined as  i = i2 (P Q); i =
A precise statement of the bound on the approximation error is given in Theorem
11.1 below.
1; : : : ; n. Notice that 1 = kGkH , the Hankel norm of G(s). Useful algorithms that compute balanced truncations without first computing a
balanced realization have been developed by Tombs and Postlethwaite (1987) and
Any minimal realization of a stable transfer function can be balanced by a simple
Safonov and Chiang (1989). These still require the computation of the observability
state similarity transformation, and routines for doing this are available in MATLAB. and controllability Gramians, which can be a problem if the system to be reduced is
For further details on computing balanced realizations, see Laub et al. (1987). Note
of very high order. In such cases the technique of Jaimoukha et al. (1992), based on
that balancing does not depend on D.
computing approximate solutions to Lyapunov equations, is recommended.
So what is so special about a balanced realization? In a balanced realization the value Balanced residualization. In balanced truncation above, we discarded the least
of each i is associated with a state xi of the balanced system. And the size of  i controllable and observable states corresponding to  2 . In balanced residualization,
is a relative measure of the contribution that x i makes to the input-output behaviour we simply set to zero the derivatives of all these states. The method was
of the system; also see the discussion on page 157. Therefore if  1  2 , then introduced by Fernando and Nicholson (1982) who called it a singular perturbational
the state x1 affects the input-output behaviour much more than x 2 , or indeed any approximation of a balanced system. The resulting balanced residualization of G(s)
other state because of the ordering of the  i . After balancing a system, each state is is (Ar ; Br ; Cr ; Dr ) as given by the formulas (11.7)–(11.10).
just as controllable as it is observable, and a measure of a state’s joint observability Liu and Anderson (1989) have shown that balanced residualization enjoys the same
and controllability is given by its associated Hankel singular value. This property is error bound as balanced truncation. An alternative derivation of the error bound,
fundamental to the model reduction methods in the remainder of this chapter which more in the style of Glover (1984), is given by Samar et al. (1995). A precise
work by removing states having little effect on the system’s input-output behaviour. statement of the error bound is given in the following theorem.
464 MULTIVARIABLE FEEDBACK CONTROL MODEL REDUCTION 465

Theorem 11.1 Let G(s) be a stable rational transfer function with Hankel singular uncontrollable, which seems sensible. A more detailed discussion of the Hankel
values 1 > 2 > : : : > N where each i has multiplicity ri and let Gka (s) be norm was given in Section 4.10.4.
obtained by truncating or residualizing the balanced realization of G(s) to the first The Hankel norm approximation problem has been considered by many but
(r1 + r2 + : : : + rk ) states. Then especially Glover (1984). In Glover (1984) a complete treatment of the problem is
kG(s) Gka (s)k1  2(k+1 + k+2 + : : : + N ): (11.17)
given, including a closed-form optimal solution and a bound on the infinity norm of
the approximation error. The infinity norm bound is of particular interest because it
is better than that for balanced truncation and residualization.
The following two exercises are to emphasize that (i) balanced residualization The theorem below gives a particular construction for optimal Hankel norm
preserves the steady state-gain of the system and (ii) balanced residualization is
related to balanced truncation by the bilinear transformation s ! s 1 .
approximations of square stable transfer functions.

Theorem 11.2 Let G(s) be a stable, square, transfer function G(s) with Hankel
Exercise 11.1 The steady-state gain of a full order balanced system (A; B; C; D) is singular values 1  2      k  k+1 = k+2 =    = k+l > k+l+1 
D CA 1 B . Show, by algebraic manipulation, that this is also equal to Dr Cr Ar 1 Br ,     n > 0, then an optimal Hankel norm approximation of order k, G kh (s), can
the steady-state gain of the balanced residualization given by (11.7)–(11.10). be constructed as follows.
  Let (A; B; C; D) be a balanced realization of G(s) with the Hankel singular values
Exercise 11.2 Let G(s) have a balanced realization A B reordered so that the Gramian matrix is
C D , then
 = diag (1 ; 2 ;    ; k ; k+l+1 ;    ; n ; k+1 ;    ; k+l )
A 1 A 1B
  (11.19)
4 diag ( ;  I )
CA 1 D CA 1 B = 1 k+1
4 G(s 1 ), and the Gramians of the two realizations are Partition (A; B; C; D) to conform with :
is a balanced realization of H (s) =    
A= A 11 A12 B = B1 C = [ C1 C2 ]
the same.
(11.20)
A21 A22 B2
1. Write down an expression for a balanced truncation Ht (s) of H (s).
2. Apply the reverse transformation s 1 ! s to Ht (s), and hence show that 4
Gr (s) = Define (A;
b B;
b C;
b Db ) by
Ht (s 1 ) is a balanced residualization of G(s) as defined by (11.7)–(11.10). 4
Ab = 1 k2+1 AT11 + 1 A11 1 k+1 C1T UB1T  (11.21)
4
Bb = 1 1 B1 + k+1 C1T U  (11.22)
11.5 Optimal Hankel norm approximation 4
Cb = C1 1 + k+1 UB1T (11.23)
4
Db = D k+1 U (11.24)
In this approach to model reduction, the problem that is directly addressed is the
following: given a stable model G(s) of order (McMillan degree) n, find a reduced where U is a unitary matrix satisfying
order model G kh (s) of degree k such that the Hankel norm of the approximation error,
B2 = C2T U
kG(s) Gkh (s)kH , is minimized. (11.25)

The Hankel norm of any stable transfer function E (s) is defined as and
4 2
= 1 k2+1 I (11.26)
kE (s)kH =4  12 (P Q) (11.18) The matrix A b has k “stable” eigenvalues (in the open left-half plane); the remaining
ones are in the open right-half plane. Then
where P and Q are the controllability and observability Gramians of E (s). It is also " #
the maximum Hankel singular value of E (s). So in the optimization we seek an error Gkh (s) + F (s) =s Ab Bb (11.27)
which is in some sense closest to being completely unobservable and completely Cb Db
466 MULTIVARIABLE FEEDBACK CONTROL MODEL REDUCTION 467

where Gkh (s) is a stable optimal Hankel norm approximation of order k , and F (s) 11.6 Two practical examples
is an anti-stable (all poles in the open right-half plane) transfer function of order
n k l. The Hankel norm of the error between G and the optimal approximation In this section, we make comparisons between the three main model reduction
Gkh is equal to the (k + 1)’th Hankel singular value of G: techniques presented by applying them to two practical examples. The first example
kG Gkh kH = k+1 (G) (11.28)
is on the reduction of a plant model and the second considers the reduction of a
two degrees-of-freedom controller. Our presentation is similar to that in Samar et al.
Remark 1 The k + 1’th Hankel singular value is generally not repeated, but the possibility is (1995).
included in the theory for completeness.
Remark 2 The order k of the approximation can either be selected directly, or indirectly by
choosing the “cut-off” value k for the included Hankel singular values. In the latter case, one 11.6.1 Reduction of a gas turbine aero-engine model
often looks for large “gaps” in the relative magnitude, k =k+1 .
For the first example, we consider the reduction of a model of a Rolls Royce
Remark 3 There is an infinite number of unitary matrices U satisfying (11.25); one choice is
U = C2 (B2T )y . Spey gas turbine engine. This engine will be considered again in Chapter 12. The
model has 3 inputs, 3 outputs, and 15 states. Inputs to the engine are fuel flow,
Remark 4 If k+1 = n , i.e. only the smallest Hankel singular value is deleted, then F = 0,
b ) has a non-zero anti-stable part and Gkh has to be separated from F . variable nozzle area and an inlet guide vane with a variable angle setting. The
otherwise (A;
b B;
b C;
b D
outputs to be controlled are the high pressure compressor’s spool speed, the ratio
Remark 5 For non-square systems, an optimal Hankel norm approximation can be obtained of the high pressure compressor’s outlet pressure to engine inlet pressure, and the
by first augmenting
 G(s) with zero to form a square system.
 For example, if G(s) is flat, low pressure compressor’s exit Mach number measurement. The model describes
 (s)
define G
4 G(s) = G 1 ( s)
 h (s)
which is square, and let G
= 0 G2 (s) be a k-th order

optimal the engine at 87% of maximum thrust with sea-level static conditions. The Hankel
Hankel norm approximation of G(s) such that kG(s) Gh (s)kH = k+1 G(s) . Then
    singular values for the 15 state model are listed in Table 11.1 below. Recall that
the L1 error bounds after reduction are “twice the sum of the tail” for balanced
k+1 (G(s))  kG G1 kH  kG G h kH = k+1 (G ) = k+1 (G) residualization and balanced truncation and the “sum of the tail” for optimal Hankel
norm approximation. Based on this we decided to reduce the model to 6 states.
Consequently, this implies that kG G1 kH = k+1 (G) and G1 (s) is an optimal Hankel
norm approximation of G(s).
1) 2.0005e+01 6) 6.2964e-01 11) 1.3621e-02
Remark 6 The Hankel norm of a system does not depend on the D-matrix in the system’s 2) 4.0464e+00 7) 1.6689e-01 12) 3.9967e-03
state-space realization. The choice of the D-matrix in Gkh is therefore arbitrary except when 3) 2.7546e+00 8) 9.3407e-02 13) 1.1789e-03
F = 0, in which case it is equal to Db . 4) 1.7635e+00 9) 2.2193e-02 14) 3.2410e-04
Remark 7 The infinity norm does depend on the D-matrix, and therefore the D-matrix of 5) 1.2965e+00 10) 1.5669e-02 15) 3.3073e-05
Gkh can be chosen to reduce the infinity norm of the approximation error (without changing
the Hankel norm). Glover (1984) showed that through a particular choice of D, called Do , the Table 11.1: Hankel singular values of the gas turbine aero-engine model
following bound could be obtained:

kG Gkh Do k1  k+1 + Æ (11.29)


Figure 11.1 shows the singular values (not Hankel singular values) of the reduced
where and full order models plotted against frequency for the residualized, truncated and
optimal Hankel norm approximated cases respectively. The D matrix used for
nX
k l nX
k l
4 kF
Æ = Do k1  i (F ( s))  i+k+l (G(s)) (11.30)
optimal Hankel norm approximation is such that the error bound given in (11.29) is
i=1 i=1 met. It can be seen that the residualized system matches perfectly at steady-state. The
singular values of the error system (G G a ), for each of the three approximations
This results in an infinity norm bound on the approximation error, Æ  
k+l+1 + + n , are shown in Figure 11.2(a). The infinity norm of the error system is computed to be
which is equal to the “sum of the tail” or less since the Hankel singular value k+1 , which may 0.295 for balanced residualization and occurs at 208 rad/s; the corresponding error
be repeated, is only included once. Recall that the bound for the error in balanced truncation
norms for balanced truncation and optimal Hankel norm approximation are 0.324
and balanced residualization is twice the “sum of the tail”.
and 0.179 occurring at 169 rad/sec and 248 rad/sec, respectively. The theoretical
468 MULTIVARIABLE FEEDBACK CONTROL MODEL REDUCTION 469

quite large as is shown in Figure 11.2(b). Note that the residualized system does not
need scaling, and the error system for this case has been shown again only for ease
0 0 0
10 10 10 of comparison. The infinity norms of these errors are computed and are found to
degrade to 5.71 (at 151 rad/sec) for the scaled truncated system and 2.61 (at 168.5
rad/sec) for the scaled optimal Hankel norm approximated system. The truncated and
Reduced: Reduced: Reduced:
10
−5
Full order: 10
−5
Full order: 10
−5
Full order: Hankel norm approximated systems are clearly worse after scaling since the errors in
−2 0 2 4 −2 0 2 4 −2 0 2 4 the critical frequency range around crossover become large despite the improvement
10 10 10 10 10 10 10 10 10 10 10 10
Frequency [rad/s] Frequency [rad/s] Frequency [rad/s] at steady-state. Hence residualization is to be preferred over these other techniques
(a) Balanced residualiza- (c) Optimal Hankel norm whenever good low frequency matching is desired.
(b) Balanced truncation approximation
tion

Figure 11.1: Singular values for model reductions of the aero-engine from 15 to 6 states
100 100 100
50 50 50
0 0 0
0 0 −50 −50 −50
10 10
−100 −100 −100
Reduced: Reduced: Reduced:
−150 Full order: −150 Full order: −150 Full order:
0 0.01 0.02 0.03 0 0.01 0.02 0.03 0 0.01 0.02 0.03
Time [sec] Time [sec] Time [sec]
−5 −5
10 10 (a) Balanced residualiza- (b) Scaled balanced trunca- (c) Scaled optimal Hankel
tion tion norm approximation
Balanced truncation: Balanced truncation:
Balanced residualization: Balanced residualization: Figure 11.3: Aero-engine: Impulse responses (2nd input)
−10 Optimal Hankel-norm approx.: −10 Optimal Hankel-norm approx.:
10 −2 0 2 4
10 −2 0 2 4
10 10 10 10 10 10 10 10
Frequency [rad/s] Frequency [rad/s]
(a) Unscaled (b) Scaled
0 0 0
Figure 11.2: Singular values for the scaled and unscaled error systems
−5 −5 −5

−10 −10 −10


upper bounds for these error norms are 0.635 (twice the sum of the tail) for Reduced: Reduced: Reduced:
−15 Full order: −15 Full order: −15 Full order:
residualization and truncation, and 0.187 (using (11.29)) for optimal Hankel norm
approximation respectively. It should be noted that the plant under consideration 0 0.5 1 0 0.5 1 0 0.5 1
Time [sec] Time [sec] Time [sec]
is desired to have a closed-loop bandwidth of around 10 rad/sec. The error around (a) Balanced residualiza- (b) Scaled balanced trunca- (c) Scaled optimal Hankel
this frequency, therefore, should be as small as possible for good controller design. tion tion norm approximation
Figure 11.2(a) shows that the error for balanced residualization is the smallest in this
frequency range. Figure 11.4: Aero-engine: Step responses (2nd input)

Steady-state gain preservation. It is sometimes desirable to have the steady-state


gain of the reduced plant model the same as the full order model. For example,
this is the case if we want to use the model for feedforward control. The truncated Impulse and step responses from the second input to all the outputs for the three
and optimal Hankel norm approximated systems do not preserve the steady-state reduced systems (with the truncated and optimal Hankel norm approximated systems
gain and have to be scaled, i.e. the model approximation G a is replaced by Ga Ws , scaled) are shown in Figures 11.3 and 11.4 respectively. The responses for the
where Ws = Ga (0) 1 G(0), G being the full order model. The scaled system no other inputs were found to be similar. The simulations confirm that the residualized
longer enjoys the bounds guaranteed by these methods and kG G a Ws k1 can be model’s response is closer to the full order model’s response.
470 MULTIVARIABLE FEEDBACK CONTROL MODEL REDUCTION 471

11.6.2 Reduction of an aero-engine controller seen that this scaling has not degraded the infinity norm of the error significantly
as was claimed by Hoyle et al. (1991). To ensure perfect steady-state tracking the
We now consider reduction of a two degrees-of-freedom H 1 loop-shaping controller is always scaled in this way. We are now in a position to discuss ways of
controller. The plant for which the controller is designed is the full order gas turbine reducing the controller. We will look at the following two approaches:
engine model described in example 11.6.1 above.
1. The scaled controller [ K 1 Wi K2 ] is reduced. A balanced residualization of this
A robust controller was designed using the procedure outlined in Section 9.4.3;
controller preserves the controller’s steady-state gain and would not need to be
see Figure 9.21 which describes the design problem. T ref (s) is the desired closed-
loop transfer function,  is a design parameter, G s = Ms 1 Ns is the shaped plant
scaled again. Reductions via truncation and optimal Hankel norm approximation
techniques, however, lose the steady-state gain. The prefilters of these reduced
and (Ns ; Ms ) are perturbations on the normalized coprime factors representing
controllers would therefore need to be rescaled to match T ref (0).
uncertainty. We denote the actual closed-loop transfer function (from to y ) by T y .
2. The full order controller [ K 1 K2 ] is directly reduced without first scaling the
prefilter. In which case, scaling is done after reduction.
The controller K = [K 1 K2 ], which excludes the loop-shaping weight W 1 (which
includes 3 integral action states), has 6 inputs (because of the two degrees-of-freedom We now consider the first approach. A balanced residualization of [ K 1 Wi K2 ] is
structure), 3 outputs, and 24 states. It has not been scaled (i.e. the steady-state value obtained. The theoretical upper bound on the infinity norm of the error (twice the
of Ty has not been matched to that of T ref by scaling the prefilter). It is reduced to sum of the tail) is 0.698, i.e.
7 states in each of the cases that follow.
Let us first compare the magnitude of T y with that of the specified model T ref .
k K1 Wi (K1 Wi )a K2 K2a k1  0:698 (11.31)
By magnitude, we mean singular values. These are shown in Figure 11.5(a). The where the subscript a refers to the low order approximation. The actual error norm
is computed to be 0.365. T y for this residualization is computed and its magnitude
plotted in Figure 11.6(a). The infinity norm of the difference (T y Tref ) is computed
0
10 0
10

0 0 0
10 10 10

−2
10 −2
10
−2 −2 −2
10 10 10
Tref Tref
Ty Ty Tref Tref Tref
−4
10
−4
10 −4
Ty −4
Ty −4
Ty
−2 0 2 −2 0 2 10 −2 0 2
10 −2 0 2
10 −2 0 2
10 10 10 10 10 10 10 10 10 10 10 10 10 10 10
Frequency [rad/s] Frequency [rad/s] Frequency [rad/s] Frequency [rad/s] Frequency [rad/s]

[ K1 K2 ] [ K1 Wi K2 ]
(a) Balanced residualiza- (b) Scaled balanced trunca- (c) Scaled optimal Hankel
(a) Unscaled prefilter (b) Scaled prefilter tion tion norm approximation

Figure 11.5: Singular values of Tref and Ty Figure 11.6: Singular values of Tref and Ty for reduced [ K1 Wi K2 ]

infinity norm of the difference T y Tref is computed to be 0.974 and occurs at to be 1.44 (at 43 rad/sec). This value is very close to that obtained with the full order
8.5 rad/sec. Note that we have  = 1 and the achieved in the H 1 optimization is controller [ K1 Wi K2 ], and so the closed-loop response of the system with this
2.32, so that kT y Tref k1   2 as required; see (9.81). The prefilter is now reduced controller is expected to be very close to that with the full order controller.
scaled so that Ty matches Tref exactly at steady-state, i.e. we replace K 1 by K1 Wi Next [ K1 Wi K2 ] is reduced via balanced truncation. The bound given by (11.31)
where Wi = Ty (0) 1 Tref (0). It is argued by Hoyle et al. (1991) that this scaling still holds. The steady-state gain, however, falls below the adjusted level, and the
produces better model matching at all frequencies, because the H 1 optimization prefilter of the truncated controller is thus scaled. The bound given by (11.31)
process has already given T y the same magnitude frequency response shape as the can no longer be guaranteed for the prefilter (it is in fact found to degrade to
model Tref . The scaled transfer function is shown in Figure 11.5(b), and the infinity 3.66), but it holds for K 2 K2a . Singular values of T ref and Ty for the scaled
norm of the difference (T y Tref ) computed to be 1.44 (at 46 rad/sec). It can be truncated controller are shown in Figure 11.6(b). The infinity norm of the difference
472 MULTIVARIABLE FEEDBACK CONTROL MODEL REDUCTION 473

is computed to be 1.44 and this maximum occurs at 46 rad/sec. Finally [ K 1 Wi K2 ]


is reduced by optimal Hankel norm approximation. The following error bound is
theoretically guaranteed: 1.5 1.5 1.5

k K1 Wi (K1 Wi )a K2 K2a k1  0:189 (11.32)


1

Reduced:
1

Reduced:
1

Reduced:
0.5 0.5 0.5
Full order: Full order: Full order:
Again the reduced prefilter needs to be scaled and the above bound can no longer be
guaranteed; it actually degrades to 1.87. Magnitude plots of T y and Tref are shown
0 0 0

in Figure 11.6(c), and the infinity norm of the difference is computed to be 1.43 and −0.5
0 0.5 1 1.5 2
−0.5
0 0.5 1 1.5 2
−0.5
0 0.5 1 1.5 2
Time [sec] Time [sec] Time [sec]
occurs at 43 rad/sec.
(a) Step in r1 (b) Step in r2 (c) Step in r3
It has been observed that both balanced truncation and optimal Hankel norm
approximation cause a lowering of the system steady-state gain. In the process of Figure 11.7: Closed-loop step responses: [ K1 Wi K2 ] balanced residualized
adjustment of these steady-state gains, the infinity norm error bounds are destroyed.
In the case of our two degrees-of-freedom controller, where the prefilter has been
optimized to give closed-loop responses within a tolerance of a chosen ideal model,
large deviations may be incurred. Closed-loop responses for the three reduced
1.5 1.5 1.5
controllers discussed above are shown in Figures 11.7, 11.8 and 11.9.
1 1 1
It is seen that the residualized controller performs much closer to the full order
Reduced: Reduced: Reduced:
controller and exhibits better performance in terms of interactions and overshoots. 0.5
Full order:
0.5
Full order:
0.5
Full order:
It may not be possible to use the other two reduced controllers if the deviation 0 0 0
from the specified model becomes larger than the allowable tolerance, in which case
the number of states by which the controller is reduced would probably have to be −0.5
0 0.5 1 1.5 2
−0.5
0 0.5 1 1.5 2
−0.5
0 0.5 1 1.5 2
Time [sec] Time [sec] Time [sec]
reduced. It should also be noted from (11.31) and (11.32) that the guaranteed bound
for K2 K2a is lowest for optimal Hankel norm approximation. (a) Step in r1 (b) Step in r2 (c) Step in r3

Let us now consider the second approach. The controller [ K 1 K2 ] obtained from Figure 11.8: Closed-loop step responses: [ K1 Wi K2 ] balanced truncated
the H1 optimization algorithm is reduced directly. The theoretical upper bound on
the error for balanced residualization and truncation is

k K1 K1a K2 K2a k1  0:165 (11.33)


1.5 1.5 1.5

The residualized controller retains the steady-state gain of [ K 1 K2 ]. It is therefore 1 1 1

scaled with the same Wi as was required for scaling the prefilter of the full order Reduced: Reduced: Reduced:
controller. Singular values of T ref and Ty for this reduced controller are shown in
0.5 0.5 0.5
Full order: Full order: Full order:
Figure 11.10(a), and the infinity norm of the difference was computed to be 1.50 0 0 0

at 44 rad/sec. [ K1 K2 ] is next truncated. The steady-state gain of the truncated −0.5 −0.5 −0.5
controller is lower than that of [ K 1 K2 ], and it turns out that this has the effect
0 0.5 1 1.5 2 0 0.5 1 1.5 2 0 0.5 1 1.5 2
Time [sec] Time [sec] Time [sec]
of reducing the steady-state gain of T y . Note that the steady-state gain of T y (a) Step in r1 (b) Step in r2 (c) Step in r3
is already less than that of T ref (Figure 11.5). Thus in scaling the prefilter of the
truncated controller, the steady-state gain has to be pulled up from a lower level as Figure 11.9: Closed-loop step responses: [ K1 Wi K2 ] optimal Hankel norm approximated
compared with the previous (residualized) case. This causes greater degradation at and rescaled
other frequencies. The infinity norm of (T y Tref ) in this case is computed to be
25.3 and occurs at 3.4 rad/sec (see Figure 11.10(b)). Finally [ K 1 K2 ] is reduced
474 MULTIVARIABLE FEEDBACK CONTROL MODEL REDUCTION 475

0 0 0
10 10 10

−2 −2 −2
10 10 10

Tref Tref Tref


−4
Ty −4
Ty −4
Ty 1.5 1.5 1.5

10 −2 0 2
10 −2 0 2
10 −2 0 2
10 10 10 10 10 10 10 10 10 1 1 1
Frequency [rad/s] Frequency [rad/s] Frequency [rad/s]
(a) Scaled balanced residu- (b) Scaled balanced trunca- (c) Scaled optimal Hankel Reduced: Reduced: Reduced:
0.5 0.5 0.5
alization tion norm approximation Full order: Full order: Full order:

Figure 11.10: Singular values of Tref and Ty for reduced [ K1 K2 ]


0 0 0

−0.5 −0.5 −0.5


0 0.5 1 1.5 2 0 0.5 1 1.5 2 0 0.5 1 1.5 2
Time [sec] Time [sec] Time [sec]

(a) Step in r1 (b) Step in r2 (c) Step in r3


by optimal Hankel norm approximation. The theoretical bound given in (11.29) is
computed and found to be 0.037, i.e. we have Figure 11.11: Closed-loop step responses: [ K1 K2 ] balanced residualized and scaled
1.5 1.5 1.5

k K1 K1a K2 K2a k1  0:037 (11.34) 1 1 1

Reduced: Reduced: Reduced:


0.5 0.5 0.5
The steady-state gain falls once more in the reduction process, and again a Full order: Full order: Full order:
larger scaling is required. Singular value plots for T y and Tref are shown in 0 0 0

Figure 11.10(c). kT y Tref k1 is computed to be 4.5 and occurs at 5.1 rad/sec. −0.5 −0.5 −0.5
0 0.5 1 1.5 2 0 0.5 1 1.5 2 0 0.5 1 1.5 2
Time [sec] Time [sec] Time [sec]
Some closed-loop step response simulations are shown in Figures 11.11, 11.12 and (a) Step in r1 (b) Step in r2 (c) Step in r3
11.13. It can be seen that the truncated and Hankel norm approximated systems
have deteriorated to an unacceptable level. Only the residualized system maintains Figure 11.12: Closed-loop step responses: [ K1 K2 ] balanced truncated and scaled
an acceptable level of performance. 1.5 1.5 1.5

We have seen that the first approach yields better model matching, though at the 1 1 1

expense of a larger infinity norm bound on K 2 K2a (compare (11.31) and (11.33), 0.5
Reduced:
0.5
Reduced:
0.5
Reduced:
or (11.32) and (11.34)). We have also seen how the scaling of the prefilter in the Full order: Full order: Full order:

first approach gives poorer performance for the truncated and optimal Hankel norm 0 0 0

approximated controllers, relative to the residualized one. −0.5 −0.5 −0.5


0 0.5 1 1.5 2 0 0.5 1 1.5 2 0 0.5 1 1.5 2
Time [sec] Time [sec] Time [sec]
In the second case, all the reduced controllers need to be scaled, but a “larger” scaling (a) Step in r1 (b) Step in r2 (c) Step in r3
is required for the truncated and optimal Hankel norm approximated controllers.
There appears to be no formal proof of this observation. It is, however, intuitive Figure 11.13: Closed-loop step responses: [ K1 K2 ] optimal Hankel norm approximated and
in the sense that controllers reduced by these two methods yield poorer model scaled
matching at steady-state as compared with that achieved by the full order controller.
A larger scaling is therefore required for them than is required by the full order or
residualized controllers. In any case, this larger scaling gives poorer model matching
at other frequencies, and only the residualized controller’s performance is deemed
acceptable.
476 MULTIVARIABLE FEEDBACK CONTROL MODEL REDUCTION 477

11.7 Reduction of unstable models Hankel singular values  1  2  : : :  k > k+1      n > 0.
Then (Na ; Ma ) is a normalized left-coprime factorization of G a = Ma 1 Na , and
Balanced truncation, balanced residualization and optimal Hankel norm approxima- [Na Ma ] has Hankel singular values  1 ; 2 ; : : : ; k .
tion only apply to stable models. In this section we will briefly present two ap-
proaches for reducing the order of an unstable model.
Exercise 11.3 Is Theorem 11.3 true, if we replace balanced truncation by balanced
residualization?
11.7.1 Stable part model reduction
Enns (1984) and Glover (1984) proposed that the unstable model could first be
decomposed into its stable and anti-stable parts. Namely

G(s) = Gu (s) + Gs (s) (11.35) 11.8 Model reduction using MATLAB


where Gu (s) has all its poles in the closed right-half plane and G s (s) has all its poles
in the open left-half plane. Balanced truncation, balanced residualization or optimal The commands in Table 11.2 from the MATLAB -toolbox may be used to perform
Hankel norm approximation can then be applied to the stable part G s (s) to find a model reduction for stable systems. For an unstable system the commands in
reduced order approximation G sa (s). This is then added to the anti-stable part to Table 11.3 may be used.
give
Ga (s) = Gu (s) + Gsa (s) (11.36)
as an approximation to the full order model G(s).
Table 11.2: MATLAB commands for model reduction of a stable system
% Uses the Mu-toolbox
sysd=strans(sys); % order states in Jordan form according to speed
syst=strunc(sysd,k); % then: truncate leaving k states in syst.
sysr=sresid(sysd,k); % or: residualize leaving k states in sysr.
11.7.2 Coprime factor model reduction %
[sysb,hsig]=sysbal(sys); % obtain balanced realization.

The coprime factors of a transfer function G(s) are stable, and therefore we could
sysbt=strunc(sysb,k); % then: balanced truncation leaving k states.
sysbr=sresid(sysb,k); % or: balanced residualization.
reduce the order of these factors using balanced truncation, balanced residualization sysh=hankmr(sysb,hsig,k,’d’); % or: optimal Hankel norm approximation

or optimal Hankel norm approximation, as proposed in the following scheme


(McFarlane and Glover, 1990).
 Let G(s) = M 1 (s)N (s), where M (s) and N (s) are stable left-coprime factors Table 11.3: MATLAB commands for model reduction of an unstable system
of G(s).
% Uses the Mu-toolbox


[syss,sysu]=sdecomp(sys); % decompose into stable and unstable part.
Approximate [N M ] of degree n by [N a Ma ] of degree k < n, using balanced [sysb,hsig]=sysbal[syss); %
sys1=sresid(sysb,ks); % balanced residualization of stable part.
truncation, balanced residualization or optimal Hankel norm approximation.

sys1=hankmr(sysb,hsig,ks,’d’); % or: Hankel norm approx. of stable part.
Realize the reduced order transfer function G a (s), of degree k , by G a (s) = syssbr=madd(sys1,sysu); % realize reduced-order system.

Ma 1 Na . %
[nlcf,hsig,nrcf]=sncfbal(sys); % balanced realization of coprime factors.
nrcfr=sresid(nrcf,k); % residualization of coprime factors.
A dual procedure could be written down based on a right coprime factorization of syscbr=cf2sys(nrcfr); % realize reduced-order system.
G(s).
For related work in this area, we refer the reader to (Anderson and Liu, 1989; Meyer, Alternatively, the command [ar,br,cr,dr]=ohklmr(a,b,c,d,1,k) in
1987). In particular, Meyer (1987) has derived the following result: the MATLAB Robust Control Toolbox finds directly the optimal Hankel norm
approximation of an unstable plant based on first decomposing the system into the
Theorem 11.3 Let (N; M ) be a normalized left-coprime factorization of G(s) of stable and unstable parts. It avoids the sometimes numerically ill-conditioned step of
degree n. Let [Na Ma ] be a degree k balanced truncation of [N M ] which has first finding a balanced realization.
478 MULTIVARIABLE FEEDBACK CONTROL

11.9 Conclusion

12
We have presented and compared three main methods for model reduction based
on balanced realizations: balanced truncation, balanced residualization and optimal
Hankel norm approximation.
Residualization, unlike truncation and optimal Hankel norm approximation,
preserves the steady-state gain of the system, and, like truncation, it is simple and
computationally inexpensive. It is observed that truncation and optimal Hankel norm
approximation perform better at high frequencies, whereas residualization performs
CASE STUDIES
better at low and medium frequencies, i.e. up to the critical frequencies. Thus for
plant model reduction, where models are not accurate at high frequencies to start
with, residualization would seem to be a better option. Further, if the steady-state
gains are to be kept unchanged, truncated and optimal Hankel norm approximated In this chapter, we present three case studies which illustrate a number of important practical
systems require scaling, which may result in large errors. In such a case, too, H
issues, namely: weights selection in 1 mixed-sensitivity design, disturbance rejection,
residualization would be a preferred choice. H
output selection, two degrees-of-freedom 1 loop-shaping design, ill-conditioned plants, 
analysis and  synthesis.
Frequency weighted model reduction has been the subject of numerous papers over
the past few years. The idea is to emphasize frequency ranges where better matching
is required. This, however, has been observed to have the effect of producing larger
errors (greater mismatching) at other frequencies (Anderson, 1986; Enns, 1984). In 12.1 Introduction
order to get good steady-state matching, a relatively large weight would have to be
used at steady-state, which would cause poorer matching elsewhere. The choice of
The complete design process for an industrial control system will normally include
weights is not straightforward, and an error bound is available only for weighted
the following steps:
Hankel norm approximation. The computation of the bound is also not as easy as
in the unweighted case (Anderson and Liu, 1989). Balanced residualization can in 1. Plant modelling: to determine a mathematical model of the plant either from
this context, be seen as a reduction scheme with implicit low and medium frequency experimental data using identification techniques, or from physical equations
weighting. describing the plant dynamics, or a combination of these.
For controller reduction, we have shown in a two degrees-of-freedom example, the 2. Plant input-output controllability analysis: to discover what closed-loop
importance of scaling and steady-state gain matching. performance can be expected and what inherent limitations there are to ‘good’
control, and to assist in deciding upon an initial control structure and may be an
In general, steady-state gain matching may not be crucial, but the matching should
initial selection of performance weights.
usually be good near the desired closed-loop bandwidth. Balanced residualization
3. Control structure design: to decide on which variables to be manipulated and
has been seen to perform close to the full order system in this frequency range. Good
measured and which links should be made between them.
approximation at high frequencies may also sometimes be desired. In such a case,
4. Controller design: to formulate a mathematical design problem which captures
using truncation or optimal Hankel norm approximation with appropriate frequency
the engineering design problem and to synthesize a corresponding controller.
weightings may yield better results.
5. Control system analysis: to assess the control system by analysis and simulation
against the performance specifications or the designer’s expectations.
6. Controller implementation: to implement the controller, almost certainly in
software for computer control, taking care to address important issues such as
anti-windup and bumpless transfer.
7. Control system commissioning: to bring the controller on-line, to carry out on-
site testing and to implement any required modifications before certifying that the
controlled plant is fully operational.
480 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 481

In this book we have focused on steps 2, 3, 4 and 5, and in this chapter we will present buffeting, the airframe and component lives are lengthened and passenger comfort is
three case studies which demonstrate many of the ideas and practical techniques increased.
which can be used in these steps. The case studies are not meant to produce the The design of rotorcraft flight control systems, for robust stability and performance,
‘best’ controller for the application considered but rather are used here to illustrate a has been studied over a number of years using a variety of methods including:
particular technique from the book. H1 optimization (Yue and Postlethwaite, 1990; Postlethwaite and Walker, 1992);
In case study 1, a helicopter control law is designed for the rejection of atmospheric eigenstructure assignment (Manness and Murray-Smith, 1992; Samblancatt et al.,
turbulence. The gust disturbance is modelled as an extra input to an S=KS 1990); sliding mode control (Foster et al., 1993); and H 2 design (Takahashi, 1993).
H1 mixed-sensitivity design problem. Results from nonlinear simulations indicate The H1 controller designs have been particularly successful (Walker et al., 1993),
significant improvement over a standard S=KS design. For more information on the and have proved themselves in piloted simulations. These designs have used
applicability of H 1 control to advanced helicopter flight, the reader is referred to frequency information about the disturbances to limit the system sensitivity but
Walker and Postlethwaite (1996) who describe the design and ground-based piloted in general there has been no explicit consideration of the effects of atmospheric
simulation testing of a high performance helicopter flight control system. turbulence. Therefore by incorporating practical knowledge about the disturbance
Case study 2 illustrates the application and usefulness of the two degrees-of-freedom characteristics, and how they affect the real helicopter, improvements to the overall
H1 loop-shaping approach by applying it to the design of a robust controller for performance should be possible. We will demonstrate this below.
a high performance areo-engine. Nonlinear simulation results are shown. Efficient The nonlinear helicopter model we will use for simulation purposes was developed at
and effective tools for control structure design (input-output selection) are also the Defence Research Agency (DRA), Bedford (Padfield, 1981) and is known as the
described and applied to this problem. This design work on the aero-engine has been Rationalized Helicopter Model (RHM). A turbulence generator module has recently
further developed and forms the basis of a multi-mode controller which has been been included in the RHM and this enables controller designs to be tested on-line
implemented and successfully tested on a Rolls-Royce Spey engine test facility at for their disturbance rejection properties. It should be noted that the model of the
the UK Defence Research Agency, Pyestock (Samar, 1995). gusts affects the helicopter equations in a complicated fashion and is self contained
The final case study is concerned with the control of an idealized distillation column. in the code of the RHM. For design purposes we will imagine that the gusts affect
A very simple plant model is used, but it is sufficient to illustrate the difficulties of the model in a much simpler manner.
controlling ill-conditioned plants and the adverse effects of model uncertainty. The We will begin by repeating the design of Yue and Postlethwaite (1990) which used
structured singular value  is seen to be a powerful tool for robustness analysis. an S=KS H1 mixed sensitivity problem formulation without explicitly considering
Case studies 1, 2 and 3 are based on papers by Postlethwaite et al. (1994), Samar and atmospheric turbulence. We will then, for the purposes of design, represent gusts as a
Postlethwaite (1994), and Skogestad et al. (1988), respectively. perturbation in the velocity states of the helicopter model and include this disturbance
as an extra input to the S=KS design problem. The resulting controller is seen to
be substantially better at rejecting atmospheric turbulence than the earlier standard
S=KS design.
12.2 Helicopter control
This case study is used to illustrate how weights can be selected in H 1 mixed- 12.2.2 The helicopter model
sensitivity design, and how this design problem can be modified to improve
The aircraft model used in our work is representative of the Westland Lynx, a twin-
disturbance rejection properties.
engined multi-purpose military helicopter, approximately 9000 lbs gross weight,
with a four-blade semi-rigid main rotor. The unaugmented aircraft is unstable, and
exhibits many of the cross-couplings characteristic of a single main-rotor helicopter.
12.2.1 Problem description In addition to the basic rigid body, engine and actuator components, the model also
In this case study, we consider the design of a controller to reduce the effects of includes second order rotor flapping and coning modes for off-line use. The model
atmospheric turbulence on helicopters. The reduction of the effects of gusts is very has the advantage that essentially the same code can be used for a real-time piloted
important in reducing a pilot’s workload, and enables aggressive manoeuvers to simulation as for a workstation-based off-line handling qualities assessment.
be carried out in poor weather conditions. Also, as a consequence of decreased The equations governing the motion of the helicopter are complex and difficult
482 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 483

to formulate with high levels of precision. For example, the rotor dynamics are roughly speaking controls lift. The longitudinal and lateral cyclic inputs change the
particularly difficult to model. A robust design methodology is therefore essential for main rotor blade angles differently thereby tilting the lift vector to give longitudinal
high performance helicopter control. The starting point for this study was to obtain and lateral motion, respectively. The tail rotor is used to balance the torque generated
by the main rotor, and so stops the helicopter spinning around; it is also used to give
State Description lateral motion. This description, which assumes the helicopter inputs and outputs are
 Pitch attitude decoupled, is useful to get a feeling of how a helicopter works but the dynamics are
 Roll attitude actually highly coupled. They are also unstable, and about some operating points
p Roll rate (body-axis) exhibit non-minimum phase characteristics.
q Pitch rate (body-axis)
 Yaw rate We are interested in the design of full-authority controllers, which means that the
vx Forward velocity controller has total control over the blade angles of the main and tail rotors, and is
vy Lateral velocity interposed between the pilot and the actuation system. It is normal in conventional
vz Vertical velocity helicopters for the controller to have only limited authority leaving the pilot to close
the loop for much of the time (manual control). With a full-authority controller, the
pilot merely provides the reference commands.
Table 12.1: Helicopter state vector
One degree-of-freedom controllers as shown in Figure 12.1 are to be designed.
an eighth-order differential equation modelling the small-perturbation rigid motion
Notice that in the standard one degree-of-freedom configuration the pilot reference
of the aircraft about hover. The corresponding state-space model is
x_ = Ax + Bu Controlled outputs
-d - q - y1
(12.1) Pilot commands
y = Cx (12.2) r1 +
-6 - K -u G y2
where the matrices A; B and C for the appropriately scaled system are available over
the Internet as described in the preface. The 8 state rigid body vector x is given in
rate feedback
the Table 12.1. The outputs consist of four controlled outputs
9
 Heave velocity H_ >
>
=
 Pitch attitude  y1 (a)
 Roll attitude  >
>
;
 Heading rate _
together with two additional (body-axis) measurements 
r1

-+- d - K -u G q- 
y1


 Roll rate p

y2 0 6 y2
 Pitch rate q
The controller (or pilot in manual control) generates four blade angle demands which
are effectively the helicopter inputs, since the actuators (which are typically modelled
(b)
as first order lags) are modelled as unity gains in this study. The blade angles are
9
 main rotor collective > Figure 12.1: Helicopter control structure (a) as implemented, (b) in the standard one
>
=
 longitudinal cyclic
u
degree-of-freedom configuration
 lateral cyclic >
>
;
 tail rotor collective commands r1 are augmented by a zero vector because of the rate feedback signals.
The action of each of these blade angles can be briefly described as follows. The main These zeros indicate that there are no a priori performance specifications on y 2 =
rotor collective changes all the blades of the main rotor by an equal amount and so [ p q ]T .
484 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 485

12.2.3 H1 mixed-sensitivity design errors and therefore these weights were given a finite gain of 500 at low frequencies.
(Notice that a pure integrator cannot be included in W 1 anyway, since the standard
We will consider the H1 mixed-sensitivity design problem illustrated in Figure 12.2. H1 optimal control problem would not then be well posed in the sense that the
It can be viewed as a tracking problem as previously discussed in Chapter 9 (see corresponding generalized plant P could not then be stabilized by the feedback
controller K ). In tuning W 1 it was found that a finite attenuation at high frequencies
- W1 - 9
=
was useful in reducing overshoot. Therefore, high-gain low-pass filters were used in
z the primary channels to give accurate tracking up to about 6 rad/s. The presence of
unmodelled rotor dynamics around 10 rad/s limits the bandwidth of W 1 . With four
- W2 - ;
inputs to the helicopter, we can only expect to independently control four outputs.
Because of the rate feedback measurements the sensitivity function S is a six by
r - W3 -+ d q- K qu- G q-y six matrix and therefore two of its singular values (corresponding to p and q ) are
-6 always close to one across all frequencies. All that can be done in these channels is
to improve the disturbance rejection properties around crossover, 4 to 7 rad/s, and
this was achieved using second-order band-pass filters in the rate channels of W 1 .
Selection of W2 (s): The same first-order high-pass filter is used in each channel
Figure 12.2: S=KS mixed-sensitivity minimization with a corner frequency of 10 rad/s to limit input magnitudes at high frequencies
and thereby limit the closed-loop bandwidth. The high frequency gain of W 2 can be
Figure 9.11), but with an additional weight W 3 . W1 and W2 are selected as loop- increased to limit fast actuator movement. The low frequency gain of W 2 was set to
shaping weights whereas W 3 is signal-based. The optimization problem is to find a approximately 100 dB to ensure that the cost function is dominated by W 1 at low
stabilizing controller K to minimize the cost function frequencies.
  Selection of W3 (s): W3 is a weighting on the reference input r. It is chosen to

W1 SW3
(12.3)
W2 KSW3
1
be a constant matrix with unity weighting on each of the output commands and
a weighting of 0.1 on the fictitious rate demands. The reduced weighting on the
This cost was also considered by Yue and Postlethwaite (1990) in the context rates (which are not directly controlled) enables some disturbance rejection on these
of helicopter control. Their controller was successfully tested on a piloted flight outputs, without them significantly affecting the cost function. The main aim of W 3
simulator at DRA Bedford and so we propose to use the same weights here. The is to force equally good tracking of each of the primary signals.
design weights W1 ; W2 and W3 were selected as For the controller designed using the above weights, the singular value plots of S
 and KS are shown in Figures 12.3(a) and 12.3(b). These have the general shapes and
s + 12 s + 2:81 s + 2:81
W1 = diag 0:5 ; 0:89 ; 0:89 ; bandwidths designed for and, as already mentioned, the controlled system performed
s + 0:012 s + 0:005 s + 0:005 well in piloted simulation. The effects of atmospheric turbulence will be illustrated

s + 10 2s 2s
0:5 ; ; (12.4) later after designing a second controller in which disturbance rejection is explicitly
s + 0:01 (s + 4)(s + 4:5) (s + 4)(s + 4:5) included in the design problem.
s + 0:0001
W2 = 0:5 I
s + 10 4
(12.5)
W3 = diag f1; 1; 1; 1; 0:1; 0:1g (12.6) 12.2.4 Disturbance rejection design
The reasoning behind these selections of Yue and Postlethwaite (1990) is In the design below we will assume that the atmospheric turbulence can be modelled
summarized below. as gust velocity components that perturb the helicopter’s velocity states v x , vy and
Selection of W1 (s): For good tracking accuracy in each of the controlled outputs
vz by d = [ d1 d2 d3 ]T as in the following equations. The disturbed system is
therefore expressed as
the sensitivity function is required to be small. This suggests forcing integral action
into the controller by selecting an s 1 shape in the weights associated with the
 

controlled outputs. It was not thought necessary to have exactly zero steady-state x_ = Ax + A 0d + Bu (12.7)
486 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 487

101 103
- W1 - 9
=
z
100
102

101
- W2 - ;

10 1 100
r - W3 -+ d q- K q - G -++ d q-y
10 1 -6 u 6
10 2
10 2
Gd
6
10 103 3 10 2 10 1 100 101 102 103 10 103 3 10 2 10 1 100 101 102 103
Frequency [rad/s] Frequency [rad/s]

(a) S (b) KS

Figure 12.3: Singular values of S and KS (S=KS design)


d - W4

y = Cx: (12.8) Figure 12.4: Disturbance rejection design


4
Define Bd = columns 6,7 and 8 of A. Then we have
101 103
x_ = Ax + Bu + Bd d (12.9)
102
y = Cx (12.10) 100
101
which in transfer function terms can be expressed as 10 1
100

y = G(s)u + Gd (s)d (12.11) 10 2 10 1

where G(s) = C (sI A) 1 B , and Gd (s) = C (sI A) 1 Bd . The design problem


10 2
10 3
we will solve is illustrated in Figure 12.4. The optimization problem is to find a 10 3 10 2 10 1 100 101 102 103 10 103 3 10 2 10 1 100 101 102 103
stabilizing controller K that minimizes the cost function Frequency [rad/s] Frequency [rad/s]

  (a) S (b) KS

W1 SW3 W1 SGd W4
(12.12)
W2 KSW3 W2 KSGdW4
1 Figure 12.5: Singular values of S and KS (disturbance rejection design)
 
which is the H1 norm of the transfer function from dr to z . This is easily cast into
the general control configuration and solved using standard software. Notice that if 12.2.5 Comparison of disturbance rejection properties of the
we set W4 to zero the problem reverts to the S=KS mixed-sensitivity design of the two designs
previous subsection. To synthesize the controller we used the same weights W 1 , W2
and W3 as in the S=KS design, and selected W 4 = I , with a scalar parameter To compare the disturbance rejection properties of the two designs we simulated
used to emphasize disturbance rejection. After a few iterations we finalized on both controllers on the RHM nonlinear helicopter model equipped with a statistical
= 30. For this value of , the singular value plots of S and KS , see Figures 12.5(a) discrete gust model for atmospheric turbulence, (Dahl and Faulkner, 1979). With this
and 12.5(b), are quite similar to those of the S=KS design, but as we will see in the simulation facility, gusts cannot be generated at hover and so the nonlinear model was
next subsection there is a significant improvement in the rejection of gusts. Also, trimmed at a forward flight speed of 20 knots (at an altitude of 100 ft), and the effect
since Gd shares the same dynamics as G, and W 4 is a constant matrix, the degree of of turbulence on the four controlled outputs observed. Recall that both designs were
the disturbance rejection controller is the same as that for the S=KS design. based on a linearized model about hover and therefore these tests at 20 knots also
488 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 489

vx Turb. vy Turb. Heave Velocity Pitch Attitude


40 40 2
0.1
20 1
20

rads
ft/s

ft/s

ft/s
0 0 0
0
-20 -1
-0.1
-20 -40 -2
0 5 10 15 0 5 10 15 0 5 10 15 0 5 10 15

vz Turb. Wind Direction Roll Attitude Heading Rate


5 46 0.2
0.2
45.5 0.1
0

Degs

rads
ft/s

rads/s
45 0 0

-5 44.5 -0.1
-0.2
44 -0.2
0 5 10 15 0 5 10 15 0 5 10 15 0 5 10 15

Figure 12.6: Velocity components of turbulence (time in seconds) Figure 12.8: Response to turbulence of the disturbance rejection design (time in seconds)

Heave Velocity Pitch Attitude In Figure 12.6, we show a typical gust generated by the RHM. The effects of this
2
0.1 on the controlled outputs are shown in Figures 12.7 and 12.8 for the S=KS design
1
and the disturbance rejection design, respectively. Compared with the S=KS design,
rads

the disturbance rejection controller practically halves the turbulence effect on heavy
ft/s

0 0

-1
velocity, pitch attitude and roll attitude. The change in the effect on heading rate is
-0.1 small.
-2
0 5 10 15 0 5 10 15

Roll Attitude Heading Rate


0.2
0.2 12.2.6 Conclusions
0.1

The two controllers designed were of the same degree and had similar frequency
rads

rads/s

0 0
domain properties. But by incorporating knowledge about turbulence activity into
-0.1
-0.2
the second design, substantial improvements in disturbance rejection were achieved.
0 5 10 15
-0.2
0 5 10 15 The reduction of the turbulence effects by a half in heave velocity, pitch attitude and
roll attitude indicates the possibility of a significant reduction in a pilot’s workload,
allowing more aggressive manoeuvers to be carried out with greater precision.
Figure 12.7: Response to turbulence of the S=KS design (time in seconds) Passenger comfort and safety would also be increased.
The study was primarily meant to illustrate the ease with which information about
disturbances can be beneficially included in controller design. The case study also
demonstrate the robustness of the controllers. Tests were carried out for a variety of demonstrated the selection of weights in H 1 mixed-sensitivity design. To read how
gusts, and in all cases the disturbance rejection design was significantly better than the H1 methods have been successfully used and tested in flight on a Bell 205 fly-
the S=KS design. by-wire helipcopter, see Postlethwaite et al. (1999) and Smerlas et al. (2001).
490 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 491

12.3 Aero-engine control through the whole machine and must be avoided at all costs. However, for higher
performance and greater efficiency the compressors must also be operated close to
In this case study, we apply a variety of tools to the problem of output selection, and their surge lines. The primary aim of the control system is thus to control engine
illustrate the application of the two degrees-of-freedom H 1 loop-shaping design thrust whilst regulating compressor surge margins. But these engine parameters,
procedure. namely thrust and the two compressor surge margins, are not directly measurable.
There are, however, a number of measurements available which represent these
quantities, and our first task is to choose from the available measurements, the ones
12.3.1 Problem description that are in some sense better for control purposes. This is the problem of output
selection as discussed in Chapter 10.
This case study explores the application of advanced control techniques to the The next step is the design of a robust multivariable controller which provides
problem of control structure design and robust multivariable controller design for satisfactory performance over the entire operating range of the engine. Since the
a high performance gas turbine engine. The engine under consideration is the Spey aero-engine is a highly nonlinear system, it is normal for several controllers to be
engine which is a Rolls-Royce 2-spool reheated turbofan, used to power modern designed at different operating points and then to be scheduled across the flight
military aircraft. The engine has two compressors: a low pressure (LP) compressor envelope. Also in an aero-engine there are a number of parameters, apart from the
or fan, and a high pressure (HP) or core compressor as shown in Figure 12.9. The ones being primarily controlled, that are to be kept within specified safety limits, e.g.
the turbine blade temperature. The number of parameters to be controlled and/or
HP limited exceeds the number of available inputs, and hence all these parameters
Compressor HP Turbine
LP
 cannot be controlled independently at the same time. The problem can be tackled
aBPPa
Compressor
Combustor  LP Turbine by designing a number of scheduled controllers, each for a different set of output
aPPP
PPa .... .. .. ... Pa P
 ##
B  . . #
Nozzle variables, which are then switched between, depending on the most significant limit

H at any given time. The switching is usually done by means of lowest-wins or highest-


a .... .. .. H... .. !! a 
wins gates, which serve to propagate the output of the most suitable controller
to the plant input. Thus, a switched gain-scheduled controller can be designed to

!
!!
!
@ H.
@H !!!! 
cover the full operating range and all possible configurations. In Postlethwaite et al.
(1995) a digital multi-mode scheduled controller is designed for the Spey engine
@ 

Fuel flow under consideration here. In their study gain-scheduling was not required to meet
Variable inlet Variable nozzle
(WFE) the design specifications. Below we will describe the design of a robust controller
for the primary engine outputs using the two degrees-of-freedom H 1 loop-shaping
guide vanes (IGV) area (AJ)

Figure 12.9: Schematic of the aero-engine approach. The same methodology was used in the design of Postlethwaite et al.
(1995) which was successfully implemented and tested on the Spey engine.

high pressure flow at the exit of the core compressor is combusted and allowed to
partially expand through the HP and LP turbines which drive the two compressors. 12.3.2 Control structure design: output selection
The flow finally expands to atmospheric pressure at the nozzle exit, thus producing
thrust for aircraft propulsion. The efficiency of the engine and the thrust produced The Spey engine has three inputs, namely fuel flow (WFE), a nozzle with a variable
depends on the pressure ratios generated by the two compressors. If the pressure ratio area (AJ), and inlet guide vanes with a variable angle setting (IGV):
across a compressor exceeds a certain maximum, it may no longer be able to hold the u = [WFE AJ IGV ]T
pressure head generated and the flow will tend to reverse its direction. This happens
in practice, with the flow actually going negative, but it is only a momentary effect. In this study, there are six output measurements available,
When the back pressure has cleared itself, positive flow is re-established but, if flow
yall = [NL OPR1 OPR2 LPPR LPEMN NH]T
conditions do not change, the pressure builds up causing flow reversal again. Thus
the flow surges back and forth at high frequency, the phenomenon being referred as described below. For each one of the six output measurements, a look-up table
to as surge. Surging causes excessive aerodynamic pulsations which are transmitted provides its desired optimal value (set point) as a function of the operating point.
492 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 493

However, with three inputs we can only control three outputs independently so the represents 7:5% of maximum thrust. A step demand on each of these scaled outputs
first question we face is, which three? would thus correspond to a demand of 7:5% (of maximum) in thrust. The surge
Engine thrust (one of the parameters to be controlled) can be defined in terms of the margin-related outputs are scaled so that one unit corresponds to 5% surge margin.
LP compressor’s spool speed (NL), the ratio of the HP compressor’s outlet pressure If the controller designed provides an interaction of less than 10% between the scaled
to engine inlet pressure (OPR1), or the engine overall pressure ratio (OPR2). We will outputs (for unit reference steps), then we would have 0:75% or less change in thrust
choose from these three measurements the one that is best for control. for a step demand of 5% in surge margin, and a 0:5% or less change in surge margin
for a 7:5% step demand in thrust. The final output NH (which is already a scaled
 Engine thrust: Select one of NL, OPR1 and OPR2 (outputs 1, 2 and 3). variable) was further scaled (divided by 2.2) so that a unit change in NH corresponds
to a 2:2% change in NH. The inputs are scaled by 10% of their expected ranges of
Similarly, surge margin of the LP compressor can be represented by either the operation.
LP compressor’s pressure ratio (LPPR) or the LP compressor’s exit Mach number
measurement (LPEMN), and a selection between the two has to be made.

 Surge margin: Select one of LPPR and LPEMN (outputs 4 and 5).
Set No.
Candidate
controlled
RHP zeros
< 100 rad/sec  (G(0))
In this study we will not consider control of the HP compressor’s surge margin, or outputs
other configurations concerned with the limiting of engine temperatures. Our third 1 NL, LPPR, NH (1, 4, 6) none 0.060
output will be the HP compressor’s spool speed (NH), which it is also important to 2 OPR1, LPPR, NH (2, 4, 6) none 0.049
maintain within safe limits. (NH is actually the HP spool speed made dimensionless 3 OPR2, LPPR, NH (3, 4, 6) 30.9 0.056
by dividing by the square root of the total inlet temperature and scaled so that it is a 4 NL, LPEMN, NH (1, 5, 6) none 0.366
percentage of the maximum spool speed at a standard temperature of 288:15 ÆK). 5 OPR1, LPEMN, NH (2, 5, 6) none 0.409
 Spool speed: Select NH (output 6).
6 OPR2, LPEMN, NH (3, 5, 6) 27.7 0.392

We have now subdivided the available outputs into three subsets, and decided to Table 12.2: RHP zeros and minimum singular value for the six candidate output sets
select one output from each subset. This gives rise to the six candidate output sets as
listed in Table 12.2.
We now apply some of the tools given in Chapter 10 for tackling the output selection Steady-state model. With these scalings the steady-state model y all = Gall u
problem. It is emphasized at this point that a good physical understanding of the (with all the candidate outputs included) and the corresponding RGA-matrix,  =
Gall  Gyall , are given by
T
plant is very important in the context of this problem, and some measurements may
have to be screened beforehand on practical grounds. A 15 state linear model of the
engine (derived from a nonlinear simulation at 87% of maximum thrust) will be used
2 0:696
0:046 0:001 3 2 0:009 0:016 0:000 3
6 1:076
0:027 0:004 77 0:016 0:008 0:000 77
in the analysis that follows. The model is available over the Internet (as described in
the preface), along with actuator dynamics which result in a plant model of 18 states
Gall = 6 0:087 0:002 7 (Gall ) = 666
6 1:385 0:006 0:028 0:000
for controller design. The nonlinear model used in this case study was provided by 6 11:036
4 0:238 0:017 7 6 0:971 0:001 0:002 775
0:064 0:412 0:000 5 4
0:003 0:950 0:000
the UK Defence Research Agency at Pyestock with the permission of Rolls-Royce
Military Aero Engines Ltd.
1:474 0:093 0:983 0:002 0:000 0:998
(12.13)
Scaling. Some of the tools we will use for control structure selection are dependent and the singular value decomposition of G all (0) = U0 0 V0H is
on the scalings employed. Scaling the inputs and the candidate measurements
therefore, is vital before comparisons are made and can also improve the 2 0:062 0:001 0:144 0:944 0:117 0:266 3
conditioning of the problem for design purposes. We use the method of scaling 6 0:095 0:001 0:118 0:070 0:734 0:659 77
described in Section 9.4.2. The outputs are scaled such that equal magnitudes of U0
6
= 66 0:123 0:025 0:133 0:286 0:640 0:689 7
4 0:977 0:129 0:011 0:103 0:001 0:133 7
cross-coupling into each of the outputs are equally undesirable. We have chosen
0:006 0:065 0:971 0:108 0:195 0:055 5
to scale the thrust-related outputs such that one unit of each scaled measurement 0:131 0:989 0:066 0:000 0:004 0:004
494 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 495
2 11:296 0 0 3
0 0:986 0 77 Table 12.2 shows the RHP zeros slower than 100 rad/sec for all combinations of
0 0:417 7 V0 = 10::000 0:007 0:021 #
6 "
0 =
6
6 0 020 0:154 0:988 prospective output variables. The closed-loop bandwidth requirement for the aero-
6
4 0 0 0 75 0:010 0:988 0:154 engine is approximately 10 rad/sec. RHP zeros close to this value or smaller (closer
0 0 0
0 0 0 to the origin) will therefore, cause problems and should be avoided. It can be seen
that the variable OPR2 introduces (relatively) slow RHP zeros. It was observed that
The RGA-matrix of G all , the overall non-square gain matrix, is sometimes a useful these zeros move closer to the origin at higher thrust levels. Thus Sets 3 and 6 are
screening tool when there are many alternatives. The six row-sums of the RGA- unfavourable for closed-loop control. This along with the minimum singular value
matrix are analysis leaves us with sets 4 and 5 for further consideration
 = [0:025 0:023 0:034 0:972 0:947 1:000 ]T
 Relative gain array (RGA). We here consider the RGAs of the candidate square
and from (10.12) this indicates that we should select outputs 4, 5 and 6 transfer function matrices G(s) with three outputs,
(corresponding to the three largest elements) in order to maximize the projection
(G(s)) = G(s)  G T (s) (12.14)
of the selected outputs onto the space corresponding to the three non-zero singular
values. However, this selection is not one of our six candidate output sets because In Section 3.6.2, it is argued that the RGA provides useful information for the
there is no output directly related to engine thrust (outputs 1, 2 and 3). analysis of input-output controllability and for the pairing of inputs and outputs.
We now proceed with a more detailed input-output controllability analysis of the six Specifically input and output variables should be paired so that the diagonal elements
candidate output sets. In the following, G(s) refers to the transfer function matrix of the RGA are as close as possible to unity. Furthermore, if the plant has large RGA
for the effect of the three inputs on the selected three outputs. elements and an inverting controller is used, the closed-loop system will have little
robustness in the face of diagonal input uncertainty. Such a perturbation is quite
Minimum singular value. In Chapter 10, we showed that a reasonable criterion for common due to uncertainty in the actuators. Thus we want  to have small elements
selecting controlled outputs y is to make kG 1 (y yopt )k small, in particular at and for diagonal dominance we want  I to be small. These two objectives can be
steady-state. Here y yopt is the deviation in y from its optimal value. At steady- combined in the single objective of a small RGA-number, defined as
state this deviation arises mainly from errors in the (look-up table) set point due to X X
disturbances and unknown variations in the operating point. If we assume that, with RGA-number , k I ksum = j 1 ij j + j ij j (12.15)
the scalings given above, the magnitude j(y y opt )i j is similar (close to 1) for each i=j i6=j
of the six outputs, then we should select a set of outputs such that the elements in
G 1 (0) are small, or alternatively, such that  (G(0)) is as large as possible. In Table The lower the RGA number, the more preferred is the control structure. Before
12.2 we have listed  (G(0)) for the six candidate output sets. We conclude that we calculating the RGA number over frequency we rearranged the output variables so
can eliminate sets 1, 2 and 3, and consider only sets 4, 5 and 6. For these three sets that the steady-state RGA matrix was as close as possible to the identity matrix.
we find that the value of  (G(0)) is between 0.366 and 0.409 which is only slightly
smaller than  (Gall (0)) = 0:417. 6
Set 3 Set 6

Set 2
Remark. The three eliminated sets all include output 4, LPPR. Interestingly, this output Set 1
is associated with the largest element in the gain matrix Gall (0) of 11.0, and is thus also
4

associated with the largest singular value (as seen from the first column of U ). This illustrates Set 5

that the preferred choice is often not associated with 


 (G). 2 Set 4

Right-half plane zeros. Right-half plane (RHP) zeros limit the achievable 0 −3
10 10
−2 −1
10 10
0
10
1
10
2

performance of a feedback loop by limiting the open-loop gain-bandwidth product. Frequenc [rad/s]
They can be a cause of concern, particularly if they lie within the desired closed-loop
bandwidth. Also, choosing different outputs for feedback control can give rise to Figure 12.10: RGA numbers
different numbers of RHP zeros at different locations. The choice of outputs should
be such that a minimum number of RHP zeros are encountered, and should be as far The RGA numbers for the six candidate output sets are shown in Figure 12.10. As in
removed from the imaginary axis as possible. the minimum singular value analysis above, we again see that Sets 1,2 and 3 are less
496 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 497

favourable. Once more, sets 4 and 5 are the best but too similar to allow a decisive  fuel flow, WFE
selection.  nozzle area, AJ
Hankel singular values. Notice that Sets 4 and 5 differ only in one output variable,  inlet guide vane angle, IGV
NL in Set 4 and OPR1 in Set 5. Therefore, to select between them we next consider The corresponding steady-state (s = 0) model and RGA-matrix is
the Hankel singular values of the two transfer functions between the three inputs and "
1:076 0:027 0:004 # "
1:002 0:004 0:006 #
output NL and output OPR1, respectively. Hankel singular values reflect the joint
G= 0:064 0:412 0:000 ; (G) = 0:004 0:996 0:000 (12.16)
controllability and observability of the states of a balanced realization (as described 1:474 0:093 0:983 0:006 0:000 1:006
in Section 11.3). Recall that the Hankel singular values are invariant under state
transformations but they do depend on scaling. Pairing of inputs and outputs. The pairing of inputs and outputs is important
because it makes the design of the prefilter easier in a two degrees-of-freedom
0.4 control configuration and simplifies the selection of weights. It is of even greater
importance if a decentralized control scheme is to be used, and gives insight into the
NL (Output 1): +
0.3 working of the plant. In Chapter 10, it is argued that negative entries on the principal
diagonal of the steady-state RGA should be avoided and that the outputs in G should
0.2
OPR1 (Output 2): 
be (re)arranged such that the RGA is close to the identity matrix. For the selected
output set, we see from (12.16) that no rearranging of the outputs is needed. That is,
0.1
we should pair OPR1, LPEMN and NH with WFE, AJ and IGV, respectively.
0
0 2 4 6 8 10 12 14 16
H1 loop-shaping design. We follow the design procedure given in Section 9.4.3.
n-state number In steps 1 to 3 we discuss how pre- and post-compensators are selected to obtain the
desired shaped plant (loop shape) G s = W2 GW1 where W1 = Wp Wa Wb . In steps
Figure 12.11: Hankel singular values 4 to 6 we present the subsequent H 1 design.

Figure 12.11 shows the Hankel singular values of the two transfer functions for 1. The singular values of the plant are shown in Figure 12.12(a) and indicate a need
outputs NL and OPR1, respectively. The Hankel singular values for OPR1 are larger, for extra low frequency gain to give good steady-state tracking and disturbance
which indicates that OPR1 has better state controllability and observability properties rejection. The precompensator weight is chosen as simple integrators, i.e. W p =
than NL. In other words, output OPR1 contains more information about the system
2 2
internal states than output NL. It therefore seems to be preferable to use OPR1 for 10 10
control purposes rather than NL, and hence (in the absence of no other information)
Set 5 is our final choice. 0 0
10 10

12.3.3 A two degrees-of-freedom H1 loop-shaping design 10


−2
10
−2

The design procedure given in Section 9.4.3 will be used to design a two degrees-of-
freedom H1 loop-shaping controller for the 3-input 3-output plant G. An 18 state 10
−4
0 2
10
−4
0 2

linear plant model G (including actuator dynamics), is available over the Internet. It
10 10 10 10
Frequency [rad/s] Frequency [rad/s]
is based on scaling, output selection, and input-output pairing as described below. To (a) Plant (b) Shaped plant
summarize, the selected outputs (Set 5) are
 engine inlet pressure, OPR1 Figure 12.12: Singular values for plant and shaped plant
 LP compressor’s exit mach number measurement, LPEMN 1 I3 , and the post-compensator weight is selected as W 2 = I3 .
 HP compressor’s spool speed, NH
2.
s
W2 GWp is next aligned at 7 rad/sec. The align gain W a (used in front of W p ) is
and the corresponding inputs are the approximate real inverse of the shaped system at the specified frequency. The
498 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 499

crossover is thus adjusted to 7 rad/sec in order to give a closed-loop bandwidth the control inputs were analyzed and the actuator signals were found to lie within
of approximately 10 rad/sec. Alignment should not be used if the plant is ill- specified limits. Responses to disturbance steps on the outputs were also seen to meet
conditioned with large RGA elements at the selected alignment frequency. In our the problem specifications. Notice that because there are two degrees-of-freedom in
case the RGA elements are small (see Figure 12.10) and hence alignment is not the controller structure, the reference to output and disturbance to output transfer
expected to cause problems. functions can be given different bandwidths.
3. An additional gain W g is used in front of the align gain to give some control over The robustness properties of the closed-loop system are now analyzed. Fig-
actuator usage. W g is adjusted so that the actuator rate limits are not exceeded ure 12.14(a) shows the singular values of the sensitivity function. The peak value
for reference and disturbance steps on the scaled outputs. By some trial and error,
Wg is chosen to be diag(1; 2:5; 0:3). This indicates that the second actuator (AJ)
is made to respond at higher rates whereas the third actuator (IGV) is made slower.
The shaped plant now becomes G s = GW1 where W1 = Wp Wa Wg . Its singular
0 0
10 10

values are shown in Figure 12.12(b). −1 −1

4. min in (9.66) for this shaped plant is found to be 2.3 which indicates that the 10 10

shaped plant is compatible with robust stability.


 (T )
 is set to 1 and the reference model T ref is chosen as Tref = diagf 0:0181s+1 ;
−2 −2
10 10
5.  (TI )
1 1
0:008s+1 ; 0:2s+1 g. The third output NH is thus made slower than the other two in −3
10 −2 0 2
−3
10 −2 0 2
following reference inputs. 10 10 10 10 10 10

The standard H 1 optimization defined by P in (9:87) is solved. iterations are


Frequency [rad/s] Frequency [rad/s]
6.
performed and a slightly suboptimal controller achieving = 2:9 is obtained.
(a) Singular values, i  (S ) (b)   (T ) and  (TI )
Moving closer to optimality introduces very fast poles in the controller which, if
Figure 12.14: Sensitivity and complementary sensitivity functions
the controller is to be discretized, would ask for a very high sample rate. Choosing
a slightly suboptimal controller alleviates this problem and also improves on the
is less than 2 (actually it is 1:44 = 3:2 dB), which is considered satisfactory. Fig-
H2 performance. The prefilter is finally scaled to achieve perfect steady-state ure 12.14(b) shows the maximum singular values of T = (I GW 1 K2 ) 1 GW1 K2
model matching. The controller (with the weights W 1 and W2 ) has 27 states.
and TI = (I W1 K2 G) 1 W1 K2 G. Both of these have small peaks and go to zero
quickly at high frequencies. From Section 9.2.2, this indicates good robustness both
with respect to multiplicative output and multiplicative input plant perturbations.
12.3.4 Analysis and simulation results Nonlinear simulation results are shown in Figure 12.15. Reference signals are given

Step responses of the linear controlled plant model are shown in Figure 12.13. 1.2

The decoupling is good with less than 10% interactions. Although not shown here 1
OPR1
0.8

0.6 NH
1 1 1
0.4
solid – reference inputs
y1 y1 y1
0.8 0.8 0.8
0.2 dash-dot – outputs
y2 y2 y2
0.6 0.6 0.6
0

y3 y3 y3
0.4 0.4 0.4
-0.2
0.2 0.2 0.2
LPEMN
-0.4
0 0 0 -0.5 0 0.5 1 1.5 2

0 0.5 1 1.5 2 0 0.5 1 1.5 2 0 0.5 1 1.5 2 Time [sec]


Time [sec] Time [sec] Time [sec]

(a) Step in r1 (b) Step in r2 (c) Step in r3 Figure 12.15: Nonlinear simulation results

Figure 12.13: Reference step responses to each of the scaled outputs simultaneously. The solid lines show the references,
500 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 501

and the dash-dot lines, the outputs. It can be seen that the controller exhibits good Remark 1 The complete linear distillation column model with 4 inputs (L; V; D; B ), 4
performance with low interactions. outputs (yD ; xB ; MD ; MB ), 2 disturbances (F; zF ) and 82 states is available over the internet.
The states are the mole fractions and liquid holdups on each of the 41 stages. By closing
the two level loops (MD and MB ) this model may be used to generate the model for any
configuration (LV , DV , etc.). The MATLAB commands for generating the LV -, DV - and
12.3.5 Conclusions DB -configurations are given in Table 12.3.
The case study has demonstrated the ease with which the two degrees-of-freedom
H1 loop-shaping design procedure can be applied to a complex engineering system. Table 12.3: MATLAB program for generating model of various distillation
configurations
Some tools for control structure design have also been usefully applied to the aero- % Uses MATLAB Mu toolbox
engine example. We stress that a good control structure selection is very important. % G4: State-space model (4 inputs, 2 disturbances, 4 outputs, 82 states)
It results in simpler controllers and in general, a simpler design exercise. % Level controllers using D and B (P-controllers; bandwidth = 10 rad/min):
Kd = 10; Kb = 10;
% Now generate the LV-configuration from G4 using sysic:
systemnames = ’G4 Kd Kb’;
inputvar = ’[L(1); V(1); d(2)]’;
outputvar = ’[G4(1);G4(2)]’;
12.4 Distillation process input to G4 = ’[L; V; Kd; Kb; d ]’;
input to Kd = ’[G4(3)]’;
input to Kb = ’[G4(4)]’;

A typical distillation column is shown in Figure 10.8 on page 434. The overall 5  5
sysoutname =’Glv’;
cleanupsysic=’yes’; sysic;
%
control problem is discussed in Example 10.5 (page 433) and you are advised to read % Modifications needed to generate DV-configuration:
this first. The commonly used LV - and DV -configurations, which are discussed Kl = 10; Kb = 10;
systemnames = ’G4 Kl Kb’;
below, are partially controlled systems where 3 loops for liquid level and pressure inputvar = ’[D(1); V(1); d(2)]’;
have already been closed. input to G4 = ’[Kl; V; D; Kb; d ]’;
input to Kl = ’[G4(3)]’;
For a general discussion on distillation column control, the reader is also referred to input to Kb = ’[G4(4)]’;
sysoutname =’Gdv’;
Shinskey (1984), Skogestad and Morari (1987a) and the survey paper by Skogestad %
(1997). % Modifications needed to generate DB-configuration:
Kl = 10; Kv = 10;
systemnames = ’G4 Kl Kv’;
We have throughout the book studied a particular high-purity binary distillation inputvar = ’[D(1); B(1); d(2)]’;
column with 40 theoretical stages (39 trays and a reboiler) plus a total condenser. input to G4 = ’[Kl; Kv; D; B; d ]’;
input to Kl = ’[G4(3)]’;
This is “column A” in Skogestad et al. (1990). The feed is an equimolar liquid input to Kv = ’[G4(4)]’;
mixture of two components with a relative volatility of 1.5. The pressure p is sysoutname =’Gdb’;
assumed constant (perfect control of p using V T as an input). The operating variables
(e.g. reflux and boilup rates) are such that we nominally have 99% purity for each Remark 2 A 5 state LV -model, obtained by model reducing the above model, is given on
product (y D and xB ). The nominal holdups on all stages, including the reboiler and page 504. This model is also available over the internet.
condenser, are M i =F = 0:5 min. The liquid flow dynamics are modelled by a
simple linear relationship, L i (t) = Li + (Mi (t) Mi )=L , where L = 0:063
min (the same value is used on all trays). No actuator or measurement dynamics are 12.4.1 Idealized LV -model
included. This results in a model with 82 states. This distillation process is difficult to
control because of strong interactions between the two product compositions. More The following idealized model of the distillation process, originally from Skogestad
information, including steady-state profiles along the column, is available over the et al. (1988), has been used in examples throughout the book:
internet. 1  87:8 86:4 
G(s) =
75s + 1 108:2 109:6
(12.17)
This distillation process has been used as an illustrative example throughout the
book, and so to avoid unnecessary repetition we will simply summarize what has The inputs are the reflux (L) and boilup (V ), and the controlled outputs are the top
been done and refer to the many exercises and examples for more details. and bottom product compositions (y D and xB ). This is a very crude model of the
502 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 503

distillation process, but it provides an excellent example of an ill-conditioned process CDC benchmark problem. The original problem formulation is unrealistic in that
where control is difficult, primarily due to the presence of input uncertainty. there is no bound on the input magnitudes. Furthermore, the bounds on performance
We refer the reader to the following places in the book where the model (12.17) is and uncertainty are given in the frequency domain (in terms of weighted H 1 norm),
used: whereas many engineers feel that time domain specifications are more realistic.
Limebeer (1991) therefore suggested the following CDC-specifications. The set of
Example 3.5 (page 75): SVD-analysis. The singular values are plotted as a function plants  is defined by
of frequency in Figure 3.6(b) on page 77. 1  0:878 0:864  k1 e 1 s 0 s 
Ge(s) =
Example 3.6 (page 76): Discussion of the physics of the process and the interpreta- 75s + 1 1:082 1:096 0 k2 e 2
tion of directions. ki 2 [0:8 1:2 ]; i 2 [0 1:0 ] (12.18)
Example 3.11 (page 89): The condition number, (G), is 141.7, and the 1; 1-
element of the RGA,  11 (G), is 35.1 (at all frequencies). In physical terms this means 20% gain uncertainty and up to 1 minute delay in each
e 2 :
input channel. The specification is to achieve for for every plant G
Motivating Example No. 2 (page 93): Introduction to robustness problems with
inverse-based controller using simulation with 20% input uncertainty. S1: Closed-loop stability.
Exercise 3.7 (page 96): Design of robust SVD-controller. S2: For a unit step demand in channel 1 at t = 0 the plant output y 1 (tracking) and
Exercise 3.8 (page 96): Combined input and output uncertainty for inverse-based y2 (interaction) should satisfy:
controller.  y1 (t)  0:9 for all t  30 min
 y1 (t)  1:1 for all t
Exercise 3.9 (page 97): Attempt to “robustify” an inverse-based design using
McFarlane-Glover H 1 loop-shaping procedure.
 0:99  y1 (1)  1:01
 y1 (t)  0:5 for all t
Example 6.5 (page 232): Magnitude of inputs for rejecting disturbances (in feed rate  0:01  y2 (1)  0:01
and feed composition) at steady state.
The same corresponding requirements hold for a unit step demand in channel 2.
Example 6.6 (page 240): Sensitivity to input uncertainty with feedforward control
(RGA).
S3:  (Ky Se) < 0:316; 8!
S4: e y ) < 1 for !  150
 (GK
Example 6.7 (page 241): Sensitivity to input uncertainty with inverse-based con-
troller, sensitivity peak (RGA). Note that a two degrees-of-freedom controller may be used and K y then refers to the
Example 6.11 (page 245): Sensitivity to element-by-element uncertainty (relevant feedback plant of the controller. In practice, specification S4 is indirectly satisfied by
for identification). S3. Note that the uncertainty description G p = G(I + !I I ) with wI = 0s:+0 :2
5s+1 (as
Example 8.1 (page 296): Coupling between uncertainty in transfer function ele- used in the examples in the book) only allows for about 0.9 minute time delay error.
ments. To get a weight wI (s) which includes the uncertainty in (12.18) we may use the
procedure described on 268, equations (7.26) or (7.27) with r k = 0:2 and max = 1.
Example in Section 8.11.3 (page 333):  for robust performance which explains
Several designs have been presented which satisfy the specifications for the CDC-
problem in (12.18). For example, a two degrees-of-freedom H 1 loop-shaping design
poor performance in Motivating Example No. 2.
Example in Section 8.12.4 (page 341): Design of -optimal controller using DK - is given by Limebeer et al. (1993), and an extension of this by Whidborne et al.
iteration. (1994). A two degrees-of-freedom -optimal design is presented by Lundström et al.
(1999).
The model in (12.17) has also been the basis for two benchmark problems.
Original benchmark problem. The original control problem was formulated by
Skogestad et al. (1988) as a bound on the weighted sensitivity with frequency- 12.4.2 Detailed LV -model
bounded input uncertainty. The optimal solution to this problem is provided by the
one degree-of-freedom -optimal controller given in the example in Section 8.12.4 In the book we have also used a 5 state dynamic model of the distillation process
where a peak -value of 0.974 (remark 1 on page 1) was obtained. which includes liquid flow dynamics (in addition to the composition dynamics) as
504 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 505

well as disturbances. This 5 state model was obtained from model reduction of the where
2
detailed model with 82 states. The steady-state gains for the two disturbances are
:005131 0 0 0 0 3 2
:629 :624 3
given in (10.75). 6 0 :07366 0 0 0 77 6 :055 :172 7
A= 6
6 0 0 :1829
0 0 75; B = 664 :030 :108 775
4 0 0 0:4620 :9895 :186 :139
The 5-state model is similar to (12.17) at low frequencies, but the model is much
0 0 0:9895 :4620 2 1:23 :056
less interactive at higher frequencies. The physical reason for this is that the liquid 0:062 0:067 3
flow dynamics decouple the response and make G(j! ) upper triangular at higher   6 0:131 0:040 7
C= :7223 :5170 :3386 :1633 :1121 ; Bd = 664 0:022 0:106 775
frequencies. The effect is illustrated in Figure 12.16 where we show the singular :8913 :4728 :9876 :8425 :2186 0:188 0:027
values and the magnitudes of the RGA-elements as functions of frequency. As a 0:045 0:014
comparison, the RGA element  11 (G) = 35:1 at all frequencies (and not just at
steady-state) for the simplified model in (12.17). The implication is that control at Scaling. The model is scaled such that a magnitude of 1 corresponds to the following:
crossover frequencies is easier than expected from the simplified model (12.17). 0.01 mole fraction units for each output (y D and xB ), the nominal feed flowrate for
the two inputs (L and V ) and a 20% change for each disturbance (feed rate F and
feed composition z F ). Notice that the steady-state gains computed with this model
2 2
are slightly different from the ones used in the examples.
10 10
 (G) Remark. A similar dynamic LV -model, but with 8 states, is given by Green and Limebeer
Magnitude
Magnitude

j11 j H
(1995), who also design an 1 loop-shaping controller.
0
(G) 0
10 10
Exercise 12.1 Repeat the -optimal design based on DK -iteration in Section 8.12.4 using
j12 j the model (12.19).
−2 0 −2 0
10 10 10 10
Frequency [rad/min] Frequency [rad/min]
(a) Singular values (b) RGA-elements
12.4.3 Idealized DV -model
Figure 12.16: Detailed 5-state model of distillation column
Finally, we have also made use of an idealized model for the DV -configuration:

1  87:8 1:4 
G(s) =
75s + 1 108:2 1:4
Applications based on the 5 state model are found in: (12.20)

In this case the condition number (G) = 70:8 is still large, but the RGA elements
Example 10.7 (page 437): Controllability analysis of partial control and feedfor- are small (about 0:5).
ward control.
Example 6.8 (page 242) Bounds on the sensitivity peak show that an inverse-based
Example in Section 10.10 (page 455): Controllability analysis of decentralized con- controller is robust with respect to diagonal input uncertainty.
trol. Example 8.9 (page 323):  for robust stability with a diagonal controller is
computed. The difference between diagonal and full-block input uncertainty
is significant.
Details on the 5 state model. A state-space realization is
Remark. In practice, the DV -configuration may not be as favourable as indicated by these
   
G(s) = s A B s A Bd examples, because the level controller at the top of the column is not perfect as was assumed
C 0 ; Gd (s) = C 0 (12.19) when deriving (12.20).
506 MULTIVARIABLE FEEDBACK CONTROL CASE STUDIES 507

12.4.4 Further distillation case studies Good luck!

The full distillation model, which is available over the internet, may form the basis
for several case studies (projects). These could include input-output controllability
analysis, controller design, robustness analysis, and closed-loop simulation. The
following cases may be considered:
1. Model with 4 inputs and 4 outputs
2. LV -configuration (studied extensively in this book)
3. DV -configuration (see previous page)
4. DB -configuration (see also Exercise 6.15 page 250)
The models in the latter three cases are generated from the 4  4 model by closing
two level loops (see the MATLAB file in Table 12.3) to get a partially controlled
plant with 2 inputs and 2 outputs (in addition to the two disturbances).
Remark 1 For the DV - and DB -configurations the resulting model depends quite strongly
on the tuning of the level loops, so one may consider separately the two cases of tight level
control (e.g. K = 10, as in Table 12.3) or loosely tuned level control (e.g. K = 0:2
corresponding to a time constant of 5 min). Level control tuning may also be considered as a
source of uncertainty.
Remark 2 The models do not include actuator or measurement dynamics, which may also be
considered as a source of uncertainty.

12.5 Conclusion
The case studies in this chapter have served to demonstrate the usefulness and ease
of application of many of the techniques discussed in the book. Realistic problems
have been considered but the idea has been to illustrate the techniques rather than to
provide “optimal” solutions.
For the helicopter problem, practice was obtained in the selection of weights in H 1
mixed-sensitivity design, and it was seen how information about disturbances could
easily be considered in the design problem.
In the aero-engine study, we applied a variety of tools to the problem of output
selection and then designed a two degrees-of-freedom H 1 loop-shaping controller.
The final case study was a collection of examples and exercises on the distillation
process considered throughout the book. This served to illustrate the difficulties of
controlling ill-conditioned plants and the adverse effects of model uncertainty. The
structured singular value played an important role in the robustness analysis.
You should now be in a position to move straight to Appendix B, to complete a major
project on your own and to sit the sample exam.
508 MULTIVARIABLE FEEDBACK CONTROL

APPENDIX A

MATRIX THEORY AND


NORMS
The topics in this Appendix are included as background material for the book, and should
ideally be studied before reading Chapter 3.
After studying the Appendix the reader should feel comfortable with a range of mathematical
tools including eigenvalues, eigenvectors and the singular value decomposition; the reader
should appreciate the difference between various norms of vectors, matrices, signals and
systems, and know how these norms can be used to measure performance.
The main references are: Strang (1976) and Horn and Johnson (1985) on matrices, and Zhou
et al. (1996) on norms.

A.1 Basics
Let us start with a complex scalar

c = + j ; where = Re c; = Im c
To compute the magnitude jcj, we multiply c by its conjugate c , j and take
the square root, i.e.
p p p
jcj = cc = 2 j 2 2 = 2 + 2
A complex column vector a with m components (elements) is written
2 3
a1
6 a2 7
a = 664 .. 775
.
am
where ai is a complex scalar. aT (the transposed) is used to denote a row vector.
510 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 511

Now consider a complex l  m matrix A with elements a ij = Re aij + j Im aij . Proof: Postmultiply (or premultiply) the right hand side in (A.6) by A1 + A2 A3 A4 . This gives
l is the number of rows (the number of “outputs” when viewed as an operator) and the identity matrix. 2
m is the number of columns (“inputs”). Mathematically, we write A 2 C lm if A is
a complex matrix, or A 2 R lm if A is a real matrix. Note that a column vector a Lemma A.2 Inverse of a partitioned matrix. If A 111 and X 1 exist then
with m elements may be viewed as an m  1 matrix. 1
  1 1 1 A111 A12 X 1

The transpose of a matrix A is A T (with elements aji ), the conjugate is A (with
A11 A12 11 A1 12 X 1A1 21 A11
= A11 + AX
elements Re aij j Im aij ), the conjugate transpose (or Hermitian adjoint) matrix
A21 A22 A A 21 11 X 1 (A.7)

is AH , AT (with elements Re aji j Im aji ), the trace is tr A (sum of diagonal where X , A22 A21 A111 A12 is the Schur complement of A 11 in A; also see (A.15).
elements), and the determinant is det A. By definition, the inverse of a non-singular Similarly if A221 and Y 1 exist then
matrix A, denoted A 1 , satisfies A 1 A = AA 1 = I , and is given by

A11 A12
 1 
Y 1 Y 1 A12 A221

adjA
A 1= (A.1) A21 A22 = 1
A22 A21 Y 1 1 1 1
A22 + A22 A21 Y A12 A221 (A.8)
det A
where adj A is the adjugate (or “classical adjoint”) of A which is the transposed where Y , A11 A12 A221 A21 is the Schur complement of A22 in A; also see (A.16).
matrix of cofactors c ij of A,
cij = [adjA]ji , ( 1)i+j det Aij (A.2)
ij
A.1.2 Some determinant identities
Here A is a submatrix formed by deleting row i and column j of A. As an example,
for a 2  2 matrix we have The determinant is defined only for square matrices, so let A be an n  n matrix.
  if det A is non-zero. The determinant may be defined
A = aa11 aa12 ; det A = a11 a22 a12 a21
The matrix is non-singularP
det A = n a c (expansion along column j ) or det A =
21 22 inductively
Pn as i=1 ij ij
  a c
j =1 ij ij (expansion along row i), where c ij is the ij ’th cofactor given in (A.2).
A 1=
1 a22 a12 This inductive definition begins by defining the determinant of an 1  1 matrix
(a scalar) to be the value of the scalar, i.e. det a = a. We then get for a 2  2
(A.3)
det A a21 a11
We also have matrix det A = a11 a22 a12 a21 and so on. From the definition we directly get that
(AB )T = B T AT ; (AB )H = B H AH (A.4) det A = det AT . Some other determinant identities are given below:
and, assuming the inverses exist, 1. Let A1 and A2 be square matrices of the same dimension. Then
(AB ) 1 = B 1 A 1 (A.5) det(A1 A2 ) = det(A2 A1 ) = det A1  det A2 (A.9)
A square matrix A is symmetric if A T = A, and Hermitian if AH = A.
2. Let c be a complex scalar and A an n  n matrix. Then
A Hermitian matrix A is said to be positive definite if x H Ax > 0 for any non-zero
vector x; this is denoted A > 0. Similarly, a Hermitian matrix A is positive semi- det(cA) = cn det(A) (A.10)
definite (A  0) if xH Ax  0. For a positive semi-definite matrix A, the matrix
square root (A 1=2 ) satisfies A1=2 A1=2 = A. 3. Let A be a non-singular matrix. Then

det A 1 = 1= det A (A.11)


A.1.1 Some useful matrix identities 4. Let A1 and A2 be matrices of compatible dimensions such that both matrices
A1 A2 and A2 A1 are square (but A 1 and A2 need not themselves be square). Then
Lemma A.1 The matrix inversion lemma. Let A1 ; A2 ; A3 and A4 be matrices with
compatible dimensions such that the matrices A 2 A3 A4 and (A1 + A2 A3 A4 ) are det(I + A1 A2 ) = det(I + A2 A1 ) (A.12)
defined. Also assume that the inverses given below exist. Then
(A1 + A2 A3 A4 ) 1 = A1 1 A1 1 A2 (A4 A1 1 A2 + A3 1 ) 1 A4 A1 1
This is actually a special case of Schur’s formula given in (A.14). (A.12) is useful
(A.6) in the field of control because it yields det(I + GK ) = det(I + KG).
512 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 513

5. The determinant of a triangular or block-triangular matrix is the product of the Remark. Note that if t is an eigenvector then so is t for any constant . Therefore, the
determinants of the diagonal blocks: eigenvectors are usually normalized to have unit length, i.e. tH
i ti = 1.
   
det A011 A 12 A11 0
A22 = det A21 A22 = det(A11 )  det(A22 ) (A.13) The left eigenvectors of A are the (right) eigenvectors of A H . The eigenvalues are
sometimes called characteristic gains. The set of eigenvalues of A is called the
spectrum of A. The largest of the absolute values of the eigenvalues of A is the
spectral radius of A, (A) , maxi ji (A)j.
6. Schur’s formula for the determinant of a partitioned matrix:
 
det A 11 A12 = det(A11 )  det(A22 A21 A111 A12 ) An important result for eigenvectors is that eigenvectors corresponding to distinct
A21 A22 eigenvalues are always linearly independent. For repeated eigenvalues, this may
= det(A22 )  det(A11 A12 A221 A21 ) (A.14) not always be the case, that is, not all n  n matrices have n linearly independent
eigenvectors (these are the so-called “defective” matrices).
where it is assumed that A11 and/or A22 are non-singular. The eigenvectors may be collected as columns in the matrix T and the eigenvalues
1 ; 2 ; : : : ; n as diagonal elements in the matrix :
Proof: Note that A has the following decomposition if A11 is non-singular:
T = ft1; t2 ; : : : ; tn g;  = diagf1 ; 2 ; : : : ; n g (A.20)
I A111 A12
     
A11 A12 = I 0 A11 0
A21 A22 A21 A111 I 0 X 0 I (A.15)
We may then write (A.18) as AT = T . If the eigenvectors are linearly independent
such that T 1 exists, we then have that A may be “diagonalized” as follows:
where X = A22 A21 A111 A12 . The first part of (A.14) is proved by evaluating the
determinant using (A.9) and (A.13). Similarly, if A22 is non-singular,  = T 1AT (A.21)
  
A11 A12 = I A12 A22 Y 0 1  
I 0


A21 A22 0 I 0 A22 A221 A21 I (A.16) This always happens if the eigenvalues are distinct, and may also happen in other
cases, e.g. for A = I . For distinct eigenvalues, we also have that the right and left
where Y = A11 A12 A221 A21 , and the last part of (A.14) follows. 2 eigenvalues are mutually orthogonal,

qiH tj = 1 if i = j
0 if i 6= j
A.2 Eigenvalues and eigenvectors
and the dyadic expansion of the matrix A from its eigenevectors and eigenvectors
applies:
Definition A.1 Eigenvalues and eigenvectors. Let A be a square n  n matrix. The n
X
eigenvalues i , i = 1; : : : ; n, are the n solutions to the n’th order characteristic A= i ti qiH (A.22)
equation i=1
det(A I ) = 0 (A.17)
Remark. The case where the eigenvalues are not distinct (i.e. repeat) is much more
The (right) eigenvector t i corresponding to the eigenvalue i is the nontrivial complicated, both theoretically and computationally. Fortunately, from a practical point of
solution (ti 6= 0) to view it is sufficient to understand the case where the eigenvalues are distinct.

(A i I )ti = 0 , Ati = i ti (A.18)


A.2.1 Eigenvalue properties
The corresponding left eigenvectors q i satisfy
Let i denote the eigenvalues of A in the following properties:
qiH (A i I ) = 0 , qiH A = i qiH (A.19)
1. The sum of the eigenvalues
P of A is equal to the trace of A (sum of the diagonal
When we just say eigenvector we mean the right eigenvector. elements): trA = i i .
514 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 515

Q product of the eigenvalues of A is equal to the determinant of A: det A =


2. The state vector z = T 1x, that is, x = T z . We then get
i i .
3. The eigenvalues of an upper or lower triangular matrix are equal to the diagonal T z_ = AT z + Bu , z_ = z + T 1 Bu (A.25)
elements of the matrix.
4. For a real matrix the eigenvalues are either real, or occur in complex conjugate which is a set of uncoupled differential equations in terms of the new states z = T x.
pairs. The unforced solution (i.e. with u = 0) for each state z i is zi = z0i ei t where z0i
5. A and AT have the same eigenvalues (but in general different eigenvectors). is the value of the state at t = 0. If  i is real, then we see that this mode is stable
6. The inverse A 1 exists if and only if all eigenvalues of A are non-zero. The (zi ! 0 as t ! 1) if and only if  i < 0. If i = Rei + j Imi is complex, then
eigenvalues of A 1 are then 1=1 ; : : : ; 1=n . we get ei t = eRei t (cos(Imi t) + j sin(Imi t)) and the mode is stable (z i ! 0
7. The matrix A + cI has eigenvalues  i + c. as t ! 1) if and only if Re i < 0. The fact that the new state z i is complex is of
8. The matrix cA k where k is an integer has eigenvalues c ki . no concern since the real physical states x = T z are of course real. Consequently,
9. Consider the l  m matrix A and the m  l matrix B . Then the l  l matrix AB and a linear system is stable if and only if all the eigenvalues of the state matrix A have
the m  m matrix BA have the same non-zero eigenvalues. To be more specific real parts less than 0, that is, lie in the open left-half plane.
assume l > m. Then the matrix AB has the same m eigenvalues as BA plus l m
eigenvalues which are identically equal to zero.
10. Eigenvalues are invariant under similarity transformations, that is, A and DAD 1 A.2.3 Eigenvalues of transfer functions
have the same eigenvalues.
The eigenvalues of the loop transfer function matrix,  i (L(j! )), evaluated as a
11. The same eigenvector matrix diagonalizes the matrix A and the matrix (I + A) 1 .
(Proof: T 1 (I + A) 1 T = (T 1 (I + A)T ) 1 = (I + ) 1 : )
function of frequency, are sometimes called the characteristic loci, and to some extent
they generalize L(j! ) for a scalar system. In Chapter 8, we make use of  i (L) to
12. Gershgorin’s theorem. The eigenvalues of the n  n matrix A lie in the Punion of study the stability of the M -structure where L = M . Even more important in
n circles in the complex plane, each with centre a ii and radius ri = j6=i jaij j
this context is the spectral radius, (L) = max i ji (L(j! ))j.
(sum of off-diagonal elements in rowPi). They also lie in the union of n circles,
each with centre aii and radius ri0 = j 6=i jaji j (sum of off-diagonal elements in
column i).
13. The eigenvalues of a Hermitian matrix (and hence of a symmetric matrix) are real. A.3 Singular Value Decomposition
14. A Hermitian matrix is positive definite (A > 0) if all its eigenvalues are positive.
From the above properties we have, for example, that Definition A.2 Unitary matrix. A (complex) matrix U is unitary if
1 1 UH = U 1
i (S ) = i ((I + L) 1 ) = = (A.23) (A.26)
i (I + L) 1 + i (L)
In this book we are sometimes interested in the eigenvalues of a real (state) matrix, All the eigenvalues of a unitary matrix have absolute value equal to 1, and all its
and in other cases in the eigenvalues of a complex transfer function matrix evaluated singular values (as we shall see from the definition below) are equal to 1.
at a given frequency, e.g. L(j! ). It is important to appreciate this difference.
Definition A.3 SVD. Any complex l  m matrix A may be factorized into a singular
value decomposition
A.2.2 Eigenvalues of the state matrix A = U V H (A.27)

Consider a system described by the linear differential equations where the l  l matrix U and the m  m matrix V are unitary, and the l  m matrix
 contains a diagonal matrix  1 of real, non-negative singular values,  i , arranged
x_ = Ax + Bu (A.24) in a descending order as in
 
Unless A is diagonal this is a set of coupled differential equations. For simplicity,
assume that the eigenvectors t i of A are linearly independent and introduce the new  = 01 ; l  m (A.28)
516 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 517

or A.3.2 Singular values of a 2  2 matrix


 = [ 1 0 ] ; l  m (A.29)
where
In general, the singular values must be computed numerically. For 2  2 matrices,
1 = diagf1 ; 2 ; : : : ; k g; k = min(l; m) (A.30)
however, an analytic expression is easily derived. Introduce
X
and b , tr(AH A) = jaij j2 ; c , det(AH A)
  1  2  : : :  k   (A.31) i;j

The unitary matrices U and V form orthonormal bases for the column (output) space Now the sum of the eigenvalues of a matrix is equal to its trace and the product is
and the row (input) space of A. The column vectors of V , denoted v i , are called right equal to its determinant, so
or input singular vectors and the column vectors of U , denoted u i , are called left or
  u 1 , v  v1 , u  uk and v  vk .
output singular vectors. We define u 1 + 2 = b; 1  2 = c
p
Note that the decomposition in (A.27) is not unique. For example, A = U 0 V 0 ,
H
Upon solving for  1 and 2 , and using i (A) = i (AH A) we get
0 0
where U = US , V = V S , S = diagfe g and i is any real number, is also an
j i
SVD of a square matrix A. However, the singular values,  i , are unique.
s
p s
p2
b + b2 4c b b 4c
The singular values are the positive square roots of the k = min(l; m) largest  (A) = ; (A) = (A.36)
2 2
eigenvalues of both AA H and AH A. We have  
A = 13 24 we have b = jaij j2 = 1 + 4 + 9 + 16 = 30,
q q P
For example, for
i (A) = i (AH A) = i (AAH ) (A.32)
c = (det A)2 = ( 2)2 = 4, and we find  (A) = 5:465 and  (A) = 0:366.
Also, the columns of U and V are unit eigenvectors of AA H and AH A, respectively. Note that p
for
Psingular
2  2 matrices (with det A = 0 and (A) = 0) we get
To derive (A.32) write  (A) = jaij j2 ) , kAkF (the Frobenius norm), which is actually a special
AAH = (U V H )(U V H )H = (U V H )(V H U H ) = U H U H (A.33) case of (A.126).

or equivalently since U is unitary and satisfies U H = U 1 we get


A.3.3 SVD of a matrix inverse
(AAH )U = U H (A.34)
We then see that U is the matrix of eigenvectors of AA H and fi2 g are its Since A = U V H we get, provided the m  m A is non-singular, that
eigenvalues. Similarly, we have that V is the matrix of eigenvectors of A H A. A 1 = V  1U H (A.37)

This is the SVD of A 1 but with the order of the singular values reversed. Let
A.3.1 Rank j = m i + 1. Then it follows from (A.37) that
Definition A.4 The rank of a matrix is equal to the number of non-zero singular i (A 1 ) = 1=j (A); ui (A 1 ) = vj (A); vi (A 1 ) = uj (A) (A.38)
values of the matrix. Let rank(A) = r, then the matrix A is called rank deficient if
r < k = min(l; m), and we have singular values  i = 0 for i = r + 1; : : : k. A and in particular
rank deficient square matrix is a singular matrix (non-square matrices are always  (A 1 ) = 1=(A) (A.39)
singular).

The rank of a matrix is unchanged after left or right multiplication by a non-singular A.3.4 Singular value inequalities
matrix. Furthermore, for an l  m-matrix A and an m  p-matrix B , the rank of their
product AB is bounded as follows (Sylvester’s inequality): The singular values bound the magnitude of the eigenvalues (also see (A.116)):
rank(A) + rank(B ) m  rank(AB )  min(rank(A); rank(B )) (A.35)  (A)  ji (A)j   (A) (A.40)
518 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 519

The following is obvious from the SVD-definition: A.3.5 SVD as a sum of rank 1 matrices
 (AH ) =  (A) and  (AT ) =  (A) (A.41) Let r denote the rank of the l  m matrix A. We may then consider the SVD as a
decomposition of A into r l  m matrices, each of rank 1. We have
The next important property is proved below (eq. A.97): r
X
 (AB )   (A) (B ) (A.42)
A = U V H = i ui viH (A.53)
i=1
For a non-singular A (or B ) we also have a lower bound on 
(AB ) The remaining terms from r + 1 to k = min(l; m) have singular values equal to 0
and give no contribution to the sum. The first and most important submatrix is given
(A) (B )   (AB ) or  (A) (B )   (AB ) (A.43) by A1 = 1 u1 v1H . If we now consider the residual matrix
We also have a lower bound on the minimum singular value A1 = A A1 = A 1 u1v1H (A.54)

(A) (B )  (AB ) then


1 (A1 ) = 2 (A)
(A.44)
(A.55)
For a partitioned matrix the following inequalities are useful: 1
That is, the largest singular value of A is equal to the second singular value of the
 
p original matrix. This shows that the direction corresponding to  2 (A) is the second
A
maxf (A);  (B )g   B  2 maxf (A);  (B )g (A.45) most important direction, and so on.

 
A
 B   (A) +  (B ) (A.46) A.3.6 Singularity of matrix A +E
The following equality for a block-diagonal matrix is used extensively in the book: From the left inequality in (A.50) we find that
   (E ) < (A) )  (A + E ) > 0
 A0 B0 = maxf (A);  (B )g
(A.56)
(A.47)
and A + E is non-singular. On the other hand, there always exists an E with
 (E ) =  (A) which makes A + E singular, e.g. choose E = u  v H ; see (A.53).
Another very useful result is Fan’s theorem (Horn and Johnson, 1991, p. 140 and Thus the smallest singular value  (A) measures how near the matrix A is to being
p. 178):
i (A)  (B )  i (A + B )  i (A) +  (B )
singular or rank deficient. This test is often used in numerical analysis, and it is also
(A.48) an important inequality in the formulation of robustness tests.
Two special cases of (A.48) are:

j (A)  (B )j   (A + B )   (A) +  (B ) (A.49) A.3.7 Economy-size SVD


 (A)  (B )  (A + B )   (A) +  (B ) (A.50) Since there are only r = rank(A)  min(l; m) non-zero singular values, and since
only the non-zero singular values contribute to the overall result, the singular value
(A.50) yields decomposition of A is sometimes written as an economy-size SVD, as follows
(A) 1  (I + A)   (A) + 1 (A.51)
Alm = Urlr rrr (Vrmr )H (A.57)
On combining (A.39) and (A.51) we get a relationship that is useful when evaluating
the amplification of closed-loop systems: where the matrices Ur and Vr contain only the first r columns of the matrices U and
V introduced above. Here we have used the notation A lm to indicate that A is an
1 l  m matrix. The economy-size SVD is used for computing the pseudo inverse, see
 ( A) 1   (A) + 1
 (I + A) 1
(A.52)
(A.60).
520 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 521

Remark. The “economy-size SVD” presently used in MATLAB is not quite as economic as Principal component regression (PCR)
the one given in (A.57) as it uses m instead of r for .
We note that the pseudo-inverse in (A.60) may be very sensitive to noise and “blow
up” if the smallest non-zero singular value,  r is small. In the PCR method one
A.3.8 Pseudo-inverse (Generalized inverse) avoids this problem by using only the q  r first singular values which can be
distinguished from the noise. The PCR pseudo-inverse then becomes
Consider the set of linear equations
q
X 1 H
y = Ax (A.58) AyP CR = vi ui (A.64)

i=1 i
with a given l  1 vector y and a given l  m matrix
p A. A least squares solution
to (A.58) is an m  1 vector x such that kxk 2 = x21 + x22    x2m is minimized
among all vectors for which ky Axk 2 is minimized. The solution is given in terms Remark. This is similar in spirit to the use of Hankel singular values for model reduction.
of the pseudo-inverse (Moore-Penrose generalized inverse) of A:
x = Ay y (A.59) A.3.9 Condition number
The pseudo-inverse may be obtained from an SVD of A = U V by H
r The condition number of a matrix is defined in this book as the ratio
X 1
Ay = Vr r 1 UrH = v uH
A) i i
(A.60)
i=1 i ( (A) = 1 (A)=k (A) =  (A)= (A) (A.65)

where r is the number of non-zero singular values of A. We have that where k = min(l; m). A matrix with a large condition number is said to be ill-
 (A) = 1= (Ay ) (A.61) conditioned. This definition yields an infinite condition number for rank deficient
matrices. For a non-singular matrix we get from (A.39)
Note that Ay exists for any matrix A, even for a singular square matrix and a non-
square matrix. The pseudo-inverse also satisfies (A) =  (A)   (A 1 ) (A.66)
AAy A = A and Ay AAy = Ay Other definitions for the condition number of a non-singular matrix are also in use,
Note the following cases (where r is the rank of A): for example,
p (A) = kAk  kA 1 k
1. r = l = m, i.e. A is non-singular. In this case A y = A 1 is the inverse of the
(A.67)
matrix. where kAk denotes any matrix norm. If we use the induced 2-norm (maximum
2. r=m  l, i.e. A has full column rank. This is the “conventional least squares singular value) then this yields (A.66). From (A.66) and (A.42), we get for non-
problem” where we want to minimize ky Axk 2 , and the solution is singular matrices
Ay = (AH A) 1 AH (A.62) (AB )  (A) (B ) (A.68)
y y
In this case A A = I , so A is a left inverse of A. The minimized condition number is obtained by minimizing the condition number
3. r = l  m, i.e. A has full row rank. In this case we have an infinite number of over all possible scalings. We have
solutions to (A.58) and we seek the one that minimizes kxk 2 . We get
(G) , min (DO GDI ) (A.69)
Ay = AH (AAH ) 1 (A.63) DI ;DO
y y
In this case AA = I , so A is a right inverse of A. where DI and DO are diagonal scaling matrices. For a 2  2 matrix, the minimized
4. r < k = min(l; m) (general case). In this case both matrices A H A and AAH are condition number is given by (Grosdidier et al., 1985) as
rank deficient, and we have to use the SVD to obtain the pseudo-inverse. In this q
case A has neither a left nor a right inverse.  (G) = kki1 + kk2i1 1 (A.70)
522 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 523

where kki1 is the induced 1-norm (maximum column sum) of the RGA-matrix of A.4.1 Properties of the RGA
G. Note that, (G) = I and  (G) = 1 for a triangular 2  2 matrix. If we allow only
scaling on one side then we get the input and output minimized condition numbers: Most of the properties below follow directly if we write the RGA-elements in the
form
I (G) , min (GDI ); O (G) , min (DO G) (A.71) c
ij = aij  eaji = aij ij = ( 1)i+j ij
a det Aij
DI DO det A det A
(A.77)

Remark. To compute these minimized condition numbers we define where e , A 1 , Aij denotes the matrix
aji denotes the ji’th element of the matrix Ae
A with row i and column j deleted, and c ij = ( 1)i+j det Aij is the ij ’th cofactor
0 G 1
 
H= G (A.72) of the matrix A.
0
For any non-singular m  m matrix A, the following properties hold:

1. (A 1 ) = (AT ) = (A)T


Then we have, as proven by Braatz and Morari (1994):
p
 (G) = Dmin
;D
 (DHD 1 ); D = diagfDI 1 ; DO g (A.73) 2. Any permutation of the rows and columns of A results in the same permutation
I O
in the RGA. That is, (P1 AP2 ) = P1 (A)P2 where P1 and P2 are permutation
q
I (G) = min  (DHD 1 ); D = diagfDI 1 ; I g (A.74)
matrices. (A permutation matrix has a single 1 in every row and column and all
D I other elements equal to 0.) (P ) = P for any permutation matrix.
q
O (G) = min  (DHD 1 ); D = diagfI; DO g
3. The
Pmsum of the elements
Pm in each row (and each column) of the RGA is 1. That is,
i=1 ij = 1 and j =1 ij = 1.
(A.75)
D O
These convex optimization problems may be solved using available software for the upper 4. (A) = I if and only if A is a lower or upper triangular matrix; and in particular
bound on the structured singular value  (H ); see (8.87). In calculating  (H ), we the RGA of a diagonal matrix is the identity matrix.
use for  (G) the structure  = diagfdiag ; diag g, for I (G) the structure  = 5. The RGA is scaling invariant. Therefore, (D 1 AD2 ) = (A) where D1 and D2
diagfdiag ; full g, and for O (G) the structure  = diagffull ; diag g. are diagonal matrices.
6. The RGA is a measure of sensitivity to relative element-by-element uncertainty
in the matrix. More precisely, the matrix A becomes singular if a single element
in A is perturbed from a ij to a0 ij = aij (1 1ij ).
A.4 Relative Gain Array 7. The norm of the RGA is closely related to the minimized condition number,
 (A) = minD1 ;D2 (D1 AD2 ) where D1 and D2 are diagonal matrices. We
The relative gain array (RGA) was introduced by Bristol (1966). Many of its have the following lower and conjectured upper bounds on  (A)
properties were stated by Bristol, but they were not proven rigorously until the
work by Grosdidier et al. (1985). Some additional properties are given in Hovd and kkm 1(A)   (A)  kksum + k(m) (A.78)
Skogestad (1992).
The Relative Gain Array of a complex non-singular m  m matrix A, denoted where k (m) is a constant, kkm , 2 maxfkki1 ; kki1 g, and kksum =
RGA(A) or (A), is a complex m  m matrix defined by P
ij jij j (the matrix norms are defined in Section A.5.2). The lower bound is
proved by Nett and Manousiouthakis (1987). The upper bound is proved for 2  2
RGA(A)  (A) , A  (A 1 )T (A.76) matrices with k (2) = 0 (Grosdidier et al., 1985), but it is only conjectured for the
general case with k (3) = 1 and k (4) = 2 (Skogestad and Morari, 1987c; Nett and
where the operation  denotes element by element multiplication (Hadamard or
Manousiouthakis, 1987). Note that kk m  kksum where the equality always
Schur product). If A is real then (A) is also real.
holds in the 2  2 case. Consequently, for 2  2 matrices  and kksum are always
Example: very close in magnitude (also see (A.70)):
     
A1 = 13 2 1
4 ; A1 =
0:4 0:2 ; (A ) = 0:4 0:6
0:3 0:1 1 0:6 0:4 2  2 matrix : kksum 1(A)   (A)  kksum (A.79)
524 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 525

8. The diagonal elements of the matrix ADA 1 are given in terms of the A.4.2 RGA of a non-square matrix
corresponding row-elements of the RGA (Skogestad and Morari, 1987c)(Nett and
Manousiouthakis, 1987). For any diagonal matrix D = diagfd i g we have The RGA may be generalized to a non-square l  m matrix A by use of the pseudo
inverse Ay defined in (A.60). We have
X m
[ADA 1 ]ii = ij (A)dj (A.80) (A) = A  (Ay )T (A.83)
j =1
Properties 1 (transpose and inverse) and 2 (permutations) of the RGA also hold for
X m non-square matrices, but the remaining properties do not apply in the general case.
[A 1 DA]ii = ij (A)di (A.81) However, they partly apply if A is either of full row rank or full column rank.
i=1 1. A has full row rank, r = rank(A) = l (i.e. A has at least as many inputs as
9. It follows from Property 3 that  always has at least one eigenvalue and one outputs, and the outputs are linearly independent). In this case AA y = I , and the
singular value equal to 1. following properties hold:
(a) The RGA is independent of output scaling, i.e. ( PDA) = (A).
(b) The elements in each row of the RGA sum to 1, j ij = 1.
m
Proofs of some of the properties: Property 3: Since AA 1 = I it follows that m aij baji =
P
P j =1 (c) The elements of column j of the RGA sum to the square of the 2-norm of the
1. From the definition of the RGA we then have that m j =1 ij = 1. Property 4: If the matrix j ’th row in Vr ,
is upper triangular then aij = 0 for i > j . It then follows that cij = 0 for j > i and all the l
off-diagonal RGA-elements are zero. Property 5: Let A0 = D1 AD2 . Then a0ij = d1i d2j aij
X
ij = keTj Vr k22  1
a0ij = d12j d11i baij and the result follows. Property 6: The determinant can be evaluated by
(A.84)
and b
i=1
expanding it in terms of any row or column, e.g. by row i, det A = i ( 1)i+j aij det Aij .
P

Let A0 denote A with a0 ij substituted for aij . By expanding the determinant of A0 by row i
Here Vr contains the first r input singular vectors for G, and e j is an m  1
T
basis vector for input u j ; ej = [ 0    0 1 0    0 ] where 1 appears in
and then using (A.77) we get
position j . Pm
a
det A0 = det A ( 1)i+j ij det Aij = 0 (d) The diagonal elements of B = ADA y are bii = j =1 dj aij b
aji =
Pm
|
ij
{z } aji denotes the ji’th element of A y and D is any diagonal
j =1 dj ij , where b
det A matrix.
2. A has full column rank, r = rank(A) = m (i.e. A has no more inputs than
= ADA 1 is bii = j dj aij baji = j dj ij .
P P
Property 8: The ii’th element of the matrix B
outputs, and the inputs are linearly independent). In this case A y A = I , and the
2 2 following properties hold:
(a) The RGA is independent of input scaling, i.e. (AD) = (A).
Pl
Example A.1 (b) The elements in each column of the RGA sum to 1, i ij = 1.
2 3 2 3 (c) The elements of row i of the RGA sum to the square of the 2-norm of the i’th
56 66 75 97 6:16 0:69 7:94 3:48 row in Ur ,
6 75
54 82 28 7 6 1:77 0:10 3:16 0:49 7 Xm
A2 = 38 5 ; (A2 ) = 4 ij = keTi Ur k22  1
6 7 6 7 (A.82)
4 18
66 25 6:60 1:73 8:55 2:69 5 (A.85)
9 51 8 11 3:21 0:14 2:77 0:70 i=1
Here Ur contains the first r output singular vectors for G, and e i is an l  1
In this case, (A2 ) =  (A2 )= (A2 ) = 207:68=1:367 = 151:9 and  (A2 ) = 51:73 T
basis vector for output y i ; ei = [ 0    0 1 0    0 ] where 1 appears in
k k f
(obtained numerically using (A.73)). Furthermore,  m = 2 max 22:42; 19:58 = 44:84, g position i.
k k
and  sum = 50:19, so (A.78) with k(m) = k(4) = 2 is satisfied. The matrix A2 is non-
(d) The diagonal elements of B = A y DA are equal to bjj = i=1 b
Pl
aji di aij =
singular and the 1; 3-element of the RGA is 13 (A2 ) = 7:94. Thus from Property 6 the Pl
matrix A2 becomes singular if the 1; 3-element is perturbed from 75 to 75(1 1
7:94 ) = aji denotes the ji’th element of A y and D is any diagonal
i=1 di ij , where b
84:45. matrix.
526 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 527

3. General case. For a general square or non-square matrix which has neither full are called
p norms. The most commonly used norm is the Euclidean vector norm,
row nor full column rank, identities (A.84) and (A.85) still apply. kek2 = je1 j2 + je2 j2 +    jem j2 . This is simply the distance between two points
From this it also follows that the rank of any matrix is equal to the sum of its y and x, where ei = yi xi is the difference in their i’th coordinates.
RGA-elements: Let the l  m matrix G have rank r, then
X
ij (G) = rank(G) = r (A.86) Definition A.5 A norm of e (which may be a vector, matrix, signal or system) is a
i;j real number, denoted kek, that satisfies the following properties:

Proofs of (A.84) and (A.85): We will prove these identities for the general case. Write the SVD 1. Non-negative: kek  0.
of G as G = Ur r VrH (this is theeconomy-size SVD from (A.57)) where r is invertible. We 2. Positive: kek = 0 , e = 0 (for semi-norms we have kek = 0 ( e = 0).
have that gij = eH H y H 1 H H H
i Ur r Vr ej , G ji = ej Vr r Ur ei , Ur Ur = Ir and Vr Vr = Ir , 3. Homogeneous: k  ek = j j  kek for all complex scalars .

where Ir denotes identity matrix of dim r r. For the row sum (A.85) we then get 4. Triangle inequality:
m
X m
X 1 H
ke1 + e2 k  ke1k + ke2 k (A.87)
ij = eH H H
i Ur r Vr ej ej Vr r Ur ei =
j =1 j =1 More precisely, e is an element in a vector space V over the field C of complex
m
HX 1 H 2 numbers, and the properties above must be satisfied 8e; e 1 ; e2 2 V and 8 2 C .
eH j Vr r Ur ei = ei Ur Ur ei = kei Ur k2
ej e H H H H
i Ur r Vr
j =1
| {z } In this book we consider the norms of four different objects (norms on four different
Im
vector spaces):
The result for the column sum (A.84) is proved in a similar fashion. 2
1. e is a constant vector.
Remark. The extension of the RGA to non-square matrices was suggested by Chang and Yu 2. e is a constant matrix.
(1990) who also stated most of its properties, although in a somewhat incomplete form. More 3. e is a time dependent signal, e(t), which at each fixed t is a constant scalar or
general and precise statements are found in e.g. Cao (1995). vector.
4. e is a “system”, a transfer function G(s) or impulse response g(t), which at each
fixed s or t is a constant scalar or matrix.
A.4.3 Computing the RGA with MATLAB
Cases 1 and 2 involve spatial norms and the question that arises is: how do we
If G is a constant matrix then the RGA can be computed using average or sum up the channels? Cases 3 and 4 involve function norms or temporal
RGA = G.*pinv(G.’);
norms where we want to “average” or “sum up” as a function of time or frequency.
Note that the first two are finite dimensional norms, while the latter two are infinite-
If G(j! ) is a frequency-dependent matrix generated using the  toolbox, e.g. dimensional.

G=pck(A,B,C,D); omega=logspace(-2,2,41); Gw=frsp(G,omega);


Remark. Notation for norms. The reader should be aware that the notation on norms in
then the RGA as a function of frequency can be computed using the literature is not consistent, and one must be careful to avoid confusion. First, in spite of
the fundamental difference between spatial and temporal norms, the same notation, kk , is
RGAw = veval(’.*’,Gw,vpinv(vtp(Gw))); generally used for both of them, and we adopt this here. Second, the same notation is often
kk
used to denote entirely different norms. For example, consider the infinity-norm, e 1 . If e
kk kk
is a constant vector, then e 1 is the largest element in the vector (we often use e max for
k k j j
this). If e(t) is a scalar time signal, then e(t) 1 is the peak value of e(t) as a function
A.5 Norms k k
of time. If E is a constant matrix then E 1 may denote the the largest matrix element
k k k k
(we use A max for this), while other authors use E 1 to denote the largest matrix row-
k k
sum (we use E i1 for this). Finally, if E (s) is a stable proper system (transfer function),
It is useful to have a single number which gives an overall measure of the size of k k H
then E 1 is the 1 norm which is the peak value of the maximum singular value of E ,
a vector, a matrix, a signal, or a system. For this purpose we use functions which k k 1
E (s) 1 = maxw  (E (j! )) (which is how we mostly use the -norm in this book).
528 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 529

A.5.1 Vector norms p=1 a2


1 p=2
We will consider a vector a with m elements, that is, the vector space is V = C m .
To illustrate the different norms we will calculate each of them for the vector
2 3 2 3
b1 1
b = 4 b2 5 = 4 3 5 (A.88) p=1 a1
b3 5
1 1
We will consider three norms which are special cases of the vector p-norm
X
kakp = ( jai jp )1=p (A.89)
i
where we must have p  1 to satisfy the triangle inequality (property 4 of a norm). 1
Here a is a column vector with elements a i and jai j is the absolute value of the
complex scalar ai .
kk
Figure A.1: Contours for the vector p-norm, a p = 1 for p = 1; 2; 1.
(Mathematically: The unit ball on R2 with three different norms)
Vector 1-norm (or sum-norm ). This is sometimes referred to as the “taxi-cab
norm”, as in two dimensions it corresponds to the distance between two places when
following the “streets” (New York style). We have
X
kak1 , jai j (kbk1 = 1 + 3 + 5 = 9) (A.90)
A.5.2 Matrix norms
i We will consider a constant l  m matrix A The matrix A may represent, for example,
Vector 2-norm (Euclidean norm). This is the most common vector norm, and the frequency response, G(j! ), of a system G(s) with m inputs and l outputs. For
corresponds to the shortest distance between two points numerical illustrations we will use the following 2  2 matrix example
 
s
X p 1 2
kak2 , jai j2 (kbk2 = 1 + 9 + 25 = 5:916) (A.91) A0 = 3 4 (A.96)
i
The Euclidean vector norm satisfies the property Definition A.6 A norm on a matrix kAk is a matrix norm if, in addition to the four
norm properties in Definition A.5, it also satisfies the multiplicative property (also
aH a = kak22 (A.92) called the consistency condition):
H
where a denotes the complex conjugate transpose of the vector a. kAB k  kAk  kB k (A.97)
Vector 1 -norm (or max norm ). This is the largest element magnitude in the vector.
We use the notation kak max so that Property (A.97) is very important when combining systems, and forms the basis for
kakmax  kak1 , max
i
jai j (kbkmax = j 5j = 5) (A.93)
the small gain theorem. Note that there exist norms on matrices (thus satisfying the
four properties of a norm), which are not matrix norms (thus not satisfying (A.97)).
Such norms are sometimes called generalized matrix norms. The only generalized
Since the various vector norms only differ by constant factors, they are often said to matrix norm considered in this book is the largest-element norm, kAk max .
be equivalent. For example, for a vector with m elements
kakmax  kak2  pm kakmax
Let us first examine three norms which are direct extensions of the definitions of the
(A.94) vector p-norms.
kak2  kak1  pm kak2 (A.95) Sum matrix norm. This is the sum of the element magnitudes
X
In Figure A.1 the differences between the vector norms are illustrated by plotting the kAksum = jaij j (kA0 ksum = 1 + 2 + 3 + 4 = 10) (A.98)
contours for kak p = 1 for the case with m = 2. i;j
530 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 531

Frobenius matrix norm (or Euclidean norm). This is the square root of the sum of Thus, the induced norm gives the largest possible “amplifying power” of the matrix.
the squared element magnitudes The following equivalent definition is also used
sX q p kAkip = kwmax kAwkp = kwmax kAwkp
kAkF = jaij j2 = tr(AH A) (kA0 kF = 30 = 5:477) (A.99) kp 1 kp=1
(A.103)
i;j
For the induced 1-, 2- and 1-norms the following identities hold:
The trace tr is the sum of the the diagonal elements, and A H is the complex X
conjugate transpose of A. The Frobenius norm is important in control because it kAki1 = max
j
( jaij j) “maximum column sum” (A.104)
is used for summing up the channels, for example, when using LQG optimal control. i
X
Max element norm. This is the largest element magnitude, kAki1 = max
i
( jaij j) “maximum row sum” (A.105)
j
kAkmax = max ja j
i;j ij
(kA0 kmax = 4) (A.100) q
kAki2 =  (A) = (AH A) “singular value or spectral norm” (A.106)

p
This norm is not a matrix norm as it does not satisfy (A.97). However note that where the spectral radius (A) = max i ji (A)j is the largest eigenvalue of the matrix
lm kAkmax is a matrix norm. A. Note that the induced 2-norm of a matrix is equal to the (largest) singular value,
The above three norms are sometimes called the 1 , 2 and 1 norm, respectively, and is often called the spectral norm. For the example matrix in (A.96) we get
but this notation is not used in this book to avoid confusion with the more important
induced p-norms introduced next. kA0 ki1 = 6; kA0 ki1 = 7; kA0 ki2 =  (A0 ) = 5:117 (A.107)

Theorem A.3 All induced norms kAkip are matrix norms and thus satisfy the
Induced matrix norms multiplicative property
kAB kip  kAkip  kB kip (A.108)
w - A -z
w - B v - A -z
Figure A.2: Representation of (A.101)

Induced matrix norms are important because of their close relationship to signal Figure A.3: Representation of (A.109)
amplification in systems. Consider the following equation which is illustrated in
Figure A.2
z = Aw (A.101) Proof: Consider the following set of equations which is illustrated graphically in Figure A.3.
We may think of w as the input vector and z as the output vector and consider the z = Av; v = Bw ) z = ABw (A.109)
“amplification” or “gain” of the matrix A as defined by the ratio kz k=kwk. The
maximum gain for all possible input directions is of particular interest. This is given From the definition of the induced norm we get by first introducing v = Bw, then multiplying
by the induced norm which is defined as kk 6
the numerator and denominator by v p = 0, and finally maximizing each term involving w
and v independently, that

kAkip , max kAwkp v


w6=0 kwk
(A.102) z}|{
p
kAB kip , max kA Bw kp = max kAvkp  kBwkp  max kAvkp  max kBwkp
w6=0 kwkp w6=0 kv kp kwkp v6=0 kvkp w6=0 kwkp
where kwkp = ( i jwi jp )1=p denotes the vector p-norm. In other words, we are
P

looking for a direction of the vector w such that the ratio kz k p=kwkp is maximized. and (A.108) follows from the definition of an induced norm. 2
532 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 533

Implications of the multiplicative property we have (A1 ) = 1 and (A2 ) = 1. However, (A1 + A2 ) = 12 and (A1 A2 ) =
101:99, which neither satisfy the triangle inequality (property 4 of a norm) nor the
For matrix norms the multiplicative property kAB k  kAk  kB k holds for matrices multiplicative property in (A.97).
A and B of any dimension as long as the product AB exists. In particular, it holds if Although the spectral radius is not a norm, it provides a lower bound on any matrix
we choose A and B as vectors. From this observation we get:
norm, which can be very useful.
1. Choose B to be a vector, i.e B = w. Then for any matrix norm we have from
(A.97) that Theorem A.4 For any matrix norm (and in particular for any induced norm)
kAwk  kAk  kwk (A.110)
(A)  kAk
We say that the “matrix norm kAk is compatible with its corresponding vector
(A.116)
norm kwk”. Clearly, from (A.102) any induced matrix p-norm is compatible with
Proof: Since i (A) is an eigenvalue of A, we have that Ati = i ti where ti denotes the
its corresponding vector p-norm. Similarly, the Frobenius norm is compatible with
the vector 2-norm (since when w is a vector kwk F = kwk2 ).
eigenvector. We get
ji j  kti k = ki ti k = kAti k  kAk  kti k (A.117)
2. From (A.110) we also get for any matrix norm that
(the last inequality follows from (A.110)). Thus for any matrix norm ji (A)j  kAk and
kAwk since this holds for all eigenvalues the result follows. 2
kAk  max
w6=0 kwk
(A.111)
p
For our example matrix in (A.96) we get (A 0 ) = 10  3:162 which is less than
Note that the induced norms are defined such that we have equality in (A.111). all the induced norms (kA 0 ki1 = 6; kA0 ki1 = 7;  (A0 ) = 5:117) and also less than
The property kAk F   (A) then follows since kwkF = kwk2 . the Frobenius norm (kAk F = 5:477) and the sum-norm (kAk sum = 10).
3. Choose both A = z H and B = w as vectors. Then using the Frobenius norm
A simple physical interpretation of (A.116) is that the eigenvalue measures the
or induced 2-norm (singular value) in (A.97) we derive the Cauchy-Schwarz
gain of the matrix only in certain directions (given by the eigenvectors), and must
inequality
jz H wj  kz k2  kwk2 (A.112)
therefore be less than that for a matrix norm which allows any direction and yields
the maximum gain, recall (A.111).
where z and w are column vectors of the same dimension and z H w is the
Euclidean inner product between the vectors z and w.
4. The inner product can also be used to define the angle  between two vectors z A.5.4 Some matrix norm relationships
and w 
 = cos 1
jz H w j  The various norms of the matrix A are closely related as can be seen from the
kz k2  kwk2 (A.113)
following inequalities taken from Golub and van Loan (1989, p. 15) and Horn and
Johnson (1985, p. 314). Let A be an l  m matrix, then
Note that with this definition,  is between 0 o and 90o .
p
 (A)  kAkF  min(l; m)  (A) (A.118)
p
A.5.3 The spectral radius kAkmax   (A)  lm kAkmax (A.119)
p
The spectral radius (A) is the magnitude of the largest eigenvalue of the matrix A,  (A)  kAki1 kAki1 (A.120)
ji (A)j p
(A) = max
i
(A.114) p1m kAki1   (A)  l kAki1 (A.121)

p1 kAk   (A)  pm kAk


It is not a norm, as it does not satisfy norm properties 2 and 4 in Definition A.5. For
example, for i1 i1 (A.122)
 
1 0 ; A = 1 10
  l
A1 = 10 1 2 0 1 (A.115) maxf (A); kAkF ; kAki1 ; kAki1 g  kAksum (A.123)
534 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 535

All these norms, except kAk max , are matrix norms and satisfy (A.97). The A.5.6 Signal norms
inequalities are tight; that is, there exist matrices of any size for which the equality
holds. Note from (A.119) that the maximum singular value is closely related to the We will consider the temporal norm of a time-varying (or frequency-varying) signal,
largest element of the matrix. Therefore, kAk max can be used as a simple and readily e(t). In contrast with spatial norms (vector and matrix norms), we find that the
available estimate of  (A). choice of temporal norm makes a big difference. As an example, consider Figure A.4
which shows two signals, e 1 (t) and e2 (t). For e1 (t) the infinity-norm (peak) is one,
An important property of the Frobenius norm and the maximum singular value
ke1(t)k1 = 1, whereas since the signal does not “die out” the 2-norm is infinite,
(induced 2-norm) is that they are invariant with respect to unitary transformations,
i.e. for unitary matrices U i , satisfying Ui UiH = I , we have ke1(t)k2 = 1. For e2 (t) the opposite is true.
kU1AU2 kF = kAkF (A.124) e
 (U1 AU2 ) = (A) (A.125)
From an SVD of the matrix A = U V H and (A.124), we then obtain an important
relationship between the Frobenius norm and the singular values,  i (A), namely
1
s
e1 (t)
X
kAkF = i2 (A) (A.126)
i e2 (t)
The Perron-Frobenius theorem, which applies to a square matrix A, states that
t
min kDAD 1 ki1 = min kDAD 1 ki1 = (jAj) (A.127)
D D
Figure A.4: Signals with entirely different 2-norms and 1-norms.
where D is a diagonal “scaling” matrix, jAj denotes the matrix A with all its elements
replaced by their magnitudes, and (jAj) = max i ji (jAj)j is the Perron root
(Perron-Frobenius eigenvalue). The Perron root is greater than or equal to the spectral
e
radius, (A)  (jAj).

kek1
A.5.5 Matrix and vector norms in MATLAB
e(t)
Area = kek1
The following MATLAB commands are used for matrices:
 (A) = kAki2 norm(A,2) or max(svd(A))
kAki1 norm(A,1) t
kAki1 norm(A,’inf’)
kAkF norm(A,’fro’) 1-norm.
kAksum sum (sum(abs(A)))
Figure A.5: Signal 1-norm and

kAkmax max(max(abs(A))) (which is not a matrix norm) For signals we may compute the norm in two steps:
(A) max(abs(eig(A)))
(jAj) max(eig(abs(A))) 1. “Sum up” the channels at a given time or frequency using a vector norm (for a
(A) =  (A)= (A) cond(A) scalar signal we simply take the absolute value).
2. “Sum up” in time or frequency using a temporal norm.
For vectors:
kak1 norm(a,1) Recall from above, that the vector norms are “equivalent” in the sense that their
kak2 norm(a,2) values differ only by a constant factor. Therefore, it does not really make too much
kakmax norm(a,’inf’) difference which norm we use in step 1. We normally use the same p-norm both for
536 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 537

the vector and the signal, and thus define the temporal p-norm, ke(t)k p , of a time- This in turn will be useful in helping us to understand how to select performance
varying vector as weights in controller design problems. The proofs of the results in this section require
!1=p a good background in functional analysis and can be found in Doyle et al. (1992),
Z 1 X Dahleh and Diaz-Bobillo (1995) and Zhou et al. (1996).
Lp norm: ke(t)kp = jei ( )jp d (A.128)
Consider a system G with input d and output e, such that
1 i
The following temporal norms of signals are commonly used: e = Gd (A.133)
1-norm in time (integral absolute error (IAE), see Figure A.5): For performance we may want the output signal e to be “small” for any allowed input
Z 1 X signals d. We therefore need to specify:
ke(t)k1 = jei ( )jd (A.129)
1. What d’s are allowed. (Which set does d belong to?)
1 i
2. What we mean by “small”. (Which norm should we use for e?)
2-norm in time (quadratic norm, integral square error (ISE), “energy” of signal): Some possible input signal sets are:
sZ
1 X 1. d(t) consists of impulses, Æ(t). These generate step changes in the states, which
ke(t)k2 = jei ( )j2 d (A.130) is the usual way of introducing the LQ-objective and gives rise to the H 2 norm.
1 i 2. d(t) is a white noise process with zero mean.
3. d(t) = sin(!t) with fixed frequency, applied from t = 1 (which corresponds
1-norm in time (peak value in time, see Figure A.5): to the steady-state sinusoidal response).
  4. d(t) is a set of sinusoids with all frequencies allowed.
ke(t)k1 = max max jei ( )j (A.131) 5. d(t) is bounded in energy, kd(t)k 2  1.
 i 6. d(t) is bounded in power, kd(t)k pow  1.
In addition, we will consider the power-norm or RMS-norm (which is actually only 7. d(t) is bounded in magnitude, kd(t)k 1  1.
a semi-norm since it does not satisfy norm property 2)
The first three sets of input are specific signals, whereas the latter three are classes of
v
u Z T X inputs with bounded norm. The physical problem at hand determines which of these
u 1
ke(t)kpow = Tlim
!1
t
2T
jei ( )j2 d (A.132) input classes is the most reasonable.
T i
To measure the output signal one may consider the following norms:
1. 1-norm, ke(t)k 1
Remark 1 In most cases we assume e(t) = 0 for t < 0 so the lower value for the integration 2. 2-norm (energy), ke(t)k 2
may be changed to  = 0.
3. 1-norm (peak magnitude), ke(t)k 1
Remark 2 To be mathematically correct we should have used sup (least upper bound) rather 4. Power, ke(t)kpow
than max in (A.131), since the maximum value may not actually be achieved (e.g. if it occurs
1
for t = ). Other norms are possible, but again, it is engineering issues that determine which
norm is the most appropriate. We will now consider which system norms result from
the definitions of input classes, and output norms, respectively. That is, we want
A.5.7 Signal interpretation of various system norms to find the appropriate system gain to test for performance. The results for SISO
systems in which d(t) and e(t) are scalar signals, are summarized in Tables A.1
Two system norms are considered in Section 4.10. These are the H 2 norm, and A.2. In these tables G(s) is the transfer function and g (t) is its corresponding
kG(s)k2 = kg(t)k2 and the H1 norm, kG(s)k1 . The main reason for including this impulse response. Note in particular that
section is to show that there are many ways of evaluating performance in terms of
signals, and to show that the H 2 and H1 norms are useful measures in this context. H1 norm: kG(s)k1 , max!  (G(j!)) = maxd(t) kkde((tt))kk22 (A.134)
538 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 539

and A.6 Factorization of the sensitivity function


R1 ke(t)k1
L1 norm: kg(t)k1 , 1 g(t)dt = maxd(t) kd(t)k1 (A.135)
Consider two plant models, G a nominal model and G 0 an alternative model, and
(the two right equalities are not by definition; these are important results from assume that the same controller is applied to both plants. Then the corresponding
functional analysis). We see from Tables A.1 and A.2 that the H 2 and H1 norms sensitivity functions are
S = (I + GK ) 1 ; S 0 = (I + G0 K ) 1
appear in several positions. This gives some basis for their popularity in control. In
addition, the H 1 norm results if we consider d(t) to be the set of sinusoids with (A.138)
all frequencies allowed, and measure the output using the 2-norm (not shown in
Tables A.1 and A.2, but discussed in Section 3.3.5). Also, the H 2 norm results if the
input is white noise and we measure the output using the 2-norm. A.6.1 Output perturbations
Assume that G0 is related to G by either an output multiplicative perturbation E O ,
d(t) = Æ(t) d(t) = sin(!t)
or an inverse output multiplicative perturbation E iO . Then S 0 can be factorized in
jjejj2 jjG(s)jj2 1 (usually) terms of S as follows
jjejj1 jjg(t)jj1  (G(j!))
jjejjpow 0 p12  (G(j!)) S 0 = S (I + EO T ) 1 ; G0 = (I + EO )G (A.139)
S 0 = S (I EiO S ) 1 (I EiO ); G0 = (I EiO ) 1 G (A.140)
Table A.1: System norms for two specific input signals and three different output norms For a square plant, E O and EiO can be obtained from a given G and G 0 by
EO = (G0 G)G 1 ; EiO = (G0 G)G0 1 (A.141)
jjdjj2 jjdjj1 jjdjjpow
jjejj2 jjG(s)jj1 1 1 (usually) Proof of (A.139):
jjejj1 jjG(s)jj2 jjg(t)jj1 1 (usually) I + G0 K = I + (I + EO )GK = (I + EO GK (I + GK ) 1 )(I + GK ) (A.142)
jjejjpow 0  jjG(s)jj1 jjG(s)jj1 | {z
T
}

Proof of (A.140):
Table A.2: System norms for three sets of norm-bounded input signals and three different
output norms. The entries along the diagonal are induced norms. I + G0 K = I + (I EiO ) 1 GK = (I EiO ) 1 ((I EiO ) + GK )
= (I EiO ) 1 (I EiO (I + GK ) 1 )(I + GK ) (A.143)
| {z }
The results in Tables A.1 and A.2 may be generalized to MIMO systems by use S
of the appropriate matrix and vector norms. In particular, the induced norms along
the diagonal in Table A.2 generalize if we use for the H 1 norm kG(s)k1 = Similar factorizations may be written in terms of the complementary sensitivity
max!  (G(j!)), and for the L1 norm we use kg(t)k1 = maxi kgi (t)k1 , where function (Horowitz and Shaked, 1975; Zames, 1981). For example, by writing
gi (t) denotes row i of the impulse response matrix. The fact that the H 1 norm (A.139) in the form S = S 0 (I + EO T ) and using the fact S S 0 = T 0 T ,
and L1 norm are induced norms makes them well suited for robustness analysis, for we get
example, using the small gain theorem. The two norms are also closely related as can T 0 T = S 0 EO T (A.144)
be seen from the following bounds for a proper scalar system
kG(s)k1  kg(t)k1  (2n + 1)  kG(s)k1 (A.136) A.6.2 Input perturbations
where n is the number of states in a minimal realization. We have the following For a square plant, the following factorization in terms of input multiplicative
generalization for a multivariable l  m system (Dahleh and Diaz-Bobillo (1995), p. uncertainty EI is useful:
342) p p S 0 = S (I + GEI G 1 T ) 1 = SG(I + EI TI ) 1 G 1 ; G0 = G(I + EI ) (A.145)
kG(s)k1  l  kg(t)k1  lm  (2n + 1)  kG(s)k1 (A.137)
where TI = KG(I + KG) 1 is the input complementary sensitivity function.
540 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 541

Proof: Substitute EO = GEI G 1 into (A.139) and use G 1 T = TI G 1 . 2 A.7 Linear fractional transformations

Alternatively, we may factor out the controller to get Linear fractional transformations (LFTs), as they are currently used in the control
literature for analysis and design, were introduced by Doyle (1984). Consider a
S 0 = (I + T K 1EI K ) 1 S = K 1 (I + TI EI ) 1 KS (A.146) matrix P of dimension (n 1 + n2 )  (m1 + m2 ) and partition it as follows:
 

Proof: Start from I + G0 K = I + G(I + EI )K and factor out (I + GK ) to the left. 2 P= P 11 P12
P21 P22 (A.149)

Let the matrices  and K have dimensions m 1  n1 and m2  n2 , respectively


(compatible with the upper and lower partitions of P , respectively). We adopt the
A.6.3 Stability conditions following notation for the lower and upper linear fractional transformations
The next Lemma follows directly from the generalized Nyquist Theorem and the Fl (P; K ) , P11 + P12 K (I P22 K ) 1 P21 (A.150)
factorization (A.139):
Fu (P; ) , P22 + P21 (I P11 ) 1 P12 (A.151)
Lemma A.5 Assume that the negative feedback closed-loop system with loop
transfer function G(s)K (s) is stable. Suppose G 0 = (I + EO )G, and let the where subscript l denotes lower and subscript u upper. In the following, let R denote
number of open loop unstable poles of G(s)K (s) and G 0 (s)K (s) be P and P 0 , a matrix function resulting from an LFT.
respectively. Then the negative feedback closed-loop system with loop transfer R1 R2
function G0 (s)K (s) is stable if and only if
w - -z  
N (det(I + EO T )) = P P 0 (A.147) - P
u y
where N denotes the number of clockwise encirclements of the origin as s traverses u v
the Nyquist D-contour in a clockwise direction. -
K  w - P -z
N
Proof: Let (f ) denote the number of clockwise encirclements of the origin by f (s) as s
traverses the Nyquist D contour in a clockwise direction. For the encirclements of the product
N N N
of two functions we have (f1 f2 ) = (f1 ) + (f2 ). This together with (A.142) and the (a) (b)

fact det(AB ) = det A det B yields
Figure A.6: (a) R1 as lower LFT in terms of K . (b) R2 as upper LFT in terms of .
N (det(I + G0 K )) = N (det(I + EO T )) + N (det(I + GK )) (A.148)
The lower fractional transformation F l (P; K ) is the transfer function R 1 resulting
For stability we need from Theorem 4.7 that N (det(I + G0 K )) = P 0, but we know from wrapping (positive) feedback K around the lower part of P as illustrated in
N
that (det(I + GK )) = P and hence Lemma A.5 follows. The Lemma is from Hovd Figure A.6(a). To see this, note that the block diagram in Figure A.6(a) may be
and Skogestad (1994a); similar results, at least for stable plants, have been presented by e.g. written as
Grosdidier and Morari (1986) and Nwokah and Perez (1991). 2 z = P11 w + P12 u; v = P21 w + P22 u; u = Kv (A.152)
Upon eliminating v and u from these equations we get
In other words, (A.147) tells us that for stability det(I + E O T ) must provide the
z = R1 w = Fl (P; K )w = [P11 + P12 K (I P22 K ) 1 P21 ]w (A.153)
required additional number of clockwise encirclements. If (A.147) is not satisfied
then the negative feedback system with G 0 K must be unstable. We show in In words, R1 is written as a lower LFT of P in terms of the parameter K . Similarly,
Theorem 6.5 how the information about what happens at s = 0 can be used to in Figure A.6(b) we illustrate the upper LFT, R 2 = Fu (P; ), obtained by wrapping
determine stability. (positive) feedback  around the upper part of P .
542 MULTIVARIABLE FEEDBACK CONTROL MATRIX THEORY AND NORMS 543
R R
-- - -- Q - - -
where 
f= 0 I M 0 I
  
Q - P M I 0 I 0 (A.159)

() M
 ()
K0 K
K0 -K A.7.3 Inverse of LFTs
On the assumption that all the relevant inverses exist we have

(Fl (M; K )) 1 = Fl (M;


(a) (b) (c)
f K) (A.160)
Figure A.7: An interconnection of LFTs yields an LFT
where M
f is given by

M111 M111M12
 
A.7.1 Interconnection of LFTs
M
f= 1 1
M21 M11 M22 M21 M11 M12 (A.161)
An important property of LFTs is that any interconnection of LFTs is again an LFT.
Consider Figure A.7 where R is written in terms of a lower LFT of K 0 , which again This expression follows easily from the matrix inversion lemma in (A.6).
is a lower LFT of K , and we want to express R directly as an LFT of K . We have

R = Fl (Q; K 0) where K 0 = Fl (M; K ) (A.154)


A.7.4 LFT in terms of the inverse parameter
and we want to obtain the P (in terms of Q and M ) such that
Given an LFT in terms of K , it is possible to derive an equivalent LFT in terms of
R = Fl (P; K ) (A.155) K 1 . If we assume that all the relevant inverses exist we have
We find c K 1)
Fl (M; K ) = Fl (M; (A.162)
 
P= P 11 P12
P21 P22 = where M
c is given by
 
Q11 + Q12 M11 (I Q22 M11 ) 1 Q21 Q12 (I M11 Q22 ) 1 M12 
M221 M21 M12M221

M21 (I Q22 M11 ) 1 Q21 M22 + M21 Q22 (I M11 Q22 ) 1 M12 c = M11 M12
M 1
M22 M21 M221 (A.163)
(A.156)
This expression follows from the fact that (I + L) 1 = I L(I + L) 1 for any
Similar expressions apply when we use upper LFTs. For square matrix L.
R = Fu (M; 0 ) where 0 = Fu (Q; ) (A.157)

we get R = Fu (P; ) where P is given in terms of Q and M by (A.156). A.7.5 Generalized LFT: The matrix star product
A generalization of the upper and lower LFTs above is provided by Redheffer’s star
A.7.2 Relationship between Fl and Fu . product. Consider Figure A.8 where Q and M are interconnected such that the last
nu outputs from Q are the first n u inputs of M , and the first n l outputs from M are
Fl and Fu are obviously closely related. If we know R = F l (M; K ), then we may the last nl inputs of Q. The corresponding partitioned matrices are
directly obtain R in terms of an upper transformation of K by reordering M . We
   
Q= Q 11 Q12 M11 M12
have
Fu (M;
f K ) = Fl (M; K ) (A.158) Q21 Q22 ; M = M21 M22
544 MULTIVARIABLE FEEDBACK CONTROL
R

- Q - - -
- - Q
aanlaa ! APPENDIX B
a!a!!a!!nu () nl nu
aaa
!!!-!
- M -  M

 PROJECT WORK and
SAMPLE EXAM
Figure A.8: Star product of Q and M , R = S (Q; M )

The overall matrix R with these interconnections closed (see Figure A.8) is called B.1 Project work
the star product, S (Q; M ), between Q and M . We find that

R = S (Q; M ) = Students are encouraged to formulate their own project based on an application they
 
Q11 + Q12 M11 (I Q22 M11 ) 1 Q21 Q12 (I M11 Q22 ) 1 M12
are working on. Otherwise, the project is given by the instructor. In either case, a
M21 (I Q22 M11 ) 1 Q21 M22 + M21 Q22 (I M11 Q22 ) 1 M12
preliminary statement of the problem must be approved before starting the project;
see the first item below.
(A.164)
A useful collection of benchmark problems for control system design is provided
Note that S (Q; M ) depends on the chosen partitioning of the matrices Q and M . If in Davison (1990). The helicopter, aero-engine and distillation case studies in
one of the matrices is not partitioned then this means that this matrix has no external Chapter 12, and the chemical reactor in Example 6.16, also provide the basis for
inputs and outputs, and S (Q; M ) then gives the “maximum” interconnection. For several projects. These models are available over the internet.
example, we have for the LFTs
1. Introduction: Preliminary problem definition.
Fl (P; K ) = S (P; K ) (A.165) (i) Give a simple description of the engineering problem with the aid of one or
Fu (P; ) = S (; P )
two diagrams.
(A.166)
(ii) Discuss briefly the control objectives.
The order in the last equation is not a misprint. Of course, this assumes that the (iii) Specify the exogenous inputs (disturbances, noise, setpoints), the manipu-
dimensions of K and  are smaller than those of P . The corresponding command lated inputs, the measurements, and the controlled outputs (exogenous out-
to generate (A.164) in the MATLAB -toolbox is puts).
starp(Q,M,nu,nl) (iv) Describe the most important sources of model uncertainty.
(v) What specific control problems do you expect, e.g. due to interactions, RHP-
where nu and nl are as shown in Figure A.8. If n u and nl are not specified then this zeros, saturation, etc.
results in a “maximum” interconnection involving the corresponding LFT in (A.165)
The preliminary statement of no more than 3 pages must be handed in and
or (A.166).
approved before starting the project.
2. Plant model. Specify all parameters, operating conditions, etc. and obtain a linear
model of the plant. Comment: You may need to consider more than one operating
point.
546 MULTIVARIABLE FEEDBACK CONTROL PROJECT WORK AND SAMPLE EXAM 547

3. Analysis of the plant. For example, compute the steady-state gain matrix, plot (a) 2  2 plant:
the gain elements as a function of frequency, obtain the poles and zeros (both of  
1 s 1 1
the individual elements and the overall system), compute the SVD and comment G(s) = (B.1)
on directions and the condition number, perform an RGA-analysis, a disturbance (s + 2)(s 1:1) 90 10(s 1)
analysis, etc.. Does the analysis indicate that the plant is difficult to control?
(b) SISO plant with disturbance:
4. Initial controller design. Design at least two controllers, for example, using
0:1s + 1 40
(i) Decentralized control (PID). g(s) = 200 ; gd (s) = (B.2)
(ii) Centralized control (LQG, LTR, H 2 (in principle same as LQG, but with a (s + 10)(0:2s + 1) s+1
different way of choosing weights), H 1 loop shaping, H 1 mixed sensitivity, (c) Plant with two inputs and one output:
etc.).
s 4 3
y(s) = u + u + d
0:2s + 1 1 0:2s + 1 2 0:02s + 1
(iii) A decoupler combined with PI-control. (B.3)
5. Simulations. Perform simulations in the time domain for the closed-loop system.
6. Robustness analysis using . (d) Consider the following 2  2 plant with 1 disturbance given in state-space form:
(i) Choose suitable performance and uncertainty weights. Plot the weights as
functions of frequency. x_ 1 = 0:1x1 + 0:01u1
(ii) State clearly how RP is defined for your problem (using block diagrams). x_ 2 = 0:5x2 + 10u2
(iii) Compute  for NP, RS, and RP.
x_ 3 = 0:25x1 + 0:25x2 0:25x3 + 1:25d
(iv) Perform a sensitivity analysis. For example, change the weights (e.g. to make
one output channel faster and another slower), move uncertainties around y1 = 0:8x3 ; y2 = 0:1x3
(e.g. from input to output), change ’s from a diagonal to full matrix, etc. i. Construct a block diagram representation of the system with each block in
Comment: You may need to move back to step (a) and redefine your weights if the form k=(1 + s).
you find out from step (c) that your original weights are unreasonable. ii. Perform a controllability analysis.
7. Optional: H 1 or -optimal controller design. Design an H 1 or -optimal
controller and see if you can improve the response and satisfy RP. Compare
simulations with previous designs. Problem 2 (25%). General Control Problem Formulation.
8. Discussion. Discuss the main results. You should also comment on the usefulness Consider the neutralization process in Figure B.1 where acid is added in two stages.
of the project as an aid to learning and give suggestions on how the project activity Most of the neutralization takes place in tank 1 where a large amount of acid is used
might be improved. (input u1 ) to obtain a pH of about 10 (measurement y 1 ). In tank 2 the pH is fine-tuned
9. Conclusion. to about 7 (output y 2 ) by using a small amount of acid (input u 2 ). This description is
is just to give you some idea of a real process; all the information you need to solve
the problem is given below.
A block diagram of the process is shown in Figure B.2. It includes one disturbance,
B.2 Sample exam two inputs and two measurements (y 1 and y2 ). The main control objective is to keep
y2  r2 . In addition, we would like to reset input 2 to its nominal value, that is, we
A Norwegian-style 5-hour exam. want u2  ru2 at low frequencies. Note that there is no particular control objective
for y1 .
Problem 1 (35%). Controllability analysis. (a) Define the general control problem, that is, find z , w, u, v and P (see Figure B.3).
Perform a controllability analysis (compute poles, zeros, RGA ( 11 (s)), check for (b) Define an H1 control problem based on P . Discuss briefly what you want the
constraints, discuss the use of decentralized control (pairings), etc.) for the following unweighted transfer functions from d to z to look like, and use this to say a little
four plants. You can assume that the plants have been scaled properly. about how the performance weights should be selected.
548 MULTIVARIABLE FEEDBACK CONTROL PROJECT WORK AND SAMPLE EXAM 549

pH  13
ACID (c) A simple practical solution based on single loops is shown in Figure B.4. Explain
u1 @ briefly the idea behind this control structure, and find the interconnection matrix P
and the generalized controller K = diagf k 1 ; k2 ; k3 g. Note that u and y are
?d ? different in this case, while w and z are the same as in (a).

Problem 3 (40%). Various.


pH  10 ACID
(y1 ) u2 @ Give brief answers to each of the following questions:
? ? (a) Consider the plant

x_ (t) = a(1 + 1:5Æa)x(t) + b(1 + 0:2Æb )u(t); y = x


pH  7 where jÆa j  1 and jÆb j  1. For a feedback controller K (s)
-
derive the
(y2 ) interconnection matrix M for robust stability.
 (DMD 1 ) < 1 to check
(b) For the above case consider using the condition min D 
Figure B.1: Neutralization process for robust stability (RS). What is D (give as few parameters as possible)? Is the
RS-condition tight in this case?
d (c) When is the condition (M ) < 1 necessary and sufficient for robust stability?
u1 - ?e - g1 q -e -
y1 g2 y2- Based on (M ) < 1, derive the RS-condition (M ) < 1. When is this last
6u2 condition necessary and sufficient?
? (d) Let
Figure B.2: Block diagram of neutralization process  
Gp (s) = gg11 + w1 1 g12 + w2 2 ; j1 j  1; j2 j  1
21 + w3 1 g22
w - -z
- P Represent this uncertainty as G p = G + W1 W2 where  is diagonal. Determine
the corresponding M -structure and derive the RS-condition.
u v
(e) Let
K  Gp (s) =
1 s
1 + s
;  = 0 (1 + w); jj < 1
and consider the controller K (s) = c=s. Put this into the M -structure and find the
Figure B.3: General control configuration RS-condition.
(f) Show by a counterexample that in general 
 (AB ) is not equal to  (BA). Under
d what conditions is (AB ) = (BA)?
y1-
s d- k1
u1- ?
+
d- g1 q -+ d+ -
y1 g2 q- y2
= G diag G 1 . What is its relationship to the
+ -
6 +
6u2 (g) The PRGA matrix is defined as

q dy+2s
RGA?
k2 - ?
k3  -? d+u2s
Figure B.4: Proposed control structure for neutralization process
550 MULTIVARIABLE FEEDBACK CONTROL

BIBLIOGRAPHY
Anderson, B. D. O. (1986). Weighted Hankel-norm approximation: Calculation of bounds,
Systems & Control Letters 7(4): 247–255.
Anderson, B. D. O. and Liu, Y. (1989). Controller reduction: Concepts and approaches, IEEE
Transactions on Automatic Control AC-34(8): 802–812.
Anderson, B. D. O. and Moore, J. B. (1989). Optimal Control: Linear Quadratic Methods,
Prentice-Hall.
Balas, G. J., Doyle, J. C., Glover, K., Packard, A. and Smith, R. (1993). -Analysis and
Synthesis Toolbox User’s Guide, MathWorks, Natick, Mass.
Balchen, J. G. and Mumme, K. (1988). Process Control. Structures and Applications, Van
Nostrand Reinhold, New York.
Bode, H. W. (1945). Network Analysis and Feedback Amplifier Design, D. Van Nostrand Co.,
New York.
Boyd, S. and Barratt, C. (1991). Linear Controller Design — Limits of Performance, Prentice-
Hall.
Boyd, S. and Desoer, C. A. (1985). Subharmonic functions and performance bounds in linear
time-invariant feedback systems, IMA J. Math. Contr. and Info. 2: 153–170.
Boyd, S., Ghaoui, L. E., Feron, E. and Balakrishnan, V. (1994). Linear Matrix Inequalities in
System and Control Theory, SIAM, Philadelphia.
Braatz, R. D. (1993). Robust Loopshaping for Process Control, PhD thesis, California Institute
of Technology, Pasadena.
Braatz, R. D. and Morari, M. (1994). Minimizing the Euclidean condition number, SIAM
Journal on Control and Optimization 32(6): 1763–1768.
Braatz, R. D., Morari, M. and Skogestad, S. (1996). Loopshaping for robust performance,
International Journal of Robust and Nonlinear Control 6.
Bristol, E. H. (1966). On a new measure of interactions for multivariable process control, IEEE
Transactions on Automatic Control AC-11: 133–134.
Campo, P. J. and Morari, M. (1994). Achievable closed-loop properties of systems under
decentralised control: Conditions involving the steady-state gain, IEEE Transactions on
Automatic Control AC-39: 932–942.
Cao, Y. (1995). Control Structure Selection for Chemical Processes Using Input-output
Controllability Analysis, PhD thesis, University of Exeter.
Chang, J. W. and Yu, C. C. (1990). The relative gain for non-square multivariable systems,
Chem. Eng. Sci. 45: 1309–1323.
Chen, C. T. (1984). Linear System Theory and Design, Holt, Rinehart and Winston, Inc., New
York.
Chen, J. (1995). Sensitivity integral relations and design trade-offs in linear multivariable
feedback-systems, IEEE Transactions on Automatic Control AC-40(10): 1700–1716.
552 MULTIVARIABLE FEEDBACK CONTROL BIBLIOGRAPHY 553

Chiang, R. Y. and Safonov, M. G. (1992). Robust Control Toolbox User’s Guide, MathWorks, Frank, P. M. (1968b). Vollständige Vorhersage im stetigen Regelkreis mit Totzeit, Teil II,
South Natick. Regelungstechnik 16(5): 214–218.
Churchill, R. V., Brown, J. W. and Verhey, R. F. (1974). Complex Variables and Applications, Freudenberg, J. and Looze, D. (1985). Right half planes poles and zeros and design tradeoffs
McGraw-Hill, New York. in feedback systems, IEEE Transactions on Automatic Control AC-30(6): 555–565.
Dahl, H. J. and Faulkner, A. J. (1979). Helicopter simulation in atmospheric turbulence, Vertica Freudenberg, J. S. and Looze, D. P. (1988). Frequency Domain Properties of Scalar and
pp. 65–78. Multivariable Feedback Systems, Vol. 104 of Lecture Notes in Control and Information
Dahleh, M. and Diaz-Bobillo, I. (1995). Control of uncertain systems. A linear programming Sciences, Springer-Verlag, Berlin.
approavh, Prentice Hall. Gergiou, T. and Smith, M. (1990). Optimal robusntess in the gap metric, IEEE Transactions on
Daoutidis, P. and Kravaris, C. (1992). Structural evaluation of control configurations for Automatic Control AC-35(6): 673–686.
multivariable nonlinear processes, Chemical Engineering Science 47: 1091–1107. Gjøsæter, O. B. (1995). Structures for Multivariable Robust Process Control, PhD thesis,
Davison, E. J. (ed.) (1990). Benchmark Problems for Control System Design, Report of the Norwegian University of Science and Technology, Trondheim.
IFAC Theory Committee, International Federation of Automatic Control. Glover, K. (1984). All optimal Hankel-norm approximations of linear multivariable systems
Desoer, C. A. and Vidyasagar, M. (1975). Feedback Systems: Input-Output Properties, and their L1 -error bounds, International Journal of Control 39(6): 1115–93.
Academic Press, New York. Glover, K. and Doyle, J. C. (1988). State-space formulae for all stabilizing controller that
Doyle, J. C. (1978). Guaranteed margins for LQG regulators, IEEE Transactions on Automatic H
satisfy an 1 norm bound and relations to risk sensitivity, Systems and Control Letters
Control AC-23(4): 756–757. 11: 167–172.
Doyle, J. C. (1982). Analysis of feedback systems with structured uncertainties, IEE Glover, K. and McFarlane, D. (1989). Robust stabilization of normalized coprime factor plant
Proceedings, Part D 129(6): 242–250. H
descriptions with 1 bounded uncertainty, IEEE Transactions on Automatic Control
Doyle, J. C. (1983). Synthesis of robust controllers and filters, Proc. IEEE Conf. on Decision AC-34(8): 821–830.
and Control, San Antonio, Texas, pp. 109–114. Glover, K., Vinnicombe, G. and Papageorgiou, G. (2000). Guaranteed multi-loop stability
Doyle, J. C. (1984). Lecture Notes on Advances in Multivariable Control, ONR/Honeywell margins and the gap metric, Proc. 39th IEEE Conference on Decision and Control,
Workshop, Minneapolis, October. Sydney, Australia.
Doyle, J. C. (1986). Redondo Beach lecture notes, Internal Report, Caltech, Pasadena. Golub, G. H. and van Loan, C. F. (1989). Matrix Computations, John Hopkins University Press,
Doyle, J. C., Francis, B. and Tannenbaum, A. (1992). Feedback Control Theory, Macmillan Baltimore.
Publishing Company. Grace, A., Laub, A., Little, J. and Thompson, C. (1992). Control System Toolbox, MathWorks,
Doyle, J. C., Glover, K., Khargonekar, P. P. and Francis, B. A. (1989). State-space solutions to South Natick.
H H
standard 2 and 1 control problems, IEEE Transactions on Automatic Control AC- Green, M. and Limebeer, D. J. N. (1995). Linear Robust Control, Prentice-Hall.
34(8): 831–847. Grosdidier, P. and Morari, M. (1986). Interaction measures for systems under decentralized
Doyle, J. C. and Stein, G. (1981). Multivariable feedback design: Concepts for a control, Automatica 22: 309–319.
classical/modern synthesis, IEEE Transactions on Automatic Control AC-26(1): 4–16. Grosdidier, P., Morari, M. and Holt, B. R. (1985). Closed-loop properties from steady-state gain
Doyle, J. and Stein, G. (1979). Robustness with observers, IEEE Transactions on Automatic information, Industrial and Engineering Chemistry Process Design and Development
Control AC-24(4): 607–611. 24: 221–235.
Eaton, J. W. and Rawlings, J. B. (1992). Model-predictive control of chemical processes, Haggblom, K. E. and Waller, K. (1988). Transformations and consistency relations of
Chemical Engineering Science 69(1): 3–9. distillation control structures, AIChE Journal 34: 1634–1648.
Engell, S. (1988). Optimale Lineare Regelung, Vol. 18 of Fachberichte Messen, Steuern, Regeln, Hanus, R., Kinnaert, M. and Henrotte, J. (1987). Conditioning technique, a general anti-windup
Springer-Verlag, Berlin. and bumpless transfer method, Automatica 23(6): 729–739.
Enns, D. (1984). Model reduction with balanced realizations: An error bound and a frequency Havre, K. (1998). Studies on Controllability analysis and control structure design, PhD thesis,
weighted generalization, Proceedings of the 23rd IEEE Conference on Decision and Norwegian University of Science and Technology, Trondheim.
Control, Las Vegas, NV, USA, pp. 127–32. Havre, K. and Skogestad, S. (1997). Limitations imposed by RHP zeros/poles in multivariable
Fernando, K. V. and Nicholson, H. (1982). Singular perturbational model reduction of balanced systems, Proc. European Control Conference, Brussels, number Tu-A H1.
systems, IEEE Transactions on Automatic Control AC-27(2): 466–468. Havre, K. and Skogestad, S. (1998a). Effect of RHP zeros and poles on the sensitivity functions
Foss, A. S. (1973). Critique of chemical process control theory, AIChE Journal 19: 209–214. in multivariable systems, J. of Process Control 8: 155–164.
Foster, N. P., Spurgeon, S. K. and Postlethwaite, I. (1993). Robust model-reference tracking Havre, K. and Skogestad, S. (1998b). Selection of variables for regulatory control using pole
control with a sliding mode applied to an act rotorcraft, 19th European Rotorcraft Forum, vectors, Proc. IFAC symposium DYCOPS-5, Corfu, Greece, pp. 614–619.
Italy. Havre, K. and Skogestad, S. (2001). Achievable performance of multivariable systems with
H
Francis, B. (1987). A course in 1 control theory, Lecture Notes in Control and Information unstable zeros and poles, Int. J. Control 74: 1131–1139.
Sciences, Springer-Verlag, Berlin. Helton, J. (1976). Operator theory and broadband matching, In Proceedings of the 11th Annual
H
Francis, B. A. and Zames, G. (1984). On 1 optimal sensitivity theory for SISO feedback Allerton Conference on Communications, Control and Computing .
systems, IEEE Transactions on Automatic Control AC-29(1): 9–16. Holt, B. R. and Morari, M. (1985a). Design of resilient processing plants V — The effect of
Frank, P. M. (1968a). Vollständige Vorhersage im stetigen Regelkreis mit Totzeit, Teil I, deadtime on dynamic resilience, Chemical Engineering Science 40: 1229–1237.
Regelungstechnik 16(3): 111–116. Holt, B. R. and Morari, M. (1985b). Design of resilient processing plants VI — The effect of
554 MULTIVARIABLE FEEDBACK CONTROL BIBLIOGRAPHY 555

right plane zeros on dynamic resilience, Chemical Engineering Science 40: 59–74. Laub, A. J., Heath, M. T., Page, C. C. and Ward, R. C. (1987). Computation of balancing
Horn, R. A. and Johnson, C. R. (1985). Matrix Analysis, Cambridge University Press. transformations and other applications of simultaneous diagonalization algorithms, IEEE
Horn, R. A. and Johnson, C. R. (1991). Topics in Matrix Analysis, Cambridge University Press. Transactions on Automatic Control AC-32(2): 115–122.
Horowitz, I. M. (1963). Synthesis of Feedback Systems, Academic Press, London. Laughlin, D. L., Jordan, K. G. and Morari, M. (1986). Internal model control and process
Horowitz, I. M. (1991). Survey of quantitative feedback theory (QFT), International Journal of uncertainty – mapping uncertainty regions for SISO controller-design, International
Control 53(2): 255–291. Journal of Control 44(6): 1675–1698.
Horowitz, I. M. and Shaked, U. (1975). Superiority of transfer function over state- Laughlin, D. L., Rivera, D. E. and Morari, M. (1987). Smith predictor design for robust
variable methods in linear time-invariant feedback system design, IEEE Transactions performance, International Journal of Control 46(2): 477–504.
on Automatic Control AC-20(1): 84–97. Lee, J. H., Braatz, R. D., Morari, M. and Packard, A. (1995). Screening tools for robust control
Hovd, M. (1992). Studies on Control Structure Selection and Design of Robust Decentralized structure selection, Automatica 31(2): 229–235.
and SVD Controllers, PhD thesis, Norwegian University of Science and Technology, Levine, W. (ed.) (1995). The Control Handbook, CRC Press.
Trondheim. Limebeer, D. J. N. (1991). The specification and purpose of a controller design case study,
H H
Hovd, M., Braatz, R. D. and Skogestad, S. (1994). SVD controllers for 2 -, 1 -, and - Proc. IEEE Conf. Decision Contr., Brighton, UK, pp. 1579–1580.
optimal control, Proc. 1994 American Control Conference, Baltimore, pp. 1233–1237. Limebeer, D. J. N., Kasenally, E. M. and Perkins, J. D. (1993). On the design of robust two
Hovd, M. and Skogestad, S. (1992). Simple frequency-dependent tools for control system degree of freedom controllers, Automatica 29(1): 157–168.
analysis, structure selection and design, Automatica 28(5): 989–996. Liu, Y. and Anderson, B. D. O. (1989). Singular perturbation approximation of balanced
Hovd, M. and Skogestad, S. (1993). Procedure for regulatory control structure selection with systems, International Journal of Control 50(4): 1379–1405.
application to the FCC process, AIChE Journal 39(12): 1938–1953. Lundström, P. (1994). Studies on Robust Multivariable Distillation Control, PhD thesis,
Hovd, M. and Skogestad, S. (1994a). Pairing criteria for decentralised control of unstable plants, Norwegian University of Science and Technology, Trondheim.
Industrial and Engineering Chemistry Research 33: 2134–2139. Lundström, P., Skogestad, S. and Doyle, J. C. (1999). Two degrees of freedom controller design
Hovd, M. and Skogestad, S. (1994b). Sequential design of decentralized controllers, Automatica for an ill-conditioned plant using -synthesis, IEEE Trans. on Control System Technology
30(10): 1601–1607. 7(1): 12–21.
H
Hoyle, D., Hyde, R. A. and Limebeer, D. J. N. (1991). An 1 approach to two degree of Lunze, J. (1992). Feedback Control of Large-Scale Systems, Prentice-Hall.
freedom design, Proceedings of the 30th IEEE Conference on Decision and Control, MacFarlane, A. G. J. and Karcanias, N. (1976). Poles and zeros of linear multivariable systems:
Brighton, UK, pp. 1581–1585. A survey of algebraic, geometric and complex variable theory, International Journal of
Hung, Y. S. and MacFarlane, A. G. J. (1982). Multivariable Feedback: A Quasi-Classical Control 24: 33–74.
Approach, Vol. 40 of Lecture Notes in Control and Information Sciences, Springer- MacFarlane, A. G. J. and Kouvaritakis, B. (1977). A design technique for linear multivariable
Verlag, Berlin. feedback systems, International Journal of Control 25: 837–874.
Hyde, R. A. (1991). The Application of Robust Control to VSTOL Aircraft, PhD thesis, Maciejowski, J. M. (1989). Multivariable Feedback Design, Addison-Wesley, Wokingham U.K.
University of Cambridge. Manness, M. A. and Murray-Smith, D. J. (1992). Aspects of multivariable flight control law
H
Hyde, R. A. and Glover, K. (1993). The application of scheduled 1 controllers to a VSTOL design for helicopters using eigenstructure assignment, Journal of American Helicopter
aircraft, IEEE Transactions on Automatic Control AC-38(7): 1021–1039. Society pp. 18–32.
Jaimoukha, I. M., Kasenally, E. M. and Limebeer, D. J. N. (1992). Numerical solution of large Manousiouthakis, V., Savage, R. and Arkun, Y. (1986). Synthesis of decentralized process
scale Lyapunov equations using Krylov subspace methods, Proceedings of the 31st IEEE control structures using the concept of block relative gain, AIChE Journal 32: 991–1003.
Conference on Decision and Control. Marlin, T. (1995). Process Control, Mc-Graw Hill.
Kailath, T. (1980). Linear Systems, Prentice-Hall. McFarlane, D. and Glover, K. (1990). Robust Controller Design Using Normalized Coprime
Kalman, R. (1964). When is a linear control system optimal?, Journal of Basic Engineering — Factor Plant Descriptions, Vol. 138 of Lecture Notes in Control and Information
Transaction on ASME — Series D 86: 51–60. Sciences, Springer-Verlag, Berlin.
Kouvaritakis, B. (1974). Characteristic Locus Methods for Multivariable Feedback Systems McMillan, G. K. (1984). pH Control, Instrument Society of America, Research Triangle Park,
Design, PhD thesis, University of Manchester Institute of Science and Technology, UK. North Carolina.
Kwakernaak, H. (1969). Optimal low-sensitivity linear feedback systems, Automatica H
Meinsma, G. (1995). Unstable and nonproper weights in 1 control, Automatica 31(1): 1655–
5(3): 279–286. 1658.
Kwakernaak, H. (1985). Minimax frequency-domain performance and robustness optimization Mesarovic, M. (1970). Multilevel systems and concepts in process control, Proc. of the IEEE,
of linear feedback systems, IEEE Transactions on Automatic Control AC-30(10): 994– Vol. 58, pp. 111–125.
1004. Meyer, D. G. (1987). Model Reduction via Factorial Representation, PhD thesis, Stanford
H
Kwakernaak, H. (1993). Robust control and 1 -optimization — Tutorial paper, Automatica University.
29: 255–273. Moore, B. C. (1981). Principal component analysis in linear systems: controllability,
Kwakernaak, H. and Sivan, R. (1972). Linear Optimal Control Systems, Wiley Interscience, observability and model reduction, IEEE Transactions on Automatic Control AC-
New York. 26(1): 17–32.
Larsson, T. and Skogestad, S. (2000). Plantwide control: A review and a new design procedure, Morari, M. (1982). Integrated plant control: A solution at hand or a research topic for the
Modeling, Identification and Control 21: 209–240. next decade?, in T. F. Edgar and D. E. Seborg (eds), Proc. Chemical Process Control 2,
556 MULTIVARIABLE FEEDBACK CONTROL BIBLIOGRAPHY 557

AIChE, New York, pp. 467–495. J. (1999). H 1 control of the nrc bell 205 fly-by-wire helicopter, Journal of American
Morari, M. (1983). Design of resilient processing plants III – a general framework for the Helicopter Society 44(4): 276–284.
assessment of dynamic resilience, Chemical Engineering Science 38: 1881–1891. Postlethwaite, I. and Walker, D. J. (1992). Advanced control of high performance rotorcraft,
Morari, M., Arkun, Y. and Stephanopoulos, G. (1980). Studies in the synthesis of Institute of Mathematics and Its Applications Conference on Aerospace Vehicle Dynamics
control structures for chemical process, Part I: Formulation of the problem. Process and Control, Cranfield Institute of Technology pp. 615–619.
decomposition and the classification of the control tasks. Analysis of the optimizing Qiu, L. and Davison, E. J. (1993). Performance limitations of non-minimum phase systems in
control structures., AIChE Journal 26(2): 220–232. the servomechanism problem, Automatica 29(2): 337–349.
Morari, M. and Zafiriou, E. (1989). Robust Process Control, Prentice-Hall. Rosenbrock, H. H. (1966). On the design of linear multivariable systems, Third IFAC World
Nett, C. N. (1986). Algebraic aspects of linear-control system stability, IEEE Transactions on Congress. Paper 1a.
Automatic Control AC-31(10): 941–949. Rosenbrock, H. H. (1970). State-space and Multivariable Theory, Nelson, London.
Nett, C. N. (1989). A quantitative approach to the selection and partitioning of measurements Rosenbrock, H. H. (1974). Computer-Aided Control System Design, Academic Press, New
and manipulations for the control of complex systems, Presentation at Caltech Control York.
Workshop, Pasadena, USA, Jan. 1989. Safonov, M. G. (1982). Stability margins of diagonally perturbed multivariable feedback
Nett, C. N. and Manousiouthakis, V. (1987). Euclidean condition and block relative gain systems, IEE Proceedings, Part D 129(6): 251–256.
- connections conjectures, and clarifications, IEEE Transactions on Automatic Control Safonov, M. G. and Athans, M. (1977). Gain and phase margin for multiloop LQG regulators,
AC-32(5): 405–407. IEEE Transactions on Automatic Control AC-22(2): 173–179.
Nett, C. N. and Minto, K. D. (1989). A quantitative approach to the selection and partitioning Safonov, M. G. and Chiang, R. Y. (1989). A Schur method for balanced-truncation model
of measurements and manipulations for the control of complex systems, Copy of reduction, IEEE Transactions on Automatic Control AC-34: 729–733.
transparencies from talk at American Control Conference, Pittsburgh, Pennsylvania, June H
Safonov, M. G., Limebeer, D. J. N. and Chiang, R. Y. (1989). Simplifying the 1 theory via
1989. loop-shifting, matrix-pencil and descriptor concepts, International Journal of Control
Niemann, H. and Stoustrup, J. (1995). Special Issue on Loop Transfer Recovery, International 50(6): 2467–2488.
Journal of Robust and Nonlinear Control 7(7): November. Samar, R. (1995). Robust Multi-Mode Control of High Performance Aero-Engines, PhD thesis,
Nwokah, O. D. I. and Perez, R. (1991). On multivariable stability in the gain space, Automatica University of Leicester.
27(6): 975–983. Samar, R. and Postlethwaite, I. (1994). Multivariable controller design for a high performance
H
Owen, J. G. and Zames, G. (1992). Robust 1 disturbance minimization by duality, Systems areo engine, Proceedings IEE Conference Control 94, Warwick, pp. 1312–1317.
& Control Letters 19(4): 255–263. Samar, R., Postlethwaite, I. and Gu, D.-W. (1995). Model reduction with balanced realizations,
Packard, A. (1988). What’s New with , PhD thesis, University of California, Berkeley. International Journal of Control 62(1): 33–64.
Packard, A. and Doyle, J. C. (1993). The complex structured singular value, Automatica Samblancatt, C., Apkarian, P. and Patton, R. J. (1990). Improvement of helicopter robustness
29(1): 71–109. H
and performance control law using eigenstructure techniques and 1 synthesis, 16th
Packard, A., Doyle, J. C. and Balas, G. (1993). Linear, multivariable robust-control with a - European Rotorcraft Forum, Scotland. Paper No. 2.3.1.
perspective, Journal of Dynamic Systems Measurement and Control — Transactions of Seborg, D. E., Edgar, T. F. and Mellichamp, D. A. (1989). Process Dynamics and Control,
the ASME 115(2B): 426–438. Wiley, New York.
Padfield, G. D. (1981). Theoretical model of helicopter flight mechanics for application to H
Sefton, J. and Glover, K. (1990). Pole-zero cancellations in the general 1 problem with
piloted simulation, Technical Report 81048, Defence Research Agency (formerly Royal reference to a two block design, Systems & Control Letters 14: 295–306.
Aircraft Establishment), UK. Shamma, J. S. (1994). Robust stability with time-varying structured uncertainty, IEEE
Perkins, J. D. (ed.) (1992). IFAC Workshop on Interactions Between Process Design and Transactions on Automatic Control AC-39: 714–724.
Process Control, (London, Sept. 1992), Pergamon Press, Oxford. Shinskey, F. G. (1984). Distillation Control, 2nd edn, McGraw Hill, New York.
Pernebo, L. and Silverman, L. M. (1982). Model reduction by balanced state space Shinskey, F. G. (1988). Process Control Systems, 3rd edn, McGraw Hill, New York.
representation, IEEE Transactions on Automatic Control AC-27(2): 382–387. Skogestad, S. (1996). A procedure for SISO controllability analysis — with application to
Poolla, K. and Tikku, A. (1995). Robust performance against time-varying structured design of ph neutralization process, Computers & Chemical Engineering 20(4): 373–
perturbations, IEEE Transactions on Automatic Control AC-40(9): 1589–1602. 386.
Postlethwaite, I., Foster, N. P. and Walker, D. J. (1994). Rotorcraft control law design Skogestad, S. (1997). Dynamics and control of distillation columns - a tutorial introduction,
for rejection of atmospheric turbulence, Proceedings of IEE Conference, Control 94, Trans. IChemE (UK) 75(A). Plenary paper from symposium Distillation and Absorbtion
Warwick, pp. 1284–1289. 97, Maastricht, Netherlands, Sept. 1997.
Postlethwaite, I. and MacFarlane, A. G. J. (1979). A Complex Variable Approach to the Analysis Skogestad, S. and Havre, K. (1996). The use of the RGA and condition number as robustness
of Linear Multivariable Feedback Systems, Vol. 12 of Lecture Notes in Control and measures, Computers & Chemical Engineering 20(S): S1005–S1010.
Information Sciences, Springer-Verlag, Berlin. Skogestad, S., Lundström, P. and Jacobsen, E. (1990). Selecting the best distillation control
Postlethwaite, I., Samar, R., Choi, B.-W. and Gu, D.-W. (1995). A digital multi-mode 1 H configuration, AIChE Journal 36(5): 753–764.
controller for the spey turbofan engine, 3rd European Control Conference, Rome, Italy, Skogestad, S. and Morari, M. (1987a). Control configuration selection for distillation columns,
pp. 3881–3886. AIChE Journal 33(10): 1620–1635.
Postlethwaite, I., Smerlas, A., Walker, D., Gubbels, A., Baillie, S., M.E. Strange, M. and Howitt, Skogestad, S. and Morari, M. (1987b). Effect of disturbance directions on closed-loop
558 MULTIVARIABLE FEEDBACK CONTROL BIBLIOGRAPHY 559

performance, Industrial and Engineering Chemistry Research 26: 2029–2035. Vinnicombe, G. (1993). Frequency domain uncertainty in the graph topology, IEEE
Skogestad, S. and Morari, M. (1987c). Implications of large RGA elements on control Transactions on Automatic Control AC-38(9): 1371–1383.
performance, Industrial and Engineering Chemistry Research 26: 2323–2330. H
Vinnicombe, G. (2001). Uncertainty and feedback: 1 loop-shaping and the  -gap metric,
Skogestad, S. and Morari, M. (1988a). Some new properties of the structured singular value, Imperial College Press, London.
IEEE Transactions on Automatic Control AC-33(12): 1151–1154. H
Walker, D. J. (1996). On the structure of a two degrees-of-freedom 1 loop-shaping controller,
Skogestad, S. and Morari, M. (1988b). Variable selection for decentralized control, AIChE Int. Journal of Control 63(6): 1105–1127.
Annual Meeting, Washington DC. Paper 126f. Reprinted in Modeling, Identification and Walker, D. J. and Postlethwaite, I. (1996). Advanced helicopter flight control using two
Control, 1992, Vol. 13, No. 2, 113–125. H
degrees-of-freedom 1 optimization, Journal of Guidance, Control and Dynamics
Skogestad, S. and Morari, M. (1989). Robust performance of decentralized control systems by 19(2): March–April.
independent designs, Automatica 25(1): 119–125. Walker, D. J., Postlethwaite, I., Howitt, J. and Foster, N. P. (1993). Rotorcraft flying qualities
Skogestad, S., Morari, M. and Doyle, J. C. (1988). Robust control of ill-conditioned plants: improvement using advanced control, American Helicopter Society/NASA Conference,
High-purity distillation, IEEE Transactions on Automatic Control AC-33(12): 1092– San Francisco.
1105. Waller, K. V., Häggblom, K. E., Sandelin, P. M. and Finnerman, D. H. (1988). Disturbance
Skogestad, S. and Wolff, E. A. (1992). Controllability measures for disturbance rejection, IFAC sensitivity of distillation control structures, AIChE Journal 34: 853–858.
Workshop on Interactions between Process Design and Process Control, London, UK, Wang, Z. Q., Lundström, P. and Skogestad, S. (1994). Representation of uncertain time delays
pp. 23–29. H
in the 1 framework, International Journal of Control 59(3): 627–638.
Smerlas, A., Walker, D., Postlethwaite, I., Strange, M., Howitt, J. and Gubbels, A. (2001). Weinmann, A. (1991). Uncertain Models and Robust Control, Springer-Verlag, Berlin.
H
Evaluating 1 controllers on the nrc bell 205 fly-by-wire helicopter, IFAC Journal of Whidborne, J. F., Postlethwaite, I. and Gu, D. W. (1994). Robust controller design using 1 H
Control Engineering Practice 9(1): 1–10. loop shaping and the method of inequalities, IEEE Transactions on Control Systems
Sourlas, D. D. and Manousiouthakis, V. (1995). Best achievable decentralized performance, technology 2(4): 455–461.
IEEE Transactions on Automatic Control AC-40(11): 1858–1871. Willems (1970). Stability Theory of Dynamical Systems, Nelson.
Stanley, G., Marino-Galarraga, M. and McAvoy, T. J. (1985). Shortcut operability analysis. 1. Wonham, M. (1974). Linear Multivariable Systems, Springer-Verlag, Berlin.
The relative disturbance gain, Industrial and Engineering Chemistry Process Design and Youla, D. C., Bongiorno, J. J. and Lu, C. N. (1974). Single-loop feedback stabilization of linear
Development 24: 1181–1188. multivariable dynamical plants, Automatica 10: 159–173.
Stein, G. and Athans, M. (1987). The LQG/LTR procedure for multivariable feedback design, Youla, D. C., Jabr, H. A. and Bongiorno, J. J. (1976). Modern Wiener-Hopf design of optimal
IEEE Transactions on Automatic Control AC-32(2): 105–114. controllers, part II: The multivariable case., IEEE Transactions on Automatic Control
Stein, G. and Doyle, J. C. (1991). Beyond singular values and loopshapes, AIAA J. of Guidance AC-21: 319–38.
and Control 14: 5–16. Young, P. M. (1993). Robustness with Parametric and Dynamic Uncertainties, PhD thesis,
Stephanopoulos, G. (1984). Chemical Process Control, Prentice-Hall. California Institute of Technology, Pasadena.
Strang, G. (1976). Linear Algebra and Its Applications, Academic Press, New York. Young, P. M. (1994). Controller design with mixed uncertainties, Proceedings of the American
H
Takahashi, M. D. (1993). Synthesis and evaluation of an 2 control law for a hovering Control Conference, Baltimore, Maryland, USA, pp. 2333–2337.
helicopter, Journal of Guidance, Control and Dynamics 16: 579–584. Young, P. M., Newlin, M. and Doyle, J. C. (1992). Practical computation of the mixed 
Tøffner-Clausen, S., Andersen, P., Stoustrup, J. and Niemann, H. H. (1995). A new approach problem, Proceedings of the American Control Conference, Chicago, pp. 2190–2194.
to -synthesis for mixed perturbation sets, Proc. of 3rd European Control Conference, Yu, C. C. and Fan, M. K. H. (1990). Decentralised integral controllability and D-stability,
Rome, Italy, pp. 147–152. Chemical Engineering Science 45: 3299–3309.
Toker, O. and Ozbay, H. (1995). On np-hardness of the purely complex  computation, Yu, C. C. and Luyben, W. L. (1987). Robustness with respect to integral controllability,
Proceedings of the American Control Conference, pp. 447–451. Industrial and Engineering Chemistry Research 26(5): 1043–1045.
Tombs, M. S. and Postlethwaite, I. (1987). Truncated balanced realization of a stable non- Yue, A. and Postlethwaite, I. (1990). Improvement of helicopter handling qualities using 1 H
minimal state-space system, International Journal of Control 46: 1319–1330. optimization, IEE Proceedings-D Control Theory and Applications 137: 115–129.
Tsai, M., Geddes, E. and Postlethwaite, I. (1992). Pole-zero cancellations and closed-loop Zafiriou, E. (ed.) (1994). IFAC Workshop on Integration of Process Design and Control,
H
properties of an 1 mixed sensitivity design problem, Automatica 3: 519–530. (Baltimore, June 1994), Pergamon Press, Oxford. See also special issue of Computers &
van de Wal, M. and de Jager, B. (1995). Control structure design: A survey, Proc. of American Chemical Engineering, Vol. 20, No. 4, 1996.
Control Conference, Seattle, pp. 225–229. Zames, G. (1981). Feedback and optimal sensitivity: model reference transformations,
van Diggelen, F. and Glover, K. (1994a). A Hadamard weighted loop shaping design procedure multiplicative seminorms, and approximate inverse, IEEE Transactions on Automatic
for robust decoupling, Automatica 30(5): 831–845. Control AC-26: 301–320.
H
van Diggelen, F. and Glover, K. (1994b). State-space solutions to Hadamard weighted 1 and Zhao, Y. and Skogestad, S. (1997). Comparison of various control configurations for continuous
H 2 control-problems, International Journal of Control 59(2): 357–394. bioreactors, Ind.Eng.Chem.Res. 36: 697–705.
Vidyasagar, M. (1985). Control System Synthesis: A Factorization Approach, MIT Press, Zhou, K., Doyle, J. C. and Glover, K. (1996). Robust and Optimal Control, Prentice-Hall.
Cambridge, MA. Ziegler, J. G. and Nichols, N. B. (1942). Optimum settings for automatic controllers,
Vidyasagar, M. (1988). Normalized coprime factorizations for non-strictly proper systems, Transactions of the A.S.M.E. 64: 759–768.
IEEE Transactions on Automatic Control AC-33(3): 300–301. Ziegler, J. G. and Nichols, N. B. (1943). Process lags in automatic-control circuits, Transactions
560 MULTIVARIABLE FEEDBACK CONTROL

of the A.S.M.E. 65: 433–444.

INDEX
Acceptable control, 190 Bumpless transfer, 397
Actuator saturation, see Input constraint
Adjoint Cake baking process, 406, 409
classical, see Adjugate Canonical form, 114, 120
Hermitian, see Conjugate transpose controllability, 121
Adjugate (classical adjoint), 504 diagonalized (Jordan), 121
Aero-engine case study, 463, 486–496 observability, 121
model reduction, 463 observer, 120, 121
controller, 466–470 Cascade control, 208, 416–422
plant, 463–465 conventional, 416, 418, 425, 430
Align algorithm, 385 generalized controller, 105
All-pass, 45, 82, 170, 171, 214 input resetting, 418, 421
Angle between vectors, 526 parallel cascade, 419
Anti-stable, 472 why use, 423
Anti-windup, 396 Case studies
Augmented plant model, 358 aero-engine, 486–496
distillation process, 496–502
Balanced model reduction, 459 helicopter, 476–485
residualization, 459 Cauchy-Schwarz inequality, 526
truncation, 459 Causal, 180, 200
Balanced realization, 157, 458 Cause-and-effect graph, 216
Bandwidth, 36 Centralized controller, 403
complementary sensitivity (!BT ), 37 Characteristic gain, see Eigenvalue
gain crossover (!c ), 32 Characteristic loci, 80, 150
sensitivity function (!B ), 37, 78 Characteristic polynomial, 146
Bezout identity, 117 closed-loop, 146
Bi-proper, see Semi-proper open-loop, 146
Blaschke product, 214 Classical control, 15–62
Block relative gain array, 427, 437 Closed-Loop Disturbance Gain (CLDG), 447, 451
Bode gain-phase relationship, 19 Combinatorial growth, 412
Bode plots, 17, 28 Command, see Reference (r)
Bode sensitivity integral, 165 Compatible norm, 526
MIMO, 213 Compensator, 79
SISO, 165 Complementary sensitivity function (T ), 22, 66, 215
Bode’s differential relationship, 23, 234 bandwidth (!BT ), 37
Bode’s stability condition, 25 maximum peak (MT ), 33
Break frequency, 20 output, 66
Buffer tank peak MIMO, 215
concentration disturbance, 208 peak SISO, 170
flowrate disturbance, 208 RHP-pole, 170, 184
562 MULTIVARIABLE FEEDBACK CONTROL INDEX 563

Complex number, 503 left, 117 Directionality, 63, 73, 87 Eigenvalue (), 71, 506
Conclusion, 502 model reduction, 472 Discrete time control measure of gain, 71
Condition number ( ), 87, 515 normalized, 117 H 1 loop shaping, 395 pole, 128
computation, 516 right, 116 Distillation process, 93, 496–502 properties of, 507
disturbance ( d ), 224 stabilizing controllers, 144 DV-model, 501 spectral radius, see Spectral radius
input uncertainty, 241 state space realization, 118 diagonal controller, 321 state matrix (A), 508
minimized, 87, 515 uncertainty, 379 inverse-based controller, 240 transfer function, 509
robust performance, 332, 335 Crossover frequency, 36 robust stability, 321 Eigenvector, 506
Conjugate (A), 504 gain (!c ), 32, 37 sensitivity peak, 240 left, 506
Conjugate transpose (AH ), 504 phase (!180 ), 31 LV-model, 497–501 right, 506
Control configuration, 11, 402, 415 CDC benchmark problem, 498 Element uncertainty, 241, 517
general, 11 D-stability, 444 coupling between elements, 294 RGA, 241
one degree-of-freedom, 11 Dead time, see Time Delay decentralized control, 450 Estimator
two degrees-of-freedom, 11 Decay ratio, 29 detailed model, 499 general control configuration, 105
Control error (e), 3 Decentralized control, 82, 237, 416, 436–454 disturbance rejection, 229 , see also Observer
scaling, 6 application: distillation process, 450 DK -iteration, 339 Euclidean norm, 524
Control layer, 403 CLDG, 447 element-by-element uncertainty, 243 Excess variation, 29
Control signal (u), 13 controllability analysis, 449 feedforward control, 238, 433 Exogenous input (w), 13
Control structure design, 2, 402, 487 D-stability, 444 H 1 loop-shaping, 97 Exogenous output (z ), 13
aero-engine case study, 487 input uncertainty (RGA), 237 inverse-based controller, 93, 96, 239, 330 Extra input, 420
Control system decomposition interaction, 438 -optimal controller, 339 Extra measurement, 418
horizontal, 417 pairing, 90, 437, 441, 445 partial control, 433
vertical, 417 performance, 446 physics and direction, 76 Fan’s theorem, 512
Control system design, 1, 475 PRGA, 446, 448 robust performance, 330 FCC process, 248
Control system hierarchy, 404 RDG, 448 robustness problem, 93, 238 controllability analysis, 248, 432
Controllability RGA, 437–446 sensitivity peak (RGA), 239 pairings, 446
, see Input-output controllability sequential design, 425, 427, 453 SVD-analysis, 75 RHP-zeros, 248
, see State controllability stability, 439 SVD-controller, 96 Feedback
Controllability Gramian, 123, 458 triangular plant, 441 Measurement selection, 436 negative, 21, 65
Controllability matrix, 123 why use, 423 Disturbance (d), 13 positive, 65
Controlled output, 402, 406 Decentralized fixed mode, 449 limitation MIMO, 224–226 why use, 24
aero-engine, 410, 487 Decentralized Integral Controllability (DIC), 442 limitation SISO, 187–189 Feedback rule, 64
indirect control, 435 determinant condition, 444 scaling, 6 Feedforward control, 24
selection, 406–411 RGA, 443 Disturbance condition number ( d ), 224 distillation process, 433
Controller (K ), 13 Decibel (dB), 17 Disturbance model (Gd ), 116, 142 perfect, 24
Controller design, 39, 351, 398 Decoupling, 80–81 internal stability, 142 Feedforward element, 416
numerical optimization, 40 dynamic, 80 Disturbance process example, 46 Fictitious disturbance, 252
shaping of transfer functions, 39 partial, 81 H 1 loop shaping, 383 Final value theorem, 43
signal-based, 39 steady-state, 80 inverse-based controller, 47 Fl (lower LFT), 535
trade-offs, 351–354 Decoupling element, 80, 416 loop-shaping design, 49 Flexible structure, 53
H
, see also 2 optimal control Delay, see Time Delay mixed sensitivity, 60 Fourier transform, 116
H
, see also 1 optimal control Delta function, see Impulse function (Æ ) two degrees-of-freedom design, 52 Frequency response, 15–21, 116
, see also LQG control Derivative action, 121, 193 Disturbance rejection, 48 bandwidth, see Bandwidth
, see also -synthesis Descriptor system, 115, 381 MIMO system, 82 break frequency, 17
Controller parameterization, 143 Detectable, 128 mixed sensitivity, 482 gain crossover frequency (!c ), 32, 37
Convex optimization, 316 Determinant, 505 DK -iteration, 337 magnitude, 16, 17
Convex set, 305 Deviation variable, 5, 8 Dyadic expansion, 114, 507 MIMO system, 68
Convolution, 115 Diagonal controller, see Decentralized control Dynamic resilience, 162 minimum phase, 19
Coprime factor uncertainty, 379 Diagonal dominance, 90, 439, 440 phase, 16
robust stability, 309 Differential sensitivity, 255 Eigenvalue phase crossover frequency (!180 ), 31
Coprime factorization, 116–118 Direction of plant, 69, see also Output direction generalized, 132 phase shift, 17
564 MULTIVARIABLE FEEDBACK CONTROL INDEX 565

physical interpretation, 15 controller order, 466 Induced norm, 524 summary: MIMO, 243–246
straight-line approximation, 20 design procedure, 382 maximum column sum, 525 summary: SISO, 196–199
Frobenius norm, 524 discrete time control, 395 maximum row sum, 525 Input-output pairing, 90, 436–446, 493
Fu (upper LFT), 535 gain scheduling, 394 multiplicative property, 525 Input-output selection, 402
Full-authority controller, 479 generalized plant, 389, 394 singular value, 525 Integral absolute error (IAE), 530
Functional controllability, 216 implementation, 395 spectral norm, 525 Integral action, 27
and zeros, 137 MATLAB, 383 Inferential control, 436 in LQG controller, 358
uncontrollable output direction, 216 observer, 392 Inner product, 526 Integral control
servo problem, 387, 392 Inner transfer function, 118 uncertainty, 242
Gain, 17, 70 two degrees-of-freedom controller, 387–392 Input constraint, 189, 397 , see also Decentralized Integral Controllability
Gain Margin (GM), 31, 34, 273 weight selection, 493 acceptable control, 190, 227 Integral square error (ISE), 30
LQG, 360 H 1 norm, 55, 56, 153, 532 anti-windup, 396 optimal control, 218
Gain reduction margin, 32 induced 2-norm, 153 distillation process, 229 Integrator, 147
LQG, 360 MIMO system, 78 limitation MIMO, 226–231 Integrity, 442
Gain scheduling multiplicative property, 155 limitation SISO, 189–192 determinant condition, 444
H1 loop shaping, 394 H
relationship to 2 norm, 154 max-norm, 226 , see also Decentralized Integral Controllability
Gain-phase relationship, 19 H 1 optimal control, 366, 369–378 perfect control, 189, 226 Interaction, 63, 75
General control configuration, 98, 365 -iteration, 371 two-norm, 227 two-way, 89
including weights, 100 assumptions, 366 unstable plant, 191 Internal model control (IMC), 46, 49, 81, 144
Generalized controller, 98 mixed sensitivity, 371, 479 Input direction, 73 Internal model principle, 49
Generalized eigenvalue problem, 132 robust performance, 377 Input resetting, 418 Internal stability, 128, 138–143
Generalized inverse, 514 signal-based, 375 Input selection, 411 disturbance model, 142
Generalized plant, 13, 98, 104, 365 H
Hadamard-weighted 1 problem, 108 Input uncertainty, 92, 232, 241 feedback system, 139
H1 loop shaping, 389, 394 Hamiltonian matrix, 154 condition number, 241 interpolation constraint, 141
estimator, 105 Hankel norm, 156–158, 380, 458, 460 diagonal, 92, 95 two degrees-of-freedom controller, 142
feedforward control, 104 model reduction, 157, 460–462 generalized plant, 301 Interpolation constraint, 141, 213
input uncertainty, 301 Hankel singular value, 156, 458, 459, 463 magnitude of, 301 MIMO, 213
limitation, 107 aero-engine, 492 , see also Uncertainty RHP-pole, 213
mixed sensitivity (S=KS ), 372 Hanus form, 396 minimized condition number, 241 RHP-zero, 213
mixed sensitivity (S=T ), 374 Hardy space, 56 RGA, 241 SISO, 169
one degree-of-freedom controller, 99 Helicopter case study, 476–485 Input, manipulated, 13 Inverse matrix, 504, 514
two degrees-of-freedom controller, 104 Hermitian matrix, 504 scaling, 6 Inverse response, 173
uncertainty, 291 Hidden mode, 127 Input-output controllability, 160 Inverse response process, 24, 43
Gershgorin’s theorem, 440, 508 Hierarchical control, 424–436 analysis of, 160 loop-shaping design, 43
H
Glover-McFarlane loop shaping, see 1 loop shaping
5 5 distillation process, 428 application LQG design, 358
Gramian cascade control, 430 aero-engine, 486–496 P control, 25
controllability, 123 extra measurement, 430 FCC process, 248, 432 PI control, 27
observability, 126 partial control, 424, 431 first-order delay process, 200 Inverse system, 119
Gramian matrix, 123, 458, 461 sequential design, 427 neutralization process, 203 Inverse-based controller, 46, 47, 80, 94
Hurwitz, 129 room heating, 202 input uncertainty and RGA, 237
H 2 norm, 56, 152, 532 condition number, 87 robust performance, 334
computation of, 153 Ideal resting value, 420 controllability rule, 197 structured singular value (), 334
stochastic interpretation, 367 Identification, 242 decentralized control, 449 worst-case uncertainty, 237
H 2 optimal control, 366–369 sensitivity to uncertainty, 243 exercises, 246 Irrational transfer function, 121
assumptions, 366 Ill-conditioned, 87 feedforward control, 199 ISE optimal control, 171
LQG control, 368 Improper, 5 plant design change, 160, 245
H 1 loop shaping, 54, 378–398 Impulse function (Æ ), 115, 355 plant inversion, 163 Jordan form, 121, 456, 457
aero-engine, 492 Impulse response, 30 remarks definition, 162
anti-windup, 396 Impulse response matrix, 115 RGA analysis, 88 Kalman filter, 106, 357
bumpless transfer, 397 Indirect control, 425, 426, 435 scaling MIMO, 212 generalized plant, 106
controller implementation, 386 partial control, 431 scaling SISO, 161 robustness, 361
566 MULTIVARIABLE FEEDBACK CONTROL INDEX 567

Kalman inequality, 168, 360 matrix norm, 528 MIMO weight selection, 83 Non-minimum phase, 19
mixed sensitivity, 60 Mixed sensitivity (S=T ) Norm, 520–532
L1 norm, 532 model reduction, 473 generalized plant, 374 , see also Matrix norm
L1 norm, 455 RGA, 520 Modal truncation, 456 , see also Signal norm
Laplace transform, 115 step response, 35 Mode, 115 , see also System norm
final value theorem, 43 vector norm, 528 Model, 13 , see also Vector norm
Least squares solution, 514 Matrix, 114, 503–520 derivation of, 8 Normal rank, 132, 216
Left-half plane (LHP) zero, 180 exponential function, 114 scaling, 7 Notation, 11
generalized
Linear fractional transformation (LFT), 103, 109, 111, 535–538inverse, 514 Model matching, 390, 466 Nyquist D-contour, 148
factorization of S , 112 inverse, 504 Model predictive control, 40 Nyquist array, 80
interconnection, 536 norm, 523–528 Model reduction, 455–474 Nyquist plot, 17, 31
inverse, 537 Matrix inversion lemma, 504 aero-engine model, 463 Nyquist stability theorem, 147
MATLAB, 538 Matrix norm, 72, 523 balanced residualization, 459 argument principle, 148
stabilizing controller, 111 Frobenius norm, 524 balanced truncation, 459 generalized, MIMO, 147
star product, 537 induced norm, 524 coprime, 472 SISO, 25
uncertainty, 285 inequality, 527 error bound, 462, 473
Linear matrix inequality (LMI), 348 MATLAB, 528 frequency weight, 474 Observability, 126
Linear model, 8 max element norm, 524 Hankel norm approximation, 157, 460–462 Observability Gramian, 126, 458
Linear quadratic Gaussian, see LQG relationship between norms, 527 MATLAB, 473 Observability matrix, 126
Linear quadratic regulator (LQR), 356 Matrix square root (A1=2 ), 504 modal truncation, 456 Observer, 392
cheap control, 218 Maximum modulus principle, 169 residualization, 457 H 1 loop shaping, 392
robustness, 360 Maximum singular value, 74 steady-state gain preservation, 464 Offset, see Control error (e)
Linear system, 113 McMillan degree, 127, 455 truncation, 456 One degree-of-freedom controller, 11, 21
Linear system theory, 113–158 McMillan form, 135 unstable plant, 472–473 Optimization, 405
Linearization, 8 Measurement, 13 Model uncertainty closed-loop implementation, 406
Local feedback, 188, 207, 208 cascade control, 430 seeUncertainty, 24 open-loop implementation, 406
Loop shaping, 39, 41, 351–354 Measurement noise (n), 13 Moore-Penrose inverse, 514 Optimization layer, 403
desired loop shape, 42, 48, 82 Measurement selection, 435 , see Structured singular value look-up table, 410
disturbance rejection, 48 distillation column, 436 -synthesis, 336–345 Orthogonal, 73
flexible structure, 53 MIMO system, 63 Multilayer, 405 Orthonormal, 73
Robust performance, 277 Minimal realization, 127 Multilevel, 405 Output (y ), 13
slope, 42 Minimized condition number, 515, 517 Multiplicative property, 72, 155, 525 primary, 13, 422
trade-off, 40 input uncertainty, 241 Multiplicative uncertainty, see Uncertainty, see Uncertainty
secondary, 13, 422
H
, see also 1 loop shaping Minimum phase, 19 Multivariable stability margin, 313 Output direction, 73, 211, 212
Loop transfer function (L), 22, 66 Minimum singular value, 74, 244 Multivariable zero, see Zero disturbance, 211, 224
Loop transfer recovery (LTR), 354, 363–364 aero-engine, 490 plant, 73, 211
LQG control, 40, 252, 355–363 output selection, 410 Neglected dynamics, see Uncertainty pole, 131, 211
H2 optimal control, 368 plant, 216, 227 Neutralization process, 203–208, 541 zero, 134, 211
controller, 358 Minor of a matrix, 129 control system design, 207 Output scaling, 6
inverse response process, 358 Mixed sensitivity, 59, 277 mixing tank, 204 Output uncertainty, see Uncertainty
MATLAB, 359 disturbance rejection, 482 plant design change Overshoot, 29
problem definition, 356 general control configuration, 101 multiple pH adjustments, 207
robustness, 360, 362 generalized plant, 102 multiple tanks, 205 Padé approximation, 121, 173
Lyapunov equation, 123, 126, 458 H 1 optimal control, 371, 479 Niederlinski index, 444 Pairing, 90, 437, 441, 445
RP, 277 Noise (n), 13 aero-engine, 493
Main loop theorem, 324 weight selection, 480 Nominal Performance (NP), 3 , see also Decentralized control
Manipulated input, see Input Mixed sensitivity (S=KS ), 60 Nominal performance (NP), 275, 304 Parseval’s Theorem, 368
Manual control, 405 disturbance process, 60 Nyquist plot, 275 Partial control, 424
MATLAB files generalized plant, 372 Nominal Stability (NS), 3 “true”, 425, 431
coprime uncertainty, 381, 383 MATLAB, 60 Nominal stability (NS), 304 distillation process, 433
LQG design, 359 MIMO plant with RHP-zero, 85 Non-causal controller, 180 FCC process, 248
568 MULTIVARIABLE FEEDBACK CONTROL INDEX 569

Partitioned matrix, 505, 506 Pre-compensator, 79 limitation MIMO, 221 Nyquist plot, 277
Perfect control, 163 Prediction, 163, 180, 202 limitation SISO, 182 output uncertainty, 336
non-causal controller, 180, 181 Prefilter, 29, 51 RHP-pole and RHP-zero relationship to robust stability, 325
unstable controller, 181 Principal component regression, 515 MIMO, 222 relationship to RS, 280
Performance, 29 Principal gain, 73 angle between pole and zero, 215 SISO, 275, 280
H 1 norm, 78 , see also Singular value sensitivity peak, 214 structured singular value, 278
frequency domain, 31 Process noise, 355 SISO, 185 worst-case, 327
limitations MIMO, 211–249 Proper, 5 H1 design, 185 Robust stability (RS), 3, 251, 268, 304, 320
limitations SISO, 159–210 Pseudo-inverse, 514 stabilization, 185 M -structure, 292, 305
time domain, 29 RHP-zero, 14, 19, 45, 172, 218 complementary sensitivity, 270
weight selection, 58 Q-parameterization, 143 aero-engine, 490 coprime uncertainty, 309, 379
weighted sensitivity, 56, 78 bandwidth limitation, 173 determinant condition, 305
worst-case, 327, 344 Rank, 510 complex pair, 173 gain margin, 273
, see also Robust performance normal rank, 216 decoupled response, 220 graphical derivation, 269
Performance Relative Gain Array (PRGA), 446, 452
Rate feedback, 479 FCC process, 248 input uncertainty, 308, 321
Permutation matrix, 517 Real perturbation, 346 high-gain instability, 173 inverse multiplicative uncertainty, 274, 308
j j
Perron root ( ( A )), 440, 528 DGK -iteration, 347 interaction, 220 multiplicative uncertainty, 269
Perron-Frobenius theorem, 528 , 314, 346 inverse response, 173 Nyquist plot, 269
Perturbation, 304 robust stability, 305 limitation MIMO, 218 real perturbation, 305
allowed, 304 Realization, see State-space realization, see State-space realization limitation SISO, 45, 172 relationship to RP, 280
, see also Real perturbation Reference (r), 13, 406 low or high frequency, 178 scaling, 311
, see also Uncertainty optimal value, 406 move effect of, 86, 218 sensitivity, 274
Phase, see Frequency response, phase performance requirement MIMO, 229 multivariable, 84 SISO, 268
Phase lag performance requirement SISO, 187–189 perfect control, 180, 181 skewed-, 323
limitation SISO, 192 scaling, 6, 7 phase lag, 19 small gain theorem, 311
RHP-zero, 166 Reference model (Tref ), 52, 388 positive feedback, 178 spectral radius condition, 306
Phase Margin (PM), 32, 34 Regulator problem, 2 RGA, 444 spinning satellite, 322
LQG, 360 Regulatory control, 403 weighted sensitivity, 169, 175, 214 structured singular value (), 320
Phasor notation, 18 Relative disturbance gain (RDG), 448 performance at high frequency, 177 unstructured uncertainty, 307, 308
PI-controller, 27 Relative Gain Array (RGA, ), 88, 516 performance at low frequency, 175 Robustness, 91, 97
Ziegler-Nichols tuning rule, 28 aero-engine, 491 Riccati equation, 118 H 1 norm, 97
PID-controller, 121 controllability analysis, 88 H 1 optimal control, 370 LQG control, 360
cascade form, 193 decentralized control, 90, 437–446 H 1 loop shaping, 394 LTR, 363
ideal form, 121 diagonal input uncertainty, 89 controller, 370 motivating examples, 91
Pinned zero, 136 DIC, 443 coprime uncertainty, 380 Roll-off rate, 42
Plant (G), 13 element uncertainty, 89 Kalman filter, 358 Room heating process
, see also Generalized plant (P ) element-by-element uncertainty, 241 state feedback, 357 controllability analysis, 202
Plant design change, 160, 205, 245 input uncertainty, 237, 241 Right-half plane (RHP), 14 deriving model, 9
neutralization process, 205, 207 input-output selection, 413 Right-half plane pole, see RHP-pole Routh-Hurwitz stability test, 26
Pole, 128, 128–132 MATLAB, 520 Right-half plane zero, see RHP-zero
effect of feedback, 136, 137 measure of interaction, 438 Rise time, 29 Saturation, see Input constraint
stability, 129 non-square, 90, 518 Robust performance (RP), 3, 251, 275, 304, 323 Scaling, 5–8, 161, 212, 384
, see also RHP-pole properties of, 517 , 323 aero-engine, 488
Pole direction, 131, 221 RGA-number, 90, 449, 491 H 1 optimal control, 377 MIMO controllability analysis, 212
Pole polynomial, 129 RHP-zero, 444 condition number, 332, 335 SISO controllability analysis, 161
Pole vector, 122, 131 steady-state, 493 distillation process, 330 Schur complement, 505
stabilization, 131, 411 Relative order, 5, 193 graphical derivation, 276 Schur product, 516
Polynomial system matrix, 132 Return difference, 146 input uncertainty, 328–336 Schur’s formula, 506
Positive definite matrix (A > 0), 504, 508 factorization, 439, 533 inverse-based controller, 334 Second-order system, 35
Post-compensator, 81 RHP-pole, 14, 25, 182, 221 loop-shaping, 277 Secondary output, 418
Power spectral density, 355, 363 input usage, 182, 221 mixed sensitivity, 277 Selector
570 MULTIVARIABLE FEEDBACK CONTROL INDEX 571

auctioneering, 423 of inverse, 511 Structured singular value (, SSV), 278, 312, 313 speed, 29
override, 423 pseudo-inverse, 514 -synthesis, 336–345 steady-state offset, 29
Self-optimizing control, 408 SVD-controller, 81 complex perturbations, 314 total variation, 29
Self-regulation, 187, 199 Singular vector, 73, 510 computational complexity, 347 Total variation, 29
Semi-norm, 521 Sinusoid, 16 definition, 313 Transfer function, 3, 22, 115
Semi-proper, 5 Skewed-, 323, 327, 335 discrete case, 347 closed-loop, 22
Sensitivity function (S ), 22–23, 66 Small gain theorem, 151 DK -iteration, 337 evaluation MIMO, 65
bandwidth (!B ), 37 robust stability, 311 distillation process, 339 evaluation SISO, 23
factorization, 112, 533 Spatial norm, 521 interaction measure, 440 rational, 4
output (SO ), 66 , see also Matrix norm LMI, 348 state-space realization, 119
, see also Mixed sensitivity , see also Vector norm nominal performance, 327 Transmission zero, see Zero, 135
, see also Weighted sensitivity Spectral radius (), 507, 526 practical use, 350 Transpose (AT ), 504
kk
Sensitivity function peak ( S 1 ), 170, 214 j j
Perron root ( ( A )), 528 properties of, 314 Triangle inequality, 72, 521
MIMO RHP-pole and/or RHP-zero, 214 Spectral radius stability condition, 150 complex perturbation, 315–319 Truncation, 456
SISO peak (M , MS ), 33 Spinning satellite, 91 real perturbation, 314 Two degrees of freedom controller
SISO RHP-pole and RHP-zero, 170 robust stability, 322 real perturbation, 346 local design, 415
SISO RHP-zero, 170 Split-range control, 423 relation to condition number, 332 Two degrees-of-freedom controller, 11, 142
uncertainty, 235–241 Stability, 24, 127, 129 robust performance, 323, 327, 378 H 1 loop shaping, 387–392
Separation Theorem, 356, 358 closed-loop, 24 robust stability, 327 design, 51–52
Sequential design, 427, 453 frequency domain, 145 RP, 278 internal stability, 142
Servo problem, 3 internal, 127 scalar, 313 local design, 105
H 1 loop shaping, 387 , see also Robust stability skewed-, 278, 323, 327
non-causal controller, 180 Stability margin, 33 state-space test, 348 Ultimate gain, 25
Setpoint, see Reference (r) coprime uncertainty, 380 upper bound, 346 Uncertainty, 3, 24, 194, 251, 291, 294
Settling time, 29 multivariable, 313 worst-case performance, 327
ij
N -structure, 293
Shaped plant (Gs ), 79, 382 Stabilizable, 128, 185 Submatrix (A ), 504 additive, 259, 261, 295
Shaping of closed-loop transfer function, 39, see also Loop shaping
strongly stabilizable, 185 k k
Sum norm ( A sum ), 523 and feedback – benefits, 233
Sign of plant MIMO, 242 unstable controller, 224 Superposition principle, 5, 113 and feedback — problems, 235
Signal, 4 Stabilization, 185 Supervisory control, 403 at crossover, 195
Signal norm, 529 pole vector, 131, 411 Supremum (sup), 55 chemical reactor, 285
1 -norm, 530 Stabilizing controller, 111, 143–145 System norm, 152–158, 530 complex SISO, 258–264
lp norm, 530 Star product, 302, 538 System type, 43 convex set, 305
1-norm, 530 State controllability, 122, 131, 162 coprime factor, 309, 379
2-norm, 530 example: tanks in series, 124 Temporal norm, 521 diagonal, 299
ISE, 530 State estimator, see Observer , see also Signal norm element-by-element, 294, 298
power-norm, 530 State feedback, 356, 357 , see also System norm feedforward control, 194, 232
Signal uncertainty, 24 State matrix (A), 114 Time delay, 45, 121, 172, 217 distillation process, 238
, see also Disturbance (d), see also Noise (n) State observability, 126, 131 Padé approximation, 121 RGA, 233
Signal-based controller design, 375 example: tanks in series, 127 increased delay, 217 frequency domain, 257
Similarity transformation, 508 State-space realization, 113, 119 limitation MIMO, 217 generalized plant, 291
Singular approximation, 459 hidden mode, 127 limitation SISO, 45, 172 infinite order, 268
Singular matrix, 510, 513 inversion of, 119 perfect control, 180 input, 295, 297, 301, see also Input uncertainty
Singular value, 72, 74 minimal (McMillan degree), 127 phase lag, 19 input and output, 303

2 2 matrix, 511 unstable hidden mode, 128 Time delay uncertainty, 33 integral control, 242
H 1 norm, 78 , see also Canonical form Time response inverse additive, 296
frequency plot, 77 Steady-state gain, 17 decay ratio, 29 inverse multiplicative, 255, 296
inequalities, 511 Steady-state offset, 27, 29 excess variation, 29 LFT, 285, 292
Singular value decomposition (SVD), 72, 509 Step response, 30 overshoot, 29 limitation MIMO, 231–243

2 2 matrix, 73 Stochastic, 355, 367, 368 quality, 29 limitation SISO, 194–196
economy-size, 513 Strictly proper, 5 rise time, 29 lumped, 254, 297
nonsquare plant, 76 Structural property, 216 settling time, 29 modelling SISO, 251
572 MULTIVARIABLE FEEDBACK CONTROL

multiplicative, 254, 260, 261 White noise, 355


neglected dynamics, 253, 264 Wiener-Hopf design, 376
nominal model, 263
Nyquist plot, 258, 264 Youla parameterization, 143
output, 232, 295, 297
parametric, 253, 256, 262, 295 Zero, 132, 132–138
A-matrix, 285 decoupling zero, 135
gain, 256, 288 effect of feedback, 136, 137
gain and delay, 266 from state-space realization, 132
pole, 282 from transfer function, 133
repeated perturbations, 285 input blocking, 135
time constant, 256 invariant zero, 135
zero, 283 non-square system, 133, 137
physical origin, 253 pinned, 136
pole, 263 , see also RHP-zero
RHP-pole, 282 Zero direction, 134
RHP-zero, 283, 287 Ziegler-Nichols’ tuning rule, 28
signal, 24
state space, 284
stochastic, 255
structured, 255
time-varying, 346
unmodelled, 253, 267
unstable plant, 282
unstructured, 255, 295
weight, 261, 262
Unitary matrix, 509
Unstable hidden mode, 128
Unstable mode, 129
Unstable plant
frequency response, 18

Valve position control, 421


Vector norm, 521
p-norm, 522
Euclidean norm, 522
MATLAB, 528
max norm, 522

Waterbed effect, 164


Weight selection, 58, 338
H 1 loop shaping, 384, 493
mixed sensitivity, 480
mixed sensitivity (S=KS ), 83
performance, 58, 338
Weighted sensitivity, 56
generalized plant, 107
MIMO system, 78
RHP-zero, 169, 175, 214
typical specification, 56
Weighted sensitivity integral, 168

You might also like