PUSH: a primal heuristic based on Feasibility PUmp and SHifting
Giorgio Grani, Corrado Coppola, Valerio Agasucci

TL;DR
PUSH is a novel primal heuristic that integrates Feasibility Pump and Shifting techniques, improving the solution process for mixed-integer programming by directly handling equality constraints and adapting rounding strategies.
Contribution
It introduces a new heuristic combining Feasibility Pump and Shifting, with strategies tailored to different partial solution states, and demonstrates effectiveness on benchmark instances.
Findings
Outperforms traditional start heuristics on MIPLIB2017 instances
Effectively handles equality constraints without row duplication
Parameter tuning based on Mip Competition 2022 instances
Abstract
This work describes PUSH, a primal heuristic combining Feasibility Pump and Shifting. The main idea is to replace the rounding phase of the Feasibility Pump with a suitable adaptation of the Shifting and other rounding heuristics. The algorithm presents different strategies, depending on the nature of the partial rounding obtained. In particular, we distinguish when the partial solution is feasible, infeasible with potential candidates, and infeasible without candidates. We used a threshold to indicate the percentage of variables to round with our algorithm and which other to round to the nearest integer. Most importantly, our algorithm tackles directly equality constraints without duplicating rows. We select the parameters of our algorithm on the 19 instances provided for the Mip Competition 2022. Finally, we compared our approach to other start heuristics, like Simple Rounding,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsFormal Methods in Verification · Vehicle Routing Optimization Methods · Optimization and Mathematical Programming
