Discovering Branching Rules for Mixed Integer Programming by Computational Intelligence (original) (raw)
Related papers
An Evolutionary Approach to the Discovery of Hybrid Branching Rules for Mixed Integer Solvers
2015 IEEE Symposium Series on Computational Intelligence, 2015
An evolutionary algorithm is used to search for problem specific branching rules within the branch-and-bound framework. For this purpose an instance generator is used to create training data for an integer programming problem, in particular the multi-dimensional 0/1 knapsack problem. An extensive experimental study will illustrate that new and more effective rules can be found using evolutionary computation.
Branch and Bound in Mixed Integer Linear Programming Problems: A Survey of Techniques and Trends
arXiv (Cornell University), 2021
In this paper, we surveyed the existing literature studying different approaches and algorithms for the four critical components in the general branch and bound (B&B) algorithm, namely, branching variable selection, node selection, node pruning, and cutting-plane selection. However, the complexity of the B&B algorithm always grows exponentially with respect to the increase of the decision variable dimensions. In order to improve the speed of B&B algorithms, learning techniques have been introduced in this algorithm recently. We further surveyed how machine learning can be used to improve the four critical components in B&B algorithms. In general, a supervised learning method helps to generate a policy that mimics an expert but significantly improves the speed. An unsupervised learning method helps choose different methods based on the features. In addition, models trained with reinforcement learning can beat the expert policy, given enough training and a supervised initialization. Detailed comparisons between different algorithms have been summarized in our survey. Finally, we discussed some future research directions to accelerate and improve the algorithms further in the literature.
Learning to Branch in Mixed Integer Programming
Proceedings of the AAAI Conference on Artificial Intelligence
The design of strategies for branching in Mixed Integer Programming (MIP) is guided by cycles of parameter tuning and offline experimentation on an extremely heterogeneous testbed, using the average performance. Once devised, these strategies (and their parameter settings) are essentially input-agnostic. To address these issues, we propose a machine learning (ML) framework for variable branching in MIP.Our method observes the decisions made by Strong Branching (SB), a time-consuming strategy that produces small search trees, collecting features that characterize the candidate branching variables at each node of the tree. Based on the collected data, we learn an easy-to-evaluate surrogate function that mimics the SB strategy, by means of solving a learning-to-rank problem, common in ML. The learned ranking function is then used for branching. The learning is instance-specific, and is performed on-the-fly while executing a branch-and-bound search to solve the MIP instance. Experiments...
A Genetic Programming Hyper-Heuristic for the Multidimensional Knapsack Problem
Hyper-heuristics are a class of high-level search techniques which operate on a search space of heuristics rather than directly on a search space of solutions. Early hyper-heuristics focussed on selecting and applying a low-level heuristic at each stage of a search. Recent trends in hyper-heuristic research have led to a number of approaches being developed to automatically generate new heuristics from a set of heuristic components. This work investigates the suitability of using genetic programming as a hyper-heuristic methodology to generate con-structive heuristics to solve the multidimensional 0-1 knapsack problem. A population of heuristics to rank knapsack items are trained on a subset of test problems and then applied to unseen instances. The results over a set of standard benchmarks show that genetic programming can be used to generate constructive heuristics which yield human-competitive results.
A Heuristic Algorithm for Solving Mixed Integer Problems
2011
The paper proposes a hybrid heuristic algorithm, which uses procedures for search of feasible integer directions with one or two nonzero components and linear optimization. This algorithm is iterative and it combines constructive and locally improving strategies for finding a new current solution. A subsequence of sub-problems is solved, aimed at seeking a feasible solution of the general Mixed Integer Problem (MIP), after which the feasible solution found is improved with respect to the problem objective function. The algorithm is characterized by polynomial-time computing complexity.
2005
Abstract Branch-and-bound and evolutionary algorithms represent two very different approaches for tackling combinatorial optimization problems. These approaches are not incompatible though. In this paper, we consider a hybrid model that combines these two techniques. To be precise, it is based on the interleaved execution of both approaches, and has a heuristic nature. The multidimensional 0-1 knapsack problem has been chosen as benchmark.
This paper presents a branch and bound (B&B) algorithm for the 0-1 mixed integer knapsack problem with linear multiple choice constraints. The formulation arose in an application to transportation management for allocating funds to highway improvements. Several model properties are developed and utilized to design a B&B solution algorithm. The algorithm solves at each node of the B&B tree a linear relaxation using an adaptation of an existing algorithm for the linear multiple choice knapsack problem. The special relationship between the parent and children subproblems is exploited by the algorithm. This results in high e ciency and low storage space requirements. The worst case complexity of the algorithm is analyzed and computational results that demonstrate its e ciency in the average case are reported.
Information-based branching schemes for binary linear mixed integer problems
Mathematical Programming Computation, 2009
Branching variable selection can greatly affect the effectiveness and efficiency of a branch-and-bound algorithm. Traditional approaches to branching variable selection rely on estimating the effect of the candidate variables on the objective function. We propose an approach which is empowered by exploiting the information contained in a family of fathomed subproblems, collected beforehand from an incomplete branch-and-bound tree. In particular, we use this information to define new branching rules that reduce the risk of incurring inappropriate branchings. We provide computational results that demonstrate the effectiveness of the new branching rules on various benchmark instances.