Exact Combinatorial Optimization with Graph Convolutional Neural Networks

Combinatorial optimization problems are typically tackled by the branch-and-bound paradigm. We propose a new graph convolutional neural network model for learning branch-and-bound variable selection policies, which leverages the natural variable-constraint bipartite graph representation of mixed-integer linear programs. We train our model via imitation learning from the strong branching expert rule, and demonstrate on a series of hard problems that our approach produces policies that improve upon state-of-the-art machine-learning methods for branching and generalize to instances significantly larger than seen during training. Moreover, we improve for the first time over expert-designed branching rules implemented in a state-of-the-art solver on large problems. Code for reproducing all the experiments can be found at this https URL.

[1]  A. Land,et al.  An Automatic Method for Solving Discrete Programming Problems , 1960, 50 Years of Integer Programming.

[2]  G. Cornuéjols,et al.  A comparison of heuristics and relaxations for the capacitated plant location problem , 1991 .

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

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

[5]  Yoav Shoham,et al.  Towards a universal test suite for combinatorial auction algorithms , 2000, EC '00.

[6]  Sebastian Stiller,et al.  Cuts, Primal Heuristics, and Learning to Branch for the Time-Dependent Traveling Salesman Problem , 2018, 1805.01415.

[7]  Tobias Achterberg,et al.  Mixed Integer Programming: Analyzing 12 Years of Progress , 2013 .

[8]  Maria-Florina Balcan,et al.  Learning to Branch , 2018, ICML.

[9]  Thorsten Joachims,et al.  Optimizing search engines using clickthrough data , 2002, KDD.

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

[11]  Richard S. Sutton,et al.  Reinforcement Learning: An Introduction , 1998, IEEE Trans. Neural Networks.

[12]  Joan Bruna,et al.  Spectral Networks and Locally Connected Networks on Graphs , 2013, ICLR.

[13]  Richard S. Zemel,et al.  Gated Graph Sequence Neural Networks , 2015, ICLR.

[14]  Sanjit A. Seshia,et al.  Learning Heuristics for Automated Reasoning through Deep Reinforcement Learning , 2018, ArXiv.

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

[16]  Fernando Pereira,et al.  Structured Learning with Approximate Inference , 2007, NIPS.

[17]  Yoshua Bengio,et al.  Understanding the difficulty of training deep feedforward neural networks , 2010, AISTATS.

[18]  Matteo Fischetti,et al.  Branching on nonchimerical fractionalities , 2012, Oper. Res. Lett..

[19]  Martín Abadi,et al.  TensorFlow: Large-Scale Machine Learning on Heterogeneous Distributed Systems , 2016, ArXiv.

[20]  Edward A. Lee,et al.  Learning Heuristics for Quantified Boolean Formulas through Reinforcement Learning , 2020, ICLR.

[21]  Ronald A. Howard,et al.  Dynamic Programming and Markov Processes , 1960 .

[22]  Jure Leskovec,et al.  How Powerful are Graph Neural Networks? , 2018, ICLR.

[23]  Masahiro Ono,et al.  Learning to Search via Retrospective Imitation , 2018, 1804.00846.

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

[25]  Mislav Balunovic,et al.  Learning to Solve SMT Formulas , 2018, NeurIPS.

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

[27]  Mohamed Medhat Gaber,et al.  Imitation Learning , 2017, ACM Comput. Surv..

[28]  Andrea Lodi,et al.  On learning and branching: a survey , 2017 .

[29]  Vangelis Th. Paschos,et al.  Applications of combinatorial optimization , 2010 .

[30]  Pierre Geurts,et al.  Extremely randomized trees , 2006, Machine Learning.

[31]  Martin W. P. Savelsbergh,et al.  Information-based branching schemes for binary linear mixed integer problems , 2009, Math. Program. Comput..

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

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

[34]  Krzysztof Czarnecki,et al.  Learning Rate Based Branching Heuristic for SAT Solvers , 2016, SAT.

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

[36]  Andrew C. Ho,et al.  Set covering algorithms using cutting planes, heuristics, and subgradient optimization: A computational study , 1980 .

[37]  John W. Chinneck,et al.  Active-constraint variable ordering for faster feasibility of mixed integer linear programs , 2007, Math. Program..

[38]  André Augusto Ciré,et al.  Decision diagrams for optimization , 2018, Constraints.

[39]  Christopher J. C. Burges,et al.  From RankNet to LambdaRank to LambdaMART: An Overview , 2010 .

[40]  Gourab Kundu,et al.  On Amortizing Inference Cost for Structured Prediction , 2012, EMNLP.

[41]  Samuel S. Schoenholz,et al.  Neural Message Passing for Quantum Chemistry , 2017, ICML.

[42]  Laurence A. Wolsey,et al.  Production Planning by Mixed Integer Programming , 2010 .

[43]  Martin J. Wainwright,et al.  MAP estimation via agreement on trees: message-passing and linear programming , 2005, IEEE Transactions on Information Theory.

[44]  Thorsten Koch,et al.  Branching rules revisited , 2005, Oper. Res. Lett..

[45]  Karl Johan Åström,et al.  Optimal control of Markov processes with incomplete state information , 1965 .

[46]  Jimmy Ba,et al.  Adam: A Method for Stochastic Optimization , 2014, ICLR.

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

[48]  Yuri Malitsky,et al.  DASH: Dynamic Approach for Switching Heuristics , 2013, Eur. J. Oper. Res..

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

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

[51]  G. Nemhauser,et al.  Integer Programming , 2020 .

[52]  Martin W. P. Savelsbergh,et al.  A Computational Study of Search Strategies for Mixed Integer Programming , 1999, INFORMS J. Comput..

[53]  Dean Pomerleau,et al.  Efficient Training of Artificial Neural Networks for Autonomous Navigation , 1991, Neural Computation.

[54]  Alán Aspuru-Guzik,et al.  Convolutional Networks on Graphs for Learning Molecular Fingerprints , 2015, NIPS.

[55]  Yuri Malitsky,et al.  Dynamic Approach for Switching Heuristics , 2014 .