Symmetry Definitions for Constraint Satisfaction Problems Dave Cohen, Peter Jeavons, Chris...

Preview:

Citation preview

Symmetry Definitions for Symmetry Definitions for Constraint Satisfaction ProblemsConstraint Satisfaction Problems

Dave Cohen, Peter Jeavons, Chris Jefferson, Karen Petrie and Barbara Smith

CP05 2

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

• xi =j if the queen in row i is 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

Symmetries of 5−queensSymmetries of 5−queens

CP05 4

What property is preserved?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 5

What property is preserved?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 6

Microstructure ComplementMicrostructure 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

w,1

w,0

x,0y,0

z,1

z,0

y,1 x,1

CP05 7

Definition of Constraint SymmetryDefinition 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,0 w,1) (y,0 y,1) (z,0 z,1)• (y,0 z,1) (y,1 z,0)• (w,0 w,1) (y,0 z,0) (y,1 z,1)• identity

• i.e. a bijection on the variable-value pairs that preserves the constraints

w,1

w,0

x,0

y,0

z,1

z,0

y,1

x,1

w,1

w,0

x,0y,0

z,1

z,0

y,1 x,1

CP05 8

Solution Symmetries and Constraint SymmetriesSolution 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 9

The k-ary nogood hypergraph 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 10

Solution Symmetries of 4-queensSolution 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 11

ImplicationsImplications• 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 12

ConclusionsConclusions• 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