Multi-Pass High-Level Presolving
Proceedings of the Twenty-Fourth International Joint Conference on Artificial Intelligence. Main Track. Pages 346-351.
Abstract
Presolving is a preprocessing step performed by optimisation solvers to improve performance. However, these solvers cannot easily exploit high-level model structure as available in modelling languages such as MiniZinc or Essence. We present an integrated approach that performs presolving as a separate pass during the compilation from high-level optimisation models to solver-level programs. The compiler produces a representation of the model that is suitable for presolving by retaining some of the high-level structure. It then uses information learned during presolving to generate the final solver-level representation. Our approach introduces the novel concept of variable paths that identify variables which are common across multiple compilation passes, increasing the amount of shared information. We show that this approach can lead to both faster compilation and more efficient solver-level programs.
@inproceedings{ijcai2015p55,
title = {Multi-Pass High-Level Presolving},
author = {Leo, Kevin and Tack, Guido},
booktitle = {Proceedings of the Twenty-Fourth International Joint Conference on
Artificial Intelligence, {IJCAI-15}},
publisher = {International Joint Conferences on Artificial Intelligence},
editor = {Qiang Yang and Michael Wooldridge},
pages = {346--351},
year = {2015},
month = {7},
note = {Main Track},
url = {https://ijcai.org/proceedings/2015/55},
}
TY - CPAPER TI - Multi-Pass High-Level Presolving AU - Leo, Kevin AU - Tack, Guido T2 - Proceedings of the Twenty-Fourth International Joint Conference on Artificial Intelligence, IJCAI-15 PB - International Joint Conferences on Artificial Intelligence PY - 2015 SP - 346 EP - 351 UR - https://ijcai.org/proceedings/2015/55 ER -Copied
Machine-readable versions of this paper, for tools and AI agents: