A learning-based mathematical programming formulation for the automatic configuration of optimization solvers

Gabriele Iommazzo,Claudia D'Ambrosio,Antonio Frangioni,Leo Liberti
DOI: https://doi.org/10.1007/978-3-030-64583-0_61
2024-01-09
Abstract:We propose a methodology, based on machine learning and optimization, for selecting a solver configuration for a given instance. First, we employ a set of solved instances and configurations in order to learn a performance function of the solver. Secondly, we formulate a mixed-integer nonlinear program where the objective/constraints explicitly encode the learnt information, and which we solve, upon the arrival of an unknown instance, to find the best solver configuration for that instance, based on the performance function. The main novelty of our approach lies in the fact that the configuration set search problem is formulated as a mathematical program, which allows us to a) enforce hard dependence and compatibility constraints on the configurations, and b) solve it efficiently with off-the-shelf optimization tools.
Optimization and Control,Machine Learning
What problem does this paper attempt to address?
This paper primarily discusses how to automatically select the most suitable solver configuration using machine learning and optimization methods. The researchers propose a two-step approach: first, using solved instances and configurations to learn the solver's performance function; second, transforming the learned information into a Mixed Integer Nonlinear Programming (MINLP) problem to find the optimal configuration for new instances. The innovation of this approach lies in formalizing the configuration set search problem as a mathematical program, which can enforce configuration compatibility constraints and efficiently utilize existing optimization tools for solving. The paper mentions that current optimization solvers often have many adjustable parameters, and manually optimizing these parameters is a time-consuming and complex task. Therefore, the researchers predict the performance function through machine learning and then convert it into a mathematical model to automatically find the best configuration for specific instances. In their experiments, they use Support Vector Regression (SVR) to learn the performance mapping and IBM ILOG CPLEX solver configuration to solve the Hydropower Unit Commitment (HUC) problem. Existing work typically uses heuristic methods such as local search and genetic algorithms to solve algorithm configuration problems. In contrast, this approach directly solves the configuration search problem by leveraging the structure of mathematical programs, enabling more efficient handling of global optimization of the performance function. The experimental results show that the proposed method can produce better solutions than default configurations in certain cases. In conclusion, this paper aims to address the automatic configuration problem of optimization solvers by combining machine learning and mathematical programming to find the best configuration for specific instances, thereby improving the efficiency of solving and the quality of solutions.