Learning Cut Selection for Mixed-Integer Linear Programming via Hierarchical Sequence Model

Authors: Zhihai Wang, Xijun Li, Jie Wang, Yufei Kuang, Mingxuan Yuan, Jia Zeng, Yongdong Zhang, Feng Wu

ICLR 2023 | Conference PDF | Archive PDF | Plain Text | LLM Run Details

Reproducibility Variable Result LLM Response
Research Type Experimental Experiments show that HEM significantly improves the efficiency of solving MILPs compared to human-designed and learning-based baselines on both synthetic and large-scale real-world MILPs, including MIPLIB 2017. Moreover, experiments demonstrate that HEM well generalizes to MILPs that are significantly larger than those seen during training.
Researcher Affiliation Collaboration Zhihai Wang 1 , Xijun Li 1,2, Jie Wang 1,3 , Yufei Kuang1, Mingxuan Yuan2, Jia Zeng2, Yongdong Zhang1,3, Feng Wu1,3 1 CAS Key Laboratory of Technology in GIPAS, University of Science and Technology of China 2 Noah s Ark Lab, Huawei Technologies 3 Institute of Artificial Intelligence, Hefei Comprehensive National Science Center
Pseudocode Yes Algorithm 2 Pseudo code for training the HEM .
Open Source Code Yes Code is available at https://github.com/MIRALab-USTC/L2O-HEM-Torch (Py Torch version), and https://gitee.com/mindspore/models/tree/ master/research/l2o/hem-learning-to-cut (Mind Spore version).
Open Datasets Yes For simplicity, we split each dataset into the train and test sets with 80% and 20% instances.
Dataset Splits Yes For simplicity, we split each dataset into the train and test sets with 80% and 20% instances.
Hardware Specification Yes Throughout all experiments, we use a single machine that contains eight GPU devices (NVidia Ge Force GTX 3090 Ti) and two Intel Gold 6246R CPUs.
Software Dependencies Yes Throughout all experiments, we use SCIP 8.0.0 (Bestuzheva et al., 2021) as the backend solver... We train HEM with ADAM (Kingma & Ba, 2014) using the Py Torch (Paszke et al., 2019). Additionally, we also provide another implementation using the Mind Spore (Chen, 2021).
Experiment Setup Yes Throughout all experiments, we set the solving time limit as 300 seconds... Throughout all experiments, we apply Adam optimizer with learning rate α1 = 1 10 4 to optimize the lower-level model, and learning rate α2 = 5 10 4 to optimize the higher-level model. For each epoch, we collect 32 samples for training, and we set the total epochs as 100.