Designing faster mixed integer linear programming algorithm via learning the optimal path
About
Designing faster algorithms for solving Mixed-Integer Linear Programming (MILP) problems is highly desired across numerous practical domains, as a vast array of complex real-world challenges can be effectively modeled as MILP formulations. Solving these problems typically employs the branch-and-bound algorithm, the core of which can be conceived as searching for a path of nodes (or sub-problems) that contains the optimal solution to the original MILP problem. Traditional approaches to finding this path rely heavily on hand-crafted, intuition-based heuristic strategies, which often suffer from unstable and unpredictable performance across different MILP problem instances. To address this limitation, we introduce DeepBound, a deep learning-based node selection algorithm that automates the learning of such human intuition from data. The core of DeepBound lies in learning to prioritize nodes containing the optimal solution, thereby improving solving efficiency. DeepBound introduces a multi-level feature fusion network to capture the node representations. To tackle the inherent node imbalance in branch-and-bound trees, DeepBound employs a pairwise training paradigm that enhances the model's ability to discriminate between nodes. Extensive experiments on three NP-hard MILP benchmarks demonstrate that DeepBound achieves superior solving efficiency over conventional heuristic rules and existing learning-based approaches, obtaining optimal feasible solutions with significantly reduced computation time. Moreover, DeepBound demonstrates strong generalization capability on large and complex instances. The analysis of its learned features reveals that the method can automatically discover more flexible and robust feature selection, which may effectively improve and potentially replace human-designed heuristic rules.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Mixed Integer Linear Programming Solving | Capacitated Facility Location 200x100 (Medium) | Nodes Explored67 | 16 | |
| Mixed Integer Linear Programming Solving | Set Covering 1000x1000 (Medium) | Nodes Explored370 | 4 | |
| Mixed Integer Linear Programming Solving | Set Covering 1000x2000 (Hard) | Nodes Explored426 | 4 | |
| Mixed Integer Linear Programming Solving | Combinatorial Auction 200x1000 (Medium) | Search Tree Nodes78 | 4 | |
| Mixed Integer Linear Programming Solving | Combinatorial Auction 300x1500 (Hard) | Search Tree Nodes310 | 4 | |
| Mixed Integer Linear Programming Solving | Capacitated Facility Location 100x100 (Easy) | Nodes Explored55 | 4 | |
| Mixed Integer Linear Programming Solving | Capacitated Facility Location 400x100 (Hard) | Search Tree Nodes68 | 4 | |
| Mixed Integer Linear Programming Solving | Set Covering 1000x500 (Easy) | Search Nodes23 | 4 | |
| Mixed Integer Linear Programming Solving | Combinatorial Auction 100x500 (Easy) | Search Tree Nodes13 | 4 |