Skip to main content
Log in

Optimal and efficient filtering algorithms for table constraints

  • Published:
Constraints Aims and scope Submit manuscript

Abstract

Filtering algorithms for table constraints can be classified in two categories: constraint-based and value-based. In the constraint-based approaches, the propagation queue only contains information on the constraints that must be reconsidered. For the value-based approaches, the propagation queue also contains information on the removed values. This paper proposes five efficient value-based algorithms for table constraints. Two of them (AC5TCOpt-Tr and AC5TCOpt-Sparse) are proved to have an optimal time complexity of O(r·t+r·d) per table constraint. Substantial experimental results are presented. An empirical analysis is conducted on the effect of the arity of the tables. The experiments show that our propagators are the best when the arity of the table is 3 or 4. Indeed, on instances containing only binary constraints, our algorithms are outperformed by classical AC algorithm AC3rm. AC3rm is dedicated to binary constraints. However, all our algorithms outperform existing state-of-the-art constraint based STR2+ and MDDc and the optimal value-based STR3 algorithms on those instances. On instances with small arity tables (up to arity 4), all our algorithms are generally faster than STR2+, MDDc and than STR3. AC5TCOpt-Sparse is globally the best propagator on those benchmarks. On benchmarks containing large arity tables (arity 5 or more), each of the three existing state-of-the-art algorithms is the winning strategy on one different benchmark.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. van Beek, P. (2006). Backtracking search algorithm. In Rossi, F., Beek, P.v., Walsh, T. (Eds.), Handbook of Constraint Programming (Foundations of Artificial Intelligence). New York: Elsevier Science Inc.

  2. Beldiceanu, N., Carlsson, M., Debruyne, R., Petit, T. (2005). Reformulation of global constraints based on constraints checkers. Constraints, 10(4), 339–362.

    Article  MATH  MathSciNet  Google Scholar 

  3. Bessière, C. (2006). Constraint propagation. In Rossi, F., Beek, P.v., Walsh, T. (Eds.), Handbook of Constraint Programming (Foundations of Artificial Intelligence). New York: Elsevier Science Inc.

  4. Bessière, C., & Régin, J. C. (1997). Arc consistency for general constraint networks: preliminary results. IJCAI, (1), 398–404.

  5. Briggs, P., & Torczon, L. (1993). An efficient representation for sparse sets. ACM Letters on Programming Languages and Systems (LOPLAS), 2(1-4), 59–69.

    Article  Google Scholar 

  6. Carlsson, M. (2006). Filtering for the case constraint, talk given at the advanced school on global constraints.

  7. Cheng, K., & Yap, R. (2010). An mdd-based generalized arc consistency algorithm for positive and negative table constraints and some global constraints. Constraints, 15, 265–304.

    Article  MATH  MathSciNet  Google Scholar 

  8. Deville, Y., & Van Hentenryck, P. (2010). Domain consistency with forbidden values. In Proceedings of CP 2010, pp. 191–205. Springer.

  9. Fleming, P.J., & Wallace, J.J. (1986). How not to lie with statistics: the correct way to summarize benchmark results. Communication ACM, 29(3), 218–221.

    Article  Google Scholar 

  10. Gange, G., Stuckey, P. J., Szymanek, R. (2011). Mdd propagators with explanation. Constraints, 16(4), 407–429.

    Article  MATH  MathSciNet  Google Scholar 

  11. Gent, I. P., Jefferson, C., Miguel, I. (2006). Watched literals for constraint propagation in Minion. In Proceedings of CP 2006 (pp. 182–197). Springer-Verlag.

  12. Gent, I. P., Jefferson, C., Miguel, I., Nightingale, P. (2007). Data structures for generalised arc consistency for extensional constraints. In Proceedings of the AAAI 07 (pp. 191–197). AAAI Press.

  13. Katsirelos, G., & Walsh, T. (2007). A compression algorithm for large arity extensional constraints. In Proceedings of CP 2007 (pp. 379–393). Springer-Verlag.

  14. Lecoutre, C. Instances of the Constraint Solver Competition. http://www.cril.fr/~lecoutre/.

  15. Lecoutre, C. (2009). Constraint Networks: Techniques and Algorithms. ISTE/Wiley.

  16. Lecoutre, C. (2011). Str2: optimized simple tabular reduction for table constraints. Constraints, 16, 341–371.

    Article  MATH  MathSciNet  Google Scholar 

  17. Lecoutre, C., & Szymanek, R. (2006). Generalized arc consistency for positive table constraints. In Proceedings of CP 2006 (pp. 284–298).

  18. Lecoutre, C., Hemery, F., etal (2007). A study of residual supports in arc consistency. In Proceedings of IJCAI 2007 (vol.7, pp. 125–130).

  19. Lecoutre, C., Likitvivatanavong, C., Yap, R. (2012). A path-optimal gac algorithm for table constraints. In Proceedings of ECAI 2012 (pp. 510–515).

  20. Lhomme, O. (2004). Arc-consistency filtering algorithms for logical combinations of constraints. In Proceedings of CPAIOR 2004 (pp. 209–224).

  21. Lhomme, O., & Régin, J. C. (2005). A fast arc consistency algorithm for n-ary constraints. In Proceedings of the nationnal conference on artificial intelligence (pp. 405–410). AAAI Press.

  22. Mairy, J. B., Van Hentenryck, P., Deville, Y. (2012). An optimal filtering algorithm for table constraints. In Proceedings of CP 2012 (vol. 3709, pp. 496–511). Springer: Berlin.

    Google Scholar 

  23. Mohr, R., & Masini, G. (1988). Good old discrete relaxation. In Proceedings of ECAI 1988 (pp. 651–656).

  24. Perron, L., & Furnon, V. or-tools. http://code.google.com/p/or-tools.

  25. Pesant, G. (2004). A regular language membership constraint for finite sequences of variables. In Proceedings of CP 2004 (pp. 482–495). Springer.

  26. Quimper, C. G., & Walsh, T. (2006). Global grammar constraints. In Proceedings of CP 2006 (pp. 751–755). Springer.

  27. Régin, J. C. (2011). Improving the expressiveness of table constraints. In Proceedings of ModRef 2011, Workshop held with CP 2011.

  28. Samaras, N., & Stergiou, K. (2005). Binary encodings of non-binary constraint satisfaction problems: algorithms and experimental results. Journal of Artificial Intelligence Research, 24(1), 641–684.

    MATH  MathSciNet  Google Scholar 

  29. Ullmann, J. R. (2007). Partition search for non-binary constraint satisfaction. Information Sciences, 177(18), 3639–3678.

    Article  MATH  MathSciNet  Google Scholar 

  30. Van Hentenryck, P., & Ramachandran, V. (1995). Backtracking without trailing in CLP(\(\Re _{lin}\)). ACM Transactions on Programming Languages and Systems, 17(4), 635–671.

    Article  Google Scholar 

  31. Van Hentenryck, P., Deville, Y., Teng, C.M. (1992). A generic arc-consistency algorithm and its specializations. Artificial Intelligence, 57(2–3), 291–321.

    Article  MATH  MathSciNet  Google Scholar 

  32. Wallace, R. (2005). Factor analytic studies of csp heuristics. In Proceedings of CP 2005 (vol. 3709, pp. 712–726). Springer: Berlin / Heidelberg.

    Google Scholar 

  33. Xu, K., Boussemart, F., Hemery, F., Lecoutre, C. (2007). Random constraint satisfaction: Easy generation of hard (satisfiable) instances. Artificial Intelligence, 171(8–9), 514–534.

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yves Deville.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Mairy, JB., Van Hentenryck, P. & Deville, Y. Optimal and efficient filtering algorithms for table constraints. Constraints 19, 77–120 (2014). https://doi.org/10.1007/s10601-013-9156-0

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10601-013-9156-0

Keywords

Navigation