MILP-Evo: Closed-Loop Fully Automatic Design of MILP Solvers
06:00 · July 22, 2026 · arXiv cs.AI RSS

Machine learning methods have shown that data-driven policies can accelerate mixed-integer linear programming (MILP) solvers, but many such approaches remain difficult to inspect, adapt, and deploy because the learned policy is represented as an external predictor or other opaque model. By contrast, explicit solver logic is easier to understand and integrate, but is usually hand-designed rather than learned from solver feedback. We study whether the automatic design of MILP solver logic can instead be cast as LLM-guided closed-loop search over executable white-box components evaluated directly by end-to-end solver behavior. To this end, we propose a closed-loop program evolution framework for MILP solver auto-design, implemented through PySCIPOpt, and instantiate it on the joint design of a cut selector and a branching rule. Candidate programs are iteratively generated, loaded into SCIP, and evaluated by direct execution on MILP instances, with the resulting feedback guiding performance-based selection, targeted repair, diagnostic reflection, and diversity-aware population maintenance. The method outputs explicit solver components that can be inspected, modified, and deployed within standard solver workflows. Across four benchmark families, we find that LLM-guided program evolution can discover competitive domain-specialized policies in several settings.
Summary
MILP-Evo casts the design of solver components as an LLM-guided search over executable Python code that implements cut selection and branching rules inside the SCIP solver. Rather than training opaque neural predictors, the framework evolves explicit callback functions through PySCIPOpt. Candidate programs are proposed, loaded directly into the solver, executed on MILP instances, and scored by end-to-end metrics such as solving time and bound quality. The resulting performance signals drive an evolutionary loop that includes mutation, targeted repair of interface violations, diagnostic reflection on failure modes, and diversity-preserving selection.
This closed-loop process exploits the natural interaction between the two modules: branching decisions shape the search tree and the LP relaxations in which cuts are generated, while selected cuts alter the bounds and node states seen by subsequent branching. Because each candidate is a native SCIP component rather than an external model, the discovered logic remains inspectable, modifiable, and deployable within standard solver workflows without additional inference infrastructure.
Experiments on four learn2branch benchmark families—set cover, combinatorial auctions, facility location, and independent set—show that the evolved policies can match or exceed hand-designed baselines on specific distributions. The approach therefore demonstrates that LLM-driven program evolution can produce competitive, domain-specialized solver logic when evaluation is performed by direct execution rather than proxy objectives or imitation learning.
Why it matters
This research is highly relevant for Dutch AI and Operations Research practitioners, particularly in the logistics, manufacturing, and supply chain sectors where MILP solvers are foundational. The focus on generating explicit, interpretable ('white-box') solver logic aligns perfectly with the Netherlands' and EU's strategic emphasis on transparent and trustworthy AI.



