Model Predictive Control Algorithms for Applications with Millisecond Timescales (Modelgebaseerde predictieve controle algoritmes voor toepassingen met milliseconde tijdschalen)

Publication date: 2011-10-06

Author:

Ferreau, Hans Joachim
Diehl, Moritz ; Vandewalle, Joos

Keywords:

model predictive control, numerical optimal control, dynamic optimisation, embedded optimisation, parametric quadratic programming, online active set strategy, infeasibility handling, real-time iteration algorithm, code generation, open-source software, qpOASES, ACADO Toolkit, SISTA

Abstract:

The last three decades have seen a rapidly increasing number of applications where model predictive control (MPC) led to better control performance than more traditional approaches. This thesis aims at lowering the practical burden of applying fast MPC algorithms in the real-world. To this aim, it contributes two software packages, which are released as open-source code in order to stimulate their widespread use. Both packages implement previously published methods but enrich them with a number of new theoretical and algorithmic ideas. The first part of this thesis focusses on efficiently solving quadratic programs (QPs) as arising in linear MPC problems. To this end, it reviews the author's previous work on developing an online active set strategy to exploit the parametric nature of these QPs. This strategy is extended with ideas for initialising the solution procedure and treating QPs with semi-definite Hessian matrices. The software package qpOASES implements the online active set strategy and its extensions together with a number of tailored solution variants for special QP formulations. It offers interfaces to third-party software like Matlab/Simulink and has been successfully used in a number of academic real-world MPC applications. Moreover, two industrial applications of qpOASES--dealing with emission control of integral gas engines and feasibility management for MPC in the process industry--are described. These industrial case studies also led to further theoretical ideas, namely the use of MPC with an asymmetric cost function and a novel method for handling infeasible QPs based on the online active set strategy. The second part addresses nonlinear MPC problems and presents the ACADO Toolkit, a new software environment and algorithm collection for automatic control and dynamic optimisation. It has been designed for setting-up nonlinear optimal control and MPC problems in a user-friendly way and solving them efficiently. In particular, the ACADO Toolkit implements two algorithmic variants of the real-time iteration scheme: a Gauss-Newton approach for nonlinear MPC formulations involving a tracking objective function as well as an exact Hessian approach for tackling time-optimal formulations. The underlying QP subproblems are solved by means of the online active set strategy. The ACADO Toolkit features an intuitive symbolic syntax for formulating MPC problems, which offers a couple of advantageous possibilities. Most importantly, it allows the user to automatically generate optimised, highly efficient C code that is tailored to each respective MPC problem formulation. Numerical results show that the exported code exhibits a promising computational performance allowing application of nonlinear MPC to non-trivial processes at kilohertz sampling rates.