Download PDFOpen PDF in browserA Modelling Pearl with Sortedness Constraints15 pages•Published: December 18, 2015AbstractSome constraint programming solvers and constraint modelling languages feature the SORT(L,P,S) constraint, which holds if S is a nondecreasing rearrangement of the list L, the permutation being made explicit by the optional list P. However, such sortedness constraints do not seem to be used much in practice. We argue that reasons for this neglect are that it is impossible to require the underlying sort to be stable, so that SORT cannot be guaranteed to be a total-function constraint, and that L cannot contain tuples of variables, some of which form the key for the sort. To overcome these limitations, we introduce the StableKeysort constraint, decompose it using existing constraints, and propose a propagator. This new constraint enables a powerful modelling idiom, which we illustrate by elegant and scalable models of two problems that are otherwise hard to encode as constraint programs.Keyphrases: constraint decomposition, constraint modelling, constraint programming, constraint propagator, sortedness constraints, stable sort In: Georg Gottlob, Geoff Sutcliffe and Andrei Voronkov (editors). GCAI 2015. Global Conference on Artificial Intelligence, vol 36, pages 27-41.
|