Automated Symmetry Breaking and Model Selection in Conjure

Constraint modelling is widely recognised as a key bottleneck in applying constraint solving to a problem of interest. The CONJURE automated constraint modelling system addresses this problem by automatically refining constraint models from problem specifications written in the Essence language. ESSENCE provides familiar mathematical concepts like sets, functions and relations nested to any depth. To date, Conjure has been able to produce a set of alternative model kernels (i.e. without advanced features such as symmetry breaking or implied constraints) for a given specification. The first contribution of this paper is a method by which CONJURE can break symmetry in a model as it is introduced by the modelling process. This works at the problem class level, rather than just individual instances, and does not require an expensive detection step after the model has been formulated. This allows CONJURE to produce a higher quality set of models. A further limitation of CONJURE has been the lack of a mechanism to select among the models it produces. The second contribution of this paper is to present two such mechanisms, allowing effective models to be chosen automatically.

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

[2]  Ian P. Gent,et al.  Minion: A Fast Scalable Constraint Solver , 2006, ECAI.

[3]  Thomas Stützle,et al.  A Racing Algorithm for Configuring Metaheuristics , 2002, GECCO.

[4]  Ian Miguel,et al.  Symmetry in the Generation of Constraint Models ? , 2006 .

[5]  Jean-François Puget,et al.  Constraint Programming Next Challenge: Simplicity of Use , 2004, CP.

[6]  Ian P. Gent,et al.  Common Subexpression Elimination in Automated Constraint Modelling , 2008 .

[7]  Mark Wallace,et al.  Principles and Practice of Constraint Programming – CP 2004 , 2004, Lecture Notes in Computer Science.

[8]  Eugene C. Freuder,et al.  Using Case-Based Reasoning to Write Constraint Programs , 2003, CP.

[9]  Pierre Flener,et al.  Introducing ESRA, a Relational Language for Modelling Combinatorial Problems , 2003, CP.

[10]  Sally C. Brailsford,et al.  The Progressive Party Problem: Integer Linear Programming and Constraint Programming Compared , 1995, CP.

[11]  Tad Hogg,et al.  An Economics Approach to Hard Computational Problems , 1997, Science.

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

[13]  Warwick Harvey Symmetry Breaking and the Social Golfer Problem , 2001 .

[14]  Arnaud Lallouet,et al.  On Learning Constraint Problems , 2010, 2010 22nd IEEE International Conference on Tools with Artificial Intelligence.

[15]  Brahim Hnich,et al.  Extensible Automated Constraint Modelling , 2011, AAAI.

[16]  Andrea Rendl,et al.  Effective compilation of constraint models , 2010 .

[17]  Barry O'Sullivan,et al.  Leveraging the Learning Power of Examples in Automated Constraint Acquisition , 2004, CP.

[18]  Ian Miguel,et al.  Constraints for Breaking More Row and Column Symmetries , 2003, CP.

[19]  Brahim Hnich,et al.  Function Variables for Constraint Programming , 2003 .

[20]  Ian Miguel,et al.  Modelling Equidistant Frequency Permutation Arrays: An Application of Constraints to Mathematics , 2009, CP.

[21]  Warwick Harvey,et al.  Essence: A constraint language for specifying combinatorial problems , 2007, Constraints.

[22]  Helmut Simonis,et al.  A Model Seeker: Extracting Global Constraint Models from Positive Examples , 2012, CP.

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

[24]  Francesca Rossi,et al.  Principles and Practice of Constraint Programming — CP '95 , 1995, Lecture Notes in Computer Science.

[25]  Peter J. Stuckey,et al.  Data Independent Type Reduction for Zinc , 2010 .

[26]  Jean-Daniel Zucker,et al.  Abstraction, Reformulation and Approximation, 6th International Symposium, SARA 2005, Airth Castle, Scotland, UK, July 26-29, 2005, Proceedings , 2005, SARA.

[27]  Brahim Hnich Thesis: Function variables for constraint programming , 2003, AI Commun..

[28]  Joël Quinqueton,et al.  Semi-automatic Modeling by Constraint Acquisition , 2003, CP.

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

[30]  Ian Miguel,et al.  The Rules of Constraint Modelling , 2005, IJCAI.

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

[32]  Peter J. Stuckey,et al.  The Design of the Zinc Modelling Language , 2008, Constraints.

[33]  Bart Selman,et al.  Algorithm portfolios , 2001, Artif. Intell..

[34]  Christian Bessière Principles and Practice of Constraint Programming - CP 2007, 13th International Conference, CP 2007, Providence, RI, USA, September 23-27, 2007, Proceedings , 2007, CP.

[35]  Roberto Rossi,et al.  Synthesizing Filtering Algorithms for Global Chance-Constraints , 2009, CP.

[36]  Barry O'Sullivan,et al.  Acquiring Constraint Networks Using a SAT-based Version Space Algorithm , 2006, AAAI.

[37]  Francesca Rossi,et al.  Principles and Practice of Constraint Programming – CP 2003 , 2003, Lecture Notes in Computer Science.

[38]  Pascal Van Hentenryck The OPL optimization programming language , 1999 .