Abstract
The symmetries that appear in many constraint problems can be used to significantly speed up the search for solutions to these problems. While the accurate detection of symmetries in instances of a given constraint problem is possible, current methods tend to be impractical for real-sized instances. On the other hand, methods capable of detecting properties for a problem model – and thus all its instances – are efficient but not accurate enough. This paper presents a new method for inferring symmetries in constraint satisfaction models that combines the high accuracy of instance-based methods with the efficiency of model-based methods; the key insight is that symmetries detected for small instances of the model can be generalised to the model itself. Experimental evaluation shows that this approach is able to find all symmetries in almost all the benchmark problems used. The generality of our method is then illustrated by showing how it can be applied to infer other properties.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Alpuente, M. (Ed.) (2011). Logic-Based Program Synthesis and Transformation - 20th International Symposium, LOPSTR 2010, Hagenberg, Austria, July 23-25, 2010, Revised Selected Papers, Lecture Notes in Computer Science (Vol. 6564). Springer.
Benhamou, B. (1994). Study of symmetry in constraint satisfaction problems. In PPCP’94: Second International Workshop on Principles and Practice of Constraint Programming (pp. 246–254).
Charnley, J., Colton, S,. Miguel, I. (2006). Automatic generation of implied constraints. In G. Brewka, S. Coradeschi, A. Perini, and P. Traverso, (Eds.), ECAI, Frontiers in Artificial Intelligence and Applications (Vol. 141, pp. 73–77). IOS Press.
Chu, G., Garcia de la Banda, M., Stuckey. P.J. (2010). Automatically exploiting subproblem equivalence in constraint programming. In A. Lodi, M. Milano, P. Toth (Eds.), CPAIOR, Lecture Notes in Computer Science (Vol. 141, pp 71–86). Springer.
Cohen, D.A., Jeavons, P., Jefferson, C., Petrie, K.E, Smith, B.M. (2006). Symmetry definitions for constraint satisfaction problems. Constraints, 11(2-3), 115–137.
Colton, S, & Sorge, V. (2008). Automated parameterisation of finite algebras. In Workshop on Empirical Successful Automated Reasoning in Mathematics.
Cousot, P., & Cousot, R. (1977). Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In R.M. Graham, M.A. Harrison, R. Sethi (Eds.), POPL, (pp. 238–252. ACM).
Crawford, J.M., Ginsberg, M.L., Luks, E.M., Roy, A. (1996). In L.C. Aiello, J. Doyle, S.C. Shapiro (Eds.), KR (pp. 148–159). Morgan Kaufmann.
Darga, P.T., Liffiton, M.H., Sakallah, K.A., Markov, I.L. (2004). Exploiting structure in symmetry detection for CNF. In S. Malik, L. Fix, A.B. Kahng (Eds.), DAC (pp. 530–534). ACM.
Fahle, T., Schamberger, S., Sellmann, M. (2001). Symmetry breaking. In T. Walsh (Ed.), CP, Lecture Notes in Computer Science (Vol. 2239, pp. 93–107). Springer.
Freuder, E.C. (1991). Eliminating interchangeable values in constraint satisfaction problems. In T.L. Dean & K. McKeown (Eds.), AAAI (pp. 227–233). AAAI Press / The MIT Press.
Garcia de la Banda, M., & Stuckey, P.J. (2007). Dynamic programming to minimize the maximum number of open stacks. INFORMS Journal on Computing, 19(4), 607–617.
Garcia de la Banda, M.J., Harvey, W., Marriott, K., Stuckey, P.J., Demoen, B. (2005). Checking modes of HAL programs. TPLP, 5(6), 623–668.
Gent, I.P., & Smith, B.M. (2000). Symmetry breaking in constraint programming. In W. Horn (Ed.), ECAI (pp. 599–603). IOS Press.
Gent, I.P., & Walsh, T. (1999). CSPLib: a benchmark library for constraints. Technical report, Technical report APES-09-1999-1999. Available from http://www.csplib.org/.
Lau, K.F., & Dill, K.A. (1989). A lattice statistical mechanics model of the conformational and sequence spaces of proteins. Macromolecules, 22(10), 3986–3997.
Law, Y.C., Lee, J.H.M., Walsh, T., Yip, J.Y.K. (2007). Breaking symmetry of interchangeable variables and values. In Principles and Practice of Constraint Programming - CP 2007.
Mancini, T., & Cadoli, M. (2005). Detecting and breaking symmetries by reasoning on problem specifications. In J.-D. Zucker L. Saitta (Eds.), Abstraction, Reformulation and Approximation, 6th International Symposium, SARA 2005, Airth Castle, Scotland, UK, July 26-29, 2005, Proceedings, Lecture Notes in Computer Science (Vol. 3607. pp 165–181). Springer.
Marriott, K., & Stuckey, P.J. (1993). The 3 R’s of optimizing constraint logic programs: refinement, removal and reordering. In M.S. Van Deusen & B. Lang (Eds.), POPL, (pp. 334–344). ACM Press.
Mears, C., Garcia de la Banda, M., Demoen, B., Wallace, M. (2008). Lightweight dynamic symmetry breaking. In Eighth International Workshop on Symmetry in Constraint Satisfaction Problems, SymCon’08.
Mears, C., Garcia de la Banda, M., Wallace, M. (2009). On implementing symmetry detection. Constraints, 14(4), 443–477.
Mears, C., Garcia de la Banda, M., Wallace, M. (2011). Eliciting sub-problem equivalence candidates for CP models. Technical Report 2011/266, Caulfield School of Information Technology, Monash University.
Mears, C., Garcia de la Banda, M., Wallace, M., Demoen, B. (2008). A novel approach for detecting symmetries in CSP models. In L. Perron & M.A. Trick, (Eds.), CPAIOR, Lecture Notes in Computer Science (Vol. 5015, pp. 158–172). Springer.
Mears, C., Niven, T., Jackson, M., Wallace, M. (2011). Proving symmetries by model transformation. In J. Ho-Man Lee, (Ed.), CP, Lecture Notes in Computer Science (Vol. 6876, pp 591–605). Springer.
Nethercote, N., Stuckey, P.J., Becket, R., Brand, S., Duck, G.J., Tack, G. (2007). MiniZinc: towards a standard CP modelling language. In C. Bessiere, (Ed.), CP, Lecture Notes in Computer Science (Vol. 4741, pp. 529–543). Springer.
Puget, J.-F., (2002). Symmetry breaking revisited. In P Van Hentenryck (Ed.), CP, Lecture Notes in Computer Science (Vol. 2470, pp. 446–461). Springer.
Puget, J.-F. (2005). Automatic detection of variable and value symmetries. In P. van Beek (Ed.), Principles and Practice of Constraint Programming - CP 2005, 11th International Conference, CP 2005, Sitges, Spain, October 1-5, 2005, Proceedings, Lecture Notes in Computer Science (Vol. 3709, pp. 475–489). Springer.
Ramachandran, V., Van Hentenryck, P., Cortesi, A. (2000). Abstract domains for reordering CLP(R lin) programs. Journal of Logic Programming, 42(3), 217–256.
Ramani, A., & Markov, I.L. (2004). Automatically exploiting symmetries in constraint programming. In B. Faltings, A. Petcu, F. Fages, F. Rossi (Eds.), CSCLP, Lecture Notes in Computer Science (Vol. 3419, pp. 98–112). Springer.
Roy, P., & Pachet, F. (1998). Using symmetry of global constraints to speed up the resolution of constraint satisfaction problems. In ECAI98 Workshop on Non-binary Constraints (pp. 27–33).
Smith, B.M. (2005). Caching search states in permutation problems. In P van Beek (Ed.), Principles and Practice of Constraint Programming - CP 2005, 11th International Conference, CP 2005, Sitges, Spain, October 1-5, 2005, Proceedings,Lecture Notes in Computer Science (Vol. 3709, pp 637–651). Springer.
Smith-Miles, K. (2008). Cross-disciplinary perspectives on meta-learning for algorithm selection. ACM Computing Surveys, 41(1), 6:1–6:25.
The GAP Group (2006). GAP – Groups, Algorithms, and Programming, Version 4.4.9.
Van Hentenryck, P. (2002). Constraint and integer programming in OPL. INFORMS Journal on Computing, 14(4), 345–372.
Van Hentenryck, P., Flener, P., Pearson, J., Ågren, M. (2005) Compositional derivation of symmetries for constraint satisfaction. In J.-D. Zucker & L. Saitta, (Eds.), Abstraction, Reformulation and Approximation, 6th International Symposium, SARA 2005, Airth Castle, Scotland, UK, July 26-29, 2005, Proceedings, Lecture Notes in Computer Science (Vol. 3607, pp. 234–247). Springer.
Yahav, E. (Ed.) (2011). Static Analysis - 18th International Symposium, SAS 2011, Venice, Italy, September 14-16, 2011. Proceedings, Lecture Notes in Computer Science (Vol. 6887). Springer.
Author information
Authors and Affiliations
Corresponding author
Additional information
This research was partly sponsored by the Australian Research Council through grant DP110102258, and by the Research Foundation Flanders (FWO) through projects WOG: Declarative Methods in Computer Science and G.0221.07.
Rights and permissions
About this article
Cite this article
Mears, C., Garcia de la Banda, M., Wallace, M. et al. A method for detecting symmetries in constraint models and its generalisation. Constraints 20, 235–273 (2015). https://doi.org/10.1007/s10601-014-9175-5
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10601-014-9175-5