Skip to main content

Compact-Table: Efficiently Filtering Table Constraints with Reversible Sparse Bit-Sets

  • Conference paper
  • First Online:
Principles and Practice of Constraint Programming (CP 2016)

Abstract

In this paper, we describe Compact-Table (CT), a bitwise algorithm to enforce Generalized Arc Consistency (GAC) on table constraints. Although this algorithm is the default propagator for table constraints in or-tools and OscaR, two publicly available CP solvers, it has never been described so far. Importantly, CT has been recently improved further with the introduction of residues, resetting operations and a data-structure called reversible sparse bit-set, used to maintain tables of supports (following the idea of tabular reduction): tuples are invalidated incrementally on value removals by means of bit-set operations. The experimentation that we have conducted with OscaR shows that CT outperforms state-of-the-art algorithms STR2, STR3, GAC4R, MDD4R and AC5-TC on standard benchmarks.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    We are aware of an independent work [34] on a similar topic, but hadn’t the opportunity of reading it at the time of writing our paper.

  2. 2.

    Note that some parts of this paper were published in a Master Thesis report [7].

  3. 3.

    One notable exception is Gecode, a copy-based solver.

  4. 4.

    available at http://becool.info.ucl.ac.be.

References

  1. Bessiere, C., Régin, J.-C.: Arc consistency for general constraint networks: preliminary results. In: Proceedings of IJCAI 1997, pp. 398–404 (1997)

    Google Scholar 

  2. Bessiere, C., Régin, J.-C., Yap, R., Zhang, Y.: An optimal coarse-grained arc consistency algorithm. Artif. Intell. 165(2), 165–185 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  3. Bliek, C.: Wordwise algorithms and improved heuristics for solving hard constraint satisfaction problems. Technical Report 12–96-R045, ERCIM (1996)

    Google Scholar 

  4. Briggs, P., Torczon, L.: An efficient representation for sparse sets. ACM Lett. Programm. Lang. Syst. 2(1–4), 59–69 (1993)

    Article  Google Scholar 

  5. Van Cauwelaert, S., Lombardi, M., Schaus, P.: A visual web tool to perform what-if analysis of optimization approaches. Technical report, UCLouvain (2016)

    Google Scholar 

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

    Article  MathSciNet  MATH  Google Scholar 

  7. Demeulenaere, J.: Efficient algorithms for table constraints. Technical report, Master Thesis, under the supervision of P. Schauss, UCLouvain (2015)

    Google Scholar 

  8. Dolan, E.D., Moré, J.J.: Benchmarking optimization software with performance profiles. Math. Program. 91(2), 201–213 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  9. Floyd, R.W.: Nondeterministic algorithms. J. ACM 14(4), 636–644 (1967)

    Article  MATH  Google Scholar 

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

    Google Scholar 

  11. Gharbi, N., Hemery, F., Lecoutre, C., Roussel, O.: Sliced table constraints: combining compression and tabular reduction. In: Simonis, H. (ed.) CPAIOR 2014. LNCS, vol. 8451, pp. 120–135. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  12. Van Hentenryck, P., Mairy, J.-B., Deville, Y.: Optimal and efficient filtering algorithms for table constraints. Constraints 19(1), 77–120 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  13. Jefferson, C., Nightingale, P.: Extending simple tabular reduction with short supports. In: Proceedings of IJCAI 2013, pp. 573–579 (2013)

    Google Scholar 

  14. Katsirelos, G., Walsh, T.: A compression algorithm for large arity extensional constraints. In: Proceedings of CP 2007, pp. 379–393 (2007)

    Google Scholar 

  15. Knuth, D.E.: The Art of Computer: Combinatorial Algorithms, vol. 4. Addison-Wesley (2015)

    Google Scholar 

  16. de Saint-Marcq, V.C., Schaus, P., Solnon, C., Lecoutre, C.: Sparse-sets for domain implementation. In: Proceeding of TRICS 2013, pp. 1–10 (2013)

    Google Scholar 

  17. Lecoutre, C.: STR2: Optimized simple tabular reduction for table constraints. Constraints 16(4), 341–371 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  18. Lecoutre, C., Boussemart, F., Hemery, F.: Exploiting multidirectionality in coarse-grained arc consistency algorithms. In: Proceedings of CP 2003, pp. 480–494 (2003)

    Google Scholar 

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

    Google Scholar 

  20. Lecoutre, C., Likitvivatanavong, C., Yap, R.: STR3: A path-optimal filtering algorithm for table constraints. Artif. Intell. 220, 1–27 (2015)

    Article  MathSciNet  MATH  Google Scholar 

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

    Google Scholar 

  22. Lecoutre, C., Vion, J.: Enforcing arc consistency using bitwise operations. Constraint Program. Lett. 2d, 21–35 (2008)

    Google Scholar 

  23. Lhomme, O., Régin, J.-C.: A fast arc consistency algorithm for n-ary constraints. In: Proceedings of AAAI 2005, pp. 405–410 (2005)

    Google Scholar 

  24. Likitvivatanavong, C., Zhang, Y., Bowen, J., Freuder, E.C.: Arc consistency in MAC: a new perspective. In: Proceedings of CPAI 2004 Workshop held with CP 2004, pp. 93–107 (2004)

    Google Scholar 

  25. Mackworth, A.K.: Consistency in networks of relations. Artif. Intell. 8(1), 99–118 (1977)

    Article  MathSciNet  MATH  Google Scholar 

  26. Mairy, J.-B., van Hentenryck, P., Deville, Y.: An optimal filtering algorithm for table constraints. In: Proceedings of CP 2012, pp. 496–511 (2012)

    Google Scholar 

  27. McGregor, J.J.: Relational consistency algorithms and their application in finding subgraph and graph isomorphisms. Inf. Sci. 19, 229–250 (1979)

    Article  MathSciNet  MATH  Google Scholar 

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

    Google Scholar 

  29. Team, O.: OscaR: Scala in OR (2012). https://bitbucket.org/oscarlib/oscar

  30. Perez, G., Régin, J.-C.: Improving GAC-4 for table and MDD constraints. In: Proceedings of CP 2014, pp. 606–621 (2014)

    Google Scholar 

  31. Srinivasan, A., Kam, T., Malik, S., Brayton, R.K.: Algorithms for discrete function manipulation. In: Proceedings of ICCAD 1990, pp. 92–95 (1990)

    Google Scholar 

  32. Ullmann, J.R.: An algorithm for subgraph isomorphism. J. ACM 23(1), 31–42 (1976)

    Article  MathSciNet  Google Scholar 

  33. Ullmann, J.R.: Partition search for non-binary constraint satisfaction. Inf. Sci. 177, 3639–3678 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  34. Wang, R., Xia, W., Yap, R., Li, Z.: Optimizing simple table reduction with bitwise representation. In: Proceedings of IJCAI 2016 (2016)

    Google Scholar 

  35. Xia, W., Yap, R.: Optimizing STR algorithms with tuple compression. In: Proceedings of CP 2013, pp. 724–732 (2013)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Pierre Schaus .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Demeulenaere, J. et al. (2016). Compact-Table: Efficiently Filtering Table Constraints with Reversible Sparse Bit-Sets. In: Rueher, M. (eds) Principles and Practice of Constraint Programming. CP 2016. Lecture Notes in Computer Science(), vol 9892. Springer, Cham. https://doi.org/10.1007/978-3-319-44953-1_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-44953-1_14

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-44952-4

  • Online ISBN: 978-3-319-44953-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics