Advertisement

Constraints

, Volume 15, Issue 2, pp 265–304 | Cite as

An MDD-based generalized arc consistency algorithm for positive and negative table constraints and some global constraints

  • Kenil C. K. ChengEmail author
  • Roland H. C. Yap
Article

Abstract

A table constraint is explicitly represented as its set of solutions or non-solutions. This ad hoc (or extensional) representation may require space exponential to the arity of the constraint, making enforcing GAC expensive. In this paper, we address the space and time inefficiencies simultaneously by presenting the mddc constraint. mddc is a global constraint that represents its (non-)solutions with a multi-valued decision diagram (MDD). The MDD-based representation has the advantage that it can be exponentially smaller than a table. The associated GAC algorithm (called mddc) has time complexity linear to the size of the MDD, and achieves full incrementality in constant time. In addition, we show how to convert a positive or negative table constraint into an mddc constraint in time linear to the size of the table. Our experiments on structured problems, car sequencing and still-life, show that mddc is also a fast GAC algorithm for some global constraints such as sequence and regular. We also show that mddc is faster than the state-of-the-art generic GAC algorithms in Gent et al. (2007), Lecoutre and Szymanek (2006), Lhomme and Régin (2005) for table constraint.

Keywords

Ad hoc constraint Global constraint Table constraint Positive constraint Negative constraint Multi-valued decision diagram Generalized arc consistency 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Beldiceanu, N., & Contejean, E. (1994). Introducing global constraints in CHIP. Journal of Mathematical and Computer Modelling, 20(12), 97–123.zbMATHCrossRefGoogle Scholar
  2. 2.
    Bessière, C., & Régin, J.-C. (1997). Arc consistency for general constraint networks: Preliminary results. In International joint conference on artificial intelligence (pp. 398–404).Google Scholar
  3. 3.
    Bessière, C., & Régin, J.-C. (1999). Enforcing arc consistency on global constraints by solving subproblems on the fly. In International Conference on Principles and Practice of Constraint Programming (pp. 103–117).Google Scholar
  4. 4.
    Bessière, C., Régin, J.-C., Yap, R. H. C., & Zhang, Y. (2005). An optimal coarse-grained arc consistency algorithm. Artificial Intelligence, 165(2), 165–185.zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Bollig, B., & Wegener, I. (1996). Improving the variable ordering of OBDDs is NP-complete. IEEE Transactions on Computers, 45(9), 993–1002.zbMATHCrossRefGoogle Scholar
  6. 6.
    Briggs, P., & Torczon, L. (1993). An efficient representation for sparse sets. ACM Letters on Programming Languages and Systems, 2(1–4), 59–69.CrossRefGoogle Scholar
  7. 7.
    Bryant, R. E. (1986). Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers, 35(8), 667–691.CrossRefGoogle Scholar
  8. 8.
    Carlsson, M. (2006). Filtering for the case constraint. Talk given at Advanced School on Global Constraints.Google Scholar
  9. 9.
    Carlsson, M., et al. (2005). SICStus Prolog User’s Manual. Swedish Institute of Computer Science, release 3.12.3 ed. http://www.sics.se/sicstus/.
  10. 10.
    Cheng, K. C. K., & Yap, R. H. C. (2006a). Applying ad-hoc global constraints with the case constraint to Still-life. Constraints, 11(2–3), 91–114.zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Cheng, K. C. K., & Yap, R. H. C. (2006b). Maintaining generalized arc consistency on ad-hoc n-ary boolean constraints. In European conference on artificial intelligence (pp. 78–82).Google Scholar
  12. 12.
    Cheng, K. C. K., & Yap, R. H. C. (2008). Maintaining generalized arc consistency on ad hoc r-ary constraints. In International conference on principles and practice of constraint programming (pp. 509–523).Google Scholar
  13. 13.
    Dincbas, M., Simonis, H., & van Hentenryck, P. (1988). Solving the car-sequencing problem in constraint logic programming. In European conference on artificial intelligence (pp. 290–295).Google Scholar
  14. 14.
    Eén, N., & Sörensson, N. (2006). Translating pseudo-boolean constraints into SAT. Journal on Satisiability, Boolean Modeling and Computation, 2, 1–26.zbMATHGoogle Scholar
  15. 15.
    Gent, I. P., Jefferson, C., Miguel, I., & Nightingale, P. (2007). Data structures for generalized arc consistency for extensional constraints. In National conference on artificial intelligence.Google Scholar
  16. 16.
    Guy, R., Conway, J. H., & Berlekamp, E. (1982). Winning ways: for your mathematical plays (Vol. 2). London: Academic Press.zbMATHGoogle Scholar
  17. 17.
    Katsirelos, G., & Walsh, T. (2007). A compression algorithm for large arity extensional constraints. In International conference on principles and practice of constraint programming (pp. 379–393).Google Scholar
  18. 18.
    Lecoutre, C. (2008). Optimization of simple tabular reduction for table constraints. In International conference on principles and practice of constraint programming (pp. 128–143).Google Scholar
  19. 19.
    Lecoutre, C., & Szymanek, R. (2006). Generalized arc consistency for positive table constraints. In International conference on principles and practice of constraint programming (pp. 284–298).Google Scholar
  20. 20.
    Lhomme, O. (2004). Arc-consistency filtering algorithm for logical combinations of constraints. In International conference on integration of AI and OR techniques in constraint programming for combinatorial optimization problems (pp. 209–224).Google Scholar
  21. 21.
    Lhomme, O., & Régin, J.-C. (2005). A fast arc consistency algorithm for n-ary constraints. In National conference on artificial intelligence (pp. 405–410).Google Scholar
  22. 22.
    Mackworth, A. K. (1977). On reading sketch maps. In International joint conference on artificial intelligence (pp. 598–606).Google Scholar
  23. 23.
    Pesant, G. (2004). A regular language membership constraint for finite sequences of variables. In International conference on principles and practice of constraint programming (pp. 482–495).Google Scholar
  24. 24.
    Srinivasan, A., Kam, T., Malik, S., & Brayton, R. (1990). Algorithms for discrete function manipulation. In Computer aided design (pp. 92–95).Google Scholar
  25. 25.
    Ullmann, J. R. (2007). Partition search for non-binary constraint satisfaction. Information Science, 177, 3639–3678.zbMATHCrossRefMathSciNetGoogle Scholar
  26. 26.
    van Hoeve, W.-J., Pesant, G., Rousseau, L.-M., & Sabharwal, A. (2006). Revisiting the sequence constraint. In International conference on principles and practice of constraint programming (pp. 620–634).Google Scholar
  27. 27.
    Xu, K., Boussemart, F., Hemery, F., & Lecoutre, C. (2005). A simple model to generate hard satisfiable instances. In International joint conference on artificial intelligence (pp. 337–342).Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2009

Authors and Affiliations

  1. 1.Department of Computer Science and EngineeringThe Chinese University of Hong KongHong KongPeople’s Republic of China
  2. 2.School of ComputingNational University of SingaporeSingaporeSingapore

Personalised recommendations