288

1420085301 Predictive Control

Embed Size (px)

Citation preview

Page 1: 1420085301 Predictive Control
Page 2: 1420085301 Predictive Control
Page 3: 1420085301 Predictive Control

MODERNPREDICTIVE

CONTROL

© 2010 b T l d F G LLC

Page 4: 1420085301 Predictive Control

CRC PressTaylor & Francis Group6000 Broken Sound Parkway NW, Suite 300Boca Raton, FL 33487-2742

© 2010 by Taylor and Francis Group, LLCCRC Press is an imprint of Taylor & Francis Group, an Informa business

No claim to original U.S. Government works

Printed in the United States of America on acid-free paper10 9 8 7 6 5 4 3 2 1

International Standard Book Number: 978-1-4200-8530-3 (Hardback)

This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been made to publish reliable data and information, but the author and publisher cannot assume responsibility for the validity of all materials or the consequences of their use. The authors and publishers have attempted to trace the copyright holders of all material reproduced in this publication and apologize to copyright holders if permission to publish in this form has not been obtained. If any copyright material has not been acknowledged please write and let us know so we may rectify in any future reprint.

Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmit-ted, or utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopying, microfilming, and recording, or in any information storage or retrieval system, without written permission from the publishers.

For permission to photocopy or use material electronically from this work, please access www.copyright.com (http://www.copyright.com/) or contact the Copyright Clearance Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization that provides licenses and registration for a variety of users. For organizations that have been granted a photocopy license by the CCC, a separate system of payment has been arranged.

Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for identification and explanation without intent to infringe.

Library of Congress Cataloging‑in‑Publication Data

Bao-Cang, Ding.Modern predictive control / Ding Bao-Cang.

p. cm.Includes bibliographical references and index.ISBN 978-1-4200-8530-3 (hardcover : alk. paper)1. Predictive control. I. Title.

TJ217.6.B36 2010629.8--dc22 2009034799

Visit the Taylor & Francis Web site athttp://www.taylorandfrancis.com

and the CRC Press Web site athttp://www.crcpress.com

© 2010 b T l d F G LLC

Page 5: 1420085301 Predictive Control

Abstract

This book addresses industrial model predictive controls (MPC), adaptiveMPC, synthesis approaches of MPC and two-step MPC, with emphasis onsynthesis approaches and the relationship between heuristic MPC and syn-thesis approaches. Chapter 1 introduces the concepts of system, modelingand MPC, including the description of transition from classical MPC to syn-thesis approaches. Chapters 2, 3 and 4 are concerned with model predictiveheuristic control, dynamic matrix control and generalized predictive control,respectively. Chapter 5 talks about two-step MPC for systems with inputnonlinearities. Chapter 6 concludes the main ideas in synthesis approachesof MPC. Chapters 7, 8 and 9 are concerned with synthesis approaches whenthe state is measurable. The polytopic description is mainly considered. Thisis one of the first works to systematically address robust MPC. Chapter 10looks at synthesis approaches of output feedback MPC. This book presentsan unbiased account of the significance of various MPC.

v

© 2010 b T l d F G LLC

Page 6: 1420085301 Predictive Control
Page 7: 1420085301 Predictive Control

Preface

Model predictive control (MPC) differs from other control methods mainly inits implementation of the control actions. Usually, MPC solves a finite-horizonoptimal control problem at each sampling instant, so that the control movesfor the current time and a period of future time are obtained. However, onlythe current control move is applied to the plant. At the next sampling instant,the same kind of optimization is repeated with the new measurements. Oneis used to compare implementing MPC to passing the street or playing chess,which has similar pattern with MPC: acting while optimizing. The pattern“acting while optimizing” is unavoidable in many engineering problems, i.e.,in many situations one has to “act while optimizing.” Thus, to a degree, fora lot of engineering problems the unique pattern of MPC is not artificial, butinevitable.

MPC is mostly applied in the constrained multivariable systems. For un-constrained nonlinear systems and unconstrained linear time-varying systems,applying MPC may also yield good control performance. For unconstrainedlinear nominal systems, there is no necessity to utilize the optimization pat-tern of MPC (i.e., finite-horizon receding horizon optimization) since solutionof infinite-horizon optimal control is preferred. Moreover, if some satisfactoryoff-line control laws are obtained for a control problem, then utilizing MPCdoes not necessarily work much better. The applications of MPC should beon those control problems where off-line control laws are not easy, or areimpossible, to achieve. The superiority of MPC is its numerical solution.

For a clear understanding of the above ideas, one should confirm thatthe plant to be controlled is usually very complex, where exact modelingis impossible. Thus, applying linear models, even applying off-line feedbacklaws, often presents as the key to simplifying the engineering problems andgaining profit. Linear models and off-line control laws avoid the complex on-line nonlinear optimization, such that MPC can be run in the current availablecomputers. MPC based on a linear model is not equivalent to MPC for a linearsystem.

The development of MPC is somewhat unusual. Usually, one may suggestthat MPC originated from a computer control algorithm in the late 1970s. Dy-namic matrix control (DMC) and model predictive heuristic control (MPHC),which appeared at that time, have been gaining widespread acceptance. How-

vii

© 2010 b T l d F G LLC

Page 8: 1420085301 Predictive Control

viii Preface

ever, before that time (in the early 1970s), there was already investigationinto receding horizon control (RHC). In the 1980s, there were attentive stud-ies on the adaptive control, and D. W. Clarke et al. from Oxford was timelyin proposing generalized predictive control (GPC). At that time, GPC wasmore flexible for theoretical studies than DMC and MPHC. There have beena large number of citations on the earliest paper of GPC.

From the 1990s, the main stream of theoretical MPC has been turned tothe synthesis approach; the sketch of MPC with guaranteed stability based-on optimal control theory has been shaped. The early version of synthesisapproach is RHC proposed in the early 1970s. In the early 1990s, some scholarscommented on classical MPC (DMC, MPHC and GPC, etc.) as having thecharacteristic similar to “playing games” (not the game of playing chess, butthe game of gambling); the main reason is that stability investigation of thesealgorithms is hard to develop, and one has to tune with “trial and error.” Allresults based on theoretical deductions have their limitations.

Now, for synthesis approaches there are well established results; however,they are rarely applied in the real processes. The main reason is that syn-thesis approaches mostly apply state space models. Recall that in the late1970s, industrial MPC was first proposed to overcome some deficiencies of the“modern control techniques” based on the state space model. One of the mainchallenges of synthesis approaches is the handling of unmeasurable state. Syn-thesis approaches based on the state estimator are still rather conservative.Another main challenge of the synthesis approach is its model adaptation, forwhich only a small progress has been achieved. In DMC, MPHC and GPC,the unmeasurable state won’t be encountered; GPC was an adaptive controltechnique when it was first proposed by D. W. Clarke et al.

To understand the differences between industrial MPC, adaptive MPCand synthesis approaches, several aspects of the control theory, including sys-tem identification, model reduction, state estimation and model transforma-tion, etc., are involved. This is rather complicated and the complication leadsthe research works to be undertaken from various angles in order to achieveany breakthrough. By utilizing a simple controller, such as DMC or MPHC,one can obtain a closed-loop system which is hard to analyze. By utilizinga complicated controller, such as a synthesis approach, one can obtain theclosed-loop system which can be easily analyzable. GPC applies a controllernot quite as simple (the identification inclusive), and obtains a closed-loopsystem which is more difficult for analysis; however, this is unavoidable for anadaptive control.

One who takes MPC as his/her research focus should know the differencesbetween various methods and be well aware of the roots for these differences.One should first believe the usefulness of various methods and not let prejudicewarp his/her judgment. When one writes a research paper, he/she shouldcomment on the related MPC in a fair-minded fashion, and point out thecreative idea in his/her paper. An engineer should know that there isn’t anomnipotent MPC; any success or failure can have its deep reasons; he/she

© 2010 b T l d F G LLC

Page 9: 1420085301 Predictive Control

ix

should know that the importance of model selection in MPC cannot be merelyconcluded as “the more accurate the better.”

After I had thought of the above points, I wrote this book. I hope it canprovide help for the readers. Chapter 1 introduces some basic concepts of thesystems, modeling and predictive control, including the description for thedevelopment from classical MPC to synthesis approaches; it is suggested thatthe mismatch between a plant and its model is a general issue. Chapters 2, 3and 4 study MPHC, DMC and GPC, respectively. Chapter 5 tells about “two-step MPC,” which is a special class of MPC; a benefit is the introduction ofthe region of attraction and its computation. Chapter 6 is about the generalideas of synthesis approaches, which is an important chapter. Chapters 7,8 and 9 study synthesis approaches when the state is measurable; it mainlyconsiders the systems with polytopic uncertainty. Chapter 10 studies synthesisapproaches of the output feedback MPC.

The constrained systems are mainly considered. Half of the content corre-sponds to linear uncertain systems. The results presented for linear uncertainsystems have revealed some fundamental issues in MPC. The most importantissue is given in Chapter 9 (open-loop optimization and closed-loop optimiza-tion); this issue can be inevitable in the real engineering problems.

I would like to take this opportunity to appreciate the support and guid-ance of Prof. Pu Yuan (China University of Petroleum), Prof. Yu-geng Xi(Shanghai Jiaotong University), Prof. Shao-yuan Li (Shanghai Jiaotong Uni-versity), Prof. Biao Huang (University of Alberta, Canada), Prof. Li-hua Xie(Nanyang Technological University, Singapore) over these years. Prof. Yue Sun(Chongqing University) gave crucial help for the publication of this book. APh.D. candidate Shan-bi Wei helped me in editing the contents. Moreover, myresearch work has been supported by National Natural Science Foundation ofChina (NSFC grant no. 60934007, grant no. 60874046, grant no. 60504013)and by the Program for New Century Excellent Talents (NCET) in Univer-sity of China. This book may have missed citing some important materials, Isincerely apologize for that.

Bao-cang DingP. R. China

© 2010 b T l d F G LLC

Page 10: 1420085301 Predictive Control
Page 11: 1420085301 Predictive Control

Contents

Abstract v

Preface vii

1 Systems, modeling and model predictive control 11.1 Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.2 Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.3 State space model and input/output model . . . . . . . . . . . 6

1.3.1 State space model . . . . . . . . . . . . . . . . . . . . . 61.3.2 Transfer function model . . . . . . . . . . . . . . . . . . 81.3.3 Impulse response and convolution model . . . . . . . . . 9

1.4 Discretization of continuous-time systems . . . . . . . . . . . . 91.4.1 State space model . . . . . . . . . . . . . . . . . . . . . 101.4.2 Impulse transfer function model . . . . . . . . . . . . . 111.4.3 Impulse response and convolution model . . . . . . . . . 12

1.5 Model predictive control (MPC) and its basic properties . . . . 121.5.1 Streams and history . . . . . . . . . . . . . . . . . . . . 121.5.2 Basic properties . . . . . . . . . . . . . . . . . . . . . . 131.5.3 “Three principles” of industrial MPC . . . . . . . . . . 17

1.6 Three typical optimal control problems of MPC . . . . . . . . . 181.6.1 Infinite-horizon . . . . . . . . . . . . . . . . . . . . . . . 191.6.2 Finite-horizon: classical MPC . . . . . . . . . . . . . . . 201.6.3 Finite-horizon: synthesis approaches . . . . . . . . . . . 20

1.7 Finite-horizon control: an example based on “three principles” 221.8 Infinite-horizon control: an example of dual-mode suboptimal

control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231.8.1 Three related control problems . . . . . . . . . . . . . . 241.8.2 Suboptimal solution . . . . . . . . . . . . . . . . . . . . 251.8.3 Feasibility and stability analysis . . . . . . . . . . . . . 281.8.4 Numerical example . . . . . . . . . . . . . . . . . . . . . 29

1.9 Development from classical MPC to synthesis approaches . . . 32

xi

© 2010 b T l d F G LLC

Page 12: 1420085301 Predictive Control

xii Contents

2 Model algorithmic control (MAC) 372.1 Principle of MAC . . . . . . . . . . . . . . . . . . . . . . . . . . 37

2.1.1 Impulse response model . . . . . . . . . . . . . . . . . . 382.1.2 Prediction model and feedback correction . . . . . . . . 392.1.3 Optimal control: case single input single output . . . . . 402.1.4 Optimal control: case multi-input multi-output . . . . . 42

2.2 Constraint handling . . . . . . . . . . . . . . . . . . . . . . . . 452.3 The usual pattern for implementation of MPC . . . . . . . . . 47

3 Dynamic matrix control (DMC) 513.1 Step response model and its identification . . . . . . . . . . . . 513.2 Principle of DMC . . . . . . . . . . . . . . . . . . . . . . . . . . 53

3.2.1 Case single input single output . . . . . . . . . . . . . . 533.2.2 Case single input single output: alternative procedure

of deduction . . . . . . . . . . . . . . . . . . . . . . . . . 563.2.3 Case multi-input multi-output . . . . . . . . . . . . . . 593.2.4 Remarks on Matlab MPC Toolbox . . . . . . . . . . . . 62

3.3 Constraint handling . . . . . . . . . . . . . . . . . . . . . . . . 63

4 Generalized predictive control (GPC) 654.1 Principle of GPC . . . . . . . . . . . . . . . . . . . . . . . . . . 66

4.1.1 Prediction model . . . . . . . . . . . . . . . . . . . . . . 664.1.2 Solution to the Diophantine equation . . . . . . . . . . . 674.1.3 Receding horizon optimization . . . . . . . . . . . . . . 694.1.4 On-line identification and feedback correction . . . . . . 72

4.2 Some basic properties . . . . . . . . . . . . . . . . . . . . . . . 734.3 Stability results not related to the concrete model coefficients . 76

4.3.1 Transformation to the linear quadratic control problem 764.3.2 Tool for stability proof: Kleinman’s controller . . . . . . 774.3.3 GPC law resembling Kleinman’s controller . . . . . . . 794.3.4 Stability based on Kleinman’s controller . . . . . . . . . 82

4.4 Cases of multivariable systems and constrained systems . . . . 854.4.1 Multivariable GPC . . . . . . . . . . . . . . . . . . . . . 854.4.2 Constraint handling . . . . . . . . . . . . . . . . . . . . 87

4.5 GPC with terminal equality constraint . . . . . . . . . . . . . . 89

5 Two-step model predictive control 975.1 Two-step GPC . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

5.1.1 Case unconstrained systems . . . . . . . . . . . . . . . . 985.1.2 Case with input saturation constraint . . . . . . . . . . 99

5.2 Stability of two-step GPC . . . . . . . . . . . . . . . . . . . . . 1015.2.1 Results based on Popov’s Theorem . . . . . . . . . . . . 1015.2.2 Two algorithms for finding controller parameters . . . . 1045.2.3 Determination of bounds for the real nonlinearity . . . . 106

5.3 Region of attraction by using two-step GPC . . . . . . . . . . . 106

© 2010 b T l d F G LLC

Page 13: 1420085301 Predictive Control

Contents xiii

5.3.1 State space description of the controller . . . . . . . . . 1075.3.2 Stability relating with the region of attraction . . . . . . 1085.3.3 Computation of the region of attraction . . . . . . . . . 1105.3.4 Numerical example . . . . . . . . . . . . . . . . . . . . . 112

5.4 Two-step state feedback MPC (TSMPC) . . . . . . . . . . . . . 1135.5 Stability of TSMPC . . . . . . . . . . . . . . . . . . . . . . . . 1175.6 Design of the region of attraction of TSMPC based on semi-

global stability . . . . . . . . . . . . . . . . . . . . . . . . . . . 1225.6.1 Case system matrix has no eigenvalue outside of the

unit circle . . . . . . . . . . . . . . . . . . . . . . . . . . 1225.6.2 Case system matrix has eigenvalues outside of the unit

circle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1255.6.3 Numerical example . . . . . . . . . . . . . . . . . . . . . 126

5.7 Two-step output feedback model predictive control (TSOFMPC)1295.8 Stability of TSOFMPC . . . . . . . . . . . . . . . . . . . . . . 1315.9 TSOFMPC: case where the intermediate variable is available . 138

6 Sketch of synthesis approaches of MPC 1416.1 General idea: case discrete-time systems . . . . . . . . . . . . . 141

6.1.1 Modified optimization problem . . . . . . . . . . . . . . 1416.1.2 “Three ingredients” and the uniform ideas for stability

proof . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1436.1.3 Direct method for stability proof . . . . . . . . . . . . . 1436.1.4 Monotonicity method for stability proof . . . . . . . . . 1456.1.5 Inverse optimality . . . . . . . . . . . . . . . . . . . . . 146

6.2 General idea: case continuous-time systems . . . . . . . . . . . 1476.3 Realizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

6.3.1 Using terminal equality constraint . . . . . . . . . . . . 1506.3.2 Using terminal cost function . . . . . . . . . . . . . . . 1516.3.3 Using terminal constraint set . . . . . . . . . . . . . . . 1516.3.4 Using terminal cost function and terminal constraint set 152

6.4 General idea: case uncertain systems (robust MPC) . . . . . . . 1536.4.1 Uniform idea for stability proof . . . . . . . . . . . . . . 1546.4.2 Open-loop min-max MPC . . . . . . . . . . . . . . . . . 155

6.5 Robust MPC based on closed-loop optimization . . . . . . . . . 1566.6 A concrete realization: case continuous-time nominal systems . 157

6.6.1 Determination of the three ingredients . . . . . . . . . . 1586.6.2 Asymptotic stability . . . . . . . . . . . . . . . . . . . . 160

7 State feedback synthesis approaches 1637.1 System with polytopic description, linear matrix inequality . . 1637.2 On-line approach based on min-max performance cost: case

zero-horizon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1657.2.1 Performance cost handling and unconstrained MPC . . 1667.2.2 Constraint handling . . . . . . . . . . . . . . . . . . . . 167

© 2010 b T l d F G LLC

Page 14: 1420085301 Predictive Control

xiv Contents

7.3 Off-line approach based on min-max performance cost: casezero-horizon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

7.4 Off-line approach based on min-max performance cost: casevarying-horizon . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

7.5 Off-line approach based on nominal performance cost: casezero-horizon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178

7.6 Off-line approach based on nominal performance cost: casevarying-horizon . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

8 Synthesis approaches with finite switching horizon 1898.1 Standard approach for nominal systems . . . . . . . . . . . . . 1898.2 Optimal solution to infinite-horizon constrained linear quadratic

control utilizing synthesis approach of MPC . . . . . . . . . . . 1928.3 On-line approach for nominal systems . . . . . . . . . . . . . . 1958.4 Quasi-optimal solution to the infinite-horizon constrained lin-

ear time-varying quadratic regulation utilizing synthesis ap-proach of MPC . . . . . . . . . . . . . . . . . . . . . . . . . . . 1998.4.1 Overall idea . . . . . . . . . . . . . . . . . . . . . . . . . 2008.4.2 Solution to the min-max constrained linear quadratic

control . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2028.4.3 Case finite-horizon without terminal weighting . . . . . 2038.4.4 Case finite-horizon with terminal weighting . . . . . . . 2048.4.5 Quasi-optimality, algorithm and stability . . . . . . . . 2058.4.6 Numerical example . . . . . . . . . . . . . . . . . . . . . 2078.4.7 A comparison with another approach . . . . . . . . . . . 207

8.5 On-line approach for systems with polytopic description . . . . 2108.6 Parameter-dependent on-line approach for systems with poly-

topic description . . . . . . . . . . . . . . . . . . . . . . . . . . 215

9 Open-loop optimization and closed-loop optimization in syn-thesis approaches 2219.1 A simple approach based on partial closed-loop optimization . 222

9.1.1 Aim: achieving larger region of attraction . . . . . . . . 2229.1.2 Efficient algorithm . . . . . . . . . . . . . . . . . . . . . 224

9.2 Triple-mode approach . . . . . . . . . . . . . . . . . . . . . . . 2279.3 Mixed approach . . . . . . . . . . . . . . . . . . . . . . . . . . . 230

9.3.1 Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . 2309.3.2 Joint superiorities . . . . . . . . . . . . . . . . . . . . . 2349.3.3 Numerical example . . . . . . . . . . . . . . . . . . . . . 235

9.4 Approach based on single-valued open-loop optimization andits deficiencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238

9.5 Approach based on parameter-dependent open-loop optimiza-tion and its properties . . . . . . . . . . . . . . . . . . . . . . . 241

9.6 Approach with unit switching horizon . . . . . . . . . . . . . . 244

© 2010 b T l d F G LLC

Page 15: 1420085301 Predictive Control

Contents xv

10 Output feedback synthesis approaches 24710.1 Optimization problem: case systems with input-output (I/O)

nonlinearities . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24710.2 Conditions for stability and feasibility: case systems with I/O

nonlinearities . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25010.3 Realization algorithm: case systems with I/O nonlinearities . . 254

10.3.1 General optimization problem . . . . . . . . . . . . . . . 25410.3.2 Linear matrix inequality optimization problem . . . . . 25610.3.3 Summary of the idea . . . . . . . . . . . . . . . . . . . . 258

10.4 Optimization problem: case systems with polytopic description 25910.5 Optimality, invariance and constraint handling: case systems

with polytopic description . . . . . . . . . . . . . . . . . . . . . 26110.6 Realization algorithm: case systems with polytopic description 264

Bibliography 267

© 2010 b T l d F G LLC

Page 16: 1420085301 Predictive Control
Page 17: 1420085301 Predictive Control

Chapter 1

Systems, modeling andmodel predictive control

Model predictive control (MPC) was proposed in the 1970s first by industrialcircles (not by control theorists). Its popularity steadily increased throughoutthe 1980s. At present, there is little doubt that it is the most widely usedmultivariable control algorithm in the chemical process industries and in otherareas. While MPC is suitable for almost any kind of problem, it displays itsmain strength when applied to problems with:

• a large number of manipulated and controlled variables,

• constraints imposed on both the manipulated and controlled variables,

• changing control objectives and/or equipment (sensor/actuator) failure,

• time delays.

Some of the popular names associated with MPC are Dynamic MatrixControl (DMC), Model Algorithmic Control (MAC), Generalized PredictiveControl (GPC), etc. While these algorithms differ in certain details, the mainideas behind them are very similar. Indeed, in its basic unconstrained formMPC is closely related to linear quadratic (LQ) optimal control. In the con-strained case, however, MPC leads to an optimization problem which is solvedon-line in real-time at each sampling interval. MPC takes full advantage ofthe power available in today’s industrial computers.

In order to have a fundamental knowledge of MPC (especially for thosenew starters), Chapter 1 introduces the basic concepts of system, modelingand predictive control. Section 1.5 is referred to in [63]. Section 1.8 is referredto in [12].

1

© 2010 b T l d F G LLC

Page 18: 1420085301 Predictive Control

2 Chapter 1. Systems, modeling and model predictive control

System OutputInput

Figure 1.1.1: The interactions between the system and its environment.

1.1 Systems

In researching MPC, a system usually refers to the plant to be controlled orthe closed-loop system including the controller.

A system exists independent of its “environment.” Although a system is af-fected by its environment, it exists independently and affects its environment.The interaction between a system and its environment is shown in Figure1.1.1. The effect of environment on the system is represented by the inputs ofthe system; the effect of a system on its environment is represented by the out-put of the system. The relationship between the input and output of a systemexhibits the feature of this system. The input and output of a system, whichchange with time, are called input variable and output variable. If a systemhas one input and one output, it is called single input single output (SISO)system. If a system has more than one input and more than one output, it iscalled multi-input multi-output (MIMO) system.

The boundary of a system is determined by the function of this systemand the target in studying this system. Therefore, a system has a relativerelationship with its constituent parts (called subsystems). For example, forthe management of a large oil corporation, each refinery is an independentsystem which includes all the production units in this refinery. For the man-agement of a refinery, each production unit is an independent system, andeach constituent part of this production unit, such as a chemical reactor, isa subsystem of this production unit. However, when one studies the reactor,this reactor is usually taken as an independent system.

In studying a system, in order to clarify the relationship between its dif-ferent subsystems, one often utilizes the single directional information flow.Take the control system in Figure 1.1.2 as an example; it consists of two sub-systems, i.e., the plant to be controlled and the controller. The output of theplant is the input of the controller, which is often called controlled variable.The desired value of the controlled variable (referred to as setpoint) is anotherinput of the controller, which is the effect of the system’s environment on thesystem. The output of the controller acts on the plant, is the input of theplant. The exterior disturbance is another input variable of the plant. Eachinput or output variable is marked with an arrow, which indicates the effectdirection, so that the interaction between the system and its environment iseasily recognized.

Note that, depending on the different boundaries, a system can have dif-ferent inputs and outputs. Take the chemical reactor as an example. If oneconsiders the energy (heat) conservation relationship, then the heat enter-

© 2010 b T l d F G LLC

Page 19: 1420085301 Predictive Control

1.1. Systems 3

Control system

Plant Disturbance

Controller

Controlled variable

Setpoint value

Figure 1.1.2: The interactions between the control system and its environment.

ing the reactor is the input of the system (reactor), and the heat taken outfrom the reactor is the output of the system. However, if the reactor is tobe controlled, and the heat taken from the reactor is served as the mean formanipulation, and the control target is to sustain the reaction temperature atits desired value, then the reaction temperature is the output of the reactor,and the heat taken from the reactor is the input of the reactor.

For a specific system, if all the constituent parts and their input and out-put variables are determined, so that the block diagram as in Figure 1.1.2 isformed (note that, in Figure 1.1.2, the plant and the controller also consistof their subsystems; with these subsystems and their input and output vari-ables determined, a more delicate block diagram can be obtained), then therelationships of the subsystems can be easily clarified.

Systems can be classified according to different rules:

(1) linear system and nonlinear system

(2) nominal system and uncertain system

(3) deterministic system and stochastic system

(4) time-invariant system and time-varying system

(5) constrained system and unconstrained system

(6) continuous state system and discrete state system

(7) continuous-time system and discrete-time system

(8) time driven system and event driven system

(9) lumped parameter system and distributed parameter system

(10) system with network included (networked system) and sys-tem without network included

etc. Moreover, if a system includes both the continuous and discrete states,or both the continuous-time and discrete-time, or both the time driven andevent driven properties, then it is called a

(11) hybrid system

© 2010 b T l d F G LLC

Page 20: 1420085301 Predictive Control

4 Chapter 1. Systems, modeling and model predictive control

which is a very important kind of system. Note that this book mainly studiescontinuous-time, time driven, lumped parameter systems without networkincluded.

For most of the system classes, there are corresponding subject branches.Nearly every plant in the process industry has nonlinearity, uncertainty, time-varying dynamics, constraint, and distributed parameters, and the continuous-time systems are prominent. Currently, since the digital computer is appliedin the process control, usually users meet with sampled data systems. In thefuture, the computer network will be involved.

1.2 Modeling

In order to study a system, often one needs to set up a model of the system.Models can be classified into two categories. One is the physical model (e.g.,experimental unit) or analog model (e.g., by utilizing the similarities, applycircuit and network to simulate the physical plant). The other is the mathe-matical model, i.e., the use of mathematical equations to describe the system.In the last decades, it has become more and more acceptable to use the math-ematical model to study the systems. The mathematical model has developed,from the tool of theoretical studies, to the means of real applications. In thisstudy, “model” usually refers to“mathematical model.”

The real systems can be manifold and complex in different aspects. More-over, the targets for analyzing the systems can be different, which make thestyles of mathematical model different. The methods for constructing themathematical model can be classified into two categories.

(I) Use of physical principles to construct a model (principle model). Forexample, for a production process, one can construct the mathemati-cal model according to the material balance, energy balance and otherrelations. This not only gives the relationship between the input andoutput of the system, but also gives the relationship between the stateand input/output of the system. By this kind of model, one has a clearunderstanding of the system. Hence, this kind of model is referred to as“white-box model.”

(II) Suppose the system complies with a certain kind of mathematical equa-tion. Measure the input and output of the system. Determine the pa-rameters in the model via a certain mathematical method. The structureof the model can also be modified, such that the relationship betweenthe input and output of the system is obtained (identification model).However, the dynamics of the state (i.e., the internal dynamics of thesystem) is not known. Hence, this kind of model is referred to as “black-box model.”

The above two methods for model construction can be taken as two classesof subjects. The first method can obtain the detailed description of the system,

© 2010 b T l d F G LLC

Page 21: 1420085301 Predictive Control

1.2. Modeling 5

but a deep investigation on the system has to be undergone, which constitutesthe subject of “process dynamics.” The second method has developed to thesubject of “system identification.” The detailed discussions of these two sub-jects are beyond the topic of this book. If the mathematical model is on-lineidentified, the corresponding controller belongs to “adaptive controller” and,when combined with predictive control, “adaptive predictive controller.”

The models can be selected and distinguished according to the respectivesystem features:

(1) linear model and nonlinear model

(2) nominal model and uncertain model

(3) deterministic model and stochastic model

(4) time-invariant model and time-varying model

(5) continuous state model and discrete state model

(6) continuous-time model and discrete-time model (e.g., differ-ential equation and difference equation)

(7) time driven model and event driven model

(8) lumped parameter model and distributed parameter model(e.g., ordinary differential equation and partial differentialequation)

(9) automaton, finite state machine

(10) intelligent model (e.g., fuzzy model, neural network model)

etc. For hybrid systems, there are more kinds of models, including

(11) hybrid Petri net, differential automaton, hybrid automaton,mixed logic dynamic model, piecewise linear model, etc.

Due to the limited knowledge for investigating a system, it never happensthat one kind of model is fixed for one kind of system (e.g., a partial differen-tial equation for a continuous-time distributed parameter system, etc.). Theselection of model should be done according to both the system dynamics andthe applicability and certain human factors have to be introduced. Thus, forcontinuous-time distributed parameter system, one can select discrete-timelumped parameter model; for nonlinear time-varying system, one can selectlinear uncertain model, etc.

In control theory, for different kinds of systems corresponding to differentkinds of models, there are different branches. For example,

• robust control adopts uncertain model, but can be applied to differentsystems in cases where the system dynamics can be included in thedynamics of the uncertain model;

• stochastic control applies stochastic model, which takes advantage ofsome probability properties of the system;

© 2010 b T l d F G LLC

Page 22: 1420085301 Predictive Control

6 Chapter 1. Systems, modeling and model predictive control

• adaptive control with on-line model identification mainly adopts lin-ear difference equation, where the effect of time-varying nonlinearity isovercome by on-line refreshment of the model;

• fuzzy control adopts fuzzy model for uncertain system and nonlinearsystem, etc.;

• neural network control applies neural network model for nonlinear sys-tem, etc.;

• predictive control widely adopts various kinds of models to study variouskinds of systems (mainly, multivariable constrained systems).

1.3 State space model and input/output model

1.3.1 State space model

The output of a system is affected by its state and, sometimes, directly by theinput. The output can be the state or function of the state. The variation ofthe state is affected by the variation of the input. In order to emphasize thevariation in the state, in general the mathematical model of a system can berepresented as

x = f(x, u, t), y = g(x, u, t) (1.3.1)

where x is the state, y the output, u the input, t the time, x = dx/dt.Usually, x, u, y are vectors, x = x1, x2, · · · , xn, y = y1, y2, · · · , yr,

u = u1, u2, · · · , um. xi is the i-th state. One can represent the state, outputand input as

x ∈ Rn, y ∈ Rr, u ∈ Rm

where Rn is the n-dimensional real-valued space.If the solution of (1.3.1) exists, then this solution can be generally repre-

sented as

x(t) = φ(t, t0, x(t0), u(t)), y(t) = ϕ(t, t0, x(t0), u(t)), t ≥ t0. (1.3.2)

If the system is relaxed at time t0, i.e., x(t0) = 0, then the solution can begenerally represented as

x(t) = φ0(t, t0, u(t)), y(t) = ϕ0(t, t0, u(t)), t ≥ t0. (1.3.3)

If the solution (1.3.3) satisfies the following superposition principle, then thesystem (1.3.1) is linear.

Superposition Principle Suppose φ0,a(t, t0, ua(t)) and φ0,b(t, t0, ub(t))are the motions by applying the inputs ua(t) and ub(t), respectively. Then,the motion by applying αua(t) + βub(t) is

φ0(t, t0, αua(t) + βub(t)) = αφ0,a(t, t0, ua(t)) + βφ0,b(t, t0, ub(t))

© 2010 b T l d F G LLC

Page 23: 1420085301 Predictive Control

1.3. State space model and input/output model 7

where α and β are arbitrary scalars.For a linear system, if it is not relaxed, then the motion caused by the

initial state x(t0) can be added to the motion with relaxed system, by apply-ing the superposition principle. Satisfying the superposition principle is thefundamental approximation or assumption in some classical MPC algorithms.

If a system satisfies the superposition principle, then it can be furthersimplified as

x = A(t)x +B(t)u, y = C(t)x +D(t)u (1.3.4)

where A(t), B(t), C(t) and D(t) are matrices with appropriate dimensions. Ifa linear system is time-invariant, then it can be represented by the followingmathematical model:

x = Ax+Bu, y = Cx+Du. (1.3.5)

A linear system satisfies the superposition principle, which makes themathematical computations much more convenient and a general closed-formsolution exists. In the system investigation and model application, completeresults exist only for linear systems. However, a real system is usually non-linear. How to linearize a nonlinear system so as to analyze and design itaccording to the linearized model becomes a very important problem.

The basic idea for linearization is as follows. Suppose a real system movesaround its equilibrium point (steady-state) according to various disturbances,and the magnitude of the motion is relatively small. In such a small range,the relationships between variables can be linearly approximated.

Mathematically, if a system is in steady-state (xe, ye, ue), then its state xis time-invariant, i.e., x = 0. Hence, according to (1.3.1),

f(xe, ue, t) = 0, ye = g(xe, ue, t). (1.3.6)

Let x = xe + δx, y = ye + δy, u = ue + δu. Suppose the following matricesexist (called Jacobean matrices or Jacobian matrices):

A(t) =∂f

∂x

∣∣∣∣e

=

⎢⎢⎢⎢⎣

∂f1/∂x1 ∂f1/∂x2 · · · ∂f1/∂xn

∂f2/∂x1 ∂f2/∂x2 · · · ∂f2/∂xn...

.... . .

...∂fn/∂x1 ∂fn/∂x2 · · · ∂fn/∂xn

⎥⎥⎥⎥⎦

,

B(t) =∂f

∂u

∣∣∣∣e

=

⎢⎢⎢⎢⎣

∂f1/∂u1 ∂f1/∂u2 · · · ∂f1/∂um

∂f2/∂u1 ∂f2/∂u2 · · · ∂f2/∂um...

.... . .

...∂fn/∂u1 ∂fn/∂u2 · · · ∂fn/∂um

⎥⎥⎥⎥⎦

,

© 2010 b T l d F G LLC

Page 24: 1420085301 Predictive Control

8 Chapter 1. Systems, modeling and model predictive control

C(t) =∂g

∂x

∣∣∣∣e

=

⎢⎢⎢⎣

∂g1/∂x1 ∂g1/∂x2 · · · ∂g1/∂xn∂g2/∂x1 ∂g2/∂x2 · · · ∂g2/∂xn

......

. . ....

∂gr/∂x1 ∂gr/∂x2 · · · ∂gr/∂xn

⎥⎥⎥⎦,

D(t) =∂g

∂u

∣∣∣∣e

=

⎢⎢⎢⎣

∂g1/∂u1 ∂g1/∂u2 · · · ∂g1/∂um∂g2/∂u1 ∂g2/∂u2 · · · ∂g2/∂um

......

. . ....

∂gr/∂u1 ∂gr/∂u2 · · · ∂gr/∂um

⎥⎥⎥⎦,

where e indicates “at the equilibrium point.” Then in the neighborhood of(xe, ye, ue) the system (1.3.1) can be approximated by

δx = A(t)δx+B(t)δu, δy = C(t)δx+D(t)δu. (1.3.7)

1.3.2 Transfer function model

Use of the input/output model to describe a system is, in general, carriedout when the properties of the system are not clearly known. In general, it istaken as granted that the system is relaxed, or the initial sate is zero, whenthe output is uniquely determined by the input. If the initial state is notzero, for the linear system, the motion by the initial state should be added.If the input/output relationship is considered, it should be noted that it is anincomplete description.

In spite of this, by using the block diagram formed through the in-put/output relationships, the relations between various parts of the systemcan be shown clearly. Hence, the classical methodology based on the transferfunction is still widely applied and continuously developed.

The basic idea of the transfer function is as follows. Apply Laplace trans-formation, to transform the differential equation into algebraic equation, suchthat the computation can be simplified. The computed results, when required,can be reversed to the time-domain by applying the inverse Laplace transfor-mation.

The transfer function corresponding to (1.3.5) is

G(s) = C(sI −A)−1B +D (1.3.8)

where s is Laplace transformation operator and each element of G(s) can berepresented as the following fractional:

gij(s) =bij,ms

m + bij,m−1sm−1 + · · ·+ bij,1s+ bij,0

sn + aij,n−1sn−1 + · · ·+ aij,1s+ aij,0.

gij(s) represents the relationship between the j-th input and the i-th output.For a real system, m ≤ n.

© 2010 b T l d F G LLC

Page 25: 1420085301 Predictive Control

1.4. Discretization of continuous-time systems 9

1.3.3 Impulse response and convolution model

The model of a system can be set up by applying the impulse response. Sincethe impulse response can be measured, this provides an alternative for mod-eling.

Let

δΔ(t− t1) =

0, t < t11/Δ, t1 ≤ t < t1 + Δ0, t ≥ t1 + Δ

.

For any Δ, δΔ(t− t1) always has a unitary area. When Δ→ 0,

δ(t− t1) limΔ→0

δΔ(t− t1) (1.3.9)

which is called impulse function or δ function. The response to the impulsesignal is called impulse response.

Let gij(t, τ) be the i-th output response due to the j-th impulse input(where τ is the time point when the impulse is added). Denote

G(t, τ) =

⎢⎢⎢⎣

g11(t, τ) g12(t, τ) · · · g1m(t, τ)g21(t, τ) g22(t, τ) · · · g2m(t, τ)

......

. . ....

gr1(t, τ) gr2(t, τ) · · · grm(t, τ)

⎥⎥⎥⎦

as the impulse response of the MIMO system. If the system is relaxed, theinput/output model is

y(t) =∫ +∞

−∞G(t, τ)u(τ)dτ (1.3.10)

which is called convolution model. As long as the impulse response is known,the response to any known input u(t) can be calculated.

For (1.3.5), when x(0) = 0, the Laplace transformation of the response tothe impulse signal δ(t) is the transfer function. The Laplace transformationof the response to any input U(s) is Y (s) = G(s)U(s).

1.4 Discretization of continuous-time systems

The last section discusses the continuous-time system, where the input, out-put and state change continuously with the evolution of time. In the realapplications, there is another kind of system whose every variable changesonly after a certain time interval (e.g., bank interest counting system), ratherthan continuously with time, which is called discrete-time systems.

Another kind of system is intrinsically continuous-time; however, whenone observes and controls these systems, the action is only taken at some

© 2010 b T l d F G LLC

Page 26: 1420085301 Predictive Control

10 Chapter 1. Systems, modeling and model predictive control

Plant

Controller

Holder y

*y

u

*u sT

sT

Figure 1.4.1: The structure of the sampling control system.

discrete time instants. The most commonly seen is the control system basedon the digital computer, which is called sampling control system. MPC isusually based on the computers and, hence, is mainly for sampling controlsystems. The computers acquire the process variables with certain samplingintervals. The data sent from the computer to the controller are instant valueswith sampling intervals. The control moves are sent out also with certain timeintervals. The procedure that transforms an originally continuous-time systemto a discrete-time system is called the discretization of this continuous-timesystem.

The structure of the sampling control system is shown in Figure 1.4.1.The computer acquires the output y with certain time intervals, and sendsout a discrete value y∗. It is as if there is a switch between y and y∗, whichswitches on instantly with sampling interval Ts. After each time interval Ts,the controller sends out a control move u∗, which is also an instant value. Inorder to control a continuous-time system, during the interval between the twosequential control moves, u∗ is usually unaltered (which is called zero-orderholder; there are other methods to calculate the u between two sequentialcontrol moves, which are not zero-order holders). Therefore, the output of thecontroller is usually taken as constituting a switch, switching on with certaintime interval, and a holder.

For the controlled process in Figure 1.4.1, let us suppose

(i) the intervals for output sampling and the control sending-out are bothequal to Ts, and the two switches work synchronously;

(ii) the switches switch on instantly, so that the time period when theswitches are on can be overlooked;

(iii) the controller output u∗ is restored by zero-order holder.

Based on the above assumptions, let us give the discretized forms of thecontinuous-time systems in section 1.3.

1.4.1 State space model

Simply denote kTs as k, e.g., the state, output and input at time k are rep-resented as x(k), y(k) and u(k), respectively. The following is utilized to

© 2010 b T l d F G LLC

Page 27: 1420085301 Predictive Control

1.4. Discretization of continuous-time systems 11

approximate the derivative of x:

dx

dt≈ x(k + 1)− x(k)

Ts. (1.4.1)

Thus, corresponding to (1.3.1) we obtain

x(k + 1) = x(k) + Tsf(x(k), u(k), k), y(k) = g(x(k), u(k), k) (1.4.2)

and corresponding to (1.3.4),

x(k + 1) = (I +A(k)Ts)x(k) +B(k)Tsu(k), y(k) = C(k)x(k) +D(k)u(k).(1.4.3)

Many linear systems have their general solutions, by which the valuesat different sampling instants can be calculated and the exact result of thediscretization is obtained. For the linear time-invariant system (1.3.5) theexact result for discretization is

x(k + 1) = eATsx(k) +∫ Ts

0

eAtdtBu(k), y(k) = Cx(k) +Du(k) (1.4.4)

where the calculation of eATs is a mature technique.

1.4.2 Impulse transfer function model

Since, in a discrete-time system, only the values in the sampling instant aretaken, its Laplace transformation can be replaced with a special form, Z trans-formation. The effect of the Z transformation is to transform the differenceequation into the algebraic equation, such that the computation can be greatlysimplified. If the system is relaxed, i.e., the initial state is zero, then the inputand output of the system can be linked by the impulse transfer function, soas to analyze the system and design the controller. If any variable value atthe sampling instant is required, then the inverse Z transformation can beinvoked, such that the solution to the system equation can be obtained.

Consider the linear time-invariant system

x(k + 1) = Ax(k) +Bu(k), y(k) = Cx(k) +Du(k). (1.4.5)

Its corresponding discrete-time impulse transfer function is

G(z) = C(zI −A)−1B +D (1.4.6)

where z is the operator of Z transformation, and each element of G(z) can berepresented by the following fractional:

Gij(z) =bij,mz

m + bij,m−1zm−1 + · · ·+ bij,1z + bij,0

zn + aij,n−1zn−1 + · · ·+ aij,1z + aij,0.

gij(z) represents the relationship between the j-th input and the i-th output.For a real system, m ≤ n.

© 2010 b T l d F G LLC

Page 28: 1420085301 Predictive Control

12 Chapter 1. Systems, modeling and model predictive control

1.4.3 Impulse response and convolution model

Consider a linear time-invariant system

x(k + 1) = Ax(k) +Bu(k), y(k) = Cx(k). (1.4.7)

The recursive solution of the output is

y(k) = CAkx(0) +k−1∑

i=0

CAk−i−1Bu(i). (1.4.8)

Suppose x(0) = 0 and the input is δ(k), then CAk−i−1B = H(k− i) is theoutput at time k − i and

y(k) =k−1∑

i=0

H(k − i)u(i). (1.4.9)

H(k − i) is the impulse response matrix, and (1.4.9) or its equivalent form

y(k) =k∑

i=1

H(i)u(k − i) (1.4.10)

is called discrete convolution model. It is easy to obtain H(i) via experiments.H(i) is actually the output of the system, when at k = 0 an impulse input ofmagnitude 1 and width Ts is implemented. Notice that, under the zero orderhold, a δ function becomes the square-wave impulse.

1.5 Model predictive control (MPC) and its

basic properties

The background of MPC, at least for the earlier version of industrial MPC,is to substitute the “controller” in Figure 1.4.1 by “MPC.” Therefore, whenone investigates MPC, he/she should notice that usually there is a mismatchbetween the model (usually discrete-time) and the system. Actually, MPCwas invented based on the fact that the traditional optimal control methodsrely on the accurate mathematical models.

1.5.1 Streams and history

The studies on the MPC are manifold, which can be classified into severalstreams, including

(a) industrial MPC which is widely applied in the process industry, whichadopts heuristic algorithms, with the relatively mature industrial soft-ware usually adopting linear nominal models, the representatives ofwhich are the famous DMC and MAC;

© 2010 b T l d F G LLC

Page 29: 1420085301 Predictive Control

1.5. Model predictive control (MPC) and its basic properties 13

(b) adaptive MPC which originated from the minimum variance control(MVC) and adaptive control, the representative of which is GPC;

(c) synthesis approach of MPC with guaranteed stability, which widelyadopts the state space models and “three ingredients” are introduced,emerged because of the difficulties encountered in stability analysis ofindustrial MPC and adaptive MPC which make the existing stabilityresults impossible to be generalized to nonlinear, constrained and un-certain systems;

(d) the method invented by borrowing techniques from other branches ofcontrol theory or applied mathematics, etc., which is largely differentfrom the above (a)-(c).

For a long time, (a)-(c) were developed independently. MPC in (c) was thefirst to appear. In fact, many methods from the traditional optimal controlcan be regarded as MPC, which can be dated back to the 1960s. However,model predictive control, named as a process control algorithm, was formallyproposed firstly in the form of (a), which dates back to the 1970s. In the1980s, adaptive control was a hot topic; however, the famous MVC could notbe successfully applied in the process control industry and, hence, the ideasfrom both the predictive control and adaptive control were combined.

The proponents of industrial MPC have not achieved intrinsic progress inthe theoretical analysis of MPC; however, they are well aware of the impor-tance of stability. Industrial MPC has no guarantee of stability. But, if theopen-loop stable system is considered, and the optimization horizon is chosento be sufficiently large, then usually the closed-loop system is stable. It is areflection of the fact that infinite-horizon optimal control has guarantee of sta-bility. For the MPCs in (a) and (b), it is difficult to apply Lyapunov method,up to now the most powerful stability tool. This theoretically most prominentdeficiency propelled the development of MPC algorithms with guaranteed sta-bility after the 1990s. Hence, from the beginning of the 1990s, people calledthe more extensive optimal control problems, including (a)-(c), predictive con-trols. Notice that, before the 1990s, MPC usually referred to (a), (b) and somespecial form of MPCs.

Remark 1.5.1. MPCs in (d) emerged from the 1980s. There were some algo-rithms, such as internal model control, nonlinear separation predictive control,predictive functional control, data driven predictive control, etc. Sometimes,it is difficult to distinguish (d) from (a)-(c). Sometimes, MPC in (d) doesnot have stability ingredients as in synthesis approaches; however, stabilityanalysis is easier than industrial MPC and adaptive MPC.

1.5.2 Basic properties

Whatever stream it belongs to, MPC has the following important character-istics.

© 2010 b T l d F G LLC

Page 30: 1420085301 Predictive Control

14 Chapter 1. Systems, modeling and model predictive control

1. MPC is based on model and the prediction model is utilized.MPC is a set of algorithms based on the models. MPC pays more atten-

tion to the function, than to the formulation, of the model. The function ofa prediction model is based on the past information and the future inputs topredict the future output. Any collection of information, as long as it has thefunction of prediction, irrespective of the concrete form, can be the predic-tion model. Therefore, the traditional models, such as state space equationand transfer function, can be prediction models. For linear open-loop stablesystems, even the non-parametric models, such as impulse response and stepresponse, can be directly utilized as the prediction model. Further, nonlinearsystem and distributed parameter system, as long as it has the function ofprediction, can be utilized as prediction model. Hence, MPC has no strict re-quirement on the model structure, which is different from the former controltechniques. MPC pays more attention to the selection of the most convenientmodeling methods, based on the information available.

For example, in DMC and MAC, the non-parametric models such as stepresponse and impulse response, which are easily obtainable in the real indus-try, are adopted; in GPC, the parametric models such as Controlled Auto-Regressive Integrated Moving Average (CARIMA) model and state spacemodel, are selected.

MPC discards the strict requirements on the model. A prediction modelhas the function to reveal the future behavior of the system. Thus, a predictionmodel can provide the a priori knowledge for the optimization, so that thecontrol moves are decided such that the future output can comply with thedesired output.

In the system simulation, by arbitrarily giving the future control strategies,the output of the system can be observed for any input (see Figure 1.5.1). Thiscan be the basis for comparing different control strategies.

2. The key point that MPC differs from other control techniques is thatMPC adopts receding horizon optimization, and the control moves are imple-mented in a receding horizon manner.

If one wants a unique difference between MPC and other control tech-niques, then it should be the manner that MPC implements the control moves,i.e., receding horizon optimization and receding horizon implementation.

In industrial applications and theoretical studies, in general MPC is basedon the on-line optimization. By the optimization, a certain cost function is op-timized, such that the future control moves are determined. This cost functioninvolves the future behavior of a system, and usually is taken as minimizingthe variance when the future output tracks the desired trajectory. However,it could be taken as a more general form, such as minimizing the energy ofthe control moves, etc. The future behavior involved in the cost function isdetermined by the model and future control strategies. But, the optimizationin MPC differs largely from that in the traditional optimal control, i.e., theoptimization in MPC does not utilize the globally time-invariant cost func-tion and, rather, a receding, finite-horizon optimization strategy is adopted.

© 2010 b T l d F G LLC

Page 31: 1420085301 Predictive Control

1.5. Model predictive control (MPC) and its basic properties 15

kpast future

3

4

1 I

II 2

y

u

Figure 1.5.1: Prediction based on the model (1 - sequence of control movesI; 2 - sequence of control moves II; 3 - output corresponding to I; 4 - outputcorresponding to II).

At each sampling instant, the cost function often involves the finite length offuture time; at the next sampling instant, the optimization horizon is movedforward (see Figure 1.5.2). Hence, at each sampling instant, MPC has a costfunction for this instant; at a different sampling instant the relative form ofthe cost function can be the same, but the absolute form, i.e., the time windowincluded, are different.

In MPC, the optimization is usually not determined off-line in a single op-timization and, rather, it is performed repeatedly on-line. This is the meaningof receding horizon, and the intrinsic difference between MPC and the tra-ditional optimal control. The limitation of this finite-horizon optimization isthat, under ideal situations only the suboptimal solution for the global solutioncan be obtained. However, the receding horizon optimization can effectivelyincorporate the uncertainties incurred by model-plant mismatch, time-varyingbehavior and disturbances. With the effect of the uncertainties compensated,the new optimizations are always based on the real scenarios, and the controlmoves are optimal with an “in fact” manner.

For a real complicated industrial process, the uncertainties incurred bymodel-plant mismatch, time-varying behavior and disturbances are unavoid-able and, hence, the receding finite-horizon optimization can be more powerfulthan the global one-time optimization.

Remark 1.5.2. Some off-line MPC algorithms will be given in the followingchapters. In off-line MPC, the on-line optimization is not involved, rather, aset of optimization problems are solved off-line, with a sequence of controllaws obtained. On-line, the real-time control law is selected according to thecurrent state of the system. In spite of this, the control laws are implementedby receding horizon (i.e., at different time the control laws can be different),and each control law is determined by optimization.

© 2010 b T l d F G LLC

Page 32: 1420085301 Predictive Control

16 Chapter 1. Systems, modeling and model predictive control

k k+1

optimization

optimization

Implementation

y

u

y

u

k

k+1

1

2

3

1

2

3

Figure 1.5.2: Receding horizon optimization (1 - reference trajectory; 2 - op-timal predicted output; 3 - optimal control move).

Remark 1.5.3. Some MPC algorithms will be given in the following chapterswhich directly solve the infinite-horizon cost function. But, in order to obtainthe optimal solution, the infinite-horizon optimization cannot be solved di-rectly and, rather, it is transformed into the finite-horizon optimization. Insome other MPC algorithms, the optimization problem is not solved at eachsampling instant and, rather, at suitable times the optimization result in theprevious sampling instant is inherited.

Remark 1.5.4. In a word, in MPC, all the ideas of on-line optimization,finite-horizon optimization and receding horizon optimization can be brokenor temporarily broken. However, these “special” situations cannot include allthe MPC algorithms and cannot deny the basic characteristics of MPC and,rather, they can be taken as the generalized forms complying with the basiccharacteristics. These “special” situations can be observed from another angle,i.e., the boundary between MPC and other control techniques can sometimesbecome rather blurry.

3. While the optimal control rationale is adopted, MPC does not discardthe feedback in the traditional control techniques.

It is well known that feedback is essential and unique in overcoming dis-turbance, uncertainty and achieving closed-loop stability. Up to now, in MPC,the feedback is not discarded, but used more profoundly; the effect of feedbackis never denied, but proven continuously.

Since its first proposal, industrial MPC has utilized feedback correction,and was concluded as one of the “three principles.” The effect of feedback

© 2010 b T l d F G LLC

Page 33: 1420085301 Predictive Control

1.5. Model predictive control (MPC) and its basic properties 17

is realized in adaptive MPC by use of on-line refreshment of the model. Insynthesis approaches, when the uncertainty is considered, feedback MPC (i.e.,MPC based on closed-loop optimization, where a sequence of control lawsare optimized) is better than open-loop MPC (i.e., MPC based on open-loopoptimization, where a sequence of control moves are optimized) in performance(feasibility, optimality) (details are given in Chapter 9). Moreover, in synthesisapproach, the local feedback control law is applied. More importantly, in thereal applications, the “transparent control” is often applied, which sets upMPC based on PIDs, where PID is the feedback controller.

Further, it is noted that, without feedback, it is not effective for analyzingand studying MPC.

1.5.3 “Three principles” of industrial MPC

In order to distinguish synthesis approaches, one can call DMC, MAC, GPCetc. as classical MPC. Hence, classical MPC is coarsely referred to those MPCalgorithms which were hot before the 1990s.

Here, industrial MPC refers to a part of classical MPC, which is the partof classical MPC that has been successfully applied in the industrial pro-cesses. Comparatively, for synthesis approaches, there are less reports for theindustrial applications.

The key points of industrial MPC can be summarized as the “three prin-ciples,” i.e., prediction model, receding horizon optimization and feedbackcorrection. The “three principles” are the keys for successfully applying MPCin the real projects. It should be emphasized that, in industrial MPC, theon-line, finite-horizon optimization is preferred, and the effects of predictionmodel and cost function are more prominent.

In the following we talk about the feedback correction.Industrial MPC is a kind of closed-loop control algorithm. When the reced-

ing horizon optimization is performed, the basis for optimization should com-ply with the real plant. However, the prediction model is only a coarse descrip-tion of the real dynamics. Due to the unavoidable nonlinearity, time-varyingbehavior, model-plant mismatch and disturbance, the prediction based on thetime-invariant model cannot be completely equivalent to the real situation,which needs additional prediction strategy to compensate for the deficiencyin the model prediction, or the model needs to be refreshed on-line. The re-ceding horizon optimization can only be advantageous when it is based on thefeedback correction. For this reason, when a sequence of control moves aredetermined by optimization, in order to prevent the deviation of the controlfrom the ideal status due to the model-plant mismatch and environmentaldisturbances, these control moves won’t be implemented one by one. Rather,only the most current control move is implemented. At the next samplinginstant, the real output is measured, the feedback correction is invoked tocompensate the predictions (see Figure 1.5.3) or the prediction model, andthe optimization is re-done.

© 2010 b T l d F G LLC

Page 34: 1420085301 Predictive Control

18 Chapter 1. Systems, modeling and model predictive control

k k+1

y

u

2

3 1

4

Figure 1.5.3: Error correction (1 - predicted output at k; 2 - measured outputat k + 1; 3 - prediction error; 4 - corrected predicted output at k + 1).

The strategies for feedback correction are manifold. One can fix the model,and predict the future prediction error to compensate; one can also refreshthe prediction model by on-line identification. Whichever strategy is adopted,MPC sets up its optimization based on the real plant, and tries to make anexact prediction of the future behavior along the optimization. Hence, theoptimization in MPC is not only based on model, but also utilizes feedbackinformation, which forms the actual closed-loop optimization.

Remark 1.5.5. Notice that, in the real applications, the feedback correctionis very important. However, in the theoretical study of MPC, it is often sup-posed that the system and its model are equivalent (e.g., nominal stabilityof classical MPC), or that any possible dynamics of the real system can beincluded within the dynamics of the model (e.g., synthesis approach of robustMPC); then the feedback correction is not explicitly introduced. If we observeboth from the side of theoretical studies and from the side of real applications,we can say that the key of MPC lies in its receding horizon optimization andreceding horizon implementation. MPC without feedback correction is alsocalled receding horizon control, which emphasizes the receding horizon na-ture. When one utilizes state space model to synthesis approaches, in generalthe feedback correction is not utilized. Rather, the state feedback strategy isoften invoked so as to form “feedback MPC.” Certainly, from the side of realcontrol effect, this state feedback has the same effect with the feedback correc-tion, hence is the feedback correction in the context of state space description.

1.6 Three typical optimal control problems ofMPC

Due to the following reasons, the optimization problems of MPC are manifold(note that, sometimes one can classify MPC according to the optimization

© 2010 b T l d F G LLC

Page 35: 1420085301 Predictive Control

1.6. Three typical optimal control problems of MPC 19

problem):

(i) the mathematical models that can be utilized are manifold;

(ii) the real systems are manifold;

(iii) there are large differences between the real applications and the theo-retical investigations.

In the following, by taking the discrete-time state space model and thequadratic cost function, as an example, three categories of MPC optimizationproblems are given. Consider x(k+1) = f (x(k), u(k)), where f(0, 0) = 0. Thesystem is stabilizable. The state and input constraints are

x(k + i+ 1) ∈ X , u(k + i) ∈ U , i ≥ 0 (1.6.1)

satisfying 0 ⊂ X ⊆ Rn and 0 ⊂ U ⊆ Rm.In MPC, usually x(k+ i|k) is used to denote the prediction of x at a future

time k+i, predicted at time k, and x(k+i|k) = x(k+i), i ≤ 0; x∗(k+i|k), i ≥ 0are used to denote the optimal state predictions (i.e., predictions using theoptimal solution of the MPC optimization problem).

Suppose the following state prediction is adopted:

x(k + i+ 1|k) = f (x(k + i|k), u(k + i|k)) , i ≥ 0, x(k|k) = x(k). (1.6.2)

The three categories are given in the following sections.

1.6.1 Infinite-horizon

The basic property of the infinite-horizon optimization is that the cost func-tion is the sum of the positive-definite functions over an infinite time horizon.The cost function and the constraints are usually

J∞(x(k)) =∞∑

i=0

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

, (1.6.3)

s.t. (1.6.2), x(k + i+ 1|k) ∈ X , u(k + i|k) ∈ U , i ≥ 0, (1.6.4)

where W ≥ 0, R > 0 are symmetric and, for any vector ϑ and non-negativematrix W , ‖ϑ‖2W ϑTWϑ. At each time k, the decision variable (freedom foroptimization) of (1.6.3)-(1.6.4) is

u(k) = u(k|k), u(k + 1|k), · · · . (1.6.5)

Since an infinite number of decision variables are involved, the infinite-horizonoptimization problem is generally not directly solvable.

© 2010 b T l d F G LLC

Page 36: 1420085301 Predictive Control

20 Chapter 1. Systems, modeling and model predictive control

1.6.2 Finite-horizon: classical MPC

The key property of classical MPC is that the cost function is the sum of thepositive-definite functions over the finite time horizon, no off-line designed oron-line optimized terminal constraint set and terminal cost function, and noother kinds of artificial constraints are imposed. Usually the cost function andconstraints are

JN (x(k)) =N−1∑

i=0

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

+ ‖x(k +N |k)‖2W ,

(1.6.6)

s.t. (1.6.2), x(k + i+ 1|k) ∈ X , u(k + i|k) ∈ U , i ∈ 0, 1, . . . , N − 1,(1.6.7)

or

JN,M (x(k)) =M−1∑

j=0

‖u(k + j|k)‖2R +N∑

i=0

‖x(k + i|k)‖2W , (1.6.8)

s.t. (1.6.2),

x(k + i|k) ∈ X , i ∈ 1, . . . , N,u(k + j|k) ∈ U , j ∈ 0, 1, . . . ,M − 1u(k + s+M |k) = u(k +M − 1|k), s ∈ 0, 1, . . . , N −M − 1

,

(1.6.9)

where N is the prediction horizon, M control horizon, M ≤ N . At each timek, the decision variables of (1.6.6)-(1.6.7) and (1.6.8)-(1.6.9) are, respectively,

uN (k) = u(k|k), u(k + 1|k), · · · , u(k +N − 1|k), (1.6.10)uM (k) = u(k|k), u(k + 1|k), · · ·u(k +M − 1|k). (1.6.11)

1.6.3 Finite-horizon: synthesis approaches

In the 1990s, there appeared some MPC algorithms by modifying the op-timization problems (1.6.6)-(1.6.7) and (1.6.8)-(1.6.9), such that closed-loopstability can be guaranteed. Compared with classical MPC, the main prop-erty of this modified category is that, the off-line designed or on-line optimizedterminal constraint set and terminal cost function are introduced into the op-timization, such that the convergence property of the optimization algorithmis modified and the value function of the cost can monotonically decrease alongthe receding horizon optimization. Usually the cost function and constraintsare

JN (x(k)) =N−1∑

i=0

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

+ ‖x(k +N |k)‖2WN,

(1.6.12)

s.t. (1.6.2), x(k + i+ 1|k) ∈ X , u(k + i|k) ∈ U , i ∈ 0, 1, . . . , N − 1,x(k +N |k) ∈ Xf , (1.6.13)

© 2010 b T l d F G LLC

Page 37: 1420085301 Predictive Control

1.6. Three typical optimal control problems of MPC 21

or

JN,M(x(k)) =M−1∑

j=0

‖u(k + j|k)‖2R

+N−1∑

i=0

‖x(k + i|k)‖2W + ‖x(k +N |k)‖2WN, (1.6.14)

s.t. (1.6.2),

⎪⎪⎪⎪⎨

⎪⎪⎪⎪⎩

x(k + i|k) ∈ X , i ∈ 1, . . . , N,x(k +N |k) ∈ Xfu(k + j|k) ∈ U , j ∈ 0, 1, . . . , N − 1u(k + s+M |k) = Kx(k + s+M |k),s ∈ 0, 1, . . . , N −M − 1

, (1.6.15)

where Xf is the terminal constraint set, K the local controller,

F (x(k +N |k)) = ‖x(k +N |k)‖2WN(1.6.16)

the terminal cost function. At each time k, the decision variables of (1.6.12)-(1.6.13) and (1.6.14)-(1.6.15) are (1.6.10) and (1.6.11), respectively. By appro-priately setting Xf ,K andWN (called the three ingredients) we can obtain the“MPC algorithm with guaranteed stability.” F (·) is used to form the infinite-horizon value function or approximate the infinite-horizon value function in aneighborhood of the origin, while Xf is usually selected as the subset of thisneighborhood.Xf is usually selected as a control invariant set. Refer to the following

definitions.

Definition 1.6.1. Ω is a positively invariant set of the autonomous systemx(k + 1) = f(x(k)), if x(k) ∈ Ω, ∀k > 0 for any x(0) ∈ Ω.

Definition 1.6.2. If there exists feedback law u(k) = g(x(k)) ∈ U , suchthat Ω is the positively invariant set of the closed-loop system x(k + 1) =f (x(k), g(x(k))), then Ω is the control invariant set of the system x(k + 1) =f (x(k), u(k)).

By receding horizon solving (1.6.3)-(1.6.4), (1.6.6)-(1.6.7), (1.6.8)-(1.6.9),(1.6.12)-(1.6.13) or (1.6.14)-(1.6.15), the control move at time k is obtained,

u(k) = u(k|k).Thus, various MPC algorithms are formed.

Certainly, in a concrete MPC algorithm, there may appear that

(i) the model adopted is not x(k + 1) = f (x(k), u(k));

(ii) the constraints handled are not (1.6.1);

(iii) the cost function adopted is different from (1.6.3), (1.6.6), (1.6.8),(1.6.12) and (1.6.14);

© 2010 b T l d F G LLC

Page 38: 1420085301 Predictive Control

22 Chapter 1. Systems, modeling and model predictive control

(iv) the future predictions on state/output are different from (1.6.2).

However, the above three categories of MPC problems, including the differ-ences between finite-horizon and infinite-horizon, with or without terminalcost function and terminal constraint set, has a general meaning.

In this book, we call stability study on classical MPC as stability analysis,and that on synthesis approaches as stability synthesis.

1.7 Finite-horizon control: an example basedon “three principles”

Suppose a nonlinear system is represented by the following model:

x(k + 1) = f(x(k), u(k)), y(k) = g(x(k)) (1.7.1)

Based on this model, at time k, as long as the initial state x(k) and the futurecontrol moves u(k), u(k + 1|k), · · · are known, the future output can bepredicted as

x(k + i|k) =f(x(k + i− 1|k), u(k + i− 1|k)), u(k|k) = u(k),y(k + i|k) = g(x(k + i|k)), x(k|k) = x(k), i ∈ 1, 2, . . ..

(1.7.2)

Based on the above recursive formula we can obtain

y(k+i|k) = φi(x(k), u(k), u(k+1|k), · · · , u(k+i−1|k)), i ∈ 1, 2, . . . (1.7.3)

where φi(·) is composed of f(·) and g(·). Eq. (1.7.3) is the prediction model.If there is mismatch between the model (1.7.1) and the real system, then

based on the measured output, the output predictions can be compensatedby error predictions. Denote the measured output at k as y(k). Then, theerror predictions can be constructed based on δ(k) = y(k) − y(k|k − 1).The error predictions can be given based on the historical error informationδ(k), · · · , δ(k − L),

δ(k + i|k) = ϕi(δ(k), δ(k − 1), · · · , δ(k − L)), (1.7.4)

where ϕi(·) is a linear or nonlinear function whose formula depends on thenon-causal prediction method and L is the length of the used historical errorinformation. By use of (1.7.4) to correct the model predictions, the closed-loopoutput predictions can be obtained as

y(k + i|k) = y(k + i|k) + δ(k + i|k). (1.7.5)

Eq. (1.7.5) is the closed-loop prediction with feedback correction (1.7.4) basedon the model (1.7.3).

© 2010 b T l d F G LLC

Page 39: 1420085301 Predictive Control

1.8. Infinite-horizon dual-mode suboptimal control 23

At time k, the control objective is to find M control moves u(k), u(k +1|k), · · · , u(k +M − 1|k) (suppose u is invariant after k +M − 1), such thatthe following cost function of output is minimized:

J(k) = F (y(k|k), ω(k)), (1.7.6)

where

y(k|k) =

⎢⎣

y(k + 1|k)...

y(k + P |k)

⎥⎦ , ω(k) =

⎢⎣

ω(k + 1)...

ω(k + P )

⎥⎦ ,

ω(k + i) is the desired output at k + i, and M , P are control horizon andprediction horizon, M ≤ P .

Thus, the on-line receding horizon optimization is, based on the closed-loop prediction (1.7.5), to find the control moves such that the cost functionin (1.7.6) is minimized. If the optimal solution u∗(k), u∗(k + 1|k), · · · , u∗(k +M−1|k) is found, then at time k, u∗(k) is implemented. At the next samplinginstant, the real output is measured, the prediction error is corrected, and theoptimization is re-done. This is the general description of the nonlinear MPCbased on the “three principles.”

In general, even if the performance cost is quadratic, due to the systemnonlinearity, we are still faced with a generally nonlinear optimization prob-lem. Since the decision variables are submerged into the compound function,so that it is impossible to separate the decision variable, the closed-form solu-tion to u(k), u(k + 1|k), · · · , u(k +M − 1|k) is in general unavailable (closed-form solution is the solution represented by formula, and is compared withthe numerical solution). If problem (1.7.5)-(1.7.6) is taken as a nonlinear opti-mization (i.e., to find the numerical solution), in general an efficient algorithmis lacking. If we utilize the discrete maximum principle to write out a seriesof extremum conditions, then the computational burden involved will be veryheavy and it is not admissible for a real-time control. Thus, although thereis a general description for the optimization problem of MPC to a nonlinearsystem, there is intrinsic difficulty brought by the nonlinearity for solving theproblem.

The above computational issue has always been the targeted issue of in-dustrial MPC.

1.8 Infinite-horizon control: an example of

dual-mode suboptimal control

Consider the time-invariant discrete-time nonlinear system described in thefollowing state space equation:

x(k + 1) = f (x(k), u(k)) , x(0) = x0, k ≥ 0. (1.8.1)

© 2010 b T l d F G LLC

Page 40: 1420085301 Predictive Control

24 Chapter 1. Systems, modeling and model predictive control

The state is measurable. The system input and state are constrained by

x(k) ∈ X , u(k) ∈ U , k ≥ 0. (1.8.2)

It is supposed that

(A1) f : Rn ×Rm → Rn is twice continuously differentiable and f(0, 0) = 0and, thus, (x = 0, u = 0) is an equilibrium point of the system;

(A2) X ⊆ Rn, U ⊆ Rm are compact, convex, and X ⊃ 0,U ⊃ 0;(A3) by taking the Jacobean linearization of system at (x = 0, u = 0), i.e.,

x(k + 1) = Ax(k) +Bu(k), x(0) = x0, k ≥ 0, (1.8.3)

the pair (A,B) is stabilizable.

The control objective is to regulate the state of system to the origin, at thesame time satisfy both the state and control constraints and minimize theobjective function

Φ(x0, u∞0 ) =

∞∑

i=0

[

‖x(i)‖2W + ‖u(i)‖2R]

. (1.8.4)

Suppose the pair (A,W 1/2) is observable. u∞0 = u(0), u(1), u(2), · · · aredecision variables.

1.8.1 Three related control problems

Problem 1.1 Linear quadratic regulator (LQR):

minu∞0

Φ(x0, u∞0 ), s.t. (1.8.3). (1.8.5)

Problem 1.1 was formulated and solved by Kalman, and the solution isthe well-known linear feedback control law

u(k) = Kx(k). (1.8.6)

The controller gain K is calculated by

K = −(R+BTPB)−1BTPA (1.8.7)

where P is obtained by solving the following discrete algebraic Riccati equa-tion:

P = W +ATPA−ATPB(R +BTPB)−1BTPA.

Problem 1.2 Nonlinear quadratic regulator (NLQR):

minu∞0

Φ(x0, u∞0 ), s.t. (1.8.1). (1.8.8)

© 2010 b T l d F G LLC

Page 41: 1420085301 Predictive Control

1.8. Infinite-horizon dual-mode suboptimal control 25

Problem 1.3 Constrained nonlinear quadratic regulator (CNLQR):

minu∞0

Φ(x0, u∞0 ), s.t. (1.8.1)− (1.8.2). (1.8.9)

CNLQR is a natural extension of NLQR and is more difficult but morepractical than NLQR. In general, CNLQR and NLQR concern with infinite-horizon optimization and, hence, solution in the closed-form is usually impos-sible.

1.8.2 Suboptimal solution

A two-step suboptimal solution is proposed. In the first step a neighborhoodof origin is constructed inside of which an inside mode controller is adoptedin the form of (1.8.6). The neighborhood has to satisfy the following twoconditions:

(A) the neighborhood is invariant for nonlinear system (1.8.1) controlled by(1.8.6);

(B) (1.8.2) should be satisfied in the neighborhood.

In the second step a finite-horizon optimization problem (FHOP) with addi-tional terminal inequality constraints is solved to get an outside mode con-troller. The two controllers combine together forming an overall solution tosuboptimal CNLQR. Notice that,

(a) the whole objective function Φ (x0, u∞0 ) is divided into Φ

(

x0, uN−10

)

andΦ (x(N), u∞N ) which are solved separately;

(b) the solution to Φ(

x0, uN−10

)

is optimal and the solution to Φ (x(N), u∞N )is suboptimal, so the overall solution is suboptimal.

This two-step type controller is also called a dual-mode controller.First consider the inside mode controller.

Lemma 1.8.1. There exists a constant α ∈ (0,∞) specifying a neighborhoodΩα of the origin in the form of

Ωα

x ∈ Rn|xTPx ≤ α (1.8.10)

such that

(i) Ωα is control invariant with respect to control law (1.8.6) for (1.8.1);

(ii) ∀x0 ∈ Ωα, with (1.8.6) taken, limk→∞ x(k) = 0 and limk→∞ u(k) = 0.

Proof. (i) Since X ⊃ 0, U ⊃ 0, it is always possible to find a sufficientlysmall α1 ∈ (0,∞) that specifies a region in the form of (1.8.10) and satisfies

© 2010 b T l d F G LLC

Page 42: 1420085301 Predictive Control

26 Chapter 1. Systems, modeling and model predictive control

x ∈ X , Kx ∈ U , ∀x ∈ Ωα1 . The deduction below will show that there existsα ∈ (0, α1] such that Ωαis control invariant.

To achieve this aim, define Lyapunov function as

V (k) = x(k)TPx(k),

and denoteΘ(x) = f (x,Kx)− (A+BK)x.

For notational brevity, denote x(k) as x. Thus,

V (k + 1)− V (k)

=f(x,Kx)TPf(x,Kx)− xTPx= (Θ(x) + (A+BK)x)T P (Θ(x) + (A+BK)x)− xTPx=Θ(x)TPΘ(x) + 2Θ(x)TP (A+BK)x

+ xT[

ATPA+ 2KTBTPA+KTBTPBK − P ]x=Θ(x)TPΘ(x) + 2Θ(x)TP (A+BK)x+ xT

[

ATPA− P ]x− xT

[

2ATPB(

R+BTPB)−1

BTPA−ATPB (

R+BTPB)−1

×BTPB (

R+BTPB)−1

BTPA]

x

=Θ(x)TPΘ(x) + 2Θ(x)TP (A+BK)x+ xT[

ATPA− P ]x− xT

[

ATPB(

R+BTPB)−1

BTPA+ATPB(

R+BTPB)−1

R(

R+BTPB)−1

BTPA]

x

=Θ(x)TPΘ(x) + 2Θ(x)TP (A+BK)x− xT (W +KTRK)

x. (1.8.11)

Now take γ > 0 such that

γ < λmin(W +KTRK)

andV (k + 1)− V (k) ≤ −γxTx, (1.8.12)

then

Θ(x)TPΘ(x)+2Θ(x)TP (A+BK)x ≤ xT (W +KTRK)

x−γxTx. (1.8.13)

Define

LΘ = supx∈Br

‖Θ(x)‖‖x‖

where Br = x| ‖x‖ ≤ r. LΘ exists and is finite because f is twice continu-ously differentiable.

© 2010 b T l d F G LLC

Page 43: 1420085301 Predictive Control

1.8. Infinite-horizon dual-mode suboptimal control 27

Then, for ∀x ∈ Br, (1.8.13) is satisfied if

L2Θ ‖P‖+ 2LΘ ‖P‖ ‖A+BK‖ ‖x‖2 ≤

λmin

(

W +KTRK)− γ ‖x‖2 .

(1.8.14)Since λmin

(

W +KTRK)− γ > 0, and LΘ → 0 as r → 0, there exist suitable

r and α ∈ (0, α1] such that (1.8.14) holds for ∀x ∈ Ωα ⊆ Br, which impliesthat (1.8.12) holds as well. Eq. (1.8.12) implies that the region Ωα is controlinvariant with respect to u = Kx.

(ii) For ∀x ∈ Ωα, (1.8.12) means that Ωα is the region of attraction forasymptotic stability (a region of attraction is a set such that, when the ini-tial state lies in this set, the closed-loop system has the specified stabilityproperty), so limk→∞ x(k) = 0 and limk→∞ u(k) = 0.

Remark 1.8.1. In the above deduction, one can directly choose

LΘ = supx∈Ωα

‖Θ(x)‖‖x‖ .

However, finding LΘ is more difficult.

From the proof of Lemma 1.8.1, an applicable procedure to determine theregion Ωα is as follows:

Algorithm 1.1 The algorithm for determining Ωα falls into the followingsteps:

Step 1. Solve Problem 1.1 to get a local linear state feedback gainmatrix K.

Step 2. Find a suitable α1 such that x ∈ X , Kx ∈ U for all x ∈ Ωα1 .

Step 3. Choose an arbitrary but suitable positive constant γ suchthat γ < λmin

(

W +KTRK)

.

Step 4. Choose an upper bound of LΘ, LuΘ, such that LuΘ satisfies(1.8.14).

Step 5. Choose a suitable positive constant r such that LΘ ≤ LuΘ.

Step 6. Choose a suitable α ∈ (0, α1] such that Ωα ⊆ Br.Remark 1.8.2. Ωα has an upper bound since it must guarantee the invarianceof state and satisfaction of state and input constraints.

The inside mode controller is obtained by solving an LQR problem. Thecontrol law is denoted by

u∞N = uNi , uN+1i , · · · . (1.8.15)

However, the special condition for applying the control sequence (1.8.15) isthat the initial state x(N) of the LQR problem should lie in Ωα. If x0 /∈ Ωα,then x(N) ∈ Ωα may be achieved by the following outside mode controller.

© 2010 b T l d F G LLC

Page 44: 1420085301 Predictive Control

28 Chapter 1. Systems, modeling and model predictive control

The outside mode control problem is formulated as a finite-horizon op-timization problem with additional terminal state inequality constraints,coarsely,

minuN−10

Φ(x(0), uN−10 ), s.t. (1.8.1), (1.8.2), x(N) ∈ Ωα, (1.8.16)

where

Φ(

x(0), uN−10

)

=N−1∑

i=0

[

‖x(i)‖2W + ‖u(i)‖2R]

+ ‖x(N)‖2W (1.8.17)

with N being the optimization horizon. The selection of N should considerboth the feasibility of (1.8.16) and the optimality of the whole CNLQR prob-lem.

Remark 1.8.3. In general, the feasibility cannot be guaranteed for everyinitial state. If the original Problem 1.3 is feasible (this refers to the theoreticalsolution, which is difficult), but (1.8.16) is not feasible, i.e. the initial state x0

is a feasible initial state with respect to Problem 1.3 but not to (1.8.16), thenincreasing N tends to retrieve feasibility.

Remark 1.8.4. The larger N has the advantage of optimality but results inmore computational cost. Because the suboptimal control problem is solvedoff-line (not as MPC which do most computation on-line), the computationalaspect is not so serious. So a large N may be chosen. If (1.8.16) is a com-plicated nonconvex optimization problem, its optimal solution is not easy tobe found; in this case, increasing N at a special point N = N0 may not haveoptimality advantage.

Remark 1.8.5. By properly selecting N , the artificial constraint x(N) ∈ Ωαcan be automatically satisfied.

Suppose the solution to problem (1.8.16) is given as

uN−10 = u∗o(0), u∗o(1), · · · , u∗o(N − 1) . (1.8.18)

The overall solution to the CNLQR problem is composed of the outside modecontroller and the inside mode controller as

u∞0 = u∗o(0), u∗o(1), · · · , u∗o(N − 1), uNi , uN+1i , · · · . (1.8.19)

1.8.3 Feasibility and stability analysis

Usually, the closed-loop system by applying CNLQR cannot be globally sta-ble. In the following we define a region in which (i.e., when the state lies inthis region) the optimization problem (1.8.16) is feasible and the closed-loopsystem is stable.

© 2010 b T l d F G LLC

Page 45: 1420085301 Predictive Control

1.8. Infinite-horizon dual-mode suboptimal control 29

Definition 1.8.1. SN (I, T ) is called an N -step stabilizable set contained inI for the system (1.8.1), if T is a control invariant subset of I and SN (I, T )contains all states in I for which there exists an admissible control sequenceof length N which will drive the states of the system to T in N steps or less,while keeping the evolution of the state inside I, i.e.,

SN (I, T ) x0 ∈ I : ∃u(0), u(1), · · · , u(N − 1) ∈ U , ∃M ≤ N such that x(1),x(2), · · · , x(M − 1) ∈ I and x(M), x(M + 1), · · · , x(N) ∈ T, T is invariant.From Definition 1.8.1, it is easy to know that Si(I, T ) ⊆ Si+1(I, T ) for

every positive integer i.

Definition 1.8.2. The feasible set ΩF ⊆ X is the set of initial state x0 forwhich Problem 1.3 exists a feasible solution that results in a stable closed-loopsystem.

Lemma 1.8.2. Consider Problem (1.8.16) and Problem 1.3, then SN(X ,Ωα) ⊆ΩF holds. Moreover, SN (X ,Ωα)→ ΩF as N →∞, that is, S∞(X ,Ωα) = ΩF .

Proof. The initial state satisfies x0 ∈ X , so Ωα ⊆ X . In (1.8.16), the artificialconstraint x(N) ∈ Ωα is added to the problem, so the feasible set must besmaller than that of Problem 1.3. As N →∞, since the original Problem 1.3has asymptotic stability property and the constraint x(N) ∈ Ωα is not active,SN (X ,Ωα)→ ΩF .

Remark 1.8.6. Lemma 1.8.2 shows that in order for the suboptimal CNLQRproblem to be solvable for some initial states, N may have to be chosen large.There may exist an integer j such that Sj(X ,Ωα) = Sj+1(X ,Ωα). In this case,S∞(X ,Ωα) is finite determined and j is the determinedness index.

Remark 1.8.7. If S∞(X ,Ωα) is finite determined with determinedness indexj, then as long as N ≥ j, the feasible set of Problem 1.3 is equal to the feasibleset of (1.8.16).

Theorem 1.8.1. (Stability) For any x0 ∈ SN (ΩF ,Ωα), (1.8.19) obtainedfrom the dual-mode controller asymptotically stabilizes the nonlinear system(1.8.1).

Proof. From Lemma 1.8.2, Ωα ∈ ΩF is trivial. As x0 ∈ SN (ΩF ,Ωα), problem(1.8.16) is solvable, the control sequence (1.8.18) will drive states x(N) intoΩα. Inside Ωα, the fact that (1.8.6) will drive the states to origin is guaranteedby Lemma 1.8.1.

1.8.4 Numerical example

Consider a bilinear system represented by

x1(k + 1) = −0.5x2(k)0.5u(k) + 0.5u(k)x1(k)x2(k + 1) = x1(k) + 0.5u(k)− 2u(k)x2(k)

.

© 2010 b T l d F G LLC

Page 46: 1420085301 Predictive Control

30 Chapter 1. Systems, modeling and model predictive control

The input and state are bounded by

U =

u ∈ R1| − 0.1 ≤ u ≤ 0.1

,X =

(x1, x2) ∈ R2

∣∣∣∣

−0.3 ≤ x1 ≤ 0.3,−0.3 ≤ x2 ≤ 0.3

.

The weighting matrices are W =[

1 00 1

]

and R = 1. Linearize the system

at the origin, then A =[

0 −0.51 0

]

, B =[

0.50.5

]

.

Make the following deductions according to Algorithm 1.1:

(i) Solve LQR problem, then

K = [−0.39 0.2865] , P =[

2.0685 0.14340.1434 1.3582

]

.

(ii) The choice of α1 must satisfy Ωα1 ⊆ Γp, where

Γp =

(x1, x2)∣∣∣∣

−0.1 ≤ −0.39x1 + 0.2865x2 ≤ 0.1,−0.3 ≤ x1 ≤ 0.3,−0.3 ≤ x2 ≤ 0.3

.

The largest α1 can be chosen by optimization, but here only a feasiblevalue is chosen. Let the long radius of the ellipsoid xTPx = α1 be0.2567/

√2. Then, α1 = 0.0438 is obtained. Ωα1 lies in the shadowed

region Γp in Figure 1.8.1.

(iii) Since λmin

(

W +KTRK)

= 1, choose γ = 0.1.

(iv) Since ‖P‖ = 2.0937 and ‖A+BK‖ = 0.8624, by (1.8.14), LuΘ = 0.22 isobtained.

(v) Now choose r = 0.13. Then, LΘ < LuΘ for x ∈ Br, where

Θ1(x) = −0.19475x21 + 0.14325x1x2

Θ2(x) = −0.573x22 + 0.779x1x2

.

(vi) Now choose β = 0.0225 such that Ωβ ⊂ Br, letting the long radius ofthe ellipsoid xTPx = β be 0.13. Finally, choose α = 0.0225.

Then, choose N = 10. Use MATLAB Optimization Toolbox. The op-timization is initialized as [u(0), · · · , u(9)] = [0, · · · , 0]. Figures 1.8.2-1.8.3show the state responses and the control input signal with initial conditions[u(−1), x10, x20] = [0, 0.25, 0.25], with those for samples 8 ∼ 20 magnified.During samples 1 ∼ 10, FHOP is performed. At sample 10, the states aredriven to (−0.00016,−0.00036) which lies in Ω0.0225. Then, controlled by thelinear state feedback, the states are driven to the origin.

In this example, when the terminal inequality constraint is removed, thestate responses are exactly the same (see Remark 1.8.5).

© 2010 b T l d F G LLC

Page 47: 1420085301 Predictive Control

1.8. Infinite-horizon dual-mode suboptimal control 31

1x

2x

-0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.4

(0.3,0.3)

(-0.3,-0.3)

-0.2567 0.2567

0.349

-0.349

rB

Ωα

1Ωα

Figure 1.8.1: Γp ⊇ Ωα1 ⊇ Br ⊇ Ωα

0 5 10 15 20-0.1

0

0.1

0.2

0.3

8 10 12 14 16 18 20-1

0

1

2x 10

-3 k

k

x

x

Figure 1.8.2: State responses of the closed-loop system (x2 marked).

© 2010 b T l d F G LLC

Page 48: 1420085301 Predictive Control

32 Chapter 1. Systems, modeling and model predictive control

0 5 10 15 20-0.05

0

0.05

0.1

0.15

8 10 12 14 16 18 20-3

-2

-1

0

1x 10

-3 k

k

u

u

Figure 1.8.3: Control input signal.

1.9 Development from classical MPC to syn-thesis approaches

Currently, MPC algorithms adopted in the real projects mostly solve thefinite-horizon optimization problem as in (1.7.6). In fact, the mature softwareadopts the linear models, so that the on-line optimization could be compu-tationally admissible. For the classical MPC, it is always difficult to analyzeclosed-loop stability.

In order to overcome the analysis difficulty, from about the 1990s, peoplebegan to extensively research synthesis approaches. The so-called synthesisis the name from the side of stability. For classical MPC, by stability anal-ysis, stability condition for the closed-loop system is obtained; for synthesisapproach of MPC, by adding the three ingredients for stability, closed-loopstability can be guaranteed.

As has been explained in Remark 1.5.5, in synthesis approach of MPC,usually the feedback correction is not explicitly introduced. In synthesis ap-proach of MPC, the uncertain model is utilized, and robust MPC is obtained.In industrial MPC, the linear model is often applied and, in theory, robuststability property in the existence of model-plant mismatch is analyzed. Inthe output/state prediction sets predicted by the uncertain models (often ap-plied are polytopic description, bounded noise model), the real state/outputevolutions are included, i.e., the real state evolution is always included by thestate prediction set by the uncertain model.

© 2010 b T l d F G LLC

Page 49: 1420085301 Predictive Control

1.9. Development from classical MPC to synthesis approaches 33

Figure 1.9.1: Receding horizon optimization in predictive control.

In the suboptimal controller of the last section, u∗o(0), u∗o(1), · · · , u∗o(N −1) and K are calculated off-line. In the real applications, these data havebeen stored in the computer before implementation. At each sampling instant,it only needs to take the corresponding value from the computer memory.The most prominent difference between MPC (including classical MPC andsynthesis approaches) and the traditional optimal control is that MPC adoptsthe receding horizon optimization (see Figure 1.9.1, which is inherited from[39]).

For the CNLQR proposed in the last section, if the receding horizon op-timization is applied, i.e., the outside mode controller of CNLQR is solvedat each sampling instant and the current control move u∗(k) is implemented,then the closed-loop system is not necessarily asymptotically stable. In a syn-thesis approach of MPC, in order to achieve closed-loop stability, one needsto appropriately combine the terminal cost function, terminal constraint set,local controller (which are called the three ingredients of synthesis approach),for which the following conclusion is available (refer to [35]).

Lemma 1.9.1. For system (1.8.1)-(1.8.2), suppose (A1)-(A3) hold and W >0, R > 0. Then, there exist K, β > 0 and symmetric positive definite matrixP satisfying the following Lyapunov equation:

(A+BK)TP (A+BK)− P = −βP −W −KTRK. (1.9.1)

Further, there exists a constant α ∈ (0,∞), such that the neighborhood of theorigin Ωα defined by (1.8.10) has the following properties:

(i) under the control law u(k) = Kx(k), Ωα is the control invariant set of(1.8.1);

© 2010 b T l d F G LLC

Page 50: 1420085301 Predictive Control

34 Chapter 1. Systems, modeling and model predictive control

(ii) for ∀x0 ∈ Ωα, if u(k) = Kx(k) is applied, then limk→∞ x(k) = 0 andlimk→∞ u(k) = 0;

(iii) ∀x(k) ∈ Ωα,

‖x(k)‖2P ≥∞∑

i=0

[‖x(k + i|k)‖2W + ‖Kx(k + i|k)‖2R]. (1.9.2)

Proof. Since (A,B) is stabilizable, it is apparent that there existK, β > 0 andsymmetric positive definite matrix P satisfying (1.9.1). As in Lemma 1.8.1 wecan obtain

V (k+1)−V (k) = Θ(x)TPΘ(x)+2Θ(x)TP (A+BK)x−xT (βP+W+KTRK)x.

Similarly to Lemma 1.8.1, (i)-(ii) can be proved. Further, when α is sufficientlysmall, LΘ is also sufficiently small. Hence, for sufficiently small α, when x(k) ∈Ωα, the following holds:

V (k + 1)− V (k) ≤ −x(k)T (W +KTRK)x(k). (1.9.3)

According to (1.9.3), for MPC,

V (k + i+ 1|k)− V (k + i|k) ≤ −x(k + i|k)T (W +KTRK)x(k + i|k). (1.9.4)

Summing (1.9.4) from i = 0 to i =∞ obtains (1.9.2), where V (∞|k) = 0.

Simply speaking, let us

(I) choose K, β > 0 and symmetric positive definite matrix P according to(1.9.1) such that properties (i)-(iii) in Lemma 1.9.1 are satisfied;

(II) slightly modify the cost function Φ(x(0), uN−10 ) for (1.8.16) as

Φ(x(k)) =N−1∑

i=0

[‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R] + ‖x(k +N |k)‖2P ;

(III) minimize, at each time k, Φ(x(k)), at the same time satisfying theinput/state constraints before the switching horizon N and satisfyingx(k +N |k) ∈ Ωα.

Then, the MPC corresponding to (I)-(III) is a synthesis approach, for whichthe closed-loop system is stable. The three ingredients are ‖x(k+N |k)‖2P , Ωαand K.

1. Optimality and sub-optimality in the optimal control problem

© 2010 b T l d F G LLC

Page 51: 1420085301 Predictive Control

1.9. Development from classical MPC to synthesis approaches 35

Optimality in the traditional optimal control refers to the minimization ofa certain cost function. It is apparent the MPC also minimizes a cost function.If the cost function is not strictly minimized and, rather, a suboptimal solutionis found, then it is called suboptimal control. The standard for distinguishingbetween MPC and the traditional optimal control does not lie in whether ornot the cost function is minimized, but in whether or not the control law orcontrol move is on-line refreshed.

Optimality and sub-optimality are two relative concepts. In synthesis ap-proach of MPC, one usually utilizes the finite-horizon cost function to serveas the upper bound of the infinite-horizon cost function. This upper bound isusually conservative. Hence, corresponding to the infinite-horizon cost func-tion, MPC only obtains the suboptimal solution; however, corresponding tothe finite-horizon cost function, if the optimization problem is convex, MPCcan find the optimal solution.

In MPC, the selection of the cost function is usually concerned with stabil-ity, i.e., the selection of the cost function should be advantageous for stability,and it is less important to consider optimality (optimality is a comparativeproperty with respect to the optimum). The traditional optimal control paysmore attention to optimality. If we select the infinite-horizon cost functionas the sum of the positive definite functions over the infinite time horizon,then stability of the closed-loop system is equivalent to the boundedness ofthe summation function.

Both MPC and the traditional optimal control belong to the optimal con-trol problems. However, it is not appropriate to say that the former includesthe latter, or vice visa. In fact, they have different engineering backgrounds,large difference in the implementation, but in theory many equivalent aspects.

2. Infinite-horizon optimal control is a bridge where a classical MPC trans-fers to a synthesis approach.

This viewpoint has been illustrated in the former sections. CNLQR isoriginally an optimal control problem, but we can only give the suboptimalsolution. The suboptimal solution is obtained by splitting the infinite-horizoncost function into two parts which are solved separately. Inside of the terminalconstraint set Ωα, the upper bound of the cost value is ‖x(k +N |k)‖2P ; whenthis upper bound is added on the cost function of finite-horizon optimal controlproblem for the suboptimal CNLQR, the upper bound of the infinite-horizoncost function is obtained; further, by use of this upper bound as the costfunction of the predictive control, then the property that asymptotic stabilityis equivalent to boundedness of the summation function, possessed by infinite-horizon optimal control, is inherited.

Further details will be shown in the following chapters.3. Classical and synthesis approach of MPC are different forms, but

emerged for pursuing the same target.In cases in which classical MPC is the version adopted in the engineering

problems, why do we still investigate synthesis approaches? While synthesisapproaches may be applied in other engineering areas, it is noted that the two

© 2010 b T l d F G LLC

Page 52: 1420085301 Predictive Control

36 Chapter 1. Systems, modeling and model predictive control

categories of MPC are the inevitable results when the same kind of engineeringproblem is encountered, and the breakthrough can be made from differentstarters.

In order to control a system, we expect that our controller should beeasy to implement, and closed-loop stability can be guaranteed. This is aparadox. Usually, given a system, if a simple model and a simple controllerare applied, then a complicated closed-loop system can result. Classical MPCworks this way, by adopting the easily obtainable impulse response and stepresponse models, such that the implementation is simplified. However, it isdifficult to analyze the closed-loop system. Given a system, if a more complexmodel and more complicated controller are utilized, then an easily analyzedclosed-loop system can be obtained. Synthesis approach works this way, byadopting polytopic description, bounded noise model, the implementation ofthe controller relies on on-line solving a complicated optimization problem.

However, in cases in which the two categories are for the same kind ofproblem, the results of synthesis approaches can be invoked to guide the im-plementation of industrial MPC. For example, classical MPC cannot explicitlyaddress the modeling uncertainty, but synthesis approach can. Hence, someresults for uncertain systems with synthesis approaches can be applied toclassical MPC.

Moreover, the existence of the large difference between synthesis approachand classical MPC is due to limited technical means in the areas of mathe-matical analysis, system identification, etc. In the continuous investigationsand explorations, the two categories can solve the engineering problems fromdifferent angles and, even, combined and compensate for each other.

© 2010 b T l d F G LLC

Page 53: 1420085301 Predictive Control

Chapter 2

Model algorithmic control(MAC)

The industrial production process is complex and the model we set up maybe unsatisfactory. Even for the theoretically very complex modern controltheory, its control effect may be unsatisfactory and even, to some extent,worse than the traditional PID control. In the 1970s, besides intensifyinginvestigation on the modeling, identification, adaptive control, etc., peoplebegan to break the traditional ideas on the control, and tried to developa new control algorithm having lower requirement on the model, involvingconvenient on-line computation and possessing better control performance.Under this situation, model algorithmic control (MAC), which is a kind ofpredictive control, was applied on the process control in France. Therefore,predictive control is not a theoretical product, but developed from engineeringpractice. Moreover, the development of the computer techniques also provideshardware and software for implementing the predictive control algorithm.

This chapter is mainly referred to in [57], [63].

2.1 Principle of MAC

MAC is also called model predictive heuristic control (MPHC). Its correspond-ing industrial software is IDCOM (Identification-Command). At its time,MPHC had the following unique properties:

(1) The multivariable process to be controlled is represented by its impulseresponses which constitute the internal model (i.e., model stored in thecomputer memory). This model is used on-line for prediction, and itsinputs and outputs are updated according to the actual state of theprocess. Although it could be identified on-line, the internal model ismost of the time computed off-line. Usually the model is updated after

37

© 2010 b T l d F G LLC

Page 54: 1420085301 Predictive Control

38 Chapter 2. Model algorithmic control (MAC)

a long time period (e.g. one year).

(2) The strategy is fixed by means of a reference trajectory which definesthe closed-loop behavior of the plant. This trajectory is initiated on theactual output of the process and tends to the desired setpoint. One ofmain tuning knobs of MPHC is the reference trajectory.

(3) Controls are not computed by a one-shot operator or controller butthrough a procedure which is heuristic in the general case. Future inputsare computed in such a way that, when applied to the fast time internalpredictive model, they induce outputs as close as possible to the desiredreference trajectory.

2.1.1 Impulse response model

The impulse response model did not just appear when the MPHC was pro-posed. Rather, this model appeared much earlier than the classical controltheory. However, in the control theories before MPHC, the impulse responsemodel was not thought to be convenient. Comparatively, the differential equa-tion model, transfer function model and state space model are very suitablefor theoretical analysis.

However, from the emergence of MPHC, there is no control algorithm (notadopting impulse response model and similar step response model) which canbe more efficiently applied in the process industry. This phenomenon can beexplained from several angles.

(I) From the side of system identification, the impulse response model (orstep response model) is the easiest to obtain, the most original and themost accurate. When the transfer function model is identified by apply-ing the input/output data, one also needs to first obtain the impulseresponse (or step response). The identification of the transfer functionmodel cannot be finished with one calculation. Rather, it needs a numberof iterations, such that the coefficients of identified model can convergeto the consistent values. Whether or not the identified coefficients willconverge to the true values depends on the identification algorithm andthe characteristic of the identified system. If one wants to obtain thestate space model, he/she usually should first obtain the input/outputmodel. More importantly, when the orders of the input/output modelare selected, there has to be a compromise, which makes a differencebetween the model and the real system; this difference can be evenlarger than when the impulse response model (or step response model)is adopted.

(II) For the implementation, the complex mathematical model obtained fromprinciple analysis is often unnecessary. Moreover, when the principle isconstructed, there have to be some assumptions. On the contrary, the

© 2010 b T l d F G LLC

Page 55: 1420085301 Predictive Control

2.1. Principle of MAC 39

impulse response model, as compared with the principle model, althoughadopting more model coefficients, preserves more system information.

(III) When the impulse response model (or step response model) is applied,the time for controller designing can be saved. MPHC, as well as DMCadopting the step response model, has simple algorithmic procedures,which can be easily accepted by the process engineers.

Denote the impulse response of the controlled process as H(l). The processcan be described by the following convolution model:

y(k) =∞∑

l=1

H(l)u(k − l). (2.1.1)

For the open-loop stable process, when l is increased, H(l) tends to zero.Hence, we can use the finite convolution to approximate (2.1.1),

y(k) =N∑

l=1

H(l)u(k − l). (2.1.2)

N is the modeling length or modeling horizon. The selection of N is closelyrelated with the sampling interval Ts, i.e., NTs should correspond to theresponse time of the controlled process. Denote

H =

⎢⎢⎢⎣

h11 h12 · · · h1m

h21 h22 · · · h2m

......

. . ....

hr1 hr2 · · · hrm

⎥⎥⎥⎦.

Then, according to (2.1.2), each output yi (i ∈ 1, . . . , r) of the multi-variable system is the weighted summation of the m input data over the pastN sampling instants, denoted as

yi(k) =m∑

j=1

N∑

l=1

hij(l)uj(k − l). (2.1.3)

2.1.2 Prediction model and feedback correction

By adopting the convolution model (2.1.2), the output prediction at the futuretime k + j is

y(k + j|k) =N∑

l=1

H(l)u(k + j − l|k). (2.1.4)

By applying the difference between y(k) and y(k|k) (defined as ε(k) = y(k)−y(k|k), or called real-time prediction error), the future output prediction y(k+

© 2010 b T l d F G LLC

Page 56: 1420085301 Predictive Control

40 Chapter 2. Model algorithmic control (MAC)

j|k) based on (2.1.4) can be corrected, which usually adopts the followingform:

y(k + j|k) = y(k + j|k) + fj(y(k)− y(k|k)) (2.1.5)

where fj is the feedback correction coefficient.If the setpoint value of the output is ys(k + j), then the prediction of the

output tracking error (the output tracking error is defined as e = ys − y) is

e(k + j|k) = ys(k + j)− fjy(k)− (y(k + j|k)− fj y(k|k)). (2.1.6)

Applying (2.1.4) yields

y(k + j|k)− fj y(k|k) =j∑

l=1

H(l)u(k + j − l|k) +N−j∑

l=1

H(l + j)u(k − l)

−fjN∑

l=1

H(l)u(k − l). (2.1.7)

In (2.1.7), the first item in the right is the effect on the tracking error bythe current and future control moves, which is unknown at the current time;the latter two items are the effects of the historical control moves, which areknown at the current time.

Substitute (2.1.7) into (2.1.6), we obtain the prediction on the trackingerror

e(k + j|k) = e0(k + j)−j∑

l=1

H(l)u(k + j − l|k), (2.1.8)

where

e0(k+j) = ys(k+j)−fjy(k)−N−j∑

l=1

H(l+j)u(k−l)+fjN∑

l=1

H(l)u(k−l) (2.1.9)

is the prediction on the future tracking error based on the real measuredoutput y(k) and the historical control moves, when the current and futurecontrol moves are zeros.

Suppose the final desired output of the system is yss. Then ys(k + j) canbe calculated in the following simple manner:

ys(k + j) = ays(k + j − 1) + (1− a)yss, j > 0 (2.1.10)

where a > 0 is a constant. ys(k + 1), ys(k + 2), · · · are reference trajectories.

2.1.3 Optimal control: case single input single output

In the real applications of MAC, one usually choosesM < P (M is the controlhorizon, P the prediction horizon), and

u(k + i|k) = u(k +M − 1|k), i ∈ M, . . . , P − 1. (2.1.11)

© 2010 b T l d F G LLC

Page 57: 1420085301 Predictive Control

2.1. Principle of MAC 41

First, let us consider the SISO system. The finite convolution model is

y(k) =N∑

l=1

hlu(k − l). (2.1.12)

Applying (2.1.4), (2.1.11) and (2.1.12) easily yields

y(k|k) = Gu(k|k) +Gpup(k) (2.1.13)

where

y(k|k) =[y(k + 1|k), y(k + 2|k), · · · , y(k + P |k)]T ,u(k|k) =[u(k|k), u(k + 1|k), · · · , u(k +M − 1|k)]T ,up(k|k) =[u(k − 1), u(k − 2), · · · , u(k −N + 1)]T ,

G =

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣

h1 0 · · · 0 0h2 h1 · · · 0 0...

.... . .

......

hM−1 hM−2 · · · h1 0hM hM−1 · · · h2 h1

hM+1 hM · · · h3 (h2 + h1)...

.... . .

......

hP hP−1 · · · hP−M+2 (hP−M+1 + · · ·+ h1)

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦

,

Gp =

⎢⎢⎢⎢⎣

h2 · · · hN−P+1 hN−P+2 · · · hN...

. . ....

... . . . 0

hP · · · hN−1 hN . . ....

hP+1 · · · hN 0 · · · 0

⎥⎥⎥⎥⎦

.

Notation “p” in the subscript denotes “past.”Further, applying (2.1.4)-(2.1.9) yields

e(k|k) = e0(k)−Gu(k|k), (2.1.14)

e0(k) = ys(k)−Gpup(k)− fε(k), (2.1.15)

where

f =[f1, f2, · · · , fP ]T ,

e(k|k) =[e(k + 1|k), e(k + 2|k), · · · , e(k + P |k)]T ,e0(k) =[e0(k + 1), e0(k + 2), · · · , e0(k + P )]T ,

ys(k) =[ys(k + 1), ys(k + 2), · · · , ys(k + P )]T .

Suppose the criterion for optimizing u(k|k) is to minimize the followingcost function:

J(k) =P∑

i=1

wie2(k + i|k) +

M∑

j=1

rju2(k + j − 1|k) (2.1.16)

© 2010 b T l d F G LLC

Page 58: 1420085301 Predictive Control

42 Chapter 2. Model algorithmic control (MAC)

where wi and rj are non-negative scalars. Then, when GTWG+R is nonsin-gular, by applying (2.1.14)-(2.1.15), the minimization of (2.1.16) yields

u(k|k) = (GTWG+R)−1GTWe0(k) (2.1.17)

whereW = diagw1, w2, · · · , wP , R = diagr1, r2, · · · , rM.

At each time k, implement the following control move:

u(k) = dT (ys(k)−Gpup(k)− f ε(k)) (2.1.18)

wheredT = [1 0 · · · 0](GTWG+R)−1GTW.

Algorithm 2.1 (Unconstrained MAC)

Step 0. Obtain h1, h2, · · · , hN. Calculate dT . Choose f . Obtain u(−N), u(−N+1), · · · , u(−1).

Step 1. At each time k ≥ 0,

Step 1.1. measure the output y(k);

Step 1.2. determine ys(k);

Step 1.3. calculate ε(k) = y(k)− y(k|k), where y(k|k) =∑N

l=1 hlu(k − l);Step 1.4. calculate Gpup(k) in (2.1.13);

Step 1.5. calculate u(k) by applying (2.1.18);

Step 1.6. implement u(k).

Remark 2.1.1. Utilizing (2.1.5) for j = 0 yields

y(k|k) = y(k|k) + f0(y(k)− y(k|k)).

Take f0 = 1. Then the above formula yields y(k|k) = y(k). This is the reasonfor applying ε(k) in the feedback correction. The selection of fj in (2.1.5)is artificial and, hence, fj can be tuning parameter. In the earlier version ofMPHC, fj = 1.

2.1.4 Optimal control: case multi-input multi-output

For a system with m inputs and r outputs, the deduction of MAC controllaw is the generalization of that for the SISO system. The prediction of theoutput can be done in the following steps.

(i) First step: Suppose only the j-th input is nonzero, and the other inputsare zeros. Then considering the i-th output yields

yij(k|k) = Gij uj(k|k) +Gijpujp(k), (2.1.19)

© 2010 b T l d F G LLC

Page 59: 1420085301 Predictive Control

2.1. Principle of MAC 43

where

yij(k|k) =[yij(k + 1|k), yij(k + 2|k), · · · , yij(k + P |k)]T ,uj(k|k) =[uj(k|k), uj(k + 1|k), · · · , uj(k +M − 1|k)]T ,uj,p(k|k) =[uj(k − 1), uj(k − 2), · · · , uj(k −N + 1)]T ,

G =

266666666666664

hij(1) 0 · · · 0 0hij(2) hij(1) · · · 0 0

......

. . ....

...hij(M − 1) hij(M − 2) · · · hij(1) 0

hij(M) hij(M − 1) · · · hij(2) hij(1)hij(M + 1) hij(M) · · · hij(3) hij(2) + hij(1)

......

. . ....

...hij(P ) hij(P − 1) · · · hij(P − M + 2) hij(P − M + 1) + · · · + hij(1)

377777777777775

,

Gij,p =

266664

hij(2) · · · hij(N − P + 1) hij(N − P + 2) · · · hij(N)...

. . ....

... . ..

0

hij(P ) · · · hij(N − 1) hij(N) . .. ...

hij(P + 1) · · · hij(N) 0 · · · 0

377775

.

(ii) Second step: Suppose all the inputs are not necessarily zeros. Then,considering the i-th output, applying the principle of superposition yields

yi(k|k) =r∑

j=1

Gij uj(k|k) +r∑

j=1

Gijpujp(k), (2.1.20)

ei(k|k) =ei0(k) +r∑

j=1

Gij uj(k|k), (2.1.21)

ei0(k) =yis(k)−r∑

j=1

Gijpujp(k)− fiεi(k), (2.1.22)

where

yi(k|k) =[yi(k + 1|k), yi(k + 2|k), · · · , yi(k + P |k)]T ,ei(k|k) =[ei(k + 1|k), ei(k + 2|k), · · · , ei(k + P |k)]T ,ei0(k) =[ei0(k + 1), ei0(k + 2), · · · , ei0(k + P )]T ,

yis(k) =[yis(k + 1), yis(k + 2), · · · , yis(k + P )]T ,

fi =[fi1, fi2, · · · , fiP ]T ,εi(k) =yi(k)− yi(k|k).

© 2010 b T l d F G LLC

Page 60: 1420085301 Predictive Control

44 Chapter 2. Model algorithmic control (MAC)

(iii) Third step: Considering all the inputs and outputs yields

Y (k|k) =GU(k|k) + GpUp(k), (2.1.23)

E(k|k) =E0(k)− GU(k|k), (2.1.24)

E0(k) =Ys(k)− GpUp(k)− FΥ(k), (2.1.25)

where

Y (k|k) =[y1(k|k)T , y2(k|k)T , · · · , yr(k|k)T ]T ,

U(k|k) =[u1(k|k)T , u2(k|k)T , · · · , um(k|k)T ]T ,

Up(k) =[u1,p(k)T , u2,p(k)T , · · · , um,p(k)T ]T ,

E(k|k) =[e1(k|k)T , e2(k|k)T , · · · , er(k|k)T ]T ,

E0(k) =[e10(k)T , e20(k)T , · · · , er0(k)T ]T ,

Ys(k) =[y1s(k)T , y2s(k)T , · · · , yrs(k)T ]T ,

Υ(k) =[ε1(k), ε2(k), · · · , εr(k)]T ,

F =

⎢⎢⎢⎣

f1 0 · · · 00 f2 · · · 0...

.... . .

...0 0 · · · fr

⎥⎥⎥⎦,

G =

⎢⎢⎢⎣

G11 G12 · · · G1m

G21 G22 · · · G2m

......

. . ....

Gr1 Gr2 · · · Grm

⎥⎥⎥⎦,

Gp =

⎢⎢⎢⎣

G11p G12p · · · G1mp

G21p G22p · · · G2mp

......

. . ....

Gr1p Gr2p · · · Grmp

⎥⎥⎥⎦.

Suppose the criterion for optimization of U(k|k) is the minimization of thefollowing cost function:

J(k) = ‖E(k|k)‖2W

+ ‖U(k|k)‖2R

(2.1.26)

where W ≥ 0 and R ≥ 0 are symmetric matrices. Then, when GT W G+ R isnonsingular, minimizing (2.1.26) yields

U(k|k) = (GT W G+ R)−1GT WE0(k). (2.1.27)

Remark 2.1.2. If, in G, Gp of (2.1.13), all the hl’s are r ×m-dimensionalmatrices, then the closed-form solution to the unconstraint MIMO MAC canbe represented as (2.1.17); thus, it is not required to use the deductions as

© 2010 b T l d F G LLC

Page 61: 1420085301 Predictive Control

2.2. Constraint handling 45

in section 2.1.4. However, if for different inputs (outputs), different controlhorizons (prediction horizons) are utilized, then the expression by (2.1.27) ismore convenient.

At each time k, implement the following control move:

u(k) = D(Ys(k)− GpUp(k)− FΥ(k)) (2.1.28)

where

D =L(GT W G+ R)−1GT W ,

L =

⎢⎢⎢⎢⎣

θ 0 · · · 0

0 θ. . .

......

. . .. . . 0

0 · · · 0 θ

⎥⎥⎥⎥⎦

∈ Rm×mM , θ = [1 0 · · · 0] ∈ RM .

A simple method for selecting W and R is

W =diagW1,W2, · · · ,Wr, R = diagR1, R2, · · · , Rm,Wi =diagwi(1), wi(2), · · · , wi(P ), i ∈ 1, . . . , r,Rj =diagrj(1), rj(2), · · · , rj(M), j ∈ 1, . . . ,m.

Choosing R > 0 guarantees the nonsingularity of GT W G+ R.

2.2 Constraint handling

Before application of MPHC (design stage) and in the progress of application(run stage), users can tune the following parameters:

(i) sampling internal Ts;

(ii) prediction horizon P , control horizon M , weighting matrices W , R orweighting coefficients wi, rj ;

(iii) correction coefficients fi or fi;

(iv) the modeling coefficients in the impulse response model;

(v) reference trajectory, such as parameter a;

(vi) constraints, including input magnitude constraint (upper limit, lowerlimit), the upper limit of the input increment, constraint on the inter-mediate variable (or combined variable), etc.

© 2010 b T l d F G LLC

Page 62: 1420085301 Predictive Control

46 Chapter 2. Model algorithmic control (MAC)

For (i)-(iii), one can refer to sections 5.1 and 6.2 of [63]. Although thesesections in [63] are for DMC (see Chapter 3), most of the viewpoints areefficient for MAC. In this book, stability is mainly concerned with the resultsvia mathematical proofs; when the experiential tuning methods are involved,the readers are referred to the related literature. In the real applications, theexperiential tuning is very important.

In general, one does not need to often tune the modeling parameters ofthe impulse response model. The main reasons are as follows.

(I) MPHC has strong robustness, and in general can be suitable for thesystem changes.

(II) Testing the impulse response model, in general, will affect the real pro-duction process, i.e., some additional signal which is not desired by thereal process will be added. Else, the obtained data can have low sig-nal/noise ratio, and error is enlarged correspondingly.

(III) Although there is an appropriate identification tool, the hardware con-ditions of the real process can be insufficient (e.g., the measurementscan be inaccurate). The operators can know the hardware problems inthe controlled process. However, it is not easy for the identification toolto know the problems.

In the real applications, reference trajectory and constraints are the mainparameters for tuning. In the following, let us discuss how to handle con-straints in MPHC (take MIMO system as the example).

1. Output magnitude constraint yi,min ≤ yi(k + l|k) ≤ yi,max

At each optimization cycle, the output prediction is GpUp(k) + FΥ(k) +GU(k|k). Hence, we can let the optimization problem satisfy the followingconstraint:

Ymin ≤ GpUp(k) + FΥ(k) + GU(k|k) ≤ Ymax (2.2.1)

where

Ymin =[yT1,min, yT2,min, · · · , yTr,min]

T ,

yi,min =[yi,min, yi,min, · · · , yi,min]T ∈ RP ,

Ymax =[yT1,max, yT2,max, · · · , yTr,max]

T ,

yi,max =[yi,max, yi,max, · · · , yi,max]T ∈ RP .

2. Input magnitude constraint uj,min ≤ uj(k + l|k) ≤ uj,max

We can let the optimization problem satisfy the following constraint:

Umin ≤ U(k|k) ≤ Umax (2.2.2)

© 2010 b T l d F G LLC

Page 63: 1420085301 Predictive Control

2.3. The usual pattern for implementation of MPC 47

where

Umin =[uT1,min, uT2,min, · · · , uTm,min]

T ,

uj,min =[uj,min, uj,min, · · · , uj,min]T ∈ RM ,

Umax =[uT1,max, uT2,max, · · · , uTm,max]

T ,

uj,max =[uj,max, uj,max, · · · , uj,max]T ∈ RM .

3. Input rate constraint Δuj,min ≤ Δuj(k+ l|k) = uj(k+ l|k)− uj(k+ l−1|k) ≤ Δuj,max

We can let the optimization problem satisfy the following constraint:

ΔUmin ≤ BU(k|k)− u(k − 1) ≤ ΔUmax (2.2.3)

where

ΔUmin =[ΔuT1,min,ΔuT2,min, · · · ,ΔuTm,min]

T ,

Δuj,min =[Δuj,min,Δuj,min, · · · ,Δuj,min]T ∈ RM ,

ΔUmax =[ΔuT1,max,ΔuT2,max, · · · ,ΔuTm,max]

T ,

Δuj,max =[Δuj,max,Δuj,max, · · · ,Δuj,max]T ∈ RM ,

B =diagB0, · · · , B0 (m blocks),

B0 =

⎢⎢⎢⎢⎢⎢⎢⎣

1 0 0 · · · 0

−1 1 0. . .

...

0 −1 1. . . 0

.... . . . . . . . . 0

0 · · · 0 −1 1

⎥⎥⎥⎥⎥⎥⎥⎦

∈ RM×M ,

u(k − 1) =[u1(k − 1)T , u2(k − 1)T , · · · , um(k − 1)T ]T ,

uj(k − 1) =[uj(k − 1), 0, · · · , 0]T ∈ RM .

Equations (2.2.1)-(2.2.3) can be written in a uniform manner as CU(k|k) ≤c, where C and c are known matrix and vector at time k. The optimizationproblem of MAC incorporating these constraints is

minU(k|k)

J(k) = ‖E(k|k)‖2W

+ ‖U(k|k)‖2R, s.t. CU(k|k) ≤ c. (2.2.4)

An optimization problem, with quadratic cost function and linear equalityand inequality constraints, is called a quadratic optimization problem.

2.3 The usual pattern for implementation ofMPC

MPC (not restricted to MPHC) can be implemented in two different manners.One is the direct digital control (DDC), i.e., the output of the controller is

© 2010 b T l d F G LLC

Page 64: 1420085301 Predictive Control

48 Chapter 2. Model algorithmic control (MAC)

directly acted on (transmitted to) the physical actuator. The other is the so-called “transparent control,” i.e., the output of MPC is the setpoints of thePIDs, i.e., the decision variables of MPC are the setpoints of PID control loops.Usually, it is safer to adopt “transparent control” and in real applications“transparent control” is applied.

In the real applications of MPC, one usually meets with the following 4hierarchical levels:

Level 0— control of ancillary systems (e.g., servo-valves) where PIDcontrollers are quite efficient,

Level 1— predictive control of the multivariable process, satisfyingphysical constraints such as input saturation, limits on rateof input change, etc.,

Level 2— optimization of the setpoints of MPC, with minimization ofcost-function ensuring quality and quantity of production,

Level 3— time and space scheduling of production (planning-operationresearch).

This 4-level hierarchical structure can answer a good number of readers.Firstly, implementing MPC does not mean substituting PIDs utterly withMPC. The effect of PIDs is still existing. This further explains why PID is stillprominent in process control. Secondly, in real applications, the profits fromLevels 0 and 1 can be overlooked, i.e., merely adopting the basic principlesof MPC usually is not equivalent to gaining profits. Often, the profits aremainly gained from Level 2. The effect of Level 0 and 1 (especially Level1) is to implement the results of Level 2. Since the profits are gained fromLevel 2, the significance of optimization problem in MPC is to enhance thecontrol performance, not to gain profits. The selection of the performancecost in MPC is mainly for stability and fast responses, and there is usuallyno economic consideration (this can be different from the traditional optimalcontrol).

So, why not leave out Level 1 and directly optimize the setpoints of PID?The plant to be handled by these 4 hierarchical levels usually has a largenumber of variables, and the number of inputs and number of outputs are notnecessarily equal. Further, the number of variables can be changing. Moreover,the outputs to be controlled by MPC can be different from those of the PIDs.Since MPC can handle the multivariable control in a uniform manner otherthan PID’s single-loop operation, the control effect of MPC is more forcefuland enables the optimums of Level 2 to be implemented faster and moreaccurate. Note that MPC is based on optimization and is effective for handlingconstraints and time-delay, which are merits not possessed in PID. Still, ifin Level 2, the setpoints of PID are directly optimized, then more complexand higher dimensional optimization problem can be involved, which is notpractical.

© 2010 b T l d F G LLC

Page 65: 1420085301 Predictive Control

2.3. The usual pattern for implementation of MPC 49

Remark 2.3.1. There are other advantages by adopting transparent control,including overcoming the effect of model uncertainty, enlarging the region ofattraction, etc. For processes with long settling time, if MPC based on theimpulse response model or step response model is applied, then the samplinginterval cannot be selected small by considering the computational burden (ifthe sampling interval is over small, then the model length has to be selectedlarge). In this situation, by adopting transparent control, the disturbancerejection can be done by the fast-sampling PID controllers.

Due to the adoption of transparent control, multivariable control andmulti-step prediction, stability of MPHC is not critical, i.e., stability of MPHCcan be easily tuned. Moreover, MPHC has comparable robustness. In the realapplications of MPHC, the control structure (the number of variables) oftenchanges. More significantly, the plant to be controlled by MPHC is often verycomplex. Therefore, it is very difficult, and not likely to be effective for realapplications, to analyze stability of MPHC theoretically.

Figure 2.3.1 shows the strategy to be considered in Level 2. This strategyadopts a static model for optimization. Hence, before running the optimiza-tion, one should check if the plant is in steady state. If the plant is settled, thenrefresh the parameters in the mathematical model for optimization, and runthe optimization. Before implementing the optimization results, one shouldcheck if the plant lies on the original steady state.

© 2010 b T l d F G LLC

Page 66: 1420085301 Predictive Control

50 Chapter 2. Model algorithmic control (MAC)

Yes

Yes

Is plant at steady state?

Measurements validation

Parameters calculation

Optimization

Is plant at steady state?

Implement the optimal setpoints

Measure the representative

units

Measurements

Limits of feedstock, product

and utilities

Constraints

Measure the representative

units

Control

Wait No

No

Figure 2.3.1: Static optimization of the setpoint values of MPC.

© 2010 b T l d F G LLC

Page 67: 1420085301 Predictive Control

Chapter 3

Dynamic matrix control(DMC)

DMC has many similarities with MAC. It is an algorithm based on the stepresponse model. Having an impulse response model is equivalent to having astep response model. However, DMC applies incremental algorithms, whichis very effective in removing the steady-state error. Certainly, compared withDMC, MAC has its advantages, such as higher disturbance rejection capacity.In real applications, choosing between DMC and MAC depends on the pre-cise situation. Up to now, DMC is the most widely accepted in the processindustry.

This chapter mainly refers to in [50], [63].

3.1 Step response model and its identification

Suppose the system is at rest. For a linear time-invariant single-input single-output (SISO) system let the output change for a unit input change Δu begiven by

0, s1, s2, · · · , sN , sN+1, · · · .

Here we suppose the system settles exactly after N steps. The step responses1, s2, · · · , sN constitutes a complete model of the system, which allows usto compute the system output for any input sequence,

y(k) =N∑

l=1

slΔu(k − l) + sN+1u(k −N − 1), (3.1.1)

51

© 2010 b T l d F G LLC

Page 68: 1420085301 Predictive Control

52 Chapter 3. Dynamic matrix control (DMC)

where Δu(k− l) = u(k− l)−u(k− l−1). Note that, when sN = sN−1, (3.1.1)is equivalent to

y(k) =N−1∑

l=1

slΔu(k − l) + sNu(k −N). (3.1.2)

Step response model (3.1.1) can only be used in stable processes. For aMIMO process with m inputs and r outputs one obtains a series of stepresponse coefficient matrices

Sl =

⎢⎢⎢⎣

s11l s12l · · · s1mls21l s22l · · · s2ml...

.... . .

...sr1l sr2l · · · srml

⎥⎥⎥⎦

where sijl is the l-th step response coefficient relating j-th input to the i-thoutput.

The identification routines available in the Matlab MPC Toolbox are de-signed for multi-input single-output (MISO) systems. Based on a historicalrecord of the output yi and inputs u1, u2, · · · , um,

yi =

⎢⎢⎢⎣

yi(1)yi(2)yi(3)

...

⎥⎥⎥⎦, u =

⎢⎢⎢⎣

u1(1) u2(1) · · · um(1)u1(2) u2(2) · · · um(2)u1(3) u2(3) · · · um(3)

......

...

⎥⎥⎥⎦

the step response coefficients⎡

⎢⎢⎢⎢⎢⎢⎣

si11 si21 · · · sim1

si12 si22 · · · sim2

......

. . ....

si1l si2l · · · siml...

......

⎥⎥⎥⎥⎥⎥⎦

are estimated.For the estimation of the step response coefficients we write the SISO

model in the form

Δy(k) =N∑

l=1

hlΔu(k − l) (3.1.3)

and firstly estimate hl, where Δy(k) = y(k) − y(k − 1), hl = sl − sl−1. sl isgiven by

sl =l∑

j=1

hj. (3.1.4)

© 2010 b T l d F G LLC

Page 69: 1420085301 Predictive Control

3.2. Principle of DMC 53

For parameter estimation it is usually recommended to scale all the vari-ables such that they are the same order of magnitude. This may be donevia the MPC Toolbox functions “autosc” or “scal.” Then the data has to bearranged into the form

Y = XΘ (3.1.5)

where Y contains all the output information (for stable process, Δy(k)) andXall the input information (Δu(k)). Θ is a vector including all the parametersto be estimated (for stable process, hl). The parameters Θ can be estimatedvia multivariable least square regression (“mlr” in Matlab) or partial leastsquare regression (“plsr” in Matlab).

3.2 Principle of DMC

Consider the open-loop stable system. Giving the current and future controlincrements Δu(k),Δu(k+1|k), · · · ,Δu(k+M−1|k), the future outputs y(k+1|k), y(k+2|k), · · · , y(k+P |k) can be predicted.M ≤ P ≤ N . The current andfuture control increments are obtained by solving the optimization problem.Although in total M control increments are obtained, only the first (Δu(k)) isimplemented. At the next sampling instant, based on the new measurement,the control time horizon is moved forward with one sampling interval, and thesame optimization as in the previous sampling instant is repeated.

3.2.1 Case single input single output

At time k, by utilizing (3.1.1), the output prediction for the future P samplingintervals are

y(k + 1|k) =y0(k + 1|k − 1) + s1Δu(k)

...

y(k +M |k) =y0(k +M |k − 1) + sMΔu(k) + sM−1Δu(k + 1|k) + · · ·+ s1Δu(k +M − 1|k)

y(k +M + 1|k) =y0(k +M + 1|k − 1) + sM+1Δu(k) + sMΔu(k + 1|k) + · · ·+ s2Δu(k +M − 1|k)

...

y(k + P |k) =y0(k + P |k − 1) + sPΔu(k) + sP−1Δu(k + 1|k) + · · ·+ sP−M+1Δu(k +M − 1|k)

© 2010 b T l d F G LLC

Page 70: 1420085301 Predictive Control

54 Chapter 3. Dynamic matrix control (DMC)

where

y0(k + i|k − 1) =N∑

j=i+1

sjΔu(k + i− j) + sN+1u(k + i−N − 1)

=N−i∑

j=1

si+jΔu(k − j) + sN+1u(k + i−N − 1)

=si+1u(k − 1) +N−i∑

j=2

(si+j − si+j−1)u(k − j), i ∈ 1, 2, . . . , P

(3.2.1)

is the output prediction by assuming that the current and future control moveskeep invariant.

Denoteε(k) = y(k)− y0(k|k − 1) (3.2.2)

where

y0(k|k − 1) = s1u(k − 1) +N∑

j=2

(sj − sj−1)u(k − j). (3.2.3)

We can use (3.2.2) to correct the future output predictions. Denote

y0(k + i|k) =y0(k + i|k − 1) + fiε(k), i ∈ 1, 2, . . . , P, (3.2.4)y(k + i|k) =y(k + i|k) + fiε(k), i ∈ 1, 2, . . . , P. (3.2.5)

Write the output predictions corrected via (3.2.4)-(3.2.5) as the followingvector form

y(k|k) = y0(k|k) +AΔu(k|k), (3.2.6)

where

y(k|k) =[y(k + 1|k), y(k + 2|k), · · · , y(k + P |k)]T ,y0(k|k) =[y0(k + 1|k), y0(k + 2|k), · · · , y0(k + P |k)]T ,

Δu(k|k) =[Δu(k),Δu(k + 1|k), · · · ,Δu(k +M − 1|k)]T ,

A =

⎢⎢⎢⎢⎢⎢⎢⎢⎣

s1 0 · · · 0s2 s1 · · · 0...

.... . .

...sM sM−1 · · · s1...

.... . .

...sP sP−1 · · · sP−M+1

⎥⎥⎥⎥⎥⎥⎥⎥⎦

.

Suppose the criterion for optimizing Δu(k|k) is to minimize the followingcost function:

J(k) =P∑

i=1

wie2(k + i|k) +

M∑

j=1

rjΔu2(k + j − 1|k), (3.2.7)

© 2010 b T l d F G LLC

Page 71: 1420085301 Predictive Control

3.2. Principle of DMC 55

where wi and rj are non-negative scalars; e(k + i|k) = ys(k + i) − y(k + i|k)is the tracking error; ys(k + i) is the setpoint value of the future output. Thesecond item in the cost function (3.2.7) is to restrict the magnitude of thecontrol increment, so as to prevent the system from exceeding its limits oroscillating.

When ATWA+R is nonsingular, by applying (3.2.6), the minimization of(3.2.7) yields

Δu(k|k) = (ATWA+R)−1ATWe0(k) (3.2.8)

where

W =diagw1, w2, · · · , wP , R = diagr1, r2, · · · , rM,e0(k) =ys(k)− y0(k|k),e0(k) =[e0(k + 1), e0(k + 2), · · · , e0(k + P )]T ,

ys(k) =[ys(k + 1), ys(k + 2), · · · , ys(k + P )]T ,

e0 is the prediction on the tracking error based on the measured output y(k)and historical control moves, when the current and future control moves keepinvariant.

At each time k, implement the following control moves:

Δu(k) = dT (ys(k)− y0(k|k)) (3.2.9)

wheredT = [1 0 · · · 0](ATWA+R)−1ATW.

In fact, by applying (3.2.1) we can obtain the following vector form:

y0(k|k − 1) = Apup(k) (3.2.10)

where

y0(k|k − 1) = [y0(k + 1|k − 1), y0(k + 2|k − 1), · · · , y0(k + P |k − 1)]T ,

Ap =

266664

s2 s3 − s2 · · · sN−P+1 − sN−P sN−P+2 − sN−P+1 · · · sN − sN−1

......

. . ....

... . ..

0

sP sP+1 − sP · · · sN−1 − sN−2 sN − sN−1 . .. ...

sP+1 sP+2 − sP+1 · · · sN − sN−1 0 · · · 0

377775

,

up(k) = [u(k − 1), u(k − 2), · · · , u(k − N + 1)]T .

Then applying (3.2.4)-(3.2.5) yields

e(k|k) =e0(k)−AΔu(k|k), (3.2.11)

e0(k) =ys(k)−Apup(k)− f ε(k), (3.2.12)

© 2010 b T l d F G LLC

Page 72: 1420085301 Predictive Control

56 Chapter 3. Dynamic matrix control (DMC)

where

e(k|k) =[e(k + 1|k), e(k + 2|k), · · · , e(k + P |k)]T ,f =[f1, f2, · · · , fP ]T .

Thus, at each time k, implement the following control move:

Δu(k) = dT (ys(k)−Apup(k)− f ε(k)). (3.2.13)

Equations (3.2.13) and (3.2.9) are equivalent.The above method can be summarized as follows.Algorithm 3.1 (Type-I unconstrained DMC)

Step 0. Obtain s1, s2, · · · , sN. Calculate dT . Choose f . Obtainu(−N), u(−N + 1), · · · , u(−1).

Step 1. At each time k ≥ 0,

Step 1.1. measure y(k);

Step 1.2. determine ys(k) (the method for MAC in Chapter 2 canbe adopted);

Step 1.3. calculate ε(k) via (3.2.2)-(3.2.3);

Step 1.4. calculate Apup(k) in (3.2.10);

Step 1.5. calculate Δu(k) via (3.2.13);

Step 1.6. implement Δu(k).

Remark 3.2.1. Use (3.2.4) for i = 0. Then applying (3.2.2) yields

y0(k|k) = y0(k|k − 1) + f0[y(k)− y0(k|k − 1)].

If we choose f0 = 1, then y0(k|k) = y(k). This is the reason for choosing(3.2.2) as the feedback correction. In (3.2.4), the selection of fi depends onthe concrete situations. Hence, fi can be tuning parameter. In Matlab MPCToolbox, fi = 1.

3.2.2 Case single input single output: alternative proce-dure of deduction

In some literature (e.g., in [63]), DMC is introduced from a different angle.Suppose y0(k + i|k) is the output prediction when the current and futurecontrol moves keep invariant. Then, it is shown that, when the current andfuture moves are changed, the output predictions in future P sampling instants

© 2010 b T l d F G LLC

Page 73: 1420085301 Predictive Control

3.2. Principle of DMC 57

are

y(k + 1|k) =y0(k + 1|k) + s1Δu(k)...

y(k +M |k) =y0(k +M |k) + sMΔu(k) + sM−1Δu(k + 1|k) + · · ·+ s1Δu(k +M − 1|k)

y(k +M + 1|k) =y0(k +M + 1|k) + sM+1Δu(k) + sMΔu(k + 1|k) + · · ·+ s2Δu(k +M − 1|k)

...y(k + P |k) =y0(k + P |k) + sPΔu(k) + sP−1Δu(k + 1|k) + · · ·

+ sP−M+1Δu(k +M − 1|k)

where y0(k + i|k) will be explained later.Writing the output predictions in a vector form, we directly obtain (3.2.6).

Suppose the criterion for optimizing Δu(k|k) is to minimize the cost function(3.2.7). Then, when ATWA+R is nonsingular, it is shown that minimizationof (3.2.7) yields (3.2.8).

In the following, we show how to calculate y0(k|k) at each sampling instant.First, at the initial time k = 0, suppose the system is in steady-state.

When DMC is in startup, choose y0(i|0) = y(0) (i = 1, 2, · · · , P + 1).At the time k ≥ 0, implement (3.2.9). Consider the time k + 1. For this,

note that

y0(k + 1|k) = [y0(k + 2|k), y0(k + 3|k), · · · , y0(k + P + 1|k)]T .

According to its definition, y0(k + 1|k) is the output prediction when thecontrol moves at k + 1 and future time instants keep invariant. Denote

y0(k + 2|k + 1) =y0(k + 2|k) + s2Δu(k),...

y0(k +M + 1|k + 1) =y0(k +M + 1|k) + sM+1Δu(k),...

y0(k + P + 1|k + 1) =y0(k + P + 1|k) + sP+1Δu(k).

y0(k + 1 + i|k + 1), i ∈ 1, 2, . . . , P can be the basis for constructing y0(k +1|k + 1).

Also denoteε(k + 1) = y(k + 1)− y(k + 1|k).

Since ε(k + 1) is the effect on the output by the un-modeled uncertainties,it can be used to predict the future prediction error, so as to compensate

© 2010 b T l d F G LLC

Page 74: 1420085301 Predictive Control

58 Chapter 3. Dynamic matrix control (DMC)

the predictions based on the model. In summary, we can use the following topredict y0(k + i|k + 1):

y0(k + 2|k + 1) =y0(k + 2|k + 1) + f1ε(k + 1),...

y0(k +M + 1|k + 1) =y0(k +M + 1|k + 1) + fMε(k + 1),...

y0(k + P + 1|k + 1) =y0(k + P + 1|k + 1) + fP ε(k + 1).

By summarizing the above deductions, at each time k > 0, y0(k|k) can becalculated by

y0(k|k) = y0(k|k − 1) +A1Δu(k − 1) + fε(k), (3.2.14)

where

ε(k) =y(k)− y(k|k − 1), (3.2.15)y(k|k − 1) =y0(k|k − 1) + s1Δu(k − 1), (3.2.16)

A1 =[ s2 s3 · · · sP+1 ]T .

The above method can be summarized as follows.Algorithm 3.2 (Type-II unconstrained DMC)

Step 0. Obtain s1, s2, · · · , sN. Calculate dT . Choose f .

Step 1. At k = 0,

Step 1.1. measure y(0);Step 1.2. determine ys(0);Step 1.3. choose y0(i|0) = y(0), i ∈ 1, 2, . . . , P and construct

y0(0|0);Step 1.4. use (3.2.9) to calculate Δu(0);Step 1.5. implement Δu(0).

Step 2. At each time k > 0,

Step 2.1. measure y(k);Step 2.2. determine ys(k);Step 2.3. use (3.2.15) to calculate ε(k);Step 2.4. use (3.2.14) to calculate y0(k|k);Step 2.5. use (3.2.9) to calculate Δu(k);Step 2.6. implement Δu(k).

Remark 3.2.2. In (3.2.14), y0(k|k) includes i ∈ 1, 2, . . . , P. Hence, (3.2.14)can be expressed as

y0(k + i|k) = y0(k + i|k − 1) + si+1Δu(k − 1) + fiε(k), i ∈ 1, 2, . . . , P.

© 2010 b T l d F G LLC

Page 75: 1420085301 Predictive Control

3.2. Principle of DMC 59

By utilizing the above formula for i = 0, applying (3.2.15)-(3.2.16) yields

y0(k|k) = y0(k|k − 1) + s1Δu(k − 1) + f0[y(k)− y0(k|k − 1)− s1Δu(k − 1)].

If we take f0 = 1, then y0(k|k) = y(k). This is the reason for choosing (3.2.15)as the feedback correction. In (3.2.14), the selection of fi depends on theconcrete situation. Hence, fi can be tuning parameter.

Remark 3.2.3. In Algorithm 3.1, the feedback correction has the followingform:

y0(k + i|k) = y0(k + i|k − 1) + fi[y(k)− y0(k|k − 1)], i ∈ 1, 2, . . . , P.In Algorithm 3.2, the feedback correction has the following form:

y0(k + i|k) =y0(k + i|k − 1) + si+1Δu(k − 1) + fi[y(k)− y0(k|k − 1)− s1Δu(k − 1)], i ∈ 1, 2, . . . , P.

Hence, even for fi = 1, the two algorithms are different.

Remark 3.2.4. By considering Remarks 3.2.1, 3.2.2 and 3.2.3, it is shownthat the feedback correction has the heuristic property, i.e., it is not set arbi-trarily but can be different for different designers.

Remark 3.2.5. For prediction errors, there is no causal description. Hence,the error prediction is artificial. The deduction of the predictive control lawis strict except that the prediction error is artificial.

3.2.3 Case multi-input multi-output

DMC of system with m input and r output is a generalization of SISO case.In the following, based on Algorithm 3.2, MIMO DMC is given.

(i) First step: Suppose only the j-th input is changed and other inputskeep invariant. Then considering the i-th output yields

yij(k|k) = yij0(k|k) +AijΔuj(k|k) (3.2.17)

where

yij(k|k) =[yij(k + 1|k), yij(k + 2|k), · · · , yij(k + P |k)]T ,yij0(k|k) = [yij0(k + 1|k), yij0(k + 2|k), · · · , yij0(k + P |k)]T ,Δuj(k|k) = [Δuj(k),Δuj(k + 1|k), · · · ,Δuj(k +M − 1|k)]T ,

Aij =

⎢⎢⎢⎢⎢⎢⎢⎢⎣

sij1 0 · · · 0sij2 sij1 · · · 0...

.... . .

...sijM sij,M−1 · · · sij,1

......

. . ....

sijP sij,P−1 · · · sij,P−M+1

⎥⎥⎥⎥⎥⎥⎥⎥⎦

.

© 2010 b T l d F G LLC

Page 76: 1420085301 Predictive Control

60 Chapter 3. Dynamic matrix control (DMC)

(ii) Second step: Suppose all the input can be changed. Then consideringthe i-th output and applying the superposition principle yields

yi(k|k) = yi0(k|k) +r∑

j=1

AijΔuj(k|k) (3.2.18)

where

yi(k|k) =[yi(k + 1|k), yi(k + 2|k), · · · , yi(k + P |k)]T ,yi0(k|k) = [yi0(k + 1|k), yi0(k + 2|k), · · · , yi0(k + P |k)]T .

(iii) Third step: Considering all the inputs and outputs yields

Y (k|k) = Y0(k|k) + AΔU(k|k), (3.2.19)

where

Y (k|k) =[y1(k|k)T , y2(k|k)T , · · · , yr(k|k)T ]T ,

Y0(k|k) =[y10(k|k)T , y20(k|k)T , · · · , yr0(k|k)T ]T ,

ΔU(k|k) =[Δu1(k|k)T ,Δu2(k|k)T , · · · ,Δum(k|k)T ]T ,

A =

⎢⎢⎢⎣

A11 A12 · · · A1m

A21 A22 · · · A2m

......

. . ....

Ar1 Ar2 · · · Arm

⎥⎥⎥⎦.

Suppose the criterion for optimizing ΔU(k|k) is to minimize the followingcost function:

J(k) = ‖E(k|k)‖2W + ‖ΔU(k|k)‖2R , (3.2.20)

where W≥0 and R≥0 are symmetric matrices,

E(k|k) =[e1(k|k)T , e2(k|k)T , · · · , er(k|k)T ]T ,

ei(k|k) =[ei(k + 1|k), ei(k + 2|k), · · · , ei(k + P |k)]T ,ei(k + l|k) =yis(k + l)− yi(k + l|k).

Then, when AT W A+ R is nonsingular, minimization of (3.2.20) yields

ΔU(k|k) = (AT W A+ R)−1AT WE0(k) (3.2.21)

where

E0(k) =[e10(k)T , e20(k)T , · · · , er0(k)T ]T ,

ei0(k) =[ei0(k + 1), ei0(k + 2), · · · , ei0(k + P )]T ,ei0(k + l) =yis(k + l)− yi0(k + l|k).

© 2010 b T l d F G LLC

Page 77: 1420085301 Predictive Control

3.2. Principle of DMC 61

yis(k + l) is the setpoint value at the future time k + l for the i-th output;yi0(k+ l|k) is the prediction on the i-th output at future time k+ l, when thecontrol moves for the time k and future sampling instants are kept invariant.

At each time k, implement the following control move:

Δu(k) = DE0(k) (3.2.22)

where

D =L(AT W A+ R)−1AT W ,

L =

⎢⎢⎢⎣

θ 0 · · · 00 θ · · · 0...

.... . .

...0 0 · · · θ

⎥⎥⎥⎦∈ Rm×mM , θ = [ 1 0 · · · 0 ] ∈ RM .

A simple selection of W and R is

W =diagW1,W2, · · · ,Wr, R = diagR1, R2, · · · , Rm,Wi =diagwi1, wi2, · · · , wiP , i ∈ 1, . . . , r,Rj =diagrj1, rj2, · · · , rjM, j ∈ 1, . . . ,m.

Taking R > 0 guarantees the nonsingularity of AT W A+ R.(iv) Fourth step: At the initial time k = 0, suppose the system is in

the steady-state. For startup of DMC we can take yi0(l|0) = yi(0) (l =1, 2, · · · , P + 1).

For each time k > 0, y0(k|k) can be calculated as

Y0(k|k) = Y0(k|k − 1) + A1ΔU(k − 1) + FΥ(k) (3.2.23)

where

Y0(k|k − 1) =[y10(k|k − 1)T , y20(k|k − 1)T , · · · , yr0(k|k − 1)T ]T ,

yi0(k|k − 1) =[yi0(k + 1|k − 1), yi0(k + 2|k − 1), · · · , yi0(k + P |k − 1)]T ,

ΔU(k − 1) =[Δu1(k − 1),Δu2(k − 1), · · · ,Δum(k − 1)]T ,

A1 =

⎢⎢⎢⎣

A111 A121 · · · A1m1

A211 A221 · · · A2m1

......

. . ....

Ar11 Ar21 · · · Arm1

⎥⎥⎥⎦,

Aij1 =[ sij2 sij3 · · · sij,P+1 ]T ,

© 2010 b T l d F G LLC

Page 78: 1420085301 Predictive Control

62 Chapter 3. Dynamic matrix control (DMC)

F =

⎢⎢⎢⎣

f1 0 · · · 00 f2 · · · 0...

.... . .

...0 0 · · · fr

⎥⎥⎥⎦,

fi =[fi1, fi2, · · · , fiP ]T ,

Υ(k) =[ε1(k), ε2(k), · · · , εr(k)]T ,εi(k) =yi(k)− yi(k|k − 1),

yi(k|k − 1) =yi0(k|k − 1) +r∑

j=1

sij1Δuj(k − 1). (3.2.24)

Remark 3.2.6. If, in A of (3.2.6) and Ap of (3.2.10), all the sl’s are r ×m-dimensional matrices, then the closed-form solution to DMC for the uncon-strained MIMO systems can be expressed as (3.2.8), rather than adoptingthe deduction manner as in section 3.2.3. However, if different inputs (out-puts) adopt different control horizons (prediction horizons), the expression in(3.2.23) will be more convenient.

3.2.4 Remarks on Matlab MPC Toolbox

In DMC provided in Matlab MPC Toolbox, the predicted process outputsy(k + 1|k), y(k + 2|k), · · · , y(k + P |k) depend on the current measurementy(k) and assumptions we make about the unmeasurable disturbances andmeasurement noise affecting the outputs.

For unconstrained plant, the linear time-invariant feedback control law canbe obtained (which can be solved by “mpccon” in Matlab):

Δu(k) = KDMCE0(k). (3.2.25)

For open-loop stable plants, nominal stability of the closed-loop system de-pends only on KDMC which in turn is affected by P , M , Wi, Rj , etc. Noprecise conditions on P , M , Wi, Rj exist which guarantee closed-loop sta-bility. In general, decreasing M relative to P makes the control action lessaggressive and tends to stabilize a system. For M = 1, nominal stability ofthe closed-loop system is guaranteed for any finite P and time invariant Wi

and Rj . More commonly, Rj is used as tuning parameter. IncreasingRj alwayshas the effect of making the control action less aggressive. We can obtain thestate-space description of the closed-loop system with the command “mpccl”and then determine the pole locations with “smpcpole.” The closed-loop sys-tem is stable if all the poles are inside or on the unit-circle.

The algorithm in Matlab MPC Toolbox can track the step-change setpointvalue without steady-state error. For Matlab MPC toolbox one can refer to[50].

© 2010 b T l d F G LLC

Page 79: 1420085301 Predictive Control

3.3. Constraint handling 63

3.3 Constraint handling

Before DMC is implemented (design stage) and in the real application of DMC(run stage), users can tune the following parameters:

(i) sampling interval Ts,

(ii) prediction horizon P , control horizon M , weighting matrices W , R orweighting coefficients wi, rj ,

(iii) the correction coefficients fi or fi,

(iv) modeling coefficients of the step response model,

(v) constraints, including input magnitude constraint (upper limit, lowerlimit), the upper bound of the control increment, the constraints on theintermediate variable (combined variable), etc.

In general, it does not need to often tune the modeling coefficients of thestep response model; the main reason is the same as that for the impulseresponse model (refer to section 2.2). The constraints in (v) are usually hardconstraints (i.e., constraints not violable). In the following we discuss how tohandle the constraint in DMC (take MIMO system as an example).

1. Output magnitude constraint yi,min ≤ yi(k + l|k) ≤ yi,max

At each optimization cycle, the output prediction is (3.2.19). Hence, wecan let the optimization problem satisfy the following constraint:

Ymin≤Y0(k|k) + AΔU(k|k)≤Ymax (3.3.1)

where

Ymin =[yT1,min, yT2,min, · · · , yTr,min]

T ,

yi,min =[yi,min, yi,min, · · · , yi,min]T ∈ RP ,

Ymax =[yT1,max, yT2,max, · · · , yTr,max]

T ,

yi,max =[yi,max, yi,max, · · · , yi,max]T ∈ RP .

2. The input increment constraint Δuj,min≤Δuj(k + l|k) = uj(k + l|k)−uj(k + l − 1|k)≤Δuj,max

We can let the optimization problem satisfy the following constraint:

ΔUmin ≤ ΔU(k|k)≤ΔUmax (3.3.2)

where

ΔUmin =[ΔuT1,min,ΔuT2,min, · · · ,Δum,minT ]T ,

Δuj,min =[Δuj,min,Δuj,min, · · · ,Δuj,min]T ∈ RM ,

ΔUmax =[ΔuT1,max,ΔuT2,max, · · · ,ΔuTm,max]

T ,

Δuj,max =[Δuj,max,Δuj,max, · · · ,Δuj,max]T ∈ RM .

© 2010 b T l d F G LLC

Page 80: 1420085301 Predictive Control

64 Chapter 3. Dynamic matrix control (DMC)

3. The input magnitude constraint uj,min≤uj(k + l|k)≤uj,max

We can let the optimization problem satisfy the following constraint:

Umin≤BΔU(k|k) + u(k − 1)≤Umax (3.3.3)

where

Umin =[uT1,min, uT2,min, · · · , um,minT ]T ,

uj,min =[uj,min, uj,min, · · · , uj,min]T ∈ RM ,

Umax =[uT1,max, uT2,max, · · · , um,maxT ]T ,

uj,max =[uj,max, uj,max, · · · , uj,max]T ∈ RM ,

B =diagB0, · · · , B0 (m blocks),

B0 =

⎢⎢⎢⎢⎣

1 0 · · · 0

1 1. . .

......

. . . . . . 01 · · · 1 1

⎥⎥⎥⎥⎦

∈ RM×M ,

u(k − 1) =[u1(k − 1)T , u2(k − 1)T , · · · , um(k − 1)T ]T ,

uj(k − 1) =[uj(k − 1), uj(k − 1), · · · , uj(k − 1)]T ∈ RM .

Equations (3.3.1)-(3.3.3) can be written in a uniform form as CΔU(k|k)≤c,where C and c are matrix and vector known at time k. DMC optimizationproblem considering these constraints can be written as

minΔU(k|k)

J(k) = ‖E(k|k)‖2W + ‖ΔU(k|k)‖2R , s.t. CΔU(k|k)≤c. (3.3.4)

Problem (3.3.4) is a quadratic optimization problem. The feedback lawsolution to the constrained quadratic optimization problem is, in general,nonlinear.

In Matlab MPC Toolbox, for DMC optimization problem for constrainedsystems one can adopt “cmpc.”

© 2010 b T l d F G LLC

Page 81: 1420085301 Predictive Control

Chapter 4

Generalized predictivecontrol (GPC)

In the 1980s, the adaptive control techniques, such as minimum variance adap-tive control, had been widely recognized and developed in the process controlarea. However, these adaptive control algorithms rely on models with highaccuracy which, to a large extent, limits the applicability in the complex in-dustrial processes. GPC was developed along the investigation of adaptivecontrol. GPC not only inherits the advantages of adaptive control for its ap-plicability in stochastic systems, on-line identification etc., but preserves theadvantages of predictive control for its receding-horizon optimization, lowerrequirement on the modeling accuracy, etc. GPC has the following character-istics:

(1) It relies on the traditional parametric models. Hence, there are fewerparameters in the system model. Note that MAC and DMC both applynon-parametric models, i.e., impulse response model and step responsemodel, respectively.

(2) It was developed along the investigation of adaptive control. It inheritsthe advantage of adaptive control but is more robust.

(3) The techniques of multi-step prediction, dynamic optimization and feed-back correction are applied. Hence, the control effect is better and moresuitable for industrial processes.

Due to the above advantages, GPC has been widely acknowledged both incontrol theory academia and in process control studies, which makes GPCthe most active MPC algorithm.

Section 4.1 is referred to in [63], [6]. Section 4.3 is referred to in [18].

65

© 2010 b T l d F G LLC

Page 82: 1420085301 Predictive Control

66 Chapter 4. Generalized predictive control (GPC)

4.1 Principle of GPC

4.1.1 Prediction model

Consider the following SISO CARIMA model:

A(z−1)y(k) = B(z−1)u(k − 1) +C(z−1)ξ(k)

Δ(4.1.1)

where

A(z−1) =1 + a1z−1 + · · ·+ anaz

−na , degA(z−1) = na,

B(z−1) =b0 + b1z−1 + · · ·+ bnb

z−nb , degB(z−1) = nb,

C(z−1) =c0 + c1z−1 + · · ·+ cncz

−nc , deg c(z−1) = nc;

z−1 is the backward shift operator, i.e., z−1y(k) = y(k−1), z−1u(k) = u(k−1);Δ = 1−z−1 is the difference operator; ξ(k) is the white noise sequence withzero mean value. For systems with q samples time delay, b0 ∼ bq−1 = 0, nb ≥ q.

Suppose C(z−1) = 1. Thus, (4.1.1) actually utilizes the impulse transferfunction to describe the controlled plant. The transfer function from the inputu to the output y is

G(z−1) =z−1B(z−1)A(z−1)

. (4.1.2)

In order to deduce the prediction y(k+j|k) via (4.1.1), let us first introducethe Diophantine equation

1 = Ej(z−1)A(z−1)Δ + z−jFj(z−1), (4.1.3)

where Ej(z−1), Fj(z−1) are polynomials uniquely determined by A(z−1) andlength j,

Ej(z−1) =ej,0 + ej,1z−1 + · · ·+ ej,j−1z

−(j−1),

Fj(z−1) =fj,0 + fj,1z−1 + · · ·+ fj,naz

−na .

Multiplying (4.1.1) by Ej(z−1)Δzj , and utilizing (4.1.3), we can write out theoutput prediction at time k + j,

y(k+ j|k) = Ej(z−1)B(z−1)Δu(k+ j− 1|k)+Fj(z−1)y(k)+Ej(z−1)ξ(k+ j).(4.1.4)

Pay attention to the formulations of Ej(z−1), Fj(z−1), it is known thatEj(z−1)B(z−1)Δu(k + j − 1|k) has relation with u(k + j − 1|k), u(k + j −2|k), · · · , Fj(z−1)y(k) has relation with y(k), y(k−1), · · · and Ej(z−1)ξ(k+j) has relation with ξ(k + j), · · · , ξ(k + 2), ξ(k + 1).

Since, at time k, the future noises ξ(k+i), i ∈ 1, . . . , j are unknown, themost suitable predicted value of y(k+ j) can be represented by the following:

y(k + j|k) = Ej(z−1)B(z−1)Δu(k + j − 1|k) + Fj(z−1)y(k). (4.1.5)

© 2010 b T l d F G LLC

Page 83: 1420085301 Predictive Control

4.1. Principle of GPC 67

In (4.1.5), denote Gj(z−1) = Ej(z−1)B(z−1). Combining with (4.1.3) yields

Gj(z−1) =B(z−1)A(z−1)Δ

[1− z−jFj(z−1)]. (4.1.6)

Let us introduce another Diophantine equation

Gj(z−1) = Ej(z−1)B(z−1) = Gj(z−1) + z−(j−1)Hj(z−1),

where

Gj(z−1) =gj,0 + gj,1z−1 + · · ·+ gj,j−1z

−(j−1),

Hj(z−1) =hj,1z−1 + hj,2z−2 + · · ·+ hj,nb

z−nb.

Then, applying (4.1.4)-(4.1.5) yields

y(k + j|k) =Gj(z−1)Δu(k + j − 1|k) +Hj(z−1)Δu(k) + Fj(z−1)y(k),(4.1.7)

y(k + j|k) =y(k + j|k) + Ej(z−1)ξ(k + j). (4.1.8)

All the equations (4.1.4), (4.1.5), (4.1.7) and (4.1.8) can be the predictionmodels of GPC. Thus, the future output can be predicted by applying theknown input, output and the future input.

4.1.2 Solution to the Diophantine equation

In order to predict the future output by applying (4.1.4) or (4.1.5), one hasto first know Ej(z−1), Fj(z−1). For different j ∈ 1, 2, . . ., this amountsto solve a set of Diophantine equations (4.1.3) in parallel, which involves aheavy computational burden. For this reason, [6] gave an iterative algorithmfor calculating Ej(z−1), Fj(z−1).

First, according to (4.1.3),

1 =Ej(z−1)A(z−1)Δ + z−jFj(z−1),

1 =Ej+1(z−1)A(z−1)Δ + z−(j+1)Fj+1(z−1).

Making subtractions from both sides of the above two equations yields

A(z−1)Δ[Ej+1(z−1)− Ej(z−1)] + z−j [z−1Fj+1(z−1)− Fj(z−1)] = 0.

Denote

A(z−1) =A(z−1)Δ = 1 + a1z−1 + · · ·+ anaz

−na + ana+1z−(na+1)

=1 + (a1 − 1)z−1 + · · ·+ (ana − ana−1)z−na − anaz−(na+1),

Ej+1(z−1)− Ej(z−1) = E(z−1) + ej+1,jz−j .

© 2010 b T l d F G LLC

Page 84: 1420085301 Predictive Control

68 Chapter 4. Generalized predictive control (GPC)

Then,

A(z−1)E(z−1) + z−j[z−1Fj+1(z−1)− Fj(z−1) + A(z−1)ej+1,j ] = 0. (4.1.9)

A necessary condition for (4.1.9) to be consistently satisfied is that all theitems in A(z−1)E(z−1) with order less than j should be equal to zeros. Sincethe coefficient for the first item in A(z−1) is 1, it is easy to obtain that thenecessary condition for consistently satisfying (4.1.9) is

E(z−1) = 0. (4.1.10)

Further, the necessary and sufficient condition for consistently satisfying(4.1.9) is that (4.1.10) and the following equation holds:

Fj+1(z−1) = z[Fj(z−1)− A(z−1)ej+1,j ]. (4.1.11)

Comparing the items with the same orders in both sides of (4.1.11), weobtain

ej+1,j =fj,0,fj+1,i =fj,i+1 − ai+1ej+1,j = fj,i+1 − ai+1fj,0, i ∈ 0, . . . , na − 1,fj+1,na =− ana+1ej+1,j = −ana+1fj,0.

This formulation for deducing the coefficients of Fj(z−1) can be written inthe vector form

fj+1 = Afj ,

where

fj+1 =[fj+1,0, · · · , fj+1,na ]T ,

fj =[fj,0, · · · , fj,na ]T ,

A =

⎢⎢⎢⎢⎢⎢⎣

1− a1 1 0 · · · 0

a1 − a2 0 1. . .

......

.... . .

. . . 0ana−1 − ana 0 · · · 0 1

ana 0 · · · 0 0

⎥⎥⎥⎥⎥⎥⎦

.

Moreover, the iterative formula for coefficients of Ej(z−1) is

Ej+1(z−1) = Ej(z−1) + ej+1,jz−j = Ej(z−1) + fj,0z

−j.

When j = 1, equation (4.1.3) is

1 = E1(z−1)A(z−1) + z−1F1(z−1).

© 2010 b T l d F G LLC

Page 85: 1420085301 Predictive Control

4.1. Principle of GPC 69

Hence, we should choose E1(z−1) = 1, F1(z−1) = z[1− A(z−1)] as the initialvalues of Ej(z−1), Fj(z−1). Thus, Ej+1(z−1) and Fj+1(z−1) can be iterativelycalculated by

fj+1 = Afi, f0 = [1, 0 · · · 0]T ,Ej+1(z−1) = Ej(z−1) + fj,0z

−j, E0 = 0.

(4.1.12)

From (4.1.10), it is shown that ej,i, i < j is not related with j. Hence,ei ej,i, i < j.

Remark 4.1.1. In (4.1.3), we can directly choose Ej(z−1) = e0 + e1z−1 +

· · · + ej−1z−(j−1). According to (4.1.12), simplifying ej,j−1 as ej−1 does not

affect the results.

Consider the second Diophantine equation. From (4.1.6) we know thatthe first j items of Gj(z−1) have no relation with j; the first j coefficients ofGj(z−1) are the unit impulse response values, which are denoted as g1, · · · , gj .Thus,

Gj(z−1) = Ej(z−1)B(z−1) = g1 + g2z−1 + · · ·+ gjz

−(j−1) + z−(j−1)Hj(z−1).

Therefore,gj,i = gi+1, i < j.

Since Gj(z−1) is the convolution of Ej(z−1) and B(z−1), it is easy to calculateGj(z−1) and, hence, the coefficients of Gj(z−1) and Hj(z−1) can be easilyobtained.

4.1.3 Receding horizon optimization

In GPC, the cost function at time k has the following form:

min J(k) = E

N2∑

j=N1

[y(k + j|k)− ys(k + j)]2 +Nu∑

j=1

λ(j)[Δu(k + j − 1|k)]2⎫

(4.1.13)where E• represents the mathematical expectation; ys is the desired value ofthe output; N1 andN2 are the starting and ending instant for the optimizationhorizon; Nu is the control horizon, i.e., the control moves after Nu steps keepinvariant,

u(k + j − 1|k) = u(k +Nu − 1|k), j > Nu;

λ(j) is the control weighting coefficient. For simplicity, in general, λ(j) issupposed to be a constant λ.

In the cost function (4.1.13), N1 should be larger than number of delayedintervals, N2 should be as large when the plant dynamics is sufficiently rep-resented (i.e., as large when the effect of the current control increment is

© 2010 b T l d F G LLC

Page 86: 1420085301 Predictive Control

70 Chapter 4. Generalized predictive control (GPC)

included). Since the multi-step prediction and optimization is adopted, evenwhen the delay is not estimated correctly or the delay is changed, one can stillachieve reasonable control from the overall optimization. This is the importantreason why GPC has robustness with respect to the modeling inaccuracy.

The above cost function is quite similar to that for DMC in Chapter 3,except that the stochastic systems are considered. In the cost function forDMC in Chapter 3, if we set the weighting coefficients wi’s before N1 aszeros, and those at and after N1 as 1, then we obtain the same cost function.Hence, for simplifying the notations, in the following discussion we supposeN1 = 1 and take N2 = N . If it is desired, then we can obtain different startinginstant for the optimization horizon by setting the coefficients wi as in DMC(of course, in the sequel, some results for N1 > 1 will be given).

In (4.1.13), the desired values for the output can be selected as in thereference trajectory of MAC, i.e.,

ys(k) = y(k), ys(k+ j) = αys(k+ j−1)+(1−α)ω, 0 < α < 1, j ∈ 1, . . . , N(4.1.14)

where α ∈ [0, 1) is called soften factor and ω is the output setpoint.

Applying the prediction model (4.1.5) yields

y(k + 1|k) =G1(z−1)Δu(k) + F1(z−1)y(k) = g1,0Δu(k|k) + f1(k)

y(k + 2|k) =G2(z−1)Δu(k + 1|k) + F2(z−1)y(k)=g2,0Δu(k + 1|k) + g2,1Δu(k|k) + f2(k)...

y(k +N |k) =GN (z−1)Δu(k +N − 1|k) + FN (z−1)y(k)=gN,0Δu(k +N − 1|k) + · · ·+ gN,N−NuΔu(k +Nu − 1|k)

+ · · ·+ gN,N−1Δu(k|k) + fN(k)=gN,N−NuΔu(k +Nu − 1|k) + · · ·+ gN,N−1Δu(k) + fN(k),

where

−12pt

f1(k) = [G1(z−1)− g1,0]Δu(k) + F1(z−1)y(k)f2(k) = z[G2(z−1)− z−1g2,1 − g2,0]Δu(k) + F2(z−1)y(k)

...fN (k) = zN−1[GN (z−1)− z−(N−1)gN,N−1 − · · · − gN,0]Δu(k) + FN (z−1)y(k)

⎪⎪⎪⎪⎪⎬

⎪⎪⎪⎪⎪⎭

(4.1.15)can be calculated by applying y(τ), τ ≤ k and u(τ), τ < k which areknown at time k.

© 2010 b T l d F G LLC

Page 87: 1420085301 Predictive Control

4.1. Principle of GPC 71

Denote

y(k|k) =[y(k + 1|k), · · · , y(k +N |k)]T ,Δu(k|k) =[Δu(k|k), · · · ,Δu(k +Nu − 1|k)]T ,←f (k) =[f1(k), · · · , fN (k)]T .

Notice that gj,i = gi+1(i < j) is the step response coefficient. Then

y(k|k) = GΔu(k|k)+←f (k) (4.1.16)

where

G =

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣

g1 0 · · · 0

g2 g1. . .

......

.... . . 0

gNu gNu−1 · · · g1...

.... . .

...gN gN−1 · · · gN−Nu+1

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦

.

By using y(k + j|k) to substitute y(k + j|k) in (4.1.13), the cost functioncan be written in the vector form,

J(k) = [y(k|k)− ω(k)]T [y(k|k)− ω(k)] + λΔu(k|k)TΔu(k|k),where

ω(k) = [ys(k + 1), · · · , ys(k +N)]T .

Thus, when λI + GTG is nonsingular, the optimal solution to cost function(4.1.13) is obtained as

Δu(k|k) = (λI +GTG)−1GT [ω(k)−←f (k)]. (4.1.17)

The real-time optimal control moves is given by

u(k) = u(k − 1) + dT [ω(k)−←f (k)], (4.1.18)

where dT is the first row of (λI +GTG)−1GT .One can further utilize (4.1.8) to write the output prediction in the fol-

lowing vector form:

y(k|k) = GΔu(k|k) + F (z−1)y(k) +H(z−1)Δu(k) + ε(k),

where

y(k|k) =[y(k + 1|k), · · · , y(k +N |k)]T ,F (z−1) =[F1(z−1), · · · , FN (z−1)]T ,

H(z−1) =[H1(z−1), · · · , HN (z−1)]T ,

ε(k) =[E1(z−1)ξ(k + 1), · · · , EN (z−1)ξ(k +N)]T .

© 2010 b T l d F G LLC

Page 88: 1420085301 Predictive Control

72 Chapter 4. Generalized predictive control (GPC)

Thus, the cost function is written as the vector form

J(k) = E[y(k|k)− ω(k)]T [y(k|k)− ω(k)] + λΔu(k|k)TΔu(k|k).Thus, when λI +GTG is nonsingular, the optimal control law is

Δu(k|k) = (λI +GTG)−1GT[

ω(k)− F (z−1)y(k)−H(z−1)Δu(k)]

.

Since the mathematical expectation is adopted, ε(k) does not appear in theabove control law. The real-time optimal control move is given by

u(k) = u(k − 1) + dT[

ω(k)− F (z−1)y(k)−H(z−1)Δu(k)]

. (4.1.19)

4.1.4 On-line identification and feedback correction

In GPC, the modeling coefficients are on-line estimated continuously basedon the real-time input/output data, and the control law is modified corre-spondingly. In DMC and MAC, it amounts to utilization of a time-invariantprediction model, combined with an additional error prediction model, so asto make an accurate prediction on the future output. In GPC, the error pre-diction model is not considered, and the model is on-line modified so as tomake an accurate prediction.

Remark 4.1.2. In DMC and MAC, since the non-parametric models are ap-plied, and the error prediction is invoked, the inherent heuristic nature exists.Here, the so-called “heuristic” means not depending on the strict theoreticaldeduction, which is like what we have pointed out in the last two chaptersthat the feedback correction depends on the users. If input/output model isselected, we can still apply the heuristic feedback correction as in DMC andMAC, i.e., use the current prediction error to modify the future output pre-dictions (some literature did it this way, although in this book we have notdone it this way when we introduce GPC).

Let us write (4.1.1) as

A(z−1)Δy(k) = B(z−1)Δu(k − 1) + ξ(k).

Then,Δy(k) = −A1(z−1)Δy(k) +B(z−1)Δu(k − 1) + ξ(k),

where A1(z−1) = A(z−1) − 1. Denote the modeling parameters and data asthe vector forms,

θ =[a1 · · · ana b0 · · · bnb]T ,

ϕ(k) =[−Δy(k − 1) · · · −Δy(k − na) Δu(k − 1) · · ·Δu(k − nb − 1]T .

Then,Δy(k) = ϕ(k)T θ + ξ(k).

© 2010 b T l d F G LLC

Page 89: 1420085301 Predictive Control

4.2. Some basic properties 73

Here, we can utilize the iterative least square method with fading memoryto estimate the parameter vector:

θ(k) = θ(k − 1) +K(k)[Δy(k)− ϕ(k)T θ(k − 1)]K(k) = P (k − 1)ϕ(k)[ϕ(k)TP (k − 1)ϕ(k) + μ]−1

P (k) = 1μ [I −K(k)ϕ(k)T ]P (k − 1)

⎭(4.1.20)

where 0 < μ < 1 is the forgetting factor usually chosen as 0.95 < μ < 1; K(k)is the weighting factor; P (k) is the positive-definite covariance matrix. In thestartup of the controller, it needs to set the initial values of the parametervector θ and covariance matrix P . Usually, we can set θ(−1) = 0, P (−1) = α2Iwhere α is a sufficiently large positive scalar. At each control step, first setupthe data vector, and then calculate K(k), θ(k) and P (k) by applying (4.1.20).

After the parameters in A(z−1), B(z−1) are obtained by identification, dT

and←f (k) in the control law (4.1.18) can be re-calculated and the optimal

control move can be computed.Algorithm 4.1 (Adaptive GPC)

The on-line implementation of GPC falls into the following steps:

Step 1. Based on the newly obtained input/output data, use the iterativeformula (4.1.20) to estimate the modeling parameters, so as to obtainA(z−1), B(z−1).

Step 2. Based on the obtained A(z−1), iteratively calculate Ej(z−1), Fj(z−1)according to (4.1.12).

Step 3. Based on B(z−1), Ej(z−1), Fj(z−1), calculate the elements gi’s of G,and calculate fi(k) according to (4.1.15).

Step 4. Re-compute dT , and calculate u(k) according to (4.1.18). Implementu(k) to the plant. This step involves the inversion of a Nu × Nu-dimensional matrix and, hence, the on-line computational burdenshould be considered in selecting Nu.

4.2 Some basic properties

In the last section, we chose N1 = 1. For N1 = 1, define

F (z−1) =[FN1(z−1), FN1+1(z−1), · · · , FN2(z

−1)]T ,

H(z−1) =[HN1(z−1), HN1+1(z−1), · · · , HN2(z

−1)]T ,←f (k) =[fN1(k), fN1+1(k), · · · , fN2(k)]

T ,

ω(k) =[ys(k +N1), · · · , ys(k +N2)]T ,

dT =[1, 0, · · · , 0](λI +GTG)−1GT ,

© 2010 b T l d F G LLC

Page 90: 1420085301 Predictive Control

74 Chapter 4. Generalized predictive control (GPC)

( )y kω Td M ∆

1

T−d H

T−d F

plant

Figure 4.2.1: The block diagram of GPC (z−1 omitted).

G =

⎢⎢⎢⎣

gN1 gN1−1 · · · gN1−Nu+1

gN1+1 gN1 · · · gN1−Nu+2

......

. . ....

gN2 gN2−1 · · · gN2−Nu+1

⎥⎥⎥⎦, gj = 0, ∀j ≤ 0.

Then, when λI + GTG is nonsingular, the real-time control law of GPC is

Δu(k) = dT [ω(k)−←f (k)], where

←f (k) is a vector composed of the past

input, past output and the current output.

Lemma 4.2.1. (The control structure of GPC) If we take ω(k) =[ω, ω, · · · , ω]T (i.e., the output setpoint is not softened), then the block dia-gram of GPC is shown in Figure 4.2.1, where M = [1, 1, · · · , 1]T .

Proof. Adopt Δu(k) = dT [ω(k)−←f (k)], and consider the structure of

(4.1.19). It is easy to obtain Figure 4.2.1.

Of course, if ω(k) = [ω, ω, · · · , ω]T is not taken, i.e., the soften techniqueis adopted, then the corresponding block diagram can also be obtained. Thestructure in Figure 4.2.1 is for future use.

Lemma 4.2.2. (The internal model control structure of GPC) If we takeω(k) = [ω, ω, · · · , ω]T , then the internal model control structure is shown inFigure 4.2.2.

Proof. This can be easily obtained by transformation of the block diagram.

The so-called internal model means “inside model” which coarsely indi-cates that the controller contains the model, or, the computer stores the sys-tem model.

Define

Δ←u (k) = [Δu(k − 1),Δu(k − 2), · · · ,Δu(k − nb)]T ,←y (k) = [y(k), y(k − 1), · · · , y(k − na)]T .

© 2010 b T l d F G LLC

Page 91: 1420085301 Predictive Control

4.2. Some basic properties 75

Controller part of GPC

ω yTd M T

1(1 )+ ∆d H

plant

1 T /z b a−− d F

T T/( )−d F d M

1 /z b a−

System model -

Figure 4.2.2: The internal model control structure of GPC (z−1 omitted).

Then the future output predictions y(k|k) = [y(k+N1|k), y(k+N1+1|k), · · · ,y(k +N2|k)]T can be represented as

y(k|k) = GΔu(k|k) +HΔ←u (k) + F

←y (k), (4.2.1)

where

H =

⎢⎢⎢⎣

hN1,1 hN1,2 · · · hN1,nb

hN1+1,1 hN1+1,2 · · · hN1+1,nb

......

. . ....

hN2,1 hN2,2 · · · hN2,nb

⎥⎥⎥⎦,

F =

⎢⎢⎢⎣

fN1,0 fN1,1 · · · fN1,na

fN1+1,0 fN1+1,1 · · · fN1+1,na

......

. . ....

fN2,0 fN2,1 · · · fN2,na

⎥⎥⎥⎦,

i.e., when λI +GTG is nonsingular, the optimal control move is

Δu(k) = dT[

ω(k)−HΔ←u (k)− F ←y (k)

]

.

Theorem 4.2.1. (The optimal cost value) Suppose ω(k) = 0. Then the opti-mum of GPC cost function is

J∗(k) =←f (k)T

[

I −G(λI +GTG)−1GT] ←f (k), (4.2.2)

J∗(k) = λ←f (k)T (λI +GGT )−1

←f (k), λ = 0, (4.2.3)

where←f (k) = HΔ

←u (k) + F

←y (k).

© 2010 b T l d F G LLC

Page 92: 1420085301 Predictive Control

76 Chapter 4. Generalized predictive control (GPC)

Proof. Substitute (4.1.16)-(4.1.17) into the cost function. By invoking an ap-propriate simplification, it yields (4.2.2). By using the following matrix inver-sion formula:

(Q+MTS)−1 = Q−1 −Q−1M(

SQ−1M + T−1)−1

SQ−1 (4.2.4)

where Q, M, T, S are matrices satisfying the corresponding requirement ofnonsingularity, and applying (4.2.2), (4.2.3) can be obtained.

4.3 Stability results not related to the concretemodel coefficients

This section is mainly for integrity, by showing the relationship between theclassical GPC and the special case of synthesis approach (Kleinman’s con-troller). It should be noted that constructing the relationship of industrialMPC with synthesis approach of MPC is not easy. The content in this sectionis limited (only suitable to SISO linear time-invariant unconstrained systems).The content in this section is relatively independent and readers can omit thissection. However, readers can review some knowledge about linear control the-ory in this section.

4.3.1 Transformation to the linear quadratic controlproblem

Consider the model in (4.1.1), C(z−1) = 1, which can be transformed into

A(z−1)y(k) = B(z−1)Δu(k) + ξ(k) (4.3.1)

where A(z−1) = 1 + a1z−1 + · · · + anAz

−nA , B(z−1) = b1z−1 + b2z

−2 +· · · + bnBz

−nB , nA = na + 1, nB = nb + 1. Suppose anA = 0, bnB = 0 and(

A(z−1), B(z−1))

is an irreducible pair. Take ω = [ω, ω, · · · , ω]T .In order to transform GPC into a receding horizon LQ problem, we do

not consider ξ(k) here (since noise does not affect stability), and (4.3.1) istransformed into the following state-space model (the observable canonicaland minimal realization model)

x(k + 1) = Ax(k) +BΔu(k), y(k) = Cx(k), (4.3.2)

where x ∈ Rn, n = max nA, nB, A =[ −αT −anIn−1 0

]

, B = [1 0 · · · 0]T ,

C =[

b1 b2 · · · bn]

, In−1 a n − 1-ordered identity matrix, αT =[a1 a2 · · · an−1

]

. When i > nA, ai = 0; when i > nB, bi = 0; whennA < nB, A is singular.

© 2010 b T l d F G LLC

Page 93: 1420085301 Predictive Control

4.3. Stability results not related to the concrete model coefficients 77

Since stability is considered, assuming ω = 0 is without loss of generality.Take

Qi =CTC, N1 ≤ i ≤ N2

0, i < N1, λj =

λ, 1 ≤ j ≤ Nu∞, j > Nu

.

Then (4.1.13) can be equivalently transformed into the objective function ofLQ problem:

J(k) = x(k+N2)TCTCx(k+N2)+N2−1∑

i=0

[

x(k + i)TQix(k + i) + λi+1Δu(k + i)2]

.

(4.3.3)By the standard solution of LQ problem, the control law can be obtained

asΔu(k) = − (λ+BTP1B

)−1BTP1Ax(k). (4.3.4)

This is the control law obtained by taking GPC as LQ problem, and is calledGPC’s LQ control law, where P1 can be obtained by Riccati iteration formula:

Pi = Qi +ATPi+1A−ATPi+1B(

λi+1 +BTPi+1B)−1

BTPi+1A,

i = N2 − 1, . . . , 2, 1, PN2 = CTC. (4.3.5)

Stability equivalence between the control law (4.3.4) and GPC’s routine con-trol law (4.1.18) is referred to [41].

Lemma 4.3.1. (Special case of Riccati iteration) When λj+1 = λ, Qj = 0,1 ≤ j ≤ i, applying (4.3.5) yields

P1 =(

AT)i

Pi+1 − Pi+1Ji+1

(

JTi+1Pi+1Ji+1 + λI)−1

JTi+1Pi+1)

Ai,

(4.3.6)where Ji+1 =

[

B AB · · · Ai−1B]

.

Proof. (By induction) See [8].

4.3.2 Tool for stability proof: Kleinman’s controller

Kleinman et al. have pointed out that, for systems represented by n-dimensional state space equation

x(k + 1) = Ax(k) +BΔu(k), (4.3.7)

the control law (called Kleinman’s controller)

Δu(k) = −γ−1BT(

AT)N

[N∑

h=m

AhBγ−1BT(

AT)h

]−1

AN+1x(k), (4.3.8)

where γ > 0, has the following stability properties (see [36], [42], [64]).

© 2010 b T l d F G LLC

Page 94: 1420085301 Predictive Control

78 Chapter 4. Generalized predictive control (GPC)

Lemma 4.3.2. (Stability of Kleinman’s controller) If the system is completelycontrollable and A is nonsingular, then the control law (4.3.8) stabilizes thesystem (4.3.7) iff N−m ≥ n−1, and is a deadbeat controller iff N−m = n−1.

Lemma 4.3.3. (Stability of Kleinman’s controller) If the system is completelycontrollable and A is singular, then the control law (4.3.8) stabilizes the system(4.3.7) iff N ≥ n−1, m = 0, and is a deadbeat controller iff N = n−1, m = 0.

The above two lemmas have close relation with the notion of controllabilityand, hence, their proofs are omitted. Kleinman’s controller was proposed earlyin the 1970s and, in the 1990s, it was included as a special case of synthesisapproach.

In the following, we deduce extended Kleiman’s controller for singularsystems. For this reason, we make a nonsingular transformation for (4.3.2)(including system (4.3.7)) which leads to

x(k + 1) = Ax(k) + BΔu(k), y(k) = Cx(k),

where A =[

A0 00 A1

]

, B =[

B0

B1

]

, C = [C0, C1], A0 nonsingular,

A1 =[

0 0Ip−1 0

]

∈ Rp×p, C1 =[

0 · · · 0 1]

, p the number of zero

eigenvalues in A, Ip−1 a p− 1-ordered identity matrix.For the above transformed system, Kleinman’s controller is designed only

for the subsystem A0, B0, and the following control law is constructed:

Δu(k) =[

−γ−1BT0(

AT0)N

[∑N

h=mAh0B0γ

−1BT0(

AT0)h]−1

AN+10 0

]

x(k),

(4.3.9)which is called extended Kleinman’s controller. Substitute (4.3.9) into x(k +1) = Ax(k) + BΔu(k), and note that (A0, B0) is completely controllableif (A,B) is completely controllable. Then the following conclusion can beobtained by virtue of Lemma 4.3.2.

Theorem 4.3.1. (Stability of extended Kleinman’s controller) If the system iscompletely controllable and A is singular, then the control law (4.3.9) stabilizesthe systems (4.3.7) iff N − m ≥ n − p − 1, and is a deadbeat controller iffN −m = n− p− 1.

Based on Lemmas 4.3.1-4.3.3 and Theorem 4.3.1, we will discuss closed-loop stability of GPC under sufficiently small λ for the following four cases:

(A) nA ≥ nB, N1 ≥ Nu,(B) nA ≤ nB, N1 ≤ Nu,(C) nA ≤ nB, N1 ≥ Nu,(D) nA ≥ nB, N1 ≤ Nu.

© 2010 b T l d F G LLC

Page 95: 1420085301 Predictive Control

4.3. Stability results not related to the concrete model coefficients 79

Applying (4.3.6), under certain conditions the control law (4.3.4) can betransformed into the form

Δu(k) = −BT (AT )N[

λP−1N+1 +

N∑

h=0

AhBBT(

AT)h

]−1

AN+1x(k). (4.3.10)

Then, when λP−1N+1 tends to be sufficiently small, stability conclusion of GPC

can be obtained by virtue of that for Kleinman’s controller (4.3.8). Moreover,for singular A, if A, B, C are substituted by A, B, C in Riccati iteration,then under certain conditions the control law (4.3.4) can be transformed intothe following form, by applying (4.3.6),

Δu(k) =[

−BT0(

AT0)N

[

λP−10,N+1 +

∑Nh=0A

h0B0BT0

(

AT0)h]−1

AN+10 0

]

x(k)

(4.3.11)

where the result of Riccati iteration is PN+1 =[

P0,N+1 00 0

]

with P0,N+1

a matrix having the same dimension with A0. Then, when λP−10,N+1 tends to

be sufficiently small, stability conclusion of GPC can be obtained by virtue ofthat for extended Kleinman’s controller (4.3.9).

Concretely speaking, by adding corresponding conditions and applying(4.3.6) and matrix inversion formula, we can transform (4.3.4) into the formof (4.3.10) under cases (A), (B) and (D), and into the form (4.3.11) under case(C). During the deduction, we will also demonstrate that PN+1 (or P0,N+1) isnonsingular for both λ = 0 and λ > 0. Thus, when λ tends to be sufficientlysmall, so does λP−1

N+1 (or λP−10,N+1), and (4.3.10) or (4.3.11) can be sufficiently

close to Kleinman’s controller (4.3.8) or (4.3.9).

4.3.3 GPC law resembling Kleinman’s controller

Lemma 4.3.4. When nA ≥ nB, choose N1 ≥ Nu, N2 −N1 ≥ n− 1. Then,

(i) for λ ≥ 0, PNu is nonsingular;

(ii) for λ > 0, GPC control law (4.3.4) can be transformed into

Δu(k) = −BT (AT )Nu−1

[

λP−1Nu

+Nu−1∑

h=0

AhBBT(

AT)h

]−1

ANux(k).

(4.3.12)

Proof. In feedback control law (4.3.4), P1 can be obtained by Riccati iteration(4.3.5); we discuss this in stages.

(s1) When N1 ≤ i < N2, iteration becomes Pi = CTC + ATPi+1A. SinceN2 −N1 ≥ n− 1 and the system is observable, PN1 is nonsingular.

© 2010 b T l d F G LLC

Page 96: 1420085301 Predictive Control

80 Chapter 4. Generalized predictive control (GPC)

(s2) When Nu ≤ i < N1, iteration becomes Pi = ATPi+1A. Since nA ≥nB, A, and consequently PNu , is nonsingular. Moreover, PNu is not affectedby λ.

(s3) When 1 ≤ i < Nu, iteration becomes

Pi = ATPi+1A−ATPi+1B(

λ+BTPi+1B)−1

BTPi+1A.

Utilizing (4.3.6) we obtain

P1 =(

AT)Nu−1

PNu − PNuJNu

(

JTNuPNuJNu + λI

)−1JTNu

PNu

ANu−1.

(4.3.13)Applying the matrix inversion formula (4.2.4) we obtain

P1 =(

AT)Nu−1 (

P−1Nu

+ λ−1JNuJTNu

)−1ANu−1;

substituting P1 into (4.3.4) and applying (4.2.4) once again we obtain (4.3.12).

Lemma 4.3.5. When nA ≤ nB, choose Nu ≥ N1, N2 −Nu ≥ n− 1. Then,

(i) for λ ≥ 0, PN1 is nonsingular;

(ii) for λ > 0, GPC control law (4.3.4) can be transformed into

Δu(k) = −BT (AT )N1−1

[

λP−1N1

+N1−1∑

h=0

AhBBT(

AT)h

]−1

AN1x(k).

(4.3.14)

Proof. The proof is similar to that of Lemma 4.3.4 and is omitted here. Detailsare in [8].

Lemma 4.3.6. When nA ≤ nB, let p = nB −nA and choose N1 ≥ Nu, N2−N1 ≥ n− p− 1, N2 −Nu ≥ n− 1. Then,

(a)-(i) for N1 − Nu ≥ p and λ ≥ 0, PNu =[

P0,Nu 00 0

]

where P0,Nu ∈R(n−p)×(n−p) is nonsingular;

(a)-(ii) for N1 − Nu ≥ p and λ > 0, GPC control law (4.3.4) can be trans-formed into

Δu(k) = −⎡

⎣BT0(

AT0)Nu−1

[

λP−10,Nu

+Nu−1∑

h=0

Ah0B0BT0

(

AT0)h

]−1

ANu0 0

× x(k); (4.3.15)

© 2010 b T l d F G LLC

Page 97: 1420085301 Predictive Control

4.3. Stability results not related to the concrete model coefficients 81

(b)-(i) for N1 − Nu < p and λ ≥ 0, PN1−p =[P0,N1−p 0

0 0

]

where

P0,N1−p ∈ R(n−p)×(n−p) is nonsingular;

(b)-(ii) for N1 − Nu < p and λ > 0, GPC control law (4.3.4) can be trans-formed into

Δu(k) = −⎡

⎣BT0(

AT0)N1−p−1

[

λP−10,N1−p +

N1−p−1∑

h=0

Ah0B0BT0

(

AT0)h

]−1

×AN1−p0 0

]

x(k). (4.3.16)

Proof. Take the transformation as illustrated before Theorem 4.3.1. For thetransformed system, P1 can be obtained by Riccati iteration.

(a)-(s1) When Nu ≤ i < N2, since N2 −N1 ≥ n− p− 1 and N1 −Nu ≥ p(note that these two conditions induce N2−Nu ≥ n−1), applying the special

form of (A, C) (for details refer to [8]) we can obtain PNu =[P0,Nu 0

0 0

]

,

where P0,Nu ∈ R(n−p)×(n−p) is nonsingular and P0,Nu is not affected by λ.(a)-(s2) When 1 ≤ i < Nu, the iteration becomes

Pi = ATPi+1A− ATPi+1B(

λ+ BTPi+1B)−1

BTPi+1A. (4.3.17)

It is not difficult to see that the iteration corresponds only to A0, B0. At the

end of the iteration, P1 =[P0,1 00 0

]

, hence, the control law (4.3.4) becomes

Δu(k) = − (λ+BT0 P0,1B0

)−1 [BT0 P0,1A0 0

]

x(k), (4.3.18)

where P0,1 can be obtained, by analogy to (4.3.13), as

P0,1 = (AT0 )Nu−1

P0,Nu − P0,NuJ0,Nu

(

JT0,NuP0,NuJ0,Nu + λI

)−1JT0,Nu

P0,Nu

×ANu−10 . (4.3.19)

The matrices in (4.3.19), except that they correspond to A0, B0, have thesame meanings as those in the proof of Lemma 4.3.4. By (4.3.18), (4.3.19)and deduction similar to (s3) in Lemma 4.3.4 we can obtain (4.3.15).

(b) The proof is similar to (a) and is omitted here.

Lemma 4.3.7. When nA ≥ nB, let q = nA−nB, N0 = minq, Nu −N1

and choose Nu ≥ N1, N2 −Nu ≥ n− q − 1, N2 −N1 ≥ n− 1. Then,

© 2010 b T l d F G LLC

Page 98: 1420085301 Predictive Control

82 Chapter 4. Generalized predictive control (GPC)

(i) for λ ≥ 0, if PN1 is taken as the initial value to calculate P ∗N1+N0 via

P ∗i = ATP ∗i+1A− ATP ∗i+1B(

λ+BTP ∗i+1B)−1

BTP ∗i+1A,

P ∗N1= PN1 , i = N1, N1 + 1, . . . , N1 +N0 − 1, (4.3.20)

then P ∗N1+N0 is nonsingular;

(ii) for λ > 0, GPC control law (4.3.4) can be transformed into

Δu(k) =−B (

AT)N1+N

0−1

⎣λP ∗−1N1+N0 +

N1+N0−1∑

h=0

AhBBT(

AT)h

−1

× AN1+N0x(k). (4.3.21)

Proof. The Riccati iteration is again directed to the original system.(s1) First we prove that, for λ > 0, P ∗N1+N0 is nonsingular.When Nu ≤ i < N2, by analogy to Lemma 4.3.4 we obtain rankPNu =

min n,N2 −Nu + 1.When N1 ≤ i < Nu, since the system is observable and N2 −N1 ≥ n− 1,

PN1 is nonsingular.When N1 ≤ i < N1 +N0, calculate P ∗N1+N0 by (4.3.20) with PN1 as initial

iteration value. Since rankP ∗N1+N0 ≥ rankPN1 , P ∗N1+N0 is nonsingular.(s2) Second we prove that, for λ = 0, P ∗N1+N0 is nonsingular.When Nu ≤ i < N2, since N2 − Nu ≥ n − q − 1, by analogy to Lemma

4.3.4 we obtain rankPNu ≥ n− q.When N1 ≤ i < Nu, since N2 − N1 ≥ n − 1, applying the last q zero

elements of C (for details refer to [8]) we obtain PN1 =[

P0,N1 00 0

]

, where

P0,N1 ∈ R(n−N0)×(n−N0) is nonsingular.When N1 ≤ i < N1 + N0, calculate P ∗N1+N0 by (4.3.20) with PN1 as the

initial value, then P ∗N1+N0 is nonsingular (for details refer to [8]).(s3) When 1 ≤ i < N1 +N0, (4.3.20) is applied for iteration while P ∗N1+N0

is taken as initial value, that is

P ∗i = ATP ∗i+1A−ATP ∗i+1B(

λ+BTP ∗i+1B)−1

BTP ∗i+1A, i

= N1 +N0 − 1, . . . 2, 1. (4.3.22)

The iterated matrices will satisfy P ∗j = Pj , 1 ≤ j ≤ N1. Then (4.3.6) is alsoapplicable. By proof analogous to Lemma 4.3.4 we obtain (4.3.21).

4.3.4 Stability based on Kleinman’s controller

Based on Lemmas 4.3.4-4.3.7, we will discuss how GPC’s state feedback con-trol law approaches Kleinman’s controller or its extended form when λ tendsto be sufficiently small.

© 2010 b T l d F G LLC

Page 99: 1420085301 Predictive Control

4.3. Stability results not related to the concrete model coefficients 83

Theorem 4.3.2. There exists a sufficiently small λ0 such that for any 0 <λ < λ0 the closed-loop system of GPC is stable if the following condition issatisfied:

N1 ≥ nB, Nu ≥ nA, N2 −Nu ≥ nB − 1, N2 −N1 ≥ nA − 1. (4.3.23)

Proof. Condition (4.3.23) is combined by the following four conditions:

(i) nA ≥ nB, N1 ≥ Nu ≥ nA, N2 −N1 ≥ nA − 1;

(ii) nA ≤ nB, Nu ≥ N1 ≥ nB, N2 −Nu ≥ nB − 1;

(iii) nA ≤ nB,N1 ≥ Nu ≥ nA,N1 ≥ nB,N2−N1 ≥ nA−1,N2−Nu ≥ nB−1;

(iv) nA ≥ nB,Nu ≥ N1 ≥ nB,Nu ≥ nA,N2−N1 ≥ nA−1,N2−Nu ≥ nB−1.

They correspond to the cases (A)-(D) mentioned in section 4.3.2, respectively,and will be discussed one by one in the following.

(A) According to Lemma 4.3.4, GPC control law (4.3.4) has the form(4.3.12)) as nA ≥ nB, N1 ≥ Nu, N2−N1 ≥ nA−1, λ > 0. Furthermore, sincePNu is nonsingular for λ ≥ 0, when λ tends to be sufficiently small, (4.3.12)tends to Kleinman’s controller

Δu(k) = −BT (AT )Nu−1

[Nu−1∑

h=0

AhBBT(

AT)h

]−1

ANux(k). (4.3.24)

Thus, by Lemma 4.3.2, the closed-loop system is stable when Nu−1 ≥ nA−1,i.e., when Nu ≥ nA. Combining these conditions yields condition (i).

(B) According to Lemma 4.3.5, GPC control law (4.3.4) has the form(4.3.14) as nA ≤ nB, Nu ≥ N1, N2−Nu ≥ nB − 1, λ > 0. Furthermore, sincePN1 is nonsingular for λ ≥ 0, when λ tends to be sufficiently small, (4.3.14)tends to Kleinman’s controller

Δu(k) = −BT (AT )N1−1

[N1−1∑

h=0

AhBBT(

AT)h

]−1

AN1x(k). (4.3.25)

Thus, by Lemma 4.3.3, the closed-loop system is stable when N1−1 ≥ nB−1,i.e., when N1 ≥ nB. Combining these conditions leads to condition (ii).

(C) According to Lemma 4.3.6, when nA ≤ nB , N1 ≥ Nu, N2 − N1 ≥nA − 1, N2 −Nu ≥ nB − 1, λ > 0,

(a) if N1 −Nu ≥ nB − nA, GPC control law (4.3.4) has the form (4.3.15).Furthermore, since P0,Nu is nonsingular for λ ≥ 0, when λ tends to be suffi-ciently small, (4.3.15) tends to the extended Kleinman’s controller

Δu(k) = −[

BT0(AT0

)Nu−1[∑Nu−1h=0 Ah0B0BT0

(AT0

)h]−1

ANu0 0

]

x(k).

(4.3.26)

© 2010 b T l d F G LLC

Page 100: 1420085301 Predictive Control

84 Chapter 4. Generalized predictive control (GPC)

Thus, by Theorem 4.3.1, the closed-loop system is stable whenNu−1 ≥ nA−1,i.e., when Nu ≥ nA.

(b) if N1 −Nu < nB − nA, similarly (4.3.16) tends to the extended Klein-man’s controller

Δu(k) = −[

BT0(

AT0)N1−p−1

[∑N1−p−1

h=0 Ah0B0BT0

(

AT0)h]−1

AN1−p0 0

]

x(k).

(4.3.27)Thus, by Theorem 4.3.1, the closed-loop system is stable when N1 − p− 1 ≥nB − p− 1, i.e., when N1 ≥ nB. It is not difficult to verify that combining theconditions in both (a) and (b) yields condition (iii).

(D) According to Lemma 4.3.7, GPC control law (4.3.4) has the form(4.3.21) as nA ≥ nB, Nu ≥ N1, N2 − Nu ≥ nB − 1, N2 − N1 ≥ nA − 1,λ > 0. Furthermore, since P ∗N1+N0 is nonsingular for λ ≥ 0, when λ tends tobe sufficiently small, (4.3.21) tends to Kleinman’s controller

Δu(k) = −B (

AT)N1+N

0−1

N1+N0−1∑

h=0

AhBBT(

AT)h

−1

AN1+N0x(k).

(4.3.28)Thus, by Lemma 4.3.2, the closed-loop system is stable when N1 +N0 − 1 ≥nA − 1, i.e., when min N1 + nA − nB, Nu ≥ nA. It is not difficult to verifythat combining all these conditions gives condition (iv).

Furthermore, by applying the dead beat control properties in Lemmas4.3.2, 4.3.3 and Theorem 4.3.1 and through deduction analogous to Theorem4.3.2, the following dead beat property of GPC can be obtained.

Theorem 4.3.3. Suppose ξ(k) = 0. GPC is a dead beat controller if eitherof the following two conditions is satisfied :

(i) λ = 0, Nu = nA, N1 ≥ nB, N2 −N1 ≥ nA − 1;

(ii) λ = 0, Nu ≥ nA, N1 = nB, N2 −Nu ≥ nB − 1.

Remark 4.3.1. Theorem 4.3.2 investigates closed-loop stability of GPC un-der sufficiently small λ, while Theorem 4.3.3 the deadbeat property of GPCunder λ = 0. If we fix other conditions in Theorem 4.3.3 but λ > 0 be suffi-ciently small, then GPC does not have deadbeat property any more, but theclosed-loop system is stable, that is, this results in a part of Theorem 4.3.2.However Theorem 4.3.2 cannot cover Theorem 4.3.3 by taking λ = 0 because,when λ = 0, the conditions in Theorem 4.3.2 cannot guarantee the solvabil-ity of GPC control law. Therefore, Theorem 4.3.3 can be taken as deadbeatconclusion deduced on the basis of Theorem 4.3.2, letting λ = 0 and consider-ing solvability conditions. Theorem 4.3.3 considers the necessity of solvabilityand, hence, cannot be simply covered by Theorem 4.3.2. These two theoremsestablish the overall equivalence relationship between Kleinman’s controller

© 2010 b T l d F G LLC

Page 101: 1420085301 Predictive Control

4.4. Cases of multivariable systems and constrained systems 85

(including the extended) and GPC from closed-loop stability to the deadbeatproperty. Using Kleinman’s controller to investigate stability and deadbeatproperty relates only to system order and not to concrete model coefficients.

4.4 Cases of multivariable systems and con-strained systems

4.4.1 Multivariable GPC

For a system with m inputs and r outputs, GPC law is a generalization ofthe SISO case. Then, each possible pair of input and output must adopt theDiophantine equation as in (4.1.3) and definition as in (4.1.6). Suppose theorder of the model and the horizons are the same as the SISO case. Based on(4.2.1), the output prediction can be given according to the following steps.

(i) First step: Suppose only the j-th input is changed and other inputskeep invariant. Then considering the i-th output yields

yij(k|k) = GijΔuj(k|k) +HijΔ←u j (k) +

r∑

l=1

Fil←y l (k), (4.4.1)

where

yij(k|k) = [yij(k +N1|k), yij(k +N1 + 1|k), · · · , yij(k +N2|k)]T ,Δuj(k|k) =[Δuj(k|k), · · · ,Δuj(k +Nu − 1|k)]T ,Δ←u j (k) = [Δuj(k − 1),Δuj(k − 2), · · · ,Δuj(k − nb)]T ,←y l (k) = [yl(k), yl(k − 1), · · · , yl(k − na)]T ,

Gij =

⎢⎢⎢⎣

gij,N1 gij,N1−1 · · · gij,N1−Nu+1

gij,N1+1 gij,N1 · · · gij,N1−Nu+2

......

. . ....

gij,N2 gij,N2−1 · · · gij,N2−Nu+1

⎥⎥⎥⎦, gij,l = 0, ∀l ≤ 0,

Hij =

⎢⎢⎢⎣

hij,N1,1 hij,N1,2 · · · hij,N1,nb

hij,N1+1,1 hij,N1+1,2 · · · hij,N1+1,nb

......

. . ....

hij,N2,1 hij,N2,2 · · · hij,N2,nb

⎥⎥⎥⎦,

Fil =

⎢⎢⎢⎣

fil,N1,0 fil,N1,1 · · · fil,N1,na

fil,N1+1,0 fil,N1+1,1 · · · fil,N1+1,na

......

. . ....

fil,N2,0 fil,N2,1 · · · fil,N2,na

⎥⎥⎥⎦.

(ii) Second step: Suppose all the control inputs may be changed. Then,

© 2010 b T l d F G LLC

Page 102: 1420085301 Predictive Control

86 Chapter 4. Generalized predictive control (GPC)

considering the i-th output, applying the superposition principle yields

yi(k|k) =m∑

j=1

GijΔuj(k|k) +m∑

j=1

HijΔ←u j (k) +

r∑

l=1

Fil←y l (k), (4.4.2)

where

yi(k|k) = [yi(k +N1|k), yi(k +N1 + 1|k), · · · , yi(k +N2|k)]T .(iii) Third step: Considering all the inputs and outputs yields

Y (k|k) = GΔU(k|k) + HΔ←U (k) + F

←Y (k), (4.4.3)

where

Y (k|k) =[y1(k|k)T , y2(k|k)T , · · · , yr(k|k)T ]T ,

ΔU(k|k) =[Δu1(k|k)T ,Δu2(k|k)T , · · · ,Δum(k|k)T ]T ,

Δ←U (k) =[Δ

←u1 (k)T ,Δ

←u2 (k)T , · · · ,Δ ←

um (k)T ]T ,←Y (k) =[

←y 1 (k)T ,

←y 2 (k)T , · · · ,←y r (k)T ]T ,

G =

⎢⎢⎢⎣

G11 G12 · · · G1m

G21 G22 · · · G2m

......

. . ....

Gr1 Gr2 · · · Grm

⎥⎥⎥⎦,

H =

⎢⎢⎢⎣

H11 H12 · · · H1m

H21 H22 · · · H2m

......

. . ....

Hr1 Hr2 · · · Hrm

⎥⎥⎥⎦,

F =

⎢⎢⎢⎣

F11 F12 · · · H1r

F21 F22 · · · F2r

......

. . ....

Fr1 Fr2 · · · Frr

⎥⎥⎥⎦.

Remark 4.4.1. If, in (4.2.1), the elements g, h, f in G, H, F are allr × m-dimensional matrices, then the closed-form solution to the uncon-strained MIMO GPC can be written in the form of Δu(k) = (λI+GTG)−1GT[

ω(k)−HΔ←u (k)− F ←y (k)

]

, rather than as that in section 4.4.1. However,if for different inputs (outputs), different control horizons (prediction horizons)are adopted, and/or different input/output models have different orders, thenthe expression in (4.4.3) will be more convenient.

Suppose the criterion for optimization of ΔU(k|k) is to minimize the fol-lowing cost function:

J(k) = ‖Y (k|k)− Ys(k)‖2W + ‖ΔU(k|k)‖2Λ (4.4.4)

© 2010 b T l d F G LLC

Page 103: 1420085301 Predictive Control

4.4. Cases of multivariable systems and constrained systems 87

where W ≥ 0 and Λ ≥ 0 are symmetric matrices;

Ys(k) =[y1s(k)T , y2s(k)T , · · · , yrs(k)T ]T ,

yis(k) = [yis(k +N1), yis(k +N1 + 1), · · · , yis(k +N2)]T ;

yis(k + l) is the setpoint value for the i-th output at future time k + l.Then, when GT W G+ Λ is nonsingular, minimization of (4.4.4) yields

ΔU(k|k) = (GT W G+ Λ)−1GT W [Ys(k)− HΔ←U (k)− F ←

Y (k)]. (4.4.5)

At each time k, implement the following control move:

Δu(k) = D[Ys(k)− HΔ←U (k)− F ←

Y (k)], (4.4.6)

where

D =L(GT W G+ Λ)−1GT W ,

L =

⎢⎢⎢⎣

θ 0 · · · 00 θ · · · 0...

.... . .

...0 0 · · · θ

⎥⎥⎥⎦∈ Rm×mNu , θ = [ 1 0 · · · 0 ] ∈ RNu .

A simple selection of W and Λ is

W =diagW1,W2, · · · ,Wr, Λ = diagΛ1,Λ2, · · · ,Λm,Wi =diagwi(N1), wi(N1 + 1), · · · , wi(N2), i ∈ 1, . . . , r,Λj =diagλj(1), λj(2), · · · , λj(Nu), j ∈ 1, . . . ,m.

Taking Λ > 0 guarantees nonsingularity of GT W G+ Λ.

4.4.2 Constraint handling

In the following, we discuss how to handle constraint in GPC (take MIMOsystem as an example).

1. Output magnitude constraint yi,min ≤ yi(k + l|k) ≤ yi,max

At each optimization instant, the output prediction is (4.4.3). Hence, wecan let the optimization problem satisfy the following constraint:

Ymin ≤ GΔU(k|k) + HΔ←U (k) + F

←Y (k) ≤ Ymax, (4.4.7)

where

Ymin =[yT1,min, yT2,min, · · · , yTr,min]T ,

yi,min =[yi,min, yi,min, · · · , yi,min]T ∈ RN2−N1+1,

Ymax =[yT1,max, yT2,max, · · · , yTr,max]

T ,

yi,max =[yi,max, yi,max, · · · , yi,max]T ∈ RN2−N1+1.

© 2010 b T l d F G LLC

Page 104: 1420085301 Predictive Control

88 Chapter 4. Generalized predictive control (GPC)

2. Input increment constraints Δuj,min ≤ Δuj(k + l|k) = uj(k + l|k) −uj(k + l − 1|k) ≤ Δuj,max

We can let the optimization problem satisfy the following constraint:

ΔUmin ≤ ΔU(k|k) ≤ ΔUmax, (4.4.8)

where

ΔUmin =[ΔuT1,min,ΔuT2,min, · · · ,ΔuTm,min]

T ,

Δuj,min =[Δuj,min,Δuj,min, · · · ,Δuj,min]T ∈ RNu,

ΔUmax =[ΔuT1,max,ΔuT2,max, · · · ,ΔuTm,max]

T ,

Δuj,max =[Δuj,max,Δuj,max, · · · ,Δuj,max]T ∈ RNu .

3. Input magnitude constraint uj,min ≤ uj(k + l|k) ≤ uj,max

We can let the optimization problem satisfy the following constraint:

Umin ≤ BΔU(k|k) + u(k − 1) ≤ Umax, (4.4.9)

where

Umin =[uT1,min, uT2,min, · · · , uTm,min]

T ,

uj,min =[uj,min, uj,min, · · · , uj,min]T ∈ RNu,

Umax =[uT1,max, uT2,max, · · · , uTm,max]

T ,

uj,max =[uj,max, uj,max, · · · , uj,max]T ∈ RNu ,

B =diagB0, · · · , B0 (m blocks),

B0 =

⎢⎢⎢⎢⎣

1 0 · · · 0

1 1. . .

......

. . . . . . 01 · · · 1 1

⎥⎥⎥⎥⎦

∈ RNu×Nu ,

u(k − 1) =[u1(k − 1)T , u2(k − 1)T , · · · , um(k − 1)T ]T ,

uj(k − 1) =[uj(k − 1), uj(k − 1), · · · , uj(k − 1)]T ∈ RNu .

Equations (4.4.7)-(4.4.9) can be written in the uniform manner asCΔU(k|k) ≤ c, where C and c are matrix and vector known at time k. GPCoptimization problem considering these constraints can be written as

minΔU(k|k)

J(k) = ‖Y (k|k)− Ys(k)‖2W + ‖ΔU(k|k)‖2Λ , s.t. CΔU(k|k) ≤ c.(4.4.10)

Problem (4.4.10) is a quadratic optimization problem which is in the sameform as DMC.

© 2010 b T l d F G LLC

Page 105: 1420085301 Predictive Control

4.5. GPC with terminal equality constraint 89

4.5 GPC with terminal equality constraint

GPC with terminal equality constraint is a special synthesis approach of MPC.The main results in this section will be restricted to SISO linear deterministictime-invariant unconstrained systems. The content of this section is indepen-dent. Readers can omit this section. However, some linear control techniquescan be seen in this section.

Stability was not guaranteed in the routine GPC. This has been overcomesince the 1990s with new versions of GPC. One idea is that stability of theclosed-loop system could be guaranteed if in the last part of the predictionhorizon the future outputs are constrained at the desired setpoint and theprediction horizon is properly selected. The obtained predictive control is thepredictive control with terminal equality constraint, or SIORHC (stabilizinginput/output receding horizon control; see [51]) or CRHPC (constrained re-ceding horizon predictive control; see [7]).

Consider the model the same as in section 4.3. ξ(k) = 0. At sampling timek the objective function of GPC with terminal equality constraint is

J =N1−1∑

i=N0

qiy(k + i|k)2 +Nu∑

j=1

λjΔu2(k + j − 1|k), (4.5.1)

s.t. y(k + l|k) = 0, l ∈ N1, . . . , N2, (4.5.2)Δu(k + l − 1|k) = 0, l ∈ Nu + 1, . . . , N2 (4.5.3)

where qi ≥ 0 and λj ≥ 0 are the weighting coefficients, N0, N1 and N1, N2 arethe starting and end points of the prediction horizon and constraint horizonrespectively, and Nu is the control horizon. Other notations: Ii is i-orderedidentity matrix,

Wo =[CT ATCT · · · (AT )n−1CT ]T ,

Wi =[Ai−1B · · · AB B],

ΔUi(k) =[Δu(k) · · · Δu(k + i− 1|k)]T .In deducing the deadbeat properties of GPC with terminal equality con-straints, we apply the following procedure:

(a) Substitute x(k +N1|k) by x(k) and ΔUi(k), where i = Nu, nA or N1.

(b) Express (4.5.2) by x(k+N1|k), but if N1 < Nu, then express (4.5.2) byx(k+N1|k) and [Δu(k+N1|k) Δu(k+N1+1|k) · · · Δu(k+Nu−1|k)].

(c) Solve Δu(k) as Ackermann’s formula for deadbeat control.

Lemma 4.5.1. Consider the completely controllable single input system x(k+1) = Ax(k)+Bu(k). By adopting the following controller (called Ackermann’sformula):

u(k) = −[0 · · · 0 1][B AB An−1B]−1Anx(k),

© 2010 b T l d F G LLC

Page 106: 1420085301 Predictive Control

90 Chapter 4. Generalized predictive control (GPC)

the closed-loop system is deadbeat stable.

Actually, Ackermann’s formula has close relation with the notion of con-trollability and, hence, more details for this formula are omitted here.

Lemma 4.5.2. Under the following conditions the closed-loop system of GPCwith terminal equality constraint is deadbeat stable:

nA < nB, Nu = nA, N1 ≥ nB, N2 −N1 ≥ nA − 1. (4.5.4)

Proof. Firstly, since N1 > Nu,

x(k +N1|k) = AN1x(k) +AN1−NuWNuΔUNu(k). (4.5.5)

Take a nonsingular linear transformation to (4.3.2), we can obtain

x(k + 1) = Ax(k) + BΔu(k), y(k) = Cx(k)

where x = [xT0 xT1 ]T , A = block-diagA0, A1, B = [BT0 BT1 ]T and C =[C0 C1], with A0 ∈ RnA×nA nonsingular, all the eigenvalues of A1 zero. DenotenB = nA + p, then A1 ∈ Rp×p. Since N1 ≥ nB and Nu = nA, Ah1 = 0∀h ≥ N1 −Nu. Then (4.5.5) becomes[x0(k +N1|k)x1(k +N1|k)

]

=[

AN10 00 0

] [x0(k)x1(k)

]

+[

AN1−10 B0 · · · AN1−Nu

0 B0

0 · · · 0

]

×ΔUNu(k). (4.5.6)

According to (4.5.6), x1(k+N1|k) = 0 is automatically satisfied. Therefore,considering deadbeat control of (4.3.2) is equivalent to considering deadbeatcontrol of its subsystem A0, B0, C0. Further, consider N2 −N1 = nA − 1,then (4.5.2) becomes

⎢⎢⎢⎣

C0 C1

C0A0 C1A1

......

C0AnA−10 C1A

nA−11

⎥⎥⎥⎦

[

x0(k +N1|k)0

]

= 0. (4.5.7)

Since (A0, C0) is observable, imposing (4.5.7) is equivalent to lettingx0(k +N1|k) = 0. Then (4.5.6) becomes

0 = ANu0 x0(k) +W0,NuΔUNu(k) (4.5.8)

whereW0,j = [Aj−10 B0 · · · A0B0 B0], ∀j ≥ 1. By applying (4.5.8), the optimal

control law of GPC with terminal equality constraint is given by:

Δu(k) = − [ 0 · · · 0 1] [

B0 A0B0 · · · ANu−10 B0

]−1ANu

0 x0(k).(4.5.9)

Since Nu = nA, (4.5.9) is Ackermann’s formula for deadbeat control ofA0, B0, C0.

© 2010 b T l d F G LLC

Page 107: 1420085301 Predictive Control

4.5. GPC with terminal equality constraint 91

Lemma 4.5.3. Under the following conditions the closed-loop system of GPCwith terminal equality constraint is deadbeat stable:

nA < nB, Nu ≥ nA, N1 = nB, N2 −Nu ≥ nB − 1. (4.5.10)

Proof. (a) N1 ≥ Nu. For Nu = nA, the conclusion follows from Lemma 4.5.2.For Nu > nA, take a nonsingular transformation the same as in Lemma 4.5.2,then

[x0(k +N1|k)x1(k +N1|k)

]

=[

AN10 00 0

] [x0(k)x1(k)

]

+[AN1−1

0 · · · Ap0B0 Ap−10 B0 · · · AN1−Nu

0 B0

0 · · · 0 Ap−11 B1 · · · AN1−Nu

1 B1

]

ΔUNu(k).

(4.5.11)

Suppose A1 =[

0 Ip−1

0 0

]

and B1 = [0 · · · 0 1]T , then

[Ap−11 B1 · · · AN1−Nu

1

B1] =[INu−nA

0

]

. Denote x1 = [xT2 xT3 ]T , where dim x2 = Nu − nA and

dimx3 = N1 − Nu. According to (4.5.11), x3(k + N1|k) = 0 is automati-cally satisfied. Therefore, considering deadbeat control of (4.3.2) is equivalentto considering deadbeat control of its partial states [xT0 xT2 ]. Further, sup-pose C1 = [c11 c12 · · · c1p], consider N2 − N1 = Nu − 1 (i.e., N1 = nB,N2 −Nu = nB − 1), then (4.5.2) becomes⎡

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣

C0

C0A0

...C0A

Nu−nA−10

C0ANu−nA0...

C0ANu−10

∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣

c11 c12 · · · c1Nu−nA

0 c11 · · · c1Nu−nA−1

......

. . ....

0 0 · · · c110 0 · · · 0...

.... . .

...0 0 · · · 0

∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣

· · · · · · c1p· · · · · · c1p−1

. . . . . ....

· · · · · · c1p−Nu+nA+1

c11 · · · · · ·...

. . ....

0 · · · ∗

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦

×⎡

x0(k +N1|k)x2(k +N1|k)

0

⎦ = 0. (4.5.12)

Since (A0, C0) is observable and c11 = 0,

⎢⎢⎢⎢⎢⎢⎣

C0 c11 · · · c1Nu−nA

......

. . ....

C0ANu−nA−10 0 · · · c11

......

. . ....

C0ANu−10 0 · · · 0

⎥⎥⎥⎥⎥⎥⎦

is nonsingular. Therefore, imposing (4.5.12) is equivalent to let [xT0 (k +

© 2010 b T l d F G LLC

Page 108: 1420085301 Predictive Control

92 Chapter 4. Generalized predictive control (GPC)

N1|k) xT2(k+N1|k)] = 0. According to (4.5.11), [Δu(k+nA|k) · · · Δu(k+Nu−1|k)]T =x2(k +N1|k) = 0. Therefore, (4.5.11) becomes

0 = AnA0 x0(k) +W0,nAΔUnA(k). (4.5.13)

According to (4.5.13), the optimal control law is given by:

Δu(k) = − [ 0 · · · 0 1]

× [ B0 A0B0 · · · AnA−10 B0

]−1AnA

0 x0(k) (4.5.14)

which is Ackermann’s formula for deadbeat control of A0, B0, C0. There-fore, (4.3.2) will be deadbeat stable.

(b) N1 < Nu. Firstly,

x(k +N1|k) = AN1x(k) +WN1ΔUN1(k). (4.5.15)

Since N1 = n and N2 − Nu ≥ n− 1, N2 − N1 ≥ n + Nu −N1 − 1. ConsiderN2 −N1 = n+Nu −N1 − 1, then (4.5.2) becomes

⎢⎢⎢⎢⎢⎢⎢⎢⎣

C 0 · · · 0CA CB · · · 0...

.... . .

...CANu−N1 CANu−N1−1B · · · CB

......

. . ....

CAn+Nu−N1−1 CAn+Nu−N1−2B · · · CAn−1B

⎥⎥⎥⎥⎥⎥⎥⎥⎦

×

⎢⎢⎢⎢⎢⎣

x(k +N1|k)Δu(k +N1|k)

Δu(k +N1 + 1|k)...

Δu(k +Nu − 1|k)

⎥⎥⎥⎥⎥⎦

= 0. (4.5.16)

Substituting (4.5.15) into (4.5.16) obtains⎡

⎢⎢⎢⎣

Wo

CAN1

...CANu−1

⎥⎥⎥⎦AN1x(k) +

⎢⎢⎢⎣

W0WN1 G1⎡

⎢⎣

CAN1

...CANu−1

⎥⎦WN1 G2

⎥⎥⎥⎦×ΔUNu(k) = 0,

(4.5.17)where G1 and G2 are matrices of the corresponding parts in (4.5.16).

Denote J as

J =N1−1∑

i=N0

qiy(k + i|k)2 +N1∑

j=1

λjΔu2(k + j − 1|k) +Nu∑

j=N1+1

λjΔu2(k + j − 1|k)

= J1 +Nu∑

j=N1+1

λjΔu2(k + j − 1|k) = J1 + J2. (4.5.18)

© 2010 b T l d F G LLC

Page 109: 1420085301 Predictive Control

4.5. GPC with terminal equality constraint 93

According to the optimality principle,

min J ≥ min J1 + min J2 ≥ min J1.

Hence, [Δu(k + N1|k), · · · , Δu(k + Nu − 1|k)] = 0 is the best choicefor minimizing J . By this choice, (4.5.17) is simplified as W0A

N1x(k) +W0WN1ΔUN1(k) = 0. Hence, the optimal control law is given by:

Δu(k) = − [ 0 · · · 0 1] [

B AB · · · AN1−1B]

AN1x(k). (4.5.19)

Consider system (4.3.2), since N1 = nB = n, (4.5.19) is Ackermann’sformula for deadbeat control.

Lemma 4.5.4. Under the following conditions the closed-loop system of GPCwith terminal equality constraint is deadbeat stable:

nA > nB, Nu ≥ nA, N1 = nB, N2 −Nu ≥ nB − 1. (4.5.20)

Proof. (a) Nu = nA. Firstly, since N1 < Nu,

x(k +N1|k) = AN1x(k) +WN1ΔUN1(k). (4.5.21)

Since N1 = nB and N2 −Nu ≥ nB − 1, N2 −N1 ≥ Nu − 1 = n− 1. ConsiderN2 −N1 = Nu − 1, then (4.5.2) becomes

⎢⎢⎢⎢⎢⎢⎢⎢⎣

CCA...

CANu−N1

...CANu−1

⎥⎥⎥⎥⎥⎥⎥⎥⎦

x(k +N1|k) +

⎢⎢⎢⎢⎢⎢⎢⎢⎣

0 · · · 0CB · · · 0...

. . ....

CANu−N1−1B · · · CB...

. . ....

CANu−2B · · · CAN1−1B

⎥⎥⎥⎥⎥⎥⎥⎥⎦

×

⎢⎢⎢⎣

Δu(k +N1|k)Δu(k +N1 + 1|k)

...Δu(k +Nu − 1|k)

⎥⎥⎥⎦

= 0. (4.5.22)

Denote q = nA−nB. Since the last q elements of C are zeros, by the specialforms of A and B, it is easy to conclude that CA−hB = 0, ∀h ∈ 1, 2, . . . , q.Therefore, (4.5.22) can be re-expressed as

⎢⎢⎢⎣

CCA...

CANu−1

⎥⎥⎥⎦x(k +N1|k) +

⎢⎢⎢⎣

CA−1B · · · CA−Nu+N1BCB · · · CA−Nu+N1+1B...

. . ....

CANu−2B · · · CAN1−1B

⎥⎥⎥⎦

×

⎢⎢⎢⎣

Δu(k +N1|k)Δu(k +N1 + 1|k)

...Δu(k +Nu − 1|k)

⎥⎥⎥⎦

= 0. (4.5.23)

© 2010 b T l d F G LLC

Page 110: 1420085301 Predictive Control

94 Chapter 4. Generalized predictive control (GPC)

According to Cayley-Hamilton’s Theorem, for any integer j,[CANu−1+j CANu−2+jB · · · CAN1−1+jB] can be represented as a linearcombination of the rows in

⎢⎢⎢⎣

C CA−1B · · · CA−Nu+N1BCA CB · · · CA−Nu+N1+1B...

.... . .

...CANu−1 CANu−2B · · · CAN1−1B

⎥⎥⎥⎦.

Therefore, (4.5.23) is equivalent to⎡

⎢⎢⎢⎣

CANu−N1 CANu−N1−1B · · · CAB CBCANu−N1+1 CANu−N1B · · · CA2B CAB

......

. . ....

...CAn+Nu−N1−1 CAn+Nu−N1−2B · · · CAnB CAn−1B

⎥⎥⎥⎦

×

⎢⎢⎢⎢⎢⎣

x(k +N1|k)Δu(k +N1|k)

Δu(k +N1 + 1|k)...

Δu(k +Nu − 1|k)

⎥⎥⎥⎥⎥⎦

= 0. (4.5.24)

Substituting (4.5.21) into (4.5.24) obtains

W0ANux(k) +W0WNuΔUNu(k) = 0. (4.5.25)

Hence, the optimal control law is given by

Δu(k) = − [ 0 · · · 0 1] [

B AB · · · ANu−1B]

ANux(k).(4.5.26)

Consider system (4.3.2), since Nu = nA = n, (4.5.26) is Ackermann’sformula for deadbeat control.

(b) Nu > nA. For the same reasons as in Lemma 4.5.3 (b), it is best that[Δu(k+ nA|k), · · · , Δu(k+Nu − 1|k)] = 0. Hence, the same conclusion canbe obtained.

Lemma 4.5.5. Under the following conditions the closed-loop system of GPCwith terminal equality constraint is deadbeat stable:

nA > nB, Nu = nA, N1 ≥ nB, N2 −N1 ≥ nA − 1. (4.5.27)

Proof. (a) N1 ≥ Nu. Firstly,

x(k +N1|k) = AN1x(k) +AN1−NuWNuΔUNu(k). (4.5.28)

Similarly to Lemma 4.5.2, since (A,C) is observable, choosing N2 − N1 ≥nA − 1 = n− 1 is equivalent to letting x(k + N1|k) = 0. Then, because A is

© 2010 b T l d F G LLC

Page 111: 1420085301 Predictive Control

4.5. GPC with terminal equality constraint 95

nonsingular, the optimal control law is given by:

Δu(k) = − [ 0 · · · 0 1] [

B AB · · · ANu−1B]

ANux(k).(4.5.29)

Consider system (4.3.2), since Nu = nA = n, (4.5.29) is Ackermann’sformula for deadbeat control.

(b) N1 < Nu. For N1 = nB, the conclusion follows from Lemma 4.5.4(a). For N1 > nB, by invoking the similar reason and deduction, (4.5.2) isequivalent to (4.5.24) and the conclusion holds.

Moreover, compared with Lemmas 4.5.2-4.5.5, it is easier to prove that,under either of the following two conditions the closed-loop system of GPCwith terminal equality constraints is deadbeat stable:

(i) nA = nB, Nu = nA, N1 ≥ nB, N2 −N1 ≥ nA − 1;

(ii) nA = nB, Nu ≥ nA, N1 = nB, N2 −Nu ≥ nB − 1.

Combining the above results we obtain the following conclusion:

Theorem 4.5.1. Under either of the following two conditions the closed-loopsystem of GPC with terminal equality constraint is deadbeat stable:

(i) Nu = nA, N1 ≥ nB, N2 −N1 ≥ nA − 1;(ii) Nu ≥ nA, N1 = nB, N2 −Nu ≥ nB − 1. (4.5.30)

Remark 4.5.1. Consider the objective function of routine GPC (the sameas in section 4.3). The deadbeat condition of routine GPC with λ = 0 is thesame as (4.5.30). With deadbeat control, the output of system (4.3.1) (whereξ(k) = 0) will reach the setpoint in nB samples by changing input nA times.This is the quickest response that system (4.3.1) can achieve. Also, at thisspeed it is the unique response (for any initial state). Therefore, GPC withterminal equality constraint and routine GPC are equivalent under λ = 0 and(4.5.30).

Remark 4.5.2. For GPC with terminal equality constraint, by choosing theparameters to satisfy

Nu ≥ NA, N1 ≥ nB, N2 −Nu ≥ nB − 1, N2 −N1 ≥ nA − 1 (4.5.31)

and properly selecting other controller parameters, the optimization problemhas a unique solution and the closed-loop system is asymptotically stable.However, if the parameters of the input/output model are on-line identified,or there is model-plant mismatch, then stability should be re-considered.

Remark 4.5.3. With input/output constraint considered, under the condi-tion of Theorem 4.5.1, if the initial optimization is feasible, then the closed-loop system is deadbeat stable and the real control moves are the same as

© 2010 b T l d F G LLC

Page 112: 1420085301 Predictive Control

96 Chapter 4. Generalized predictive control (GPC)

the unconstrained case. This is due to the uniqueness of deadbeat control.In this situation, the hard constraints are inactive. On the other hand, if thehard constraints are active, then the controller parameters cannot be selectedaccording to Theorem 4.5.1.

Remark 4.5.4. Systems with hard constraints can be controlled by GPCwith terminal equality constraint. Select the parameters to satisfy

Nu = NA, N1 = nB, N2 −Nu = nB − 1, N2 −N1 = nA − 1 (4.5.32)

and find the solution. If the optimization problem is infeasible, then increaseN1, N2, Nu by 1, until the optimization becomes feasible. If the optimizationproblem is feasible, then implement the current control move, and decreaseN1, N2, Nu by 1, but stop decreasing when (4.5.32) is satisfied. The finalclosed-loop response will be deadbeat.

Remark 4.5.5. The deadbeat property of GPC can be directly obtained bythat of the SIORHC (CRHPC), rather than applying Kleinman’s controller.Since by parameterizing as in (4.5.30) SIORHC (CRHPC) is feasible, if GPCis parameterized as (4.5.30) and λ = 0 is chosen, then the minimum costvalue of GPC is J∗(k) = 0. J∗(k) = 0 implies that the closed-loop system isdeadbeat stable.

Remark 4.5.6. Remark 4.5.1 shows that, when deadbeat controller is ap-plied, the output y(k) of A(z−1)y(k) = B(z−1)Δu(k) will reach the setpointvalue in nB sampling instants, while the input u(k) only needs to change nAtimes. This is the inherent property of A(z−1)y(k) = B(z−1)Δu(k), which isnot limited to MPC. Therefore, the deadbeat properties of SIORHC (CRHPC)can be directly obtained by invoking this inherent property, rather than byapplying various forms of “Ackermann’s formula for deadbeat control.” Cer-tainly, the deductions in section 4.5 simultaneously give the control law ofSIORHC (CRHPC).

Remark 4.5.7. Deadbeat stability of GPC not relating with the concretemodeling coefficients, as well as the deadbeat property of SIORHC (CRHPC),is very limited. We have not generalized the results to multivariable and un-certain systems. Some results for applying Kleinman’s controller in the mul-tivariable GPC are referred to [15] where, however, the state-space model isdirectly applied.

© 2010 b T l d F G LLC

Page 113: 1420085301 Predictive Control

Chapter 5

Two-step model predictivecontrol

Here, two-step control applies to a class of special systems, i.e., systems withinput nonlinearities. Input nonlinearities include input saturation, dead zone,etc. Moreover, a system represented by the Hammerstein model is an oftenseen input nonlinear system. The Hammerstein model consists of a staticnonlinear part followed by a dynamic linear part; see [54]. Some nonlinearprocesses such as pH neutralization, high purity distillation, etc., can be rep-resented by the Hammerstein model. The predictive control strategies for in-put nonlinear systems (mainly referred to input saturation and Hammersteinnonlinearity) can be classified into two categories.

One category takes the nonlinear model as a whole (overall category, e.g.,[1]), incorporates the nonlinear part into the objective function and directlysolves the control moves. Note that input saturation is usually taken as theconstraint in the optimization. For this category, the control law calculationis rather complex and it is more difficult for real application.

The other category utilizes nonlinear separation technique (separation cat-egory, e.g., [30]), i.e., firstly calculates the intermediate variable utilizing thelinear sub-model and predictive control, then computes the actual controlmove via nonlinear inversion. Note that, input saturation can be regardedas a kind of input nonlinearity, and also can be regarded as a constraint inthe optimization. The nonlinear separation with respect to the Hammersteinmodel invokes the special structure of the Hammerstein model, and groupsthe controller designing problem into the linear control, which is much simplerthan the overall category. In many control problems, the target is to make thesystem output track the setpoint as soon as possible (or, drive the systemsstate to the origin as soon as possible); the weighting on the control moveis to restrict the magnitude or the variation of the control move. Hence, al-though the control moves are not directly incorporated into the optimization,

97

© 2010 b T l d F G LLC

Page 114: 1420085301 Predictive Control

98 Chapter 5. Two-step model predictive control

the separation strategy is often more practical then the overall strategy.Two-step model predictive control (TSMPC): For the Hammerstein

model with input saturation, first utilize the linear sub-model and uncon-strained MPC algorithm to compute the desired intermediate variable, thensolve the nonlinear algebraic equation (group) (represented by Hammersteinnonlinearity) to obtain the control action, and utilize desaturation to satisfythe input saturation constraint. Since the computational time can be greatlyreduced, TSMPC is very suitable for the fast control requirement, especiallyfor the actual system where the model is on-line identified. When the lin-ear part adopts GPC, we call it TSGPC. The reserved nonlinear item in theclosed-loop of TSMPC is static.

In TSMPC, if the intermediate variable is exactly implemented by theactual control moves passing the nonlinear part of the system, then stability ofthe whole system is guaranteed by stability of the linear subsystem. However,in a real application, this ideal case is hard to ensure. The control movemay saturate, and the solution of the nonlinear algebraic equation (group)unavoidably introduces solution error.

This chapter is mainly referred to in [8]. For sections 5.1 and 5.2, also referto in [14], [27]. For section 5.3 also refer to in [19]. For sections 5.4, 5.5 and 5.6also refer to in [23], [20]. For sections 5.7, 5.8 and 5.9 also refer to in [24], [26].

5.1 Two-step GPC

The Hammerstein model is composed of a static nonlinear model followed bya dynamic linear sub-model. The static nonlinearity is

v(k) = f (u(k)) , f(0) = 0, (5.1.1)

where u is the input, v the intermediate variable; in the literature, f is usuallycalled invertible nonlinearity. Linear part adopts the controlled auto-regressivemoving average (CARMA) model,

a(z−1)y(k) = b(z−1)v(k − 1), (5.1.2)

where y is the output, ana = 0, bnb = 0; a, b is irreducible. Other detailsare referred to Chapter 4 (u is revised as v).

5.1.1 Case unconstrained systems

First, utilize (5.1.2) for designing the linear generalized predictive control(LGPC) such that the desired v(k) is obtained. Adopt the following costfunction:

J(k) =N2∑

i=N1

[y(k + i|k)− ys(k + i)]2 +Nu∑

j=1

λΔv2(k + j − 1|k). (5.1.3)

© 2010 b T l d F G LLC

Page 115: 1420085301 Predictive Control

5.1. Two-step GPC 99

In this chapter, usually ys(k+ i) = ω, ∀i > 0. Thus, the control law of LGPCis

Δv(k) = dT (ω−←f ) (5.1.4)

where ω = [ω, ω, · · · , ω]T and←f is a vector composed of the past intermediate

variable and output and the current output. Details are referred to Chapter4 (with u revised as v).

Then, usevL(k) = vL(k − 1) + Δv(k) (5.1.5)

to calculate u(k) which is applied to the real plant, i.e., solve the followingequation:

f (u(k))− vL(k) = 0, (5.1.6)

with the solution denoted as

u(k) = g(

vL(k))

. (5.1.7)

When the above method was firstly proposed, it was called nonlinear GPC(NLGPC; see [65]).

5.1.2 Case with input saturation constraint

The input saturation constraint is usually inevitable in the real applications.Now, suppose the control move is restricted by the saturation constraint |u| ≤U , where U is a positive scalar. After Δv(k) is obtained by applying (5.1.4),solve the equation

f(u(k))− vL(k) = 0 (5.1.8)

to decide u(k), with the solution denoted as

u(k) = f−1(vL(k)). (5.1.9)

Then, the desaturation is invoked to obtain the actual control move u(k) =satu(k), where sat s = sign smin |s| , U, denoted as (5.1.7).

The above control strategy is called type-I two-step GPC (TSGPC-I).In order to handle the input saturation, one can also transform the input

saturation constraint to the constraint on the intermediate variable. Then,another TSGPC strategy is obtained. Firstly, use the constraint on u, i.e.,|u| ≤ U , to determine the constraint on v, i.e., vmin ≤ v ≤ vmax. After Δv(k)is obtained by applying (5.1.4), let

v(k) =

vmin, vL(k) ≤ vmin

vL(k), vmin < vL(k) < vmax

vmax, vL(k) ≥ vmax

. (5.1.10)

Then, solve the nonlinear algebraic equation

f (u(k))− v(k) = 0 (5.1.11)

© 2010 b T l d F G LLC

Page 116: 1420085301 Predictive Control

100 Chapter 5. Two-step model predictive control

and let the solution u(k) satisfy saturation constraint, denoted as

u(k) = g (v(k)) (5.1.12)

which can also be denoted as (5.1.7). This control strategy is called type-IITSGPC (TSGPC-II).

Remark 5.1.1. After the constraint on the intermediate variable is obtained,we can design another type of nonlinear separation GPC, called NSGPC. InNSGPC, solving Δv(k) no longer adopts (5.1.4), but is through the followingoptimization problem:

minΔv(k|k),··· ,Δv(k+Nu−1|k)

J(k) =N2∑

i=N1

[y(k + i|k)− ys(k + i)]2

+Nu∑

j=1

λΔv2(k + j − 1|k), (5.1.13)

s.t. Δv(k + l|k) = 0, l ≥ Nu, vmin ≤ v(k + j − 1|k) ≤ vmax, j ∈ 1, . . . , Nu.(5.1.14)

Other computation and notations are the same as NLGPC. By this, we caneasily find the difference between TSGPC and NSGPC.

As addressed above, NLGPC, TSGPC-I and TSGPC-II are all called asTSGPC. Now, suppose the real plant is “static nonlinearity + dynamic linearmodel” and the nonlinear sub-model is v(k) = f0 (u(k)). We call the processdetermining u(k) via vL(k) as nonlinear inversion. An ideal inversion willachieve f0 g = 1, i.e.,

v(k) = f0(g(vL(k))) = vL(k). (5.1.15)

If f0 = f or f = g−1, then it is difficult to achieve f0 = g−1. In fact, it isusually impossible to achieve f0 = g−1. If there is no input saturation, theo-retically, finding u(k) via vL(k) is determined by the magnitude of vL(k) andthe formulation of f . It is well-known that, even for the monotonic functionv = f (u), its inversion function u = f−1 (v) does not necessarily exist for allthe possible values of v. In the real applications, because of computationaltime and computational accuracy, the algebraic equation may be unable to beexactly solved. Hence, in general, the approximate solution to the algebraicequation is adopted. When there is input saturation, the effect of desatura-tion may incur v(k) = vL(k). In summary, due to the inaccuracy in equationsolving, desaturation and modeling error, etc., the vL(k) obtained throughthe linear model may be unable to be implemented, and what is implementedis the v(k).

The structure of TSGPC is shown in Figure 5.1.1. When f0 = g = 1,Figure 5.1.1 is the block diagram of LGPC (see Chapter 4). The internal model

© 2010 b T l d F G LLC

Page 117: 1420085301 Predictive Control

5.2. Stability of two-step GPC 101

( )y kω Td M ∆

1g

T−d H

T−d F

plant

Figure 5.1.1: The original block diagram of TSGPC.

Controller part of TSGPC

ω yTd M T

1(1 )+ ∆d H g plant

1 T /z b a−− d F

T T/( )−d F d M

f g f 1 /z b a−

System model -

Figure 5.1.2: The internal model control structure of TSGPC.

control structure of Figure 5.1.1 is shown in Figure 5.1.2. When f0 = g = 1,Figure 5.1.2 is the internal model control structure of LGPC (see Chapter 4).In the following section, we will analyze closed-loop stability of TSGPC whenf0 = g−1.

5.2 Stability of two-step GPC

Since the reserved nonlinear item in the closed-loop system is f0 g, theinaccuracy in the nonlinear sub-model and the nonlinearity of the real actuatorcan also be incorporated into f0 g. Hence, stability results of TSGPC arethe robustness results.

5.2.1 Results based on Popov’s Theorem

Lemma 5.2.1. (Popov’s stability Theorem) Suppose G(z) in the Figure 5.2.1is stable and 0 ≤ ϕ(ϑ)ϑ ≤ Kϕϑ. Then the closed-loop system is stable if1Kϕ

+ ReG(z) > 0, ∀|z| = 1.

© 2010 b T l d F G LLC

Page 118: 1420085301 Predictive Control

102 Chapter 5. Two-step model predictive control

θ 0

ϕ−

( )G z

Figure 5.2.1: The static nonlinear feedback form, 1.

Re· refers to the real part of a complex and |z| is mode of the complex z.Applying Lemma 5.2.1, we can obtain the following stability result of TSGPC.

Theorem 5.2.1. (TSGPC’s stability) Suppose the linear sub-model appliedby TSGPC is accurate and there exist two constants k1, k2 > 0 such that

(i) the roots of a(1 + dTH)Δ + (1 + k1)z−1dTFb = 0 are all located in theunit circle;

(ii)

1k2 − k1

+ Re

z−1dTFb

a(1 + dTH)Δ + (1 + k1)z−1dTFb

> 0, ∀|z| = 1.

(5.2.1)

Then the closed-loop system of TSGPC is stable if the following is satisfied:

k1ϑ2 ≤ (f0 g − 1)(ϑ)ϑ ≤ k2ϑ

2. (5.2.2)

Proof. Suppose, without loss of generality, ω = 0. Transform Figure 5.1.1 intoFigures 5.2.2, 5.2.3 and 5.2.4. If the system shown in Figure 5.2.4 is stable,then the original system is stable. Suppose the feedback item f0 g − 1 inFigure 5.2.4 satisfies (5.2.2). For utilizing Popov’s stability Theorem, take

0 ≤ ψ(ϑ)ϑ ≤ (k2 − k1)ϑ2 = Kψϑ2 (5.2.3)

where

ψ(ϑ) = (f0 g − 1− k1)(ϑ). (5.2.4)

The block diagram is transformed into Figure 5.2.5. Now, the characteristicequation of the linear part becomes

a(1 + dTH)Δ + (1 + k1)z−1dTFb = 0. (5.2.5)

According to Lemma 5.2.1, Theorem 5.2.1 can be obtained.

Remark 5.2.1. For given λ, N1, N2 and Nu, we may find multiple setsof k0, k3, such that for ∀k1 ∈ k0, k3, the roots of a(1 + dTH)Δ + (1 +

© 2010 b T l d F G LLC

Page 119: 1420085301 Predictive Control

5.2. Stability of two-step GPC 103

Lv v 0 Td M g

0f

1 /z b a−

T−d F

T

1(1 )+ ∆d H

Figure 5.2.2: The block diagram with output v.

0 LvT

1 T

az b−

d Md F

1 T

T(1 )z b

a

+ ∆d Fd H

0f g−

Figure 5.2.3: The static nonlinear feedback form, 2.

0 Lv 1 T

T 1 T(1 )z b

a z b

−+ ∆ +d F

d H d F

0 1f g −

Figure 5.2.4: The static nonlinear feedback form, 3.

Lv0

ψ

1 T

T 1 T1(1 ) (1 )

z ba k z b

−+ ∆ + +d F

d H d F

Figure 5.2.5: The static nonlinear feedback form, 4.

© 2010 b T l d F G LLC

Page 120: 1420085301 Predictive Control

104 Chapter 5. Two-step model predictive control

k1)z−1dTFb = 0 are all located in the unit circle. In this way, [k1, k2] ⊆ [k0, k3]satisfying the conditions (i) and (ii) in Theorem 5.2.1 may be innumerable.Suppose that the nonlinear item in the real system satisfies

k02ϑ

2 ≤ (f0 g − 1)(ϑ)ϑ ≤ k02ϑ

2 (5.2.6)

where k01 , k

02 > 0 are constants, Then Theorem 5.2.1 means: if any set of

k1, k2 satisfies[k1, k2] ⊇ [k0

1 , k02 ], (5.2.7)

the corresponding system is stable.

In fact, with (5.2.6) known, verifying stability can directly apply the fol-lowing conclusion.

Corollary 5.2.1. (TSGPC’s stability) Suppose the linear sub-model appliedby TSGPC is accurate and the nonlinear item satisfies (5.2.6). Then, underthe following two conditions the closed-loop system of TSGPC will be stable:

(i) all the roots of a(1 + dTH)Δ + (1 + k01)z−1dTFb = 0 are located in the

unit circle;

(ii)

1k02 − k0

1

+ Re

z−1dTFb

a(1 + dTH)Δ + (1 + k01)z−1dTFb

> 0, ∀|z| = 1.

(5.2.8)

Remark 5.2.2. Theorem 5.2.1 and Corollary 5.2.1 do not require the cor-responding LGPC to be stable, i.e., they do not require all the roots ofa(1 + dTH)Δ + z−1dTFb = 0 to be located in the unit circle. This is anadvantage of the above stability result. Considering the relationship betweenTSGPC and LGPC shown in Figures 5.1.1 and 5.1.2, 0 ∈ [k0

1 , k02 ] will have

many advantages, but 0 ∈ [k01 , k

02 ] means that the corresponding LGPC is

stable.

5.2.2 Two algorithms for finding controller parameters

Theorem 5.2.1 and Corollary 5.2.1 can also be applied to the design of thecontroller parameters λ, N1, N2 and Nu to stabilize the system. In the fol-lowing we discuss two cases in the form of algorithms.

Algorithm 5.1 (Given k01 , k

02, design the controller parameters

λ,N1, N2, Nu to stabilize the closed-loop system of TSGPC.)

Step 1. Search N1, N2, Nu and λ by variable alternation method, withintheir permissible (with respect to computational burden, etc.) ranges.If the search is finished, then terminate the whole algorithm, elsechoose one set of N1, N2, Nu, λ and determine a(1 + dTH)Δ +z−1dTFb.

© 2010 b T l d F G LLC

Page 121: 1420085301 Predictive Control

5.2. Stability of two-step GPC 105

Step 2. Apply Jury’s criterion to examine whether all roots of a(1+dTH)Δ+(1+ k0

1)z−1dTFb = 0 are located in the unit circle. If not, then go toStep 1.

Step 3. Transform −z−1dTFb/[a(1 + dTH)Δ + (1 + k01)z−1dTFb] into irre-

ducible form, denoted as G(k01 , z).

Step 4. Substitute z = σ +√

1− σ2i into G(k01 , z) to obtain ReG(k0

1 , z) =GR(k0

1 , σ).

Step 5. Let M = maxσ∈[−1,1]GR(k01 , σ). If k0

2 ≤ k01 + 1

M , then terminate, elsego to Step 1.

If the open-loop system has no eigenvalues outside of the unit circle, gen-erally Algorithm 5.1 can obtain satisfactory λ, N1, N2, Nu. Otherwise, sat-isfactory λ, N1, N2, Nu may not be found for all given k0

1 , k02 and in this

case, one can restrict the degree of desaturation, i.e., try to increase k01 . The

following algorithm can be used to determine a smallest k01 .

Algorithm 5.2 (Given desired k01 , k

02, determine the controller param-

eters λ,N1, N2, Nu such that k010, k

02 satisfies stability requirements and

k010 − k0

1 is minimized.)

Step 1. Let k0,old10 = k0

2 .

Step 2. Same as Step 1 in Algorithm 5.1.

Step 3. Utilize root locus or Jury’s criterion to decide k0, k3 such that[k0, k3] ⊃ [k0,old

10 , k02 ] and all roots of a(1+dTH)Δ+(1+k1)z−1dTFb =

0 are located in the unit circle, for ∀k1 ∈ [k0, k3]. If such k0, k3 doesnot exist, then go to Step 2.

Step 4. Search k010 in the range k0

10 ∈[

maxk0, k01, k0,old

10

]

, by increasing itgradually. If the search is finished, then go to Step 2, else transform−z−1dTFb/[a(1+dTH)Δ+(1+k0

10)z−1dTFb] into irreducible form,

denoted as G(k010, z).

Step 5. Substitute z = σ+√

1− σ2i into G(k010, z) to obtain ReG(k0

10, z) =GR(k0

10, σ).

Step 6. Let M = maxσ∈[−1,1]GR(k010, σ). If k0

2 ≤ k010 + 1

M and k010 ≤

k0,old10 , then take k0,old

10 = k010 and denote λ,N1, N2, Nu∗ =

λ,N1, N2, Nu, go to Step 2. Else, go to Step 4.

Step 7. On finishing the search, let k010 = k0,old

10 and λ,N1, N2, Nu =λ,N1, N2, Nu∗.

© 2010 b T l d F G LLC

Page 122: 1420085301 Predictive Control

106 Chapter 5. Two-step model predictive control

5.2.3 Determination of bounds for the real nonlinearity

In the above, given k01 , k

02, we have described the algorithms for determining

the controller parameters. In the following we briefly illustrate how to decidek0

1 , k02 so as to bring Theorem 5.2.1 and Corollary 5.2.1 into play. We know

that f0 g = 1 may be due to the following reasons:

(I) desaturation effect;

(II) solution error of nonlinear algebraic equation, including the case wherean approximate solution is given since no accurate real-valued solutionexists;

(III) inaccuracy in modeling of the nonlinearity;

(IV) execution error of the actuator in a real system.

Suppose TSGPC-II is adopted. Then f0 g is shown in Figure 5.2.6. Further,suppose

(i) no error exists in solving nonlinear equation;

(ii) k0,1f(ϑ)ϑ ≤ f0(ϑ)ϑ ≤ k0,2f(ϑ)ϑ for all vmin ≤ v ≤ vmax;

(iii) the desaturation level satisfies ks,1ϑ2 ≤ sat(ϑ)ϑ ≤ ϑ2,

then

(A) f0 g = f0 g sat;

(B) k0,1sat(ϑ)ϑ ≤ f0 g(ϑ)ϑ ≤ k0,2sat(ϑ)ϑ;

(C) k0,1ks,1ϑ2 ≤ f0 g(ϑ)ϑ ≤ k0,2ϑ

2,

and finally, k01 = k0,1ks,1 − 1 and k0

2 = k0,2 − 1.

5.3 Region of attraction by using two-step

GPC

For a fixed ks,1, if all the conditions in Corollary 5.2.1 are satisfied, thenthe closed-loop system is stable. However, when TSGPS is applied for inputsaturated systems, ks,1 will change along with the level of desaturation. In thelast section, the issue that k0

1 , k02 changes with ks,1 is not handled. This issue

is directly involved with the region of attraction for the closed-loop system,which needs to be discussed by the state space equation.

© 2010 b T l d F G LLC

Page 123: 1420085301 Predictive Control

5.3. Region of attraction by using two-step GPC 107

Lv

v

maxv

minv

02(1 ) Lv k v= +

1(1 ) Lv k v= +01(1 ) Lv k v= +

Figure 5.2.6: The sketch map of nonlinear item f0 g.

5.3.1 State space description of the controller

Transform (5.1.2) into the following state space model:

x(k + 1) = Ax(k) +BΔv(k), y(k) = Cx(k) (5.3.1)

where x ∈ Rn. More details are referred to in section 4.3. For 0 < i ≤ N2 and0 < j ≤ N2, take

qi =

1, N1 ≤ i ≤ N2

0, i < N1, λj =

λ, 1 ≤ j ≤ Nu∞, j > Nu

. (5.3.2)

Moreover, take a vector L such that CL = 1 (since C = 0, such an L exists butis not unique). Then the cost function (5.1.3) of LGPC can be equivalentlytransformed into the following cost function of LQ problem (refer to [40]):

J(k) = [x(k +N2)− Lys(k +N2)]TCT qN2C [x(k +N2)− Lys(k +N2)]

+N2−1∑

i=0

[x(k + i)− Lys(k + i)]T CT qiC [x(k + i)− Lys(k + i)]

+λi+1Δv(k + i)T

. (5.3.3)

The LQ control law is

Δv(k) = − (λ+BTP1B)−1

BT [P1Ax(k) + r(k + 1)] , (5.3.4)

where P1 can be obtained by the following Riccati iteration:

Pi = qiCTC +ATPi+1A−ATPi+1B

(

λi+1 +BTPi+1B)−1

BTPi+1A, PN2

= CTC, (5.3.5)

© 2010 b T l d F G LLC

Page 124: 1420085301 Predictive Control

108 Chapter 5. Two-step model predictive control

( )v k( )Lv kKω 1∆

gω ( )y k

0f 1 1( ) ( ) ( ) ( 1)a z y k b z v k− −= −

K( )kx

Figure 5.3.1: The equivalent block diagram of TSGPC.

and r(k + 1) can be calculated by

r(k + 1) =−N2∑

i=N1

ΨT (i, 1)CT ys(k + i), (5.3.6)

Ψ(1, 1) =I,Ψ(j, 1) =j−1∏

i=1

[

A−B (

λi+1 +BTPi+1B)−1

BTPi+1A]

, ∀j > 1.

(5.3.7)

Denote (5.3.4) as

Δv(k) = Kx(k) +Krr(k + 1) = [K Kr][

x(k)T r(k + 1)T]T. (5.3.8)

Take ys(k + i) = ω, ∀i > 0. Then,

vL(k) = vL(k − 1) +Kx(k) +Kωys(k + 1), (5.3.9)

where Kω = −Kr

∑N2i=N1

ΨT (i, 1)CT . Figure 5.3.1 shows the equivalent blockdiagram of TSGPC.

5.3.2 Stability relating with the region of attraction

When (5.2.6) is satisfied, let δ ∈ Co δ1, δ2 = Co[

k01 + 1, k0

2 + 1]

, i.e., δ =ξδ1 +(1−ξ)δ2, where ξ is any value satisfying 0 ≤ ξ ≤ 1. If we use δ to replacef0 g, then since δ is a scalar, it can move in the block diagram. Hence, Figure5.3.1 is transformed into Figure 5.3.2. It is easy to know that, if the uncertainsystem in Figure 5.3.2 is robustly stable, then the closed-loop system of theoriginal TSGPC is stable.

Now, we deduce the extended state space model of the system in Figure5.3.2. Firstly,

v(k) = v(k − 1) + δKx(k) + δKωys(k + 1)

= [1 δK δKω][

v(k − 1) x(k)T ys(k + 1)]T. (5.3.10)

Since

ys(k+2) = ys(k+1), x(k+1) = (A+ δBK)x(k)+ δBKωys(k+1), (5.3.11)

© 2010 b T l d F G LLC

Page 125: 1420085301 Predictive Control

5.3. Region of attraction by using two-step GPC 109

Kω ω ( )y k

K

δ

( )kx

1 1( ) ( ) ( ) ( 1)a z y k b z v k− −= −1∆

( )v k

Figure 5.3.2: The uncertain system representation of TSGPC.

there is⎡

v(k)x(k + 1)ys(k + 2)

⎦ =

1 δK δKω

0 A+ δBK δBKω

0 0 1

v(k − 1)x(k)

ys(k + 1)

⎦ . (5.3.12)

Denote (5.3.12) asxE(k + 1) = Φ(δ)xE(k), (5.3.13)

and call xE ∈ Rn+2 as the extended state.Both Theorem 5.2.1 and Corollary 5.2.1 are not related with the region

of attraction. The region of attraction Ω of TSGPC with respect to the equi-librium point (ue, ye) is specially defined as the set of initial extended statexE(0) that satisfies the following conditions:

∀xE(0) ∈ Ω ⊂ Rn+2, limk→∞

u(k) = ue, limk→∞

y(k) = ye. (5.3.14)

For given v(−1) and ω, the region of attraction Ωx of TSGPC with respect tothe equilibrium point (ue, ye) is specially defined as the set of initial extendedstate x(0) that satisfies the following conditions:

∀x(0) ∈ Ωx ⊂ Rn, limk→∞

u(k) = ue, limk→∞

y(k) = ye. (5.3.15)

According to the above descriptions and Corollary 5.2.1, we can easilyobtain the following result.

Theorem 5.3.1. (TSGPC’s stability) Suppose the linear part of the plantmodel for TSGPC is the same as the plant dynamics, and

(i) for ∀xE(0) ∈ Ω, ∀k > 0, the level of desaturation ks,1 is such that f0 gsatisfies (5.2.6);

(ii) the roots of a(1 + dTH)Δ + (1 + k01)z−1dTFb = 0 are all located inside

of the unit circle;

(iii) (5.2.8) is satisfied.

Then, the equilibrium point (ue, ye) of TSGPC is stable with a region of at-traction Ω.

© 2010 b T l d F G LLC

Page 126: 1420085301 Predictive Control

110 Chapter 5. Two-step model predictive control

Remark 5.3.1. The main difference between Theorem 5.3.1 and Corollary5.2.1 is that Theorem 5.3.1 introduces the region of attraction. The issues thatcan be handled by Theorem 5.3.1 include

A. given

k01 , k

02 , λ,N1, N2, Nu

satisfying all the conditions in Corollary5.2.1, determine the region of attraction Ω for the closed-loop system;

B. given k0,1, k0,2 and the desired region of attraction Ω, searchλ,N1, N2, Nu satisfying all the conditions in Corollary 5.2.1.

By adopting suitable controller parameters, the conditions (ii)-(iii) in The-orem 5.3.1 can be satisfied. Then, if the level of desaturation is sufficientlysmall, then the condition (i) can also be satisfied. Condition (i) can be satis-fied only if xE(0) belongs to a certain set. This set is the region of attractionfor the closed-loop system of TSGPC.

5.3.3 Computation of the region of attraction

Denote Φ1 =[

1 K Kω

]

. In (5.3.12),

Φ(δ) ∈Co

Φ(1),Φ(2)

=Co

1 δ1K δ1Kω

0 A+ δ1BK δ1BKω

0 0 1

⎦ ,

1 δ2K δ2Kω

0 A+ δ2BK δ2BKω

0 0 1

⎭.

(5.3.16)

Suppose all the conditions in Corollary 5.2.1 are satisfied, then we can adoptthe following algorithm to calculate the region of attraction.

Algorithm 5.3 (The theoretical method for calculating the region ofattraction)

Step 1. Decide ks,1 that satisfies all the conditions in Corollary 5.2.1 (if TSGPC-II is adopted, then ks,1 = (k0

1 + 1)/k0,1). Let

S0 =

θ ∈ Rn+2|Φ1θ ≤ vmax/ks,1, Φ1θ ≥ vmin/ks,1

=

θ ∈ Rn+2|F (0)θ ≤ g(0)

, (5.3.17)

where g(0) =[

vmax/ks,1−vmin/ks,1

]

, F (0) =[

Φ1

−Φ1

]

. Let j = 1. In this step,

if the extremums vLmin and vLmax of vL are given, then we can let

S0 =

θ ∈ Rn+2|Φ1θ ≤ vLmax, Φ1θ ≥ vLmin

=

θ ∈ Rn+2|F (0)θ ≤ g(0)

.

(5.3.18)

© 2010 b T l d F G LLC

Page 127: 1420085301 Predictive Control

5.3. Region of attraction by using two-step GPC 111

Step 2. Let

Nj =

θ ∈ Rn+2|F (j−1)Φ(l)θ ≤ g(j−1), l = 1, 2

(5.3.19)

andSj = Sj−1

Nj =

θ ∈ Rn+2|F (j)θ ≤ g(j)

. (5.3.20)

Step 3. If Sj = Sj−1, then let S = Sj−1 and STOP. Else, let j = j + 1 and turnto Step 2.

The region of attraction calculated by Algorithm 5.3 is also called the“maximal output admissible set” of the following system:

xE(k + 1) =Φ(δ)xE(k), vL(k) = Φ1xE(k),

vmin/ks,1 ≤vL(k) ≤ vmax/ks,1 (or vLmin ≤ vL(k) ≤ vLmax).

For maximal output admissible set, one can refer to, e.g., [32]; note that, here,the “output” refers to output vL(k) of the above system, rather than outputy of the system (5.1.2); “admissible” refers to satisfaction of constraints. InAlgorithm 5.3, the iterative method is adopted: define S0 as the zero-stepadmissible set, then S1 is 1-step admissible set, . . . , Sj is j-step admissible set;the satisfaction of constraints means that the constraints are always satisfiedirrespective of how many steps the sets have evolved.

In Algorithm 5.3, the following concept is involved.

Definition 5.3.1. If there exists d > 0 such that Sd = Sd+1, then S is finite-determined. Then, S = Sd and d∗ = min d|Sd = Sd+1 is the determinednessindex (or, the output admissibility index).

Since the judgment of Sj = Sj−1 can be transformed into the optimizationproblem, Algorithm 5.3 can be transformed into the following algorithm.

Algorithm 5.4 (The iterative algorithm for calculating region of attrac-tion)

Step 1. Decide ks,1 satisfying all the conditions in Corollary 5.2.1. Calculate S0

according to (5.3.17) or (5.3.18). Take j = 1.

Step 2. Solve the following optimization problem:

maxθJi,l(θ) =

(

F (j−1)Φ(l)θ − g(j−1))

i, i ∈ 1, . . . , nj, l ∈ 1, 2

(5.3.21)such that the following constraint is satisfied:

F (j−1)θ − g(j−1) ≤ 0, (5.3.22)

where nj is the number of rows in F (j−1) and (·)i denotes the i-th row.Let J∗i,l be the optimum of Ji,l(θ). If

J∗i,l ≤ 0, ∀l ∈ 1, 2, ∀i ∈ 1, . . . , nj,then STOP and take d∗ = j − 1; else, continue.

© 2010 b T l d F G LLC

Page 128: 1420085301 Predictive Control

112 Chapter 5. Two-step model predictive control

Step 3. Calculate Nj via (5.3.19), and Sj via (5.3.20). Let j = j + 1 and turnto Step 2.

Remark 5.3.2. J∗i,l ≤ 0 indicates that, when (5.3.22) is satisfied,F (j−1)Φ(l)θ ≤ g(j−1) is also satisfied. In Sj calculated by (5.3.19)-(5.3.20),there can be redundant inequalities; these redundant inequalities can be re-moved by the similar optimizations.

In real applications, it may not be possible to find a finite number ofinequalities to precisely express the region of attraction S, i.e., d∗ is not afinite value. It may also happen that d∗ is finite but is very large, so that theconvergence of the Algorithms 5.3 and 5.4 is very slow. In order to speed upthe convergence, or, when the algorithms do not converge, approximate theregion of attraction, one can introduce ε > 0. Denote 1 = [1, 1, · · · , 1]T and,in (5.3.19), let

Nj =

θ ∈ Rn+2|F (j−1)Φ(l)θ ≤ g(j−1) − ε1, l = 1, 2

. (5.3.23)

Algorithm 5.5 (The ε-iteration algorithm for calculating the region ofattraction) All the details are the same as Algorithm 5.4 except that Nj iscalculated by (5.3.23).

5.3.4 Numerical example

The linear part of the system is

y(k)− 2y(k − 1) = v(k − 1).

Take N1 = 1, N2 = Nu = 2, λ = 10. Then, k0 = 0.044, k3 = 1.8449are obtained such that, when k1 ∈ [k0, k3], the condition (i) of Theorem5.2.1 is satisfied. Take k1 = 0.287, then the largest k2 satisfying condition(ii) of Theorem 5.2.1 is k2 = 1.8314; this is the set of k1, k2 satisfying[k1, k2] ⊆[k0, k3] such that k2 − k1 is maximized.

Take the Hammerstein nonlinearity as

f0(θ) = 2.3f(θ) + 0.5 sinf(θ), f(θ) = signθθ sin(π

4θ)

.

The input constraint is |u| ≤ 2. Let the solution to the algebraic equationbe utterly accurate. Then by utilizing the expression of f , it is known that|v| ≤ 2. Let the level of desaturation satisfy ks,1 = 3/4, then according to theabove description, it is known that 1.35θ2 ≤ f0 g (θ) θ ≤ 2.8θ2, i.e, k0

1 = 0.35and k0

2 = 1.8.Under the above parameterizations, by applying Corollary 5.2.1 it is known

that the system can be stabilized within a certain region of the initial extendedstate.

© 2010 b T l d F G LLC

Page 129: 1420085301 Predictive Control

5.4. Two-step state feedback MPC (TSMPC) 113

-2 -1 0 1 2 3 4 -2

-1

0

1

2

3

4

1x

2x xΩ

Figure 5.3.3: Region of attraction and closed-loop state trajectory of TSGPC.

Take the two system states as x1(k) = y(k) and x2(k) = y(k − 1). InFigure 5.3.3, the region in the dotted line is the region of attraction Ωx forv(−1) = 0 and ω = 1, which is calculated according to Algorithm 5.4. Takethe three sets of initial values as

(A) y(−1) = 2, y(0) = 2, v(−1) = 0;

(B) y(−1) = −1.3, y(0) = −0.3, v(−1) = 0;

(C) y(−1) = 0, y(0) = −0.5, v(−1) = 0.

The setpoint value is ω = 1. According to Theorem 5.3.1, the system shouldbe stable. In Figure 5.3.3, the state trajectories shown with solid lines indicateclosed-loop stability.

Notice that, Ωx is the projection of a cross-section of Ω on the x1-x2 plane,which is not an invariant set. The overall projection of Ω on x1-x2 plane ismuch larger than Ωx.

5.4 Two-step state feedback MPC (TSMPC)

Consider the following discrete-time system,

x(k + 1) = Ax(k) +Bv(k), y(k) = Cx(k), v(k) = φ (u(k)) , (5.4.1)

where x ∈ Rn, v ∈ Rm, y ∈ Rp, u ∈ Rm are the state, intermediate variable,output and input, respectively; φ represents the relationship between the input

© 2010 b T l d F G LLC

Page 130: 1420085301 Predictive Control

114 Chapter 5. Two-step model predictive control

and intermediate variable with φ(0) = 0. Moreover, the following assumptionsare given for TSMPC.

Assumption 5.4.1. The state x is measurable.

Assumption 5.4.2. The pair (A,B) is stabilizable.

Assumption 5.4.3. φ = f sat, where f is the invertible static nonlinearityand sat represents the following input saturation (physical) constraint:

−u ≤ u(k) ≤ u (5.4.2)

where u := [u1, u2, · · · , um]T , u := [u1, u2, · · · , um]T , ui > 0, ui > 0, i ∈1, 2, . . . ,m.

In two-step state feedback model predictive control (TSMPC), firstly con-sider the linear subsystem x(k+1) = Ax(k)+Bv(k), y(k) = Cx(k) and definethe following cost function

J (N, x(k)) =N−1∑

i=0

[

‖x(k + i|k)‖2Q + ‖v(k + i|k)‖2R]

+ ‖x(k +N |k)‖2QN,

(5.4.3)where Q ≥ 0, R > 0 are symmetric matrix; QN > 0 is the terminal stateweighting matrix. At each time k, the following optimization problem shouldbe solved:

minv(k|k)

J(N, x(k)), s.t. x(k + i+ 1|k) = Ax(k + i|k) +Bv(k + i|k),

i ≥ 0, x(k|k) = x(k) (5.4.4)

to get the optimal solution

v(k|k) =[

v(k|k)T , v(k + 1|k)T , · · · , v(k +N − 1|k)T ]T . (5.4.5)

This is a finite-horizon standard LQ problem, to which we can apply thefollowing Riccati iteration:

Pj =Q+ATPj+1A−ATPj+1B(

R+BTPj+1B)−1

BTPj+1A, 0≤ j < N, PN = QN . (5.4.6)

The LQ control law is

v(k + i|k) = − (R+BTPi+1B)−1

BTPi+1Ax(k + i|k), i ∈ 0, . . . , N − 1.Since MPC utilizes the receding horizon strategy, only v(k|k) in (5.4.5) is

to be implemented. And the optimization (5.4.4) is repeated at time k + 1 toobtain v(k + 1|k + 1). Hence, the predictive control law is given by

v(k|k) = − (R+BTP1B)−1

BTP1Ax(k). (5.4.7)

© 2010 b T l d F G LLC

Page 131: 1420085301 Predictive Control

5.4. Two-step state feedback MPC (TSMPC) 115

Note that the control law (5.4.7) may be unable to be implemented via u(k),so is a “desired intermediate variable” and is denoted as:

vL(k) = Kx(k) = − (R +BTP1B)−1

BTP1Ax(k). (5.4.8)

In the second step of TSMPC, u(k) is obtained by solving the algebraicequation vL(k) − f (u(k)) = 0, which is denoted as u(k) = f−1

(

vL(k))

. Fordifferent f ’s, different methods for solving the equation can be utilized. Inorder to reduce the computational burden, often the equation needs not to besolved accurately. The control input u(k) can be obtained by desaturating u(k)with u(k) = sat u(k) such that (5.4.2) is satisfied (applying desaturationavoids windup in real applications), and is denoted as u(k) = g

(

vL(k))

.Thus,

v(k) = φ (sat u(k)) = (φ sat f−1)(vL(k)) = (f sat g)(vL(k)

and is denoted asv(k) = h(vL(k)).

The control law in terms of v(k) will be

v(k) = h(vL(k)) = h(

− (R+BTP1B)−1

BTP1Ax(k))

(5.4.9)

and the closed-loop representation of the system will be

x(k + 1) = Ax(k) +Bv(k) =[

A−B (

R +BTP1B)−1

BTP1A]

x(k)

+B[h(

vL(k))− vL(k)]. (5.4.10)

If the reserved nonlinear item h = 1 = [1, 1, · · · , 1]T , in (5.4.10)[h(

vL(k)) − vL(k)] will disappear and the system will become linear. But

this generally cannot be guaranteed, since h may include

(i) the solution error of nonlinear equation;

(ii) the desaturation that makes vL(k) = v(k).

In real applications, it is usual that h = 1, vL(k) = v(k). So we make thefollowing assumptions on h.

Assumption 5.4.4. The nonlinearity h satisfies

‖h(s)‖ ≥ b1 ‖s‖ , ‖h(s)− s‖ ≤ |b− 1| · ‖s‖ , ∀ ‖s‖ ≤ Δ, (5.4.11)

where b and b1 are scalars.

Assumption 5.4.5. For decentralized f (i.e., one element of u has relationwith one and only one of the elements in v, and the relationship is sequential),h satisfies

bi,1s2i ≤ hi(si)si ≤ bi,2s2i , i ∈ 1, . . . ,m, ∀ |si| ≤ Δ, (5.4.12)

where bi,2 and bi,1 are positive scalars.

© 2010 b T l d F G LLC

Page 132: 1420085301 Predictive Control

116 Chapter 5. Two-step model predictive control

Since hi(si) and si has the same sign,

|hi(si)− si| = ||hi(si)| − |si|| ≤ max |bi,1 − 1| , |bi,2 − 1| · |si| .Denote

b1 = min b1,1, b2,1, · · · , bm,1 ,|b− 1| = max |b1,1 − 1| , · · · , |bm,1 − 1| , |b1,2 − 1| , · · · , |bm,2 − 1| . (5.4.13)

Then (5.4.11) can be deduced from (5.4.12). The higher the degree of desatu-ration, the smaller will be bi,1 and b1. Therefore, with b1 given, ‖h(s)‖ ≥ b1 ‖s‖in (5.4.11) will mainly represent a restriction on the degree of desaturation.

In the following, let us consider the usual input magnitude constraint, andtake the SISO system as an example, to show the method for estimating b1and |b− 1|.

Note that

satu =

u, u ≤ uu, u ≤ u ≤ uu, u ≥ u

. (5.4.14)

Suppose

(A) the solution error of the nonlinear algebraic equation vL = f(u) is re-stricted, which can be represented as b

(

vL)2 ≤ f f−1(vL)vL ≤ b (vL)2,

where b and b are positive scalars;

(B) the real system design satisfies vL ≤ vL ≤ vL (where max−vL, vL =

Δ) and, under this condition, there is always real solution to vL = f(u);

(C) denote v = f(u) and v = f(u), then vL ≤ v < 0 and 0 < v ≤ vL;

(D) If f−1(vL) ≤ u, then vL ≤ v, and if f−1(vL) ≥ u, then vL ≥ v.Denote bs = min

v/vL, v/vL

. For the studied system, it is easy to showthat

h(vL) =f sat g(vL) = f sat f−1(vL)

=

f(u), f−1(vL) ≤ uf f−1(vL), u ≤ f−1(vL) ≤ uf(u), f−1(vL) ≥ u

=

v, f−1(vL) ≤ uf f−1(vL), u ≤ f−1(vL) ≤ uv, f−1(vL) ≥ u

. (5.4.15)

By estimating the bounds for the three cases in (5.4.15), we obtain⎧

⎪⎨

⎪⎩

bs(vL)2 ≤ vvL ≤ (

vL)2, f−1(vL) ≤ u

b(

vL)2 ≤ f f−1(vL)vL ≤ b (vL)2 , u ≤ f−1(vL) ≤ u

bs(

vL)2 ≤ vvL ≤ (

vL)2, f−1(vL) ≥ u

. (5.4.16)

© 2010 b T l d F G LLC

Page 133: 1420085301 Predictive Control

5.5. Stability of TSMPC 117

Combining (5.4.15) and (5.4.16) yields

min bs, b (vL)2 ≤ h(vL)vL ≤ max1, b(vL)2. (5.4.17)

Hence,

b1 = minbs, b, b2 = max1, b, |b− 1| = max|b1 − 1| , |b2 − 1|. (5.4.18)

Note that (A) and (B) are basic conditions for estimating h, and (C)and (D) are the special assumptions on the nonlinearity but without loss ofgenerality. Under other cases, the methods for estimating the bounds of h canbe analogously obtained. In real applications, one can take advantage of theconcrete situation for estimating h.

Remark 5.4.1. The four assumptions (A)-(D) are only suitable for deducing(5.4.17)-(5.4.18). Assumptions 5.4.1-5.4.5 are suitable for all the contents ofTSMPC.

It should be noted that, for the same h, with different Δ’s, different b1’sand b’s (or, bi,1’s and bi,2’s) can be obtained.

5.5 Stability of TSMPC

Definition 5.5.1. A region ΩN is the null controllable region (see [34]) ofsystem (5.4.1), if

(i) ∀x(0) ∈ ΩN, there exists an admissible control sequence (u(0), u(1), · · · ,−u ≤ u(i) ≤ u, ∀i ≥ 0) such that limk→∞ x(k) = 0;

(ii) ∀x(0) /∈ ΩN, there does not exist an admissible control sequence suchthat limk→∞ x(k) = 0.

According to Definition 5.5.1, for any setting of λ,QN , N,Q and anyequation solution error, the region of attraction of system (5.4.10) (denotedas Ω) satisfies Ω ⊆ ΩN.

In the following, for simplicity we take R = λI.

Theorem 5.5.1. (Exponential stability of TSMPC) Consider system (5.4.1)with two-step predictive controller (5.4.8)-(5.4.9). Suppose

(i) the choosing of λ,QN , N,Q makes Q− P0 + P1 > 0;

(ii) ∀x(0) ∈ Ω ⊂ Rn, ∀k ≥ 0,

−λh(vL(k))Th(vL(k)) + [h(vL(k))− vL(k)]T (λI +BTP1B)

× [h(vL(k))− vL(k)] ≤ 0. (5.5.1)

Then the equilibrium x = 0 of the closed-loop system (5.4.10) is locally expo-nentially stable with a region of attraction Ω.

© 2010 b T l d F G LLC

Page 134: 1420085301 Predictive Control

118 Chapter 5. Two-step model predictive control

Proof. Define a quadratic function V (k) = x(k)TP1x(k). For x(0) ∈ Ω, ap-plying (5.4.6), (5.4.8) and (5.4.10) we have

V (k + 1)− V (k)

=x(k)T[

A−B (

λI +BTP1B)−1

BTP1A]T

P1

×[

A−B (

λI +BTP1B)−1

BTP1A]

x(k)

− x(k)TP1x(k) + 2λx(k)TATP1B(

λI +BTP1B)−1 [

h(

vL(k))− vL(k)

]

+[

h(

vL(k))− vL(k)

]TBTP1B

[

h(

vL(k))− vL(k)

]

=x(k)T[

−Q+ P0 − P1 −ATP1B(

λI +BTP1B)−1

× λ(

λI +BTP1B)−1

BTP1A]

x(k)

+ 2λx(k)TATP1B(

λI +BTP1B)−1 [

h(

vL(k))− vL(k)

]

+[

h(

vL(k))− vL(k)

]TBTP1B

[

h(

vL(k))− vL(k)

]

=x(k)T (−Q+ P0 − P1)x(k)− λ(

vL(k))TvL(k)

− 2λ(

vL(k))T [

h(

vL(k))− vL(k)

]

+[

h(

vL(k))− vL(k)

]T

×BTP1B[

h(

vL(k))− vL(k)

]

=x(k)T (−Q+ P0 − P1)x(k)− λh(

vL(k))Th(

vL(k))

+[

h(

vL(k))− vL(k)

]T (λI +BTP1B

) [

h(

vL(k))− vL(k)

]

.

Note that in the above we have utilized the following fact:[

A−B (

λI +BTP1B)−1

BTP1A]T

P1B

=ATP1B[

I − (

λI +BTP1B)−1

BTP1B]

= λATP1B(

λI +BTP1B)−1

.

Under conditions (i) and (ii), it is clear that

V (k + 1)− V (k) ≤ −σmin (Q− P0 + P1)x(k)T x(k) < 0, ∀x(k) = 0

(where σmin(·) denotes the minimum eigenvalue). Therefore, V (k) is Lyapunovfunction for exponential stability.

The conditions in Theorem 5.5.1 just reflect the essential idea of two-step design. Condition (i) is a requirement on the linear control law (5.4.8),while condition (ii) is an extra requirement on h. Generally, decreasing theequation solution error and Δ benefits satisfaction of (5.5.1). From the proofof Theorem 5.5.1, it is easy to know that (i) is a sufficient stability condi-tion for unconstrained linear system because, with h = 1, (5.5.1) becomes−λvL(k)T vL(k) ≤ 0, i.e., condition (ii) is always satisfied.

Since (5.5.1) is not easy to check, the following two corollaries are given.

© 2010 b T l d F G LLC

Page 135: 1420085301 Predictive Control

5.5. Stability of TSMPC 119

Corollary 5.5.1. (Exponential stability of TSMPC) Consider system (5.4.1)with two-step predictive controller (5.4.8)-(5.4.9). Suppose

(i) Q− P0 + P1 > 0;

(ii) ∀x(0) ∈ Ω ⊂ Rn,∥∥vL(k)

∥∥ ≤ Δ for all k ≥ 0;

(iii)−λ

[

b21 − (b− 1)2]

+ (b− 1)2 σmax

(

BTP1B) ≤ 0. (5.5.2)

Then the equilibrium x = 0 of the closed-loop system (5.4.10) is locally expo-nentially stable with a region of attraction Ω.

Proof. Applying (5.4.11), it follows that

− λh(s)Th(s) + (h(s)− s)T (λI +BTP1B)

(h(s)− s)≤− λb21sT s+ (b− 1)2 σmax

(

λI +BTP1B)

sT s

=− λb21sT s+ λ (b− 1)2 sT s+ (b− 1)2 σmax

(

BTP1B)

sT s

=− λ[

b21 − (b− 1)2]

sT s+ (b− 1)2 σmax

(

BTP1B)

sT s.

Hence, if (5.5.2) is satisfied, (5.5.1) is also satisfied (where s = vL(k)).

Corollary 5.5.2. (Exponential stability of TSMPC) Consider system (5.4.1)with two-step predictive controller (5.4.8)-(5.4.9). Suppose

(i) Q− P0 + P1 > 0;

(ii) ∀x(0) ∈ Ω ⊂ Rn,∣∣vLi (k)

∣∣ ≤ Δ for all k ≥ 0;

(iii) the nonlinearity f is decentralized and

−λ (2b1 − 1) + (b− 1)2 σmax

(

BTP1B) ≤ 0. (5.5.3)

Then the equilibrium x = 0 of the closed-loop system (5.4.10) is locally expo-nentially stable with a region of attraction Ω.

Proof. According to (5.4.12), si [hi(si)− si] ≥ si [bi,1si − si], i ∈ 1, . . . ,m.Then,

− λsT s− 2λsT (h(s)− s) + (h(s)− s)T BTP1B (h(s)− s)

≤− λsT s− 2λm∑

i=1

(bi,1 − 1) s2i + (h(s)− s)T BTP1B (h(s)− s)

≤− λsT s− 2λ (b1 − 1) sT s+ (b− 1)2 σmax

(

BTP1B)

sT s

=− λ (2b1 − 1) sT s+ (b− 1)2 σmax

(

BTP1B)

sT s.

Hence, if (5.5.3) is satisfied, (5.5.1) is also satisfied (where s = vL(k)).

© 2010 b T l d F G LLC

Page 136: 1420085301 Predictive Control

120 Chapter 5. Two-step model predictive control

Proposition 5.5.1. (Exponential stability of TSMPC) In Corollary 5.5.1(Corollary 5.5.2), if the inequalities in conditions (i) and (iii) are substitutedby:

Q− P0 + P1 + ηATP1B(λI +BTP1B)−2BTP1A > 0

where, η = λ[

b21 − (b− 1)2]

−(b− 1)2 σmax

(

BTP1B)

(Corollary 5.5.1) or η =

λ (2b1 − 1) − (b− 1)2 σmax

(

BTP1B)

(Corollary 5.5.2), then the conclusionstill holds.

Proof. According to the proofs of Corollaries 5.5.1-5.5.2,

− λh (vL(k))Th(

vL(k))

+[

h(

vL(k))− vL(k)

]T (λI +BTP1B

)

× [

h(

vL(k))− vL(k)

] ≤ −η (vL(k))T (

vL(k))

.

According to (5.4.8) and the proof of Theorem 5.5.1,

V (k + 1)− V (k) ≤ −x(k)T [Q− P0 + P1 + ηATP1B(λI +BTP1B)−2BTP1A]

× x(k).

Then, similar to Theorem 5.5.1, the conclusion holds.

Remark 5.5.1. Stability conclusion in Proposition 5.5.1 is less conservativethan Corollaries 5.5.1-5.5.2, and is not necessarily more conservative thanTheorem 5.5.1. However, for controller parameter tuning, applying Proposi-tion 5.5.1 is not as straightforward as applying Corollaries 5.5.1-5.5.2.

Remark 5.5.2. If f = 1, i.e., there is only input saturation, then bi,2 = 1,(b− 1)2 = (b1 − 1)2 and both (5.5.2) and (5.5.3) will become −λ (2b1 − 1) +(b1 − 1)2 σmax

(

BTP1B) ≤ 0.

Denote (5.5.2) and (5.5.3) as:

−λ+ βσmax

(

BTP1B) ≤ 0 (5.5.4)

where, β = (b− 1)2 /[b21 − (b− 1)2] for (5.5.2) and β = (b− 1)2 / (2b1 − 1) for(5.5.3).

As for the region of attraction in Theorem 5.5.1, Corollaries 5.5.1 and5.5.2, we give the following easily manipulable ellipsoidal one.

Corollary 5.5.3. (Region of attraction of TSMPC) Consider system (5.4.1)with two-step predictive controller (5.4.8)-(5.4.9). If

(i) Q− P0 + P1 > 0;

(ii) the choosing of Δ, b1, b satisfies (5.5.2),

© 2010 b T l d F G LLC

Page 137: 1420085301 Predictive Control

5.5. Stability of TSMPC 121

( )Lh v

2h b= 11h b= 2

1h b=

1∆ 2∆

2−∆ 1−∆(0,0)

Lv

Figure 5.5.1: Parameter selection in the reserved nonlinear item.

then the region of attraction Ω for the equilibrium x = 0 of the closed-loopsystem (5.4.10) is not smaller than

Sc =

x|xTP1x ≤ c

, c =Δ2

∥∥∥(λI +BTP1B)−1

BTP1AP−1/21

∥∥∥

2 . (5.5.5)

Proof. Transform the linear system (A,B,C) into(

A, B, C)

with nonsingulartransformation x = P

1/21 . Then, ∀x(0) ∈ Sc, ‖x(0)‖ ≤ √c and

∥∥vL(0)

∥∥ =

∥∥∥

(

λI +BTP1B)−1

BTP1Ax(0)∥∥∥

=∥∥∥

(

λI +BTP1B)−1

BTP1AP−1/21 x(0)

∥∥∥

≤∥∥∥

(

λI +BTP1B)−1

BTP1AP−1/21

∥∥∥ ‖x(0)‖ ≤ Δ.

Under (i) and (ii), all the conditions in Corollary 5.5.1 are satisfied at timek = 0 if x(0) ∈ Sc. Furthermore, according to the proof of Theorem 5.5.1,x(1) ∈ Sc if x(0) ∈ Sc. Hence, for ∀x(0) ∈ Sc,

∥∥vL(1)

∥∥ ≤ Δ. This shows that

all the conditions in Corollary 5.5.1 are satisfied at time k = 1, and by analogythey are also satisfied for any k > 1.

As mentioned in the last section, choosing different Δ may result in differ-ent b1 and b (corresponding to (5.5.2)). So we can choose the largest possibleΔ. Take a single input system with only symmetric saturation constraint (asin Figure 5.5.1) as an example. By Remark 5.5.2, we can choose the small-est b1 satisfying b1 > 1/2 and (2b1 − 1) / (b1 − 1)2 ≥ BTP1B/λ, then Δ isdetermined according to Figure 5.5.1.

Apparently the region of attraction for given controller parameters maybe too small if we have no desired region of attraction prior to the controllerdesign. To design a controller with desired region of attraction, the conceptof “semi-global stabilization” could be technically involved.

© 2010 b T l d F G LLC

Page 138: 1420085301 Predictive Control

122 Chapter 5. Two-step model predictive control

If A has no eigenvalues outside of the unit circle, semi-global stabiliza-tion (see [45], [46]) means the design of a feedback control law that resultsin a region of attraction that includes any a priori given compact set in n-dimensional space . If A has eigenvalues outside of the unit circle, semi-globalstabilization (see [33]) means the design of a feedback control law that resultsin a region of attraction that includes any a priori given compact subset ofthe null controllable region.

The next section will derive the semi-global stabilization techniques forTSMPC. If A has no eigenvalues outside of the unit circle, TSMPC can be de-signed (tuning λ,QN , N,Q) to have an arbitrarily large region of attraction.Otherwise, a set of λ,QN , N,Q can be chosen to obtain a set of domains ofattraction with their union contained in the null controllable region.

5.6 Design of the region of attraction ofTSMPC based on semi-global stability

5.6.1 Case system matrix has no eigenvalue outside ofthe unit circle

Theorem 5.6.1. (Semi-global stability of TSMPC) Consider system (5.4.1)with two-step predictive controller (5.4.8)-(5.4.9). Suppose

(i) A has no eigenvalues outside of the unit circle;

(ii) b1 > |b− 1| > 0, i.e., β > 0.

Then, for any bounded set Ω ⊂ Rn, there exist λ,QN , N,Q such that theequilibrium x = 0 for the closed-loop system (5.4.10) is locally exponentiallystable with a region of attraction Ω.

Proof. We show how λ,QN , N,Q can be chosen to satisfy condition (i)-(iii)in Corollary 5.5.1. First of all, choose Q > 0 and an arbitrary N . In thefollowing, we elaborate on how to choose λ and QN .

(s1) Choose QN to satisfy

QN = Q1 +Q+ATQNA−ATQNB(

λI +BTQNB)−1

BTQNA (5.6.1)

where Q1 ≥ 0 is an arbitrary symmetric matrix. Eq. (5.6.1) means that Riccatiiteration (5.4.6) satisfies PN−1 ≤ PN = QN and has monotonic decreasingproperty (see [56]), so P0 ≤ P1 and Q− P0 + P1 > 0. Therefore, condition (i)in Corollary 5.5.1 can be satisfied for any λ. Changing λ, QN is also changedcorresponding to (5.6.1).

(s2) The fake algebraic Riccati equation (see [56]) of (5.4.6) is

Pj+1 = (Q+ Pj+1 − Pj) +ATPj+1A (5.6.2)

− ATPj+1B(

λI +BTPj+1B)−1

BTPj+1A,

0 ≤ j < N, PN = QN , PN − PN−1 = Q1. (5.6.3)

© 2010 b T l d F G LLC

Page 139: 1420085301 Predictive Control

5.6 Region of attraction, semi-global stability 123

Multiply both sides of (5.6.3) by λ−1, then

Pj+1 = (λ−1Q+ Pj+1 (5.6.4)

− Pj) +AT Pj+1A−AT Pj+1B(

I +BT Pj+1B)−1

BT Pj+1A,

0 ≤ j < N, PN = λ−1QN , PN − PN−1 = λ−1Q1, (5.6.5)

where Pj+1 = λ−1Pj+1, 0 ≤ j < N . As λ → ∞, Pj+1 → 0, 0 ≤ j < N(see [46]). Since β > 0, there exists a suitable λ∗0 such that whenever λ ≥ λ∗0,βσmax

(

BT P1B) ≤ 1, i.e. condition (iii) in Corollary 5.5.1 can be satisfied.

(s3) Further, choose an arbitrary constant α > 1, then there exists λ∗1 ≥ λ∗0such that whenever λ ≥ λ∗1,

P1/21 B

(

I +BT P1B)−1

BT P1/21 ≤ (1− 1/α) I. (5.6.6)

For j = 0, left and right multiplying both sides of (5.6.5) by P−1/21 and

applying (5.6.6) obtains

P−1/21 AT P1AP

−1/21 ≤ αI − αP−1/2

1

(

λ−1Q+ P1 − P0

)

P−1/21 ≤ αI,

i.e.,∥∥∥P

1/21 AP

−1/21

∥∥∥ ≤ √α.

For any bounded Ω, choose c such that

c ≥ supx∈Ω, λ∈[λ∗

1 ,∞)

xTλ−1P1x.

So Ω ⊆ Sc =

x|xTλ−1P1x ≤ c

.Denote (A, B, C) as the transformed system of (A,B,C) by nonsingular

transformation x = P1/21 x, then there exists a sufficiently large λ∗ ≥ λ∗1 such

that ∀λ ≥ λ∗ and ∀x(0) ∈ Sc,∥∥∥

(

λI +BTP1B)−1

BTP1Ax(0)∥∥∥ =

∥∥∥

(

I + BT B)−1

BT Ax(0)∥∥∥

≤∥∥∥

(

I + BT B)−1

BT∥∥∥

√αc ≤ Δ

because∥∥∥

(

I + BT B)−1

BT∥∥∥ tends to be smaller when λ is increased.

Hence, for ∀x(0) ∈ Ω, condition (ii) in Corollary 5.5.1 can be satisfiedat time k = 0, and according to the proof of Corollary 5.5.3 it can also besatisfied for all k > 0.

In a word, if we chooseQN by (5.6.1), Q > 0,N arbitrary and λ∗ ≤ λ <∞,then the closed-loop system is locally exponentially stable with a region ofattraction Ω.

Remark 5.6.1. In the proof of Theorem 5.6.1, both Ω and Sc are regions ofattraction with respect to x = 0 of system (5.4.10). For further explanation,

© 2010 b T l d F G LLC

Page 140: 1420085301 Predictive Control

124 Chapter 5. Two-step model predictive control

we introduce the maximal region of attraction Ω0 which contains any regionof attraction with respect to x = 0 of system (5.4.10). Therefore, in Theorem5.6.1, “with a region of attraction Ω” can be substituted by “with Ω containedin its maximal region of attraction.”

Corollary 5.6.1. (Semi-global stability of TSMPC) Suppose

(i) A has no eigenvalues outside of the unit circle;

(ii) the nonlinear equation is solved sufficiently accurate such that, in the ab-sence of input saturation constraint, there exist suitable

Δ = Δ0, b1, b

satisfying b1 > |b− 1| > 0.

Then the conclusion in Theorem 5.6.1 still holds.

Proof. In the absence of input saturation constraint, determining b1, b forgiven Δ (or given b1, b, determining Δ) is independent of the controllerparameter λ,QN , N,Q. When there is input saturation, still choose Δ = Δ0.Then the following two cases may happen:

Case 1: b1 > |b− 1| > 0 as λ = λ0. Decide the parameters as in the proofof Theorem 5.6.1, except that λ∗0 ≥ λ0.

Case 2: |b− 1| ≥ b1 > 0 as λ = λ0. Apparently the reason lies in thatthe control action is too much restricted by the saturation constraint. By thesame reason as in the proof of Theorem 5.6.1 and by (5.4.8) we know that,for any bounded Ω, there exists λ∗2 ≥ λ0 such that

∀λ ≥ λ∗2 and ∀x(k) ∈ Ω, u(k) does not violate the saturation constraint.

This process is equivalent to decrease Δ and redetermine b1, b such thatb1 > |b− 1| > 0.

In a word, if the region of attraction has not been satisfactory with λ = λ0,then it can be satisfied by choosing max λ∗, λ∗2 ≤ λ < ∞ and suitableQN , N,Q.

Although a method is implicitly presented in the proofs of Theorem 5.6.1and Corollary 5.6.1 for tuning the controller parameters, a large λ tends to beachieved. Then, when the desired region of attraction Ω is large, the obtainedcontroller will be very conservative. Actually, we do not have to choose λ asin Theorem 5.6.1 and Corollary 5.6.1. Moreover, a series of λ’s can be chosenand the following controller algorithm can be applied.

Algorithm 5.6 (The λ-switching algorithm of TSMPC)Off-line, complete the following steps 1-3:

Step 1. Choose adequate b1, b and obtain the largest possible Δ, or, chooseadequate Δ and obtain the smallest possible |b− 1| and largest pos-sible b1 (refer to section 5.4 for estimating the bounds, and (5.5.4)).Calculate β > 0.

Step 2. Choose Q,N,QN as in the proof of Theorem 5.6.1.

© 2010 b T l d F G LLC

Page 141: 1420085301 Predictive Control

5.6 Region of attraction, semi-global stability 125

Step 3. Gradually increase λ, until (5.5.4) is satisfied at λ = λ. Increase λ toobtain λM > · · · > λ2 > λ1 ≥ λ. The parameter λi corresponds toConi and the region of attraction Si (Si calculated by Corollary 5.5.3,i ∈ 1, 2, . . . ,M). The inclusion condition S1 ⊂ S2 ⊂ · · · ⊂ SM issatisfied and SM should contain the desired region of attraction Ω.

On-line, at each time k,

A) if x(k) ∈ S1, then choose Con1;

B) if x(k) ∈ Si, x(k) /∈ Si−1, then choose Coni, i ∈ 2, 3, . . . ,M.

5.6.2 Case system matrix has eigenvalues outside of theunit circle

In this case, semi-global stabilization cannot be implemented in a simple man-ner as in the above case. However, a set of ellipsoidal domains of attractionSi, i ∈ 1, 2, . . . ,M can be achieved via a set of controllers with respect todifferent parameter sets λ,QN , N,Qi and the region of attraction Si. In thefollowing we give the algorithm.

Algorithm 5.7 (The method for parameter search in TSMPC)

Step 1. Refer to Step 1 of Algorithm 5.6. Set S = 0, i = 1.

Step 2. Select QN , N,Q (changing them alternatively).

Step 3. Determine Sc, λ,QN , N,Q via the following Steps 3.1-3.3:

Step 3.1. Check if (5.5.4) is satisfied. If not, tune λ to satisfy (5.5.4).

Step 3.2. Check if Q − P0 + P1 > 0 is satisfied. If it is satisfied, go to Step3.3; else tune QN , N,Q to satisfy it and go to Step 3.1.

Step 3.3. Determine P1 and determine c by∥∥∥

(

λI +BTP1B)−1

BTP1AP−1/21

∥∥∥√

c = Δ. Then the region of attraction for the real system will in-clude the level set Sc =

x|xTP1x ≤ c

.

Step 4. Set λ,QN , N,Qi = λ,QN , N,Q, Si = Sc and S = S⋃Si.

Step 5. Check if S contains the desired region of attraction Ω. If it is, go toStep 6; else set i = i+ 1 and go to Step 2.

Step 6. Set M = i and STOP.

Three cases may happen in Algorithm 5.7:

(A) the trivial case that a single Si is found to satisfy Si ⊇ Ω;

(B) a set of Si (i ∈ 1, 2, . . . ,M and M > 1) are found satisfying⋃Mi=1 S

i ⊇Ω;

© 2010 b T l d F G LLC

Page 142: 1420085301 Predictive Control

126 Chapter 5. Two-step model predictive control

(C) Si satisfying⋃Mi=1 S

i ⊇ Ω cannot be found with a finite number M (inreal application, M is prescribed to be not larger than an M0).

For case (B), the following controller switching algorithm can be applied(which is somewhat different from Algorithm 5.6):

Algorithm 5.8 (Switching algorithm of TSMPC)Off-line, apply Algorithm 5.7 to choose a set of ellipsoidal domains

S1, S2, · · · ,SM satisfying

⋃Mi=1 S

i ⊇ Ω. Arrange Si in a proper way that results inS(1), S(2), · · · , S(M) with corresponding controllers Con(i), i ∈ 1, 2, . . . ,M.It is not necessary that S(j) ⊆ S(j+1) for any j ∈ 1, 2, . . . ,M − 1.

On-line, at each time k,

A) if x(k) ∈ S(1), then choose Con(1);

B) if x(k) ∈ S(i), x(k) /∈ S(l), ∀l < i, then choose Con(i), i ∈ 2, 3, . . . ,M.For case (C), we can take one of the following strategies:

(i) Decrease the equation solution error and re-determine Δ, b1, b.(ii) When the state lies outside of

⋃M0i=1 S

i, adopt the nonlinear separationmethod as in Remark 5.1.1 (optimizing v(k|k) considering the constrainton the intermediate variable). For this reason, we should first transformthe saturation constraint on u into the constraint on v. For complexnonlinearity, obtaining the constraint on v could be very difficult, andit is even possible that nonlinear constraint is encountered. If f is de-centralized, as that in Assumption 5.4.5, then it is easy to obtain theconstraint on the intermediate variable.

(iii) When the state lies outside of⋃M0i=1 S

i, substitute v(k + i|k) in (5.4.3)by u(k+ i|k) and apply the pure nonlinear MPC to calculate the controlaction (i.e., adopt MPC based on the nonlinear prediction model andnonlinear optimization).

Remark 5.6.2. The techniques in Algorithms 5.3 and 5.4 can be utilized tocalculate the region of attraction of TSMPC. Even, the case when the linearsub-model has uncertainties can be considered; see [52].

5.6.3 Numerical example

First consider the case that A has no eigenvalue outside of the unit circle.

The linear subsystem is A =[

1 01 1

]

, B =[

10

]

. The invertible static

nonlinearity isf(ϑ) = 4/3ϑ+ 4/9ϑsign ϑ sin(40ϑ),

and the input constraint is |u| ≤ 1. A simple solution u = 3/4vL is appliedto the algebraic equation. The resultant h is shown in Figure 5.6.1. Choose

© 2010 b T l d F G LLC

Page 143: 1420085301 Predictive Control

5.6 Region of attraction, semi-global stability 127

Lv

v

-2.5

-2.5 -1.25 0 1.25 2.5-5

0

2.5

5 4 3 Lv v=

2 3 Lv v=

Figure 5.6.1: Curve of h.

b1 = 2/3 and b2 = 4/3 as in Figure 5.6.1, then β = 1/3. Choose Δ = f(1)/b1 =2.4968.

The initial state is x(0) = [10,−33]T . Choose N = 4, Q = 0.1I, QN =0.11I +ATQNA−ATQNB

(

λ+BTQNB)−1

BTQNA.Choose λ = 0.225, 0.75, 2, 10, 50, then the domains of attraction deter-

mined by Corollary 5.5.3 are, respectively,

S1c =

x|xT[

0.6419 0.29670.2967 0.3187

]

x ≤ 1.1456

,

S2c =

x|xT[

1.1826 0.44610.4461 0.3760

]

x ≤ 3.5625

,

S3c =

x|xT[

2.1079 0.65470.6547 0.4319

]

x ≤ 9.9877

,

S4c =

x|xT[

5.9794 1.30431.3043 0.5806

]

x ≤ 62.817

,

S5c =

x|xT[

18.145 2.71332.7133 0.8117

]

x ≤ 429.51

.

Figure 5.6.2 depicts S1c , S

2c , S

3c , S

4c and S5

c from inside to outside. x(0) lies inS5c .

The rule of Algorithm 5.6 in the simulation is:

• if x(k) ∈ S1c , then λ = 0.225;

• else if x(k) ∈ S2c , then λ = 0.75;

• else if x(k) ∈ S3c , then λ = 2;

© 2010 b T l d F G LLC

Page 144: 1420085301 Predictive Control

128 Chapter 5. Two-step model predictive control

-15 -10 -5 0 5 10 15-60

-40

-20

0

20

40

60

2x

1x

Figure 5.6.2: The closed-loop state trajectories when A has no eigenvalueoutside of the unit circle.

• else if x(k) ∈ S4c , then λ = 10;

• else λ = 50.

The simulation result is shown in Figure 5.6.2. The line with “o” is the statetrajectory with Algorithm 5.6, while the line with “*” is the state trajectorywith λ = 50. With Algorithm 5.6, the trajectory is very close to the originafter 15 simulation samples, but when λ = 50 is always adopted, the trajectoryhas just reached to the boundary of S2

c after 15 simulation samples.Further, consider the case that A has eigenvalues outside of the unit circle.

The linear subsystem is A =[

1.2 01 1.2

]

and B =[

10

]

. The nonlineari-

ties, the solution of equation and the corresponding b1, b2,Δ are the sameas above. We obtain three ellipsoidal regions of attraction S1, S2, S3, thecorresponding parameter sets are:

λ,QN , Q,N1 =

8.0,[

1 00 1

]

,

[0.01 00 1.01

]

, 12

,

λ,QN , Q,N2 =

2.5,[

1 00 1

]

,

[

0.9 00 0.1

]

, 4

,

λ,QN , Q,N3 =

1.3,[

3.8011 1.22561.2256 0.9410

]

,

[1.01 00 0.01

]

, 4

.

© 2010 b T l d F G LLC

Page 145: 1420085301 Predictive Control

5.7. Two-step output feedback model predictive control (TSOFMPC) 129

-4 -3 -2 -1 0 1 2 3 4-6

-4

-2

0

2

4

6

2x

1x

(1)S (2)S

(3)S

Figure 5.6.3: The closed-loop state trajectories when A has eigenvalue outsideof the unit circle.

Arrange S1, S2, S3 and the parameter sets in the following way:

S(1) = S3, S(2) = S2, S(3) = S1,

λ,QN , Q,N(1) = λ,QN , Q,N3 , λ,QN , Q,N(2) = λ,QN , Q,N2 ,λ,QN , Q,N(3) = λ,QN , Q,N1 .

Choose two sets of initial state as x(0) = [−3.18, 4]T and x(0) = [3.18, −4]T .x(0) ∈ S(3). With Algorithm 5.8 applied, the resultant state trajectories areshown in Figure 5.6.3.

5.7 Two-step output feedback model predic-

tive control (TSOFMPC)

Consider the system model (5.4.1), with notations the same as above. InTSOFMPC, suppose (A,B,C) is completely controllable and observable.Moreover, suppose f is not an exact model of the nonlinearity, the true non-linearity is f0 and it is possible that f = f0. The first step in TSOFMPC onlyconsiders the linear subsystem. The state estimation is x and the predictionmodel is

x(k + 1|k) = Ax(k|k) +Bv(k|k), x(k|k) = x(k). (5.7.1)

© 2010 b T l d F G LLC

Page 146: 1420085301 Predictive Control

130 Chapter 5. Two-step model predictive control

Define the objective function as

J(N, x(k)) = ‖x(k +N |k)‖2PN+N−1∑

j=0

[

‖x(k + j|k)‖2Q + ‖v(k + j|k)‖2R]

(5.7.2)where Q, R are the same as in TSMPC; PN ≥ 0 is the weighting matrix ofthe terminal state. The Riccati iteration

Pj = Q+ATPj+1A−ATPj+1B(

R+BTPj+1B)−1

BTPj+1A, j < N (5.7.3)

is adopted to obtain the predictive control law

v∗(k|k) = − (R+BTP1B)−1

BTP1Ax(k). (5.7.4)

Noting that v∗(k|k) in (5.7.4) may be impossible to implement via a realcontrol input, we formalize it as

vL(k) Kx(k) = − (R+BTP1B)−1

BTP1Ax(k). (5.7.5)

The second step in TSOFMPC is the same as in TSMPC. Hence, theactual intermediate variable is

v(k) = h(vL(k)) = f0 (sat u(k)) = f0 sat g(vL(k)). (5.7.6)

Equation (5.7.6) is the control law of TSOFMPC in terms of the intermediatevariable.

Now, we turn our attention to designing the state observer. First, we sup-pose v is not measurable, and that f = f0. Then, v is not available (notexactly known), and the observer can be designed based on vL as follows

x(k + 1) = (A− LC) x(k) +BvL(k) + Ly(k). (5.7.7)

When v is measurable or f = f0, v is available (exactly known) and anestimator simpler than (5.7.7) can be adopted. The case in which v is availablewill be discussed later in section 5.9.

L in (5.7.7) is the observer gain matrix, defined as

L = AP1CT(

Ro + CP1CT)−1

(5.7.8)

where P1 can be iterated from

Pj = Qo +APj+1AT −APj+1C

T(

Ro + CPj+1CT)−1

CPj+1AT , j < No

(5.7.9)where Ro, Qo, PNo and No are taken as tunable parameters.

© 2010 b T l d F G LLC

Page 147: 1420085301 Predictive Control

5.8. Stability of TSOFMPC 131

By (5.4.1) and (5.7.7), denoting e = x − x we can obtain the followingclosed-loop system:

x(k + 1) = (A+BK)x(k)−BKe(k) +B[

h(vL(k))− vL(k)]

e(k + 1) = (A− LC) e(k) +B[

h(vL(k)) − vL(k)] . (5.7.10)

When h = 1, the nonlinear item in (5.7.10) will disappear, and the studiedproblem will become linear. However, because of desaturation, the error en-countered in solving equation, the modeling error of nonlinearity, etc., h = 1cannot hold.

5.8 Stability of TSOFMPC

Lemma 5.8.1. Suppose X and Y are matrices, while s and t are vectors, allwith appropriate dimensions, then

2sTXY t ≤ γsTXXT s+ 1/γ · tTY TY t, ∀γ > 0. (5.8.1)

Define vx(k) Kx(k) and ve(k) Ke(k), so that vx(k) = vL(k) + ve(k).In the following, we take R = λI.

Theorem 5.8.1. (Stability of TSOFMPC) For system represented by (5.4.1),TSOFMPC (5.7.5)-(5.7.7) is adopted. Suppose there exist positive scalars γ1

and γ2 such that the system design satisfies

(i) Q > P0 − P1;

(ii) (1 + 1/γ2)(

−Qo + P0 − LRoLT)

− P1

< −λ−1 (1 + 1/γ1)ATP1B(

λI +BTP1B)−1

BTP1A;

(iii) ∀ [x(0)T , e(0)T] ∈ Ω ⊂ R2n, ∀k ≥ 0,

−λh(vL(k))Th(vL(k)) +[

h(vL(k))− vL(k)]T

×[

(1 + γ1)(

λI +BTP1B)

+ (1 + γ2)λBT P1B] [

h(vL(k)) − vL(k)] ≤

0.

Then, the equilibrium x = 0, e = 0 of the closed-loop system is exponentiallystable and the region of attraction is Ω.

Proof. Choose a quadratic function as V (k) = x(k)TP1x(k) + λe(k)T P1e(k).Applying (5.7.10), we obtain the following:

V (k + 1)− V (k)

=

(A+BK)x(k) +B[

h(vL(k))− vL(k)]T

P1

(A+BK)x(k)

+B[

h(vL(k))− vL(k)]

© 2010 b T l d F G LLC

Page 148: 1420085301 Predictive Control

132 Chapter 5. Two-step model predictive control

− x(k)TP1x(k)− 2e(k)TKTBTP1

(A+BK)x(k) +B[

h(vL(k))− vL(k)]

+ e(k)TKTBTP1BKe(k) + λ

(A− LC) e(k) +B[

h(vL(k))− vL(k)]T

P1

×

(A− LC) e(k) +B[

h(vL(k))− vL(k)]− λe(k)T P1e(k)

=x(k)T(−Q+P0 − P1−λKTK

)

x(k)− 2λx(k)TKT[

h(vL(k)) − vL(k)]

+[

h(vL(k))− vL(k)]T

×BTP1B[

h(vL(k))− vL(k)]− 2e(k)TKTBTP1

(A+BK)x(k)

+B[

h(vL(k))− vL(k)]

+ e(k)TKTBTP1BKe(k) + λ

(A− LC) e(k) +B[

h(vL(k))− vL(k)]T

P1

×

(A− LC) e(k) +B[

h(vL(k))− vL(k)]− λe(k)T P1e(k)

=x(k)T (−Q+ P0 − P1)x(k) − λvx(k)T vx(k)− 2λvx(k)T[

h(vL(k))− vL(k)]

+[

h(vL(k))− vL(k)]T

×BTP1B[

h(vL(k))− vL(k)]− 2e(k)TKTBTP1 (A+BK)x(k)

− 2e(k)TKTBTP1B[

h(vL(k))− vL(k)]

+ e(k)TKTBTP1BKe(k) + λe(k)T (A− LC)T P1 (A− LC) e(k)

+ 2λe(k)T (A− LC)T P1B[

h(vL(k))− vL(k)]

+ λ[

h(vL(k))− vL(k)]TBT P1B

[

h(vL(k))− vL(k)]− λe(k)T P1e(k)

=x(k)T (−Q+ P0 − P1)x(k) − λvx(k)T vx(k)− 2λvx(k)T[

h(vL(k))− vL(k)]

+[

h(vL(k))− vL(k)]T

×BT(

P1 + λP1

)

B[

h(vL(k))− vL(k)]

+ 2λve(k)T vx(k)− 2ve(k)TBTP1B

× [

h(vL(k))− vL(k)]

+ ve(k)TBTP1Bve(k)

+ λe(k)T[

(A− LC)T P1 (A− LC)− P1

]

e(k)

+ 2λe(k)T (A− LC)T P1B[

h(vL(k))− vL(k)]

=x(k)T (−Q+P0−P1)x(k)−λve(k)T ve(k)− λvL(k)T vL(k)− 2λve(k)T vL(k)

− 2λve(k)T[

h(vL(k))− vL(k)]− 2λvL(k)T

[

h(vL(k))− vL(k)]

+[

h(vL(k))− vL(k)]TBT

(

P1 + λP1

)

B[

h(vL(k))− vL(k)]

+ 2λve(k)T ve(k) + 2λve(k)T vL(k)− 2ve(k)TBTP1B[

h(vL(k))− vL(k)]

+ ve(k)TBTP1Bve(k) + λe(k)T

[

(A− LC)T P1 (A− LC)− P1

]

e(k)

+ 2λe(k)T (A− LC)T P1B[

h(vL(k))− vL(k)]

© 2010 b T l d F G LLC

Page 149: 1420085301 Predictive Control

5.8. Stability of TSOFMPC 133

=x(k)T (−Q+ P0 − P1)x(k) − λh(vL(k))Th(vL(k)) +[

h(vL(k))− vL(k)]T

×(

λI +BTP1B + λBT P1B) [

h(vL(k))− vL(k)]

− 2ve(k)T(

λI +BTP1B) [

h(vL(k))− vL(k)]

+ ve(k)T(

λI +BTP1B)

ve(k)

+ λe(k)T[

(A− LC)T P1 (A− LC)− P1

]

e(k) + 2λe(k)T (A− LC)T P1B[

h(vL(k))− vL(k)]

.

By applying Lemma 5.8.1 twice, we obtain

V (k + 1)− V (k)

≤x(k)T (−Q+ P0 − P1)x(k)− λh(vL(k))Th(vL(k))

+[

h(vL(k))− vL(k)]T

[

(1 + γ1)(

λI +BTP1B)

+ (1 + γ2) λBT P1B]

× [

h(vL(k))− vL(k)]

+ (1 + 1/γ1) ve(k)T(

λI +BTP1B)

ve(k)

+ λe(k)T[

(1 + 1/γ2) (A− LC)T P1 (A− LC)− P1

]

e(k)

=x(k)T (−Q+ P0 − P1)x(k)− λh(vL(k))Th(vL(k))

+[

h(vL(k))− vL(k)]T

[

(1 + γ1)(

λI +BTP1B)

+ (1 + γ2) λBT P1B]

× [

h(vL(k))− vL(k)]

+ (1 + 1/γ1) ve(k)T(

λI +BTP1B)

ve(k)

+ (1 + 1/γ2)λe(k)T(

−Qo + P0 − LRoLT)

e(k)− λe(k)T P1e(k).

With conditions (i)-(iii) satisfied, V (k+1)−V (k) < 0, ∀ [x(k)T , e(k)T ] =0. Hence, V (k) is Lyapunov function that proves exponential stability.

Conditions (i)-(ii) in Theorem 5.8.1 are the requirements imposed on R,Q, PN , N , Ro, Qo, PNo and No, while (iii) is the requirement imposed onh. Generally, decreasing the equation solution error, γ1 and γ2 will improvesatisfaction of (iii). When h = 1, (i)-(ii) are stability conditions of the linearsystem.

If (i)-(ii) are satisfied but h = 1, then we can obtain more sensible condi-tions under (iii). For this reason we adopt Assumptions 5.4.4-5.4.5.

Corollary 5.8.1. (Stability of TSOFMPC) For systems represented by(5.4.1), TSOFMPC (5.7.5)-(5.7.7) is adopted, where h satisfies (5.4.11). Sup-pose

(A1) ∀ [x(0), e(0)] ∈ Ω ⊂ R2n,∥∥vL(k)

∥∥ ≤ Δ for all k ≥ 0;

(A2) there exist positive scalars γ1 and γ2 such that the system design satisfies(i)-(ii) in Theorem 5.8.1 and

(iii) −λ[

b21 − (1 + γ1) (b− 1)2]

+ (b− 1)2 σmax

(

(1 + γ1)BTP1B + (1 + γ2)λBT P1B)

≤ 0.

© 2010 b T l d F G LLC

Page 150: 1420085301 Predictive Control

134 Chapter 5. Two-step model predictive control

Then, the equilibrium x = 0, e = 0 of the closed-loop system is exponentiallystable with a region of attraction Ω.

Proof. Applying condition (iii) in Theorem 5.8.1 and (5.4.11) to obtain thefollowing result:

− λh(s)Th(s) + [h(s)− s]T[

(1 + γ1)(

λI +BTP1B)

+ (1 + γ2)λBT P1B]

[h(s)− s]≤− λb21sT s+ (b− 1)2 σmax

(

(1 + γ1)(

λI +BTP1B)

+ (1 + γ2)λBT P1B)

sT s

=− λb21sT s+ (1 + γ1)λ (b− 1)2 sT s+ (b− 1)2 σmax

×(

(1 + γ1)BTP1B + (1 + γ2)λBT P1B)

sT s

=− λ[

b21 − (1 + γ1) (b− 1)2]

sT s+ (b− 1)2 σmax

×(

(1 + γ1)BTP1B + (1 + γ2)λBT P1B)

sT s.

Hence, if condition (iii) is satisfied, then condition (iii) in Theorem 5.8.1 willalso be satisfied. This proves stability.

Remark 5.8.1. We can substitute (iii) in Corollary 5.8.1 by the followingmore conservative condition:−λ

[

b21 − (1 + γ1) (b− 1)2 − (1 + γ2) (b− 1)2 σmax

(

BT P1B)]

+ (1 + γ1) (b− 1)2 σmax

(

BTP1B) ≤ 0.

The above condition will be useful in the following.

About the region of attraction in Theorem 5.8.1 and Corollary 5.8.1, wehave the following result.

Theorem 5.8.2. (Region of attraction of TSOFMPC) For systems repre-sented by (5.4.1), TSOFMPC (5.7.5)-(5.7.7) is adopted where h satisfies(5.4.11). Suppose there exist positive scalars Δ, γ1 and γ2 such that condi-tions (i)-(iii) in Corollary 5.8.1 are satisfied. Then, the region of attractionfor the closed-loop system is not smaller than

Sc =

(x, e) ∈ R2n|xTP1x+ λeT P1e ≤ c

, (5.8.2)

where

c = (Δ/d)2 , d =∥∥∥(λI +BTP1B)−1BTP1A

[

P−1/21 , − λ−1/2P

−1/21

]∥∥∥ .

(5.8.3)

Proof. Having satisfied conditions (i)-(iii) in Corollary 5.8.1, we need only toverify that ∀ [x(0), e(0)] ∈ Sc,

∥∥vL(k)

∥∥ ≤ Δ for all k ≥ 0.

© 2010 b T l d F G LLC

Page 151: 1420085301 Predictive Control

5.8. Stability of TSOFMPC 135

We adopt two nonsingular transformations:

x = P1/21 x, e = λ1/2P

1/21 e.

Then, ∀ [x(0), e(0)] ∈ Sc,∥∥[

x(0)T e(0)T]∥∥ ≤ √c and

∥∥vL(0)

∥∥ =

∥∥∥

(

λI +BTP1B)−1

BTP1A [x(0)− e(0)]∥∥∥

≤∥∥∥

[ (

λI +BTP1B)−1

BTP1AP−1/21

− (

λI +BTP1B)−1

BTP1Aλ−1/2P

−1/21

]∥∥∥

× ∥∥[

x(0)T e(0)T]∥∥ ≤ Δ. (5.8.4)

Thus, all the conditions in Corollary 5.8.1 are satisfied at time k = 0 if[x(0), e(0)] ∈ Sc. According to the proof of Theorem 5.8.1, [x(1), e(1)] ∈ Scif [x(0), e(0)] ∈ Sc. Therefore,

∥∥vL(1)

∥∥ ≤ Δ for all [x(0), e(0)] ∈ Sc, which

shows that all the conditions in Corollary 5.8.1 are satisfied at time k = 1. Byanalogy, we can conclude that

∥∥vL(k)

∥∥ ≤ Δ for all [x(0), e(0)] ∈ Sc. Thus, Sc

is a region of attraction.

By applying Theorem 5.8.2, we can tune the control parameters so as tosatisfy conditions (i)-(iii) in Corollary 5.8.1 and obtain the desired region ofattraction. The following algorithm may serve as a guideline.

Algorithm 5.9 (Parameter tuning guideline for achieving the desiredregion of attraction Ω)

Step 1. Define the accuracy of the equation solution. Choose the initial Δ.Determine b1 and b.

Step 2. Choose

Ro, Qo, PNo , No

rendering a convergent observer.

Step 3. Choose λ,Q, PN , N (mainly Q,PN , N) satisfying (i).

Step 4. Choose γ1, γ2, λ,Q, PN , N (mainly γ1, γ2, λ) satisfying (ii)-(iii). Ifthey cannot be both satisfied, then go to one of Steps 1-3 (accordingto the actual situation).

Step 5. Check if (i)-(iii) are all satisfied. If they are not, go to Step 3. Other-wise, decrease γ1 and γ2 (maintaining satisfaction of (ii)) and increaseΔ (b1 is decreased accordingly, maintaining satisfaction of (iii)).

Step 6. Calculate c using (5.8.3). If Sc ⊇ Ω, then STOP, else turn to Step 1.

Of course, this does not mean that any desired region of attraction canbe obtained for any system. But if A has all its eigenvalues inside or on thecircle, we have the following conclusion.

© 2010 b T l d F G LLC

Page 152: 1420085301 Predictive Control

136 Chapter 5. Two-step model predictive control

Theorem 5.8.3. (Semi-global stability of TSOFMPC) For systems repre-sented by (5.4.1), TSOFMPC (5.7.5)-(5.7.7) is adopted where h satisfies(5.4.11). Suppose A has all its eigenvalues inside or on the circle, and thereexist Δ and γ1 such that b21− (1 + γ1) (b− 1)2 > 0 in the absence of input sat-uration constraint. Then, for any bounded set Ω ⊂ R2n, the controller and theobserver parameters can be adjusted to make the closed-loop system possess aregion of attraction not smaller than Ω.

Proof. In the absence of saturation, b1 and b are determined independentlyof the controller parameters. Denote the parameters γ1,Δ that make b21 −(1 + γ1) (b− 1)2 > 0 as

γ01 ,Δ

0

. When there is saturation still choose γ1 =γ01 and Δ = Δ0. Then, the following two cases may occur:

Case 1: b21 − (1 + γ1) (b− 1)2 > 0 as λ = λ0. Decide the parameters in thefollowing way:

(A) Choose

PN = Q+ATPNA−ATPNB(

λI +BTPNB)−1

BTPNA.

Then, P0 − P1 = 0. Furthermore, choose Q > 0, then Q > P0 − P1

and condition (i) in Corollary 5.8.1 will be satisfied for all λ andN . Choose an arbitrary N .

(B) Choose Ro = εI, Qo = εI > 0, where ε is a scalar. Choose

PNo = Qo +APNoAT −APNoC

T(

Ro + CPNoCT)−1

CPNoAT

and an arbitrary No, then, P0 − P1 = 0. On the other hand, if wedenote

P INo= I + AP INo

AT −AP INoCT

(

I + CP INoCT

)−1

CP INoAT ,

then there exist γ2 > 0 and ξ > 0 such that

(1 + 1/γ2) I − 1/γ2PINo≥ ξI.

Since PNo = εP INoand P1 = PNo ,

(1 + 1/γ2)Qo − 1/γ2P1 ≥ εξIholds for all ε. Choose a sufficiently small ε such that

b21 − (1 + γ1) (b− 1)2 − (1 + γ2) (b− 1)2 σmax

(

BT P1B)

> 0.

At this point,

(1 + 1/γ2)(−Qo + P0 − LRoLT )− P1

= (1 + 1/γ2)(−Qo − LRoLT ) + 1/γ2P1 ≤ −εξI.

© 2010 b T l d F G LLC

Page 153: 1420085301 Predictive Control

5.8. Stability of TSOFMPC 137

(C) Multiplying both sides of

P1 = Q+ATP1A−ATP1B(

λI +BTP1B)−1

BTP1A

by λ−1, then

P1 = λ−1Q+AT P1A−AT P1B(

I +BT P1B)−1

BT P1A.

Since A has all its eigenvalues inside or on the circle, we know thatP1 → 0 as λ→∞ (refer to [46]). Hence, there exists λ1 ≥ λ0 suchthat ∀λ ≥ λ1,

(a) λ−1 (1 + 1/γ1)ATP1B(

λI +BTP1B)−1

BTP1A

= (1 + 1/γ1)AT P1B(

I +BT P1B)−1

BT P1A < εξI,i.e., condition (ii) in Corollary 5.8.1 is satisfied,

(b) −[

b21 − (1 + γ1) (b− 1)2 − (1 + γ2) (b− 1)2 σmax

(

BT P1B)]

+ (b− 1)2 (1 + γ1)σmax

(

BT P1B) ≤ 0,

i.e., the inequality in Remark 5.8.1 is satisfied and in turn,condition (iii) in Corollary 5.8.1 is satisfied.

(D) Further, there exists λ2 ≥ λ1 such that ∀λ ≥ λ2,∥∥∥P

1/21 AP

−1/21

∥∥∥ ≤√

2 (refer to [46]). Now, let

c = supλ∈[λ2,∞),(x,e)∈Ω

(

xT P1x+ eT P1e)

,

then Ω ⊆ Sc =

(x, e) ∈ R2n|xT P1x+ eT P1e ≤ c

. Define two

transformations: x = P1/21 x and e = P

1/21 e. Then, there exists

λ3 ≥ λ2 such that ∀λ ≥ λ3 and ∀ [x(0)T , e(0)T] ∈ Sc,

∥∥vL(0)

∥∥ =

∥∥(λI +BTP1B)−1BTP1A [x(0)− e(0)]

∥∥

=∥∥∥[(λI +BTP1B)−1BTP1A,

− (λI +BTP1B)−1BTP1A][

x(0)T , e(0)T]T

∥∥∥

=∥∥∥

[

(λI +BTP1B)−1BTP1AP−1/21 ,

− (λI +BTP1B)−1BTP1AP−1/21

] [

x(0)T , e(0)T]T

∥∥∥

≤∥∥∥

[

(λI +BTP1B)−1BTP1AP−1/21 ,

− (λI +BTP1B)−1BTP1AP−1/21

]∥∥∥

∥∥[

x(0)T , e(0)T]∥∥

≤∥∥∥

√2(I +BT P1B)−1BT P

1/21 , − (I +BT P1B)−1BT P1AP

−1/21

∥∥∥

√c ≤ Δ.

© 2010 b T l d F G LLC

Page 154: 1420085301 Predictive Control

138 Chapter 5. Two-step model predictive control

Hence, for ∀ [x(0)T , e(0)T] ∈ Ω, the conditions in Corollary 5.8.1

can be satisfied at time k = 0, and by the proof of Theorem 5.8.2,they are also satisfied for ∀k > 0.

Through the above decision procedure, the designed controller willhave the desired region of attraction.

Case 2: b21 − (1 + γ1)(b − 1)2 ≤ 0 as λ = λ0, which apparently is due to thefact that the control action is restricted too much by the saturationconstraint. For the same reason as in Case 1 (C), by (5.7.4), we knowthat for any bounded Ω, there exists sufficiently large λ4 ≥ λ0 suchthat for ∀λ ≥ λ4 and ∀ [x(k)T , e(k)T ] ∈ Ω, u(k) does not violate thesaturation constraint. This process is equivalent to decreasing Δ andre-determining b1 and b such that b21 − (1 + γ1)(b− 1)2 > 0.

In a word, if the region of attraction is not satisfactory with λ = λ0,then it can be satisfied by choosing λ ≥ max λ3, λ4 and suitable

Q,PN , N,Ro, Qo, PNo , No

.

In the proof of Theorem 5.8.3, we have emphasized the effect of tuningλ. If A has all its eigenvalues inside or on the circle, then by properly fixingother parameters, we can tune λ to obtain the arbitrarily large bounded regionof attraction. This is very important because many industrial processes canbe represented by stable models plus integrals. When A has no eigenvalueoutside of the unit circle, but has eigenvalues on the unit circle, then thecorresponding system can be critical stable or unstable; however, by slightcontrols this system can be stabilized.

5.9 TSOFMPC: case where the intermediate

variable is available

When v is available (exactly known), the following state observer can beapplied to obtain the estimation:

x(k + 1) = (A− LC) x(k) +Bv(k) + Ly(k). (5.9.1)

As stated in section 5.7, this case occurs when v is measurable or f = f0.Note that if f = f0, then v(k) = f(u(k)) can be obtained, i.e., v(k) can beeasily calculated by applying u(k).

All other design details are the same as the case where v is “unavailable.”In the following, we show that, when we substitute (5.7.7) with (5.9.1), thefollowing more relaxed conclusion can be obtained.

Similarly to (5.7.10), the closed-loop system with observer (5.9.1) is

x(k + 1) = (A+BK)x(k)−BKe(k) +B[

h(vL(k))− vL(k)]

e(k + 1) = (A− LC) e(k) . (5.9.2)

© 2010 b T l d F G LLC

Page 155: 1420085301 Predictive Control

5.9. TSOFMPC: case where the intermediate variable is available 139

We choose Lyapunov function as V (k) = x(k)TP1x(k) + e(k)T P1e(k). Simi-larly as in section 5.8 we can obtain some stability results (for brevity we omitthe proofs).

Theorem 5.9.1. (Stability of TSOFMPC) For systems represented by(5.4.1), TSOFMPC (5.7.5), (5.7.6) and (5.9.1) is adopted. Suppose there ex-ists a positive scalar γ such that the design of the controller satisfies the fol-lowing conditions:

(i) Q > P0 − P1;

(ii) −Qo+P0−P1−LRoLT < − (1 + 1/γ)ATP1B(

R+BTP1B)−1

BTP1A;

(iii) ∀ [x(0)T , e(0)T] ∈ Ω ⊂ R2n, ∀k ≥ 0,

−h(vL(k))TRh(vL(k))+ (1 + γ)

[

h(vL(k))− vL(k)]T (

R+BTP1B) [

h(vL(k))− vL(k)] ≤ 0.

Then, the equilibrium x = 0, e = 0 of the closed-loop system is exponentiallystable with a region of attraction Ω.

Corollary 5.9.1. (Stability of TSOFMPC) For systems represented by(5.4.1), TSOFMPC (5.7.5), (5.7.6) and (5.9.1) is adopted, where h satisfies(5.4.11). Suppose

(A1) ∀ [x(0), e(0)] ∈ Ω ⊂ R2n,∥∥vL(k)

∥∥ ≤ Δ for all k ≥ 0;

(A2) there exists a positive scalar γ such that the system design satisfies con-ditions (i)-(ii) in Theorem 5.9.1 and

(iii) −λ[

b21 − (1 + γ) (b− 1)2]

+ (1 + γ) (b− 1)2 σmax

(

BTP1B) ≤ 0.

Then, the equilibriumx = 0, e = 0 of the closed-loop system is exponentiallystable with a region of attraction Ω.

Theorem 5.9.2. (Region of attraction of TSOFMPC) For systems repre-sented by (5.4.1), TSOFMPC (5.7.5), (5.7.6) and (5.9.1) is adopted, whereh satisfies (5.4.11). Suppose there exists a positive scalar Δ and γ such thatthe designed system satisfies conditions (i)-(iii) in Corollary 5.9.1. Then, theregion of attraction for the closed-loop system is not smaller than

Sc =

(x, e) ∈ R2n|xTP1x+ eT P1e ≤ c

, (5.9.3)

where

c =(

Δ/d)2

, d =∥∥∥(λI +BTP1B)−1BTP1A

[

P−1/21 , − P−1/2

1

]∥∥∥ . (5.9.4)

© 2010 b T l d F G LLC

Page 156: 1420085301 Predictive Control

140 Chapter 5. Two-step model predictive control

Theorem 5.9.3. (Semi-global stability of TSOFMPC) For systems repre-sented by (5.4.1), TSOFMPC (5.7.5), (5.7.6) and (5.9.1) is adopted, whereh satisfies (5.4.11). Suppose A has all its eigenvalues inside or on the circle,and there exist Δ and γ such that b21− (1+γ)(b−1)2 > 0 in the absence of in-put saturation constraints. Then, for any bounded set Ω ⊂ R2n, the controllerand the observer parameters can be adjusted to make the closed-loop systempossess a region of attraction not smaller than Ω.

For two-step MPC one can further refer to [4], [13]. For solving the non-linear algebraic equation (group) one can refer to [53].

Remark 5.9.1. The ellipsoidal regions of attraction, given for TSMPC andTSOFMPC, are relatively conservative with respect to its corresponding con-trol laws. In general, with a set of controller parameters given, the maximumregion of attraction for TSMPC is non-ellipsoidal. If the closed-loop systemis linear, then the region of attraction can be computed using Algorithms 5.3and 5.4. However, if there is any uncertainty in the linear system, then theregion of attraction calculated by Algorithms 5.3 and 5.4 is not the actualmaximum region of attraction (i.e., when the state lies outside of the regionof attraction calculated by Algorithms 5.3 and 5.4, the real system can stillbe stable).

Remark 5.9.2. For the nonlinear separation MPC for the Hammersteinmodel, if the nonlinear reversion is utterly accurate (the nonlinear algebraicequation is exactly solved), then the overall region of attraction is not affectedby the nonlinear separation method. That is to say, the nonlinear separationitself cannot decrease the volume of the region of attraction.

© 2010 b T l d F G LLC

Page 157: 1420085301 Predictive Control

Chapter 6

Sketch of synthesisapproaches of MPC

In Chapter 1, we explained that, since industrial MPC lacks guarantee ofstability, the synthesis approach of MPC was widely studied in the 1990s andsome control algorithms which emerged in the early 1970s are also recognizedas MPC. In the late 1990s, the basic frame of synthesis approach (especiallyfor the state feedback case) reached maturity. People began to have largelydifferent ideas about MPC, which is not restricted to industrial MPC.

Synthesis approach of MPC is inherited from, and has developed the tra-ditional optimal control. Synthesis approach of MPC considers model uncer-tainty, input/output constraints, etc., based on the traditional optimal control.Therefore, although it is rare to see that synthesis approach is applied in pro-cess industries, we should not be surprised that synthesis approach will havetaken effect in some engineering areas. As a kind of theory, the importanceof synthesis approach should not be judged based on whether or not it canbe soon applied. Rather, it should be judged based on whether or not it cansolve some important issues in the whole control theory. To some extent, justbecause some important problems (stability, robustness, convergence, compu-tational complexity) are yet to be solved, we cannot apply some advancedcontrol algorithms.

For sections 6.1-6.5, one is referred to in [49], for the continuous-timesystem also to in [48]. For section 6.6 one is referred to in [5].

6.1 General idea: case discrete-time systems

6.1.1 Modified optimization problem

The nonlinear system is described by

x(k + 1) = f(x(k), u(k)), y(k) = g(x(k)) (6.1.1)

141

© 2010 b T l d F G LLC

Page 158: 1420085301 Predictive Control

142 Chapter 6. Sketch of synthesis approaches of MPC

satisfying f(0, 0) = 0. The state is measurable. Consider the following con-straints

x(k) ∈ X , u(k) ∈ U , k≥0. (6.1.2)

X ⊆ Rn is convex and closed, U ⊆ Rm convex and compact, satisfying X ⊃0, U ⊃ 0. At each time k, the cost is defined by

JN (k) =N−1∑

i=0

(x(k + i|k), u(k + i|k)) + F (x(k +N |k)). (6.1.3)

Suppose the stage cost (x, u)≥c ∥∥[xT uT ]∥∥

2, (0, 0) = 0. The following con-straint is called terminal constraint (which is artificial)

x(k +N |k) ∈ Xf ⊆ X . (6.1.4)

At each time k the following optimization problem is to be solved:

minuN (k)

JN (k), (6.1.5)

s.t. x(k + i+ 1|k) = f (x(k + i|k), u(k + i|k)) , i≥0, x(k|k) = x(k), (6.1.6)x(k + i|k)∈X , u(k + i|k) ∈ U , i∈0, 1, . . . , N − 1, x(k +N |k) ∈ Xf ,

(6.1.7)

where, uN (k) = u(k|k), u(k + 1|k), · · · , u(k +N − 1|k) is the decision vari-able. The solution to (6.1.5)-(6.1.7) is denoted as u∗N(k) = u∗(k|k), u∗(k +1|k), · · · , u∗(k+N−1|k), and the corresponding optimal cost value as J∗N (k),the state as x∗(k+i|k), ∀i > 0. Notice that more concrete expression of JN (k)should be JN (x(k)) or JN (x(k), uN (k)), representing that JN (k) is functionof x(k) and uN(k).

In u∗N(k), only u(k) = u∗(k|k) is implemented. Hence, the following im-plicit control law is formed

KN(x(k)) = u∗(k|k).Because N is finite, the minimum of (6.1.5)-(6.1.7) exists if f , , F are con-tinuous, U compact, Xf and X closed.

Remark 6.1.1. Dynamic programming could, in principle, be used on (6.1.5)-(6.1.7) to determine a sequence Ji(·) of value functions and a sequenceof control laws Ki(·). If that is the case, the closed-form of KN (·) is ob-tained and there is no necessity for receding-horizon optimization. In realapplications, this is generally impossible (except for linear time-invariant un-constrained systems). In MPC, usually receding-horizon solution of u∗(k|k),rather than the off-line solution of KN (·), is applied. Therefore, as has beencontinuously emphasized in this book, the difference between MPC and thetraditional optimal control lies in the implementation.

Remark 6.1.2. Receding-horizon implementation is the unique feature ofMPC. Hence, gain-scheduling controller, whichever branch of control theoriesit appears in, can always be regarded as MPC.

© 2010 b T l d F G LLC

Page 159: 1420085301 Predictive Control

6.1. General idea: case discrete-time systems 143

6.1.2 “Three ingredients” and the uniform ideas for sta-bility proof

Usually, the optimum of the cost function (notice that the optimum is theresult of the optimization; the optimum of the cost function is called valuefunction) is served as Lyapunov function. Suppose the value function is con-tinuous. Suppose in the terminal constraint set Xf , there is local controllerKf (·). F (·), Xf and Kf (·) are “three ingredients” of synthesis approaches.Denote ΔJ∗N (k + 1) = J∗N (k + 1)− J∗N (k).

Method 1 (Direct method) Employ the value function as Lyapunov func-tion, and obtain conditions on F (·), Xf and Kf(·) that ensure

ΔJ∗N (k + 1) + (x(k),KN (x(k))) ≤ 0.

Usually, in Method 1, J∗N (k + 1) is not calculated. Instead, the feasiblesolution of uN(k + 1) is invoked to calculate JN (k + 1), the upper bound ofJ∗N (k + 1).

Method 2 (Monotonicity method) Employ the value function as Lya-punov function, obtain conditions on F (·), Xf and Kf(·) such that

ΔJ∗N (k + 1) + (x(k),KN (x(k))) ≤ J∗N (k + 1)− J∗N−1(k + 1),

and show that the right sight of the above is negative-definite.In most situations, Methods 1 and 2 are equivalent.

6.1.3 Direct method for stability proof

Definition 6.1.1. Si(X ,Xf ) is called an i-step stabilizable set contained inX for the system (6.1.1), if Xf is a control invariant set of X and Si(X ,Xf )contains all state in X for which there exists an admissible control sequenceof length i which will drive the states of the system to Xf in i steps or less,while keeping the evolution of the state inside X , i.e.,

Si(X ,Xf ) x(0) ∈ X : ∃u(0), u(1), · · · , u(i− 1) ∈ U ,∃M≤i such that x(1), x(2), · · · , x(M − 1) ∈ X andx(M), x(M + 1), · · · , x(i) ∈ Xf , Xf is invariant.

For the above definition, the readers are referred to Definitions 1.6.1, 1.6.2and 1.8.1.

According to Definition 6.1.1, S0(X ,Xf ) = Xf .Suppose the following conditions are satisfied:

Xf ⊆ X , Kf (x) ∈ U , f(x,Kf (x)) ∈ Xf , ∀x ∈ Xf .

© 2010 b T l d F G LLC

Page 160: 1420085301 Predictive Control

144 Chapter 6. Sketch of synthesis approaches of MPC

If, at time k, solving (6.1.5)-(6.1.7) gives solution u∗N(k), then, at time k + 1,the following is feasible for the optimization problem:

uN (k + 1) = u∗(k + 1|k), · · · , u∗(k +N − 1|k),Kf(x∗(k +N |k)).

The state trajectory resulting from uN (k + 1) is

x∗(k + 1|k), · · · , x∗(k +N |k), f(x∗(k +N |k),Kf (x∗(k +N |k))),

where x∗(k + 1|k) = x(k + 1).The cost value associated with uN (k + 1) is

JN (k + 1) = J∗N (k)− (x(k),KN (x(k))) − F (x∗(k +N |k))+ (x∗(k +N |k),Kf (x∗(k +N |k)))+ F (f(x∗(k +N |k),Kf (x∗(k +N |k)))). (6.1.8)

At time k + 1, by re-optimization of JN (k + 1), J∗N (k + 1) is obtained which,according to the principle of optimality, J∗N (k + 1)≤JN (k + 1). SupposeΔF (f(x,Kf (x))) = F (f(x,Kf (x))) − F (x) satisfies

ΔF (f(x,Kf (x))) + (x,Kf (x))≤0, ∀x ∈ Xf . (6.1.9)

Combining (6.1.8) and (6.1.9) and considering J∗N (k + 1) ≤ JN (k + 1) yields

J∗N (k + 1)≤J∗N (k)− (x(k),KN (x(k))). (6.1.10)

By considering the above deductions, we can give the following conditionsfor synthesis approaches of MPC:

(A1) Xf ⊆ X , Xf closed, Xf ⊃ 0 (state constraint is satisfied in Xf );

(A2) Kf(x) ∈ U , ∀x ∈ Xf (control constraint is satisfied in Xf );

(A3) f(x,Kf (x)) ∈ Xf , ∀x ∈ Xf (Xf is positively invariant under Kf (·));

(A4) ΔF (f(x,Kf (x))) + (x,Kf (x))≤0, ∀x ∈ Xf (F (·) is a local Lyapunovfunction in Xf ).

The common situation is to select Xf as a level set of F (·), i.e., Xf =x|F (x) ≤ η where η is a constant. If Xf is a level set of F (·), then (A4)implies (A3).

With (A1)-(A4) satisfied, asymptotic (exponential) stability of the closed-loop system can be proved by invoking some other “more fundamental” con-ditions (e.g., the controllability for some systems, the continuity for somesystems, etc., which are inevitable even beyond MPC literature). Certainly,in general only sufficient (not necessary) stability conditions are obtained.

© 2010 b T l d F G LLC

Page 161: 1420085301 Predictive Control

6.1. General idea: case discrete-time systems 145

6.1.4 Monotonicity method for stability proof

By the principle of optimality, the following holds:

J∗N (k) = (x(k),KN (x(k))) + J∗N−1(k + 1), ∀x(k) ∈ SN (X ,Xf ).Introduce J∗N (k + 1). Then the above equation is equivalent to

ΔJ∗N (k + 1) + (x(k),KN (x(k))) = J∗N (k + 1)− J∗N−1(k + 1). (6.1.11)

Hence, if the following is satisfied:

J∗N (k)≤J∗N−1(k), ∀x(k) ∈ SN−1(X ,Xf ),then Method 2 becomes Method 1.

Denote the optimization problem for optimizing JN (k) as PN(k). IfPN−1(k + 1) has the following solution:

u∗N−1(k + 1) = u∗(k + 1|k + 1), u∗(k + 2|k + 1), · · · , u∗(k +N − 1|k + 1),then a feasible solution to PN (k + 1) is

uN (k+ 1) = u∗(k+1|k+ 1), · · · , u∗(k+N − 1|k+1),Kf (x∗(k+N |k+ 1)),where, by invoking the optimality principle,

u∗(k + i|k + 1) = u∗(k + i|k), ∀i > 0, x∗(k +N |k + 1) = x∗(k +N |k).Applying the feasible solution of PN (k + 1) yields

JN (k + 1) =J∗N−1(k + 1) + (x∗(k +N |k),Kf (x∗(k +N |k)))− F (x∗(k +N |k)) + F (f(x∗(k +N |k),Kf(x∗(k +N |k))))

(6.1.12)

and JN (k+ 1) is the upper bound of J∗N (k+ 1). If condition (A4) is satisfied,then (6.1.12) implies J∗N (k+1)≤J∗N−1(k+1). Further, applying (6.1.11) yields(6.1.10).

For the monotonicity of the value function we have the following two con-clusions.

Proposition 6.1.1. Suppose J∗1 (k)≤J∗0 (k) for all x(k) ∈ S0(X ,Xf ). ThenJ∗i+1(k)≤J∗i (k) for all x(k) ∈ Si(X ,Xf ), i≥0.

Proof. (By induction) Suppose J∗i (k)≤J∗i−1(k) for all x(k) ∈ Si−1(X ,Xf ).Consider two control laws Ki(·) and Ki+1(·). When J∗i+1(k) is optimized,Ki+1(·) is optimal and Ki(·) is not optimal. Hence, by the optimality principlethe following holds:

J∗i+1(x(k), u∗i+1(k)) =(x(k),Ki+1(x(k))) + J∗i (f(x(k),Ki+1(x(k))), u∗i (k + 1))

≤(x(k),Ki(x(k))) + J∗i (f(x(k),Ki(x(k))), u∗i (k + 1)),∀x(k) ∈ Si(X ,Xf ).

© 2010 b T l d F G LLC

Page 162: 1420085301 Predictive Control

146 Chapter 6. Sketch of synthesis approaches of MPC

Hence

J∗i+1(k)− J∗i (k)=(x(k),Ki+1(x(k))) + J∗i (k + 1)− (x(k),Ki(x(k))) − J∗i−1(k + 1)≤(x(k),Ki(x(k))) + J∗i (f(x(k),Ki(x(k))), u∗i (k + 1))− (x(k),Ki(x(k)))− J∗i−1(k + 1)

=J∗i (k + 1)− J∗i−1(k + 1)≤0, ∀x(k) ∈ Si(X ,Xf ).Note that x(k) ∈ Si(X ,Xf ) implies x(k + 1) ∈ Si−1(X ,Xf ). Ji(f(x(k),Ki

(x(k))), u∗i (k + 1)) is not necessarily optimal for x(k) ∈ Si(X ,Xf ), but isoptimal for x(k + 1) ∈ Si−1(X ,Xf ).Proposition 6.1.2. Suppose F (·), Xf and Kf (·) satisfy (A1)-(A4). ThenJ∗1 (k)≤J∗0 (k) for all x(k) ∈ S0(X ,Xf ).Proof. According to the optimality principle,

J∗1 (k) =(x(k),K1(x(k))) + J∗0 (f(x(k),K1(x(k))))≤(x(k),Kf (x(k))) + J∗0 (f(x(k),Kf (x(k)))) (by optimality of K1(·))=(x(k),Kf (x(k))) + F (f(x(k),Kf (x(k)))) (by definition of J0(·))≤F (x(k)) = J∗0 (k) (by (A4)).

Therefore, the conclusion holds.

Remark 6.1.3. With (A1)-(A4) satisfied, Method 2 indirectly utilizesMethod 1. For this reason Method 1 is called “direct method.” In synthe-sis approaches of MPC (not restricted to the model studied in this section),usually Method 1 is applied.

6.1.5 Inverse optimality

As a matter of fact, the value function of synthesis approach is also the infinite-horizon value function of a modified problem. The advantage of the infinite-horizon value function is that, if this value exists and finite, then closed-loop stability is naturally guaranteed (this is easily known by considering thepositive definiteness of the cost function).

Equation (6.1.11) can be written in the form

J∗N (k) = (x(k),KN (x(k))) + J∗N (f(x(k),KN (x(k)))) (6.1.13)

where

(x(k), u(k)) (x(k), u(k)) + J∗N−1(k + 1)− J∗N (k + 1).

If (A1)-(A4) are satisfied, then (x, u)≥(x, u)≥c ∥∥[xT uT ]∥∥

2. Consider

J∞(k) =∞∑

i=0

(x(k + i|k), u(k + i|k)).

© 2010 b T l d F G LLC

Page 163: 1420085301 Predictive Control

6.2. General idea: case continuous-time systems 147

Then, (6.1.13) is the Hamilton-Jacobi-Bellman algebraic equation correspond-ing to the optimal control with cost function J∞(k).

Remark 6.1.4. Corresponding to the original cost function JN (k), (6.1.13)is called the fake Hamilton-Jacobi-Bellman algebraic equation. For a lin-ear unconstrained system, the Hamilton-Jacobi-Bellman algebraic equationis reduced to the algebraic Riccati equation, and the fake Hamilton-Jacobi-Bellman algebraic equation is reduced to the fake algebraic Riccati equation(see Chapter 5).

For MPC with cost function J∞(k), KN(·) is the optimal solution. Hence,the finite-horizon optimization problem (6.1.5)-(6.1.7) is equivalent to anotherinfinite-horizon optimization problem. This phenomenon in MPC is called“inverse optimality.” Here “optimality” refers to result by optimizing J∞(k) =∑∞

i=0 (x(k + i|k), u(k+ i|k)). When the optimality is for J∞(k), rather thanfor J∞(k), then “inverse optimality” is resulted (“inverse” indicates that, ifit is optimal for J∞(k), then it is not optimal for J∞(k) and, by optimizingJ∞(k), the optimum can deviate from that of J∞(k)).

Since synthesis approach is equivalent to another infinite-horizon opti-mal controller, stability margin of synthesis approach is determined by thecorresponding infinite-horizon optimal controller. Satisfaction of “inverse op-timality,” although not advantageous for “optimality,” is capable of showingstability margin.

6.2 General idea: case continuous-time sys-tems

More details are referred to discrete-time model. Suppose the system is de-scribed by

x(t) = f(x(t), u(t)), (6.2.1)

simplified by x = f(x, u). Consider the following cost function

JT (t) =∫ T

0

(x(t+ s|t), u(t+ s|t))ds+ F (x(t + T |t)). (6.2.2)

The following optimization problem is to be solved:

minuT (t)

JT (t), (6.2.3)

s.t. x(t+ s|t) = f (x(t+ s|t), u(t+ s|t)) , s≥0, x(t|t) = x(t), (6.2.4)x(t+ s|t) ∈ X , u(t+ s|t) ∈ U , s ∈ [0, T ], x(t+ T |t) ∈ Xf , (6.2.5)

where uT (t) is the decision variable defined on the time interval [0, T ]. Theimplicit MPC law is denoted as

KT (x(t)) = u∗(t) = u∗(t|t).

© 2010 b T l d F G LLC

Page 164: 1420085301 Predictive Control

148 Chapter 6. Sketch of synthesis approaches of MPC

Given a function φ(x), let φ(f(x, u)) denote its directional derivative inthe direction f(x, u). Then φ(f(x, u)) = φx(x)f(x, u), where φx is the partialderivative of φ with respect to x.

The ingredients F (·), Xf and Kf (·) for the continuous-time case are re-quired to satisfy

(B1) Xf ⊆ X , Xf closed, Xf ⊃ 0;(B2) Kf(x) ∈ U , ∀x ∈ Xf ;(B3) Xf is positively invariant for x = f(x,Kf (x));

(B4) F (f(x,Kf (x))) + (x,Kf (x))≤0, ∀x ∈ Xf .Condition (B4) implies (B3) if Xf is a level set of F (·).

The definition of the positively invariant set in continuous-time system isthe same as that in the discrete-time case (refer to Chapter 1, which is thelimit of that in the discrete-time case when the sampling interval tends tozero). As in Definition 6.1.1, we can define

Sτ (X ,Xf ) x(0) ∈ X : ∃u(t) ∈ U , t ∈ [0, τ), ∃τ1 ≤ τ such thatx(t) ∈ X , t ∈ [0, τ1) and x(t) ∈ Xf , t ∈ [τ1, τ ], Xf is invariant.

Applying conditions (B1)-(B4) we can prove

J∗T (t) + (x(t),KT (x(t)))≤0, ∀x ∈ ST (X ,Xf ).Hence, by satisfying some other “more fundamental” conditions, asymptotic(exponential) stability of the closed-loop system can be proved. Certainly, theobtained stability results are usually sufficient, not necessary.

For monotonicity of the value function we have the following two conclu-sions.

Proposition 6.2.1. Suppose (∂/∂τ)J∗τ=0(t) ≤ 0 for all x(t) ∈ S0(X ,Xf ) =Xf . Then, (∂/∂τ)J∗τ (t)≤0 for all x(t) ∈ Sτ (X ,Xf ), τ ∈ [0, T ].

Proof. If J∗τ (t) is continuously differentiable, then applying the principle ofoptimality yields

(∂/∂τ)J∗τ (t) = (x(t),Kτ (x(t))) + (∂/∂x)J∗τ (t)f(x(t),Kτ (x(t))).

Since (∂/∂τ)J∗τ=0(t)≤0,

limΔτ→0

1Δτ

∫ Δτ

0

(x∗(t+ s|t), u∗0(t+ s|t))ds+ F (x∗(t+ Δτ |t))|u∗0(t) − F (x(t))

≤0

where u∗0(t+ s|t) = Kf (x∗(t+ s|t)), the subscript u∗0(t) represents “based onthe control move u∗0(t).”

© 2010 b T l d F G LLC

Page 165: 1420085301 Predictive Control

6.2. General idea: case continuous-time systems 149

When the optimization horizon is Δτ , u∗Δτ (t), rather than u∗0(t), is theoptimal control sequence. (∂/∂τ)J∗τ=0(t) = 0 only happens at J∗τ=0(t) = 0.For sufficiently small Δτ , applying (6.2.2) yields

J∗Δτ (t)− J∗0 (t) =∫ Δτ

0

(x∗(t+ s|t), u∗Δτ(t+ s|t))ds+ F (x∗(t+ Δτ |t))|u∗

Δτ (t) − F (x(t))

≤∫ Δτ

0

(x∗(t+ s|t), u∗0(t+ s|t))ds+ F (x∗(t+ Δτ |t))|u∗

0(t) − F (x(t))≤0,

which shows the monotonicity of J∗τ (t), i.e., with the increase of τ , J∗τ (t) doesnot increase.

In general, if (∂/∂τ)J∗τ (t)≤0 then

0 ≥ limΔτ→0

1Δτ

∫ τ+Δτ

τ

(x∗(t+ s|t), u∗τ (t+ s|t))ds+ F (x∗(t+ τ + Δτ |t))|u∗τ (t)

− F (x∗(t+ τ |t))|u∗τ (t)

.

When the optimization horizon is τ + Δτ , u∗τ+Δτ(t), rather than u∗τ (t), is theoptimal control sequence. Applying (6.2.2) yields

J∗τ+Δτ (t)− J∗τ (t) =∫ τ+Δτ

0

(x∗(t+ s|t), u∗τ+Δτ(t+ s|t))ds+ F (x∗(t+ τ + Δτ |t))|u∗

τ+Δτ (t)

−∫ τ

0

(x∗(t+ s|t), u∗τ (t+ s|t))ds− F (x∗(t+ τ |t))|u∗τ (t)

≤∫ τ+Δτ

τ

(x∗(t+ s|t), u∗τ (t+ s|t))ds+ F (x∗(t+ τ + Δτ |t))|u∗

τ (t) − F (x∗(t+ τ |t))|u∗τ (t)

≤0

which shows that for any Δτ > 0, J∗τ+Δτ(t)≤J∗τ (t), i.e., (∂/∂τ)J∗τ (t)≤0.

If J∗τ (t) is continuous, then the fake Hamilton-Jacobi equation is

(∂/∂x)J∗τ (t)f(x(t),Kτ (x(t))) + (x(t),Kτ (x(t))) = 0,

where(x(t), u(t)) = (x(t), u(t)) − (∂/∂τ)J∗τ (t).

When (∂/∂τ)J∗τ (t)≤0, (x(t), u(t)) ≥ (x(t), u(t)).

© 2010 b T l d F G LLC

Page 166: 1420085301 Predictive Control

150 Chapter 6. Sketch of synthesis approaches of MPC

Proposition 6.2.2. Suppose (B1)-(B4) are true. Then (∂/∂τ)J∗τ=0(t) ≤ 0for all x(t) ∈ S0(X ,Xf ) = Xf .

Proof. Invoking the principle of optimality we have

(∂/∂τ)J∗τ=0(t) =(x(t),K0(x(t))) + (∂/∂x)J∗0 (t)f(x(t),K0(x(t)))≤(x(t),Kf (x(t))) + (∂/∂x)J∗0 (t)f(x(t),Kf (x(t)))

(by optimality of K0(·))=(x(t),Kf (x(t))) + (∂/∂x)F (x(t))f(x(t),Kf (x(t)))

(by definition of J0(·))≤0 (by (B4)).

Therefore, the conclusion holds.

6.3 Realizations

6.3.1 Using terminal equality constraint

In Chapter 4, Kleinman’s controller and Ackermann’s formula for deadbeatcontrol are both MPC adopting the terminal equality constraint. For example,for system

x(k + 1) = Ax(k) +Bu(k), (6.3.1)

consider the Kleinman’s controller

u(k) = −R−1BT(

AT)N

[N∑

h=0

AhBR−1BT(

AT)h

]−1

AN+1x(k) (6.3.2)

where R > 0. Minimizing the cost function

JN (k) =N−1∑

i=0

‖u(k + i|k)‖2R , s.t. x(k +N |k) = 0

which, if feasible, yields the stabilizing Kleinman’s controller in the form of(6.3.2).

Substitute x(k+N |k) ∈ Xf in problem (6.1.5)-(6.1.7) with x(k+N |k) = 0,then MPC with terminal equality constraint is obtained. Applying terminalequality constraint amounts to taking

F (·) = 0, Xf = 0, Kf(·) = 0. (6.3.3)

It is easy to verify that (6.3.3) satisfies (A1)-(A4).

© 2010 b T l d F G LLC

Page 167: 1420085301 Predictive Control

6.3. Realizations 151

6.3.2 Using terminal cost function

The terminal constraint is not imposed.1. linear, unconstrained systemsHere f(x(k), u(k)) = Ax(k) + Bu(k), and (x, u) = ‖x‖2Q + ‖x‖2R where

Q > 0, R > 0, (A,B) stabilizable. Since the system is unconstrained (X =Rn, U = Rm), conditions (A1)-(A3) are trivially satisfied. Let Kf (x) = Kxstabilize the system, and let P > 0 satisfy Lyapunov equation

(A+BK)TP (A+BK)− P +Q+KTRK = 0.

Then, F (x) xTPx satisfies condition (A4) (with equality). The three ingre-dients are

F (x) xTPx, Xf = Rn, Kf (x) = Kx.

The closed-loop system is asymptotically (exponentially) stable with a regionof attraction Rn.

2. Linear, constrained, open-loop stable systemsThe system is the same as in 1 except that, in addition, the system is open-

loop stable and constrained. Xf = X = Rn. It follows from (A2) that Kf (·),if linear, must satisfy Kf(x) ≡ 0. Thus, conditions (A1)-(A3) are triviallysatisfied. Let P > 0 satisfy Lyapunov equation

ATPA− P +Q = 0.

Then F (x) xTPx satisfy (A4) with equality. The three ingredients are

F (x) xTPx, Xf = Rn, Kf (x) ≡ 0.

The closed-loop system is asymptotically (exponentially) stable with a regionof attraction Rn.

Remark 6.3.1. From semi-global stability in Chapter 5, by adopting oneoff-line calculated fixed linear feedback law, an input constrained open-loopstable linear system cannot be globally stabilized. However, by applying on-line solution of MPC, nonlinear (or time-varying) control laws are obtained.This point represents an important difference between MPC and the tradi-tional state feedback control.

6.3.3 Using terminal constraint set

The terminal cost is not adopted. Usually, dual-mode control is invoked. Infinite steps, the state is driven into Xf . Inside of Xf , the local controllerstabilizes the system.

If, with the evolution of time, the control horizon N decreases by 1 ineach sampling interval, then conditions (A1)-(A4) are trivially satisfied. If Nis also a decision variable, then stability proof is easier than that of the fixedhorizon case, which will be talked about later.

© 2010 b T l d F G LLC

Page 168: 1420085301 Predictive Control

152 Chapter 6. Sketch of synthesis approaches of MPC

If fixed horizon approach is adopted, then the selection of the local con-troller should satisfy (A1)-(A3). In order to satisfy (A4), (x,Kf(x)) = 0 isrequired inside of Xf . A suitable choice is to substitute the original (x, u)with (x, u) α(x)(x, u), where

α(x) =

0 x ∈ Xf1 x /∈ Xf .

Thus, condition (A4) with equality is satisfied.

6.3.4 Using terminal cost function and terminal con-straint set

This version attracts most attention in current literature. Ideally, F (·) shouldbe chosen to be J∗∞(k) since, in this case, the virtues of infinite-horizon optimalcontrol are obtained. In general, this is only possible for linear systems.

1. Linear, constrained systemsOne can take F (x) xTPx as the value function of the infinite-horizon

unconstrained LQR (refer to 1 in section 6.3.2), and take Kf(x) = Kx asthe solution to this infinite-horizon unconstrained LQR, and take Xf as theoutput admissible set for x(k + 1) = (A + BK)x(k) (the output admissibleset is the set inside of which constraints are satisfied; the region of attractionof TSGPC in Chapter 5 is an output admissible set). By this selection of thethree ingredients, conditions (A1)-(A4) are satisfied ((A4) is satisfied withequality).

2. Nonlinear, unconstrained systemsFor the linearized system x(k + 1) = Ax(k) + Bu(k), select the local

controller as Kf (x) = Kx, such that x(k + 1) = (A + BK)x(k) is stabilized,and xTPx as the corresponding Lyapunov function. Select Xf as the level setof xTPx. When Xf is sufficiently small, conditions (A1)-(A2) are satisfied andxTPx is Lyapunov function of x(k + 1) = f(x(k),Kf (x(k))), with a regionof attraction Xf . Then, select F (x) αxTPx such that conditions (A3)-(A4)are satisfied. Although the unconstrained system is studied, the region ofattraction is usually a subset of Rn. Notice that xTPx is Lyapunov functionimplies that F (x) is the Lyapunov function.

The essential requirement for stability is that F (x) should be a Lyapunovfunction of x(k + 1) = f(x(k),Kf (x(k))) in the neighborhood of the origin;if this is the case, there exists a constraint set Xf x|F (x)≤r and a localcontrol law Kf (·) such that (A1)-(A4) are satisfied.

3. Nonlinear, constrained systemsChoose Kf(x) = Kx to stabilize the linearized system x(k + 1) = (A +

BK)x(k) and choose Xf to satisfy the set constraint Xf ⊆ X andKf (Xf ) ⊆ U .These choices satisfy conditions (A1)-(A2). Choose Xf x|F (x)≤r whereF (x) xTPx is a control Lyapunov function for the system x(k + 1) =

© 2010 b T l d F G LLC

Page 169: 1420085301 Predictive Control

6.4. General idea: case uncertain systems (robust MPC) 153

f(x(k),Kf (x(k))) satisfying Lyapunov equation

F (Ax+BKf (x)) − F (x) + (x,Kf (x)) = 0

where (x, u) β(x, u), β ∈ (1,∞). When r is sufficiently small, since theabove Lyapunov equation utilizes β, a sufficient margin is provided to ensurethe satisfaction of (A3)-(A4).

Certainly, it would be better to do as follows: instead of adopting lin-earized model, directly take F (x) as the infinite-horizon value function of thenonlinear system x(k + 1) = f(x(k),Kf (x(k))), and take Xf as the region ofattraction of x(k + 1) = f(x(k),Kf (x(k))), with Xf an invariant set. In sucha way, conditions (A3)-(A4) are satisfied.

Remark 6.3.2. It should be noted that, rather than the exact rules, theimplementation methods in this section are only some guidelines. In synthe-sizing MPC, various changes can happen. Readers may consider the feedbacklinearization method, which can transform a nonlinear system into a closed-loop linear system. Unfortunately, linear input/state constraints can becomenonlinear by the feedback linearization.

Remark 6.3.3. In proving stability, ΔJ∗N (k + 1) + (x(k),KN (x(k)))≤0 isadopted, where ΔJ∗N (k+1) = J∗N (k+1)−J∗N(k). In fact, for nonlinear systemsit is impractical to find the exact value of J∗N (·). J∗N (·) can be an approximatevalue. ΔJ∗N (k+1)+ (x(k),KN(x(k)))≤0, as compared with ΔJ∗N (k+1) < 0,is conservative and, thus, brings stability margin, which allows a differencebetween the approximated value and the theoretical optimum.

Remark 6.3.4. In general, in the optimization problem of a synthesis ap-proach, F (·) and Xf are explicitly added. However, Kf(·) is not explicitlyadded, and only for stability proof. That is to say, in the so-called “threeingredients,” usually only two ingredients appear in a synthesis approach. Insome special synthesis approaches, when the state enters into the terminalconstraint set, Kf (·) is explicitly adopted. In the receding-horizon optimiza-tion, Kf(·) can be utilized to calculate the initial value of uN (k). The keypoints of a synthesis approach can be concluded as “234” (2: F (·) and Xf ; 3ingredients; 4 conditions (A1)-(A4)).

6.4 General idea: case uncertain systems (ro-bust MPC)

For uncertain systems, there are three approaches to study the robustness:

(i) (Inherent robustness) Design MPC using nominal model, and analyzethe controller when there is modeling uncertainty.

© 2010 b T l d F G LLC

Page 170: 1420085301 Predictive Control

154 Chapter 6. Sketch of synthesis approaches of MPC

(ii) Consider all the possible realizations of the uncertainty, and adoptopen-loop “min-max” MPC, to ensure closed-loop robust stability. MPCbased on the open-loop optimization is the usual form of MPC, wherea sequence of control move uN (k) is optimized.

(iii) Introduce feedback in the min-max optimal control problem.

Suppose the nonlinear system is described by

x(k + 1) = f(x(k), u(k), w(k)), z(k) = g(x(k)). (6.4.1)

The details are as former sections. The disturbance satisfies w(k) ∈W(x(k), u(k)) where W(x, u) is closed and W(x, u) ⊃ 0. Notice that, inthis situation, the predictions of state and cost function will incorporate thedisturbance.

If the estimated state is adopted (output feedback MPC), then the stateestimation error can be modeled by w(k) ∈ Wk.

6.4.1 Uniform idea for stability proof

The following cost function is to be minimized at each time k:

JN (k) =N−1∑

i=0

(x(k + i|k), u(k + i|k), w(k + i)) + F (x(k +N |k)).

In a synthesis approach, all the possible realizations of w should be considered.Hence, stability conditions need to be strengthened. The three ingredientsF (·), Xf and Kf(·) need to satisfy the following conditions:

(A1) Xf ⊆ X , Xf closed, Xf ⊃ 0;

(A2) Kf (x) ∈ U , ∀x ∈ Xf ;

(A3a) f(x,Kf (x), w) ∈ Xf , ∀x ∈ Xf , ∀w ∈ W(x,Kf (x));

(A4a) ΔF (f(x,Kf (x), w)) + (x,Kf (x), w)≤0, ∀x ∈ Xf , ∀w ∈ W(x,Kf (x)).

By appropriately choosing the three ingredients, if F (·) is Lyapunov functionof x(k + 1) = f(x(k),Kf (x(k)), w(k)) in the neighborhood of the origin, then(A1)-(A2) and (A3a)-(A4a) can ensure that

ΔJ∗N (k + 1) + (x(k),KN (x(k)), w(k))≤0,x in an appropriate set, ∀w ∈ W(x,KN (x)),

(or, when x lies in an appropriate set, for all w ∈ W(x,KN (x)) the valueJ∗N (k) is non-increasing with the increase of N).

© 2010 b T l d F G LLC

Page 171: 1420085301 Predictive Control

6.4. General idea: case uncertain systems (robust MPC) 155

Remark 6.4.1. For systems with disturbance or noise, the state may beunable to converge to the origin, and only convergence to a neighborhood ofthe origin Ω ⊆ Xf is ensured, Ω being an invariant set. Certainly, whetheror not the state will converge to the origin depends on the property of thedisturbance or noise. For example, for f(x(k), u(k), w(k)) = Ax(k)+Bu(k)+Dw(k), when Dw(k) does not tend to zero with the evolution of k, x(k) cannotconverge to the origin; for f(x(k), u(k), w(k)) = Ax(k)+Bu(k)+Dx(k)w(k),even when w(k) does not tend to zero with the evolution of k, x(k) canconverge to the origin.

6.4.2 Open-loop min-max MPC

For nominal systems, SN (X ,Xf ) is defined. SN(X ,Xf ) is the positively in-variant set for the system x(k+1) = f(x(k),KN (x(k))). For nominal systems,if x(k) ∈ SN (X ,Xf ) then x(k+1) ∈ SN−1(X ,Xf ) ⊆ SN (X ,Xf ); for uncertainsystems this property does not hold in general.

At each time k the following cost function is to be minimized:

JN (k) = maxwN (k)∈WN (x(k),uN (k))

VN (x(k), uN (k), wN (k))

where wN (k) w(k), w(k + 1), · · · , w(k +N − 1) and WN (x(k), uN (k)) isthe set of all possible realizations of the sequence of disturbance within theswitching horizon,

VN (x(k), uN (k), wN (k)) =N−1∑

i=0

(x(k + i|k), u(k + i|k), w(k + i))

+ F (x(k +N |k)),x(k + i+ 1|k) =f(x(k + i|k), u(k + i|k), w(k + i)).

Other constraints in optimization are the same as the nominal case. Sup-pose the set in which the optimization problem is feasible is Sol

N (X ,Xf ) ⊆SN (X ,Xf ). The superscript “ol” represents open-loop.

Suppose the three ingredients F (·), Xf and Kf(·) satisfy conditions (A1)-(A2) and (A3a)-(A4a). Then there is a difficulty in stability proof, which isdescribed as follows:

i. Suppose x(k) ∈ SolN (X ,Xf ) and the optimization problem has an optimal

solution uolN(k) uN (k). For all wN (k) ∈ WN (x(k), uN (k)), this optimal

control sequence can drive all the possible states into Xf in not morethan N steps.

ii. At time k+1, the control sequence u∗(k+1|k), u∗(k+2|k), · · · , u∗(k+N − 1|k) can drive all the possible states into Xf in not more thanN − 1 steps. Hence, x(k + 1|k) ∈ Sol

N−1(X ,Xf ).

© 2010 b T l d F G LLC

Page 172: 1420085301 Predictive Control

156 Chapter 6. Sketch of synthesis approaches of MPC

iii. The problem is that, at time k+1, it may be unable to find the followingcontrol sequence:

u∗(k + 1|k), u∗(k + 2|k), · · · , u∗(k +N − 1|k), vto serve as the feasible solution of the optimization problem. This isbecause v ∈ U has to satisfy

f(x∗(k+N |k), v, w(k+N)) ∈ Xf , ∀wN (k) ∈ WN (x(k), u∗N (k)). (6.4.2)

Condition (A3a) does not ensure that (6.4.2) holds with v = Kf (x∗(k+N |k)) (except for N = 1).

iv. At time k + 1 a feasible control sequence does not exist and, hence, theupper bound of J∗N (k + 1) cannot be obtained.

An alternative to overcome the above difficulty is to adopt the varyinghorizon strategy. In the varying horizon approach, besides uN (k), N is alsoa decision variable. Suppose the optimal solution u∗N∗(k)(k), N

∗(k) is ob-tained at time k; then at time k + 1, u∗N∗(k)−1(k), N

∗(k) − 1 is a feasiblesolution. Thus, with conditions (A1)-(A2) and (A3a)-(A4a) satisfied, closed-loop stability can be proved, i.e., the following can be proved:

ΔJ∗N∗(k+1)(k + 1) + (x(k),K∗N∗(k)(x(k)), w(k))≤0,

∀x ∈ SolN∗(k)(X ,Xf )\Xf , ∀w ∈ W(x,K∗N∗(k)(x))

where ΔJ∗N∗(k+1)(k + 1) = J∗N∗(k+1)(k + 1) − J∗N∗(k)(k). Inside of Xf , adoptKf (·). Conditions (A1)-(A2) and (A3a)-(A4a) guarantee the existence of suit-able Xf and Kf(·).

Notice that here the varying horizon does not represent N(k + 1)≤N(k),N(k+1) < N(k) or N(k+1) = N(k)−1. Rather, N(k) is served as a decisionvariable.

6.5 Robust MPC based on closed-loop opti-

mization

Although open-loop min-max MPC has a number of advantages, a deficiencyof this kind of MPC is that it adopts open-loop prediction, i.e., uN (k) isutilized in the prediction to handle all possible realizations of the disturbance.This is unrealistic since, every sampling time a control move is implemented,the uncertainties of the state evolutions are shrinking.

In feedback MPC, the decision variable is not uN(k), but

πN (k) u(k), F1(x(k + 1|k)), · · · , FN−1(x(k +N − 1|k))

© 2010 b T l d F G LLC

Page 173: 1420085301 Predictive Control

6.6. A concrete realization: case continuous-time nominal systems 157

where Fi(·) is the state feedback law, rather than the control move (of course,u(k) needs not to be substituted with F0(·) since x(k) is known).

At each time k the following cost function is to be minimized:

JN (k) = maxwN (k)∈WN (x(k),πN (k))

VN (x(k), πN (k), wN (k))

where WN (x(k), πN (k)) is the set of all possible realizations of the disturbancewithin the switching horizon N ,

VN (x(k), πN (k), wN (k)) =N−1∑

i=0

(x(k + i|k), Fi(x(k + i|k)), w(k + i))

+ F (x(k +N |k)),x(k + i+ 1|k) =f(x(k + i|k), Fi(x(k + i|k)), w(k + i)),

x(k + 1|k) =f(x(k), u(k), w(k)).

Other constraints for the optimization problem are the same as the nomi-nal case. Suppose the set in which the optimization problem is feasible isSfbN (X ,Xf ) ⊆ SN (X ,Xf ). The superscript “fb” represents feedback.

Suppose, at time k, the optimization problem yields optimal solution

π∗N (k) = u∗(k), F ∗1 (x∗(k + 1|k)), · · · , F ∗N−1(x∗(k +N − 1|k)).

Suppose conditions (A1)-(A2) and (A3a)-(A4a) are satisfied. Then, at k + 1the following is feasible:

πN (k+1) = F ∗1 (x∗(k+1|k)), · · · , F ∗N−1(x∗(k+N − 1|k)),Kf(x∗(k+N |k))

and it can be proved that

ΔJ∗N (k + 1) + (x(k),K∗N (x(k)), w(k)) ≤ 0,∀x ∈ Sfb

N (X ,Xf )\Xf , ∀w ∈ W(x,K∗N (x)).

Thus, with certain “more fundamental” conditions satisfied, closed-loop sta-bility can be proved.

Compared with open-loop min-max MPC, the advantages of feedbackMPC includes Sol

N (X ,Xf ) ⊆ SfbN (X ,Xf ) and Sfb

N (X ,Xf ) ⊆ SfbN+1(X ,Xf ). For

open-loop min-max MPC, when N is increased, SolN (X ,Xf ) does not necessar-

ily become enlarged. However, feedback MPC has its severe deficiency, i.e., theoptimization problem involved is too complex and in general it is not solvable(except for some special cases).

6.6 A concrete realization: case continuous-time nominal systems

The above discussions are mainly concerned with discrete-time systems. In thefollowing, we adopt a more concrete continuous-time system as an example.

© 2010 b T l d F G LLC

Page 174: 1420085301 Predictive Control

158 Chapter 6. Sketch of synthesis approaches of MPC

This example complies with the “key points 234” of synthesis approach and,hence, more details are omitted here. Through this example, we show whichare the “more fundamental” conditions besides the conditions (B1)-(B4).

Consider the system (6.2.1) and only consider the input constraint. Sup-pose

(C1) f is twice continuously differentiable and f(0, 0) = 0. Thus, (x, u) =(0, 0) is an equilibrium point of the system;

(C2) U is compact, convex and U ⊃ 0;

(C3) system (6.2.1) has a unique solution for any initial state x(0) = x0 andany piecewise continuous and right-continuous u(·) : [0,∞)→ U .

At time t consider the following optimization problem:

minuT (t)

JT (t) =∫ T

0

(

‖x(t+ s|t)‖2Q + ‖u(t+ s|t)‖2R)

ds+ ‖x(t+ T |t)‖2P ,(6.6.1)

s.t. (6.2.4), u(t+ s|t) ∈ U , s ∈ [0, T ], x(t+ T |t) ∈ Xf , (6.6.2)

where Q > 0, R > 0,

‖x(t+ T |t)‖2P ≥∫ ∞

T

(

‖x(t+ s|t)‖2Q + ‖u(t+ s|t)‖2R)

ds,

u(t+ s|t) =Kfx(t+ s|t), ∀x(t+ T |t) ∈ Xf . (6.6.3)

The optimal solution of problem (6.6.1)-(6.6.2) is u∗T (t) : [t, t + T ] → U (i.e.,u∗(t+ s|t), s ∈ [0, T ]), with the corresponding cost value J∗T (t).

In the real applications, the optimization needs to be re-done after a certaintime period. Suppose the optimization cycle is δ satisfying δ < T . The actuallyimplemented control move is

u∗(τ) = u∗(τ |t), τ ∈ [t, t+ δ). (6.6.4)

At time t+δ, based on the newly measured x(t+δ), the optimization problem(6.6.1)-(6.6.2), with t replaced by t+ δ, is re-solved.

6.6.1 Determination of the three ingredients

Consider the Jacobian linearization of the system (6.2.1) at (x, u) = (0, 0):x = Ax+Bu. When (A,B) is stabilizable, there exists u = Kfx such thatAf =A+BKf is asymptotically stable.

Lemma 6.6.1. Suppose (A,B) is stabilizable. Then,

© 2010 b T l d F G LLC

Page 175: 1420085301 Predictive Control

6.6. A concrete realization: case continuous-time nominal systems 159

(1) for β ∈ (0,∞) satisfying β < −λmax(Af ) (λmax(·) is the maximum realpart of the eigenvalue), the following Lyapunov equation:

(Af + βI)TP + P (Af + βI) = −(Q+KTf RKf ) (6.6.5)

admits a unique positive-definite symmetric solution P ;

(2) there exists a constant α ∈ (0,∞) specifying a level set Ωα x|xTPx≤α such that

(i) Kfx ∈ U , ∀x ∈ Ωα;

(ii) Ωα is invariant for the system x = f(x,Kfx);

(iii) for any x ∈ Ωa, the infinite-horizon cost

J∞(t1) =∫ ∞

t1

(

‖x(s)‖2Q + ‖Kfx(s)‖2R)

ds,

x(t) =f(x(t),Kfx(t)), ∀t≥t1, x(t1) = x

is bounded from above by J∞(t1) ≤ xTP x.Proof. When β < −λmax(Af ), Af + βI is asymptotically stable and Q +KTf RKf is positive-definite. Hence, (6.6.5) has a unique positive-definite and

symmetric solution P .Since U ⊃ 0, for any P > 0, one can always find α1 ∈ (0,∞) such that

Kfx ∈ U , ∀x ∈ Ωα1 . Let α ∈ (0, α1]. Then Kfx ∈ U , ∀x ∈ Ωα. Hence, (i)holds.

For x = f(x,Kfx), applying xTPx yields

d

dtx(t)TPx(t) = x(t)T (ATf P + PAf )x(t) + 2x(t)TPφ(x(t)), (6.6.6)

where φ(x) = f(x,Kfx)−Afx. Moreover,

xTPφ(x) ≤ ∥∥xTP

∥∥ · ‖φ(x)‖≤‖P‖ · Lφ · ‖x‖2≤‖P‖ · Lφ

λmin(P )‖x‖2P (6.6.7)

where λmin(·) is the minimum real part of the eigenvalue,

Lφ sup ‖φ(x)‖‖x‖

∣∣∣∣x ∈ Ωα, x = 0

.

Now choose α ∈ (0, α1] such that, in Ωα, Lφ ≤ β·λmin(P )‖P‖ . Then, (6.6.7)

leads toxTPφ(x) ≤ βxTPx. (6.6.8)

Substituting (6.6.8) into (6.6.6) yields

d

dtx(t)TPx(t) ≤ x(t)T ((Af + βI)TP + P (Af + βI))x(t).

© 2010 b T l d F G LLC

Page 176: 1420085301 Predictive Control

160 Chapter 6. Sketch of synthesis approaches of MPC

Further applying (6.6.5) yields

d

dtx(t)TPx(t) ≤ −x(t)T (Q+KT

f RKf)x(t). (6.6.9)

Equation (6.6.9) implies that (ii) holds.Finally, for any x ∈ Ωa, integrate (6.6.9) from t = t1 to t =∞, one obtains

J∞(t1) ≤ xTP x.The three ingredients for synthesis are: F (x(t + T |t)) = ‖x(t+ T |t)‖2P ,

Xf = Ωα, Kf (x) = Kfx.

Lemma 6.6.2. For sufficiently small sampling time δ > 0, if the optimizationproblem (6.6.1)-(6.6.2) has a feasible solution at t = 0, then this problem isfeasible for any t > 0.

Proof. Suppose at time t, a feasible solution u∗T (t) of (6.6.1)-(6.6.2) exists. Attime t+ δ, the following is a feasible solution to (6.6.1)-(6.6.2):

u(s|t+ δ) =u∗(s|t), s ∈ [t+ δ, t+ T ]Kfx(s|t+ δ), s ∈ [t+ T, t+ δ + T ] (6.6.10)

which is simplified as uT (t+ δ).In real application, usually take the actual control move as

uact(τ) = u∗(t) = u∗(t|t), τ ∈ [t, t+ δ). (6.6.11)

Thus, (6.6.10) is not necessarily feasible. However, since the state is continu-ous, it is easy to show that, for sufficiently small δ, (6.6.10) is still feasible.

6.6.2 Asymptotic stability

Lemma 6.6.3. Suppose the optimization problem (6.6.1)-(6.6.2) is feasible attime t = 0. Then, for any t > 0 and τ ∈ (t, t + δ] the optimal value functionsatisfies

J∗T (τ) ≤ J(x(τ), uT (τ)) ≤ J∗T (t)−∫ τ

t

(

‖x(s)‖2Q + ‖u∗(s)‖2R)

ds. (6.6.12)

Proof. Suppose, at time t, (6.6.1)-(6.6.2) has a feasible solution u∗T (t) andthe control is implemented according to (6.6.4). For any time τ ∈ (t, t + δ],consider the following feasible control input:

u(s|τ) =

u∗(s|t), s ∈ [τ, t+ T ]Kfx(s|t + δ), s ∈ [t+ T, τ + T ] (6.6.13)

which is simplified as uT (τ). We will calculate the cost value correspondingto (6.6.13), which is denoted as J(x(τ), uT (τ)).

© 2010 b T l d F G LLC

Page 177: 1420085301 Predictive Control

6.6. A concrete realization: case continuous-time nominal systems 161

Lemma 6.6.1 can be applied. Applying (6.6.9), integrating from t + T toτ + T yields

∥∥x(τ + T |τ)|uT (τ)

∥∥

2

P≤∥∥∥x∗(t+ T |t)|u∗

T (t)

∥∥∥

2

P

−∫ τ+T

t+T

∥∥x(s|τ)|uT (τ)

∥∥

2

Q+KTf RKf

ds.

Thus,

J(x(τ), uT (τ)) =∫ τ+T

τ

(∥∥x(s|τ)|uT (τ)

∥∥

2

Q+‖u(s|τ)‖2R

)

ds+∥∥x(τ + T |τ)|uT (τ)

∥∥

2

P

=∫ t+T

τ

(

‖x∗(s|t)‖2Q + ‖u∗(s|t)‖2R)

ds

+∫ τ+T

t+T

∥∥x(s|τ)|uT (τ)

∥∥

2

Q+KTf RKf

ds+∥∥x(τ + T |τ)|uT (τ)

∥∥

2

P

≤∫ t+T

τ

(

‖x∗(s|t)‖2Q + ‖u∗(s|t)‖2R)

ds+∥∥∥x∗(t+ T |t)|u∗

T (t)

∥∥∥

2

P.

Comparing with the optimum J∗T (t) yields

J(x(τ), uT (τ)) ≤ J∗T (t)−∫ τ

t

(

‖x∗(s|t)‖2Q + ‖u∗(s|t)‖2R)

ds.

Consider implementing the control moves according to (6.6.4). Then the aboveequation becomes

J(x(τ), uT (τ)) ≤ J∗T (t)−∫ τ

t

(

‖x(s)‖2Q + ‖u∗(s)‖2R)

ds.

Finally, considering the optimality of J∗T (·) yields (6.6.12).

Remark 6.6.1. If, in real applications, (6.6.11) is applied, then readersmay suspect the conclusion in Lemma 6.6.3. An alternative is to take, inthe optimization problem, T = (n1 + 1)δ, n1≥1, and replace the decisionvariables with u(t|t), u(t + δ|t), · · · , u(t + n1δ|t) satisfying the constraintu(τ |t) = u(t+ iδ|t), τ ∈ [t+ iδ, t+ (i+ 1)δ).

Theorem 6.6.1. (Stability) Suppose

(i) assumptions (C1)-(C3) are satisfied;

(ii) (A,B) is stabilizable;

(iii) for any x0 ∈ Ω, problem (6.6.1)-(6.6.2) has a feasible solution at t = 0.

Then, for a sufficiently small δ, the closed-loop system with (6.6.4) is asymp-totically stable, with a region of attraction Ω.

© 2010 b T l d F G LLC

Page 178: 1420085301 Predictive Control

162 Chapter 6. Sketch of synthesis approaches of MPC

Proof. J∗T (t) = J∗T (x(t), u∗T (t)) has properties : (i) J∗T (0, u∗T (t)) = 0 andJ∗T (t) > 0, ∀x(t) = 0; (ii) there exists a constant γ ∈ (0,∞) such thatJ∗T (t) ≤ γ; (iii) for 0 ≤ t1 < t2≤∞, J∗T (t2) − J∗T (t1)≤ −

∫ t2t1‖x(t)‖2Q dt. The

properties (i)-(ii) are due to the continuity of the state, and the property (iii)is due to Lemma 6.6.3.

Thus, as long as x(t) = 0, J∗T (t) will be strictly decreasing with the evolu-tion of time, which shows that J∗T (t) can be Lyapunov function for asymptoticstability.

A more strict proof involves the details of stability theory of continuous-time systems, which are omitted here.

© 2010 b T l d F G LLC

Page 179: 1420085301 Predictive Control

Chapter 7

State feedback synthesisapproaches

The deficiency of classical MPC is that the uncertainty is not explicitly con-sidered. Here, “explicitly” means that the uncertainty is considered in the op-timization problem of MPC. Apparently, classical MPC (DMC, MAC, GPC,etc.) adopts a linear model for prediction, and optimizes a nominal perfor-mance cost. The uncertainty of the model is overcome by feedback correctionor on-line refreshment of the model. Since a nominal model is adopted, theexisting stability analysis is mainly for the nominal systems.

The studies on the robustness of MPC and robust MPC can be classifiedas robustness analysis (corresponding to adopting nominal model to designthe controller, and analyzing stability when there is model-plant mismatch)and robustness synthesis (the uncertainty is directly considered in the con-troller design). This chapter introduces synthesis approaches of robust MPCfor systems with polytopic description.

Sections 7.1 and 7.2 are referred to in [37]. Section 7.3 is referred to in [61].Section 7.4 is referred to in [29]. Section 7.5 is referred to in [21], [25]. Section7.6 is referred to in [21].

7.1 System with polytopic description, linearmatrix inequality

Consider the following time-varying uncertain system

x(k + 1) = A(k)x(k) +B(k)u(k), [A(k) |B(k) ] ∈ Ω (7.1.1)

where u ∈ Rm is the control input, x ∈ Rn is the state. The input and stateconstraints are

−u ≤ u(k + i) ≤ u, − ψ ≤ Ψx(k + i+ 1) ≤ ψ, ∀i ≥ 0 (7.1.2)

163

© 2010 b T l d F G LLC

Page 180: 1420085301 Predictive Control

164 Chapter 7. State feedback synthesis approaches

where u := [u1, u2, · · · , um]T , uj > 0, j ∈ 1, . . . ,m, ψ :=[

ψ1, ψ2, · · · , ψq]T ,

ψs > 0, s ∈ 1, . . . , q, Ψ ∈ Rq×n. Note that state constraint has differentstarting time from input constraint. This is because the current state cannotbe affected by the current and future input.

Suppose the matrix pair [A(k) |B(k) ] ∈ Ω, where Ω is defined as the fol-lowing “polytope”:

Ω = Co [A1 |B1 ], [A2 |B2 ], · · · , [AL |BL] , ∀k ≥ 0,

i.e., there exist L nonnegative coefficients ωl(k), l ∈ 1, . . . , L such that

L∑

l=1

ωl(k) = 1, [A(k) |B(k) ] =L∑

l=1

ωl(k) [Al |Bl ] (7.1.3)

where [Al |Bl ] is called the vertex of the polytope. Denote [A|B] ∈ Ω as thenominal model which is the “closest” to the actual system, such as [A|B] =1/L

∑Ll=1[Al|Bl].

Polytope (also known as multi-model) can be obtained by two differ-ent manners. At different operating points, or at different time periods, in-put/output data can be obtained for the same system (possibly nonlinear).From each data set, we develop a linear model (suppose the same state vectoris selected for all the data sets). If each linear model is seen as a vertex, thenpolytope is obtained. Obviously, it is reasonable to suppose the analysis anddesign results for the system (7.1.1) are also suitable for all linear models.

Alternatively, for a nonlinear discrete time-varying system x(k + 1) =f(x(k), u(k), k), one can suppose the Jacobian matrix pair

[∂f/∂x ∂f/∂u

]

lies in the polytope Ω. Any possible dynamic behavior of the nonlinear systemis contained in the possible dynamics of polytopic system, i.e., for any initialcondition of the nonlinear system there exists a time-varying system belongsto Ω, which has the same dynamic response with the nonlinear system.

Linear matrix inequality (LMI) is especially suitable in the analysis anddesign works based on the polytopic description. LMI is a matrix inequalityof the following form

F (v) = F0 +l∑

i=1

viFi > 0, (7.1.4)

where v1, v2, · · · , vl are the variables, Fi is a given symmetric matrix, F (v) > 0means that F (v) is positive-definite. Usually, variables are in the form ofmatrices. Hence LMI is usually not written in the uniform form of (7.1.4). Fortransforming an inequality into an LMI, Schur complement is often applied.

Schur complements: For Q(v) = Q(v)T , R(v) = R(v)T and S(v), thefollowing three groups of inequalities are equivalent:

(i)[

Q(v) S(v)S(v)T R(v)

]

> 0;

© 2010 b T l d F G LLC

Page 181: 1420085301 Predictive Control

7.2. On-line min-max MPC: case zero-horizon 165

(ii) R(v) > 0, Q(v)− S(v)R(v)−1S(v)T > 0;

(iii) Q(v) > 0, R(v)− S(v)TQ(v)−1S(v) > 0.

Remark 7.1.1. In Schur complement, it is not required (i) to be LMI. Denote

F (v) =[Q(v) S(v)S(v)T R(v)

]

. If F (v) can be expressed in the form of (7.1.4), then

(i) is LMI. In controller synthesis, one often meets with matrix inequalitiesin the form of (ii)-(iii), which cannot be expressed in the form of (7.1.4)(i.e., often (ii)-(iii) are not LMIs). Thus, by applying Schur complement, theinequalities in the form of (ii)-(iii) can be equivalently transformed into LMIin the form of (i).

In MPC synthesis, one often meets minimization of a linear function sat-isfying a group of LMIs, i.e.,

minvcT v, s.t. F (v) > 0. (7.1.5)

This is a convex optimization problem, which can be solved by polynomial-time algorithms [3].

7.2 On-line approach based on min-max per-formance cost: case zero-horizon

Consider the following quadratic performance index:

J∞(k) =∞∑

i=0

[‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R],

where W > 0 and R > 0 are both the symmetric weighting matrices. MPCadopting this performance cost is called infinite-horizon MPC. Our target isto solve the following optimization problem:

minu(k+i|k),i≥0

max[A(k+i)|B(k+i)]∈Ω,i≥0

J∞(k), (7.2.1)

s.t. − u ≤ u(k + i|k) ≤ u, − ψ ≤ Ψx(k + i+ 1|k) ≤ ψ, (7.2.2)x(k + i+ 1|k) = A(k + i)x(k + i|k) +B(k + i)u(k + i|k), x(k|k) = x(k).

(7.2.3)

Problem (7.2.1)-(7.2.3) is a “min-max” optimization problem. The “max”operation is finding [A(k + i) |B(k + i) ] ∈ Ω based on which the largest J∞(k)(or, called the worst value of J∞(k)) is found. Then, this worst value is mini-mized over control moves u(k+ i|k). If the finite-horizon optimization, ratherthan the infinite-horizon one, is encountered, then this “min-max” optimiza-tion problem is convex (i.e., a unique optimal solution exists), but is compu-tationally intractable (i.e., finding the optimal solution in finite time is notguaranteed).

© 2010 b T l d F G LLC

Page 182: 1420085301 Predictive Control

166 Chapter 7. State feedback synthesis approaches

7.2.1 Performance cost handling and unconstrainedMPC

To simplify the solution process of (7.2.1)-(7.2.3), we will derive the upperbound of the performance index, and then minimize this upper bound byadopting the following control law:

u(k + i|k) = Fx(k + i|k), i ≥ 0. (7.2.4)

To define the upper bound, firstly define quadratic function V (x) =xTPx, P > 0 and impose the following constraint:

V (x(k+i+1|k))−V (x(k+i|k)) ≤ −[‖x(k + i|k)‖2W +‖u(k + i|k)‖2R]. (7.2.5)

For the sake of boundedness of the performance cost, x(∞|k) = 0 andV (x(∞|k)) = 0 has to be satisfied. Summing (7.2.5) from i = 0 to i =∞, weget

max[A(k+i)|B(k+i)]∈Ω,i≥0

J∞(k) ≤ V (x(k|k)),

where V (x(k|k)) gives an upper bound on the performance cost.Thus MPC algorithm is redefined as: at each time step k, find (7.2.4) to

minimize V (x(k|k)), but only u(k|k) = Fx(k|k) is implemented; at the nexttime step k + 1, x(k + 1) is measured, and the optimization is repeated tore-compute F .

Define a scalar γ > 0, and let

V (x(k|k)) ≤ γ. (7.2.6)

Then the minimization of max[A(k+i)|B(k+i)]∈Ω,i≥0 J∞(k) is approximated bythe minimization of γ satisfying (7.2.6). Define matrix Q = γP−1. By utilizingSchur complements, (7.2.6) is equivalent to the following LMI:

[1 x(k|k)T

x(k|k) Q

]

≥ 0. (7.2.7)

Substitute (7.2.4) into (7.2.5) yields

x(k + i|k)T [A(k + i) +B(k + i)F ]TP [A(k + i) +B(k + i)F ]− P+FTRF +Wx(k + i|k) ≤ 0, (7.2.8)

which is satisfied, for all i ≥ 0, if

[A(k+ i)+B(k+ i)F ]TP [A(k+ i)+B(k+ i)F ]−P+F TRF +W ≤ 0. (7.2.9)

Define F = Y Q−1. By substituting P = γQ−1 and F = Y Q−1 into(7.2.9), pre- and post-multiplying the obtained inequality by Q (congruence

© 2010 b T l d F G LLC

Page 183: 1420085301 Predictive Control

7.2. On-line min-max MPC: case zero-horizon 167

transformation), and using Schur complements, it is shown that (7.2.9) isequivalent to the following LMI:

⎢⎢⎣

Q ∗ ∗ ∗A(k + i)Q+B(k + i)Y Q ∗ ∗

W 1/2Q 0 γI ∗R1/2Y 0 0 γI

⎥⎥⎦≥ 0. (7.2.10)

Since an LMI is symmetric, “∗” in any LMI always denotes the blocks in thesymmetric position. Eq. (7.2.10) is affine in [ A(k + i) B(k + i) ] (the linearsuperposition principle is satisfied). Hence (7.2.10) is satisfied if and only if

⎢⎢⎣

Q ∗ ∗ ∗AlQ+BlY Q ∗ ∗W 1/2Q 0 γI ∗R1/2Y 0 0 γI

⎥⎥⎦≥ 0, l ∈ 1, . . . , L. (7.2.11)

Note that, strictly speaking, the variables γ, Q, P , F , Y in the aboveshould be denoted by γ(k), Q(k), P (k), F (k), Y (k). In the application, thesevariables can be time-varying. For L = 1, the optimal solution F = Y Q−1

for the discrete-time infinite-horizon unconstrained linear quadratic regulator(LQR) is obtained by solving the following optimization problem:

minγ,Q,Y

γ, s.t. (7.2.7), (7.2.11). (7.2.12)

The solution F has nothing to do with x, i.e., F is unique irrespective of thevalue of x.

When L > 1, it is apparent the (7.2.1)-(7.2.3) include the correspondingLQR as a special case, and is much more complex than LQR. When L > 1,by solving (7.2.12), the approximate solution of problem (7.2.1)-(7.2.3), with-out considering constraints, is obtained. This approximate solution is directlyrelated to x, i.e., F varies with x. This shows that, even without consideringhard constraints, receding horizon solving (7.2.12) can greatly improve theperformance compared with adopting a single F .

7.2.2 Constraint handling

For constraint, we first consider the notion of invariant ellipsoidal set (invari-ant ellipsoid). Consider γ, Q, P , F , Y which have been defined in the previoussection, and ε = z|zTQ−1z ≤ 1 = z|zTPz ≤ γ. Then ε is an ellipsoidalset. When (7.2.7) and (7.2.11) are satisfied, ε is an invariant ellipsoid, i.e.,

x(k|k) ∈ ε⇒ x(k + i|k) ∈ ε, ∀i ≥ 1.

Firstly, consider input constraints −u ≤ u(k + i|k) ≤ u in (7.2.1)-(7.2.3).Since ε is an invariant ellipsoid, by considering the j-th element of u, denoting

© 2010 b T l d F G LLC

Page 184: 1420085301 Predictive Control

168 Chapter 7. State feedback synthesis approaches

ξj as the j-th row of the m-ordered identity matrix, we can make the followingdeduction:

maxi≥0|ξju(k + i|k)|2 = max

i≥0

∣∣ξjY Q

−1x(k + i|k)∣∣2

≤ maxz∈ε

∣∣ξjY Q

−1z∣∣2 ≤ max

z∈ε

∥∥∥ξjY Q

−1/2∥∥∥

2

2

∥∥∥Q−1/2z

∥∥∥

2

2

≤∥∥∥ξjY Q

−1/2∥∥∥

2

2= (Y Q−1Y T )jj ,

where (·)jj is the j-th diagonal element of the square matrix, ‖·‖2 the 2-norm.By using Schur complements, if there exists a symmetric matrix Z such that

[Z YY T Q

]

≥ 0, Zjj ≤ u2j , j ∈ 1, . . . ,m, (7.2.13)

then |uj(k + i|k)| ≤ uj , j ∈ 1, 2, . . . ,m.Eq. (7.2.13) is a sufficient (not necessary) condition for satisfaction of input

constraints. In general, utilizing (7.2.13) for handling input constraint is notvery conservative, especially when the nominal case is addressed.

Then, consider state constraint −ψ ≤ Ψx(k + i + 1|k) ≤ ψ. Since ε is aninvariant ellipsoid, by denoting ξs as the s-th row of the q-ordered identitymatrix, we can make the following deduction:

maxi≥0|ξsx(k + i+ 1|k)| = max

i≥0|ξs [A(k + i) +B(k + i)F ]x(k + i|k)|

= maxi≥0

∣∣∣ξs [A(k + i) +B(k + i)F ]Q1/2Q−1/2x(k + i|k)

∣∣∣

≤ maxi≥0

∥∥∥ξs [A(k + i) +B(k + i)F ]Q1/2

∥∥∥

∥∥∥Q−1/2x(k + i|k)

∥∥∥

≤ maxi≥0

∥∥∥ξs [A(k + i) +B(k + i)F ]Q1/2

∥∥∥ .

Thus, by using Schur complements, if there exists a symmetric matrix Γ suchthat

[

Q ∗Ψ[A(k + i)Q+B(k + i)Y ] Γ

]

≥ 0, Γss ≤ ψ2s , l ∈ 1, 2, . . . , L,

s ∈ 1, 2, . . . , q, (7.2.14)

then |ξsx(k + i+ 1|k)| ≤ ψs, s ∈ 1, 2, . . . , q.Eq. (7.2.14) is affine with respect to [ A(k + i) B(k + i) ] (superposition

principle is satisfied). Therefore, (7.2.14) is satisfied if and only if[

Q ∗Ψ(AlQ+BlY ) Γ

]

≥ 0, Γss ≤ ψ2s , l ∈ 1, 2, . . . , L, s ∈ 1, 2, . . . , q.

(7.2.15)

© 2010 b T l d F G LLC

Page 185: 1420085301 Predictive Control

7.2. On-line min-max MPC: case zero-horizon 169

Now, problem (7.2.1)-(7.2.3) is approximately converted into the followingoptimization problem:

minγ,Q,Y,Z,Γ

γ, s.t. (7.2.7), (7.2.11), (7.2.13), (7.2.15). (7.2.16)

By the above deductions we obtain the following important property ofpredictive control:

Lemma 7.2.1. (Feasibility) Any feasible solution of the optimization in(7.2.16) at time k is also feasible for all time t > k. Thus if the optimiza-tion problem in (7.2.16) is feasible at time k, then it is feasible for all timest > k.

Proof. Let us suppose (7.2.16) is feasible at time k. The only LMI in (7.2.16)that depends explicitly on the measured state x(k|k) = x(k) of the system isthe following:

[

1 x(k|k)Tx(k|k) Q

]

≥ 0.

Thus, to prove the lemma, we need only prove that this LMI is feasible for allfuture measured states x(k + i|k + i) = x(k + i).

In the above discussion we have shown that, when (7.2.7) and (7.2.11) aresatisfied,

x(k + i|k)TQ−1x(k + i|k) < 1, i ≥ 1.

Consider the state measured at k + 1, then there is a [A|B] ∈ Ω such that

x(k + 1|k + 1) = x(k + 1) = (A+BF )x(k|k). (7.2.17)

Eq. (7.2.17) is different from

x(k + 1|k) = [A(k) +B(k)F ]x(k|k) (7.2.18)

in that, x(k + 1|k) is uncertain while x(k + 1|k + 1) is deterministic andmeasured. Apparently, x(k + 1|k)TQ−1x(k + 1|k) ≤ 1 must lead to

x(k + 1|k + 1)TQ−1x(k + 1|k + 1) < 1.

Thus, the feasible solution of the optimization problem at time k is also feasibleat time k + 1. Hence the optimization (7.2.16) is feasible at time k + 1.

Analogously, for k+2, k+3, · · · , the same result as k+1 can be obtained.

Theorem 7.2.1. (Stability) Suppose the optimization in (7.2.16) is feasible attime k = 0. Then by receding-horizon implementation of u(k) = F (k)x(k) =Y (k)Q(k)−1x(k), the closed-loop system is robustly exponentially stable.

© 2010 b T l d F G LLC

Page 186: 1420085301 Predictive Control

170 Chapter 7. State feedback synthesis approaches

Proof. Use ∗ to denote the optimal solution. To prove asymptotic stability,we shall establish that γ∗(k) is strictly decreasing with the evolution of k.

First, let us suppose problem (7.2.16) is feasible at time k = 0. Lemma7.2.1 then ensures feasibility of (7.2.16) at all k > 0. At each time k, problem(7.2.16) is convex and, therefore, has a unique minimum.

Since (7.2.5) is satisfied,

x∗(k+1|k)TP ∗(k)x∗(k+1|k) ≤ x(k|k)TP ∗(k)x(k|k)−[‖x(k)‖2W + ‖u∗(k|k)‖2R‖]

.(7.2.19)

Since x∗(k + 1|k) is the predicted state whereas x(k + 1|k + 1) is themeasured state, (7.2.19) must lead to

x(k + 1|k + 1)TP ∗(k)x(k + 1|k + 1) ≤ x(k|k)TP ∗(k)x(k|k)

− [‖x(k)‖2W + ‖u∗(k|k)‖2R‖]

. (7.2.20)

Now, notice that

x(k + 1|k + 1)TP (k + 1)x(k + 1|k + 1) ≤ γ(k + 1), x(k|k)TP ∗(k)x(k|k)≤ γ∗(k).

According to (7.2.20), at time k + 1, it is feasible to chooseγ(k + 1) = γ∗(k)− [‖x(k)‖2W + ‖u∗(k|k)‖2R‖

]

.This γ(k + 1) is not necessarily optimal at time k + 1. Hence,

γ∗(k + 1) ≤ γ(k + 1), (7.2.21)

and

γ∗(k + 1)− γ∗(k) ≤ − [‖x(k)‖2W + ‖u∗(k|k)‖2R‖] ≤ −λmin(W )‖x(k)‖2.

(7.2.22)Eq. (7.2.22) shows that γ∗(k) is strictly decreasing with the evolution of

k and, hence, can serve as Lyapunov function. Therefore, limk→∞ x(k) = 0 isconcluded.

7.3 Off-line approach based on min-max per-formance cost: case zero-horizon

In this section, we design off-line MPC based on the notion of “asymptot-ically stable invariant ellipsoid.” The so-called “off-line” means that all theoptimizations are performed off-line. A series of control laws are optimizedoff-line, each corresponding to an ellipsoidal region of attraction. When thealgorithm is implemented on-line, one only needs to find the ellipsoid in whichthe current state lies, and choose the control law corresponding to this ellip-soid.

© 2010 b T l d F G LLC

Page 187: 1420085301 Predictive Control

7.3. Off-line min-max MPC: case zero-horizon 171

Definition 7.3.1. Consider a discrete-time dynamic system x(k + 1) =f(x(k)) and a set ε = x ∈ Rn|xTQ−1x ≤ 1. If

x(k1) ∈ ε⇒ x(k) ∈ ε, ∀k ≥ k1, limk→∞

x(k) = 0,

then ε is said to be an asymptotically stable invariant ellipsoid.

Apparently, by solving (7.2.16) to obtain F, Q, then the ellipsoid ε cor-responding to Q is an asymptotically stable invariant ellipsoid. If we off-lineoptimize a series of (e.g. a number of N ; note that, at here N is not theswitching horizon, but adopts the same notation as the switching horizon; thereader could think that this N has some relation with the switching horizon)ε, with each ε corresponding to its F , then on-line, we can choose F corre-sponding to the ellipsoid ε in which the state lies. Suppose we have chosena “sufficiently large” number of ellipsoids, then it is easy to imagine that wecan make off-line MPC approach to on-line MPC in the former chapter, tosome extent.

Algorithm 7.1

Step 1. Off-line, choose states xi, i ∈ 1, . . . , N. Substitute x(k|k) in(7.2.7) by xi, and solve (7.2.16) to obtain the corresponding ma-trices Qi, Yi, ellipsoids εi =

x ∈ Rn|xTQ−1i x ≤ 1

and feed-back gains Fi = YiQ

−1i . Notice that xi should be chosen such that

εj ⊂ εj−1, ∀j ∈ 2, . . . , N. For each i = N , check if the following issatisfied:

Q−1i − (Al +BlFi+1)TQ−1

i (Al +BlFi+1) > 0, l ∈ 1, ..., L . (7.3.1)

Step 2. On-line, at each time k adopt the state feedback law:

u(k) = F (k)x(k) =F (αi(k))x(k), x(k) ∈ εi, x(k) /∈ εi+1, i = NFNx(k), x(k) ∈ εN ,

(7.3.2)where F (αi(k)) = αi(k)Fi + (1− αi(k))Fi+1, and

i) if (7.3.1)is satisfied, then 0 < αi(k) ≤ 1, x(k)T [αi(k)Q−1i + (1 −

αi(k))Q−1i+1]x(k) = 1;

ii) if (7.3.1) is not satisfied, then αi(k) = 1.

From the on-line approach, we know that the optimal control law and itscorresponding asymptotically stable invariant ellipsoid depend on the state.Although the control law can be applied to all the states within the ellipsoid, itis not optimal (usually, we can only be sure that the feedback gain Fi is optimalfor the state point xi belonging to εi). So our off-line formulation sacrificesoptimality somewhat while significantly reducing the on-line computationalburden.

© 2010 b T l d F G LLC

Page 188: 1420085301 Predictive Control

172 Chapter 7. State feedback synthesis approaches

In the above algorithm, we also find that the selection of xi is, to a largeextent, arbitrary. However, in general we can select xmax as far as possiblefrom x = 0. Then, we can select xi = βix

max, β1 = 1, 1 > β2 > · · · > βN > 0.

Theorem 7.3.1. (Stability) Suppose x(0) ∈ εx,1, then Algorithm 7.1 asymp-totically stabilizes the closed-loop system. Further, if (7.3.1) is satisfied for alli = N , then the control law (7.3.2) in Algorithm 7.1 is a continuous functionof the system state x.

Proof. We only consider the case where (7.3.1) is satisfied for all i = N . Othercases are simpler.

The closed-loop system is given by

x(k + 1) =

[A(k) +B(k)F (αi(k))]x(k), x(k) ∈ εi, x(k) /∈ εi+1, i = N[A(k) +B(k)FN ]x(k), x(k) ∈ εN .

(7.3.3)For x(k) ∈ εi\εi+1, denote

Q(αi(k))−1 = αi(k)Q−1i + (1− αi(k))Q−1

i+1,

X(αi(k)) = αi(k)Xi + (1− αi(k))Xi+1, X ∈ Z,Γ .

When (7.3.1) is satisfied, by considering the procedure of solving Qi, Yi(i.e., Qi, Yi satisfy stability constraint (7.2.11)), it is shown that

Q−1i − (Al +BlF (αi(k)))

TQ−1i (Al +BlF (αi(k))) > 0, l ∈ 1, . . . , L.

(7.3.4)Moreover, if both Yi, Qi, Zi,Γiand Yi+1, Qi+1, Zi+1,Γi+1 satisfy (7.2.13)and (7.2.15), then

[Q(αi(k))−1 ∗F (αi(k)) Z(αi(k))

]

≥ 0, Z(αi(k))jj ≤ u2j , j ∈ 1, . . . ,m, (7.3.5)

[Q(αi(k))−1 ∗

Ψ (Al +BlF (αi(k))) Γ(αi(k))

]

≥ 0,

l ∈ 1, . . . , L,Γ(αi(k))ss ≤ ψ2s , s ∈ 1, . . . , q. (7.3.6)

Eqs. (7.3.4))-(7.3.6) indicate that u(k) = F (αi(k))x(k) will keep the stateinside of εi and drive it towards εi+1, with the hard constraints satisfied.Finally, the state is converged to the origin by u(k) = FNx(k).

Consider two ring regions:

Ri−1 = x ∈ Rn|xTQ−1i−1x ≤ 1, xTQ−1

i x > 1,Ri = x ∈ Rn|xTQ−1

i x ≤ 1, xTQ−1i+1x > 1.

© 2010 b T l d F G LLC

Page 189: 1420085301 Predictive Control

7.4. Off-line min-max MPC: case varying-horizon 173

Firstly, within Ri, the solution of xT (αiQ−1i + (1− αi)Q−1

i+1)x = 1 is

αi =1− xTQ−1

i+1x

xT (Q−1i −Q−1

i+1)x.

Therefore, within Ri, αi is a continuous function of x, and so isF (αi). The same argument holds for the region Ri−1, where αi−1 =(1− xTQ−1

i x)/(xT (Q−1i−1 −Q−1

i )x).Secondly, when x ∈ Ri, xTQ−1

i x → 1 ⇒ αi → 1. Thus on the boundarybetween Ri and Ri−1,

limαi−1→0

F (αi−1) = limαi→1

F (αi) = Fi,

which establishes the continuity of F (k) in (7.3.2) on the boundary betweenRi and Ri−1.

So, it can be concluded that F (k) is a continuous function of x.

7.4 Off-line approach based on min-max per-formance cost: case varying-horizon

In Algorithm 7.1, when Fi is calculated, Fj , ∀j > i are not considered.However, for εj , ∀j > i, Fj is the better choice than Fi. In the follow-ing, we select QN , FN , γN as in Algorithm 7.1, but the selection ofQj, Fj , γj , ∀j ≤ N − 1 is different from Algorithm 7.1. For xN−h, ∀h ≥ 1,we select QN−h, FN−h such that, when x(k) ∈ εN−h, x(k+i|k) ∈ εN−h+i ⊂εN−h, 1 ≤ i ≤ h and, inside of εN−h+i, FN−h+i is adopted. For convenience,firstly define

Jtail(k) =∞∑

i=1

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

. (7.4.1)

1. Calculation of QN−1,FN−1

Suppose QN , FN have been obtained, and consider x(k) /∈ εN . The fol-lowing control law is adopted to solve problem (7.2.16):

u(k) = FN−1x(k), u(k + i|k) = FNx(k + i|k), ∀i ≥ 1, (7.4.2)

which yields

max[A(k+i)|B(k+i)]∈Ω,i≥1

Jtail(k) ≤ x(k + 1|k)TPNx(k + 1|k) ≤ γN , (7.4.3)

© 2010 b T l d F G LLC

Page 190: 1420085301 Predictive Control

174 Chapter 7. State feedback synthesis approaches

where PN = γNQ−1N . Thus, the optimization of J∞(k) is transformed into the

optimization of the following cost function:

JN−1(k) J(k) = ‖x(k)‖2W + ‖u(k)‖2R + ‖x(k + 1|k)‖2PN,= x(k)T

×

W + FTN−1RFN−1 + [A(k) +B(k)FN−1]T PN [A(k) +B(k)FN−1]

× x(k). (7.4.4)

Define JN−1(k) ≤ γN−1. Introduce the slack variable PN−1 such that

γN−1 − xTN−1PN−1xN−1 ≥ 0,(7.4.5)

W + FTN−1RFN−1 + [A(k) +B(k)FN−1]TPN [A(k) +B(k)FN−1] ≤ PN−1.

(7.4.6)

Moreover, u(k) = FN−1x(k) should satisfy the input/state constraints

−u ≤ FN−1x(k) ≤ u, − ψ ≤ Ψ [A(k) +B(k)FN−1]x(k) ≤ ψ, ∀x(k) ∈ εN−1

(7.4.7)and the terminal constraint

x(k + 1|k) ∈ εN , ∀x(k) ∈ εN−1. (7.4.8)

Eq. (7.4.8) is equivalent to [A(k) +B(k)FN−1]TQ−1N [A(k) +B(k)FN−1] ≤

Q−1N−1. By defining QN−1 = γN−1P

−1N−1 and FN−1 = YN−1Q

−1N−1, (7.4.5),

(7.4.6) and (7.4.8) can be transformed into the following LMIs:[

1 ∗xN−1 QN−1

]

≥ 0, (7.4.9)⎡

⎢⎢⎣

QN−1 ∗ ∗ ∗AlQN−1 +BlYN−1 γN−1P

−1N ∗ ∗

W 1/2QN−1 0 γN−1I ∗R1/2YN−1 0 0 γN−1I

⎥⎥⎦≥ 0, l ∈ 1, . . . , L,

(7.4.10)[

QN−1 ∗AlQN−1 +BlYN−1 QN

]

≥ 0, l ∈ 1, . . . , L.(7.4.11)

Moreover, by satisfaction of the following LMIs, constraint (7.4.7) is satisfied:[ZN−1 YN−1

Y TN−1 QN−1

]

≥ 0, ZN−1,jj ≤ u2j , j ∈ 1, . . . ,m, (7.4.12)

[QN−1 ∗

Ψ (AlQN−1 +BlYN−1) ΓN−1

]

≥ 0, ΓN−1,ss ≤ ψ2s ,

l ∈ 1, . . . , L, s ∈ 1, . . . , q. (7.4.13)

© 2010 b T l d F G LLC

Page 191: 1420085301 Predictive Control

7.4. Off-line min-max MPC: case varying-horizon 175

Thus, YN−1, QN−1, γN−1 can be obtained by solving the following opti-mization problem:

minγN−1,YN−1,QN−1,ZN−1,ΓN−1

γN−1, s.t. (7.4.9)− (7.4.13). (7.4.14)

2. Calculation of QN−h, FN−h, ∀h ≥ 2SupposeQN−h+1, FN−h+1, · · · , QN , FN have been obtained, and consider

x(k) /∈ εN−h+1. The following control law is adopted to solve problem (7.2.16):

u(k + i|k) = FN−h+ix(k + i|k), i=0, . . . , h− 1; u(k + i|k)=FNx(k + i|k), ∀i ≥ h. (7.4.15)

Consider (7.4.3) with h = 2, 3, · · · By induction, the following is obtained:

max[A(k+i)|B(k+i)]∈Ω,i≥1

Jtail(k) ≤ x(k + 1|k)TPN−h+1x(k + 1|k) ≤ γN−h+1,

(7.4.16)where PN−h+1 = γN−h+1Q

−1N−h+1. Thus, the optimization of J∞(k) is trans-

formed into the optimization of the following cost function:

JN−h(k) J(k) = ‖x(k)‖2W + ‖u(k)‖2R + ‖x(k + 1|k)‖2PN−h+1. (7.4.17)

Introduce the slack variable PN−h = γN−hQ−1N−h and define JN−h(k) ≤

γN−h, FN−h = YN−hQ−1N−h such that

[

1 ∗xN−h QN−h

]

≥ 0, (7.4.18)⎡

⎢⎢⎣

QN−h ∗ ∗ ∗AlQN−h +BlYN−h γN−hP−1

N−h+1 ∗ ∗W 1/2QN−h 0 γN−hI ∗R1/2YN−h 0 0 γN−hI

⎥⎥⎦≥ 0, l∈1, . . . , L.

(7.4.19)

Moreover, u(k|k) = FN−hx(k|k) should satisfy

[QN−h ∗

AlQN−h +BlYN−h QN−h+1

]

≥ 0, l ∈ 1, . . . , L, (7.4.20)[ZN−h YN−hY TN−h QN−h

]

≥ 0, ZN−h,jj ≤ u2j , j ∈ 1, . . . ,m,

(7.4.21)[

QN−h ∗Ψ (AlQN−h +BlYN−h) ΓN−h

]

≥ 0, ΓN−h,ss ≤ ψ2s , l ∈ 1, . . . , L,

s ∈ 1, . . . , q. (7.4.22)

© 2010 b T l d F G LLC

Page 192: 1420085301 Predictive Control

176 Chapter 7. State feedback synthesis approaches

Thus, YN−h, QN−h, γN−h can be obtained by solving the following opti-mization problem

minγN−h,YN−h,QN−h,ZN−h,ΓN−h

γN−h, s.t. (7.4.18)− (7.4.22). (7.4.23)

Algorithm 7.2 (Varying horizon off-line robust MPC)

Step 1. Off-line, select state points xi, i ∈ 1, . . . , N. Substitute x(k|k) in(7.2.7) by xN , and solve (7.2.16) to obtain QN , YN , γN , ellipsoid εNand feedback gain FN = YNQ

−1N . For xN−h, let h gradually increase,

from 1 to N − 1, and solve (7.4.23) to obtain QN−h, YN−h, γN−h,ellipsoid εN−h and feedback gain FN−h = YN−hQ−1

N−h. Notice thatthe selection of xN−h, h ∈ 0, . . . , N − 1 should satisfy εj ⊃ εj+1,∀j ∈ 1, . . . , N − 1.

Step 2. On-line, at each time k, the following is adopted

F (k) =F (αN−h), x(k) ∈ εN−h, x(k) /∈ εN−h+1

FN , x(k) ∈ εN , (7.4.24)

where F (αN−h) = αN−hFN−h + (1− αN−h)FN−h+1,x(k)T

[

αN−hQ−1N−h + (1− αN−h)Q−1

N−h+1

]

x(k) = 1, 0 ≤ αN−h ≤ 1.

In Algorithm 7.2, αN−h(k) is simplified as αN−h, since x(k) can only stayin εN−h once.

Suppose, at time k, FN−h is adopted and the control law in (7.4.15) isconsidered. Since the same control law is adopted for all states satisfyingthe same conditions, and the uncertain system is considered, it is usuallyimpossible to exactly satisfy x(k + i|k) ∈ εN−h+i, x(k + i|k) /∈ εN−h+i+1,∀i ∈ 0, . . . , h−1. In the real applications, it is usually impossible to exactlysatisfy x(k+ i) ∈ εN−h+i, x(k+ i) /∈ εN−h+i+1, ∀i ∈ 0, . . . , h− 1. However,when one considers FN−h+i (i > 1), it is more suitable to εN−h+i · · · εN thanFN−h, hence, the optimality of off-line MPC can be improved by adopting(7.4.15).

Notice that it is not bounded that the above rationale can improve opti-mality. Compared with Algorithm 7.1, Algorithm 7.2 utilizes (7.4.20), whichis an extra constraint. Adding any constraint can degrade the performancewith respect to feasibility and optimality.

Moreover, in (7.4.15), not a single FN−h, but a sequence of control lawsFN−h, FN−h+1, FN , is adopted. In the real implementation, applying (7.4.24)implies application of the control law sequence F (αN−h), FN−h+1, · · · , FNwhere, however, only the current control law F (αN−h) is implemented. Thisimplies that varying horizon MPC is adopted, where the control horizonchanges within N−1, . . . , 0 (the control horizon for the algorithm in section7.2 is 0).

© 2010 b T l d F G LLC

Page 193: 1420085301 Predictive Control

7.4. Off-line min-max MPC: case varying-horizon 177

Theorem 7.4.1. Given x(0) ∈ ε1, by adopting Algorithm 7.2, the closed-loopsystem is asymptotically stable. Further, the control law (7.4.24) in Algorithm7.2 is a continuous function of the system state x.

Proof. For h = 0, if x(k) satisfies ‖x(k)‖2Q−1N−h

≤ 1 and ‖x(k)‖2Q−1N−h+1

≥ 1,then let

Q(αN−h)−1 = αN−hQ−1N−h + (1− αN−h)Q−1

N−h+1,

Z(αN−h) = αN−hZN−h + (1− αN−h)ZN−h+1,

Γ(αN−h) = αN−hΓN−h + (1− αN−h)ΓN−h+1.

By linear interpolation, we obtain[

Z(αN−h) ∗F (αN−h)T Q(αN−h)−1

]

≥ 0,[

Q(αN−h)−1 ∗Ψ (Al +BlF (αN−h)) Γ(αN−h)

]

≥ 0.

(7.4.25)Eq. (7.4.25) implies that F (αN−h) can satisfy the input and state constraints.

For ∀x(0) ∈ εN−h+1, FN−h+1 is a stabilizing feedback law. Hence,[

Q−1N−h+1 ∗

Al +BlFN−h+1 QN−h+1

]

≥ 0.

Moreover, in (7.4.20), by multiplying both sides of[

QN−h ∗AlQN−h +BlYN−h QN−h+1

]

by[

Q−1N−h 00 I

]

, it is shown that (7.4.20)

is equivalent to[

Q−1N−h ∗

Al +BlFN−h QN−h+1

]

≥ 0.

Thus, applying linear interpolation yields[

Q(αN−h)−1 ∗Al +BlF (αN−h) QN−h+1

]

≥ 0. (7.4.26)

Since x(k) ∈ εN−h,αN−h=

x ∈ Rn|xTQ(αN−h)−1x ≤ 1

, (7.4.26) indi-cates that u(k) = F (αN−h)x(k) can guarantee to drive x(k+ 1) into εN−h+1,with the constraints satisfied. The continued proof is the same as the lastsection.

3. Numerical example

Consider[x(1)(k + 1)x(2)(k + 1)

]

=[

0.8 0.2β(k) 0.8

] [x(1)(k)x(2)(k)

]

+[

10

]

u(k) (since

xi is the state point in off-line MPC, we use x(i) to denote the state element),where β(k) satisfies 0.5 ≤ β(k) ≤ 2.5, which is an uncertain parameter. Thetrue state is generated by β(k) = 1.5+sin(k). The constraint is |u(k + i|k)| ≤2, ∀i ≥ 0.

© 2010 b T l d F G LLC

Page 194: 1420085301 Predictive Control

178 Chapter 7. State feedback synthesis approaches

-1 -0.5 0 0.5 1 1.5 2-1

0

1

2

3

(1)x

(2)x

Figure 7.4.1: State trajectories of the closed-loop system.

Choose the weighting matrices as W = I and R = 1. Choose xN−h =[

2− 0.01(N − h− 1) 0]T and xN = [1 0]T (for simplicity more concrete

partition is not given). The initial state lies at x(0) = [2 0]T . Adopt Algo-rithms 7.1 and 7.2. The state trajectories, state responses and the controlinput signal by adopting the two algorithms are shown in Figures 7.4.1, 7.4.2and 7.4.3. The solid line refers to Algorithm 7.2, and the dotted line refersto Algorithm 7.1. It can be conceived from the figures that, in a single sim-ulation, the state does not necessarily stay in every ellipsoid and, rather, thestate can jump over some ellipsoids and only stay in part of the ellipsoids. If aseries of simulations are performed, then each of the ellipsoids will be useful.

Further, denote J =∑∞i=0

[

‖x(i)‖2W + ‖u(i)‖2R]

. Then, for Algorithm 7.1,

J∗ = 24.42, and for Algorithm 7.2, J∗ = 21.73. The simulation results showthat Algorithm 7.2 is better for optimality.

7.5 Off-line approach based on nominal perfor-mance cost: case zero-horizon

As mentioned earlier, since the problem (7.2.16) can involve huge computa-tional burden, the corresponding off-line MPC is given such that problem(7.2.16) is performed off-line. However, while off-line MPC greatly reduce theon-line computational burden, its feasibility and optimality is largely degradedas compared with on-line MPC. The algorithms in this and the next sectionsare to compensate two deficiencies of problem (7.2.16):

• The “worst-case” is adopted so that there are L LMIs in (7.2.11).

© 2010 b T l d F G LLC

Page 195: 1420085301 Predictive Control

7.5. Off-line MPC: case zero-horizon 179

0 5 10 15 -1

0

2

3

k

(1)

(2)

,xx

Figure 7.4.2: State responses of the closed-loop system.

0 5 10 15-2

-1

0

1

k

u

Figure 7.4.3: Control input signal.

© 2010 b T l d F G LLC

Page 196: 1420085301 Predictive Control

180 Chapter 7. State feedback synthesis approaches

• Problem (7.2.16) only adopts feedback MPC with control horizonM = 0(see section 7.4; about feedback MPC, more details are given in Chapter9).

These two deficiencies restrict the optimality and feasibility. Therefore, in thissection we will adopt nominal performance cost in synthesizing off-line MPC,while in the next section we will further combine MPC based on the nominalperformance cost with the varying horizon approach.

1. Basic algorithmUsing nominal performance cost, let us solve the following problem at each

time k:

minu(k+i|k)=F (k)x(k+i|k),P (k)

Jn,∞(k)=∞∑

i=0

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

,

(7.5.1)

s.t. x(k + i+ 1|k) = Ax(k + i|k) + Bu(k + i|k),x(k|k) = x(k), ∀i ≥ 0, (7.2.2), (7.2.3), (7.5.2)

‖x(k + i+ 1|k)‖2P (k) − ‖x(k + i|k)‖2P (k) < 0, ∀i ≥ 0, P (k) > 0, (7.5.3)

‖x(k + i+ 1|k)‖2P (k) − ‖x(k + i|k)‖2P (k) ≤ −‖x(k + i|k)‖2W− ‖u(k + i|k)‖2R , ∀k, i ≥ 0, (7.5.4)

where x denotes nominal state; (7.5.3) is for guaranteeing stability; (7.5.4)is for cost monotonicity. Since [A|B] ∈ Ω, (7.5.3)-(7.5.4) are less restrictivethan (7.2.5). Hence, compared with (7.2.1)-(7.2.3)+(7.2.5) (“+” indicates sat-isfaction of (7.2.5) when solving (7.2.1)-(7.2.3)), (7.5.1)-(7.5.4) is easier to befeasible, i.e., (7.5.1)-(7.5.4) can be utilized to a wider class of systems.

For stable closed-loop system, x(∞|k) = 0. Hence, summing (7.5.4) fromi = 0 to i = ∞ obtains Jn,∞(k) ≤ ‖x(k)‖2P (k) ≤ γ, where the same notationγ as in the former sections is adopted that should not induce confusion. It iseasy to show that constraint (7.5.4) is equivalent to:

(A+ BF (k))TP (k)(A + BF (k))− P (k) ≤ −W − F (k)TRF (k). (7.5.5)

Define Q = γP (k)−1, F (k) = Y Q−1, then (7.5.5) and (7.5.3) can be trans-formed into the following LMIs:

⎢⎢⎣

Q ∗ ∗ ∗AQ+ BY Q ∗ ∗W 1/2Q 0 γI ∗R1/2Y 0 0 γI

⎥⎥⎦≥ 0, (7.5.6)

[Q ∗

AlQ+BlY Q

]

> 0, l ∈ 1, . . . , L. (7.5.7)

For treating input and state constraints, (7.5.7) and (7.2.11) will have thesame role, i.e., (7.2.7) and (7.5.7) also lead to x(k + i|k)TQ−1x(k + i|k) ≤ 1,

© 2010 b T l d F G LLC

Page 197: 1420085301 Predictive Control

7.5. Off-line MPC: case zero-horizon 181

∀i ≥ 0. Therefore, with (7.2.7) and (7.5.7) satisfied, (7.2.13) and (7.2.15)guarantee satisfaction of (7.2.2). Thus, problem (7.5.1)-(7.5.4) can be approx-imated by

minγ,Q,Y,Z,Γ

γ, s.t. (7.5.6)− (7.5.7), (7.2.7), (7.2.13) and (7.2.15). (7.5.8)

Eq. (7.5.6) is a necessary condition of (7.2.11), (7.5.7) a part of (7.2.11).Hence, (7.5.8) is easier to be feasible than (7.2.16).

Algorithm 7.3 (Type I off-line MPC adopting nominal performance cost)

Stage 1. Off-line, choose states xi, i ∈ 1, · · · , N. Substitute x(k) in(7.2.7) by xi, and solve (7.5.8) to obtain the corresponding matricesQi, Yi, ellipsoids εi =

x ∈ Rn|xTQ−1i x ≤ 1

and feedback gainsFi = YiQ

−1i . Notice that xi should be chosen such that εi+1 ⊂ εi,

∀i = N . For each i = N , check if (7.3.1) is satisfied.

Stage 2. On-line, at each time k adopt the state feedback law (7.3.2).

Theorem 7.5.1. (Stability) Suppose x(0) ∈ ε1. Then, Algorithm 7.3 asymp-totically stabilizes the closed-loop system. Moreover, if (7.3.1) is satisfied forall i = N , then the control law (7.3.2) in Algorithm 7.3 is a continuous func-tion of the system state x.

Proof. For x(k) ∈ εi, since Yi, Qi, Zi, Γi satisfy (7.2.7), (7.2.13),(7.2.15) and (7.5.7), Fi is feasible and stabilizing. For x(k) ∈ εi\εi+1, de-note Q(αi(k))−1 = αi(k)Q−1

i + (1 − αi(k))Q−1i+1, X(αi(k)) = αi(k)Xi + (1 −

αi(k))Xi+1, X ∈ Z,Γ. If (7.3.1) is satisfied and Yi, Qi satisfies (7.5.7),then

Q−1i − (Al +BlF (αi(k)))

TQ−1i (Al +BlF (αi(k))) > 0, l ∈ 1, . . . , L.

(7.5.9)Moreover, if both Yi, Qi, Zi, Γi and Yi+1, Qi+1, Zi+1, Γi+1 satisfy(7.2.13) and (7.2.15), then

[Q(αi(k))−1 ∗F (αi(k)) Z(αi(k))

]

≥ 0, Z(αi(k))jj ≤ u2j , j ∈ 1, . . . ,m,

(7.5.10)[

Q(αi(k))−1 ∗Ψ (Al +BlF (αi(k))) Γ(αi(k))

]

≥ 0, l ∈ 1, . . . , L, Γ(αi(k))ss ≤ ψ2s ,

s ∈ 1, . . . , q. (7.5.11)

Eqs. (7.5.9)-(7.5.11) indicate that u(k) = F (αi(k))x(k) will keep the stateinside of εi and drive it towards εi+1, with the hard constraints satisfied. Moredetails are referred to Theorem 7.3.1.

2. Algorithm utilizing variable G

© 2010 b T l d F G LLC

Page 198: 1420085301 Predictive Control

182 Chapter 7. State feedback synthesis approaches

In order to improve optimality, define F (k) = Y G−1 (rather than F (k) =Y Q−1). Then, (7.5.5) and (7.5.3) can be transformed into the following LMIs(where the fact that (G−Q)TQ−1(G−Q) ≥ 0⇒ GT +G−Q ≤ GTQ−1G isutilized):

⎢⎢⎣

G+GT −Q ∗ ∗ ∗AG+ BY Q ∗ ∗W 1/2G 0 γI ∗R1/2Y 0 0 γI

⎥⎥⎦≥ 0, (7.5.12)

[

G+GT −Q ∗AlG+BlY Q

]

> 0, l ∈ 1, . . . , L. (7.5.13)

Further, (7.2.2) is satisfied by satisfaction of the following LMIs:[

Z YY T G+GT −Q

]

≥ 0, Zjj ≤ u2j , j ∈ 1, . . . ,m, (7.5.14)

[G+GT −Q ∗

Ψ (AlG+BlY ) Γ

]

≥ 0, Γss ≤ ψ2s , l ∈ 1, . . . , L, s ∈ 1, . . . , q.

(7.5.15)

Thus, optimization problem (7.5.1)-(7.5.4) is approximated by

minγ,Q,Y,G,Z,Γ

γ, s.t. (7.2.7), (7.5.12)− (7.5.15). (7.5.16)

Let G = GT = Q, then (7.5.16) becomes into (7.5.8). Since an extravariable G is introduced, the degree of freedom for optimization is increasedand, in general, the optimality of F (k) is enhanced.

Algorithm 7.4 (Type II off-line MPC adopting nominal performancecost)

Stage 1. Off-line, choose states xi, i ∈ 1, . . . , N. Substitute x(k) in (7.2.7)by xi, and solve (7.5.16) to obtain the corresponding matricesGi, Qi, Yi, ellipsoids εi =

x ∈ Rn|xTQ−1i x ≤ 1

and feedbackgains Fi = YiG

−1i . Note that xi should be chosen such that εi+1 ⊂ εi,

∀i = N . For each i = N , check if (7.3.1) is satisfied.

Stage 2. On-line, at each time k adopt the state feedback law (7.3.2).

Theorem 7.5.2. (Stability) Suppose x(0) ∈ ε1. Then, by applying Algorithm7.4 the closed-loop system is asymptotically stable. Further, if (7.3.1) is sat-isfied for all i = N , then the control law (7.3.2) is a continuous function ofthe system state x.

3. Numerical exampleConsider

[

x(1)(k + 1)x(2)(k + 1)

]

=[

1 0K(k) 1

] [

x(1)(k)x(2)(k)

]

+[

10

]

u(k),

© 2010 b T l d F G LLC

Page 199: 1420085301 Predictive Control

7.6. Off-line MPC: case varying-horizon 183

where K(k) is an uncertain parameter. Take W = I, R = 1 and the input con-straint as |u| ≤ 1. The initial state is x(0) = [7, 80]T . Consider the followingtwo cases:

CASE 1 : TakeK(k) ∈ [1,KM ] and varyKM . When KM ≥ 49.4 Algorithm7.1 becomes infeasible. However, Algorithms 7.3 and 7.4 are still feasible whenKM = 56.9. This shows that adopting nominal performance cost improvesfeasibility.

CASE 2 : K(k) ∈ [0.1, 2.9]. Take x(1)i = x

(2)i = ξi, ξ1 = 10, ξ2 = 8, ξ3 = 7,

ξ4 = 6, ξ5 = 5, ξ6 = 4, ξ7 = 3, ξ8 = 2.5, ξ9 = 2, ξ10 = 1.5. When the stateare generated with different methods, by adopting Algorithms 7.1, 7.4 andthe on-line algorithm in this chapter, respectively, we obtain the cost valuesJ∗true,∞ shown in Table 7.5.1, where Jtrue,∞ =

∑∞i=0

[

‖x(i)‖2W + ‖u(i)‖2R]

.These results show that, even for some “extreme” cases, Algorithm 7.4 can stillimprove optimality. When the state is generated by K(k) = 1.5 + 1.4 sin(k),by adopting Algorithms 7.1 and 7.4, respectively, the obtained closed-loopstate trajectories are shown in Figure 7.5.1, where the dotted line refers toAlgorithm 7.1 and solid line to Algorithm 7.4.

Table 7.5.1: The cost values J∗true,∞ adopting different state generation meth-ods and different Algorithms.State generation On-lineformula Algorithm 7.1 Algorithm 7.4 MethodK(k) = 1.5 + 1.4 sin(k) 353123 290041 342556K(k) = 1.5 + (−1)k1.4 331336 272086 321960K(k) = 0.1 653110 527367 526830K(k) = 2.9 454295 364132 453740K(k) = 0.1 + 2.8rand(0, 1) 330616 268903 319876where: rand(0, 1) is a random number in the interval [0, 1].

For the three algorithms, the sequences of random numbers areidentical.

7.6 Off-line approach based on nominal perfor-

mance cost: case varying-horizon

Algorithms 7.1, 7.3 and 7.4 have a common feature, i.e., for any initial statex(k) = xN−h, the following law is adopted

u(k + i|k) = FN−hx(k + i|k), ∀i ≥ 0. (7.6.1)

However, after applying FN−h in εN−h (h > 0), the state may have been driveninto the smaller ellipsoid εN−h+1 in which FN−h+1 is more appropriate thanFN−h. Hence, we can substitute (7.6.1) by

u(k + i|k) = FN−h+ix(k + i|k), i ∈ 0, . . . , h− 1,u(k + i|k) = FNx(k + i|k), ∀i ≥ h. (7.6.2)

© 2010 b T l d F G LLC

Page 200: 1420085301 Predictive Control

184 Chapter 7. State feedback synthesis approaches

-6 -4 -2 0 2 4 6 8-20

0

20

40

60

80

100

120

140

(1)x

(2)x

Figure 7.5.1: Closed-loop state trajectories by adopting Algorithms 7.1 and7.4.

If

x(k) ∈ εN−h, x(k) /∈ εN−h+1 ⇒ x(k + i) ∈ εN−h+i, ∀i ∈ 0, . . . , h, (7.6.3)

then adopting (7.6.2) is apparently better than adopting (7.6.1). Section 7.4has adopted this observation to give the controller. In this section, we heuris-tically combine this observation with adopting nominal performance cost.

1. Calculating QN , FN and QN−h, FN−h, h = 1Firstly, QN and FN are determined by Algorithm 7.3, by which PN =

γNQ−1N is obtained. Then, considering an x(k) = xN−1 /∈ εN , we select the

control laws as (7.4.2).If x(k + 1|k) ∈ εN , then according to the procedure for calculating QN

and FN , it follows that

∞∑

i=1

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

≤ ‖x(k + 1|k)‖2PN,

Jn,∞(k) ≤ Jn,∞(N − 1, k) = ‖x(k)‖2W + ‖u(k)‖2R + ‖x(k + 1|k)‖2PN.

Let

γN−1 − x(k)TP (k)x(k) ≥ 0,

W + FTN−1RFN−1 + (A+ BFN−1)TPN (A+ BFN−1) ≤ P (k). (7.6.4)

© 2010 b T l d F G LLC

Page 201: 1420085301 Predictive Control

7.6. Off-line MPC: case varying-horizon 185

Then by applying (7.4.2) it follows that Jn,∞(N − 1, k) ≤ γN−1.Let us consider, instead of (7.5.1)-(7.5.4), the following optimization prob-

lem:

minu(k)=FN−1x(k),P (k),γN−1

γN−1,

s.t. (7.2.2), (7.2.3), (7.5.3) and (7.6.4), where i = 0. (7.6.5)

Define QN−1 = γN−1P (k)−1 and FN−1 = YN−1Q−1N−1, then (7.6.4) can be

transformed into (7.4.18) and the following LMI:⎡

⎢⎢⎣

QN−h ∗ ∗ ∗AQN−h + BYN−h γN−hP−1

N−h+1 ∗ ∗W 1/2QN−h 0 γN−hI ∗R1/2YN−h 0 0 γN−hI

⎥⎥⎦≥ 0. (7.6.6)

In addition, (7.5.3) for i = 0 is transformed into[

QN−h ∗AlQN−h +BlYN−h QN−h

]

> 0, l ∈ 1, . . . , L, (7.6.7)

while (7.2.2) for i = 0 is guaranteed by (7.4.21)-(7.4.22).Thus, problem (7.6.5) can be solved by

minγN−1,YN−1,QN−1,ZN−1,ΓN−1

γN−1, s.t. (7.4.18), (7.6.6)

−(7.6.7) and (7.4.21)− (7.4.22), (7.6.8)

where h = 1.Notice that imposing (7.6.6)-(7.6.7) cannot guarantee x(k + 1|k) ∈ εN .

Hence, (7.6.8) for calculating QN−1, FN−1 is heuristic.2. Calculating QN−h, FN−h, h ∈ 2, . . . , N − 1The procedure for calculating QN−1, FN−1 can be generalized. Consid-

ering an x(k) = xN−h /∈ εN−h+1, we select the control law (7.6.2), whereFN−h+1, FN−h+2, · · · , FN have been obtained in earlier time.

By induction, if x(k+ j|k) ∈ εN−h+j for all j ∈ 1, · · · , h, then accordingto the procedure for calculating QN−h+j and FN−h+j , it follows that

∞∑

i=1

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

≤ ‖x(k + 1|k)‖2PN−h+1,

Jn,∞(k) ≤ Jn,∞(N − h, k) = ‖x(k)‖2W + ‖u(k)‖2R + ‖x(k + 1|k)‖2PN−h+1,

where PN−h+1 = γN−h+1Q−1N−h+1. Let

γN−h − x(k)TP (k)x(k) ≥ 0,

W+F TN−hRFN−h + (A+ BFN−h)TPN−h+1(A+ BFN−h) ≤ P (k). (7.6.9)

© 2010 b T l d F G LLC

Page 202: 1420085301 Predictive Control

186 Chapter 7. State feedback synthesis approaches

Then by applying (7.6.2) it follows that Jn,∞(N − h, k) ≤ γN−h.Let us solve, instead of (7.5.1)-(7.5.4), the following optimization problem:

minu(k)=FN−hx(k),P (k),γN−h

γN−h,

s.t. (7.2.2), (7.2.3), (7.5.3) and (7.6.9), where i = 0. (7.6.10)

By defining QN−h = γN−hP (k)−1 and FN−h = YN−hQ−1N−h, problem (7.6.10)

can be solved by

minγN−h,YN−h,QN−h,ZN−h,ΓN−h

γN−h,

s.t. (7.4.18), (7.6.6)− (7.6.7) and (7.4.21)− (7.4.22). (7.6.11)

Since x(k + j|k) ∈ εN−h+j for all j ∈ 1, . . . , h cannot be guaranteed,(7.6.11) for calculating QN−h, FN−h is heuristic.

Algorithm 7.5 (Varying horizon off-line MPC adopting nominal perfor-mance cost)

Stage 1. Off-line, generate states xi, i ∈ 1, . . . , N. Substitute x(k) in (7.2.7)by xN and solve (7.5.8) to obtain the matrices QN , YN, ellipsoidεN and feedback gain FN = YNQ

−1N . For xN−h, let h gradually in-

crease, from 1 to N − 1, and solve (7.6.11) to obtain QN−h, YN−h,ellipsoid εN−h and feedback gain FN−h = YN−hQ−1

N−h. Notice thatxi should be chosen such that εi+1 ⊂ εi, ∀i = N . For each i = N ,check if (7.3.1) is satisfied.

Stage 2. On-line, at each time k adopt the state feedback law (7.3.2).

Remark 7.6.1. The Algorithm in section 7.4 adopts “worst-case” perfor-mance cost and control law in the form of (7.6.2), and the following constraintis explicitly imposed:

x(k) ∈ εN−h, x(k) /∈ εN−h+1 ⇒ x(k + i|k) ∈ εN−h+i, ∀i ∈ 0, . . . , h,(7.6.12)

which means that the state in a larger ellipsoid will be driven into the neigh-boring smaller ellipsoid in one step. The adverse effect of imposing (7.6.12) isthat the number of ellipsoids tends to be very large in order to attain feasi-bility. Without imposing (7.6.12), (7.6.11) is much easier to be feasible, andN of Algorithm 7.5 can be dramatically reduced. There are still underlyingreasons. Since we are dealing with uncertain systems and ellipsoidal domainsof attraction, imposing (7.6.12) is very conservative for guaranteeing (7.6.3).Hence, by imposing (7.6.12), it is nearly impossible to gain

x(k) ∈ εN−h, x(k) /∈ εN−h+1 ⇒ x(k + i) ∈ εN−h+i,

x(k + i) /∈ εN−h+i+1, ∀i ∈ 1, . . . , h− 1, x(k + h) ∈ εN . (7.6.13)

It is more likely that (7.6.13) can be achieved by properly constructing smallernumber of ellipsoids.

© 2010 b T l d F G LLC

Page 203: 1420085301 Predictive Control

7.6. Off-line MPC: case varying-horizon 187

Remark 7.6.2. It is better to satisfy (7.6.13) by appropriately spacing xi.With Fi+1 known, (7.3.1) can be transformed into LMI and be incorporatedinto calculating εi, Fi. In such a way, it is much easier to satisfy (7.3.1).However, loss of optimality may result.

Theorem 7.6.1. (Stability). Suppose x(0) ∈ ε1. Then, by applying Algorithm7.5 the closed-loop system is asymptotically stable. Further, if (7.3.1) is satis-fied for all i = N , then the control law (7.3.2) in Algorithm 7.5 is a continuousfunction of the system state x.

Proof. The proof is based on the same rationale used for proving Theorem7.5.1. In Algorithm 7.5, if γN−hP−1

N−h+1 in (7.6.6) is replaced by QN−h, h ∈1, · · · , N − 1, then Algorithm 7.3 is retrieved. Hence, the only differencebetween Algorithms 7.3 and 7.5 lies in (7.5.12) and (7.6.6). We do not use(7.5.12) and (7.6.6) for proving stability of the algorithms.

The complexity of solving LMI optimization problem (7.2.16), (7.5.8) or(7.6.11) is polynomial-time, which (regarding the interior-point algorithms ) isproportional to K3L, where K is the number of scalar variables in LMIs and Lthe number of rows (see [31]). For (7.2.16), (7.5.8) and (7.6.11), K = 1+ 1

2 (n2+n)+mn+ 1

2 (m2+m)+ 12 (q2+q); for (7.2.16), L = (4n+m+q)L+2n+2m+q+1;

for (7.5.8) and (7.6.11), L = (3n+ q)L+ 5n+ 3m+ q + 1.3. Numerical exampleConsider

[x(1)(k + 1)x(2)(k + 1)

]

=[

1− β βK(k) 1− β

] [x(1)(k)x(2)(k)

]

+[

10

]

u(k),

where K(k) ∈ [0.5, 2.5] is an uncertain parameter. The constraint is |u| ≤ 2.

Choose A =[

1− β β1.5 1− β

]

, B =[

10

]

. Take W = I, R = 1. The true

state is generated by K(k) = 1.5 + sin(k).Simulate Algorithms 7.1, 7.3 and 7.5. For i ∈ 1, . . . , N, choose xN−i+1 =

[0.6 + d(i − 1), 0]T , where d represents the spacing of the ellipsoids. Denotex

(1),max1 as the maximum value such that, when x1 = [x(1),max

1 , 0]T , thecorresponding optimization problem remains feasible.

By varying d, we find that,

i) for β = 0, Algorithm 7.3 is much easier to be feasible than Algorithm7.1;

ii) for β = ±0.1, Algorithm 7.5 gives smaller cost value than Algorithm7.3;

iii) for β = 0, either Algorithm 7.5 is easier to be feasible, or it gives smallercost value, than Algorithm 7.3.

Tables 7.6.1- 7.6.2 lists the simulation results for four typical cases:

© 2010 b T l d F G LLC

Page 204: 1420085301 Predictive Control

188 Chapter 7. State feedback synthesis approaches

A. β = −0.1, d = 0.1, N = 16, x(0) = [2.1, 0]T ;

B. β = 0, d = 0.02, N = 76, x(0) = [2.1, 0]T ;

C. β = 0, d = 5, N = 12, x(0) = [55.6, 0]T ;

D. β = 0.1, d = 0.1, N = 39, x(0) = [4.4, 0]T .

For simplicity, we have spaced xi equally. By unequal spacing, it can givelower cost value Jtrue,∞, result into larger x(1),max

1 , and render satisfaction of(7.3.1) for all i = N (especially for Algorithm 7.5).

Table 7.6.1: The simulation results by Algorithm 7.1 (A7.1), Algorithm 7.3(A7.3) and Algorithm 7.5 (A7.5) under four typical cases.

x(1),max1 The set of i for which (7.3.1)

is not satisfiedA7.1 A7.3 A7.5 A7.1 A7.3 A7.5

Case A 2.1 2.1 2.1 1 2,1 5,4,3,2,1Case B 59.28 74.66 72.46 68,67,64 75,71,64,61,59Case C 55.6 70.6 90.6 11,10 11, 10 11,10,9,8Case D 4.4 4.4 4.4 38 38, 35

Table 7.6.2: Table 7.6.1 continued (a(b) indicates that M = a is repeated forb times).

Jtrue,∞ Control horizon M for Algo-rithm 7.5

A7.1 A7.3 A7.5 for k =0, 1, 2, 3, · · · , M =Case A 60.574 57.932 54.99 15, 11, 10, 6, 0, 0, 0, · · ·Case B 37.172 34.687 34.485 75, 47, 35, 0, 0, 0, · · ·Case C 64407677 61469235 64801789 11(7), 10(10), 9(15), 8(14),

7(11), 6(7), 5(6), 4(5), 3(14),2(11), 1(15), 0, 0, 0, · · ·

Case D 575 552 542 38, 30, 29, 26, 23, 19, 16, 11,2, 0, 0, 0, · · ·

© 2010 b T l d F G LLC

Page 205: 1420085301 Predictive Control

Chapter 8

Synthesis approaches withfinite switching horizon

For MPC with switching horizon N , we mainly consider two approaches. Oneis called standard approach. By standard approach we mean the usual ap-proach, i.e., in industrial MPC and most of the synthesis approaches of MPC,an finite-horizon optimization problem is solved and, in synthesis approaches,in general the three ingredients are selected off-line. Another approach is on-line approach. In on-line approaches, one, two or all (usually all) of the threeingredients are served as the decision variables of the on-line optimizationproblem.

Especially in MPC for uncertain systems, on-line approach is often applied,the merits of which include enlarging the region of attraction and enhancingthe optimality.

Section 8.1 is referred to in [43]. Section 8.2 is referred to in [60]. Section8.3 is referred to in [2]. Section 8.4 is referred to in [17], [16]. Section 8.5 isreferred to in [58]. Section 8.6 is referred to in [55], [62].

8.1 Standard approach for nominal systems

The following time-invariant discrete-time linear system will be considered:

x(k + 1) = Ax(k) +Bu(k), (8.1.1)

where u ∈ Rm is the control input, x ∈ Rn is the state. The input and stateconstraints are

−u ≤ u(k + i) ≤ u, − ψ ≤ Ψx(k + i+ 1) ≤ ψ, ∀i ≥ 0 (8.1.2)

where u := [u1, u2, · · · , um]T , u := [u1, u2, · · · , um]T , uj > 0, uj > 0, j ∈1, . . . ,m; ψ := [ψ

1, ψ

2, · · · , ψ

q]T , ψ := [ψ1, ψ2, · · · , ψq]T , ψ

s> 0, ψs > 0,

189

© 2010 b T l d F G LLC

Page 206: 1420085301 Predictive Control

190 Chapter 8. Synthesis approaches with finite switching horizon

s ∈ 1, . . . , q; Ψ ∈ Rq×n. The output constraint can be expressed as theabove form. Constraint (8.1.2) can also be expressed as

u(k + i) ∈ U , x(k + i+ 1) ∈ X . (8.1.3)

Suppose (8.1.2) and (8.1.3) are equivalent.We define the following finite-horizon cost function:

J(x(k)) =N−1∑

i=0

[‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

+ ‖x(k +N |k)‖2P , (8.1.4)

where W > 0, R > 0, P > 0 are symmetric weighting matrices; N is theswitching horizon. We suppose P satisfies the following inequality condition:

P ≥ (A+BF )TP (A+BF ) +W + FTRF, (8.1.5)

where F is the feedback gain which will be explained later.Define X = P−1, F = Y X−1. By applying Schur complements, it is shown

that (8.1.5) is equivalent to the following LMI:⎡

⎢⎢⎣

X ∗ ∗ ∗AX +BY X ∗ ∗W 1/2X 0 I ∗R1/2Y 0 0 I

⎥⎥⎦≥ 0. (8.1.6)

Based on Chapter 7, we can easily obtain the following conclusion.

Lemma 8.1.1. Suppose that the symmetric matrix X = P−1, Z, Γ andmatrix Y satisfy (8.1.6) and

[Z YY T X

]

≥ 0, Zjj ≤ u2j,inf , j ∈ 1, . . . ,m, (8.1.7)

[

X ∗Ψ (AX +BY ) Γ

]

≥ 0, Γss ≤ ψ2s,inf , s ∈ 1, . . . , q, (8.1.8)

where uj,inf = minuj , uj, ψs,inf = minψs, ψs; Zjj (Γss) is the j-th (s-th)

diagonal element of Z (Γ). Then, when x(k+N) ∈ εP =

z ∈ Rn|zTPz ≤ 1

and u(k+i+N) = Y X−1x(k+i+N), i ≥ 0 is adopted, the closed-loop systemis exponentially stable, x(k + i+ N), i ≥ 0 always remains in the region εPand constraint (8.1.2) is satisfied for all i ≥ N .

The standard approach of MPC considers the following optimization prob-lem at each time k:

minu(k|k),··· ,u(k+N−1|k)

J(x(k)), (8.1.9)

s.t. − u ≤ u(k + i|k) ≤ u, − ψ ≤ Ψx(k + i+ 1|k) ≤ ψ, i ∈ 0, 1, . . . , N − 1,(8.1.10)

‖x(k +N |k)‖2P ≤ 1. (8.1.11)

© 2010 b T l d F G LLC

Page 207: 1420085301 Predictive Control

8.1. Standard approach for nominal systems 191

Define the feasible set of initial states

F(P,N) = x(0) ∈ Rn|∃u(i) ∈ U ,i = 0 . . .N − 1, s.t. x(i+ 1) ∈ X , x(N) ∈ εP (8.1.12)

in which problem (8.1.9)-(8.1.11) exists a feasible solution. The optimizationproblem (8.1.9)-(8.1.11) has the following property.

Theorem 8.1.1. (Feasibility) Suppose that x(k) ∈ F(P,N). Then, there existκ > 0 and u(k + i|k) ∈ U , i ∈ 0, 1, . . . , N − 1 such that |u(k + i|k)|2 ≤κ |x(k)|2, x(k + i+ 1|k) ∈ X , i ∈ 0, 1, . . . , N − 1 and x(k +N |k) ∈ εP .

Proof. We consider the case that x(k) = 0 because x(k) = 0 gives the trivialsolution u(k + i|k) = 0. Let B(γ) be a closed ball with a radius γ > 0 suchthat B(γ) ⊂ F . If x(k) ∈ B(γ), define α(x(k)) (1 ≤ α(x(k)) < ∞) such thatα(x(k))x(k) ∈ ∂B(γ), where ∂B(γ) denotes the boundary of B(γ). Otherwise,define α(x(k)) (1 ≤ α(x(k)) <∞) such that α(x(k))x(k) ∈ F −B(γ).

According to the definition of (8.1.12), u(k + i|k) ∈ U exists that drivesα(x(k))x(k) into the ellipsoid εP in N steps while satisfying the state con-straint. Because the system is linear, 1/α(x(k))u(k+ i|k) ∈ U drives x(k) intoεP while satisfying the state constraint.

Denoting usup = maxj max

uj , uj

, we obtain ‖u(k + i|k)‖22 ≤ mu2sup.

Hence, it holds that

∥∥∥∥

1α(x(k))

u(k + i|k)∥∥∥∥

2

2

≤(

1α(x(k))

)2

mu2sup ≤

(

mu2sup

γ2

)

‖x(k)‖22 .

Apparently, let u(k + i|k) = 1/α(x(k))u(k + i|k) and κ = mu2sup/γ

2 then weobtain the final conclusion.

According to the definition (8.1.12), Theorem 8.1.1 is almost straightfor-ward. The significance of the above proof is to construct a κ in order to pavethe way for selecting Lyapunov function in stability proof.

Theorem 8.1.2. (Stability) Suppose (8.1.6)-(8.18) are satisfied and x(0) ∈F(P,N). Then, (8.1.9)-(8.1.11) is always feasible for all k ≥ 0. Further, byreceding horizon implementation of u∗(k|k), the closed-loop system is expo-nentially stable.

Proof. Suppose the optimal solution u∗(k + i|k) at the current time k exists,and let F = Y X−1. Then, according to Lemma 8.1.1, at the next time stepk + 1,

u(k+i|k+1) = u∗(k+i|k), i ∈ 1, . . . , N−1, u(k+N |k+1) = Fx(k+N |k+1)(8.1.13)

is a feasible solution. Thus, by induction, we observe that (8.1.9)-(8.1.11) isalways feasible for all k ≥ 0.

© 2010 b T l d F G LLC

Page 208: 1420085301 Predictive Control

192 Chapter 8. Synthesis approaches with finite switching horizon

In order to show the exponential stability, we need to show that a, b, c(0 < a, b, c <∞) exist such that

a ‖x(k)‖22 ≤ J∗(x(k)) ≤ b ‖x(k)‖22 , ΔJ∗(x(k + 1)) < −c ‖x(k)‖22 ,where ΔJ∗(x(k + 1)) = J∗(x(k + 1)) − J∗(x(k)). When the above conditionis satisfied, J∗(x(k)) serves as Lyapunov functional for proving exponentialstability.

Firstly, it is apparent that

J∗(x(k)) ≥ x(k)TWx(k) ≥ λmin(W ) ‖x(k)‖22 ,i.e., one can select a = λmin(W ).

According to Theorem 8.1.1, we can obtain that

J∗(x(k)) ≤N−1∑

i=0

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

+ ‖x(k +N |k)‖2P

≤ [

(N + 1)A2(1 +N ‖B‖√κ)2 ·max λmax(W ), λmax(P )+Nκλmax(R)

] ‖x(k)‖22 ,where A := maxi∈0,1,...,N

∥∥Ai

∥∥, i.e., we can choose

b = (N + 1)A2(1 +N ‖B‖√κ)2 ·max λmax(W ), λmax(P )+Nκλmax(R).

Let J(x(k+1)) be the cost value when the control sequence (8.1.13) is imple-mented at the next time step k + 1. Then

J∗(x(k)) ≥ ‖x(k)‖2W+‖u(k)‖2R+J(x(k+1)) ≥ ‖x(k)‖2W+‖u(k)‖2R+J∗(x(k+1))

which shows that

ΔJ∗(x(k + 1)) ≤ −‖x(k)‖2W − ‖u(k)‖2R ≤ −λmin(W ) ‖x(k)‖22 ,i.e., one can select c = λmin(W ).

Therefore, J∗(x(k)) serves as a Lyapunov functional for exponential sta-bility.

8.2 Optimal solution to infinite-horizon con-

strained linear quadratic control utilizingsynthesis approach of MPC

Consider the system (8.1.1)-(8.1.3). The infinite-horizon cost function isadopted,

J(x(k)) =∞∑

i=0

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

. (8.2.1)

© 2010 b T l d F G LLC

Page 209: 1420085301 Predictive Control

8.2. Optimal solution to constrained LQR 193

Suppose (A,B) is stabilizable, (A,W 1/2) detectable. Define π = u(k|k), u(k+1|k), · · · .

Now we give the three relevant problems.

Problem 8.1 Infinite-horizon unconstrained LQR:

minπJ(x(k)), s.t. (8.2.2).

x(k + i+ 1|k) = Ax(k + i|k) +Bu(k + i|k), i ≥ 0. (8.2.2)

Problem 8.1 has been solved by Kalman (see Chapter 1), with the followingsolution:

u(k) = −Kx(k), (8.2.3)

where the state feedback gain K is represented as

K = (R+BTPB)−1BTPA, P = W +ATPA−ATPB(R+BTPB)−1BTPA.(8.2.4)

Problem 8.2 Infinite-horizon constrained LQR:

minπJ(x(k)), s.t. (8.2.2), (8.2.5).

−u ≤u(k + i|k) ≤ u, − ψ ≤ Ψx(k + i+ 1|k) ≤ ψ, i ≥ 0. (8.2.5)

Problem 8.2 is a direct generalization of Problem 8.1, with constraints in-cluded. Since Problem 8.2 involves an infinite number of decision variablesand infinite number of constraints, it is impossible to solve it directly.

Problem 8.3 MPC problem:

minπJ(x(k)), s.t. (8.2.2), (8.1.10), (8.2.6).

u(k + i|k) = Kx(k + i|k), i ≥ N. (8.2.6)

Problem 8.3 involves a finite number of decision variables, which can besolved by the quadratic programming. However, the effect of Problem 8.3 isto help the exact solution of Problem 8.2.

Define a set XK as, whenever x(k) ∈ XK , with u(k+i|k) = Kx(k+i|k), i ≥0 applied (8.2.5) can be satisfied. Define PN (x(k)) as the set of π satisfying(8.1.10) and (8.2.6), and P(x(k)) as the set of π satisfying (8.2.5). Thus,P(x(k)) is the limit of PN (x(k)) when N →∞. Define WN as the set of x(k)in which Problem 8.3 is feasible, and W the set of x(k) in which Problem 8.2is feasible.

Applying the above definitions, we can define Problems 8.2 and 8.3 via thefollowing manners.

© 2010 b T l d F G LLC

Page 210: 1420085301 Predictive Control

194 Chapter 8. Synthesis approaches with finite switching horizon

Problem 8.2 Infinite-horizon constrained LQR: given x(k) ∈W, find π∗

such thatJ∗(x(k)) = min

π∈P(x(k))J(x(k))

where J∗(x(k)) is the optimum.

Problem 8.3 MPC problem: given a finite N and x(k) ∈ WN , find π∗N(the optimum of πN = u(k|k), u(k + 1|k), · · · , u(k + N − 1|k),−Kx(k +N |k),−Kx(k +N + 1|k), · · · ) such that

J∗N (x(k)) = minπ∈PN (x(k))

JN (x(k))

where J∗N (x(k)) is the optimum,

JN (x(k)) =N−1∑

i=0

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

+ ‖x(k +N |k)‖2P .

The theme of this section is to show that, in a finite time, the optimalsolution (rather than the suboptimal solution) of Problem 8.2 can be found.This optimal solution is obtained by solving Problem 8.3.

Denote the optimal solution to Problem 8.3 as u0(k+i|k), that to Problem8.2 as u∗(k + i|k); x(k + i|k) generated by the optimal solution to Problem8.3 is denoted as x0(k + i|k), by that of Problem 8.2 as x∗(k + i|k).Lemma 8.2.1. x∗(k + i|k) ∈ XK ⇔ u∗(k + i|k) = Kx∗(k + i|k), ∀i ≥ 0.

Proof. “⇒”: According to the definition of XK , when x(k + i|k) ∈ XK , theoptimal solution to the constrained LQR is u(k+ i|k) = Kx(k+ i|k), ∀i ≥ 0.According to Bellman’s optimality principle, u∗(k|k), u∗(k+ 1|k), · · · is theoverall optimal solution.

“⇐”: (by contradiction) According to the definition of XK , when x(k +i|k) /∈ XK , if u∗(k+i|k) = Kx∗(k+i|k), ∀i ≥ 0 is adopted then (8.2.5) cannotbe satisfied. However, the overall optimal solution u∗(k|k), u∗(k + 1|k), · · · satisfies (8.2.5)! Hence, u∗(k+i|k) = Kx∗(k+i|k), ∀i ≥ 0 implies x∗(k+i|k) ∈XK .

Theorem 8.2.1. (Optimality) When x(k) ∈W, there exists a finite N1 suchthat, whenever N ≥ N1, J∗(x(k)) = J∗N (x(k)) and π∗=π∗N .

Proof. According to (8.1.3), XK will contain a neighborhood of the origin.The optimal solution π∗ will drive the state to the origin. Therefore, thereexists a finite N1 such that x∗(k + N1|k) ∈ XK . According to Lemma 8.2.1,for any N ≥ N1, π∗ ∈ PN(x(k)), i.e., π∗ ∈ P(x(k))

⋂PN(x(k)). Since π∗N

optimizes JN (x(k)) inside of PN (x(k)), when N ≥ N1, J∗(x(k)) = J∗N (x(k))and, correspondingly, π∗=π∗N .

© 2010 b T l d F G LLC

Page 211: 1420085301 Predictive Control

8.3. On-line approach for nominal systems 195

We can conclude finding the optimal solution to Problem 8.2 as the fol-lowing algorithm.

Algorithm 8.1 (solution to the constrained LQR)

Step 1. Choose an initial (finite number) N0. Take N = N0.

Step 2. Solve Problem 8.3.

Step 3. If x0(k +N |k) ∈ XK , then turn to Step 5.

Step 4. Increase N and turn to Step 2.

Step 5. Implement π∗=π∗N .

Finiteness of N1 guarantees that Algorithm 8.1 will terminate in finitetime.

8.3 On-line approach for nominal systems

Consider the system (8.1.1)-(8.1.3). Adopt the cost function (8.2.1). For han-dling this infinite-horizon cost function, we split it into two parts:

J1(k) =N−1∑

i=0

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

,

J2(k) =∞∑

i=N

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

.

For J2(k), introduce the following stability constraint (see Chapter 7):

V (x(k+ i+1|k))−V (x(k+ i|k)) ≤ −‖x(k + i|k)‖2W −‖u(k + i|k)‖2R , (8.3.1)

where V (x(k + i|k)) = ‖x(k + i|k)‖2P . Summing (8.3.1) from i = N to i =∞yields

J2(k) ≤ V (x(k +N |k)) = ‖x(k +N |k)‖2P .Hence, it is easy to know that

J(x(k)) ≤ J(x(k)) =N−1∑

i=0

[

‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

+‖x(k +N |k)‖2P .(8.3.2)

We will transform the optimization problem corresponding to J(x(k)) intothat corresponding to J(x(k)).

If P and F (strictly P , F should be written as P (k), F (k)) were notsolved at each sampling time, then there is no intrinsic difference between themethods in this section and section 8.1. On-line MPC of this section solves

© 2010 b T l d F G LLC

Page 212: 1420085301 Predictive Control

196 Chapter 8. Synthesis approaches with finite switching horizon

the following optimization problem at each time k:

minγ,u(k|k),··· ,u(k+N−1|k),F,P

J1(x(k)) + γ, (8.3.3)

s.t. − u ≤ u(k + i|k) ≤ u, − ψ ≤ Ψx(k + i+ 1|k) ≤ ψ, i ≥ 0, (8.3.4)

‖x(k +N |k)‖2P ≤ γ, (8.3.5)(8.3.1), u(k + i|k) = Fx(k + i|k), i ≥ N. (8.3.6)

The so-called “on-line” indicates that P and F (involving the three ingredientsfor stability, which are referred to in Chapter 6) are solved at each samplinginstant. Apparently, this involves a heavier computational burden than whenP and F are fixed (see the standard approach in section 8.1). However, sinceP and F are also decision variables, the optimization problem is easier tobe feasible (with larger region of attraction), and the cost function can bebetter optimized, such that the performance of the overall closed-loop systemis enhanced.

An apparent question is, why not adopt the optimal solution of LQR as insection 8.2? By applying Algorithm 8.1, the finally determined N can be verylarge, so that (especially for high dimensional system) the computational bur-den will be increased. By taking a smaller N , the computational burden canbe greatly decreased, while the lost optimality can be partially compensatedby the receding horizon optimization. This is also the important differencebetween MPC and the traditional optimal control.

Define Q = γP−1 and F = Y Q−1. Then, by applying Schur complement,it is known that (8.3.1) and (8.3.5) are equivalent to the following LMIs:

⎢⎢⎣

Q ∗ ∗ ∗AQ+BY Q ∗ ∗W 1/2Q 0 γI ∗R1/2Y 0 0 γI

⎥⎥⎦≥ 0, (8.3.7)

[1 ∗

x(k +N |k) Q

]

≥ 0. (8.3.8)

The input/state constraints after the switching horizon N can be guaranteedby the following LMIs:

[Z YY T Q

]

≥ 0, Zjj ≤ u2j,inf , j ∈ 1, . . . ,m, (8.3.9)

[

Q ∗Ψ(AQ+BY ) Γ

]

≥ 0, Γss ≤ ψ2s,inf , s ∈ 1, . . . , q. (8.3.10)

Now, we wish to transform the whole optimization problem (8.3.3)-(8.3.6)

© 2010 b T l d F G LLC

Page 213: 1420085301 Predictive Control

8.3. On-line approach for nominal systems 197

into LMI optimization problem. For this reason, consider the state predictions,⎡

⎢⎢⎢⎣

x(k + 1|k)x(k + 2|k)

...x(k +N |k)

⎥⎥⎥⎦

=

⎢⎢⎢⎣

AA2

...AN

⎥⎥⎥⎦x(k)

+

⎢⎢⎢⎢⎣

B 0 · · · 0

AB B. . .

......

. . . . . . 0AN−1B · · · AB B

⎥⎥⎥⎥⎦

⎢⎢⎢⎣

u(k|k)u(k + 1|k)

...u(k +N − 1|k)

⎥⎥⎥⎦.

(8.3.11)

We simply denote these state predictions as[x(k + 1|k)x(k +N |k)

]

=[

AAN

]

x(k) +[

B

BN

]

u(k|k). (8.3.12)

Let W be the block diagonal matrix with the diagonal element being W , andR be the block diagonal matrix with the diagonal element being R. It is easyto know that

J(x(k)) ≤ ‖x(k)‖2W +∥∥∥Ax(k) + Bu(k|k)

∥∥∥

2

W+ ‖u(k|k)‖2R + γ. (8.3.13)

Define∥∥∥Ax(k) + Bu(k|k)

∥∥∥

2

W+ ‖u(k|k)‖2R ≤ γ1. (8.3.14)

By applying Schur complement, (8.3.14) can be transformed into the followingLMI:

γ1 ∗ ∗Ax(k) + Bu(k|k) W−1 ∗

u(k|k) 0 R−1

⎦ ≥ 0. (8.3.15)

Thus, by also considering Lemma 8.1.1, problem (8.3.3)-(8.3.6) is approx-imately transformed into the following LMI optimization problem:

minu(k|k),··· ,u(k+N−1|k),γ1,γ,Q,Y,Z,Γ

γ1 + γ,

s.t. − u ≤ u(k + i|k) ≤ u, − ψ ≤ Ψx(k + i+ 1|k) ≤ ψ,i ∈ 0, 1, . . . , N − 1, (8.3.7)− (8.3.10), (8.3.15), (8.3.16)

where, when the optimization problem is being solved, x(k +N |k) in (8.3.8)should be substituted with ANx(k) + BN u(k|k).

Notice that,

© 2010 b T l d F G LLC

Page 214: 1420085301 Predictive Control

198 Chapter 8. Synthesis approaches with finite switching horizon

(i) since the ellipsoidal confinement is invoked for handling the input/stateconstraints after the switching horizon N , which is relatively conserva-tive, (8.3.16) is only an approximation of (8.3.3)-(8.3.6);

(ii) x(k+ i+1|k) in the state constraint should be substituted with (8.3.11).

At each time k, solve (8.3.16), but only the obtained u∗(k|k) is imple-mented. At the next sampling instant k + 1, based on the new measurementx(k+1), the optimization is re-done such that u∗(k+1|k+1) is obtained. If, af-ter implementation of u∗(k|k), the input/state constraints are still active (“ac-tive” means affecting the optimal solution of (8.3.16)), then re-optimizationat time k + 1 can improve the performance. The basic reason is that, thehandling of the constraints by (8.3.9)-(8.3.10) has its conservativeness, whichcan be reduced by “receding horizon optimization.”

Theorem 8.3.1. (Stability) Suppose (8.3.16) is feasible at the initial timek = 0. Then (8.3.16) is feasible for any k ≥ 0. Further, by receding hori-zon implementing the optimal u∗(k|k), the closed-loop system is exponentiallystable.

Proof. Suppose (8.3.16) is feasible at time k (the solution is denoted by ∗).Then the following is a feasible solution at time k + 1:

u(k+i|k+1) = u∗(k+i|k), i ∈ 1, . . . , N−1; u(k+N |k+1) = F ∗(k)x∗(k+N |k).(8.3.17)

By applying (8.3.17), the following is easily obtained:

J(x(k + 1)) =N−1∑

i=0

[

‖x(k + i+ 1|k + 1)‖2W + ‖u(k + i+ 1|k + 1)‖2R]

+ ‖x(k +N + 1|k + 1)‖2P (k+1)

=N−1∑

i=1

[

‖x∗(k + i|k)‖2W + ‖u∗(k + i|k)‖2R]

+[

‖x∗(k +N |k)‖2W + ‖F ∗(k)x∗(k +N |k)‖2R]

+ ‖x∗(k +N + 1|k)‖2P∗(k) . (8.3.18)

Since (8.3.1) is applied, the following is satisfied:

‖x∗(k +N + 1|k)‖2P∗(k) ≤‖x∗(k +N |k)‖2P∗(k)

− ‖x∗(k +N |k)‖2W − ‖F ∗(k)x∗(k +N |k)‖2R .(8.3.19)

Substituting (8.3.19) into (8.3.18) yields

© 2010 b T l d F G LLC

Page 215: 1420085301 Predictive Control

8.4. Quasi-optimal solution to CLTVQR 199

J(x(k + 1)) ≤N−1∑

i=1

[

‖x∗(k + i|k)‖2W + ‖u∗(k + i|k)‖2R]

+ ‖x∗(k +N |k)‖2P∗(k)

=J∗(x(k)) − ‖x(k)‖2W − ‖u∗(k|k)‖2R. (8.3.20)

Now, notice thatJ∗(x(k)) ≤ η∗(k) := ‖x(k)‖2W + γ∗1 (k) + γ∗(k)andJ(x(k + 1)) ≤ η(k + 1) := ‖x∗(k + 1|k)‖2W + γ1(k + 1) + γ(k + 1).According to (8.3.20), at time k + 1 it is feasible to choose

γ1(k + 1) + γ(k + 1) = γ∗1 (k) + γ∗(k)− ‖u∗(k|k)‖2R − ‖x∗(k + 1|k)‖2W .

Since at time k+1 the optimization is re-done, it must lead to γ∗1 (k+1)+γ∗(k + 1) ≤ γ1(k + 1) + γ(k + 1), which means that

η∗(k + 1)− η∗(k) ≤ −‖x(k)‖2W − ‖u∗(k|k)‖2R. (8.3.21)

Therefore, η∗(k) can be Lyapunov function for proving exponential stabil-ity.

The difference between (8.1.6) and (8.3.7) should be noted. One includesγ, the other does not include γ. Correspondingly, the definitions X and Q aredifferent. One contains γ, the other does not contain γ. These two differentmanners can have different effects on the control performance. It is notedthat the two different manners are not the criterion for distinguishing betweenstandard approach and on-line approach.

8.4 Quasi-optimal solution to the infinite-horizon constrained linear time-varying

quadratic regulation utilizing synthesis ap-proach of MPC

In order to emphasize the speciality of the studied problem, this section adoptssome slightly different notations. We study the following linear time-varyingdiscrete-time system:

x(t+ 1) = A(t)x(t) +B(t)u(t), (8.4.1)

where x(t) ∈ Rn and u(t) ∈ Rm are the measurable state and input, re-spectively. We aim at solving the constrained linear time-varying quadratic

© 2010 b T l d F G LLC

Page 216: 1420085301 Predictive Control

200 Chapter 8. Synthesis approaches with finite switching horizon

regulation (CLTVQR), by finding u(0), u(1), · · · , u(∞) that minimizes thefollowing infinite-horizon performance cost:

Φ(x(0)) =∞∑

i=0

[

x(i)TΠx(i) + u(i)TRu(i)]

, (8.4.2)

and satisfies the following constraints:

x(i+ 1) ∈ X, u(i) ∈ U, ∀i ≥ 0, (8.4.3)

where Π > 0, R > 0 are symmetric weighting matrices, U ⊂ Rm, X ⊂ Rn arecompact, convex and contain the origin as interior point.

Differently from the linear time-invariant systems, it is usually difficult tofind the optimal solution to CLTVQR, except for some special [A(t)|B(t)] suchas periodic time-varying systems, etc. The method developed in this sectionis not for optimal solution, but for finding suboptimal solution such that thecorresponding suboptimal cost value can be arbitrarily close (although may benot equal) to the theoretically optimal cost value. The so-called theoreticallyoptimal cost value is the one such that (8.4.2) is “absolutely” minimized.

In order to make the suboptimal arbitrarily close to the optimal, theinfinite-horizon cost index is divided into two parts. The second part is formu-lated as an infinite-horizon min-max LQR based on polytopic inclusion of thetime-varying dynamics in a neighborhood of the origin. Outside this neigh-borhood, the first part calculates the finite-horizon control moves by solving afinite-horizon optimization problem. For sufficiently large switching horizon,the resultant overall controller achieves desired closed-loop optimality. Denote

uji :=[

u(i|0)T , u(i+ 1|0)T , · · · , u(j|0)T]

.

8.4.1 Overall idea

We suppose [A(t), B(t)] is bounded, uniformly stabilizable and

[A(i)|B(i)] ∈ Ω = Co [A1 |B1] , [A2 |B2] , · · · , [AL |BL] , ∀i ≥ N0.(8.4.4)

With the solution of CLTVQR applied, the state will converge to the ori-gin. Therefore, (8.4.4) actually defines a polytope of dynamics (8.4.1) in aneighborhood of the origin. CLTVQR with (8.4.2)-(8.4.3) is implemented by

minu∞0

Φ(x(0|0)) =∞∑

i=0

[

‖x(i|0)‖2Π + ‖u(i|0)‖2R]

, (8.4.5)

s.t. x(i+ 1|0) = A(i)x(i|0) +B(i)u(i|0), x(0|0) = x(0), i ≥ 0, (8.4.6)− u ≤ u(i|0) ≤ u, i ≥ 0, (8.4.7)− ψ ≤ Ψx(i+ 1|0) ≤ ψ, i ≥ 0, (8.4.8)

where u∞0 are the decision variables.

© 2010 b T l d F G LLC

Page 217: 1420085301 Predictive Control

8.4. Quasi-optimal solution to CLTVQR 201

Then we state the four relevant control problems in the following.

Problem 8.4 CLTVQR of infinite-horizon (optimal CLTVQR):

Φ∗ = minu∞0

Φ(x(0|0)), s.t. (8.4.6)− (8.4.8). (8.4.9)

The key idea is to find a suboptimal solution of Problem 8.4, say Φf , suchthat (

Φf − Φ∗)

Φ∗≤ δ, (8.4.10)

where δ > 0 is a pre-specified scalar. In the sense that δ can be chosen arbi-trarily small, (8.4.10) means that the suboptimal solution can be arbitrarilyclose to the optimal solution. For achieving (8.4.10), Φ (x(0|0)) is divided intotwo parts,

Φ (x(0|0)) =N−1∑

i=0

[

‖x(i|0)‖2Π + ‖u(i|0)‖2R]

+ Φtail (x(N |0)) , (8.4.11)

Φtail (x(N |0)) =∞∑

i=N

[

‖x(i|0)‖2Π + ‖u(i|0)‖2R]

, (8.4.12)

where N ≥ N0. For (8.4.12), the optimization is still of infinite-horizon, hencewithout general guarantee of finding the optimal solution. For this reason, weturn to solve the following problem:

Problem 8.5 Min-max CLQR:

minu∞

N

max[A(j)|B(j)]∈Ω, j≥N

Φtail(x(N |0)), s.t. (8.4.6)− (8.4.8), i ≥ N. (8.4.13)

Problem 8.5 has been solved in Chapter 7. By defining control law in thefollowing form:

u(i|0) = Fx(i|0), ∀i ≥ N, (8.4.14)

the bound on (8.4.12) can be deduced as

Φtail (x(N |0)) ≤ x(N |0)TPNx(N |0) ≤ γ, (8.4.15)

where PN > 0 is a symmetric weighting matrix. Hence,

Φ (x(0|0)) ≤N−1∑

i=0

[

‖x(i|0)‖2Π + ‖u(i|0)‖2R]

+x(N |0)TPNx(N |0) = ΦPN (x(0|0)) .

(8.4.16)For PN = 0, ΦPN (x(0|0)) = Φ0 (x(0|0)). Denote X(N |0) ⊂ Rn as the set

of x(N |0) in which Problem 8.5 exists a feasible solution of the form (8.4.14).The other two problems of interests are as follows.

© 2010 b T l d F G LLC

Page 218: 1420085301 Predictive Control

202 Chapter 8. Synthesis approaches with finite switching horizon

Problem 8.6 CLTVQR of finite-horizon without terminal weighting:

Φ∗0 = minuN−10

Φ0 (x(0|0)) , s.t. (8.4.6)− (8.4.8), i ∈ 0, 1, . . . , N − 1. (8.4.17)

Problem 8.7 CLTVQR of finite-horizon with terminal weighting:

Φ∗PN= minuN−10

ΦPN (x(0|0)) , s.t. (8.4.6)−(8.4.8), i ∈ 0, 1, . . . , N−1. (8.4.18)

The resultant terminal state by the optimal solution of Problem 8.6 isdenoted as x0(N |0); the resultant terminal state by the optimal solution ofProblem 8.7 is denoted as x∗(N |0). In the next section, we will achieve theoptimality requirement (8.4.10) through solving Problems 8.5-8.7.

8.4.2 Solution to the min-max constrained linearquadratic control

Define Q = γP−1N , F = Y Q−1. Based on what has been described in the

previous section, we can transform Problem 8.5 into the following optimizationproblem:

minγ,Q,Y,Z,Γ

γ, s.t. (8.4.20), (8.3.9), (8.4.21) and[

1 ∗x(N |0) Q

]

≥ 0, (8.4.19)⎡

⎢⎢⎣

Q ∗ ∗ ∗AlQ+BlY Q ∗ ∗

Π1/2Q 0 γI ∗R1/2Y 0 0 γI

⎥⎥⎦≥ 0, ∀l ∈ 1, . . . , L, (8.4.20)

[Q ∗

Ψ (AlQ+BlY ) Γ

]

≥ 0, Γss ≤ ψ2s,inf , ∀l ∈ 1, . . . , L, s ∈ 1, . . . , q.

(8.4.21)

Lemma 8.4.1. (Determination of the upper bound) Any feasible solution ofproblem (8.4.19) defines a set X(N |0) =

x ∈ Rn|xTQ−1x ≤ 1

in which alocal controller Fx = Y Q−1x exists such that the closed-loop cost value overthe infinite-horizon beginning from N is bounded by

Φtail (x(N |0)) ≤ x(N |0)T γQ−1x(N |0). (8.4.22)

Proof. The proof is similar to Chapter 7. Since X(N |0) =

x|xTQ−1x ≤ 1

,[

1 ∗x(N |0) Q

]

≥ 0 means x(N |0) ∈ X(N |0).

© 2010 b T l d F G LLC

Page 219: 1420085301 Predictive Control

8.4. Quasi-optimal solution to CLTVQR 203

8.4.3 Case finite-horizon without terminal weighting

Define

x =[

x(0|0)T , x(1|0)T , · · · , x(N − 1|0)T]T, (8.4.23)

u =[

u(0|0)T , u(1|0)T , · · · , u(N − 1|0)T]T. (8.4.24)

Thenx = Ax+ Bu+ x0, (8.4.25)

where A =

⎢⎢⎢⎢⎢⎢⎢⎣

0 · · · · · · · · · 0

A(0). . . . . . . . .

...

0 A(1). . . . . .

......

. . . . . . . . ....

0 · · · 0 A(N − 2) 0

⎥⎥⎥⎥⎥⎥⎥⎦

,

B =

⎢⎢⎢⎢⎢⎢⎢⎣

0 · · · · · · · · · 0

B(0). . . . . . . . .

...

0 B(1). . . . . .

......

. . . . . . . . ....

0 · · · 0 B(N − 2) 0

⎥⎥⎥⎥⎥⎥⎥⎦

,

x0 =[

x(0|0)T , 0, · · · , 0]T . (8.4.26)

Equation (8.4.25) can be rewritten as

x = W u+ V0 (8.4.27)

whereW = (I − A)−1B, V0 = (I − A)−1x0. (8.4.28)

Thus, the cost function of Problem 8.6 can be represented by

Φ0 (x(0|0)) = ‖x‖2Π + ‖u‖2R = uTWu+Wvu+ V0 ≤ η0, (8.4.29)

where η0 is a scalar, Π =

⎢⎢⎢⎢⎣

Π 0 · · · 0

0 Π.. .

......

. . . . . . 00 · · · 0 Π

⎥⎥⎥⎥⎦

, R =

⎢⎢⎢⎢⎣

R 0 · · · 0

0 R. . .

......

. . . . . . 00 · · · 0 R

⎥⎥⎥⎥⎦

,

W = W T ΠW + R, Wv = 2V T0 ΠW , V0 = V T0 ΠV0. (8.4.30)

Equation (8.4.29) can be represented by the following LMI:[η0 −Wvu− V0 ∗

W 1/2u I

]

≥ 0. (8.4.31)

© 2010 b T l d F G LLC

Page 220: 1420085301 Predictive Control

204 Chapter 8. Synthesis approaches with finite switching horizon

Further, define x+ =[

x(1|0)T , · · · , x(N − 1|0)T , x(N |0)T]T , then x+ =

A+x+ B+u, where

A+ =

⎢⎢⎢⎢⎣

A(0) 0 · · · 0

0 A(1). . .

......

. . . . . . 00 · · · 0 A(N − 1)

⎥⎥⎥⎥⎦

,

B+ =

⎢⎢⎢⎢⎣

B(0) 0 · · · 0

0 B(1). . .

......

. . . . . . 00 · · · 0 B(N − 1)

⎥⎥⎥⎥⎦

. (8.4.32)

The constraints in Problem 8.6 are transformed into

−u ≤ u ≤ ˜u, (8.4.33)

−ψ ≤ Ψ(A+W u+ B+u+ A+V0) ≤ ˜ψ, (8.4.34)

where

u =[

uT , uT · · ·uT ]T ∈ RmN , ˜u =[

uT , uT · · · uT ]T ∈ RmN , (8.4.35)

Ψ =

⎢⎢⎢⎢⎣

Ψ 0 · · · 0

0 Ψ. . .

......

. . . . . . 00 · · · 0 Ψ

⎥⎥⎥⎥⎦

∈ RqN×nN , ψ =[

ψT , ψT · · ·ψT]T

∈ RqN ,

˜ψ =[

ψT , ψT · · · ψT ]T ∈ RqN . (8.4.36)

Problem 8.6 is transformed into

minη0,u

η0, s.t. (8.4.31), (8.4.33)− (8.4.34). (8.4.37)

Denote the optimal u by solving (8.4.37) as u0.

8.4.4 Case finite-horizon with terminal weighting

Problem 8.7 can be solved similarly to Problem 8.6. The cost function ofProblem 8.7 can be represented by

ΦPN (x(0|0)) = ‖x‖2Π + ‖u‖2R +∥∥AN,0x(0|0) + Bu

∥∥

2

PN

=(

uTWu+Wvu+ V0

)

+∥∥AN,0x(0|0) + Bu

∥∥

2

PN≤ η, (8.4.38)

© 2010 b T l d F G LLC

Page 221: 1420085301 Predictive Control

8.4. Quasi-optimal solution to CLTVQR 205

where η is a scalar, Aj,i =∏j−1l=i A(j − 1 + i− l),

B = [AN,1B(0), · · · ,AN,N−1B(N − 2), B(N − 1)] . (8.4.39)

Equation (8.4.38) can be represented by the following LMI:⎡

η −Wvu− V0 ∗ ∗W 1/2u I ∗

AN,0x(0|0) + Bu 0 P−1N

⎦ ≥ 0. (8.4.40)

Problem 8.7 is transformed into

minη,u

η, s.t. (8.4.40), (8.4.33)− (8.4.34). (8.4.41)

Denote the optimal u by solving (8.4.41) as u∗.

8.4.5 Quasi-optimality, algorithm and stability

Let us firstly give the following conclusion.

Lemma 8.4.2. The design requirement (8.4.10) is satisfied if Φ∗PNserves as

Φf andΦ∗PN

− Φ∗0Φ∗0

≤ δ. (8.4.42)

Proof. By the optimality principle and notations, Φ∗0 ≤ Φ∗ ≤ Φ∗PN. If Φ∗PN

serves as Φf and (8.4.42) is satisfied, then

Φf − Φ∗

Φ∗=

Φ∗PN− Φ∗

Φ∗≤ Φ∗PN

− Φ∗0Φ∗0

≤ δ.

The above formula shows that (8.4.10) is satisfied.

Algorithm 8.2

Step 1. Choose initial (large) x(N |0) = x(N |0) satisfying ‖x(N |0)‖ > Δ,where Δ is a pre-specified scalar. Notice that N is unknown at thisstep.

Step 2. Solve (8.4.19) to obtain γ∗, Q∗, F ∗.

Step 3. If (8.4.19) is infeasible and ‖x(N |0)‖ > Δ, then decrease x(N |0)(x(N |0) ← rx(N |0), where r is a pre-specified scalar satisfying 0 <r < 1), and return to Step 2. However, if (8.4.19) is infeasible and‖x(N |0)‖ ≤ Δ, then mark the overall Algorithm as INFEASIBLEand STOP.

Step 4. PN = γ∗Q∗−1, X(N |0) =

x|xTQ∗−1x ≤ 1

.

© 2010 b T l d F G LLC

Page 222: 1420085301 Predictive Control

206 Chapter 8. Synthesis approaches with finite switching horizon

Step 5. Choose initial N ≥ N0.

Step 6. Solve (8.4.41) to obtain u∗, x∗(N |0) = AN,0x(0) + Bu∗.

Step 7. If x∗(N |0) /∈ X(N |0), then increase N and return to Step 6.

Step 8. Choose u = u∗ in Step 6 as initial solution and solve (8.4.37) toobtain u0 and x0(N |0) = AN,0x(0) + Bu0.

Step 9. If x0(N |0) /∈ X(N |0), then increase N and return to Step 6.

Step 10. If(

Φ∗PN− Φ∗0

)

/Φ∗0 > δ, then increase N and return to Step 6.

Step 11. Implement u∗, F ∗.

Remark 8.4.1. How to choose r in Algorithm 8.2 depends on the systemdynamics. However, given the initial choice x(N |0) = x(N |0), r should satisfyrM1 ≤ Δ/‖x(N |0)‖ ≤ rM2 , where M1 and M2 are the maximum and theminimum allowable iterations between Step 2 and Step 3. In case (8.4.19) isfeasible, then the iteration between Step 2 and Step 3 will not stop withinM2 times, and will not continue after M1 times. Usually, we can choose M0

satisfying M2 ≤M0 ≤M1, and then choose r = M0√

Δ/‖x(N |0)‖.Remark 8.4.2. For the same N , if x0(N |0) ∈ X(N |0) then x∗(N |0) ∈X(N |0); however, x∗(N |0) ∈ X(N |0) does not mean x0(N |0) ∈ X(N |0). Thisis because problem (8.4.41) incorporates terminal cost. The terminal cost cansuppress the evolution of the terminal state, such that it is easier for the ter-minal state to enter X(N |0). Therefore, in Algorithm 8.2, if (8.4.37) is solvedprior to (8.4.41), the computational burden can be reduced.

Denote X(0|0) ⊂ Rn as the set of state x(0|0) in which Problem 8.4 existsa feasible solution. Then the following result shows the feasibility and stabilityof the suboptimal CLTVQR.

Theorem 8.4.1. (Stability) By applying Algorithm 8.2 , if problem (8.4.19)exists a feasible solution for a suitable x(N |0), then for all x(0|0) ∈ X(0|0)there exists a finite N and feasible u∗ such that the design requirement (8.4.10)is satisfied, and the closed-loop system is asymptotically stable.

Proof. For sufficiently large N , x∗(N |0) moves sufficiently close to the originand

(

Φ∗PN− Φ∗0

)

becomes sufficiently small such that (8.4.42) can be satis-fied. Moreover, for sufficiently large N , x∗(N |0) ∈ X(N |0). Inside of X(N |0),(8.4.19) gives stable feedback law F .

However, as long as CLTVQR is substituted by min-max CLQR in theneighborhood of the origin, there is a possibility that the suboptimal solutiondoes not exist for x(0|0) ∈ X(0|0). Whether or not this will happen dependson the concrete system.

Remark 8.4.3. The method for finding the suboptimal solution to CLTVQRcan be easily generalized to the nonlinear systems.

© 2010 b T l d F G LLC

Page 223: 1420085301 Predictive Control

8.4. Quasi-optimal solution to CLTVQR 207

8.4.6 Numerical example

The following model is adopted:

⎢⎢⎣

x1(t+ 1)x2(t+ 1)x3(t+ 1)x4(t+ 1)

⎥⎥⎦=

⎢⎢⎢⎣

1 0 0.1 00 1 0 0.1

−0.1K(t)m1

0.1K(t)m1

1 00.1K(t)

m2−0.1K(t)

m20 1

⎥⎥⎥⎦

⎢⎢⎣

x1(t)x2(t)x3(t)x4(t)

⎥⎥⎦+

⎢⎢⎣

000.1m1

0

⎥⎥⎦u(t)

(8.4.43)which is modified from the model of the two-mass (m1,m2) spring system,where m1 = m2 = 1, K(t) = 1.5 + 2e−0.1t(1 + sin t) + 0.973 sin(tπ/11). Theinitial state is x(0) = α × [5, 5, 0, 0]T where α is a constant, the weightingmatrices Q = I, R = 1 and the input constraint |u(t)| ≤ 1.

Let us first consider Algorithm 8.2. The control objective is to find asequence of control input signals such that (8.4.10) is satisfied with δ ≤ 10−4.At t = 50, 2e−0.1t ≈ 0.0135. Hence, 0.527 ≤ K(t) ≤ 2.5, ∀t ≥ 50. We chooseN0 = 50,

[A1|B1] =

⎢⎢⎣

1 0 0.1 00 1 0 0.1

−0.0527 0.0527 1 00.0527 −0.0527 0 1

∣∣∣∣∣∣∣∣

00

0.10

⎥⎥⎦,

[A2|B2] =

⎢⎢⎣

1 0 0.1 00 1 0 0.1

−0.25 0.25 1 00.25 −0.25 0 1

∣∣∣∣∣∣∣∣

00

0.10

⎥⎥⎦. (8.4.44)

Choose x(N |0) = 0.02 × [1, 1, 1, 1]T , then problem (8.4.19) exists feasiblesolution F =

[ −8.7199 6.7664 −4.7335 −2.4241]

. Algorithm 8.2 existsa feasible solution whenever α ≤ 23.0. Choose α = 1, N = 132, then Φ∗P132

=1475.91, Φ∗0 = 1475.85 and the desired optimality requirement (8.4.10) isachieved. Figure 8.4.1 shows the state responses of the closed-loop system.Figure 8.4.2 shows the control input signal.

8.4.7 A comparison with another approach

By introducing some extra assumptions, the on-line approach in Chapter 7can be utilized to find the suboptimal solution of CLTVQR (the design re-quirement (8.4.10) is ignored). Suppose

[A(t+ i)|B(t+ i)] ∈ Ω(t), ∀t ≥ 0, ∀i ≥ 0, (8.4.45)

where

Ω(t) := Co [A1(t)|B1(t)] , [A2(t)|B2(t)] , · · · , [AL(t)|BL(t)] , (8.4.46)

© 2010 b T l d F G LLC

Page 224: 1420085301 Predictive Control

208 Chapter 8. Synthesis approaches with finite switching horizon

time t 0 60 120 180

-2

0

2

4

6

1x

2x

3x

4xx

Figure 8.4.1: Closed-loop state responses of CLTVQR.

0 60 120 180 -1

-0.5

0

0.5

1

time t

u

Figure 8.4.2: Control input signal of CLTVQR.

© 2010 b T l d F G LLC

Page 225: 1420085301 Predictive Control

8.4. Quasi-optimal solution to CLTVQR 209

i.e., ∀t, i ≥ 0 there exist L nonnegative coefficients ωl(t+ i, t), l ∈ 1, 2, . . . , Lsuch that

L∑

l=1

ωl(t+i, t) = 1, [A(t+ i)|B(t+ i)] =L∑

l=1

ωl(t+i, t) [Al(t)|Bl(t)] . (8.4.47)

Equations (8.4.45)-(8.4.47) define a time-varying polytopic inclusion of thedynamic system (8.4.1). For t = N0, (8.4.45)-(8.4.47) reduce to (8.4.4). Definethe following optimization problem:

minγ(t),Q(t),Y (t),Z(t),Γ(t)

γ(t), s.t.[

1 ∗x(t) Q(t)

]

≥ 0 and (8.4.20),

(8.3.9), (8.4.21),by substituting Q, Y, Z,Γ, γ, Al, Blwith Q(t), Y (t), Z(t),Γ(t), γ(t), Al(t), Bl(t). (8.4.48)

According to the theoretical results in Chapter 7, if at time t = 0, (8.4.48)is solvable, then by receding horizon implementation of (8.4.48), the controlsequence u(t) = Y (t)Q(t)−1x(t), t ≥ 0 asymptotically stabilizes the system(8.4.1).

Remark 8.4.4. Notice that, in Chapter 7, only the time-invariant polytopicinclusion, i.e., [A(t+ i)|B(t+ i)] ∈ Ω, ∀t ≥ 0, ∀i ≥ 0, is considered. However,by the time-varying polytopic inclusion (8.4.45)-(8.4.47), Ω(t + 1) ⊆ Ω(t),∀t ≥ 0. Due to this reason, stability property of Chapter 7 is suitable totechnique (8.4.48).

Let us firstly compare Algorithm 8.2 and the technique based on (8.4.48)with respect to the computational burden.

In finding the feasible solution of LMI, the interior point algorithm is oftenapplied, which is a polynomial time algorithm, i.e., the complexity for solvingthe feasibility problem can be represented by a polynomial. This complexityis proportional to K3L, where K is the number of scalar LMI variables and Lthe number of rows (referring to scalar row) of the total LMI system; see [31].For problem (8.4.37), K1(N) = N + 1 and L1(N) = (2m+ 2q + 1)N + 1; forproblem (8.4.41), K2(N) = N + 1 and L2(N) = (2m + 2q + 1)N + n + 1;for problem (8.4.19), K3 = 1

2 (n2 + n + m2 + m + q2 + q) + mn + 1 andL3 = (4n+m+ q)L+ 2n+ 2m+ q + 1.

The computational burden of Algorithm 8.2 mainly comes from solvingLMI optimization problem. Denote N2 (N1) as the set of temporary and finalswitching horizons in implementing Step 6 (Step 8) of Algorithm 8.2, and M0

as the repeating times between Step 2 and Step 3. Then, the computationalburden of Algorithm 8.2 is proportional to

N∈N1

K1(N)3L1(N) +∑

N∈N2

K2(N)3L2(N) + M0K33L3.

© 2010 b T l d F G LLC

Page 226: 1420085301 Predictive Control

210 Chapter 8. Synthesis approaches with finite switching horizon

The main source of computational burden for the method based on (8.4.48)also comes from solving LMI optimization problem. During 0 ≤ t ≤ N − 1,this computational burden is proportional to NK3

3L3. In general, the compu-tational burden involved in Algorithm 8.2 is larger than that involved in themethod based on (8.4.48). However, Algorithm 8.2 can give suboptimal solu-tion arbitrarily close to the theoretically optimal solution of CLTVQR (degreeof closeness is pre-specified by δ), while the method based on (8.4.48) cannotachieve the same target.

Consider the model (8.4.43). By applying the method based on (8.4.48),one can obtain a sequence of suboptimal control moves to stabilize (8.4.43).Then, in (8.4.45)-(8.4.47),

[A1(t)|B1(t)] = [A1|B1] ,

[A2(t)|B2(t)] =

⎢⎢⎣

1 0 0.1 00 1 0 0.1

−0.1(

2.473 + 4e−0.1t)

0.1(

2.473 + 4e−0.1t)

1 00.1

(

2.473 + 4e−0.1t) −0.1

(

2.473 + 4e−0.1t)

0 1

∣∣∣∣∣∣∣∣

00

0.10

⎥⎥⎦.

Problem (8.4.48) exists a feasible solution whenever α ≤ 21.6 (this resultis worse than that of Algorithm 8.2). Choose α = 1, then by solving problem(8.4.48) in a receding horizon way, Figure 8.4.3 shows the state responses ofthe closed-loop system; Figure 8.4.4 shows the control input signal. The costvalue Φ(x(0)) = 3914.5 is much larger than the theoretically minimum one(which lies between Φ∗P132

= 1475.91 and Φ∗0 = 1475.85).In the simulation, we have utilized LMI Toolbox of Matlab 5.3 on our

laptop (1.5G Pentium IV CPU, 256 M Memory); it takes 9 23 minutes for

calculating Φ∗P132, 7 1

3 minutes for calculating Φ∗0, 1 13 minutes for calculating

Φ(x(0)) = 3914.5 (by solving (8.4.48) for 280 sampling intervals).

8.5 On-line approach for systems with poly-topic description

Consider the following time-varying uncertain system:

x(k + 1) = A(k)x(k) +B(k)u(k), [A(k) |B(k) ] ∈ Ω. (8.5.1)

Suppose

[A(k) |B(k) ] ∈ Ω = Co [A1 |B1] , [A2 |B2] , · · · , [AL |BL] , ∀k ≥ 0.

The constraints are as in (8.1.2)-(8.1.3).Define the performance cost (8.2.1), introduce stability constraint (8.3.1),

and substitute the optimization problem based on the performance cost (8.2.1)with the optimization problem for (8.3.2). These are the same as in section8.3. Since the uncertain system is considered, the control performance will

© 2010 b T l d F G LLC

Page 227: 1420085301 Predictive Control

8.5. On-line approach for systems with polytopic description 211

time t 0 40 80 120 160 200 240 280

-1

0

1

2

3

4

5

1x

2x

3x

4x x

Figure 8.4.3: Closed-loop state responses of the technique based on (8.4.48).

0 40 80 120 160 200 240 280 -0.25

-0.2

-0.1

0

0.1

0.2

time t

u

Figure 8.4.4: Control input signal of the technique based on (8.4.48).

© 2010 b T l d F G LLC

Page 228: 1420085301 Predictive Control

212 Chapter 8. Synthesis approaches with finite switching horizon

get worse by adopting a standard approach. Therefore, we directly apply theon-line approach.

MPC here solves the following optimal problem at each time k:

minu(k|k),···u(k+N−1|k),F,P

max[A(k+i)|B(k+i)]∈Ω,i≥0

J(x(k)), s.t. (8.3.4)− (8.3.6).

(8.5.2)It is easily seen that (8.5.2) is different from (8.3.3)-(8.3.6) in that “min”problem is substituted with “min-max” problem.

Define Q = γP−1, F = Y Q−1. Using Schur complements for a convexhull, (8.3.1) is equivalent to LMI

⎢⎢⎣

Q ∗ ∗ ∗AlQ+BlY Q ∗ ∗W 1/2Q 0 γI ∗R1/2Y 0 0 γI

⎥⎥⎦≥ 0, ∀l ∈ 1, . . . , L. (8.5.3)

The input/state constraints after the switching horizon N can be guaranteedby (8.3.9) and (8.4.21).

For solving problem (8.5.2), i.e., transforming (8.5.2) into LMI optimiza-tion, we need the state predictions x(k + i|k). Although the future state pre-diction is uncertain, we can determine the set to include this prediction.

Lemma 8.5.1. Define the set S(k + i|k) as

S(k+ i|k) = Covli−1···l1l0(k+ i|k), l0, l1, · · · li−1 = 1 . . . L, S(k|k) = x(k),(8.5.4)

where i ≥ 0. Suppose x(k+i|k) ∈ S(k+i|k). If vli···l1l0(k+i+1|k), l0, l1, · · · li ∈1, . . . , L satisfies

vli···l1l0(k + i+ 1|k) = Alivli−1···l1l0(k + i|k) +Bliu(k + i|k),then S(k+ i+ 1|k) is the tightest set that contains all possible x(k + i+ 1|k).Proof. (By induction) For i = 0 the result is trivial. For i > 1 the predictionequation is given by

x(k + i+ 1|k) = A(k + i)x(k + i|k) +B(k + i)u(k + i|k). (8.5.5)

Note that, from the definition of a convex hull and with ωl ≥ 0,

A(k + i) =L∑

l=1

ωlAl, B(k + i) =L∑

l=1

ωlBl,

L∑

l=1

ωl = 1. (8.5.6)

Suppose

x(k + i|k) =L∑

l0l1···li−1=1

((i−1∏

h=0

ωlh

)

vli−1···l1l0(k + i|k))

, (8.5.7)

© 2010 b T l d F G LLC

Page 229: 1420085301 Predictive Control

8.5. On-line approach for systems with polytopic description 213

where∑L

l0l1···li−1=1

(∏i−1h=0 ωlh

)

= 1,∑L

l0=1 · · ·∑L

li=1(· · · ) is simplified as∑L

l0···li=1(· · · ). Substitution of (8.5.7) and (8.5.6) into (8.5.5) gives (whereωl = ωli)

x(k + i+ 1|k) =L∑

li=1

ωliAli

L∑

l0l1···li−1=1

((i−1∏

h=0

ωlh

)

vli−1···l1l0(k + i|k))

+L∑

li=1

ωliBliu(k + i|k)

=L∑

l0l1···li=1

(i∏

h=0

ωlh

)

vli···l1l0(k + i|k). (8.5.8)

Hence, x(k+ i+1|k) ∈ S(k+ i+1|k) = Covli···l1l0(k+ i+1|k), l0, l1, · · · li =1 . . . L.

Furthermore, there is no tighter set that contains all possible x(k+i+1|k),since it is generated by a convex hull.

Define‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R ≤ γi. (8.5.9)

Then J(x(k)) ≤∑N−1i=0 γi + γ.

For MPC in this section, a key is to take

u(k + i|k) =F (k + i|k)x(k + i|k) + c(k + i|k),F (·|0) =0, i ∈ 0, 1, . . . , N − 1, (8.5.10)

where F (k + i|k), k > 0, i ∈ 0, 1, . . . , N − 1 are supposed known, theirvalues being carried over from the previous sampling instant, i.e., when k > 0,F (k+ i|k) = F (k+ i|k− 1), i ∈ 0, 1, . . . , N − 2, F (k+N − 1|k) = F (k− 1).For the significance of selecting F ’s in this manner, one is referred to Chapter9 for more details.

In (8.5.10), c is the perturbation item. In the final optimization problem, c,rather than u, will be the decision variable. By utilizing (8.5.10) and Lemma8.5.1, (8.5.9) is converted into LMI

γ0 ∗ ∗x(k) W−1 ∗

F (k|k)x(k) + c(k|k) 0 R−1

⎦ ≥ 0,

γi ∗ ∗vli−1···l1l0(k + i|k) W−1 ∗

F (k + i|k)vli−1···l1l0(k + i|k) + c(k + i|k) 0 R−1

⎦ ≥ 0,

l0, l1, · · · li−1 ∈ 1, 2, . . . , L, i ∈ 1, . . . , N − 1. (8.5.11)

© 2010 b T l d F G LLC

Page 230: 1420085301 Predictive Control

214 Chapter 8. Synthesis approaches with finite switching horizon

Note that in (8.5.11), vli−1···l1l0(k+ i|k) should be represented as the functionof c(k|k), c(k+1|k), · · · , c(k+ i−1|k) (by using Lemma 8.5.1 and (8.5.10)). Inthe first LMI of (8.5.11), one can remove the rows and columns correspondingto W−1; since these rows and columns do not include LMI variables, thisremoval will not affect the feasibility and optimality of the control algorithm.

By using (8.5.10) and Lemma 8.5.1, (8.3.5) is converted into LMI[

1 ∗vlN−1···l1l0(k +N |k) Q

]

≥ 0, l0, l1, · · · lN−1 ∈ 1, 2, . . . , L. (8.5.12)

Note that in (8.5.12), vlN−1···l1l0(k+N |k) should be represented as the functionof c(k|k), c(k + 1|k), · · · , c(k +N − 1|k).

Moreover, the satisfaction of input/state constraints before the switchinghorizon can be guaranteed by imposing

−u ≤F (k|k)x(k) + c(k|k) ≤ u,−u ≤F (k + i|k)vli−1···l1l0(k + i|k) + c(k + i|k) ≤ u,

l0, l1, · · · li−1 ∈ 1, 2, . . . , L, i ∈ 1, . . . , N − 1, (8.5.13)−ψ ≤Ψvli−1···l1l0(k + i|k) ≤ ψ, l0, l1, · · · li−1 ∈ 1, 2, . . . , L, i ∈ 1, 2, . . . , N.

(8.5.14)

So, problem (8.5.2) is converted into LMI optimization problem

minc(k|k),··· ,c(k+N−1|k),γi,γ,Q,Y,Z,Γ

N−1∑

i=0

γi

+γ, s.t. (8.3.9), (8.4.21), (8.5.3), (8.5.11)− (8.5.14). (8.5.15)

Although (8.5.15) is solved at each time k, only c∗(k|k) among the de-cided values is implemented. At the next time k + 1, based on the newlymeasured x(k), the optimization is re-performed to obtain c∗(k + 1|k + 1).If, after implementing c∗(k|k), input/state constraints are still active (here“active” means affecting the optimum of (8.5.15)), then the re-performed op-timization at time k+ 1 can significantly improve the control performance (ifthe input/state constraints are not active, receding horizon optimization stillimproves performance).

Theorem 8.5.1. (Stability) Suppose (8.5.15) is feasible at time k = 0. Then(8.5.15) is feasible for all k ≥ 0. Further, by receding horizon implementingthe optimum c∗(k|k), the closed-loop system is exponentially stable.

Proof. Suppose (8.5.15) is feasible at time k = 0 (the solution is denoted by∗), then the following is feasible at time k + 1:

c(k + i|k + 1) = c∗(k + i|k), i ∈ 1, 2, . . . , N − 1,u(k +N |k + 1) = F ∗(k)x∗(k +N |k). (8.5.16)

© 2010 b T l d F G LLC

Page 231: 1420085301 Predictive Control

8.6. Parameter-dependent on-line approach 215

Adopting (8.5.16), by analogy to Theorem 8.3.1 we can obtain (8.3.20).Now, notice thatJ∗(x(k)) ≤ η∗(k) :=

∑N−1i=0 γ∗i (k) + γ∗(k)

andJ(x(k + 1)) ≤ η(k + 1) :=

∑N−1i=0 γi(k + 1) + γ(k + 1).

According to (8.3.20), at time k + 1 it is feasible to choose

N−1∑

i=0

γi(k + 1) + γ(k + 1) =N−1∑

i=0

γ∗i (k) + γ∗(k)− [‖x(k)‖2W + ‖u∗(k|k)‖2R]

.

Since at time k+1 the optimization is re-done, it must lead to∑N−1

i=0 γ∗i (k+1) + γ∗(k + 1) ≤∑N−1

i=0 γi(k + 1) + γ(k + 1), which means that

η∗(k + 1)− η∗(k) ≤ −‖x(k)‖2W − ‖u∗(k|k)‖2R.Therefore, η∗(k) can be Lyapunov function for proving exponential stabil-

ity.

8.6 Parameter-dependent on-line approach forsystems with polytopic description

The problem description is the same as section 8.5. For N ≥ 2, we take

u(k + i|k) =L∑

l0···li−1=1

((i−1∏

h=0

ωlh(k + h)

)

uli−1···l0(k + i|k))

,

L∑

l0···li−1=1

(i−1∏

h=0

ωlh(k + h)

)

= 1, i ∈ 1, . . . , N − 1. (8.6.1)

At each time k we solve the following optimization problem

minu(k),F,P

max[A(k+i)|B(k+i)]∈Ω,i≥0

J(x(k)), s.t. (8.3.4)− (8.3.6), (8.6.1) (8.6.2)

where

u(k) := u(k|k), ul0(k + 1|k), · · · , ulN−2···l0(k +N − 1|k)|lj = 1 . . . L,j = 0 . . .N − 2

is the collection of the “vertex control moves” uli−1···l0(k+i|k) (which amountsto taking a different control move for each corner of the uncertainty evolu-tion). After solving problem (8.6.2), only u(k) = u(k|k) is implemented. Then,problem (8.6.2) is solved again at k + 1.

© 2010 b T l d F G LLC

Page 232: 1420085301 Predictive Control

216 Chapter 8. Synthesis approaches with finite switching horizon

Note that u(k+ i|k), i ∈ 1, . . . , N − 1 (or c(k+ i|k), i ∈ 1, . . . , N − 1)in the former sections and chapters are single, whereas in this section they areparameter-dependent (i.e., dependent on the unknown parameters). Hence,differently from robust MPC in section 8.5, when N > 1, (8.6.2) can onlybe implemented in a receding-horizon manner. MPC in Chapter 7 can alsobe implemented in a non-receding-horizon manner; on-line MPC in section8.5 can also be implemented in a non-receding-horizon manner; by these non-receding-horizon controllers, the closed-loop systems are still stable.

Define

γ1 ≥ ‖u(k|k)‖2R +N−1∑

i=1

[‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

,

1 ≥ ‖x(k +N |k)‖2Q−1 . (8.6.3)

According to the deductions in section 8.5, one can approximate problem(8.6.2) by the following LMI optimization problem:

minu(k),γ1,γ,Q,Y,Z,Γ

max[A(k+i)|B(k+i)]∈Ω,i∈0,...,N−1

γ1 + γ,

s.t. (8.3.4), i ∈ 0, . . . , N − 1, (8.3.9), (8.4.21), (8.5.3), (8.6.1), (8.6.3).(8.6.4)

The state predictions before the switching horizon can be expressed as⎡

⎢⎢⎢⎣

x(k + 1|k)x(k + 2|k)

...x(k +N |k)

⎥⎥⎥⎦

=L∑

l0···lN−1=1

⎜⎜⎜⎝

N−1∏

h=0

ωlh(k + h)

⎢⎢⎢⎣

xl0(k + 1|k)xl1l0(k + 2|k)

...xlN−1···l1l0(k +N |k)

⎥⎥⎥⎦

⎟⎟⎟⎠,

⎢⎢⎢⎣

xl0(k + 1|k)xl1l0(k + 2|k)

...xlN−1···l1l0(k +N |k)

⎥⎥⎥⎦

=

⎢⎢⎢⎣

Al0Al1Al0

...∏N−1i=0 AlN−1−i

⎥⎥⎥⎦x(k)

+

⎢⎢⎢⎢⎣

Bl0 0 · · · 0

Al1Bl0 Bl1. . .

......

.... . . 0

∏N−2i=0 AlN−1−iBl0

∏N−3i=0 AlN−1−iBl1 · · · BlN−1

⎥⎥⎥⎥⎦

⎢⎢⎢⎣

u(k|k)ul0(k + 1|k)

...ulN−2···l1l0(k +N − 1|k)

⎥⎥⎥⎦, (8.6.5)

where xli−1···l1l0(k + i|k), i ∈ 1, . . . , N are “vertex state predictions.”Since

∑Ll0···li−1=1

(∏i−1h=0 ωlh(k + h)

)

= 1, the state predictions x(k + i|k),

© 2010 b T l d F G LLC

Page 233: 1420085301 Predictive Control

8.6. Parameter-dependent on-line approach 217

i ∈ 1, . . . , N belong to the polytopes (see section 8.5). Notice that, withinthe switching horizon, (8.6.5) is consistent with Lemma 8.5.1. By applyingSchur complement, (8.6.1) and the convexity of the set of state predictions,one can transform (8.6.3) into the following LMIs:

2666666666666666664

γ1 ∗ ∗ · · · ∗ ∗ · · · ∗u(k|k) R−1 ∗ · · · ∗ ∗ · · · ∗

ul0(k + 1|k) 0 R−1 · · · ∗ ∗ · · · ∗...

......

. . ....

......

ulN−2···l1l0(k + N − 1|k) 0 0 · · · R−1 ∗ · · · ∗Al0x(k) + Bl0u(k|k) 0 0 · · · 0 W−1 · · · ∗

......

......

.... . .

...QN−2i=0 AlN−2−ix(k) +

QN−3i=0 AlN−2−i

Bl0u(k|k) + · · ·+BlN−2u

lN−3···l1l0(k + N − 2|k) 0 0 · · · 0 0 · · · W−1

3777777777777777775

≥ 0,

l0, · · · , lN−2 ∈ 1, . . . , L, (8.6.6)

1 ∗∏N−1i=0 AlN−1−ix(k) +

∏N−2i=0 AlN−1−iBl0u(k|k)

+ · · ·+BlN−1ulN−2···l1l0(k +N − 1|k) Q

⎦ ≥ 0,

l0, · · · , lN−1 ∈ 1, . . . , L. (8.6.7)

For i ∈ 0, . . . , N − 1, the hard constraint (8.3.4) can be transformed intothe following LMI:

− u ≤ u(k|k) ≤ u, − u ≤ ulj−1···l1l0(k + j|k) ≤ u, l0, · · · , lj−1 ∈ 1, . . . , L,j ∈ 1, . . . , N − 1, (8.6.8)

⎢⎢⎢⎣

ψψ...ψ

⎥⎥⎥⎦≤ Ψ

⎢⎢⎢⎣

Al0∏1i=0 Al1−i

...∏N−1i=0 AlN−1−i

⎥⎥⎥⎦x(k)

+ Ψ

⎢⎢⎢⎢⎣

Bl0 0 · · · 0

Al1Bl0 Bl1. . .

......

.... . . 0

∏N−2i=0 AlN−1−iBl0

∏N−3i=0 AlN−1−iBl1 · · · BlN−1

⎥⎥⎥⎥⎦

×

⎢⎢⎢⎣

u(k|k)ul0(k + 1|k)

...ulN−2···l1l0(k +N − 1|k)

⎥⎥⎥⎦≤

⎢⎢⎢⎣

ψψ...ψ

⎥⎥⎥⎦, l0, · · · , lN−1 ∈ 1, . . . , L,

(8.6.9)

© 2010 b T l d F G LLC

Page 234: 1420085301 Predictive Control

218 Chapter 8. Synthesis approaches with finite switching horizon

where Ψ = diagΨ, · · · ,Ψ.Thus, the optimization problem (8.6.4) is eventually approximated by the

following LMI optimization problem:

minγ1,γ,u(k),Y,Q,Z,Γ

γ1 + γ, s.t. (8.3.9), (8.4.21), (8.5.3), (8.6.6)− (8.6.9).

(8.6.10)

Theorem 8.6.1. (Stability) Suppose (8.6.10) is feasible at the initial timek = 0. Then, (8.6.10) is feasible for any k ≥ 0. Further, by receding-horizonimplementing the optimal solution u∗(k|k), the closed-loop system is exponen-tially stable.

Proof. Suppose at time k there is a feasible solution u(k)∗, Y (k)∗, Q(k)∗,by which we obtain xli−1(k)···l0(k)(k+ i|k)∗, i = 1 . . .N, F (k)∗, P (k)∗. Then,at time k + 1 the following is feasible:

uli−2(k+1)···l0(k+1)(k + i|k + 1) =L∑

l0(k)=1

ωl0(k)(k)uli−1(k)···l0(k)(k + i|k)∗,

i = 1 . . . N − 1, (8.6.11)

ulN−2(k+1)···l0(k+1)(k +N |k + 1) = F (k)∗ (8.6.12)L∑

l0(k)=1

ωl0(k)(k)xlN−1(k)···l0(k)(k +N |k)∗, (8.6.13)

u(k + i|k + 1) = F (k)∗x(k + i|k)∗, i ≥ N + 1. (8.6.14)

Applying (8.6.11) yields

u(k + i|k + 1) =L∑

l0(k+1)···li−2(k+1)=1

((i−2∏

h=0

ωlh(k+1)(k + 1 + h)

)

uli−2(k+1)···l0(k+1)(k + i|k + 1)

)

=L∑

l0(k+1)···li−2(k+1)=1

((i−2∏

h=0

ωlh(k+1)(k + 1 + h)

)

L∑

l0(k)=1

ωl0(k)(k)uli−1(k)···l0(k)(k + i|k)∗

⎠ ,

i ∈ 1, . . . , N − 1.

© 2010 b T l d F G LLC

Page 235: 1420085301 Predictive Control

8.6. Parameter-dependent on-line approach 219

Since ωlh+1(k)(k + 1 + h) = ωlh(k+1)(k + 1 + h), we further obtain

u(k + i|k + 1) =L∑

l1(k)···li−1(k)=1

((i−1∏

h=1

ωlh(k)(k + h)

)

L∑

l0(k)=1

ωl0(k)(k)uli−1(k)···l0(k)(k + i|k)∗

=L∑

l0(k)···li−1(k+1)=1

((i−1∏

h=0

ωlh(k)(k + h)

)

uli−1(k+1)···l0(k)(k + i|k)∗)

= u(k + i|k)∗, i = 1 . . .N − 1.

Analogously, applying (8.6.13) and ωlh+1(k)(k+1+h) = ωlh(k+1)(k+1+h)yields

u(k +N |k + 1) = F (k)∗x(k +N |k)∗.Hence, (8.6.11)-(8.6.14) are equivalent to

u(k + i+ 1|k + 1) = u∗(k + i+ 1|k), i ∈ 0, . . . , N − 2,u(k + i|k + 1) = F ∗(k)x∗(k + i|k), i ≥ N.

The continued proof is the same as Theorem 8.3.1.

Remark 8.6.1. In the algorithm of section 8.5, γ0, γ1, · · · , γN−1 areadopted. However, in (8.6.10) a γ1 is utilized to incorporate all γi’s. Thesetwo paradigms are equivalent with respect to the feasibility. By adoptingγ0, γ1, · · · , γN−1, there are N−1 more decision variables. However, the dimen-sions of LMI are smaller, which simplifies coding. The algorithm in section 8.6can also adopt γ0, γ1, · · · , γN−1, while the algorithm in section 8.5 can alsoadopt a single γ1.

© 2010 b T l d F G LLC

Page 236: 1420085301 Predictive Control
Page 237: 1420085301 Predictive Control

Chapter 9

Open-loop optimizationand closed-loopoptimization in synthesisapproaches

In this chapter, we continue the topic of MPC with switching horizonN . Whenu(k|k), u(k + 1|k), · · · , u(k +N − 1|k) are optimized and N > 1, one usuallymeets with MPC based on the open-loop optimization, i.e., open-loop MPC.MPC is always a closed-loop strategy when it is really implemented. Whenthe states x(k + 2|k), x(k + 3|k), · · · , x(k + N |k) are being predicted, if theeffect of closed-loop is not taken into consideration, then the correspondingoptimization is called “open-loop optimization.” The basic feature of open-loop MPC is “open-loop optimization, closed-loop control.”

When u(k|k),K(k + 1|k), · · · ,K(k + N − 1|k) (where K is the in-timestate feedback gain) are optimized, one usually meets with MPC based on theclosed-loop optimization, i.e., feedback MPC. When the states x(k+2|k), x(k+3|k), · · · , x(k +N |k) are being predicted, if the effect of closed-loop (i.e., theeffect of feedback) is taken into consideration, then the corresponding opti-mization is called “closed-loop optimization.” The basic feature of feedbackMPC is “closed-loop optimization, closed-loop control.”

Take the prediction of x(k+2|k), based on the system x(k+1) = Ax(k)+Bu(k), as an example. In the open-loop prediction,

x(k + 2|k) = A2x(k) +ABu(k) +Bu(k + 1|k);

in the closed-loop prediction,

x(k + 2|k) = (A+BK(k + 1|k))Ax(k) + (A+BK(k + 1|k))Bu(k).

221

© 2010 b T l d F G LLC

Page 238: 1420085301 Predictive Control

222 Chapter 9. Open-loop optimization and closed-loop optimization

Apparently, if there is uncertainty, K(k+1|k) can reduce the conservativenessin the predicted values.

For nominal systems, open-loop prediction and closed-loop prediction areequivalent. For uncertain systems, there is a large difference between the open-loop optimization and the closed-loop optimization. For N > 1, it is hard todirectly solve MPC based on the closed-loop optimization. Usually, the partialclosed-loop form is adopted, i.e., u = Kx+ c is defined where c is called theperturbation item.

Section 9.1 is referred to in [38]. Sections 9.2 and 9.3 are referred to in [10].

9.1 A simple approach based on partial closed-

loop optimization

In Chapter 7, on-line approach for state feedback MPC has been given. It isactually MPC based on the closed-loop optimization with switching horizon0. On-line approach incurs huge on-line computational burden. Although thecorresponding off-line approach exists, the feasibility and optimality of off-lineapproach are greatly discounted.

This section introduces MPC with switching horizon N ≥ 1, and beforethe switching horizon the control move is defined as u = Kx+ c, where K is(off-line given) fixed state feedback gain.

9.1.1 Aim: achieving larger region of attraction

Consider the following time-varying polytopic uncertain system:

x(k + 1) = A(k)x(k) +B(k)u(k), k ≥ 0, (9.1.1)

where u ∈ Rm, x ∈ Rn are input and measurable state, respectively. Suppose[A(k)|B(k)] belongs to the convex hull of the set of extreme points [Al|Bl], l ∈1, . . . , L:

[A(k)|B(k)] ∈ Ω = Co [A1|B1], [A2B2], · · · , [AL|BL] , ∀k ≥ 0, (9.1.2)

i.e., there exist L nonnegative coefficients ωl(k), l ∈ 1, . . . , L such that

L∑

l=1

ωl(k) = 1, [A(k)|B(k)] =L∑

l=1

ωl(k) [Al|Bl] . (9.1.3)

Differently from the former chapters we adopt the following constraints:

−g ≤ Gx(k) +Du(k) ≤ g (9.1.4)

where g :=[

g1, g

2, · · · , g

q

]T

, g := [g1, g2, · · · , gq]T , gs> 0, gs > 0, s ∈

1, . . . , q; G ∈ Rq×n, D ∈ Rq×m. Note that the state constraint −ψ ≤

© 2010 b T l d F G LLC

Page 239: 1420085301 Predictive Control

9.1. A simple approach based on partial closed-loop optimization 223

Ψx(k + i + 1) ≤ ψ in the former two chapters can be expressed as (9.1.4),where

G =[AT1 ΨT , AT2 ΨT , · · · , ATLΨT ]T , D = [BT1 ΨT , BT2 ΨT , · · · , BTLΨT ]T ;

g :=[

ψT , ψT , · · · , ψT]T

, g :=[

ψT , ψT , · · · , ψT ]T .

For on-line approach in Chapter 7, when (9.1.4) is considered one needsto substitute LMI for the constraints with

[

Q ∗GQ+DY Γ

]

≥ 0, Γss ≤ g2s,inf , s ∈ 1, . . . , q, (9.1.5)

where gs,inf = mings, gs, Γss is the s-th diagonal element of Γ(k). Accord-

ingly, on-line MPC solves the following optimization problem at each timek:

minγ,Q,Y,Γ

γ, s.t. (9.1.5), (9.1.7) and (9.1.8), (9.1.6)⎡

⎢⎢⎣

Q ∗ ∗ ∗AlQ+BlY Q ∗ ∗W 1/2Q 0 γI ∗R1/2Y 0 0 γI

⎥⎥⎦≥ 0, l ∈ 1, . . . , L, (9.1.7)

[1 ∗

x(k) Q

]

≥ 0, (9.1.8)

and implement u(k) = F (k)x(k) = Y Q−1x(k).When the interior-point algorithm is adopted to solve (9.1.6), the compu-

tational burden is proportional to K3L, where K is number of scalar variablesin (9.1.6), and L is the number of rows. For (9.1.6), K = 1

2 (n2 + n) + mn +12 (q2 + q) + 1, L = (3n + m)L + 2n + 2q + 1. Hence, increasing L linearlyincreases the computational burden.

In on-line approach, (9.1.6) is solved at each time k. Due to this reason,on-line approach can only be applied on slow dynamics and low dimensionalsystems. Based on (9.1.6), we can easily obtain the corresponding off-lineapproach.Algorithm 9.1 (Off-line MPC)

Stage 1. Off-line, choose states xi, i ∈ 1, . . . , N. Substitute x(k) in(9.1.8) by xi, and solve (9.1.6) to obtain the corresponding ma-trices Qi, Yi, ellipsoids εx,i =

x ∈ Rn|xTQ−1i x ≤ 1

and feed-back gains Fi = YiQ

−1i . Note that xi should be chosen such that

εx,j ⊂ εx,j−1, ∀j ∈ 2, . . . , N. For each i = N , check if the follow-ing is satisfied:

Q−1i − (Al +BlFi+1)

TQ−1i (Al +BlFi+1) > 0, l ∈ 1, . . . , L. (9.1.9)

© 2010 b T l d F G LLC

Page 240: 1420085301 Predictive Control

224 Chapter 9. Open-loop optimization and closed-loop optimization

Stage 2. On-line, at each time k, adopt the following state feedback law:

u(k) = F (k)x(k) =F (α(k))x(k), x(k) ∈ εx,i, x(k) /∈ εx,i+1, i = NFNx(k), x(k) ∈ εx,N

(9.1.10)where F (α(k)) = α(k)Fi + (1− α(k))Fi+1, and

i) if (9.1.9) is satisfied, then 0 < α(k) ≤ 1, and x(k)T[

α(k)Q−1i +

(1− α(k))Q−1i+1

]

x(k) = 1;ii) if (9.1.9) is not satisfied, then α(k) = 1.

Now, suppose a fixed feedback gain K is obtained which asymptoticallystabilizes (9.1.1) for the unconstrained case (for example, we can give an x(k),and solve (9.1.6) to obtain K = Y Q−1). Based on K, we can find a matrixQx,χ larger than Q. The ellipsoidal set corresponding to Qx,χ is the region ofattraction of the new approach in this section.

9.1.2 Efficient algorithm

Define

u(k + i|k) = Kx(k + i|k) + c(k + i|k), c(k + nc + i|k) = 0, ∀i ≥ 0 (9.1.11)

where nc is the switching horizon of the new approach (although it is notdenoted as N). Thus, the state predictions are represented by

x(k+i+1|k) = A(k+i)x(k+i|k)+B(k+i)c(k+i|k), x(k|k) = x(k) (9.1.12)

where A(k + i) = A(k + i) +B(k + i)K.Equation (9.1.12) is equivalent to the following autonomous state space

model:

χ(k + i+ 1|k) = Φ(k + i)χ(k + i|k),

Φ(k + i) =[A(k + i) [B(k + i) 0 · · · 0]

0 Π

]

, (9.1.13)

χ =[xf

]

, f(k + i|k) =

⎢⎢⎢⎣

c(k + i|k)c(k + 1 + i|k)

...c(k + nc − 1 + i|k)

⎥⎥⎥⎦, Π =

⎢⎢⎢⎢⎢⎢⎢⎣

0m Im 0m · · · 0m

0m 0m Im. . .

...

0m 0m 0m. . . 0m

.... . . . . . . . . Im

0m · · · 0m 0m 0m

⎥⎥⎥⎥⎥⎥⎥⎦

,

(9.1.14)

where 0m is anm-ordered zero matrix and Im is anm-ordered identity matrix.Consider the following ellipsoid:

εχ =

χ ∈ Rn+mnc |χTQ−1χ χ ≤ 1

. (9.1.15)

© 2010 b T l d F G LLC

Page 241: 1420085301 Predictive Control

9.1. A simple approach based on partial closed-loop optimization 225

Denote Q−1χ =

[Q11 QT21Q21 Q22

]

, Q11 ∈ Rn×n, Q21 ∈ Rmnc×n, Q22 ∈Rmnc×mnc and define

εx,χ = x ∈ Rn|xTQ−1x,χx ≤ 1, Qx,χ =

[

Q11 − QT21Q−122 Q21

]−1

= TQχTT ,

(9.1.16)where T is defined by x = Tχ. The invariance of εχ (εx,χ) is ensured by

ΦTl Q−1χ Φl −Q−1

χ ≤ 0 ⇔[

Qχ QχΦTlΦlQχ Qχ

]

≥ 0, l ∈ 1, . . . , L. (9.1.17)

Below we explain, when the state lies inside of εx,χ, how to guarantee thesatisfaction of hard constraints. When (9.1.17) is satisfied, εx,χ is an invariantellipsoid. Let ξs be the s-th row of the q-ordered identity matrix, Em be thefirst m rows of the mnc-ordered identity matrix. We can make the followingdeductions:

maxi≥0|ξs[Gx(k + i|k) +Du(k + i|k)]|

= maxi≥0|ξs[(G+DK)x(k + i|k) +Dc(k + i|k)]|

= maxi≥0|ξs[(G+DK)x(k + i|k) +DEmf(k + i|k)]|

= maxi≥0|ξs[G+DK DEm]χ(k + i|k)|

= maxi≥0

∣∣∣ξs[G+DK DEm]Q1/2

χ Q−1/2χ χ(k + i|k)

∣∣∣

≤maxi≥0

∥∥∥ξs[G+DK DEm]Q1/2

χ

∥∥∥

∥∥∥Q−1/2

χ χ(k + i|k)∥∥∥

≤∥∥∥ξs[G+DK DEm]Q1/2

χ

∥∥∥ .

Hence, if the following is satisfied:∥∥∥ξs[G+DK DEm]Q1/2

χ

∥∥∥ ≤ gs,inf ⇔ g2

s,inf−[(G+DK)s DsEm]Qχ [(G+DK)s DsEm]T ≥ 0, s ∈ 1, . . . , q,

(9.1.18)

then |ξs[Gx(k + i|k) +Du(k + i|k)]| ≤ gs,inf , s ∈ 1, . . . , q. In (9.1.18), (G+DK)s (Ds) is the s-th row of G+DK (D).

Since the aim is to obtain a larger region of attraction, we can take themaximization of the volume of εx,χ as the criterion of MPC. Maximization ofthe volume of εx,χ is equivalent to the maximization of det(TQχT T ). Then,Qχ can be computed by:

minQχ

log det(TQχT T )−1, s.t. (9.1.17)− (9.1.18). (9.1.19)

© 2010 b T l d F G LLC

Page 242: 1420085301 Predictive Control

226 Chapter 9. Open-loop optimization and closed-loop optimization

Algorithm 9.2

Stage 1. Off-line, ignoring constraints, compute K so as to optimize certainrobust performance (e.g., we can adopt (9.1.6) to compute a K).Obtain Qχ by solving (9.1.19). Increase nc, repeat (9.1.19), untilεx,χ is satisfactory in size.

Stage 2. On-line, at each time k, perform the minimization:

minffT f, s.t. χTQ−1

χ χ ≤ 1. (9.1.20)

and implement u(k) = Kx(k) + c(k|k).If x(0) ∈ εx,χ, then f(0) = −Q−1

22 Q21x(0) is feasible for (9.1.20) since bythis solution, χ(0)TQ−1

χ χ(0) ≤ 1 leads to

x(0)T Q11x(0) ≤ 1− 2f(0)T Q21x(0)− f(0)T Q22f(0)= 1 + x(0)T QT21Q

−122 Q21x(0) (9.1.21)

which is equivalent to x(0)TQ−1x,χx(0) ≤ 1. For x(0) /∈ εx,χ, there does not

exist f(0) such that χ(0)TQ−1χ χ(0) ≤ 1. For f(0) = 0, χ(0)TQ−1

χ χ(0) ≤ 1leads to x(0)T Q11x(0) ≤ 1.

Theorem 9.1.1. (Stability) Suppose there exist K and nc which make(9.1.19) feasible. When x(0) ∈ εx,χ, by adopting Algorithm 9.2, the constraint(9.1.4) is always satisfied and the closed-loop system is asymptotically stable.

Proof. Firstly, when x(0) ∈ εx,χ, the feasible solution exists. Let f(0)∗ bethe solution at the initial time. Since εx,χ is an invariant set, at time k + 1,f(1) = Πf(0)∗ is a feasible solution which yields a smaller cost value (thanthat corresponding to f(0)∗). Certainly, f(1) = Πf(0)∗ is not necessarilythe optimal solution. When the optimal solution f(1)∗ is obtained, a smallercost value (than that corresponding to f(1)) is obtained. By analogy, weknow that the feasibility of (9.1.20) at time k guarantees its feasibility atany k > 0, and the cost value is monotonically decreasing with the evolutionof time. Therefore, by applying Algorithm 9.2, the perturbation item willgradually become zero, and the constraints will be always satisfied. When theperturbation item becomes zero, the control move becomes u = Kx whichcan drive the state to the origin.

Algorithm 9.2 involves on-line optimization. Hence, its on-line computa-tional burden is heavier than off-line approach. However, by properly tuningK and nc, it is easy to make the region of attraction of Algorithm 9.2 largerthan that of off-line approach (compared with respect to the volume). More-over, (9.1.20) is easy to solve and its computational burden is greatly lowerthan that of on-line approach.

© 2010 b T l d F G LLC

Page 243: 1420085301 Predictive Control

9.2. Triple-mode approach 227

In general, on-line approach yields non-ellipsoidal region of attraction. Byadopting Algorithm 9.2 or off-line approach, one can only obtain the ellip-soidal region of attraction. An ellipsoidal region of attraction is conservativein volume.

9.2 Triple-mode approach

Here, “mode” refers to the pattern of control move computation. Since thevolume of εx,χ is conservative, when the state lies outside of εx,χ, we can adoptthe standard approach of predictive control.

Suppose K = F1, where F1 is the off-line state feedback gain in Algorithm9.1. Then ε1 = x|xT Q11x ≤ 1 is a region of attraction for F1, ε1 is invariant,and Q(k) = Q−1

11 is a feasible solution for (9.1.6) with x(k) = x1. Note thatthe region of attraction of the previous off-line approach is εx,1 (rather thanε1), while the region of attraction of Algorithm 9.2 is εx,χ.

Clearly, εx,χ ⊇ ε1. However, we can neither ensure εx,1 ⊇ ε1 nor guaranteeεx,1 ⊆ ε1. εx,χ ⊇ εx,1 if and only if Q11 − QT21Q−1

22 Q21 ≤ Q−11 . If we choose

K = F1, then we can obtain εx,χ ⊇ εx,1 by tuning nc and Qχ.In triple-mode MPC, the free perturbation items will be utilized, which

can enlarge the region of attraction of the closed-loop system. Hence, forsimplicity, one does not have to select (9.1.19) to maximize εx,χ; one canchoose K = F1 and maximize Qχ in the following simple way:

minρ,Qχ

ρ, s.t. (9.1.17)− (9.1.18) and, (9.2.1)

ρTQχTT −Q1 ≥ 0 ⇔

[TQχT

T ∗Q

1/21 ρI

]

≥ 0. (9.2.2)

Note that (9.2.2) imposes εx,χ ⊇ 1ρ · εx,1. Thus, by minimizing ρ, εx,χ can

be maximized in some sense. If ρ < 1, then εx,χ ⊃ εx,1. Note that, by applying(9.1.19), it is not necessary that εx,χ ⊃ εx,1, which is the main reason for usto adopt (9.2.1)-(9.2.2).

Define A(·) = A(·)+B(·)K. Then, the polytopic description of [A(·)|B(·)]can inherit that of [A(·)|B(·)]. The prediction of the state is given by:

⎢⎢⎢⎣

x(k + 1|k)x(k + 2|k)

...x(k + N |k)

⎥⎥⎥⎦

=L∑

l0···lN−1=1

⎪⎪⎪⎨

⎪⎪⎪⎩

N−1∏

h=0

ωlh(k + h)

⎢⎢⎢⎣

xl0(k + 1|k)xl1l0(k + 2|k)

...xlN−1···l1l0(k + N |k)

⎥⎥⎥⎦

⎪⎪⎪⎬

⎪⎪⎪⎭

,

(9.2.3)

© 2010 b T l d F G LLC

Page 244: 1420085301 Predictive Control

228 Chapter 9. Open-loop optimization and closed-loop optimization

where⎡

⎢⎢⎢⎣

xl0(k + 1|k)xl1l0(k + 2|k)

...xlN−1···l1l0(k + N |k)

⎥⎥⎥⎦

=

⎢⎢⎢⎣

Al0Al1Al0

...∏N−1i=0 AlN−1−i

⎥⎥⎥⎦x(k)

+

⎢⎢⎢⎢⎣

Bl0 0 · · · 0

Al1Bl0 Bl1. . .

......

.... . . 0

∏N−2i=0 AlN−1−i

Bl0∏N−3i=0 AlN−1−i

Bl1 · · · BlN−1

⎥⎥⎥⎥⎦

⎢⎢⎢⎣

c(k|k)c(k + 1|k)

...c(k + N − 1|k)

⎥⎥⎥⎦.

(9.2.4)

As in Chapter 8, xli−1···l1l0(k + i|k) (i ∈ 1, · · · , N) are called “vertex statepredictions.”

Algorithm 9.3 (Triple-mode robust MPC)Off-line, choose K, nc and N . Solve problem (9.2.1)-(9.2.2) to obtain ma-

trices Qχ, Qx,χ and ellipsoidal set εx,χ.On-line, at each time k,

i) if x(k) ∈ εx,χ, perform (9.1.20);

ii) if x(k) /∈ εx,χ, solve:

minc(k),c(k+1|k),··· ,c(k+N+nc−1|k)

J(k) =

∥∥[c(k|k)T c(k + 1|k)T · · · c(k + N + nc − 1|k)T ]

∥∥

2

2, (9.2.5)

s.t. − g ≤ (G+DK)x(k) +Dc(k) ≤ g,− g ≤ (G+DK)xli−1···l0(k + i|k) +Dc(k + i|k) ≤ g,

∀i ∈ 1, . . . , N − 1, li−1 ∈ 1, . . . , L, (9.2.6)∥∥[x(k + N |k)T c(k + N |k)T · · · c(k + N + nc − 1|k)T ]

∥∥

2

Q−1χ

≤ 1, (9.2.4), ∀l0, · · · , lN−1 ∈ 1, . . . , L. (9.2.7)

Then, implement u(k) = Kx(k) + c(k|k).From Algorithm 9.3, we can see that triple-mode MPC belongs to MPC

based on the partial closed-loop optimization.

Theorem 9.2.1. (Stability) Suppose: (i) x(0) ∈ εx,χ, or (ii) x(0) /∈ εx,χ but(9.2.5)-(9.2.7) has a feasible solution. Then by applying Algorithm 9.3, theconstraint (9.1.4) is always satisfied and the closed-loop system is asymptoti-cally stable.

© 2010 b T l d F G LLC

Page 245: 1420085301 Predictive Control

9.2. Triple-mode approach 229

Proof. The details for satisfaction of the constraint (9.1.4) are omitted here.Suppose (i) holds, then according to Theorem 9.1.1, the closed-loop system isstable. Suppose (ii) holds, and (9.2.5)-(9.2.7) has a feasible solution

c(k|k)∗, c(k + 1|k)∗, · · · , c(k + N + nc − 1|k)∗ (9.2.8)

at time k. Denote the corresponding performance cost under (9.2.8) as J∗(k).Due to (9.2.7), (9.2.8) guarantees x(k + N + j|k) ∈ εx,χ, 0 ≤ j ≤ nc. Hence,at time k + 1, the following solution is feasible for (9.2.5)-(9.2.7):

c(k + 1|k)∗, c(k + 2|k)∗, · · · , c(k + N + nc − 1|k)∗, 0

. (9.2.9)

By applying (9.2.9) at time k + 1 ((9.2.9) may not be actually adopted),the resultant performance cost is

J(k + 1) = J∗(k)− c(k|k)∗T c(k|k)∗. (9.2.10)

After J(k + 1) is optimized, the optimum J∗(k + 1) ≤ J(k + 1) ≤ J∗(k).Therefore, J∗(k) will be monotonically decreasing such that the state will befinally driven into εx,χ inside of which (i) becomes true.

The three modes of triple mode MPC in Algorithm 9.3 are: (i) f = 0,u = Kx inside of ε1; (ii) u = Kx+ c, f = 0 inside of εx,χ\ε1; (iii) u = Kx+ coutside of εx,χ.

Proposition 9.2.1. (Monotonicity) Consider Algorithm 9.3. By increasingeither nc or N , the region of attraction of the overall closed-loop system willnot shrink, i.e., the region of attraction by increasing nc or N always includesthe original.

Proof. Suppose

c(k|k)∗, c(k + 1|k)∗, · · · , c(k + N + nc − 1|k)∗ is a feasi-ble solution for N, nc, then c(k|k)∗, c(k + 1|k)∗, · · · , c(k + N + nc −1|k)∗, 0 is a feasible solution when N , nc are replaced by N + 1, nc orN, nc + 1.

In general, it is not necessary to take a large nc. For reasonable nc, theon-line computation is efficient when x(k) ∈ εx,χ. However, εx,χ may be un-satisfactory in volume since its shape is restricted as ellipsoid. In general,compared with increasing nc, increasing N is more efficient for expanding theregion of attraction.

However, the selection of N should be more careful in order to compro-mise between the desired region of attraction and the on-line computationalburden. For any N ≥ 1, the overall region of attraction of the closed-loopsystem is not smaller than εx,χ in any direction. However, by increasing N ,the computational burden increases exponentially.

It is easy to transform (9.2.5)-(9.2.7) into an LMI optimization prob-lem. By the fastest interior-point algorithms, the computational complex-ity involved in this LMI optimization is proportional to K3L where K =

© 2010 b T l d F G LLC

Page 246: 1420085301 Predictive Control

230 Chapter 9. Open-loop optimization and closed-loop optimization

(nc + N)m+ 1, L = (ncm+ n+ 1)LN + 2q∑N−1i=1 Li + (nc + N)m+ 2q + 1.

Hence, increasing n, q only linearly increases the computational complexity.For larger n, q and smaller L, N, nc, the computation involved in thisoptimization can be less expensive than that involved in (9.1.6).

9.3 Mixed approach

After applying triple-mode control, there is still conservativeness since thesingle-valued perturbation items c(k|k), c(k + 1|k), · · · , c(k + N − 1|k) haveto deal with all possible state evolutions. In this section, in order to achievelarger region of attraction, when the state lies outside of εx,χ we adopt the“vertex perturbation items”; in order to lower down the on-line computationalburden, inside of εx,1, the off-line approach is adopted. Through these twomeans, the achieved region of attraction can be mutual-complementary withthat of on-line approach; at the same time, the on-line computational burdenis much smaller than that of on-line approach.

Here, the so-called “mixed” means that there are both partial closed-loopoptimization and closed-loop optimization, and there are both standard ap-proach and off-line approach.

9.3.1 Algorithm

In Chapter 8, we have adopted the following “within-horizon feedback”:

u (k) =

u(k|k),L∑

l0=1

ωl0(k)ul0(k + 1|k), · · · ,

L∑

l0···lN−2=1

N−2∏

h=0

ωlh(k + h)

⎠ ulN−2···l0(k + N − 1|k)⎫

and optimized

u(k) =

u(k|k), ul0(k + 1|k), · · · , ulN−2···l0(k + N − 1|k)|l0, · · · ,lN−2 = 1 . . . L

.

Similarly to Chapter 8, in the method of this chapter, outside of εx,χ, thefollowing “vertex perturbation item” and “parameter-dependent perturbation

© 2010 b T l d F G LLC

Page 247: 1420085301 Predictive Control

9.3. Mixed approach 231

item” are utilized:

c(k) =

c(k|k), cl0(k + 1|k), · · · , clN−2···l0(k + N − 1|k)|l0, · · · ,lN−2 = 1 . . . L

, (9.3.1)

c (k) =

c(k|k),L∑

l0=1

ωl0(k)cl0(k + 1|k), · · · ,

L∑

l0···lN−2=1

N−2∏

h=0

ωlh(k + h)

⎠ clN−2···l0(k + N − 1|k)⎫

⎭. (9.3.2)

Equation (9.3.2) takes perturbation items for all the vertices of the uncertainstate predictions.

The prediction of the state is given by (9.2.3), where

⎢⎢⎢⎣

xl0(k + 1|k)xl1l0(k + 2|k)

...xlN−1···l1l0(k + N |k)

⎥⎥⎥⎦

=

⎢⎢⎢⎣

Al0Al1Al0

...∏N−1i=0 AlN−1−i

⎥⎥⎥⎦x(k)

+

⎢⎢⎢⎢⎣

Bl0 0 · · · 0

Al1Bl0 Bl1. . .

......

.... . . 0

∏N−2i=0 AlN−1−i

Bl0∏N−3i=0 AlN−1−i

Bl1 · · · BlN−1

⎥⎥⎥⎥⎦

×

⎢⎢⎢⎣

c(k|k)cl0(k + 1|k)

...clN−2···l1l0(k + N − 1|k)

⎥⎥⎥⎦. (9.3.3)

In view of (9.3.1), (9.3.2), (9.2.3) and (9.3.3), we revise problem (9.2.5)-(9.2.7)as:

minc(k),c(k+N |k),··· ,c(k+N+nc−1|k)

max[A(k+i)|B(k+i)]∈Ω,i∈0,...,N−1

J(k)

=∥∥[c(k|k)T · · · c(k + N − 1|k)T · · · c(k + N + nc − 1|k)T ]

∥∥

2

2, (9.3.4)

s.t. − g ≤ (G+DK)x(k) +Dc(k) ≤ g,− g ≤ (G+DK)xli−1···l0(k + i|k) +Dcli−1···l0(k + i|k) ≤ g,∀i ∈ 1, . . . , N − 1, li−1 ∈ 1, . . . , L, (9.3.5)

∥∥[x(k + N |k)T c(k + N |k)T · · · c(k + N + nc − 1|k)T ]

∥∥

2

Q−1χ

≤ 1, ∀l0, · · · , lN−1 ∈ 1, . . . , L. (9.3.6)

© 2010 b T l d F G LLC

Page 248: 1420085301 Predictive Control

232 Chapter 9. Open-loop optimization and closed-loop optimization

Note that in (9.3.4),

c(k + 1|k), · · · , c(k + N − 1|k) are parameter-dependent perturbation items, which are uncertain values. Hence, the op-timization problem is of “min-max” form.

For solving (9.3.4)-(9.3.6), let us define

∥∥[cl0···lN−2(k)T c(k + N |k)T · · · c(k + N + nc − 1|k)T ]

∥∥

2

2≤ η,

∀l0, · · · , lN−2 ∈ 1, . . . , L, (9.3.7)

where cl0···lN−2(k) =[

c(k|k)T , cl0(k + 1|k)T , · · · , clN−2···l0(k + N − 1|k)T ]T ,and η is a scalar. By applying (9.2.3), (9.3.3) and Schur complement, (9.3.6)and (9.3.7) can be transformed into the following LMIs:

[1 ∗

[xlN−1···l1l0(k + N |k)T c(k + N |k)T c(k + N + nc − 1|k)T ]T Qχ

]

≥ 0,

xlN−1···l1l0(k + N |k) =N−1∏

i=0

AlN−1−ix(k) +

N−2∏

i=0

AlN−1−iBl0c(k|k) + · · ·+BlN−1

clN−2, ···l0(k + N − 1|k), ∀l0, · · · , lN−1 = 1, . . . , L, (9.3.8)[

η ∗[cl0···lN−2(k)T c(k + N |k)T · · · c(k + N + nc − 1|k)T ]T I

]

≥ 0,

∀l0, · · · , lN−2 ∈ 1, . . . , L. (9.3.9)

Constraint (9.3.5) can be transformed into the following LMI:

⎢⎢⎢⎣

gg...g

⎥⎥⎥⎦≤G

⎢⎢⎢⎣

IAl0...

∏N−2i=0 AlN−2−i

⎥⎥⎥⎦x(k)

+

⎪⎪⎪⎪⎨

⎪⎪⎪⎪⎩

G

⎢⎢⎢⎢⎣

0 0 · · · 0

Bl0 0. . .

......

. . . . . . 0∏N−3i=0 AlN−2−i

Bl0 · · · BlN−20

⎥⎥⎥⎥⎦

+ D

⎪⎪⎪⎪⎬

⎪⎪⎪⎪⎭

×

⎢⎢⎢⎣

c(k|k)cl0(k + 1|k)

...clN−2···l1l0(k + N − 1|k)

⎥⎥⎥⎦≤

⎢⎢⎢⎣

gg...g

⎥⎥⎥⎦,

© 2010 b T l d F G LLC

Page 249: 1420085301 Predictive Control

9.3. Mixed approach 233

G =

⎢⎢⎢⎢⎣

G+DK 0 · · · 0

0 G+DK. . .

......

. . . . . . 00 · · · 0 G+DK

⎥⎥⎥⎥⎦

, D =

⎢⎢⎢⎢⎣

D 0 · · · 0

0 D. . .

......

. . . . . . 00 · · · 0 D

⎥⎥⎥⎥⎦

,

∀l0, · · · , lN−2 ∈ 1, . . . , L. (9.3.10)

In this way, problem (9.3.4)-(9.3.6) is transformed into the following LMIoptimization problem:

minη,c(k),c(k+N |k),··· ,c(k+N+nc−1|k)

η, s.t. (9.3.8)− (9.3.10). (9.3.11)

Algorithm 9.4 (Mixed robust MPC)

Stage 1. See Stage 1 of Algorithm 9.1.

Stage 2. Off-line, choose K = F1, nc and N . Solve problem (9.2.1)-(9.2.2) toobtain the matrix Qχ, Qx,χ and ellipsoidal set εx,χ.

Stage 3. On-line, at each time k,

(a) if x(k) ∈ εx,1, see Stage 2 of Algorithm 9.1;

(b) if x(k) ∈ εx,χ\εx,1, then perform (9.1.20) and implement u(k) =Kx(k) + c(k|k);

(c) if x(k) /∈ εx,χ, then solve (9.3.11) and implement u(k) = Kx(k) +c(k|k).

In Algorithm 9.4, εx,χ ⊇ εx,1 can be guaranteed. However, by extensivelychoosing xi, it may occur that εx,χ becomes very close to εx,1. In this case, wecan remove Stage 3(b) from Algorithm 9.4 and revise Stage 3(c) accordingly.

Theorem 9.3.1. (Stability) Suppose: (i) x(0) ∈ εx,1, or (ii) x(0) ∈ εx,χ\εx,1,or (iii) x(0) /∈ εx,χ but (9.3.11) has a feasible solution. Then by applyingAlgorithm 9.4, the constraint (9.1.4) is always satisfied and the closed-loopsystem is asymptotically stable.

Proof. The details for satisfaction of constraint are omitted here. Suppose (i)holds. Then according to Stage 3(a) and off-line approach in Chapter 7, thestate will be driven to the origin. Suppose (ii) holds. Then the state will bedriven into εx,1 according to Stage 3(b) and stability of Algorithm 9.2, and(i) becomes true.

Suppose (iii) holds and (9.3.11) has a feasible solution at time k:

c(k)∗, c(k + N |k)∗, · · · , c(k + N + nc − 1|k)∗ . (9.3.12)

Denote the corresponding performance cost under (9.3.12) as J∗(k). Due to(9.3.8), according to Algorithm 9.3 the solution (9.3.12) guarantees x(k+ N+

© 2010 b T l d F G LLC

Page 250: 1420085301 Predictive Control

234 Chapter 9. Open-loop optimization and closed-loop optimization

j|k) ∈ εx,χ, 0 ≤ j ≤ nc. Hence, at time k+1, the following solution is feasiblefor (9.3.11):

c(k + 1), c(k + N + 1|k)∗, · · · , c(k + N + nc − 1|k)∗, 0

(9.3.13)

where, for constructing c(k + 1),

cl0···lN−2(k + 1) =

[L∑

l0=1

ωl0(k)cl0(k + 1|k)∗T , · · · ,

L∑

l0=1

ωl0(k)clN−2···l0(k + N − 1|k)∗T , c(k + N |k)∗T

]T

.

Note that c(k + N |k)∗ can be expressed as∑Ll0=1 ωl0(k)c

lN−1···l0(k + N |k)∗or c(k + N |k)∗ = clN−1···l0(k + N |k)∗. By applying (9.3.13) at time k + 1(actually this is not applied), the resultant performance cost J(k + 1) =J∗(k)− c(k|k)∗T c(k|k)∗.

After J(k + 1) is optimized at time k + 1, the optimum J∗(k + 1) ≤J(k + 1) ≤ J∗(k). Therefore, J∗(k) will be monotonically decreasing withevolution of k, such that the state will be finally driven into εx,χ inside ofwhich (ii) becomes true.

Proposition 9.3.1. (Monotonicity) Consider Algorithm 9.4. By increasingeither nc or N , the region of attraction of the overall close-loop system willnot shrink.

Proof. The proof is the same as Proposition 9.2.1.

9.3.2 Joint superiorities

By the fastest interior-point algorithms, the computational complexity in-volved in (9.3.11) is proportional to K3L, where K = m

∑N−1i=0 Li + ncm+ 1,

L = (ncm+n+ 1)LN + (ncm+ Nm+2q+ 1)LN−1 + 2q∑N−2

i=0 Li. Hence, in-creasing n or q only linearly increases the computational complexity. For largern, q and smaller L, N, nc the computation involved in this optimizationcan be less expensive than that involved in (9.1.6).

In Algorithm 9.4, the selection of N should compromise between the de-sired region of attraction and the on-line computational burden. By increas-ing N , the computational burden will increase exponentially. For the sameN > 1, the computation involved in Algorithm 9.4 is more expensive thanthat involved in Algorithm 9.3. However, any region of attraction achievablevia Algorithm 9.3 can also be achieved via Algorithm 9.4, while the region ofattraction achievable via Algorithm 9.4 may not be achievable via Algorithm9.3.

© 2010 b T l d F G LLC

Page 251: 1420085301 Predictive Control

9.3. Mixed approach 235

Denote the region of attraction by solving (9.2.5)-(9.2.7) alone as P , and(9.3.11) alone as Pv. Then for the same K, nc and N , Pv ⊇ P . Hence, forachieving a specified region of attraction, by utilizing (9.3.11) smaller N canbe chosen. The reason is that the single-valued perturbation items c(k|k),c(k+ 1|k), · · · , c(k+ N − 1|k) in Algorithm 9.3 have to deal with all possiblestate evolutions; “the vertex perturbation items” in Algorithm 9.4, on theother hand, define different perturbation items for different vertices of theuncertainty evolution.

Consider on-line approach based on (9.1.6), off-line approach and Algo-rithm 9.2. None of them is superior to others in both computational efficiencyand size of the region of attraction. Note that, in Algorithm 9.4, the compu-tation of εx,χ can also adopt the procedure as in Algorithm 9.2. Algorithm9.4 can inherit all the merits of Algorithms 9.1 and 9.2, and can achieve aregion of attraction complementary with respect to on-line robust MPC (i.e.,the region of attraction of Algorithm 9.4 does not necessarily include that ofon-line approach, and vice versa). The average computational burden incurredby Algorithm 9.4 can be much smaller than on-line robust MPC.

Remark 9.3.1. In mixed MPC, it is not certain that εx,1 includes ε1, orε1 includes εx,1. Hence, it is not guaranteed that the switching is continuouswith respect to the system state. However, it is easy to modify the algorithmsuch that the switching is continuous with respect to the system state.

Remark 9.3.2. In triple-mode robust MPC and mixed robust MPC, theoptimization of the volume of εx,χ has certain artificial features.

9.3.3 Numerical example

Consider[x(1)(k + 1)x(2)(k + 1)

]

=[

1− β βK(k) 1− β

] [x(1)(k)x(2)(k)

]

+[

10

]

u(k),

where K(k) ∈ [0.5, 2.5] is an uncertain parameter and β a constant. Theconstraint is |u| ≤ 2. Take W = I and R = 1. The true state is generated byK(k) = 1.5 + sin(k).

Case A: β = 0Denote x

(1),max1 as the maximum value such that, when x(k) = x1 =

[x(1)1 , 0]T , the corresponding optimization problem remains feasible. Then

x(1),max1 = 59.2. In Algorithm 9.1, choose xi = [x(1)

i , 0]T , x(1)i = 10, 18, 26,

34, 42, 50, 59.2. The ellipsoidal regions of attraction by Algorithm 9.1 areshown in Figure 9.3.1 in dotted lines. By adopting K = F1, choosing nc = 5and solving (9.2.1)-(9.2.2), we then find the ellipsoidal region of attractionεx,χ, shown in Figure 9.3.1 in solid line. Further, choose N = 3, then thenon-ellipsoidal regions of attraction P (corresponding to (9.2.5)-(9.2.7)) and

© 2010 b T l d F G LLC

Page 252: 1420085301 Predictive Control

236 Chapter 9. Open-loop optimization and closed-loop optimization

-85 -68 -51 -34 -17 0 17 34 51 68 85-4200

-2800

-1400

0

1400

2800

4200

1x

2x

,ε x X

,1ε x

P

Figure 9.3.1: Regions of attraction when β = 0.

Pv (corresponding to (9.3.11)) are depicted in Figure 9.3.1 in dotted line andsolid line, respectively.

In case A, P and Pv are nearly identical. In Figure 9.3.1, P , Pv for N = 2and N = 1 and P are also given, P denoting the region of attraction of on-linerobust MPC based on (9.1.6) in dash-dotted line. The solid lines from outsideto inside are: Pv (N = 3), Pv (N = 2), Pv = P (N = 1), εx,χ.

We give the following conclusions about the regions of attraction whichare general (not restricted to this example):

• P ⊇ εx,1.• P and εx,χ can be mutual-complementary (εx,χ is calculated by either

(9.1.19) or (9.2.1)-(9.2.2)).

• P and P can be mutual-complementary.

• P and Pv can be mutual-complementary.

• For any N ≥ 1, Pv ⊇ P ⊇ εx,χ.• By increasing N , it can result in Pv ⊇ P (however, the computational

burden is prohibitive for larger N).

© 2010 b T l d F G LLC

Page 253: 1420085301 Predictive Control

9.3. Mixed approach 237

-16 -12 -8 -4 0 4 8 12 16-60

-40

-20

0

20

40

60

1x

2x

, ,1,ε εx xX

vP P

P

Figure 9.3.2: Regions of attraction when β = 0.1.

• Pv is not necessarily much larger than P (one can utilize single pertur-bation items instead of vertex ones in this case).

Choose x(0) = [−60 3980]T and compute x(201). It takes 12 secondsby applying on-line robust MPC based on (9.1.6), and less than 1 second byapplying Algorithm 9.4. In the simulation, we have utilized LMI Toolbox ofMatlab 5.3 on our laptop (1.5G Hz Pentium IV CPU, 256 MB Memory).

Case B: β = 0.1The details, if not specified, are the same as those in Case A. x(1),max

1 =4.48. Choose xi = [x(1)

i , 0]T , x(1)i = 1.0, 1.4, 1.8, 2.2, 2.6, 3.0, 3.4, 3.8, 4.2,

4.48. The results are shown in Figure 9.3.2. In this case, εx,χ and εx,1 arenearly identical.

Choose x(0) = [−7.5 35]T and compute x(201). It takes 13 seconds byapplying on-line robust MPC based on (9.1.6), and less than 1 second byapplying Algorithm 9.4.

Then, in Algorithm 9.1, let us choose xi = [x(1)i , 0]T , x(1)

i = 1.0, 1.4,1.8, 2.2, 2.6, 3.0, 3.4, 3.8, 4.2. For three initial states, the closed-loop statetrajectories with Algorithm 9.4 are shown in Figure 9.3.3 in marked lines. Thecorresponding regions of attraction are also depicted in Figure 9.3.3.

Case C: β = −0.1

© 2010 b T l d F G LLC

Page 254: 1420085301 Predictive Control

238 Chapter 9. Open-loop optimization and closed-loop optimization

-15 -10 -5 0 5 10 15-60

-40

-20

0

20

40

60

1x

2x

Figure 9.3.3: Closed-loop state trajectories by applying Algorithm 9.4 whenβ = 0.1.

The details, if not specified, are the same as those in Case A and Case B.x

(1),max1 = 2.12. Choose xi = [x(1)

i , 0]T , x(1)i = 1.0, 1.15, 1.3, 1.45, 1.6, 1.75,

1.9, 2.12. The results are shown in Figure 9.3.4. In this case, εx,χ and εx,1 arenearly identical.

Choose x(0) = [−2.96 10.7]T and compute x(201). It takes 12 secondsby applying on-line robust MPC based on (9.1.6), and less than 1 second byapplying Algorithm 9.4.

9.4 Approach based on single-valued open-loop optimization and its deficiencies

In section 8.5 we have given an on-line MPC for systems with polytopic de-scription, where the following is defined:

u(k + i|k) = F (k + i|k)x(k + i|k) + c(k + i|k), F (·|0) = 0, (9.4.1)

where F (k+i|k), k > 0, i ∈ 0, 1, . . . , N−1 are always carried over from theprevious sampling time, i.e., for k > 0, take F (k + i|k) = F (k + i|k − 1), i ∈0, 1, . . . , N − 2, F (k +N − 1|k) = F (k − 1).

© 2010 b T l d F G LLC

Page 255: 1420085301 Predictive Control

9.4. Single-valued open-loop optimization and its deficiencies 239

-3.6 -2.4 -1.2 0 1.2 2.4 3.6 -12.4

-9.3

-6.2

-3.1

0

3.1

6.2

9.3

12.4

1x

2x

, ,1,ε εx xX

vP P

P

Figure 9.3.4: Regions of attraction when β = −0.1.

For N > 1, it is apparent that, at k = 0, this approach is open-loop MPC;for k ≥ N , this approach becomes partial feedback MPC. For 0 < k < N , thisapproaches changes gradually from open-loop MPC to partial feedback MPC.

In open-loop MPC, if u(k|k), u(k + 1|k), · · · , u(k + N − 1|k) are single-valued, then the corresponding is the single-valued open-loop MPC. Theso-called single-valued means that, each control move u(k + i|k) within theswitching horizon is a fixed value. In section 8.6, another open-loop MPC isaddressed, but where u(k + 1|k), · · · , u(k + N − 1|k) are parameter depen-dent. Due to the parameter-dependent nature, there are an infinite number ofpossible values of u(k+ 1|k), · · · , u(k+N − 1|k), which are convex combinedvalues of the “vertex values.” For N > 1, we call the strategy in section 8.6parameter-dependent MPC.

Let us still consider the system, constraints and optimization problem as insection 8.5. We can give single-valued MPC (N > 1), the only difference withthe method in section 8.5 being the substitution of c(k|k), c(k+1|k), · · · , c(k+N − 1|k) by u(k|k), u(k + 1|k), · · · , u(k +N − 1|k). Simply, the optimizationproblem can be approximated by the following optimization problem:

minu(k|k),··· ,u(k+N−1|k),γi,γ,Q,Y,Z,Γ

N−1∑

i=0

γi + γ, s.t. (9.4.3)− (9.4.9), (9.4.2)

© 2010 b T l d F G LLC

Page 256: 1420085301 Predictive Control

240 Chapter 9. Open-loop optimization and closed-loop optimization

[Z YY T Q

]

≥ 0, Zjj ≤ u2j,inf , j ∈ 1, . . . ,m, (9.4.3)

⎢⎢⎣

Q ∗ ∗ ∗AlQ+BlY Q ∗ ∗W 1/2Q 0 γI ∗R1/2Y 0 0 γI

⎥⎥⎦≥ 0, ∀l ∈ 1, . . . , L, (9.4.4)

[

Q ∗Ψ (AlQ+BlY ) Γ

]

≥ 0, Γss ≤ ψ2s,inf , ∀l ∈ 1, . . . , L, s ∈ 1, . . . , q,

(9.4.5)[

γ0 ∗u(k|k) R−1

]

≥ 0,

γi ∗ ∗vli−1···l1l0(k + i|k) W−1 ∗

u(k + i|k) 0 R−1

⎦ ≥ 0,

l0, l1, · · · li−1 ∈ 1, 2, . . . , L, i ∈ 1, . . . , N − 1, (9.4.6)[

1 ∗vlN−1···l1l0(k +N |k) Q

]

≥ 0, l0, l1, · · · lN−1 ∈ 1, 2, . . . , L, (9.4.7)

− u ≤ u(k + i|k) ≤ u, i ∈ 0, 1, . . . , N − 1, (9.4.8)− ψ ≤ Ψvli−1···l1l0(k + i|k) ≤ ψ, l0, l1, · · · li−1 ∈ 1, 2, . . . , L,

i ∈ 1, 2, . . . , N. (9.4.9)

Notice that, in (9.4.2), vli−1···l1l0(k + i|k) should be expressed as function ofu(k|k), u(k + 1|k), · · · , u(k + i− 1|k) (see Lemma 8.5.1).

The only deficiency by applying (9.4.2) is that closed-loop stability is notguaranteed, and stability cannot be proved (this issue has been discussedin [55], and is also considered in [9]). Suppose (9.4.2) is feasible at time k(denoted by ∗). Then whether or not

u(k + i|k + 1) = u∗(k + i|k), i ∈ 1, 2, . . . , N − 1;u(k +N |k + 1) = F ∗(k)x∗(k +N |k) (9.4.10)

is a feasible solution at time k + 1? The answer is negative. When N > 1,x∗(k+N |k) is an uncertain value, and the value given by F ∗(k)x∗(k+N |k) isuncertain. According to the definition of u(k+N |k+1), u(k+N |k+1) is thecontrol move and is a deterministic value. This rationale has been discussedin “feedback MPC” of Chapter 6. Although systems with disturbance (ratherthan polytopic uncertain systems) are discussed in Chapter 6, the results aresuitable for all uncertain system descriptions.

Then, does this mean that the proving method has not been found? Theanswer is, in some situations stability cannot be guaranteed. Notice that, here,the so-called stability guarantee is based on the fact that “the optimizationproblem is feasible for all future time if it is feasible at the initial time” (so-called “recursive feasibility”). The example for not satisfying this “recursivefeasibility” can be found.

© 2010 b T l d F G LLC

Page 257: 1420085301 Predictive Control

9.5. Parameter-dependent open-loop optimization and its properties 241

Remark 9.4.1. For open-loop stable systems, we can take

F (k|k) = F (k + 1|k) = · · · = F (k +N − 1|k) = F (k) = 0

(hence, Y = 0). Thus, partial feedback MPC is equivalent to open-loop MPC,i.e., by adopting open-loop MPC, closed-loop stability can be guaranteed.

9.5 Approach based on parameter-dependentopen-loop optimization and its properties

The approach in section 8.6 is better than feedback MPC with respect tofeasibility and optimality. From the side of feasibility, both feedback MPCand single-valued open-loop MPC are special cases of parameter-dependentopen-loop MPC.

Suppose, within the switching horizon, we define

u(k + i|k) = K(k + i|k)x(k + i|k), i ∈ 1, . . . , N − 1 (9.5.1)

and after the switching horizon, we define

u(k + i|k) = F (k)x(k + i|k), ∀i ≥ N. (9.5.2)

Then, on-line feedback MPC solves the following optimization problem at eachtime k:

minu(k|k),K(k+1|k),K(k+2|k),··· ,K(k+N−1|k),F (k)

max[A(k+i)|B(k+i)]∈Ω,i≥0

J∞(k),

s.t. (9.5.1)− (9.5.2), (9.5.4), (9.5.3)− u ≤ u(k + i|k) ≤ u, − ψ ≤ Ψx(k + i+ 1|k) ≤ ψ, i ≥ 0, (9.5.4)

where

J∞(k) =∞∑

i=0

[‖x(k + i|k)‖2W + ‖u(k + i|k)‖2R]

.

On-line parameter-dependent open-loop MPC solves the following problem ateach time k:

minu(k|k),F (k)

max[A(k+i)|B(k+i)]∈Ω,i≥0

J∞(k), s.t. (8.6.1), (8.6.5), (9.5.2), (9.5.4),

(9.5.5)where

u(k) u(k|k), ul0(k+1|k), · · · , ulN−2···l0(k+N−1|k)|l0, · · · , lN−2 = 1 . . . L.Proposition 9.5.1. Consider N ≥ 2. For the same state x(k), feasibility of(9.5.3) implies feasibility of (9.5.5).

© 2010 b T l d F G LLC

Page 258: 1420085301 Predictive Control

242 Chapter 9. Open-loop optimization and closed-loop optimization

Proof. For feedback MPC, applying (9.5.1) and the definition of polytopicdescription yields

u(k + i|k) = K(k + i|k)L∑

l0···li−1=1

ωli−1(k + i− 1)[Ali−1 +Bli−1K(k + i− 1|k)]

× · · · × ωl1(k + 1)[Al1 +Bl1K(k + 1|k)]× ωl0(k)[Al0x(k)+Bl0u(k|k)], i ∈ 1, . . . , N − 1.

Apparently, u(k + i|k), ∀i ∈ 1, . . . , N − 1 is the convex combination of thefollowing Li control moves:

uli−1···l0(k + i|k) = K(k + i|k)× [Ali−1 +Bli−1K(k + i− 1|k)]× · · · × [Al1 +Bl1K(k + 1|k)]× [Al0x(k) +Bl0u(k|k)],l0, · · · , li−1 ∈ 1, . . . , L, (9.5.6)

i.e.,

u(k + i|k) =L∑

l0···li−1=1

((i−1∏

h=0

ωlh(k + h)

)

uli−1···l0(k + i|k))

,

L∑

l0···li−1=1

(i−1∏

h=0

ωlh(k + h)

)

= 1, i ∈ 1, . . . , N − 1.

Define

˜u(k) u(k|k), ul0(k+1|k), · · · , ulN−2···l0(k+N−1|k)|l0, · · · , lN−2 = 1 . . . L.Then (9.5.3) can be equivalently written as the following optimization prob-lem:

min˜u(k),F (k),K(k+1|k)···K(k+N−1|k)

max[A(k+i)|B(k+i)]∈Ω,i≥0

J∞(k),

s.t. (8.6.1), (8.6.5), (9.5.2), (9.5.4), (9.5.6), with u(k) replaced with ˜u(k).(9.5.7)

Notice that (9.5.1) and (9.5.6) are equivalent and, hence, (9.5.1) is omitted in(9.5.7).

In (9.5.7), K(k+ 1|k), · · · ,K(k+N − 1|k) and ˜u(k) are connected via(9.5.6). Removing (9.5.6) from (9.5.7) yields

min˜u(k),F (k)

max[A(k+i)|B(k+i)]∈Ω,i≥0

J∞(k),

s.t. (8.6.1), (8.6.5), (9.5.2), (9.5.4), with u(k) replaced by ˜u(k). (9.5.8)

Notice that, in (9.5.2), (9.5.4), (8.6.1) and (8.6.5), K(k + 1|k), · · · , K(k +N − 1|k) is not involved. Hence, in the decision variables of (9.5.8), there isno K(k + 1|k), · · · , K(k +N − 1|k).

© 2010 b T l d F G LLC

Page 259: 1420085301 Predictive Control

9.5. Parameter-dependent open-loop optimization and its properties 243

Now, observe (9.5.8) and (9.5.5); we know that they are only differentin notation, i.e., (9.5.8) uses ˜u(k) while (9.5.5) uses u(k). Hence, (9.5.8) and(9.5.5) are equivalent. Moreover, compared with (9.5.8), there is one moreconstraint (9.5.6) in (9.5.7). Therefore, (9.5.8) is easier to be feasible than(9.5.7).

In parameter-dependent open-loop MPC, if we take all the vertex controlmoves for the same k + i|k equal, then we obtain single-valued open-loopMPC; if we add the constraint (9.5.6), then we obtain feedback MPC. Thatis to say, parameter-dependent open-loop MPC is easier to be feasible thanboth single-valued open-loop MPC and feedback MPC.

Notice that, if we add the constraint (9.5.6), then the obtained feed-back MPC cannot be solved via LMI toolbox as that in section 8.6. Hence,parameter-dependent open-loop MPC is a computational outlet for feedbackMPC.

By applying the interior point algorithm, the computational complexitiesof partial feedback MPC in section 8.5, open-loop MPC in section 8.6 andthe optimization problem (9.4.2) are all proportional to K3L (refer to [31]).Denote

a =2 +mn+12m(m+ 1) +

12q(q + 1) +

12n(n+ 1),

b =(1 + n)LN + 2qN∑

j=1

Lj + [1 +Nm+ (N − 1)n]LN−1

+ (4n+m+ q)L+ n+ 2m+ q,

M =N∑

j=1

Lj−1.

Then, for (9.4.2), K = a + mN , L = b + 2mN ; for partial feedback MPC insection 8.5 (when k ≥ N), K = a+mN , L = b+2mM ; for open-loop MPC insection 8.6, K = a+mM , L = b+2mM . (Note that, in order for the comparisonto be made on the same basis, for (9.4.2) and partial feedback MPC in section8.5, a single γ1 is utilized rather than a set of γ0, γ1, · · · , γN−1. Of course,this small revision is not intrinsic.)

In general, on-line parameter-dependent open-loop MPC involves withvery heavy computational burden.

Remark 9.5.1. By listing the various methods, with respect to performance,from the worst to best, we obtain: single-valued open-loop MPC, single-valuedpartial feedback MPC, feedback MPC, parameter-dependent open-loop MPC.By listing these methods, with respect to computational burden, from thesmallest to the largest, we obtain: single-valued open-loop MPC, single-valuedpartial feedback MPC, parameter-dependent open-loop MPC, feedback MPC.However, the list should be re-considered in the concrete situation. In general,

© 2010 b T l d F G LLC

Page 260: 1420085301 Predictive Control

244 Chapter 9. Open-loop optimization and closed-loop optimization

parameter-dependent open-loop MPC and parameter-dependent partial feed-back MPC are equivalent, since the vertex state predictions and vertex controlmoves are all single-valued.

Remark 9.5.2. Consider Algorithm 9.2. If, in (9.1.20), we substitute the orig-inal single-valued perturbation items with the parameter-dependent perturba-tion items, then we obtain the same result as Algorithm 9.2. That is to say, inAlgorithm 9.2, it is not necessary to adopt the parameter-dependent perturba-tion items. Thus, although Algorithm 9.2 has the appearance of single-valuedpartial feedback MPC, it is actually parameter-dependent partial feedbackMPC. If, Remark 9.5.1 is also considered, then Algorithm 9.2 is actually feed-back MPC; an extra constraint is added in this feedback MPC problem, i.e.,the region of attraction is an invariant ellipsoid.

Remark 9.5.3. The varying horizon off-line approach in Chapter 7 can beregarded as feedback MPC. For nominal system, open-loop MPC and feedbackMPC are equivalent.

Remark 9.5.4. The various classifications of MPC can sometimes be blurry,i.e., there is no clear boundary.

9.6 Approach with unit switching horizon

By taking N = 1 (see [47]), we always obtain feedback MPC. Then, it shouldoptimize u(k|k), and there is no necessity to define u(k|k) = F (k|k) + c(k|k);and parameter-dependent open-loop MPC cannot be adopted.

Although it is simple, MPC with N = 1 has a number of advantages. Theregion of attraction with N = 1 includes that with N = 0 (for N = 0 refer toChapter 7) (certainly, the basis for comparison is that the ways for computingthe three ingredients should be the same).

Consider A(k) =[

1 0.1μ(k) 1

]

, B(k) =[

10

]

, μ(k) ∈ [0.5, 2.5]. The

input constraint is |u(k)| ≤ 1. The weighting matrices are W = I and R = 1.ForN > 1, by applying single-valued open-loop MPC, the regions of attractionare shown in Figure 9.6.1 with dotted lines. ForN > 1, by applying parameter-dependent open-loop MPC, the regions of attraction are shown in Figure 9.6.1with solid lines. For N = 1, 0, by applying feedback MPC, the regions ofattraction are shown in Figure 9.6.1 with solid and dash-dotted lines. Theregion of attraction with N = 1 includes that with N = 0; for single-valuedopen-loop MPC, the region of attraction with N = 3 (N = 2) does not includethat with N = 2 (N = 1). For parameter-dependent open-loop MPC, theregion of attraction with N = 3 (N = 2) includes that with N = 2 (N = 1).

Feedback MPC is also referred to in [59]. For partial feedback MPC, onecan also refer to [44].

© 2010 b T l d F G LLC

Page 261: 1420085301 Predictive Control

9.6. Approach with unit switching horizon 245

1(0)x

2 (0)x

-6 -4 -2 0 2 4 6 -20

-15

-10

-5

0

5

10

15

20

3N =

2N =

1N =

0N =

Figure 9.6.1: Regions of attraction for single-valued open-loop min-max MPC,parameter-dependent open-loop min-max MPC and robust MPC for N = 1, 0.

Remark 9.6.1. Usually, in the industrial applications, MPC is based onthe open-loop optimization, i.e., at each sampling time a sequence of single-value control moves are calculated. When MPC is applied to the industrialprocesses, the “transparent control” is usually adopted; since the plant hasbeen pre-stabilized by PID, it is easy to increase the region of attraction byincreasing N .

© 2010 b T l d F G LLC

Page 262: 1420085301 Predictive Control
Page 263: 1420085301 Predictive Control

Chapter 10

Output feedback synthesisapproaches

In DMC, MAC and GPC, direct output feedback is adopted, which can alsobe regarded as state feedback, where the state is composed of the past input,past and current outputs. In real applications, if one wants to adopt statespace model and synthesis approaches of MPC, it would be better to selectthe measurable states when he/she sets up the state space model.

If one cannot make all the state measurable, but wishes to adopt statespace model in synthesis approaches of MPC, he/she can utilize state observer(when noise is considered, in general called state estimator). Considering theinput/output nonlinear systems and the general polytopic description, thischapter gives output feedback MPC techniques based on the state estimator.For the input/output nonlinear model, the linear difference inclusion techniqueis firstly adopted to obtain the polytopic description.

Sections 10.1-10.3 are referred to in [11]. Sections 10.3-10.5 are referred toin [22].

10.1 Optimization problem: case systems withinput-output (I/O) nonlinearities

Consider the following system represented by the Hammerstein-Wiener model

x(k + 1) = Ax(k) +Bv(k) +Dw(k), v(k) = f(u(k)),

y(k) = h(z(k)) + Ew(k), z(k) = Cz (k),

z (k) = φ(x(k)), w(k) ∈ W

(10.1.1)

where u ∈ Rnu , x ∈ Rnx , y ∈ Rny and w ∈ Rnw are input, unmeasur-able state, output and stochastic disturbance/noise, respectively; v ∈ Rnu ,z ∈ Rny and

z∈ Rn

z are unmeasurable intermediate variables; f and h are

247

© 2010 b T l d F G LLC

Page 264: 1420085301 Predictive Control

248 Chapter 10. Output feedback synthesis approaches

invertible nonlinearities;W ∈ CoW1,W2, · · · ,Wmw ⊇ 0, i.e., W is a con-vex polyhedral set that includes the origin as an interior point. φ allows

z

and x to have different dimensions.The input and output constraints are

u ≤ u(k + i) ≤ u, ∀i ≥ 0, (10.1.2)y ≤ y(k + i+ 1) ≤ y, ∀i ≥ 0. (10.1.3)

Construct g(·) as the inverse (or the approximate inverse) of f(·). For theHammerstein nonlinearity, we apply the technique of “nonlinear removal” (seeChapter 5). First, we consider

x(k + 1) =Ax(k) +Bf g(vL(k)) +Dw(k),y(k) =h(Cφ(x(k))) +Ew(k), w(k) ∈ W , (10.1.4)

with constraints (10.1.2) and (10.1.3), where vL(k) can be interpreted as the“desired intermediate variable.” We will design the following output feedbackcontroller:

x(k + 1) = A(k)x(k) + L(k)y(k), ∀k ≥ 0, vL(k) = F (k)x(k) (10.1.5)

where x is the estimator state. Then, the actual control input is given by

u(k) = g(vL(k)). (10.1.6)

By applying (10.1.6), v(k) = f(u(k)) = f g(vL(k)), and (10.1.4) is justified.Clearly, the input nonlinearity is completely removed if f g = 1. When

f g = 1, f g should be a weaker nonlinearity than f . By combining (10.1.4)and (10.1.5), the augmented closed-loop system is given by

x(k + 1) = Ax(k) +Bf g(F (k)x(k)) +Dw(k)x(k + 1) = A(k)x(k) + L(k)h(Cφ(x(k))) + L(k)Ew(k)

. (10.1.7)

Assumption 10.1.1. There exists v > 0, such that constraint (10.1.2) issatisfied whenever

−v ≤ vL(k + i) ≤ v, ∀i ≥ 0. (10.1.8)

Assumption 10.1.2. There exists z > 0, such that constraint (10.1.3) issatisfied for all w(k + i+ 1) ∈ W whenever

−z ≤ z(k + i+ 1) ≤ z, ∀i ≥ 0. (10.1.9)

By substituting (10.1.2) and (10.1.3) with (10.1.8) and (10.1.9), we canconsider weaker nonlinearities in dealing with input/output constraints.

Assumption 10.1.3. For all vL(k) satisfying −v ≤ vL(k) ≤ v, f g(·) ∈Ωfg = CoΠ1,Π2, · · · ,Πmfg

, that is, v(k) can be incorporated by v(k) =Π(k)vL(k), Π(k) ∈ Ωfg.

© 2010 b T l d F G LLC

Page 265: 1420085301 Predictive Control

10.1. Optimization problem 249

Assumption 10.1.4. For all x(k) ∈ S = x ∈ Rnx | − θ ≤ Θx ≤ θ(where Θ ∈ Rq×nx , θ > 0) h(Cφ(·)) ∈ Ωhφ = CoΨ1,Ψ2, · · · ,Ψmhφ

, that is,h(Cφ(x(k))) can be incorporated by h(Cφ(x(k))) =Ψ(k)x(k), Ψ(k) ∈ Ωhφ.

Assumption 10.1.5. For all x(k) ∈ S, φ(·) ∈ Ωφ = CoΞ1,Ξ2, · · · ,Ξmφ,

that is,z (k) can be incorporated by

z (k) = Ξ(k)x(k), Ξ(k) ∈ Ωφ.

Assumptions 10.1.3-10.1.5 have utilized the technique of linear differenceinclusion, which incorporates the nonlinearity by polytope. For polytopic de-scription, robust control techniques can be adopted.

If x(k) ∈ S and −v ≤ vL(k) ≤ v, then (10.1.7) is linearly included by[

x(k + 1)e(k + 1)

]

= A(k)[

x(k)e(k)

]

+D(k)w(k), (10.1.10)

where A(k) =[

A(k) + L(k)Ψ(k) L(k)Ψ(k)A− A(k) +BΠ(k)F (k) − L(k)Ψ(k) A− L(k)Ψ(k)

]

,

D(k) =[

L(k)ED − L(k)E

]

; and e(k) = x(k)− x(k) is the estimation error.

In output feedback MPC based on the state estimator, a key issue is how tohandle the estimation error. Here, we bound the estimation error consistentlyfor the entire time horizon, that is impose

−e ≤ e(k + i) ≤ e, ∀i ≥ 0, (10.1.11)

where 0 < es < ∞, s ∈ 1, 2, . . . , nx. Technically, we can express (10.1.11)by

e(k + i) ∈ Coε1, ε2, · · · , ε2nx, ∀i ≥ 0 (10.1.12)

where εj (j ∈ 1, . . . , 2nx) has its s-th (s ∈ 1, . . . , nx) element being −esor es, i.e., each εj is a vertex of the region e ∈ Rnx | − e ≤ e ≤ e.

At each time k, the controller/estimator parameters are obtained by solv-ing the following optimization problem:

minA(k),L(k),F (k)

maxΨ(k+i)∈Ωhφ ,Π(k+i)∈Ωfg ,Ξ(k+i)∈Ωφ,i≥0

J∞(k)

=∞∑

i=0

[

‖yu(k + i|k)‖2W + ‖F (k)xu(k + i|k)‖2R]

, (10.1.13)

s.t. − e ≤ e(k + i+ 1|k) ≤ e, − v ≤ F (k)x(k + i|k) ≤ v, − z≤ z(k + i+ 1|k) ≤ z, x(k + i+ 1|k) ∈ S, x(k + i+ 1|k) ∈ S, ∀i ≥ 0,

(10.1.14)

where W > 0 and R > 0 are weighting matrices; yu is the prediction of theuncorrupted output,(i) yu(k + i|k) = Ψ(k + i)xu(k + i|k), xu(·) = xu(·) + eu(·),[xu(·)T , eu(·)T ]T = xu(·), xu(k+ i+1|k) = A(k, i)xu(k+ i|k), xu(k|k) = x(k),

© 2010 b T l d F G LLC

Page 266: 1420085301 Predictive Control

250 Chapter 10. Output feedback synthesis approaches

A(k, i) =[

A(k) + L(k)Ψ(k + i) L(k)Ψ(k + i)A− A(k) +BΠ(k + i)F (k)− L(k)Ψ(k + i) A− L(k)Ψ(k + i)

]

,

(ii) z(k + i|k) = CΞ(k + i)x(k + i|k), x(·) = x(·) + e(·), [x(·)T , e(·)T ]T = x(·),x(k + i+ 1|k) = A(k, i)x(k + i|k) +D(k)w(k + i), x(k|k) = x(k).

10.2 Conditions for stability and feasibility:case systems with I/O nonlinearities

For problem (10.1.13)-(10.1.14), stability means the convergence of the aug-mented state x towards a neighborhood of the origin x = 0 with the evolutionof time, and feasibility means satisfaction of constraints in (10.1.14) for anyk ≥ 0. For deriving conditions of stability and feasibility, we utilize ellipsoidalconfinement, that is, restrict the augmented state within an ellipsoid.

Lemma 10.2.1. (Invariance) Suppose at time k, there exist properly dimen-

sional matrices

M, L, Y, G =[

G 0G12 G2

]

, symmetric positive-definite

matrix Q =[Q11 QT12Q12 Q22

]

and scalar η, 0 < η < 1, such that the follow-

ing inequalities are satisfied:⎡

1 ∗ ∗x(k) Q11 ∗e(k) Q12 Q22

⎦ ≥ 0, (10.2.1)

(1− η)2 ∗ ∗LEWl Q11 ∗

(D − LE)Wl Q12 Q22

⎦ ≥ 0, l ∈ 1, 2, . . . ,mw, (10.2.2)

⎢⎢⎣

η2(G+GT −Q11) ∗ ∗ ∗η2(G12 −Q12) η2(G2 +GT2 −Q22) ∗ ∗

LΨs(G+G12) +M LΨsG2 Q11 ∗(A− LΨs)(G+G12)−M +BΠlY (A− LΨs)G2 Q12 Q22

⎥⎥⎦> 0,

s ∈ 1, 2, . . . ,mhφ, l ∈ 1, 2, . . . ,mfg. (10.2.3)

Then, with u(k+i|k) = g(vL(k+i|k)), ∀i ≥ 0 and A(k) = MG−1, L(k) = L(where vL(·) = F (k)x(·), F (k) = Y G−1) being applied, the following inequal-ity holds:

x(k + i|k)T Q−1x(k + i|k) ≤ 1, ∀i ≥ 0. (10.2.4)

Proof. We will use a property: suppose X > 0 is a symmetric matrix, a and bare vectors with appropriate dimensions; then, the following inequality holdsfor any scalar δ > 0:

(a+ b)TX(a+ b) ≤ (1 + δ)aTXa+ (1 +1δ)bTXb. (10.2.5)

© 2010 b T l d F G LLC

Page 267: 1420085301 Predictive Control

10.2. Conditions for stability and feasibility 251

Condition (10.2.2) guarantees

w(k + i)TD(k)T Q−1D(k)w(k + i) ≤ (1− η)2, ∀i ≥ 0. (10.2.6)

By applying (10.2.5) and (10.2.6), it follows that

x(k + i+ 1|k)T Q−1x(k + i+ 1|k)

≤ (1 + δ)x(k + i|k)TA(k, i)T Q−1A(k, i)x(k + i|k) +(

1 +1δ

)

(1 − η)2.(10.2.7)

Impose

A(k, i)T Q−1A(k, i) < η2Q−1. (10.2.8)

By substituting (10.2.8) into (10.2.7) and choosing δ = 1η − 1, it follows that:

x(k+i+1|k)T Q−1x(k+i+1|k) ≤ ηx(k+i|k)T Q−1x(k+i|k)+(1−η). (10.2.9)

With (10.2.1) satisfied, by applying (10.2.9) recursively (i = 0, 1, . . .), (10.2.4)can be verified.

Due to (G− Q)T Q−1(G− Q) ≥ 0, the following inequality holds:

G+ GT − Q ≤ GT Q−1G. (10.2.10)

By multiplying left and right sides of (10.2.8) by GT and G, respec-tively, and applying Schur complement, (10.2.10), F (k) = Y G−1, A(k) =MG−1, L(k) = L and convexity of the polytopic descriptions, it can beshown that (10.2.3) guarantees satisfaction of (10.2.8).

Equation (10.2.3) guarantees A(k, i)T Q−1A(k, i) < η2Q−1, which meansthat (10.2.3) guarantees exponential stability of xu(k+i+1|k) = A(k, i)xu(k+i|k) and limi→∞ xu(k+ i|k) = 0. Hence, with (10.2.3) satisfied, x(k+ i|k) willlie in a neighborhood of the origin x = 0 for properly large i. Based on theinvariance property stated above, the following conclusion can be obtained.

Lemma 10.2.2. (Satisfaction of constraints) Suppose at time k, there ex-

ist properly dimensional matrices

M, L, Y, G =[

G 0G12 G2

]

, symmet-

ric positive-definite matrices

Q =[

Q11 QT12Q12 Q22

]

,Λ, U, Z,Υ,Γ

, scalar η,

© 2010 b T l d F G LLC

Page 268: 1420085301 Predictive Control

252 Chapter 10. Output feedback synthesis approaches

0 < η < 1 and

ζ21j =

1e2j

maxl∈1,2,...,mw

∣∣∣ξ1j(D − LE)Wl

∣∣∣

2

< 1, j ∈ 1, . . . , nx, (10.2.11)

ζ22j =

1z2j

maxs∈1,...,mφ,l∈1,...,mw

|ξ2jCΞsDWl|2 < 1, j ∈ 1, . . . , ny,(10.2.12)

ζ23j =

1θ2j

maxl∈1,2,...,mw

∣∣∣ξ3jΘLEWl

∣∣∣

2

< 1, j ∈ 1, . . . , q, (10.2.13)

ζ24j =

1θ2j

maxl∈1,2,...,mw

|ξ3jΘDWl|2 < 1, j ∈ 1, . . . , q, (10.2.14)

such that (10.2.1)-(10.2.3) and the following inequalities are satisfied:⎡

G+GT −Q11 ∗ ∗G12 −Q12 G2 +GT2 −Q22 ∗

(A− LΨs)(G+G12)−M +BΠlY (A− LΨs)G2 Λ

⎦ ≥ 0,

Λjj ≤ (1 − ζ1j)2e2j , s ∈ 1, · · · ,mhφ, l ∈ 1, . . . ,mfg, j ∈ 1, . . . , nx,(10.2.15)

G+GT −Q11 ∗ ∗G12 −Q12 G2 +GT2 −Q22 ∗

Y 0 U

⎦ ≥ 0, Ujj ≤ v2j , j ∈ 1, . . . , nu,

(10.2.16)⎡

G+GT −Q11 ∗ ∗G12 −Q12 G2 +GT2 −Q22 ∗

CΞsA(G +G12) + CΞsBΠlY CΞsAG2 Z

⎦ ≥ 0,

Zjj ≤ (1 − ζ2j)2z2j , s ∈ 1, . . . ,mφ, l ∈ 1, . . . ,mfg, j ∈ 1, . . . , ny,

(10.2.17)⎡

G+GT −Q11 ∗ ∗G12 −Q12 G2 +GT2 −Q22 ∗

ΘM + ΘLΨs(G+G12) ΘLΨsG2 Υ

⎦ ≥ 0,

Υjj ≤ (1 − ζ3j)2θ2j , s ∈ 1, . . . ,mhφ, j ∈ 1, . . . , q, (10.2.18)⎡

G+GT −Q11 ∗ ∗G12 −Q12 G2 +GT2 −Q22 ∗

ΘA(G+G12) + ΘBΠlY ΘAG2 Γ

⎦ ≥ 0,

Γjj ≤ (1− ζ4j)2θ2j , l ∈ 1, . . . ,mfg, j ∈ 1, . . . , q, (10.2.19)

where ξ1j (ξ2j , ξ3j) is the j-th row of the nx (ny, q) ordered identity matrix;Λjj (Ujj, Zjj , Υjj , Γjj) is the j-th diagonal element of Λ (U , Z, Υ, Γ).Then, (10.1.14) holds by applying u(k + i|k) = g(vL(k + i|k)), ∀i ≥ 0 andA(k) = MG−1, L(k) = L (where vL(·) = F (k)x(·), F (k) = Y G−1).

© 2010 b T l d F G LLC

Page 269: 1420085301 Predictive Control

10.2. Conditions for stability and feasibility 253

Proof. Equation (10.2.15) guarantees∥∥∥ξ1j [A− A+BΠ(k + i)F − LΨ(k + i) A− LΨ(k + i)]Q1/2

∥∥∥

2

≤ (1−ζ1j)2e2j .(10.2.20)

Applying (10.2.5), (10.2.11), (10.2.20) and (10.2.4) we have

|ξ1je(k + i+ 1|k)|2 = |ξ1j [0 I]x(k + i+ 1|k)|2

=∣∣ξ1j [A− A+BΠ(k + i)F − LΨ(k + i) A

− LΨ(k + i)]x(k + i|k) + ξ1j(D − LE)w(k + i)∣∣2

≤(1 + δ1j)∥∥∥ξ1j [A− A+BΠ(k + i)F − LΨ(k + i) A− LΨ(k + i)]x(k + i|k)

∥∥∥

2

+(

1 +1δ1j

)

ζ21j e

2j

≤(1 + δ1j)(1 − ζ1j)2e2j +(

1 +1δ1j

)

ζ21j e

2j .

By choosing δ1j = ζ1j/(1− ζ1j), it follows that |ξ1je(k + i+ 1|k)|2 ≤ e2j ,∀i ≥ 0.

Define ξj as the j-th row of the nu-ordered identity matrix. Equation(10.2.16) guarantees

∥∥∥ξj [ F 0 ]Q1/2

∥∥∥

2

≤ v2j . (10.2.21)

Applying (10.2.5),(10.2.21) and (10.2.4) we have

maxi≥0|ξjF x(k + i|k)|2 = max

i≥0

∣∣ξj [ F 0 ]x(k + i|k)∣∣2 ≤

∥∥∥ξj [ F 0 ]Q1/2

∥∥∥

2

≤ v2j .

Equation (10.2.17) guarantees∥∥∥ξ2jCΞ(k + i)[ A+BΠ(k + i)F A ]Q1/2

∥∥∥

2

≤ (1 − ζ2j)2z2j . (10.2.22)

Applying (10.2.5), (10.2.12), (10.2.22) and (10.2.4) we have

|ξ2jz(k + i+ 1|k)|2 = |ξ2jCΞ(k + i)[I I]x(k + i+ 1|k)|2

=∣∣ξ2jCΞ(k + i)[ A+BΠ(k + i)F A ]x(k + i|k) + ξ2jCΞ(k + i)Dw(k + i)

∣∣2

≤(1 + δ2j)∥∥ξ2jCΞ(k + i)[A+BΠ(k + i)F A)]x(k + i|k)∥∥2 +

(

1 +1δ2j

)

ζ22j z

2j

≤(1 + δ2j)(1 − ζ2j)2z2j +

(

1 +1δ2j

)

ζ22j z

2j .

By choosing δ2j = ζ2j/(1− ζ2j), it follows that |ξ2jz(k + i+ 1|k)|2 ≤ z2j ,

∀i ≥ 0.

© 2010 b T l d F G LLC

Page 270: 1420085301 Predictive Control

254 Chapter 10. Output feedback synthesis approaches

Equation (10.2.18) guarantees

∥∥∥ξ3jΘ[ A+ LΨ(k) LΨ(k) ]Q1/2

∥∥∥

2

≤ (1− ζ3j)2θ2j . (10.2.23)

Applying (10.2.5), (10.2.13), (10.2.23) and (10.2.4) we have

|ξ3jΘx(k + i+ 1|k)|2 = |ξ3jΘ[I 0]x(k + i+ 1|k)|2

=∣∣∣ξ3jΘ[ A+ LΨ(k) LΨ(k) ]x(k + i|k) + ξ3jΘLEw(k + i)

∣∣∣

2

≤(1 + δ3j)∥∥ξ3jΘ[ A+ LΨ(k) LΨ(k) ]x(k + i|k)∥∥2

+(

1 +1δ3j

)

ζ23j θ

2j

≤(1 + δ3j)(1 − ζ3j)2θ2j +(

1 +1δ3j

)

ζ23j θ

2j .

By choosing δ3j = ζ3j/(1− ζ3j), it follows that |ξ3jΘx(k + i+ 1|k)|2 ≤ θ2j ,∀i ≥ 0.

Equation (10.2.19) guarantees

∥∥∥ξ3jΘ[ A+BΠ(k + i)F A ]Q1/2

∥∥∥

2

≤ (1− ζ4j)2θ2j . (10.2.24)

Applying (10.2.5), (10.2.14), (10.2.24) and (10.2.4) we have

|ξ3jΘx(k + i+ 1|k)|2 = |ξ3jΘ[I I]x(k + i+ 1|k)|2

=∣∣ξ3jΘ[ A+BΠ(k + i)F A ]x(k + i|k) + ξ3jΘDw(k + i)

∣∣2

≤(1 + δ4j)∥∥ξ3jΘ[ A+BΠ(k + i)F A )]x(k + i|k)∥∥2 +

(

1 +1δ4j

)

ζ24j θ

2j

≤(1 + δ4j)(1− ζ4j)2θ2j +(

1 +1δ4j

)

ζ24j θ

2j .

By choosing δ4j = ζ4j/(1− ζ4j), it follows that |ξ3jΘx(k + i+ 1|k)|2 ≤ θ2j ,∀i ≥ 0.

10.3 Realization algorithm: case systems with

I/O nonlinearities

10.3.1 General optimization problem

Define a positive-definite quadratic function V (i, k) = xu(k+i|k)TX(k)xu(k+i|k), and impose the following optimality requirement:

V (i+ 1, k)− V (i, k) ≤ −‖yu(k + i|k)‖2W − ‖F (k)xu(k + i|k)‖2R , ∀k, i ≥ 0(10.3.1)

© 2010 b T l d F G LLC

Page 271: 1420085301 Predictive Control

10.3. Realization algorithm: case systems with I/O nonlinearities 255

which is guaranteed by

‖A(k, i)xu(k + i|k)‖2X(k) − ‖xu(k + i|k)‖2X(k)

≤ −‖Ψ(k + i)[I I]xu(k + i|k)‖2W −∥∥[F (k) 0

]

xu(k + i|k)∥∥2

R.

(10.3.2)

Equation (10.3.2) is satisfied if and only if:

A(k, i)TX(k)A(k, i)−X(k) ≤− [I I]TΨ(k + i)TWΨ(k + i)[I I]

− [F (k) 0

]TR[F (k) 0

]

. (10.3.3)

Define F (k) = Y G−1 and Q = βX(k)−1. Similarly using the deductionsas in Lemma 10.2.1, (10.3.3) can be guaranteed by the following inequality:⎡

⎢⎢⎢⎢⎢⎢⎣

G+GT −Q11 ∗ ∗ ∗ ∗ ∗G12 −Q12 G2 +GT2 −Q22 ∗ ∗ ∗ ∗

LΨs(G+G12) +M LΨsG2 Q11 ∗ ∗ ∗(A− LΨs)(G+G12)−M +BΠlY (A− LΨs)G2 Q12 Q22 ∗ ∗W 1/2Ψs (A(G +G12) +BΠlY ) W 1/2ΨsAG2 0 0 βI ∗

R1/2Y 0 0 0 0 βI

⎥⎥⎥⎥⎥⎥⎦

≥ 0,

s ∈ 1, . . . ,mhφ, l ∈ 1, . . . ,mfg. (10.3.4)

If w(k + i) = 0, ∀i ≥ 0, then x(∞|k) = 0, e(∞|k) = 0 and V (∞, k) = 0.Summing (10.3.1) from i = 0 to i =∞ leads to

J∞(k) ≤ x(k)TX(k)x(k) ≤ β. (10.3.5)

The right side inequality in (10.3.5) can be transformed into (10.2.1) and,according to (10.1.12), (10.2.1) is guaranteed by the following LMI:

1 ∗ ∗x(k) Q11 ∗εj Q12 Q22

⎦ ≥ 0, j ∈ 1, . . . , 2nx. (10.3.6)

Let us also consider the following condition, the satisfaction of which renderssatisfaction of x(k) ∈ S and x(k) ∈ S:

−θ ≤ Θ(x(k) + εj) ≤ θ, j ∈ 1, 2, . . . , 2nx. (10.3.7)

Thus, if (10.2.12) and (10.2.14) are satisfied, then problem (10.1.13)-(10.1.14) can be approximated by:

minη,β,M,L,Y,G,G12,G2,Q11,Q12,Q22,Λ,U,Z,Υ,Γ

β, s.t. (10.2.2)− (10.2.3),

(10.2.11), (10.2.13), (10.2.15)− (10.2.19), (10.3.4), (10.3.6)− (10.3.7).(10.3.8)

Equations (10.2.3), (10.2.15), (10.2.18) and (10.3.4) are not LMIs, whichmeans that in most cases there may not exist a polynomial time algorithmfor solving the optimization problem.

© 2010 b T l d F G LLC

Page 272: 1420085301 Predictive Control

256 Chapter 10. Output feedback synthesis approaches

10.3.2 Linear matrix inequality optimization problem

In order to simplify the computation, we can fix L, η a priori. If L, η are fixeda priori and (10.2.11)-(10.2.14) are satisfied,then problem (10.1.13)-(10.1.14)can be approximated by:

minβ,M,Y,G,G12,G2,Q11,Q12,Q22,Λ,U,Z,Υ,Γ

β, s.t. (10.2.2)− (10.2.3),

(10.2.15)− (10.2.19), (10.3.4), (10.3.6)− (10.3.7). (10.3.9)

Equation (10.3.9) is an LMI optimization problem. The complexity of solving(10.3.9) is polynomial-time, which is proportional to K3L, whereK = 1 + 13

2 n2x + 3

2nx + nxnu + 12n

2u + 1

2nu + 12n

2y + 1

2ny + q2 + q,L = (2nx + 2q + 1)2nx + (2nx + ny)mφmfg + (11nx + nu + ny)mhφmfg

+ (2nx + q)(mhφ +mfg) + (2nx + 1)mw + 3nx + 2nu + ny + 2q.Hence, by increasing mφ (mhφ, mfg, mw), the computational burden is in-creased linearly; by increasing nu (ny, q), the computational burden is in-creased with a power law; by increasing nx, the computational burden is in-creased exponentially. For nx = nu = ny = q = mhφ = mφ = mfg, preservingthe most influential parameters in K and L we can say that the computationalcomplexity for solving (10.3.9) is proportional to (4nx + 1)n6

x2nx−3 + 2n9x.

Further, let us consider w(k) = 0, ∀k ≥ 0; then (10.3.9) can be approxi-mated by

minβ,M,Y,G,G12,G2,Q11,Q12,Q22,Λ,U,Z,Υ,Γ

β,

s.t. (10.2.15)− (10.2.19), (10.3.4), (10.3.6)− (10.3.7),

where Λjj ≤ (1− ζ1j)2e2j , Zjj ≤ (1− ζ2j)2z2j , Υjj ≤ (1 − ζ3j)2θ2j

and Γjj ≤ (1− ζ4j)2θ2j are replaced by:

Λjj ≤ e2j , Zjj ≤ z2j , Υjj ≤ θ2j and Γjj ≤ θ2j . (10.3.10)

Equation (10.3.10) is the simplification of (10.3.9); K is the same as that of(10.3.9), andL = (2nx + 2q + 1)2nx + (2nx + ny)mφmfg + (7nx + nu + ny)mhφmfg

+ (2nx + q)(mhφ +mfg) + 3nx + 2nu + ny + 2q.For nx = nu = ny = q = mhφ = mφ = mfg, preserving the most influentialparameters in K and L we can say that the computational complexity forsolving (10.3.10) is proportional to (4nx + 1)n6

x2nx−3 + 32n

9x.

Remark 10.3.1. One can calculate Ψ0 =∑mhφ

l=1 Ψl/mhφ and design L by theusual pole placement method with respect to A−LΨ0. In case the performance(region of attraction, optimality) is not satisfactory, one can change the polesand re-design L. If L = L0 is feasible but not satisfactory, one can chooseL = ρL0 and search over the scalar ρ. One can also choose η as an optimizationvariable in solving (10.3.9). By line searching η over the interval (0, 1), (10.3.9)can still be solved via LMI techniques. By line searching η over the interval

© 2010 b T l d F G LLC

Page 273: 1420085301 Predictive Control

10.3. Realization algorithm: case systems with I/O nonlinearities 257

(0, 1), we can find η such that β is minimized (the computational burden isincreased in this situation).

Algorithm 10.1 Fix L, η a priori. At the initial time k = 0, choosean appropriate x(0) such that −e ≤ e(0) ≤ e. At any time k ≥ 0, solve(10.3.10) to obtain F (k), A(k). For k > 0, if (10.3.10) is infeasible, thenchoose F (k), A(k) = F (k − 1), A(k − 1).

Theorem 10.3.1. (Stability) Consider system (10.1.1) with w(k) = 0, ∀k ≥0. Suppose −e ≤ e(0) ≤ e and (10.3.10) is feasible at k = 0. Then withAlgorithm 10.1 applied, under the control law (10.1.5)-(10.1.6), the constraints(10.1.2)-(10.1.3) are always satisfied and limk→∞ x(k) = 0.

Proof. The important feature of our OFMPC is that the estimation error isconsistently bounded, and x ∈ S satisfied, for the infinite-time horizon. Atthe initial time k = 0, if there is a feasible solution to problem (10.3.10),then at any time k > 0 it is reasonable to adopt (10.3.6) and (10.3.7) in theoptimization. However, since (10.3.6) is a stronger condition than (10.2.1), and(10.3.7) is stronger than −θ ≤ Θx(k) ≤ θ, it may occur that at some samplinginstants, problem (10.3.10) becomes infeasible. According to Algorithm 10.1,in this situation F (k − 1), A(k − 1) will be applied. According to Lemma10.2.2, constraints (10.1.2) and (10.1.3) will be satisfied for all k ≥ 0. Theproof of stability of F (k), A(k) for any k is an extension of the state feedbackcase (and hence is omitted here). Due to the utilization of (10.3.1), both theestimator state and estimation error will converge towards the origin with theevolution of time.

Remark 10.3.2. Let us define the region of attraction for Algorithm 10.1as D (the closed-loop system is asymptotically stable whenever x(0) ∈ D).Suppose at time k > 0, (10.3.10) is infeasible, then x(k) /∈ D. However, inthis situation, x(k)T Q(k − 1)−1x(k) ≤ 1 is satisfied according to Lemma10.2.1. Hence, with F (k − 1), A(k − 1) applied at time k, the input/stateconstraints are satisfied (Lemma 10.2.2) and x(k+1)T Q(k−1)−1x(k+1) ≤ 1(Lemma 10.2.1). The convergence of the augmented state towards the originis due to (10.3.1), which forces V (k+ 1) to decrease at least by the stage cost‖yu(k)‖2W + ‖F (k)xu(k)‖2R than V (k).

Assumption 10.3.1. The choice of L, together with the selections of er-ror bounds in (10.1.11) and S in Assumption 10.1.4, renders satisfaction of(10.2.11) and (10.2.13).

Assumption 10.3.2. The selection Ωφ in Assumption 10.1.5 renders satis-faction of (10.2.12).

Assumption 10.3.3. The selection of S in Assumption 10.1.4 renders sat-isfaction of (10.2.14).

© 2010 b T l d F G LLC

Page 274: 1420085301 Predictive Control

258 Chapter 10. Output feedback synthesis approaches

Assumptions 10.3.1-10.3.3 reflect the ability of OFMPC to handle distur-bance/noise. If w(k) = 0, ∀k ≥ 0, then Assumptions 10.3.1-10.3.3 are triviallysatisfied.

Algorithm 10.2 Fix L, η a priori. At the initial time k = 0, choosean appropriate x(0) such that −e ≤ e(0) ≤ e. At any time k ≥ 0, solve(10.3.9) to obtain F (k), A(k). For k > 0, if (10.3.9) is infeasible, then chooseF (k), A(k) = F (k − 1), A(k − 1).Theorem 10.3.2. (Stability) Consider system (10.1.1). Suppose Assumptions10.3.1-10.3.3 hold, −e ≤ e(0) ≤ e and (10.3.9) is feasible at k = 0. Then, withAlgorithm 10.2 applied, under the control law (10.1.5)-(10.1.6), the constraints(10.1.2)-(10.1.3) are always satisfied and there exists a region D0 about x = 0such that limk→∞ x(k) ∈ D0.

Proof. This is an extension of Theorem 10.3.1. In the presence of nonzerodisturbance/noise w(k), the estimator state and estimation error will not con-verge to the origin.

10.3.3 Summary of the idea

In the above, OFMPC for input/output nonlinear models is considered, wherethe technique of linear difference inclusion is applied to obtain the polytopicdescription. The whole procedure is not direct. To make clear, it is necessaryto set forth the whole procedure. Given (10.1.1)-(10.1.3), the following stepscan be followed to implement OFMPC by (10.3.9):

Off-line stage:

Step 1. Define η = 0, η = 1. Substitute (10.1.3) with (10.1.9).

Step 2. Construct g(·) as the inverse (or the approximate inverse) of f(·) .

Step 3. Substitute (10.1.2) with (10.1.8).

Step 4. Transform f g(·) into a polytopic description.

Step 5. Select e to obtain (10.1.12).

Step 6. Select S. Transform h(Cφ(·)) and φ(·) into polytopic descriptions.

Step 7. Check if (10.2.12) is satisfied. If not, go back to Step 6.

Step 8. Check if (10.2.14) is satisfied. If not, go back to Step 6.

Step 9. Select L (considering Remark 10.3.1) to satisfy (10.2.11). If (10.2.11)cannot be satisfied, then re-select e.

Step 10. Check if (10.2.13) is satisfied. If (10.2.13) cannot be satisfied, thengo back to Step 6 (or go back to Step 9 to re-select L).

© 2010 b T l d F G LLC

Page 275: 1420085301 Predictive Control

10.4. Optimization problem: case systems with polytopic description 259

Step 11. Select x(0) = 0.

Step 12. Search η over the interval (η, η) to refresh η and η, such that when-ever η < η < η, (10.3.9) is feasible.

Step 13. If (10.3.9) is not feasible for any η ∈ (η, η), then go back to Step 2.

Step 14. Select several x(0) = 0 over a user-specified region. For each x(0),go back to Step 12.

Step 15. For x(0) = 0, search η over the interval (η, η), such that a minimumβ is obtained.

On-line Stage:At each time k, proceed with Algorithm 10.2.

In the above Off-line Stage, we have selected η and meant to fix it in theOn-line Stage. If η is chosen as an optimization variable in solving (10.3.9)(see Remark 10.3.1), then Step 15 can be ignored and Step 12 can be revisedas:

Step 12. Search η over the interval (0, 1) such that (10.3.9) is feasible.

10.4 Optimization problem: case systems withpolytopic description

Consider the following uncertain time-varying system

x(k + 1) = A(k)x(k) +B(k)u(k) +D(k)w(k), y(k)= C(k)x(k) + E(k)w(k), k ≥ 0, (10.4.1)

where u ∈ Rnu , x ∈ Rnx , w ∈ Rnw , y ∈ Rny and w ∈ Rnw are input, unmea-surable state, state disturbance, output and measurement noise, respectively.The state disturbance and measurement noise are persistent, bounded andsatisfy

w(k) ∈ CoW1, W2, · · · , Wmw ⊇ 0, w(k) ∈ CoW1,W2, · · · ,Wmw ⊇ 0.(10.4.2)

The input and state constraints are

−u ≤ u(k) ≤ u, − ψ ≤ Ψx(k + 1) ≤ ψ, (10.4.3)

which has the same meaning as in the former chapters. Suppose

[A(k)|B(k)|C(k)] ∈ Ω =Co[A1|B1|C1], [A2|B2|C2], · · · , [AL|BL|CL],(10.4.4)

[D(k)|E(k)] ∈Co[D1|E1], [D2|E2], · · · , [Dp|Ep]. (10.4.5)

© 2010 b T l d F G LLC

Page 276: 1420085301 Predictive Control

260 Chapter 10. Output feedback synthesis approaches

For the above system (10.4.1)-(10.4.5), our output feedback controller isof the following form

x(k + 1) = Ao(k)x(k) +Bou(k) + Loy(k), u(k) = F (k)x(k), (10.4.6)

where x is the estimator state; Ao(k), F (k) are matrices to be designed; Bo, Loare pre-specified matrices. Here, the controller that will be given is a moregeneral case of that in section 10.3.2, i.e., rather than considering the polytopeobtained from nonlinearity, here we directly consider polytopic description.

Remark 10.4.1. In Remark 10.3.1, the pole-placement scheme for designingL has been given. Now, we give a more conservative (but safer) scheme fordesigning Lo. Select Lo such that there should exist a positive-definite matrixP such that P − (Al−LoCl)TP (Al−LoCl) > 0, ∀l ∈ 1, . . . , L. By definingB = 1

L

∑Ll=1Bl, we can simply choose Bo = B.

In order to conveniently implement OFRMPC in a receding horizon man-ner, let the estimation error e = x − x satisfy −e ≤ e(k) ≤ e, whereej > 0, j ∈ 1, . . . , nx. Technically, we can express this estimation errorconstraint by

e(k) ∈ Ωe = Coε1, ε2, · · · , ε2nx, ∀k. (10.4.7)

For simplicity, denote x = [xT eT ]T , w = [wT wT ]T .We aimed at synthesizing an OFRMPC that brings system (10.4.1)-

(10.4.6) to a bounded target set about x, e, u = 0, by solving the followingoptimization problem at each time k:

minAo,F,Q,γ

max[A(k+i)|B(k+i)|C(k+i)]∈Ω, i≥0

J∞(k)

=∞∑

i=0

[‖xu(k + i|k)‖2W + ‖F (k)xu(k + i|k)‖2R]

, (10.4.8)

s.t. xu(k + i+ 1|k) = To(k + i)xu(k + i|k), xu(k|k) = x(k), (10.4.9)x(k + i+ 1|k) = To(k + i)x(k + i|k) +Ho(k + i)w(k + i), x(k|k) = x(k),

(10.4.10)

− e ≤ e(k + i+ 1|k) ≤ e, − u ≤ u(k + i|k) = F x(k + i|k) ≤ u,− ψ ≤ Ψx(k + i+ 1|k) ≤ ψ, (10.4.11)

‖xu(k + i+ 1|k)‖2Q−1 − ‖xu(k + i|k)‖2Q−1 ≤ −1/γ‖xu(k + i|k)‖2W− 1/γ‖F xu(k + i|k)‖2R, (10.4.12)

‖x(k + i|k)‖2Q−1 ≤ 1, Q = QT > 0, (10.4.13)

where xu = [xTu eTu ]T and xu (eu) is the prediction of the estimator state

© 2010 b T l d F G LLC

Page 277: 1420085301 Predictive Control

10.5. Optimality, invariance and constraint handling 261

(estimation error) not corrupted by the disturbance/noise;

To(k + i) =[

Ao(k) + BoF (k) + LoC(k + i) LoC(k + i)A(k + i) − Ao(k) + (B(k + i) − Bo)F (k) − LoC(k + i) A(k + i) − LoC(k + i)

]

,

Ho(k + i) =[

0 LoE(k + i)D(k + i) −LoE(k + i)

]

, W =[W1 00 W2

]

;

W1 > 0, W2 > 0 and R > 0 are symmetric weighting matrices; (10.4.12) is toensure cost monotonicity; (10.4.13) is to ensure invariance of the augmentedstate x.

10.5 Optimality, invariance and constraint

handling: case systems with polytopic de-scription

Considering (10.4.13) ,with i = 0, yields

[x(k)T e(k)T ]Q−1[x(k)T e(k)T ]T ≤ 1. (10.5.1)

To achieve an asymptotically stable closed-loop system, limi→∞ xu(k+ i|k) =0. By summing (10.4.12) from i = 0 to i =∞ and applying (10.5.1), it followsthat J∞(k) ≤ γ. Thus, by minimizing γ subject to (10.4.12) and (10.5.1), theperformance cost is optimized with respect to the worst-case of the polytopicdescription Ω. By applying (10.4.9), it follows that (10.4.12) is satisfied if andonly if

To(k + i)TQ−1To(k + i)−Q−1 ≤ −1/γW − 1/γ[F (k) 0]TR[F (k) 0], i ≥ 0.(10.5.2)

Proposition 10.5.1. (Optimality) Suppose there exist a scalar γ, matricesQ12, G, G12, G2, Y , M and symmetric matrices Q11, Q22 such that thefollowing LMIs are satisfied:⎡

⎢⎢⎢⎢⎢⎢⎢⎣

G + GT − Q11 ∗ ∗ ∗ ∗ ∗ ∗G12 − Q12 G2 + GT

2 − Q22 ∗ ∗ ∗ ∗ ∗LoCl(G + G12) + M + BoY LoClG2 Q11 ∗ ∗ ∗ ∗

(A − LoCl)(G + G12) − M + (Bl − Bo)Y (Al − LoCl)G2 Q12 Q22 ∗ ∗ ∗W

1/21 G 0 0 0 γI ∗ ∗

W1/22 G12 W

1/22 G2 0 0 0 γI ∗

R1/2Y 0 0 0 0 0 γI

⎥⎥⎥⎥⎥⎥⎥⎦

≥ 0,

l ∈ 1, . . . , L, (10.5.3)⎡

1 ∗ ∗x(k) Q11 ∗εj Q12 Q22

⎦ ≥ 0, j ∈ 1, . . . , 2nx. (10.5.4)

© 2010 b T l d F G LLC

Page 278: 1420085301 Predictive Control

262 Chapter 10. Output feedback synthesis approaches

Then, (10.5.1)-(10.5.2) hold by parameterizing

Q =[

Q11 QT12Q12 Q22

]

≥ 0, F (k) = Y G−1, Ao(k) = MG−1. (10.5.5)

Proof. Denote G =[

G 0G12 G2

]

. By multiplying the left and right sides of

(10.5.2) by GT and G, respectively, and applying Schur complement, (10.5.5),utilizing the fact that G+ GT −Q ≤ GTQ−1G and the convexity of the poly-topic description, it can be shown that (10.5.3) guarantees (10.5.2). Moreover,by applying (10.4.7) and Schur complement, it is shown that (10.5.4) guaran-tees (10.5.1).

Proposition 10.5.2. (Invariance) Suppose there exist a scalar γ, matricesQ12, G, G12, G2, Y , M and symmetric matrices Q11, Q22 such that (10.5.4)and the following LMIs are satisfied:⎡

⎢⎢⎣

θ(G +GT −Q11) ∗ ∗ ∗θ(G12 −Q12) θ(G2 +GT2 −Q22) ∗ ∗

LoCl(G+G12) +M +BoY LoClG2 Q11 ∗(A− LoCl)(G+G12)−M + (Bl −Bo)Y (Al − LoCl)G2 Q12 Q22

⎥⎥⎦≥ 0,

l ∈ 1, . . . , L, (10.5.6)

(1− θ1/2)2 ∗ ∗LoEtWh Q11 ∗

DtWs − LoEtWh Q12 Q22

⎦≥ 0,

t ∈ 1, . . . , p, s ∈ 1, . . . ,mw, h ∈ 1, . . . ,mw, (10.5.7)

where θ is a pre-specified scalar, 0 < θ < 1. Then, (10.4.13) holds by theparameterization (10.5.5).

Proof. Eq. (10.5.6) guarantees (analogously to Proposition 10.5.1):

To(k + i)TQ−1To(k + i) ≤ θQ−1. (10.5.8)

Let ζ > 0 be a scalar such that

w(k + i)THo(k + i)TQ−1Ho(k + i)w(k + i) ≤ ζ. (10.5.9)

Applying (10.4.10), (10.2.5), (10.5.8) and (10.5.9) yields

‖x(k + i+ 1|k)‖2Q−1 ≤ (1 + δ)θ‖x(k + i|k)‖2Q−1 + (1 + 1/δ)ζ. (10.5.10)

Suppose(1 + δ)θ + (1 + 1/δ)ζ ≤ 1. (10.5.11)

With (10.5.1) and (10.5.11) satisfied, by applying (10.5.10) recursively (fori = 0, 1, 2, . . .), (10.4.13) can be verified. The maximum allowable ζ satisfying(10.5.11) is ζ = (1 − θ1/2)2. Hence, by applying (10.4.2) and (10.4.10), it isshown that (10.5.7) guarantees (10.5.9).

© 2010 b T l d F G LLC

Page 279: 1420085301 Predictive Control

10.5. Optimality, invariance and constraint handling 263

Proposition 10.5.3. (Constraints handling) For each j ∈ 1, . . . , nx, obtainζ1j by solving

minζ1j

ζ1j , s.t.[

ζ1j ∗DtjWs − LojEtWh 1

]

≥ 0,

t ∈ 1, . . . , p, s ∈ 1, . . . ,mw, h ∈ 1, . . . ,mw, (10.5.12)

where Dtj (Loj) is the j-th row of Dt (Lo); for each j ∈ 1, . . . , q, obtain ζ2jby solving

minζ2j

ζ2j , s.t.[

ζ2j ∗ΨjDtWs 1

]

≥ 0, t ∈ 1, . . . , p, s ∈ 1, . . . ,mw,(10.5.13)

where Ψj is the j-th row of Ψ. Suppose there exist a scalar γ, matrices Q12, G,G12, G2, Y , M and symmetric matrices Q11, Q22, Ξ, Z, Γ such that (10.5.4),(10.5.6), (10.5.7) and the following LMIs are satisfied:⎡

G+GT −Q11 ∗ ∗G12 −Q12 G2 +GT2 −Q22 ∗

(Al − LoCl)(G +G12)−M + (Bl −Bo)Y (Al − LoCl)G2 Ξ

⎦ ≥ 0,

l ∈ 1, . . . , L, Ξjj ≤ e2j , j ∈ 1, . . . , nx, (10.5.14)⎡

G+GT −Q11 ∗ ∗G12 −Q12 G2 +GT2 −Q22 ∗

Y 0 Z

⎦ ≥ 0, Zjj ≤ u2j , j ∈ 1, . . . , nu,

(10.5.15)⎡

G+GT −Q11 ∗ ∗G12 −Q12 G2 +GT2 −Q22 ∗

Ψ(AlG+AlG12 +BlY ) ΨAlG2 Γ

⎦ ≥ 0,

l ∈ 1, . . . , L, Γjj ≤ ψ2j , j ∈ 1, . . . , q, (10.5.16)

where ej = ej −√

ζ1j > 0, ψj = ψj −√

ζ2j > 0; Ξjj (Zjj , Γjj) is the j-th diagonal element of Ξ (Z, Γ). Then, (10.4.11) is guaranteed through theparameterization (10.5.5).

Proof. Define ξj as the j-th row of the nx-ordered identity matrix. LMIsin (10.5.12) guarantee maxi≥0 |ξj [0 I]Ho(k + i)w(k + i)|2 ≤ ζ1j . Applying(10.4.10), (10.2.5) and Proposition 10.5.2 yields, for any δ1j > 0,

maxi≥0|ξje(k+ i+1|k)|2 ≤ (1+δ1j)max

i≥0‖ξj[0 I]To(k+ i)Q1/2‖2+(1+1/δ1j)ζ1j .

(10.5.17)Suppose

maxi≥0‖ξj[0 I]To(k + i)Q1/2‖2 ≤ e2j , j ∈ 1, . . . , nx. (10.5.18)

By considering (10.5.17) and (10.5.18), the estimation error constraint in(10.4.11) is satisfied if (1 + δ1j)e2j + (1 + 1/δ1j)ζ1j ≤ e2j . By solving e2j =

© 2010 b T l d F G LLC

Page 280: 1420085301 Predictive Control

264 Chapter 10. Output feedback synthesis approaches

maxδ1j1/(1 + δ1j)[e2j − (1 + 1/δ1j)ζ1j ], the best (maximum) choice of ej isobtained as ej = ej−

ζ1j . Similarly to the state feedback case, (10.5.14) canguarantee (10.5.18).

Define ξj as the j-th row of the nu-ordered identity matrix. Apply-ing (10.5.5) and Proposition 10.5.2 yields maxi≥0 |ξjF (k)x(k + i|k)|2 ≤‖ξj [Y 0]G−1Q1/2‖2. Hence, the input constraint in (10.4.11) is satisfied if‖ξj [Y 0]G−1Q1/2‖2 ≤ u2

j , which is in turn guaranteed by (10.5.15).Define ξj as the j-th row of the q-ordered identity matrix. LMIs in (10.5.13)

guarantee maxi≥0 |ξj [I I]Ho(k + i)w(k + i)|2 ≤ ζ2j . Applying (10.4.10),(10.2.5) and Proposition 10.5.2 yields, for any δ2j > 0,

maxi≥0|ξjΨx(k + i+ 1|k)|2 ≤ (1 + δ2j)max

i≥0‖ξjΨ[I I]To(k + i)Q1/2‖2

+ (1 + 1/δ2j)ζ2j . (10.5.19)

Suppose

maxi≥0‖ξjΨ[I I]To(k + i)Q1/2‖2 ≤ ψ2

j , j ∈ 1, . . . , q. (10.5.20)

By considering (10.5.19) and (10.5.20), the state constraint in (10.4.11) issatisfied if (1 + δ2j)ψ2

j + (1 + 1/δ2j)ζ2j ≤ ψ2j . By solving ψ2

j = maxδ2j1/(1 +δ2j)[ψ2

j − (1 + 1/δ2j)ζ2j ], the best (maximum) choice of ψj is obtained asψj = ψj −

ζ2j . Similarly to the state feedback case, (10.5.16) can guarantee(10.5.20).

10.6 Realization algorithm: case systems with

polytopic description

By considering Propositions 10.5.1, 10.5.2, 10.5.3, problem (10.4.8)-(10.4.13)can be solved by LMI optimization problem:

minγ,M,Y,G,G12,G2,Q11,Q12,Q22,Ξ,Z,Γ

γ, s.t. (10.5.3)− (10.5.4),

(10.5.6)− (10.5.7), (10.5.14)− (10.5.16). (10.6.1)

The complexity of solving (10.6.1) is polynomial-time, which is proportionalto K3L, whereK = 1

2 (13n2x + n2

u + q2) + nxnu + 12 (3nx + nu + q) + 1,

L = (15nx + nu + q)L + (1 + 2nx)(2nx + pmwmw) + 3nx + 2nu + q.One can also take θ as a degree-of-freedom in the optimization. By line search-ing θ over the interval (0, 1), (10.6.1) can be iteratively solved by LMI tech-nique.

In the following, we give the off-line approach based on (10.6.1).

© 2010 b T l d F G LLC

Page 281: 1420085301 Predictive Control

10.6. Realization algorithm: case systems with polytopic description 265

Algorithm 10.3 Off-line, choose xh, h ∈ 1, . . . , N. For each h, substi-tute x(k) in (10.5.4) by xh, and solve the optimization problem (10.6.1) toobtain the corresponding matrix Aho = MhG

−1h , feedback gain Fh = YhG

−1h

and region εh = x ∈ Rnx |[xT εTj ]Q−1h [xT εTj ]T ≤ 1, j = 1, 2, . . . , 2nx (an

intersection of 2nx ellipsoidal regions). Note that xh should be chosen suchthat εh+1 ⊂ εh, ∀h = N .

On-line, at each time k, perform the following steps:i) At k = 0, choose x(0); otherwise (k > 0), evaluate x(k) = Ao(k−1)x(k−

1) +Bou(k − 1) + Loy(k − 1).ii) Choose F (k), Ao(k) = F1, A

1o. If x(k) ∈ εN , then adopt

F (k), Ao(k) = FN , ANo ; for k > 1, if x(k) /∈ ε1, then adoptF (k), Ao(k) = F (k − 1), Ao(k − 1); otherwise, if x(k) ∈ εh\εh+1, thenadopt F (k), Ao(k) = Fh, Aho.

iii) Evaluate u(k) = F (k)x(k) and implement u(k).

Theorem 10.6.1. For system (10.4.1)-(10.4.5), Algorithm 10.3 is adopted. Ifx(0) ∈ ε1 and −e ≤ e(0) ≤ e, then there exists a region D about x, e, u = 0such that limk→∞x(k), e(k), u(k) ∈ D, and the input/state constraints aresatisfied for all k ≥ 0.

Proof. Consider N = 1. Then, F (k), Ao(k) = F1, A1o, ∀k ≥ 0. For some

k > 0, it may happen that x(k) /∈ ε1. However, F (k), Ao(k) = F1, A1o is

still utilized. According to Proposition 10.5.3, the input/state constraints willbe satisfied. According to Proposition 10.5.2, To(k) is exponentially stable andx will converge. In the presence of nonzero disturbance/noise, x will not settleat 0. Instead, x will converge to a region D about x = 0 and stay within Dthereafter. Since x converges to D, u = F1x will converge to a region aboutu = 0, i.e., x, e, u will converge to D.

Consider N > 1. According to Proposition 10.5.3, the estimation error willsatisfy −e ≤ e(k) ≤ e. Therefore, x(k) ∈ εh implies x(k), e(k) ∈ εh × Ωe

and the control law can be switched according to the location of x(k). At timek, if F (k), Ao(k) = Fh, Aho is applied, then To(k) is exponentially stable,(10.4.3) is satisfied and x(k+ 1) will converge. At last, x, e, u will convergeto a region D and stay within D thereafter.

For each h ∈ 1, . . . , N in Algorithm 10.3, let us give

x(k+ 1) = [Aho +BoFh +LoC(k)]x(k)+LoC(k)e(k) +LoE(k)w(k), (10.6.2)

where e(k) ∈ Ωe, w(k) ∈ CoW1,W2, · · · ,Wmw, C(k) ∈ CoC1, C2, · · · , CL,E(k) ∈ CoE1, E2, · · · , Ep. Considering (10.6.2), there exists a region Dh

about x = 0 such that limk→∞ x(k) ∈ Dh. Dh is bounded since e(k), w(k)are bounded and Aho +BoFh+LoC(k) is asymptotically stable. The followingconclusion can be easily obtained by considering Theorem 10.6.1:

© 2010 b T l d F G LLC

Page 282: 1420085301 Predictive Control

266 Chapter 10. Output feedback synthesis approaches

Corollary 10.6.1. (Stability) For system (10.4.1)-(10.4.5), Algorithm 10.3is adopted. Suppose εN ⊇ Dh ⊇ 0, ∀h ∈ 1, . . . , N, x(0) ∈ ε1 and−e ≤ e(0) ≤ e. Then, limk→∞x(k), e(k), u(k) ∈ DN × Ωe × FN DN ⊇ 0,limk→∞F (k), Ao(k) = FN , ANo , and the input/state constraints are satis-fied for all k ≥ 0.

Remark 10.6.1. Both (10.1.11) and (10.4.7) are artificial. Treating the esti-mation error similarly to the input/state constraints brings conservativeness.Moreover, using the polytope to restrict and define the estimation error alsoincreases the computational burden.

For the case when there is no disturbance/noise, [28] gives a simplermethod.

© 2010 b T l d F G LLC

Page 283: 1420085301 Predictive Control

Bibliography

[1] H.H.J. Bloemen, T.J.J. van de Boom, and H.B. Verbruggen. Model-based predictive control for Hammerstein-Wiener systems. InternationalJournal of Control, 74:482–495, 2001.

[2] H.H.J. Bloemen, T.J.J. van de Boom, and H.B. Verbruggen. Optimizingthe end-point state-weighting matrix in model-based predictive control.Automatica, 38:1061–1068, 2002.

[3] S. Boyd, L. El Ghaoui, E. Feron, and V. Balakrishnan. Linear matrixinequalities in system and control theory. SIAM Studies in Applied Math-ematics. SIAM, Philadelphia, PA, 1994.

[4] M. Cao, Z. Wu, B. Ding, and C. Wang. On the stability of two-steppredictive controller based-on state observer. Journal of Systems Engi-neering and Electronics, 17:132–137, 2006.

[5] H. Chen and F. Allgower. A quasi-infinite horizon nonlinear model predic-tive control scheme with guaranteed stability. Automatica, 34:1205–1217,1998.

[6] D.W. Clarke, C. Mohtadi, and P.S. Tuffs. Generalized predictive con-trol, Part I: Basic algorithm and Part II: Extensions and interpretations.Automatica, 23:137–160, 1987.

[7] D.W. Clarke and R. Scattolini. Constrained receding-horizon predictivecontrol. IEE Control Theory and Applications, 138:347–354, 1991.

[8] B. Ding. Methods for stability analysis and synthesis of predictive control.PhD thesis, Shanghai Jiaotong University, China, 2003 (in Chinese).

[9] B. Ding and B. Huang. Constrained robust model predictive control fortime-delay systems with polytopic description. International Journal ofControl, 80:509–522, 2007.

[10] B. Ding and B. Huang. New formulation of robust MPC by incorporat-ing off-line approach with on-line optimization. International Journal ofSystems Science, 38:519–529, 2007.

267

© 2010 b T l d F G LLC

Page 284: 1420085301 Predictive Control

268 Bibliography

[11] B. Ding and B. Huang. Output feedback model predictive control for non-linear systems represented by Hammerstein-Wiener model. IET ControlTheory and Applications, 1(5):1302–1310, 2007.

[12] B. Ding and S. Li. Design and analysis of constrained nonlinear quadraticregulator. ISA Transactions, 42(3):251–258, April 2003.

[13] B. Ding, S. Li, and Y. Xi. Robust stability analysis for predictive controlwith input nonlinearity. In Proceedings of the American Control Confer-ence, pages 3626–3631. Denver, CO, 2003.

[14] B. Ding, S. Li, and Y. Xi. Stability analysis of generalized predictivecontrol with input nonlinearity based-on Popov’s theorem. ACTA AU-TOMATICA SINICA, 29(4):582–588, 2003.

[15] B. Ding, S. Li, P. Yang, and H. Wang. Multivariable GPC and Kleinman’scontroller: stability and equivalence. In Proceedings of the 3rd Interna-tional Conference on Machine Learning and Cybernetics, volume 1, pages329–333. Shanghai, 2004.

[16] B. Ding, H. Sun, P. Yang, H. Tang, and B. Wang. A design approachof constrained linear time-varying quadratic regulation. In Proceedingsof the 43rd IEEE Conference on Decision and Control, volume 3, pages2954–2959. Atlantis, Paradise Island, Bahamas, 2004.

[17] B. Ding and J.H. Tang. Constrained linear time-varying quadratic reg-ulation with guaranteed optimality. International Journal of SystemsScience, 38:115–124, 2007.

[18] B. Ding and Y. Xi. Stability analysis of generalized predictive controlbased on Kleinman’s controllers. Science in China Series F-InformationScience, 47(4):458–474, 2004.

[19] B. Ding and Y. Xi. Design and analysis of the domain of attraction forgeneralized predictive control with input nonlinearity. ACTA AUTO-MATICA SINICA, 30(6):954–960, 2004 (in Chinese).

[20] B. Ding and Y. Xi. A two-step predictive control design for input satu-rated Hammerstein systems. International Journal of Robust and Non-linear Control, 16:353–367, 2006.

[21] B. Ding, Y. Xi, M.T. Cychowski, and T. O’Mahony. Improving off-lineapproach to robust MPC based-on nominal performance cost. Automat-ica, 43:158–163, 2007.

[22] B. Ding, Y. Xi, M.T. Cychowski, and T. O’Mahony. A synthesis ap-proach of output feedback robust constrained model predictive control.Automatica, 44(1):258–264, 2008.

© 2010 b T l d F G LLC

Page 285: 1420085301 Predictive Control

Bibliography 269

[23] B. Ding, Y. Xi, and S. Li. Stability analysis on predictive control ofdiscrete-time systems with input nonlinearity. ACTA AUTOMATICASINICA, 29(6):827–834, 2003.

[24] B. Ding, Y. Xi, and S. Li. On the stability of output feedback predictivecontrol for systems with input nonlinearity. Asian Journal of Control,6(3):388–397, 2004.

[25] B. Ding and P. Yang. Synthesizing off-line robust model predictivecontroller based-on nominal performance cost. ACTA AUTOMATICASINICA, 32(2):304–310, 2006 (in Chinese).

[26] B. Ding, P. Yang, X. Li, H. Sun, and J. Yuan. Stability analysis of inputnonlinear predictive control systems based-on state observer. In Proceed-ings of the 23rd Chinese Control Conference, pages 659–663. Wuxi, 2004(in Chinese).

[27] B. Ding and J. Yuan. Steady properties of nonlinear removal gener-alized predictive control. Control Engineering, 11(4):364–367, 2004 (inChinese).

[28] B. Ding and T. Zou. Synthesizing output feedback predictive controlfor constrained uncertain time-varying discrete systems. ACTA AUTO-MATICA SINICA, 33(1):78–83, 2007 (in Chinese).

[29] B. Ding, T. Zou, and S. Li. Varying-horizon off-line robust predictivecontrol for time-varying uncertain systems. Control Theory and Applica-tions, 23(2):240–244, 2006 (in Chinese).

[30] K.P. Fruzzetti, A. Palazoglu, and K.A. Mcdonald. Nonlinear model pre-dictive control using Hammerstein models. Journal of Process Control,7(1):31–41, 1997.

[31] P. Gahinet, A. Nemirovski, A.J. Laub, and M. Chilali. LMI control toolboxfor use with Matlab, User’s guide. The MathWorks Inc., Natick, MA,1995.

[32] E.G. Gilbert and K.T. Tan. Linear systems with state and control con-straints: the theory and application of maximal output admissible sets.IEEE Transactions on Automatic Control, 36:1008–1020, 1991.

[33] T. Hu and Z. Lin. Semi-global stabilization with guaranteed regionalperformance of linear systems subject to actuator saturation. In Pro-ceedings of the American Control Conference, pages 4388–4392. Chicago,IL, 2000.

[34] T. Hu, D.E. Miller, and L. Qiu. Controllable regions of LTI discrete-time systems with input nonlinearity. In Proceedings of the 37th IEEEConference on Decision and Control, pages 371–376. Tampa, FL, 1998.

© 2010 b T l d F G LLC

Page 286: 1420085301 Predictive Control

270 Bibliography

[35] T.A. Johansen. Approximate explicit receding horizon control of con-strained nonlinear systems. Automatica, 40:293–300, 2004.

[36] D.L. Kleinman. Stabilizing a discrete, constant, linear system with ap-plication to iterative methods for solving the Riccati equation. IEEETransactions on Automatic Control, 19:252–254, 1974.

[37] M.V. Kothare, V. Balakrishnan, and M. Morari. Robust constrainedmodel predictive control using linear matrix inequalities. Automatica,32:1361–1379, 1996.

[38] B. Kouvaritakis, J.A. Rossiter, and J. Schuurmans. Efficient robust pre-dictive control. IEEE Transactions on Automatic Control, 45:1545–1549,2000.

[39] W.H. Kwon. Receding horizon control: model predictive control for statespace model. Springer-Verlag, 2004.

[40] W.H. Kwon and D.G. Byun. Receding horizon tracking control as apredictive control and its stability properties. International Journal ofControl, 50:1807–1824, 1989.

[41] W.H. Kwon, H. Choi, D.G. Byun, and S. Noh. Recursive solution of gen-eralized predictive control and its equivalence to receding horizon track-ing control. Automatica, 28:1235–1238, 1992.

[42] W.H. Kwon and A.E. Pearson. On the stabilization of a discrete constantlinear system. IEEE Transactions on Automatic Control, 20:800–801,1975.

[43] J.W. Lee. Exponential stability of constrained receding horizon controlwith terminal ellipsoidal constraints. IEEE Transactions on AutomaticControl, 45:83–88, 2000.

[44] X. Li, B. Ding, and Y. Niu. A synthesis approach of constrained robustregulation based-on partial closed-loop optimization. In Proceedings ofthe 18th Chinese Control and Decision Conference, pages 133–136. China,2006 (in Chinese).

[45] Z. Lin and A. Saberi. Semi-global exponential stabilization of linearsystems subject to input saturation via linear feedback. Systems andControl Letters, 21:225–239, 1993.

[46] Z. Lin, A. Saberi, and A.A. Stoorvogel. Semi-global stabilization of lin-ear discrete-time systems subject to input saturation via linear feedback— an ARE-based approach. IEEE Transactions on Automatic Control,41:1203–1207, 1996.

[47] Y. Lu and Y. Arkun. Quasi-Min-Max MPC algorithms for LPV systems.Automatica, 36:527–540, 2000.

© 2010 b T l d F G LLC

Page 287: 1420085301 Predictive Control

Bibliography 271

[48] L. Magni and R. Sepulchre. Stability margins of nonlinear receding-horizon control via inverse optimality. Systems and Control Letters,32:241–245, 1997.

[49] D.Q. Mayne, J.B. Rawlings, C.V. Rao, and P.O.M. Scokaert. Constrainedmodel predictive control: stability and optimality. Automatica, 36:789–814, 2000.

[50] M. Morari and N.L. Ricker. Model predictive control toolbox for use withMatlab: User’s guide, version 1. The MathWorks Inc., Natick, MA, 1995.

[51] E. Mosca and J. Zhang. Stable redesign of predictive control. Automatica,28:1229–1233, 1992.

[52] Y. Niu, B. Ding, and H. Sun. Robust stability of two-step predictivecontrol for systems with input nonlinearities. Control and Decision,21(4):457–461, 2006 (in Chinese).

[53] J.M. Ortega and W.C. Rheinboldt. Iterative solutions of nonlinear equa-tions in several variables. Academic Press, New York, 1970.

[54] R.K. Pearson and M. Pottmann. Gray-box identification of block-oriented nonlinear models. Journal of Process Control, 10:301–315, 2000.

[55] B. Pluymers, J.A.K. Suykens, and B. de Moor. Min-max feedback MPCusing a time-varying terminal constraint set and comments on “Efficientrobust constrained model predictive control with a time-varying terminalconstraint set.” Systems and Control Letters, 54:1143–1148, 2005.

[56] M.A. Poubelle, R.R. Bitmead, and M.R. Gevers. Fake algebraic Ric-cati techniques and stability. IEEE Transactions on Automatic Control,33:379–381, 1988.

[57] J. Richalet, A. Rault, J.L. Testud, and J. Papon. Model predictive heuris-tic control: application to industrial processes. Automatica, 14:413–428,1978.

[58] J. Schuurmans and J.A. Rossiter. Robust predictive control using tightsets of predicted states. IEE Control Theory and Applications, 147(1):13–18, 2000.

[59] P.O.M. Scokaert and D.Q. Mayne. Min-max feedback model predictivecontrol for constrained linear systems. IEEE Transactions on AutomaticControl, 43:1136–1142, 1998.

[60] P.O.M. Scokaert and J.B. Rawlings. Constrained linear quadratic regu-lation. IEEE Transactions on Automatic Control, 43:1163–1169, 1998.

© 2010 b T l d F G LLC

Page 288: 1420085301 Predictive Control

272 Bibliography

[61] Z. Wan and M.V. Kothare. An efficient off-line formulation of robustmodel predictive control using linear matrix inequalities. Automatica,39:837–846, 2003.

[62] Y.J. Wang and J.B. Rawlings. A new robust model predictive controlmethod I: theory and computation. Journal of Process Control, 14:231–247, 2004.

[63] Y. Xi. Predictive control. National Defence Industry Press, Beijing,China, 1991 (in Chinese).

[64] E. Yaz and H. Selbuz. A note on the receding horizon control method.International Journal of Control, 39:853–855, 1984.

[65] Q. Zhu, K. Warwick, and J.L. Douce. Adaptive general predictive con-troller for nonlinear systems. IEE Control Theory and Applications,138:33–40, 1991.

© 2010 b T l d F G LLC