Handling software upgradeability problems with MILP solvers
Claude Michel (University of Nice - Sophia Antipolis / I3S-CNRS),, Michel Rueher (University of Nice - Sophia Antipolis / I3S-CNRS)

TL;DR
This paper explores the use of MILP solvers to efficiently solve complex software upgradeability problems in operating systems, outperforming other solver types in real-world benchmarks.
Contribution
It demonstrates that MILP solvers effectively handle multi-criteria upgradeability problems, offering a scalable solution for large package sets in OS environments.
Findings
MILP solvers outperform CP and Pseudo Boolean solvers in upgradeability tasks.
Linear combination of criteria enhances MILP solver efficiency.
Experiments on real benchmarks validate MILP effectiveness for large package sets.
Abstract
Upgradeability problems are a critical issue in modern operating systems. The problem consists in finding the "best" solution according to some criteria, to install, remove or upgrade packages in a given installation. This is a difficult problem: the complexity of the upgradeability problem is NP complete and modern OS contain a huge number of packages (often more than 20 000 packages in a Linux distribution). Moreover, several optimisation criteria have to be considered, e.g., stability, memory efficiency, network efficiency. In this paper we investigate the capabilities of MILP solvers to handle this problem. We show that MILP solvers are very efficient when the resolution is based on a linear combination of the criteria. Experiments done on real benchmarks show that the best MILP solvers outperform CP solvers and that they are significantly better than Pseudo Boolean solvers.
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.
