Mixed-integer optimal control of fast dynamical systems

Many applications in engineering, computer science and economics involve mixed-integer optimal control problems. Solving these problems in real-time is a challenging task because of the explosion of integer combinations to evaluate. This thesis focuses on the development of new algorithms for mixed-integer programming with an emphasis on optimal control problems of fast dynamical systems with discrete controls. The first part proposes two reformulations to reduce the computational complexity. The first reformulation avoids integer variables altogether. By considering a sequence of switched dynamics, we analyze the switching time optimization problem. Even though it is a continuous smooth problem, it is non-convex and the cost function and derivatives are hard to compute. We develop a new efficient method to compute the cost function and its derivatives. Our technique brings up to two orders of magnitude speedups with respect to state-of-the-art tools. The second approach reduces the number of integer decisions. In hybrid model predictive control (MPC) the computational complexity grows exponentially with the horizon length. Using approximate dynamic programming (ADP) we reduce the horizon length while maintaining good control performance by approximating the tail cost offline. This approach allows, for the first time, the application of such control techniques to fast dynamical systems with sampling times of only a few microseconds. The second part investigates embedded branch-and-bound algorithms for mixed-integer quadratic programs (MIQPs). A core component of these methods is the solution of continuous quadratic programs (QPs). We develop OSQP, a new robust and efficient general-purpose QP solver based on the alternating direction method of multipliers (ADMM) and able, for the first time, to detect infeasible problems. We include OSQP into a custom branch-and-bound algorithm suitable for embedded systems. Our extension requires only a single matrix factorization and exploits warm-starting, thereby greatly reducing the number of ADMM iterations required. Numerical examples show that our algorithm solves small to medium scale MIQPs more quickly than commercial solvers.

[1]  D. Ruiz A Scaling Algorithm to Equilibrate Both Rows and Columns Norms in Matrices 1 , 2001 .

[2]  Joachim Holtz,et al.  The representation of AC machine dynamics by complex signal flow graphs , 1995, IEEE Trans. Ind. Electron..

[3]  Christodoulos A. Floudas,et al.  Mixed Integer Nonlinear Programming , 2009, Encyclopedia of Optimization.

[4]  H. Axelsson,et al.  Algorithm for Switching-Time Optimization in Hybrid Dynamical Systems , 2005, Proceedings of the 2005 IEEE International Symposium on, Mediterrean Conference on Control and Automation Intelligent Control, 2005..

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

[6]  Dimitri P. Bertsekas,et al.  Dynamic Programming and Optimal Control, Two Volume Set , 1995 .

[7]  Sina Ober-Blöbaum,et al.  Second-Order Switching Time Optimization for Switched Dynamical Systems , 2016, IEEE Transactions on Automatic Control.

[8]  P. Wolfe THE SIMPLEX METHOD FOR QUADRATIC PROGRAMMING , 1959 .

[9]  Jing Zhang,et al.  Automated Custom Code Generation for Embedded, Real-time Second Order Cone Programming , 2014 .

[10]  Fred W. Glover,et al.  The feasibility pump , 2005, Math. Program..

[11]  Alberto Bemporad,et al.  Optimal control of continuous-time switched affine systems , 2006, IEEE Transactions on Automatic Control.

[12]  Ralph Kennel,et al.  Predictive control in power electronics and drives , 2008, 2008 IEEE International Symposium on Industrial Electronics.

[13]  Jorge J. Moré,et al.  Digital Object Identifier (DOI) 10.1007/s101070100263 , 2001 .

[14]  Cleve B. Moler,et al.  Nineteen Dubious Ways to Compute the Exponential of a Matrix, Twenty-Five Years Later , 1978, SIAM Rev..

[15]  R. Tibshirani Regression Shrinkage and Selection via the Lasso , 1996 .

[16]  Stephen P. Boyd,et al.  Branch and Bound Methods , 1987 .

[17]  Udaya K. Madawala,et al.  Model Predictive Direct Current Control of Modular Multilevel Converters: Modeling, Analysis, and Experimental Evaluation , 2015, IEEE Transactions on Power Electronics.

[18]  Jamal Daafouz,et al.  Modal occupation measures and LMI relaxations for nonlinear switched systems control , 2014, Autom..

[19]  Paul J. Goulart,et al.  Tight Global Linear Convergence Rate Bounds for Operator Splitting Methods , 2018, IEEE Transactions on Automatic Control.

[20]  Ralph Kennel,et al.  Model predictive control -- a simple and powerful method to control power converters , 2009, 2009 IEEE 6th International Power Electronics and Motion Control Conference.

[21]  D K Smith,et al.  Numerical Optimization , 2001, J. Oper. Res. Soc..

[22]  Jianghai Hu,et al.  On the Value Functions of the Discrete-Time Switched LQR Problem , 2009, IEEE Transactions on Automatic Control.

[23]  Edith Clarke,et al.  Determination of Instantaneous Currents and Voltages by Means of Alpha, Beta, and Zero Components , 1951, Transactions of the American Institute of Electrical Engineers.

[24]  J. W. Nieuwenhuis,et al.  Boekbespreking van D.P. Bertsekas (ed.), Dynamic programming and optimal control - volume 2 , 1999 .

[25]  Jay H. Lee,et al.  Model predictive control: past, present and future , 1999 .

[26]  S. Shankar Sastry,et al.  Consistent Approximations for the Optimal Control of Constrained Switched Systems - Part 2: An Implementable Algorithm , 2013, SIAM J. Control. Optim..

[27]  A. Bemporad Solving Mixed-Integer Quadratic Programs via Nonnegative Least Squares , 2015 .

[28]  Magnus Egerstedt,et al.  Transition-time optimization for switched-mode dynamical systems , 2006, IEEE Transactions on Automatic Control.

[29]  Stephen P. Boyd,et al.  Infeasibility Detection in the Alternating Direction Method of Multipliers for Convex Optimization , 2018, Journal of Optimization Theory and Applications.

[30]  Richard Sinkhorn,et al.  Concerning nonnegative matrices and doubly stochastic matrices , 1967 .

[31]  Alberto Bemporad,et al.  The explicit linear quadratic regulator for constrained systems , 2003, Autom..

[32]  P. Lions,et al.  Splitting Algorithms for the Sum of Two Nonlinear Operators , 1979 .

[33]  Alberto Bemporad,et al.  Control of systems integrating logic, dynamics, and constraints , 1999, Autom..

[34]  Eric C. Kerrigan,et al.  Nonlinear Predictive Control on a Heterogeneous Computing Platform , 2017, ArXiv.

[35]  Manfred Morari,et al.  Model predictive control: Theory and practice - A survey , 1989, Autom..

[36]  Jonathan Eckstein Splitting methods for monotone operators with applications to parallel optimization , 1989 .

[37]  V. Klee,et al.  HOW GOOD IS THE SIMPLEX ALGORITHM , 1970 .

[38]  Jorge Nocedal,et al.  Knitro: An Integrated Package for Nonlinear Optimization , 2006 .

[39]  Stephen P. Boyd,et al.  Stochastic Matrix-Free Equilibration , 2016, J. Optim. Theory Appl..

[40]  Robert E. Bixby,et al.  A Brief History of Linear and Mixed-Integer Programming Computation , 2012 .

[41]  Alberto Bemporad,et al.  An algorithm for multi-parametric quadratic programming and explicit MPC solutions , 2003, Autom..

[42]  Stephen Boyd,et al.  A Rewriting System for Convex Optimization Problems , 2017, ArXiv.

[43]  R. Glowinski,et al.  Sur l'approximation, par éléments finis d'ordre un, et la résolution, par pénalisation-dualité d'une classe de problèmes de Dirichlet non linéaires , 1975 .

[44]  Heinz H. Bauschke,et al.  Convex Analysis and Monotone Operator Theory in Hilbert Spaces , 2011, CMS Books in Mathematics.

[45]  Yurii Nesterov,et al.  Interior-point polynomial algorithms in convex programming , 1994, Siam studies in applied mathematics.

[46]  D. Bertsimas,et al.  Best Subset Selection via a Modern Optimization Lens , 2015, 1507.03133.

[47]  Feng Zhu,et al.  Optimal control of hybrid switched systems: A brief survey , 2015, Discret. Event Dyn. Syst..

[48]  Stephen P. Boyd,et al.  A Splitting Method for Optimal Control , 2013, IEEE Transactions on Control Systems Technology.

[49]  Paul J. Goulart,et al.  High-speed direct model predictive control for power electronics , 2016, 2016 European Control Conference (ECC).

[50]  Anne Greenbaum,et al.  Iterative methods for solving linear systems , 1997, Frontiers in applied mathematics.

[51]  Bastian Goldlücke,et al.  Variational Analysis , 2014, Computer Vision, A Reference Guide.

[52]  T. Geyer,et al.  Reformulation of the long-horizon direct model predictive control problem to reduce the computational effort , 2014, 2014 IEEE Energy Conversion Congress and Exposition (ECCE).

[53]  Colin N. Jones,et al.  Operator Splitting Methods in Control , 2016, Found. Trends Syst. Control..

[54]  Alberto Bemporad,et al.  Real‐time model predictive control based on dual gradient projection: Theory and fixed‐point FPGA implementation , 2016 .

[55]  Paul J. Goulart,et al.  Real-time FPGA implementation of direct MPC for power electronics , 2016, 2016 IEEE 55th Conference on Decision and Control (CDC).

[56]  I. Duff,et al.  Direct Methods for Sparse Matrices , 1987 .

[57]  Narendra Karmarkar,et al.  A new polynomial-time algorithm for linear programming , 1984, Comb..

[58]  Miguel A. Lejeune,et al.  An Exact Solution Approach for Portfolio Optimization Problems Under Stochastic and Integer Constraints , 2009, Oper. Res..

[59]  Johan Eker,et al.  Hybrid control of a double tank system , 1997, Proceedings of the 1997 IEEE International Conference on Control Applications.

[60]  Vihangkumar V. Naik,et al.  Embedded Mixed-Integer Quadratic Optimization using Accelerated Dual Gradient Projection , 2017 .

[61]  Daniel E. Quevedo,et al.  Performance of Multistep Finite Control Set Model Predictive Control for Power Electronics , 2014, IEEE Transactions on Power Electronics.

[62]  Christian Kirches,et al.  Mixed-integer nonlinear optimization*† , 2013, Acta Numerica.

[63]  David K. Smith,et al.  Dynamic Programming and Optimal Control. Volume 1 , 1996 .

[64]  Manfred Morari,et al.  Model Predictive Direct Torque Control—Part I: Concept, Algorithm, and Analysis , 2009, IEEE Transactions on Industrial Electronics.

[65]  Stephen P. Boyd,et al.  Enhancing Sparsity by Reweighted ℓ1 Minimization , 2007, 0711.1612.

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

[67]  G. Goodwin,et al.  Finite constraint set receding horizon quadratic control , 2004 .

[68]  H. H. Rachford,et al.  On the numerical solution of heat conduction problems in two and three space variables , 1956 .

[69]  Pietro Belotti,et al.  Rounding-based heuristics for nonconvex MINLPs , 2011, Mathematical Programming Computation.

[70]  C. Loan,et al.  Nineteen Dubious Ways to Compute the Exponential of a Matrix , 1978 .

[71]  Stephen P. Boyd,et al.  OSQP: an operator splitting solver for quadratic programs , 2017, 2018 UKACC 12th International Conference on Control (CONTROL).

[72]  Raymond Breu,et al.  Branch and bound experiments in zero-one programming , 1974 .

[73]  Babak Hassibi,et al.  On the sphere-decoding algorithm II. Generalizations, second-order statistics, and applications to communications , 2005, IEEE Transactions on Signal Processing.

[74]  Nicholas J. Higham,et al.  The Scaling and Squaring Method for the Matrix Exponential Revisited , 2005, SIAM J. Matrix Anal. Appl..

[75]  Bora Uçar,et al.  A Symmetry Preserving Algorithm for Matrix Scaling , 2014, SIAM J. Matrix Anal. Appl..

[76]  Daniel Bienstock,et al.  Computational Study of a Family of Mixed-Integer Quadratic Programming Problems , 1995, IPCO.

[77]  Sanjeev Saxena,et al.  On Parallel Prefix Computation , 1994, Parallel Process. Lett..

[78]  M. Morari,et al.  Low-complexity iterative method for hybrid MPC , 2016 .

[79]  Antonin Chambolle,et al.  Diagonal preconditioning for first order primal-dual algorithms in convex optimization , 2011, 2011 International Conference on Computer Vision.

[80]  Todd D. Murphey,et al.  Second-Order Switching Time Optimization for Nonlinear Time-Varying Dynamic Systems , 2011, IEEE Transactions on Automatic Control.

[81]  Patrick Amestoy,et al.  A Fully Asynchronous Multifrontal Solver Using Distributed Dynamic Scheduling , 2001, SIAM J. Matrix Anal. Appl..

[82]  Ralph E. Gomory,et al.  Outline of an Algorithm for Integer Solutions to Linear Programs and An Algorithm for the Mixed Integer Problem , 2010, 50 Years of Integer Programming.

[83]  Timothy A. Davis,et al.  Algorithm 837: AMD, an approximate minimum degree ordering algorithm , 2004, TOMS.

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

[85]  Udaya K. Madawala,et al.  A Model Predictive Direct Current Control Strategy With Predictive References for MV Grid-Connected Converters With $LCL$-Filters , 2015, IEEE Transactions on Power Electronics.

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

[87]  Stephen P. Boyd,et al.  Multi-Period Trading via Convex Optimization , 2017, Found. Trends Optim..

[88]  Stephen P. Boyd,et al.  Convex Optimization , 2004, Algorithms and Theory of Computation Handbook.

[89]  Hamid Javadi,et al.  Preconditioning via Diagonal Scaling , 2016, 1610.03871.

[90]  Tobias Geyer,et al.  Low complexity model predictive control in power electronics and power systems , 2005 .

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

[92]  Kathrin Flaßkamp,et al.  Discretized switching time optimization problems , 2013, 2013 European Control Conference (ECC).

[93]  B. Mercier,et al.  A dual algorithm for the solution of nonlinear variational problems via finite element approximation , 1976 .

[94]  Heinz H. Bauschke,et al.  On Projection Algorithms for Solving Convex Feasibility Problems , 1996, SIAM Rev..

[95]  P. Goulart,et al.  High-Speed Finite Control Set Model Predictive Control for Power Electronics , 2015, IEEE Transactions on Power Electronics.

[96]  Christopher Fougner,et al.  Parameter Selection and Preconditioning for a Graph Form Solver , 2015, 1503.08366.

[97]  Sanjay Mehrotra,et al.  On the Implementation of a Primal-Dual Interior Point Method , 1992, SIAM J. Optim..

[98]  Timothy A. Davis,et al.  Algorithm 8 xx : a concise sparse Cholesky factorization package , 2004 .

[99]  Stephen P. Boyd,et al.  ECOS: An SOCP solver for embedded systems , 2013, 2013 European Control Conference (ECC).

[100]  Sven Leyffer,et al.  Numerical Experience with Lower Bounds for MIQP Branch-And-Bound , 1998, SIAM J. Optim..

[101]  Michael A. Saunders,et al.  On projected newton barrier methods for linear programming and an equivalence to Karmarkar’s projective method , 1986, Math. Program..

[102]  Omprakash K. Gupta,et al.  Branch and Bound Experiments in Convex Nonlinear Integer Programming , 1985 .

[103]  Philip Wolfe,et al.  An algorithm for quadratic programming , 1956 .

[104]  Timothy A. Davis,et al.  Direct methods for sparse linear systems , 2006, Fundamentals of algorithms.

[105]  Stephen J. Wright,et al.  Nonlinear Predictive Control and Moving Horizon Estimation — An Introductory Overview , 1999 .

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

[107]  R. E. Kalman,et al.  When Is a Linear Control System Optimal , 1964 .

[108]  Stephen P. Boyd,et al.  Code generation for embedded second-order cone programming , 2013, 2013 European Control Conference (ECC).

[109]  Stephen P. Boyd,et al.  Approximate dynamic programming via iterated Bellman inequalities , 2015 .

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

[111]  J. Lofberg,et al.  YALMIP : a toolbox for modeling and optimization in MATLAB , 2004, 2004 IEEE International Conference on Robotics and Automation (IEEE Cat. No.04CH37508).

[112]  P. Teunissen The least-squares ambiguity decorrelation adjustment: a method for fast GPS integer ambiguity estimation , 1995 .

[113]  Sebastian Sager,et al.  A BENCHMARK LIBRARY OF MIXED-INTEGER OPTIMAL CONTROL PROBLEMS , 2012 .

[114]  T. Geyer,et al.  Suboptimal search strategies with bounded computational complexity to solve long-horizon direct model predictive control problems , 2015, 2015 IEEE Energy Conversion Congress and Exposition (ECCE).

[115]  Stephen P. Boyd,et al.  Conic Optimization via Operator Splitting and Homogeneous Self-Dual Embedding , 2013, Journal of Optimization Theory and Applications.

[116]  Tobias Achterberg,et al.  SCIP: solving constraint integer programs , 2009, Math. Program. Comput..

[117]  Matthias Gerdts,et al.  A variable time transformation method for mixed‐integer optimal control problems , 2006 .

[118]  Daniel E. Quevedo,et al.  Performance of Multistep Finite Control Set Model Predictive Control for Power Electronics , 2015 .

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

[120]  A. Bradley Algorithms for the Equilibration of Matrices and Their Application to Limited-Memory Quasi-Newton Methods , 2010 .

[121]  Panagiotis Patrinos,et al.  SuperMann: A Superlinearly Convergent Algorithm for Finding Fixed Points of Nonexpansive Operators , 2016, IEEE Transactions on Automatic Control.

[122]  Nesa L'abbe Wu,et al.  Linear programming and extensions , 1981 .

[123]  Babak Hassibi,et al.  On the sphere-decoding algorithm I. Expected complexity , 2005, IEEE Transactions on Signal Processing.

[124]  Sina Ober-Blöbaum,et al.  Optimal control of switching times in switched linear systems , 2016, 2016 IEEE 55th Conference on Decision and Control (CDC).

[125]  Stephen P. Boyd,et al.  Real-Time Convex Optimization in Signal Processing , 2010, IEEE Signal Processing Magazine.

[126]  Benjamin Van Roy,et al.  The Linear Programming Approach to Approximate Dynamic Programming , 2003, Oper. Res..

[127]  Anton van den Hengel,et al.  Semidefinite Programming , 2014, Computer Vision, A Reference Guide.

[128]  Stephen P. Boyd,et al.  Distributed Optimization and Statistical Learning via the Alternating Direction Method of Multipliers , 2011, Found. Trends Mach. Learn..

[129]  Frederick R. Forst,et al.  On robust estimation of the location parameter , 1980 .

[130]  C. Loan Computing integrals involving the matrix exponential , 1978 .

[131]  D. Axehill,et al.  A Mixed Integer Dual Quadratic Programming Algorithm Tailored for MPC , 2006, Proceedings of the 45th IEEE Conference on Decision and Control.

[132]  Manfred Morari,et al.  Embedded optimization for mixed logical dynamical systems , 2015, Comput. Chem. Eng..

[133]  Dimitris Bertsimas,et al.  Optimization over integers , 2005 .

[134]  I. Kale,et al.  FIR filter order reduction: balanced model truncation and Hankel-norm optimal approximation , 1994 .

[135]  C. Kelley Iterative Methods for Linear and Nonlinear Equations , 1987 .

[136]  William J. Cook,et al.  On cutting-plane proofs in combinatorial optimization , 1989 .

[137]  R. J. Dakin,et al.  A tree-search algorithm for mixed integer programming problems , 1965, Comput. J..

[138]  Manfred Morari,et al.  Model Predictive Direct Torque Control—Part II: Implementation and Experimental Evaluation , 2009, IEEE Transactions on Industrial Electronics.

[139]  H. Balakrishnan,et al.  Polynomial approximation algorithms for belief matrix maintenance in identity management , 2004, 2004 43rd IEEE Conference on Decision and Control (CDC) (IEEE Cat. No.04CH37601).

[140]  Ailsa H. Land,et al.  An Automatic Method of Solving Discrete Programming Problems , 1960 .

[141]  L. V. Kantorovich,et al.  Mathematical Methods of Organizing and Planning Production , 1960 .

[142]  Corinna Cortes,et al.  Support-Vector Networks , 1995, Machine Learning.

[143]  Scott D. Sudhoff,et al.  Analysis of Electric Machinery and Drive Systems , 1995 .

[144]  Robert H. Halstead,et al.  Matrix Computations , 2011, Encyclopedia of Parallel Computing.

[145]  Stephen P. Boyd,et al.  CVXPY: A Python-Embedded Modeling Language for Convex Optimization , 2016, J. Mach. Learn. Res..

[146]  Jonas Sjöberg,et al.  Component sizing of a plug-in hybrid electric powertrain via convex optimization , 2012 .

[147]  Stephen P. Boyd,et al.  Plenary talk: Performance bounds and suboptimal policies for multi-period investment , 2013, 22nd Mediterranean Conference on Control and Automation.

[148]  Stephen P. Boyd,et al.  Metric selection in fast dual forward-backward splitting , 2015, Autom..

[149]  Tobias Geyer,et al.  Direct Model Predictive Control: A Review of Strategies That Achieve Long Prediction Intervals for Power Electronics , 2014, IEEE Industrial Electronics Magazine.

[150]  E. Yaz Linear Matrix Inequalities In System And Control Theory , 1998, Proceedings of the IEEE.

[151]  Stephen P. Boyd,et al.  A simple effective heuristic for embedded mixed-integer quadratic programming , 2015, 2016 American Control Conference (ACC).

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

[153]  Paul N. Beuchat,et al.  Approximate Dynamic Programming : a Q-Function Approach , 2016 .

[154]  Stephen P. Boyd,et al.  Embedded Mixed-Integer Quadratic optimization Using the OSQP Solver , 2018, 2018 European Control Conference (ECC).

[155]  Iain Dunning,et al.  JuMP: A Modeling Language for Mathematical Optimization , 2015, SIAM Rev..

[156]  Christian Kirches,et al.  Combinatorial integral approximation , 2011, Math. Methods Oper. Res..

[157]  R. Vanderbei Symmetric Quasi-Definite Matrices , 2006 .

[158]  Euhanna Ghadimi,et al.  Optimal Parameter Selection for the Alternating Direction Method of Multipliers (ADMM): Quadratic Problems , 2013, IEEE Transactions on Automatic Control.

[159]  George L. Nemhauser Integer Programming: the Global Impact , 2013 .

[160]  George L. Nemhauser,et al.  A Lifted Linear Programming Branch-and-Bound Algorithm for Mixed-Integer Conic Quadratic Programs , 2008, INFORMS J. Comput..

[161]  G. Consigli,et al.  Optimization Methods in Finance , 2019, Quantitative Finance.

[162]  B. Ripley,et al.  Robust Statistics , 2018, Encyclopedia of Mathematical Geosciences.

[163]  Stephen P. Boyd,et al.  Line search for averaged operator iteration , 2016, 2016 IEEE 55th Conference on Decision and Control (CDC).

[164]  M. Diehl,et al.  Numerical Methods for Optimal Control with Binary Control Functions Applied to a Lotka-Volterra Type Fishing Problem , 2006 .

[165]  M. Benzi Preconditioning techniques for large linear systems: a survey , 2002 .

[166]  Sanjay Mehrotra,et al.  A branch-and-cut method for 0-1 mixed convex programming , 1999, Math. Program..

[167]  M. Hochbruck,et al.  Exponential integrators , 2010, Acta Numerica.