2nd Edition

A First Course in Predictive Control

By J.A. Rossiter Copyright 2018
    428 Pages
    by CRC Press

    426 Pages
    by CRC Press

    The book presents a significant expansion in depth and breadth of the previous edition. It includes substantially more numerical illustrations and copious supporting MATLAB code that the reader can use to replicate illustrations or build his or her own. The code is deliberately written to be as simple as possible and easy to edit. The book is an excellent starting point for any researcher to gain a solid grounding in MPC concepts and algorithms before moving into application or more advanced research topics. Sample problems for readers are embedded throughout the chapters, and in-text questions are designed for readers to demonstrate an understanding of concepts through numerical simulation.

    1 Introduction and the industrial need for predictive control

    1.1 Guidance for the lecturer/reader

    1.2 Motivation and introduction

    1.3 Classical control assumptions

    1.4 Examples of systems hard to control effectively with classical methods

    1.5 The potential value of prediction

    1.6 The main components of MPC

    1.7 MPC philosophy in summary

    1.8 MATLAB files from this chapter

    1.9 Reminder of book organization

    2 Prediction in model predictive control

    2.1 Introduction

    2.2 Guidance for the lecturer/reader

    2.3 General format of prediction modelling

    2.4 Prediction with state space models

    2.5 Prediction with transfer function models – matrix methods

    2.6 Using recursion to find prediction matrices for CARIMA models

    2.7 Prediction with independent models

    2.8 Prediction with FIR models

    2.9 Closed-loop prediction

    2.10 Summary of Chapter

    2.11 Summary of MATLAB code supporting prediction

    3 Predictive functional control

    3.1 Introduction

    3.2 Guidance for the lecturer/reader

    3.3 Basic concepts in PFC

    3.4 PFC with first order models

    3.5 PFC with higher order models

    3.6 Stability results for PFC

    3.7 PFC with ramp targets

    3.8 Chapter summary

    3.9 MATLAB code available for readers

    4 Predictive control – the basic algorithm

    4.1 Introduction

    4.2 Guidance for the lecturer/reader

    4.3 Summary of main results

    4.4 The GPC performance index

    4.5 GPC algorithm formulation for transfer function models

    4.6 GPC formulation for finite impulse response models and Dynamic Matrix Control

    4.7 Formulation of GPC with an independent prediction model

    4.8 GPC with a state space model

    4.9 Chapter summary and general comments on stability and tuning of GPC

    4.10 Summary of MATLAB code supporting GPC simulation

    5 Tuning GPC: good and bad choices of the horizons

    5.1 Introduction

    5.2 Guidance for the lecturer/reader

    5.3 Poor choices lead to poor behavior

    5.4 Concepts of well posed and ill posed optimizations

    5.5 Illustrative simulations to show impact of different parameter choices on GPC behavior

    5.6 Systematic guidance for "tuning" GPC

    5.7 MIMO examples

    5.8 Dealing with open-loop unstable systems

    5.9 Chapter summary: guidelines for tuning GPC

    5.10 Useful MATLAB code

    6 Dual mode MPC (OMPC and SOMPC) and stability guarantees

    6.1 Introduction

    6.2 Guidance for the lecturer

    6.3 Foundation of a well posed MPC algorithm

    6.4 Dual mode MPC – an overview

    6.5 Algebraic derivations for dual mode MPC

    6.6 Closed-loop paradigm implementations of OMPC

    6.7 Numerical illustrations of OMPC and SOMPC

    6.8 Motivation for SOMPC: Different choices for mode 2 of dual mode control

    6.9 Chapter summary

    6.10 MATLAB files in support of this chapter

    7 Constraint handling in GPC/finite horizon predictive control

    7.1 Introduction

    7.2 Guidance for the lecturer

    7.3 Introduction

    7.4 Description of typical constraints and linking to GPC

    7.5 Constrained GPC

    7.6 Understanding a quadratic programming (QP) optimization

    7.7 Chapter summary

    7.8 MATLAB code supporting constrained MPC simulation

    8 Constraint handling in dual mode predictive control

    8.1 Introduction

    8.2 Guidance for the lecturer/reader and introduction

    8.3 Background and assumptions

    8.4 Description of simple or finite horizon constraint handling approach for dual mode algorithms

    8.5 Concepts of redundancy, recursive feasibility, admissible sets and autonomous models

    8.6 The OMPC/SOMPC algorithm using an MCAS to represent constraint handling

    8.7 Numerical examples of the SOMPC/OMPMC approach with constraint handling

    8.8 Discussion on the impact of cost function and algorithm selection on feasibility

    8.9 Chapter summary

    8.10 Summary of MATLAB code supporting constrained OMPC simulation

    9 Conclusions

    9.1 Introduction

    9.2 Design choices

    9.3 Summary

    Appendix A Tutorial and exam questions and case studies

    A.1 Typical exam and tutorial questions with minimal computation

    A.2 Generic questions

    A.3 Case study based questions for use with assignments

    Appendix B Further reading

    B.1 Introduction

    B.2 Guidance for the lecturer/reader

    B.3 Simple variations on the basic algorithm

    B.4 Parametric approaches to solving quadratic programming

    B.5 Prediction mismatch and the link to feedforward design in MPC

    B.6 Robust MPC: ensuring feasibility in the presence of uncertainty

    B.7 Invariant sets and predictive control

    B.8 Conclusions

    Appendix C Notation, models and useful background

    C.1 Guidance for the lecturer/reader

    C.2 Notation for linear models

    C.3 Minimization of functions of many variables

    C.4 Common notation

    Biography

    Dr. Rossiter has been researching predictive control since the late 1980s, and he has published over 300 articles in journals and conferences on the topic. His particular contributions have focused on stability, feasibility and computational simplicity. He also has a parallel interest in developing good practice in university education. He has a Bachelor’s degree and a doctorate from the University of Oxford. He spent 9 years as a Lecturer at Loughborough University, and he is currently a Reader at the University of Sheffield.

    "The book seems to be one of the first in presenting teaching level concepts of predictive control. Indeed, it is a view from industrial point of view since it discusses the PFC which was one of the first ideas of predictive control in the 70s. Since then, of course, things evolved drastically with the computational power, allowing a fiddler’s paradise of predictive control algorithms and designs, and some of the most popular are mentioned in the book (GPC, DMC). I find it commendable of the author, a well-established scholar in our community, to pursue such a project, and I am very happy to promote it. I myself am teaching predictive control and I already have found that the content of this book (as it is at this moment in time) is very useful and approachable for engineering students.

    The comparison with PID controller is of course necessary and justified, since 95% of the loops in industry are indeed performed by PID controllers. The remaining ones need optimization and thus predictive control has gained a broad access in manufacturing and process industry. I believe the section "why is predictive control logical" will stir and stimulate a lot of brainstorming sessions in both academia and research community, which is very nice indeed. The examples and overall structure of the book is excellently constructed to allow step-by-step systematic teaching structure and thus enhancing the potential impact on the student’s learning curve. The supplementing with Matlab code is very useful indeed. The pedagogical skills exercised by the author are indeed expected since he is an active member in control education community.
    Overall, this book bears a significant added value to the academic and why not, the research community."
    Clara Mihaela Ionescu, Ghent University, Belgium