Generating special-purpose stateless propagators for arbitrary constraints

4Citations
Citations of this article
6Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Given an arbitrary constraint c on n variables with domain size d, we show how to generate a custom propagator that establishes GAC in time O(nd) by precomputing the propagation that would be performed on every reachable subdomain of scope(c). Our propagators are stateless: they store no state between calls, and so incur no overhead in storing and backtracking state during search. The preprocessing step can take exponential time and the custom propagator is potentially exponential in size. However, for small constraints used repeatedly, in one problem or many, this technique can provide substantial practical gains. Our experimental results show that, compared with optimised implementations of the table constraint, this technique can lead to an order of magnitude speedup, while doing identical search on realistic problems. The technique can also be many times faster than a decomposition into primitive constraints in the Minion solver. Propagation is so fast that, for constraints available in our solver, the generated propagator compares well with a human-optimised propagator for the same constraint. © 2010 Springer-Verlag.

Cite

CITATION STYLE

APA

Gent, I. P., Jefferson, C., Miguel, I., & Nightingale, P. (2010). Generating special-purpose stateless propagators for arbitrary constraints. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 6308 LNCS, pp. 206–220). Springer Verlag. https://doi.org/10.1007/978-3-642-15396-9_19

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free