CLCR: Contrastive Learning-based Constraint Reordering for Efficient MILP Solving
Shuli Zeng, Mengjie Zhou, Sijia Zhang, Yixiang Hu, Feng Wu, Xiang-Yang Li
TL;DR
This work tackles the sensitivity of MILP solving to constraint ordering byIntroducing CLCR, which clusters constraints by structure, reorders them with a pointer-network, and trains the orderings via contrastive learning to minimize solving time while preserving problem equivalence. The method leverages a clustering step, a sequence model for cluster ordering, and a contrastive objective to prefer permutations that shorten $t_{\text{solve}}$, avoiding unstable RL training. Empirical results on nine datasets, including SurrogateLIB and traditional MILPs, show substantial gains in total time and LP iterations across baselines, with notable reductions in presolve time and node exploration. The approach suggests a practical, generalizable path to improve MILP performance through learned, data-driven constraint reformulation, while recognizing symmetry-related limitations and proposing a discriminator to gate reordering decisions.
Abstract
Constraint ordering plays a critical role in the efficiency of Mixed-Integer Linear Programming (MILP) solvers, particularly for large-scale problems where poorly ordered constraints trigger increased LP iterations and suboptimal search trajectories. This paper introduces CLCR (Contrastive Learning-based Constraint Reordering), a novel framework that systematically optimizes constraint ordering to accelerate MILP solving. CLCR first clusters constraints based on their structural patterns and then employs contrastive learning with a pointer network to optimize their sequence, preserving problem equivalence while improving solver efficiency. Experiments on benchmarks show CLCR reduces solving time by 30% and LP iterations by 25% on average, without sacrificing solution accuracy. This work demonstrates the potential of data-driven constraint ordering to enhance optimization models, offering a new paradigm for bridging mathematical programming with machine learning.
