Learning a Large Neighborhood Search Algorithm for Mixed Integer Programs

Large Neighborhood Search (LNS) is a combinatorial optimization heuristic that starts with an assignment of values for the variables to be optimized, and iteratively improves it by searching a large neighborhood around the current assignment. In this paper we consider a learning-based LNS approach for mixed integer programs (MIPs). We train a Neural Diving model to generate an initial assignment. Formulating the subsequent search steps as a Markov Decision Process, we train a Neural Neighborhood Selection policy to select a search neighborhood at each step, which is searched using a MIP solver to find the next assignment. The policy network is trained using imitation learning. We propose a target policy for imitation that is designed to select the neighborhood containing the optimal next assignment amongst all possible choices for the neighborhood of a specified size. Our approach matches or outperforms all the baselines on five diverse real-world MIP datasets with large-scale instances, including two production applications at a large technology company. It achieves 2 × to 37 . 8 × better average primal gap than the best baseline on three datasets at large running times.

[1]  Timo Berthold,et al.  MIPLIB 2017: data-driven compilation of the 6th mixed-integer programming library , 2021, Mathematical Programming Computation.

[2]  Yoshua Bengio,et al.  Parameterizing Branch-and-Bound Search Trees to Learn Branching Policies , 2020, AAAI.

[3]  Feng Qiu,et al.  Learning to Solve Large-Scale Security-Constrained Unit Commitment Problems , 2019, INFORMS J. Comput..

[4]  Gregor Hendel,et al.  Adaptive large neighborhood search for mixed integer programming , 2018, Mathematical Programming Computation.

[5]  Yoshua Bengio,et al.  Machine Learning for Combinatorial Optimization: a Methodological Tour d'Horizon , 2018, Eur. J. Oper. Res..

[6]  Christian Tjandraatmadja,et al.  Solving Mixed Integer Programs Using Neural Networks , 2020, ArXiv.

[7]  Yoshua Bengio,et al.  Hybrid Models for Learning to Branch , 2020, NeurIPS.

[8]  Jean-Paul Watson,et al.  On Mixed-Integer Programming Formulations for the Unit Commitment Problem , 2020, INFORMS J. Comput..

[9]  Yisong Yue,et al.  A General Large Neighborhood Search Framework for Solving Integer Programs , 2020, ArXiv.

[10]  André Hottung,et al.  Neural Large Neighborhood Search for the Capacitated Vehicle Routing Problem , 2019, ECAI.

[11]  Le Song,et al.  Accelerating Primal Solution Findings for Mixed Integer Programs Based on Solution Prediction , 2019, AAAI.

[12]  Ravichandra Addanki Neural Large Neighborhood Search , 2020 .

[13]  Andrea Lodi,et al.  Exact Combinatorial Optimization with Graph Convolutional Neural Networks , 2019, NeurIPS.

[14]  Markus Weimer,et al.  Learning To Solve Circuit-SAT: An Unsupervised Differentiable Approach , 2018, ICLR.

[15]  Max Welling,et al.  Attention, Learn to Solve Routing Problems! , 2018, ICLR.

[16]  David L. Dill,et al.  Learning a SAT Solver from Single-Bit Supervision , 2018, ICLR.

[17]  Russ Tedrake,et al.  Evaluating Robustness of Neural Networks with Mixed Integer Programming , 2017, ICLR.

[18]  Barnabás Póczos,et al.  Learning Local Search Heuristics for Boolean Satisfiability , 2019, NeurIPS.

[19]  Zhuwen Li,et al.  Combinatorial Optimization with Graph Convolutional Networks and Guided Tree Search , 2018, NeurIPS.

[20]  Razvan Pascanu,et al.  Relational inductive biases, deep learning, and graph networks , 2018, ArXiv.

[21]  Michel Gendreau,et al.  Large neighborhood search with constraint programming for a vehicle routing problem with synchronization constraints , 2018, Comput. Oper. Res..

[22]  Lawrence V. Snyder,et al.  Reinforcement Learning for Solving the Vehicle Routing Problem , 2018, NeurIPS.

[23]  Stephen L. Smith,et al.  GLNS: An effective large neighborhood search heuristic for the Generalized Traveling Salesman Problem , 2017, Comput. Oper. Res..

[24]  George L. Nemhauser,et al.  Learning to Run Heuristics in Tree Search , 2017, IJCAI.

[25]  Jure Leskovec,et al.  Inductive Representation Learning on Large Graphs , 2017, NIPS.

[26]  Chih-Hong Cheng,et al.  Maximum Resilience of Artificial Neural Networks , 2017, ATVA.

[27]  Le Song,et al.  2 Common Formulation for Greedy Algorithms on Graphs , 2018 .

[28]  Louis Wehenkel,et al.  A Machine Learning-Based Approximation of Strong Branching , 2017, INFORMS J. Comput..

[29]  Samy Bengio,et al.  Neural Combinatorial Optimization with Reinforcement Learning , 2016, ICLR.

[30]  Max Welling,et al.  Semi-Supervised Classification with Graph Convolutional Networks , 2016, ICLR.

[31]  Le Song,et al.  Learning to Branch in Mixed Integer Programming , 2016, AAAI.

[32]  Yuri Malitsky,et al.  Model-Based Genetic Algorithms for Algorithm Configuration , 2015, IJCAI.

[33]  Geoffrey E. Hinton,et al.  Deep Learning , 2015, Nature.

[34]  Shie Mannor,et al.  Contextual Markov Decision Processes , 2015, ArXiv.

[35]  H. Hoos,et al.  Algorithm Runtime Prediction : , 2015 .

[36]  He He,et al.  Learning to Search in Branch and Bound Algorithms , 2014, NIPS.

[37]  Yasin Abbasi-Yadkori,et al.  Online learning in MDPs with side information , 2014, ArXiv.

[38]  Kevin Leyton-Brown,et al.  Algorithm runtime prediction: Methods & evaluation , 2012, Artif. Intell..

[39]  Lars Kotthoff,et al.  Algorithm Selection for Combinatorial Search Problems: A Survey , 2012, AI Mag..

[40]  Paritosh K. Pandya,et al.  Automated Technology for Verification and Analysis , 2012, Lecture Notes in Computer Science.

[41]  Timo Berthold,et al.  Large Neighborhood Search beyond MIP , 2011 .

[42]  Kevin Leyton-Brown,et al.  Sequential Model-Based Optimization for General Algorithm Configuration , 2011, LION.

[43]  David Pisinger,et al.  Large Neighborhood Search , 2018, Handbook of Metaheuristics.

[44]  Carlos Ansótegui,et al.  A Gender-Based Genetic Algorithm for the Automatic Configuration of Algorithms , 2009, CP.

[45]  F. Hutter,et al.  ParamILS: An Automatic Algorithm Configuration Framework , 2014, J. Artif. Intell. Res..

[46]  Ah Chung Tsoi,et al.  The Graph Neural Network Model , 2009, IEEE Transactions on Neural Networks.

[47]  Timo Berthold,et al.  RENS - Relaxation Enforced Neighborhood Search , 2007 .

[48]  Edward Rothberg,et al.  An Evolutionary Algorithm for Polishing Mixed Integer Programming Solutions , 2007, INFORMS J. Comput..

[49]  Shubhashis Ghosh,et al.  DINS, a MIP Improvement Heuristic , 2007, IPCO.

[50]  Andrew W. Moore,et al.  Using Prediction to Improve Combinatorial Optimization Search , 2007 .

[51]  Timo Berthold Primal Heuristics for Mixed Integer Programs , 2006 .

[52]  F. Scarselli,et al.  A new model for learning in graph domains , 2005, Proceedings. 2005 IEEE International Joint Conference on Neural Networks, 2005..

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

[54]  Claude Le Pape,et al.  Exploring relaxation induced neighborhoods to improve MIP solutions , 2005, Math. Program..

[55]  Laurent Perron,et al.  Propagation Guided Large Neighborhood Search , 2004, CP.

[56]  Matteo Fischetti,et al.  Local branching , 2003, Math. Program..

[57]  A. Lodi,et al.  Local branching: a tutorial , 2003 .

[58]  Paul Shaw,et al.  Using Constraint Programming and Local Search Methods to Solve Vehicle Routing Problems , 1998, CP.

[59]  Wei Zhang,et al.  A Reinforcement Learning Approach to job-shop Scheduling , 1995, IJCAI.