ParNMPC – a parallel optimisation toolkit for real-time nonlinear model predictive control

Real-time optimisation for nonlinear model predictive control (NMPC) has always been challenging, especially for fast-sampling and large-scale applications. This paper presents an efficient impleme...

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

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

[3]  Toshiyuki Ohtsuka,et al.  A Highly Parallelizable Newton-type Method for Nonlinear Model Predictive Control , 2018 .

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

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

[6]  Moritz Diehl,et al.  A block based ALADIN scheme for highly parallelizable direct Optimal Control , 2016, 2016 American Control Conference (ACC).

[7]  Isak Nielsen,et al.  Direct Parallel Computations of Second-Order Search Directions for Model Predictive Control , 2019, IEEE Transactions on Automatic Control.

[8]  R. M. McLeod,et al.  Mean Value Theorems for Vector Valued Functions , 1965, Proceedings of the Edinburgh Mathematical Society.

[9]  L. Dagum,et al.  OpenMP: an industry standard API for shared-memory programming , 1998 .

[10]  Moritz Diehl,et al.  Towards a modular software package for embedded optimization , 2018 .

[11]  Olivier Stasse,et al.  The Pinocchio C++ library : A fast and flexible implementation of rigid body dynamics algorithms and their analytical derivatives , 2019, 2019 IEEE/SICE International Symposium on System Integration (SII).

[12]  Isabelle Queinnec,et al.  Benchmark model of Quanser's 3 DOF Helicopter , 2018 .

[13]  Lars Imsland,et al.  Efficient implementation of solvers for linear model predictive control on embedded devices , 2014, 2014 IEEE Conference on Control Applications (CCA).

[14]  Y. Nesterov A method for solving the convex programming problem with convergence rate O(1/k^2) , 1983 .

[15]  Takatsugu Ono,et al.  Parallel Precomputation with Input Value Prediction for Model Predictive Control Systems , 2018, IEICE Trans. Inf. Syst..

[16]  Alessandro Beghi,et al.  MATMPC - A MATLAB Based Toolbox for Real-time Nonlinear Model Predictive Control , 2018, 2019 18th European Control Conference (ECC).

[17]  Markus Hehn,et al.  A flying inverted pendulum , 2011, 2011 IEEE International Conference on Robotics and Automation.

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

[19]  Lorenz T. Biegler,et al.  Line Search Filter Methods for Nonlinear Programming: Motivation and Global Convergence , 2005, SIAM J. Optim..

[20]  Toshiyuki Ohtsuka,et al.  A parallel Newton-type method for nonlinear model predictive control , 2019, Autom..

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

[22]  Knut Graichen,et al.  A software framework for embedded nonlinear model predictive control using a gradient-based augmented Lagrangian approach (GRAMPC) , 2018, Optimization and Engineering.

[23]  Hiroshi Yamashita A globally convergent primal-dual interior point method for constrained optimization , 1998 .

[24]  Eric C. Kerrigan,et al.  An FPGA implementation of a sparse quadratic programming solver for constrained predictive control , 2011, FPGA '11.

[25]  Lorenz T. Biegler,et al.  Advanced-Multi-Step Nonlinear Model Predictive Control , 2013 .

[26]  Y. Saad,et al.  GMRES: a generalized minimal residual algorithm for solving nonsymmetric linear systems , 1986 .

[27]  David Angeli,et al.  Fundamentals of economic model predictive control , 2012, 2012 IEEE 51st IEEE Conference on Decision and Control (CDC).

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

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

[30]  Arto Visala,et al.  A toolkit for nonlinear model predictive control using gradient projection and code generation , 2015 .

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

[32]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).

[33]  Oskar von Stryk,et al.  Direct and indirect methods for trajectory optimization , 1992, Ann. Oper. Res..

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

[35]  Anuradha M. Annaswamy,et al.  Parallelized model predictive control , 2013, 2013 American Control Conference.

[36]  Lorenz T. Biegler,et al.  On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming , 2006, Math. Program..

[37]  Manfred Morari,et al.  Embedded Online Optimization for Model Predictive Control at Megahertz Rates , 2013, IEEE Transactions on Automatic Control.

[38]  Sven Leyffer,et al.  Nonlinear programming without a penalty function , 2002, Math. Program..

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