Creative Commons Attribution 4.0 International license
Optional variables have for a long time been identified as a crucial component of state-of-the-art scheduling solvers. They not only offer a natural way to model many scheduling problems but also play an important role in the efficiency of such solvers by enabling a stronger inference in a constraint propagation engine. Despite this recognition, their adoption in modern solvers remains extremely scarce presumably because their native support requires pervasive changes to a solver and handling many subtleties that have not been extensively studied. In this paper, we aim to provide a good foundation in this direction by providing a formal characterization of optional variables and of their interactions with key components of a constraint programming solver including propagators, reification and lazy clause generation. In addition, we present a new lazy clause generation solver with native support for optional variables and demonstrate its efficiency on variants of the flexible jobshop problem.
@InProceedings{bitmonnot:LIPIcs.CP.2026.7,
author = {Bit-Monnot, Arthur},
title = {{Revisiting Optional Variables in Lazy Clause Generation Solvers for Flexible Scheduling}},
booktitle = {32nd International Conference on Principles and Practice of Constraint Programming (CP 2026)},
pages = {7:1--7:23},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {978-3-95977-432-1},
ISSN = {1868-8969},
year = {2026},
volume = {379},
editor = {Beldiceanu, Nicolas},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.CP.2026.7},
URN = {urn:nbn:de:0030-drops-266400},
doi = {10.4230/LIPIcs.CP.2026.7},
annote = {Keywords: Constraint Programming, Scheduling, Lazy-Clause Generation, Optional Variables}
}