A method for detecting symmetries in constraint models and its generalisation

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.

[1]  Eugene C. Freuder Eliminating Interchangeable Values in Constraint Satisfaction Problems , 1991, AAAI.

[2]  Christopher Mears,et al.  Proving Symmetries by Model Transformation , 2011, CP.

[3]  François Pachet,et al.  Using Symmetry of Global Constraints to Speed up the Resolution of Constraint Satisfaction Problems , 2002 .

[4]  Peter J. Stuckey,et al.  Checking modes of HAL programs , 2005, Theory Pract. Log. Program..

[5]  Jean-François Puget Symmetry Breaking Revisited , 2002, CP.

[6]  Peter J. Stuckey,et al.  Dynamic Programming to Minimize the Maximum Number of Open Stacks , 2007, INFORMS J. Comput..

[8]  Peter Jeavons,et al.  Symmetry Definitions for Constraint Satisfaction Problems , 2005, CP.

[9]  Static Analysis - 18th International Symposium, SAS 2011, Venice, Italy, September 14-16, 2011. Proceedings , 2011, SAS.

[10]  Toby Walsh,et al.  CSPLIB: A Benchmark Library for Constraints , 1999, CP.

[11]  Bart Demoen,et al.  Lightweight dynamic symmetry breaking , 2014, Constraints.

[12]  Simon Colton,et al.  Automatic Generation of Implied Constraints , 2006, ECAI.

[13]  Belaid Benhamou,et al.  Study of symmetry in Constraint Satisfaction Problems , 1994 .

[14]  Pascal Van Hentenryck Constraint and Integer Programming in OPL , 2002, INFORMS J. Comput..

[15]  Jean-François Puget,et al.  Automatic Detection of Variable and Value Symmetries , 2005, CP.

[16]  María Alpuente Logic-Based Program Synthesis and Transformation - 20th International Symposium, LOPSTR 2010, Hagenberg, Austria, July 23-25, 2010, Revised Selected Papers , 2011, LOPSTR.

[17]  Barbara M. Smith Caching Search States in Permutation Problems , 2005, CP.

[18]  James M. Crawford,et al.  Symmetry-Breaking Predicates for Search Problems , 1996, KR.

[19]  Pascal Van Hentenryck,et al.  Compositional Derivation of Symmetries for Constraint Satisfaction , 2005, SARA.

[20]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.

[21]  Ian P. Gent,et al.  Symmetry Breaking in Constraint Programming , 2000, ECAI.

[22]  Peter J. Stuckey,et al.  MiniZinc: Towards a Standard CP Modelling Language , 2007, CP.

[23]  Igor L. Markov,et al.  Exploiting structure in symmetry detection for CNF , 2004, Proceedings. 41st Design Automation Conference, 2004..

[24]  Pascal Van Hentenryck,et al.  Abstract Domains for Reordering CLP(RLin) Programs , 2000, J. Log. Program..

[25]  K. Dill,et al.  A lattice statistical mechanics model of the conformational and sequence spaces of proteins , 1989 .

[26]  Lorenza Saitta,et al.  Abstraction, Reformulation and Approximation , 2008 .

[27]  Christopher Mears,et al.  On implementing symmetry detection , 2009, Constraints.

[28]  Kate Smith-Miles,et al.  Cross-disciplinary perspectives on meta-learning for algorithm selection , 2009, CSUR.

[29]  Peter J. Stuckey,et al.  The 3 R's of optimizing constraint logic programs: refinement, removal and reordering , 1993, POPL '93.

[30]  Bart Demoen,et al.  A Novel Approach For Detecting Symmetries in CSP Models , 2008, CPAIOR.

[31]  Igor L. Markov,et al.  Automatically Exploiting Symmetries in Constraint Programming , 2004, CSCLP.

[32]  Meinolf Sellmann,et al.  Symmetry Breaking , 2001, CP.

[33]  Toni Mancini,et al.  Detecting and Breaking Symmetries by Reasoning on Problem Specifications , 2005, SARA.

[34]  Toby Walsh,et al.  Breaking Symmetry of Interchangeable Variables and Values , 2007, CP.

[35]  Peter Jeavons,et al.  Symmetry Definitions for Constraint Satisfaction Problems , 2005, Constraints.

[36]  Peter J. Stuckey,et al.  Automatically Exploiting Subproblem Equivalence in Constraint Programming , 2010, CPAIOR.