A Parallel Quadratic Programming Algorithm for Model Predictive Control

Abstract In this paper, an iterative multiplicative algorithm is proposed for the fast solution of quadratic programming (QP) problems that arise in the real-time implementation of Model Predictive Control (MPC). The proposed algorithm — Parallel Quadratic Programming ( PQP ) — is amenable to fine-grained parallelization. Conditions on the convergence of the PQP algorithm are given and proved. Due to its extreme simplicity, even serial implementations offer considerable speed advantages. To demonstrate, PQP is applied to several simulation examples, including a stand-alone QP problem and two MPC examples. When implemented in MATLAB using single-thread computations, numerical simulations of PQP demonstrate a 5 – 10x speed-up compared to the MATLAB active-set based QP solver quadprog. A parallel implementation would offer a further speed-up, linear in the number of parallel processors.

[1]  L. Shepp,et al.  Maximum Likelihood Reconstruction for Emission Tomography , 1983, IEEE Transactions on Medical Imaging.

[2]  P. P. B. Eggermont,et al.  Multiplicative iterative algorithms for convex programming , 1990 .

[3]  P. Tseng,et al.  On the linear convergence of descent methods for convex essentially smooth minimization , 1992 .

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

[5]  H. Sebastian Seung,et al.  Learning the parts of objects by non-negative matrix factorization , 1999, Nature.

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

[7]  Jacek Gondzio,et al.  Parallel interior-point solver for structured linear programs , 2003, Math. Program..

[8]  Rajesh Rajamani,et al.  Model predictive control of transitional maneuvers for adaptive cruise control vehicles , 2004, IEEE Transactions on Vehicular Technology.

[9]  Gene H. Golub,et al.  Numerical solution of saddle point problems , 2005, Acta Numerica.

[10]  A. Wills,et al.  Zames-Falb multipliers for quadratic programming , 2005, Proceedings of the 44th IEEE Conference on Decision and Control.

[11]  Francesco Borrelli,et al.  Constrained Optimal Control of Linear and Hybrid Systems , 2003, IEEE Transactions on Automatic Control.

[12]  E. Mosca MODEL-BASED PREDICTIVE CONTROL , 2006 .

[13]  Jacek Gondzio,et al.  Parallel interior-point solver for structured quadratic programs: Application to financial planning problems , 2007, Ann. Oper. Res..

[14]  M. Bertero,et al.  Iterative Image Reconstruction: a Point of View , 2007 .

[15]  Eduardo F. Camacho,et al.  Model Predictive Controllers , 2007 .

[16]  Daniel D. Lee,et al.  Multiplicative Updates for Nonnegative Quadratic Programming , 2007, Neural Computation.

[17]  E. Davison,et al.  A Fast MPC Algorithm Using Nonfeasible Active Set Methods , 2008 .

[18]  Wen-mei W. Hwu,et al.  MCUDA: An Efficient Implementation of CUDA Kernels for Multi-core CPUs , 2008, LCPC.

[19]  Bart De Schutter,et al.  Multi-agent model predictive control for transportation networks: Serial versus parallel schemes , 2008, Eng. Appl. Artif. Intell..

[20]  Zdenek Dostl Optimal Quadratic Programming Algorithms: With Applications to Variational Inequalities , 2009 .

[21]  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.

[22]  Manfred Morari,et al.  Real-time MPC - Stability through robust MPC design , 2009, Proceedings of the 48h IEEE Conference on Decision and Control (CDC) held jointly with 2009 28th Chinese Control Conference.

[23]  Liuping Wang,et al.  Model Predictive Control System Design and Implementation Using MATLAB , 2009 .

[24]  Jie Cheng,et al.  Programming Massively Parallel Processors. A Hands-on Approach , 2010, Scalable Comput. Pract. Exp..

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

[26]  Matthew Brand,et al.  Parallel quadratic programming for image processing , 2011, 2011 18th IEEE International Conference on Image Processing.