Skip to main content
Log in

A method for detecting symmetries in constraint models and its generalisation

  • Published:
Constraints Aims and scope Submit manuscript

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.

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.

Institutional subscriptions

Similar content being viewed by others

References

  1. 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.

  2. 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).

  3. 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.

  4. 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.

  5. 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.

    Article  MATH  MathSciNet  Google Scholar 

  6. Colton, S, & Sorge, V. (2008). Automated parameterisation of finite algebras. In Workshop on Empirical Successful Automated Reasoning in Mathematics.

  7. 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).

  8. 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.

  9. 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.

  10. 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.

  11. 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.

  12. 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.

    Article  MATH  MathSciNet  Google Scholar 

  13. 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.

    MATH  Google Scholar 

  14. Gent, I.P., & Smith, B.M. (2000). Symmetry breaking in constraint programming. In W. Horn (Ed.), ECAI (pp. 599–603). IOS Press.

  15. 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/.

  16. 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.

    Article  Google Scholar 

  17. 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.

  18. 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.

  19. 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.

  20. 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.

  21. Mears, C., Garcia de la Banda, M., Wallace, M. (2009). On implementing symmetry detection. Constraints, 14(4), 443–477.

    Article  MATH  MathSciNet  Google Scholar 

  22. 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.

  23. 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.

  24. 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.

  25. 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.

  26. Puget, J.-F., (2002). Symmetry breaking revisited. In P Van Hentenryck (Ed.), CP, Lecture Notes in Computer Science (Vol. 2470, pp. 446–461). Springer.

  27. 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.

  28. Ramachandran, V., Van Hentenryck, P., Cortesi, A. (2000). Abstract domains for reordering CLP(R lin) programs. Journal of Logic Programming, 42(3), 217–256.

  29. 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.

  30. 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).

  31. 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.

  32. Smith-Miles, K. (2008). Cross-disciplinary perspectives on meta-learning for algorithm selection. ACM Computing Surveys, 41(1), 6:1–6:25.

    Article  Google Scholar 

  33. The GAP Group (2006). GAP – Groups, Algorithms, and Programming, Version 4.4.9.

  34. Van Hentenryck, P. (2002). Constraint and integer programming in OPL. INFORMS Journal on Computing, 14(4), 345–372.

    Article  MATH  MathSciNet  Google Scholar 

  35. 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.

  36. 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.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Christopher Mears.

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

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

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

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10601-014-9175-5

Keywords

Navigation