Recent Advances in Quadratic Programming Algorithms for Nonlinear Model Predictive Control

Over the past decades, the advantages of optimization-based control techniques over conventional controllers inspired developments that enabled the use of model predictive control (MPC) in applications with very high sampling rates. Since at the heart of most linear and nonlinear MPC controllers resides a quadratic programming (QP) solver, the implementation of efficient algorithms that exploit the underlying problem structure drew the attention of many researchers and the progress in the field has been remarkable. The aim of this paper is to summarize the main algorithmic advances in the field and to provide a consistent benchmark between a selection of software tools that have been recently developed. The code that was used for the simulations is publicly available for readers that wish to reproduce the results or test the benchmarked solvers on their own nonlinear MPC applications.

[1]  G. R. Sullivan,et al.  The development of an efficient optimal control package , 1978 .

[2]  Moritz Diehl,et al.  A dual Newton strategy for scenario decomposition in robust multistage MPC , 2018 .

[3]  W. C. Li,et al.  Newton-type control strategies for constrained nonlinear processes , 1989 .

[4]  Stephen P. Boyd,et al.  CVXGEN: a code generator for embedded convex optimization , 2011, Optimization and Engineering.

[5]  Christian Kirches,et al.  An SR1/BFGS SQP algorithm for nonconvex nonlinear programs with block-diagonal Hessian matrix , 2016, Math. Program. Comput..

[6]  Manfred Morari,et al.  Real-time input-constrained MPC using fast gradient methods , 2009, Proceedings of the 48h IEEE Conference on Decision and Control (CDC) held jointly with 2009 28th Chinese Control Conference.

[7]  Hans Bock,et al.  Constrained Optimal Feedback Control of Systems Governed by Large Differential Algebraic Equations , 2007 .

[8]  Stephen P. Boyd,et al.  Embedded code generation using the OSQP solver , 2017, 2017 IEEE 56th Annual Conference on Decision and Control (CDC).

[9]  H. Bock,et al.  Recent Advances in Parameteridentification Techniques for O.D.E. , 1983 .

[10]  Janick V. Frasch,et al.  Mixed–-Level Iteration Schemes for Nonlinear Model Predictive Control , 2012 .

[11]  Daniel Axehill,et al.  Controlling the level of sparsity in MPC , 2014, Syst. Control. Lett..

[12]  P. Goulart,et al.  A New Hot-start Interior-point Method for Model Predictive Control* , 2011 .

[13]  L. Biegler,et al.  Quadratic programming methods for reduced Hessian SQP , 1994 .

[14]  Stefan Richter,et al.  Computational complexity certification of gradient methods for real-time model predictive control , 2012 .

[15]  Alexander Domahidi,et al.  FORCES NLP: an efficient implementation of interior-point methods for multistage nonlinear nonconvex programs , 2020, Int. J. Control.

[16]  H. Bock,et al.  A Multiple Shooting Algorithm for Direct Solution of Optimal Control Problems , 1984 .

[17]  L. Biegler,et al.  QPSchur: A dual, active-set, Schur-complement method for large-scale and structured convex quadratic programming , 2006 .

[18]  Janick V. Frasch,et al.  A new quadratic programming strategy for efficient sparsity exploitation in SQP-based nonlinear MPC and MHE , 2014 .

[19]  Yurii Nesterov,et al.  Introductory Lectures on Convex Optimization - A Basic Course , 2014, Applied Optimization.

[20]  Sebastian Sager,et al.  Numerical methods for mixed-integer optimal control problems , 2006 .

[21]  Stephen J. Wright Structured interior point methods for optimal control , 1991, [1991] Proceedings of the 30th IEEE Conference on Decision and Control.

[22]  Johannes P. Schlöder,et al.  An efficient multiple shooting based reduced SQP strategy for large-scale dynamic process optimization. Part 1: theoretical aspects , 2003, Comput. Chem. Eng..

[23]  Jacek Gondzio,et al.  A New Unblocking Technique to Warmstart Interior Point Methods Based on Sensitivity Analysis , 2008, SIAM J. Optim..

[24]  Colin Neil Jones,et al.  A Parametric Nonconvex Decomposition Algorithm for Real-Time and Distributed NMPC , 2016, IEEE Transactions on Automatic Control.

[25]  Moritz Diehl,et al.  ACADO toolkit—An open‐source framework for automatic control and dynamic optimization , 2011 .

[26]  Moritz Diehl,et al.  An Augmented Lagrangian Based Algorithm for Distributed NonConvex Optimization , 2016, SIAM J. Optim..

[27]  David Q. Mayne,et al.  Model predictive control: Recent developments and future promise , 2014, Autom..

[28]  Toshiyuki Ohtsuka,et al.  A continuation/GMRES method for fast computation of nonlinear receding horizon control , 2004, Autom..

[29]  H. Bock,et al.  Time‐optimal control of automobile test drives with gear shifts , 2010 .

[30]  Moritz Diehl,et al.  A Homotopy-based Nonlinear Interior-Point Method for NMPC , 2017 .

[31]  Stephen J. Wright,et al.  Numerical Optimization (Springer Series in Operations Research and Financial Engineering) , 2000 .

[32]  Moritz Diehl,et al.  Autogenerating microsecond solvers for nonlinear MPC: A tutorial using ACADO integrators , 2015 .

[33]  Alberto Bemporad,et al.  An Accelerated Dual Gradient-Projection Algorithm for Embedded Linear Model Predictive Control , 2014, IEEE Transactions on Automatic Control.

[34]  Alberto Bemporad,et al.  From linear to nonlinear MPC: bridging the gap via the real-time iteration , 2020, Int. J. Control.

[35]  Moritz Diehl,et al.  An auto-generated real-time iteration algorithm for nonlinear MPC in the microsecond range , 2011, Autom..

[36]  Victor M. Zavala,et al.  The advanced-step NMPC controller: Optimality, stability and robustness , 2009, Autom..

[37]  Philip E. Gill,et al.  User's guide for SOL/QPSOL: a Fortran package for quadratic programming , 1983 .

[38]  John Bagterp Jørgensen,et al.  Efficient implementation of the Riccati recursion for solving linear-quadratic control problems , 2013, 2013 IEEE International Conference on Control Applications (CCA).

[39]  Moritz Diehl,et al.  An efficient implementation of partial condensing for Nonlinear Model Predictive Control , 2016, 2016 IEEE 55th Conference on Decision and Control (CDC).

[40]  Moritz Diehl,et al.  Multiple Shooting in a Microsecond , 2015 .

[41]  D. Bertsekas,et al.  TWO-METRIC PROJECTION METHODS FOR CONSTRAINED OPTIMIZATION* , 1984 .

[42]  Stephen J. Wright,et al.  Application of Interior-Point Methods to Model Predictive Control , 1998 .

[43]  M. Diehl,et al.  Real-time optimization and nonlinear model predictive control of processes governed by differential-algebraic equations , 2000 .

[44]  Rolf Findeisen,et al.  μAO-MPC: A free code generation tool for embedded real-time linear model predictive control , 2013, 2013 American Control Conference.

[45]  Torkel Glad,et al.  A Method for State and Control Constrained Linear Quadratic Control Problems , 1984 .

[46]  Pantelis Sopasakis,et al.  A global piecewise smooth Newton method for fast large-scale model predictive control , 2011, Autom..

[47]  Pantelis Sopasakis,et al.  A simple and efficient algorithm for nonlinear model predictive control , 2017, 2017 IEEE 56th Annual Conference on Decision and Control (CDC).

[48]  Manfred Morari,et al.  An alternative use of the Riccati recursion for efficient optimization , 2012, Syst. Control. Lett..

[49]  Hans Joachim Ferreau,et al.  Efficient Numerical Methods for Nonlinear MPC and Moving Horizon Estimation , 2009 .

[50]  Moritz Diehl,et al.  A Lyapunov Function for Economic Optimizing Model Predictive Control , 2011, IEEE Transactions on Automatic Control.

[51]  Marc C. Steinbach,et al.  A structured interior point SQP method for nonlinear optimal control problems , 1994 .

[52]  A. Bemporad,et al.  An accelerated dual gradient-projection algorithm for linear model predictive control , 2012, 2012 IEEE 51st IEEE Conference on Decision and Control (CDC).

[53]  Stephen J. Wright,et al.  Object-oriented software for quadratic programming , 2003, TOMS.

[54]  D. Bertsekas Projected Newton methods for optimization problems with simple constraints , 1981, 1981 20th IEEE Conference on Decision and Control including the Symposium on Adaptive Processes.

[55]  Johannes P. Schlöder,et al.  An efficient multiple shooting based reduced SQP strategy for large-scale dynamic process optimization: Part II: Software aspects and applications , 2003, Comput. Chem. Eng..

[56]  Hans Bock,et al.  Efficient Numerics for Nonlinear Model Predictive Control , 2010 .

[57]  Manfred Morari,et al.  Auto-generated algorithms for nonlinear model predictive control on long and on short horizons , 2013, 52nd IEEE Conference on Decision and Control.

[58]  S. Joe Qin,et al.  A survey of industrial model predictive control technology , 2003 .

[59]  MORITZ DIEHL,et al.  A Real-Time Iteration Scheme for Nonlinear Optimization in Optimal Feedback Control , 2005, SIAM J. Control. Optim..

[60]  Muhammad Nadeem Rafique Chaudhary,et al.  Real time optimization of chemical processes , 2009 .

[61]  M. J. D. Powell,et al.  A fast algorithm for nonlinearly constrained optimization calculations , 1978 .

[62]  John Bagterp Jørgensen,et al.  High-performance small-scale solvers for linear Model Predictive Control , 2014, 2014 European Control Conference (ECC).

[63]  Gianluca Frison,et al.  Numerical Methods for Model Predictive Control , 2012 .

[64]  Frank Allgöwer,et al.  A Stabilizing Real-time Implementation of Nonlinear Model Predictive Control , 2007 .

[65]  Marko Bacic,et al.  Model predictive control , 2003 .

[66]  Moritz Diehl,et al.  A parallel quadratic programming method for dynamic optimization problems , 2015, Math. Program. Comput..

[67]  Johannes P. Schlöder,et al.  Complementary Condensing for the Direct Multiple Shooting Method , 2009, HPSC.

[68]  Stefano Di Cairano,et al.  Projection-free parallel quadratic programming for linear model predictive control , 2013, Int. J. Control.

[69]  Moritz Diehl,et al.  Block Condensing for Fast Nonlinear MPC with the Dual Newton Strategy , 2015 .

[70]  Leonard Wirsching Multi-level iteration schemes with adaptive level choice for nonlinear model predictive control , 2018 .

[71]  John Bagterp Jørgensen,et al.  A fast condensing method for solution of linear-quadratic control problems , 2013, 52nd IEEE Conference on Decision and Control.

[72]  M. Morari,et al.  The explicit solution of constrained LP-based receding horizon control , 2000, Proceedings of the 39th IEEE Conference on Decision and Control (Cat. No.00CH37187).

[73]  Knut Graichen,et al.  The gradient based nonlinear model predictive control software GRAMPC , 2014, 2014 European Control Conference (ECC).

[74]  Stephen P. Boyd,et al.  Fast Model Predictive Control Using Online Optimization , 2010, IEEE Transactions on Control Systems Technology.

[75]  P. Giselsson Improved Fast Dual Gradient Methods for Embedded Model Predictive Control , 2014 .

[76]  Stephen J. Wright Partitioned Dynamic Programming for Optimal Control , 1991, SIAM J. Optim..

[77]  Moritz Diehl,et al.  BLASFEO: Basic linear algebra subroutines for embedded optimization , 2017, ACM Trans. Math. Softw..

[78]  Manfred Morari,et al.  Efficient interior point methods for multistage problems arising in receding horizon control , 2012, 2012 IEEE 51st IEEE Conference on Decision and Control (CDC).

[79]  Christian Kirches,et al.  qpOASES: a parametric active-set algorithm for quadratic programming , 2014, Mathematical Programming Computation.

[80]  M. Diehl,et al.  Fast NMPC of a chain of masses connected by springs , 2006, 2006 IEEE Conference on Computer Aided Control System Design, 2006 IEEE International Conference on Control Applications, 2006 IEEE International Symposium on Intelligent Control.

[81]  Stephen J. Wright Primal-Dual Interior-Point Methods , 1997, Other Titles in Applied Mathematics.

[82]  Gianluca Frison,et al.  Algorithms and Methods for High-Performance Model Predictive Control , 2016 .

[83]  H. J. Ferreau,et al.  An online active set strategy to overcome the limitations of explicit MPC , 2008 .

[84]  Joel Andersson,et al.  A General-Purpose Software Framework for Dynamic Optimization (Een algemene softwareomgeving voor dynamische optimalisatie) , 2013 .