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 represent a probability distribution over assignments, which, together with an off-the-shelf MIP solver, generates 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, given enough compute resources, is guaranteed 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 real-world MIP datasets with large-scale instances from diverse applications, including two production applications at Google. It achieves $2\times$ to $37.8\times$ better average primal gap than the best baseline on three of the datasets at large running times.
Code (1)
Tasks
Combinatorial OptimizationImitation LearningSimilar Papers 제목 키워드 기반
Balans: Multi-Armed Bandits-based Adaptive Large Neighborhood Search for Mixed-Integer Programming Problem
Mixed-integer programming (MIP) is a powerful paradigm for modeling and solving various important combinatorial optimization problems. Recently, learning-based approaches have shown a potential to speed up MIP solving vi…
Combinatorial OptimizationMulti-Armed BanditsNeural Large Neighborhood Search
Large Neighborhood Search (LNS) is a combinatorial optimization technique that works iteratively starting from a poor solution, and at each iteration searches a large set of neighbors of the current solution to find a be…
Combinatorial OptimizationDeep Reinforcement LearningExploiting variable associations to configure efficient local search algorithms in large-scale binary integer programs
We present a data mining approach for reducing the search space of local search algorithms in a class of binary integer programs including the set covering and partitioning problems. The quality of locally optimal soluti…
ParBalans: Parallel Multi-Armed Bandits-based Adaptive Large Neighborhood Search
Solving Mixed-Integer Programming (MIP) problems often requires substantial computational resources due to their combinatorial nature. Parallelization has emerged as a critical strategy to accelerate solution times and e…
Multi-Armed BanditsAn adaptive large neighborhood search heuristic for the multi-port continuous berth allocation problem
In this paper, we study a problem that integrates the vessel scheduling problem with the berth allocation into a collaborative problem denoted as the multi-port continuous berth allocation problem (MCBAP). This problem o…
Scheduling