Abstract
Constraints have played a central role in cp because they capture key substructures of a problem and efficiently exploit them to boost inference. This paper intends to do the same thing for search, proposing constraint-centered heuristics which guide the exploration of the search space toward areas that are likely to contain a high number of solutions. We first propose new search heuristics based on solution counting information at the level of individual constraints. We then describe efficient algorithms to evaluate the number of solutions of two important families of constraints: occurrence counting constraints, such as alldifferent, and sequencing constraints, such as regular. In both cases we take advantage of existing filtering algorithms to speed up the evaluation. Experimental results on benchmark problems show the effectiveness of our approach.
Similar content being viewed by others
References
Barvinok, A. (1999). Polynomial time algorithms to approximate permanents and mixed discriminants within a simply exponential factor. Random Structures and Algorithms, 14, 29–61.
Beck, J. C. (2007). Solution-guided multi-point constructive search for job shop scheduling. Journal of Artificial Intelligence Research, 29, 49–77.
Chien, S., Rasmussen, L., & Sinclair, A. (2002). Clifford algebras and approximating the permanent. In Proceedings of the thirty-fourth annual ACM symposium on theory of computing (STOC 2002) (pp. 222–231). New York: ACM.
Fürer, M., & Kasiviswanathan, S. P. (2004). An almost linear time approximation algorithm for the permanent of a random (0-1) matrix. In Proceedings of the twenty-fourth international conference on foundations of software technology and theoretical computer science (FSTTCS 2004) (Vol. 3258, pp. 54–61). New York: Springer.
Gomes, C. (2003). Complete randomized backtrack search. In M. Milano (Ed.), Constraint and integer programming: Toward a unified methodology (pp. 233–283). Deventer: Kluwer.
Gomes, C., & Shmoys, D. (2002). Completing quasigroups or Latin squares: A structured graph coloring problem. In Proceedings of computational symposium on graph coloring and generalizations (COLOR 2002) (pp. 22–39).
Gogate, V., & Dechter, R. (2007). Approximate counting by sampling the backtrack-free search space. In Proceedings of the twenty-second national conference on artificial intelligence (AAAI 2007) (pp. 198–203). Menlo Park: AAAI.
Gomes, C. P., Sabharwal, A., & Selman, B. (2006). Model counting: A new strategy for obtaining good bounds. In Proceedings of the twenty-first national conference on artificial intelligence (AAAI 2006) (pp. 54–61).
Hsu, E. I., Kitching, M., Bacchus, F., & McIlraith, S. A. (2007). Using EM to find likely assignments for solving CSP’s. In Proceedings of the twenty-second national conference on artificial intelligence (AAAI 2007) (pp. 224–230). Menlo Park: AAAI.
Huber, M. (2006). Exact sampling from perfect matchings of dense regular bipartite graphs. Algorithmica, 44(3), 183–193.
Jerrum, M., Sinclair, A., & Vigoda, E. (2001). A polynomial-time approximation algorithm for the permanent of a matrix with non-negative entries. In Proceedings of the thirty-third annual ACM symposium on theory of computing (STOC 2001) (pp. 712–721). New York: ACM.
Linial, N., Samorodnitsky, A., & Wigderson, A. (2000). A deterministic strongly polynomial algorithm for matrix scaling and approximate permanents. Combinatorica, 20(4), 545–568.
Kask, K., Dechter, R., & Gogate, V. (2004). Counting-based look-ahead schemes for constraint satisfaction. In Proceedings of the tenth international conference on principles and practice of constraint programming (CP 2004) (Vol. 3258, pp. 317–331). New York: Springer.
Patel, J., & Chinneck, J. W. (2006). Active-constraint variable ordering for faster feasibility of mixed integer linear programs. Mathematical Programming, 110(3), 445–474.
Pesant, G. (2004). A regular language membership constraint for finite sequences of variables. In Proceedings of the tenth international conference on principles and practice of constraint programming (CP 2004) (Vol. 3258, pp. 482–495). New York: Springer.
Pesant, G. (2005). Counting solutions of CSPs: A structural approach. In Proceedings of the nineteenth international joint conference on artificial intelligence (IJCAI 2005) (pp. 260–265).
Pesant, G., & Quimper, C.-G. (2008). Counting solutions of Knapsack constraints. In Proceedings of the fifth international conference on integration of AI and OR techniques in constraint programming for combinatorial optimization problems (CPAIOR 2008) (pp. 203–217).
Rasmussen, L. E. (1994). Approximating the permanent: A simple approach. Random Structures and Algorithms, 5(2), 349–361.
Refalo, P. (2004). Impact-based search strategies for constraint programming. In Proceedings of the tenth international conference on principles and practice of constraint programming (CP 2004) (Vol. 3258, pp. 557–571). New York: Springer.
Régin, J.-C. (1994). A filtering algorithm for constraints of difference in CSPs. In Procedings of the twelfth national conference on artificial intelligence (AAAI 1994) (pp. 362–367). Menlo Park: AAAI.
Ryser, H. J. (1963). Combinatorial mathematics. Carus Mathematical Monographs No. 14. New York: Wiley.
Sellmann, M., & Ansotegui C. (2006). Disco - Novo - GoGo: Integrating local search and complete search with restarts. In Twenty-first national conference on artificial intelligence (AAAI 2006) (pp. 1051–1056). Menlo Park: AAAI.
Valiant, L. G. (1979). The complexity of computing the permanent. Theoretical Computer Science, 8(2), 189–201.
Zanarini, A., & Pesant, G. (2007). Solution counting algorithms for constraint-centered search heuristics. In Proceedings of the thirteenth international conference on principles and practice of constraint programming (CP 2007) (Vol. 4741, pp. 743–757). New York: Springer.
Author information
Authors and Affiliations
Corresponding author
Additional information
An earlier version of this paper appeared as [24].
Rights and permissions
About this article
Cite this article
Zanarini, A., Pesant, G. Solution counting algorithms for constraint-centered search heuristics. Constraints 14, 392–413 (2009). https://doi.org/10.1007/s10601-008-9065-9
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10601-008-9065-9