120 likes | 301 Views
Symmetry Definitions for Constraint Satisfaction Problems. Dave Cohen, Peter Jeavons, Chris Jefferson, Karen Petrie and Barbara Smith. Symmetry . Symmetry in CSPs has been an active research area for several years e.g. SymCon workshops at the CP conferences since 2001
E N D
Symmetry Definitions for Constraint Satisfaction Problems Dave Cohen, Peter Jeavons, Chris Jefferson, Karen Petrie and Barbara Smith
Symmetry • Symmetry in CSPs has been an active research area for several years • e.g. SymCon workshops at the CP conferences since 2001 • But researchers define symmetry in CSPs in different ways • are they defining different things? • A symmetry of a CSP is a transformation of the CSP that leaves some property of the CSP unchanged • what does the symmetry act on? • what property does it leave unchanged? CP05
Symmetries of 5−queens • xi =j if the queen in row iis in column j • Symmetries can act on the variables: • xi =j → x6-i =j • or the values • xi =j → xi =6-j • or both • xi =j → xj =i • To cover all these, we define symmetries as acting on assignments, i.e. variable–value pairs CP05
What property is preserved? • A symmetry of a CSP P is a permutation of the variable-value pairs that preserves the solutions of P • A symmetry of a CSP P is a permutation of the variable-value pairs that preserves the constraints of P • and hence also preserves the solutions of P • These are not equivalent CP05
What property is preserved? • A solution symmetry of a CSP P is a permutation of the variable-value pairs that preserves the solutions of P • A constraint symmetry of a CSP P is a permutation of the variable-value pairs that preserves the constraints of P • and hence also preserves the solutions of P • These are not equivalent CP05
w,1 w,0 z,1 y,1 x,1 z,0 y,0 x,0 Microstructure Complement • A hypergraph with • a vertex for every variable-value pair • an edge for any pair of vertices representing assignments to the same variable • a hyperedge for any set of vertices representing a tuple forbidden by a constraint CP05
w,1 w,0 x,1 y,1 z,1 z,0 y,0 x,0 w,0 w,1 y,0 x,1 z,0 z,1 y,1 x,0 Definition of Constraint Symmetry • An automorphism of a (hyper)graph is a bijection on the vertices that preserves the (hyper)edges • We define a constraint symmetry as an automorphism of the microstructure complement • (w,0w,1) (y,0y,1) (z,0z,1) • (y,0z,1) (y,1z,0) • (w,0w,1) (y,0z,0) (y,1z,1) • identity • i.e. a bijection on the variable-value pairs that preserves the constraints CP05
Solution Symmetries and Constraint Symmetries • The constraint symmetries of a CSP are a subgroup of the solution symmetries • There can be many more solution symmetries than constraint symmetries • e.g. if a CSP has no solution, any permutation of the variable-value pairs is a solution symmetry • 4-queens has two solutions • we can see what permutations of the variable-value pairs will preserve the solutions • any permutation of x1 ,2, x2 ,4, x3 ,1, x4 ,3 is a solution symmetry • .. and many more CP05
The k-ary nogood hypergraph • A k-ary nogood is an assignment to k variables that cannot be extended to a solution • The k-ary nogood hypergraph has the same vertices as the microstructure and a (hyper) edge for every m-ary nogood (m ≤ k) • The solution symmetry group of a k-ary CSP is the automorphism group of the k-ary nogood hypergraph • e.g. in a binary CSP, we need only consider the binary and unary nogoods to find all the solution symmetries CP05
Solution Symmetries of 4-queens • The complement of the binary nogood graph has two cliques, one for each solution • Some automorphisms: • permuting the isolated vertices • permuting either clique independently • There are 46m. solution symmetries • but 8 constraint symmetries CP05
Implications • Finding constraint symmetries automatically is difficult • symmetries depend on how the constraints are expressed • often the microstructure is far too big to construct • more compact representations can be used sometimes • checking a proposed constraint symmetry is easier • don’t need to construct the microstructure • Finding all solution symmetries automatically seems pointless • we need the solutions! • Use nogoods found during search? • add them (& symmetric equivalents) to the microstructure complement • find the new symmetry group • use that during the remaining search CP05
Conclusions • Symmetry in CSPs has been defined in different ways: • preserving the solutions • preserving the constraints (and therefore the solutions) • There can be far more solution symmetries than constraint symmetries • we have shown the relationship between them • To identify symmetries, people often think of transformations that preserve the solutions • …but we think you are identifying constraint symmetry! • Defining symmetry appropriately is crucial if we want to find symmetries automatically THE END CP05