1 / 19

Presented by: Shant Karakashian Symmetries in CP, Sprint 2010

Tractable Symmetry Breaking Using Restricted Search Trees Colva M. Roney-Dougal , Ian P. Gent, Tom Kelsey, Steve Linton. Presented by: Shant Karakashian Symmetries in CP, Sprint 2010. Outline. Symmetry breaking approaches Group equivalence tree (GE-tree) Importance of GE-trees

mireya
Download Presentation

Presented by: Shant Karakashian Symmetries in CP, Sprint 2010

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tractable Symmetry Breaking Using Restricted Search TreesColva M. Roney-Dougal, Ian P. Gent, Tom Kelsey, Steve Linton Presented by: ShantKarakashian Symmetries in CP, Sprint 2010

  2. Outline • Symmetry breaking approaches • Group equivalence tree (GE-tree) • Importance of GE-trees • Definitions: • Definition of the tree • Stabilizer and orbit • Value symmetry • Constructing GE-tree for value symmetry • Example problem: • GE-Tree construction • Properties of the constructed tree • GE-trees with: • Global value symmetries • Search • Other symmetries • Experiments • Conclusion

  3. Symmetry Breaking Approaches • Different approaches taken for symmetry breaking: • Adding symmetry breaking constraints before search • Using constraints generated dynamically during search • Checking for duplicate nodes before visiting them • Use of techniques from computational group theory

  4. Group Equivalence Tree (GE-Tree) • Given a CSP with symmetry group G, GE-tree is a search tree satisfying: • No node is isomorphic under G to any other node • Given a full assignment A there is at least one leaf of the tree in AG • A GE-tree is minimal if the deletion of any node (and its descendants) will delete at least one full assignment

  5. Importance of GE-Trees • Any search tree contains a GE-tree • Helpful to analyze the efficacy of a symmetry breaking technique by comparing the search tree to the corresponding minimal GE-tree • Possible to construct GE-trees for many types of symmetries: variable symmetry, value symmetry, etc. • This article discusses value symmetry

  6. Definition of the Tree • For a given tree: • Nodes are labeled with variables • Edges are labeled with variable values • The state of a node N is the partial assignment given by the labels on the path from the root to N

  7. Stabilizer and Orbit • The stabilizer of a literal (X=a) is the set of all symmetries in G that map (X=a) to itself • The orbit of literal (X=a): • Denoted (X=a)G • Is the set of all literals that can be reached from (X=a) by a symmetry in G

  8. Value Symmetry • Value Symmetry is any permutation g where: • If (A1 = a)g = (A2 = b) • Then A1 = A2 • The definition also allows the existence of symmetries g as: (A1 = a)g = (A1 = b), (A2 = a)g = (A2 = c)

  9. Constructing GE-Tree for Value Symmetries • Given a node N: • State of N: Λ1≤i≤k(Ai = ai) • Let G(1≤i≤k) be the subgroup of G that stabilizes each of {ai : 1 ≤ i ≤ k} • Select variable Ak+1 (can be different for the same level thus supports dynamic variable ordering) • Label N with Ak+1 • Compute orbits: • {Oj : 1 ≤ j ≤ ok+1} of G(1≤i≤k) on Dk+1 • Select a representative bj for each orbit Oj • Create an edge from N labeled with bj

  10. Example Problem • Consider a 3x3 board with 3 pieces. • Each piece is placed in a row • The ithpiece placed on the second column is: • pi = 2 • A solution to the problem is when all the pieces are on the same column • The problem has the value symmetry group G • The generator for G is: , • G= {a, b, c, d, e} • a = b= c= d = e=

  11. GE-Tree construction for the Example with Value Symmetries • a = b = c = d = e = • Orbits of {a, b, c, d, e} on Dp1 = {{1, 2, 3}} • Choose representative {1} • Label of 2nd node: (p1=1) • Stabilizer = {a} • Orbits of {a} on Dp2 = {{1}, {2, 3}} • Choose representative {1, 2} • Label of 3rd node: (p1=1, p2=1) • Stabilizer = {a} p1 p2 p3 p4 1 1 2 1 2 3 1 2

  12. Properties of the Constructed Tree • The constructed tree is a GE-tree • The constructed GE-tree is minimal • Complexity of the construction algorithm: • The group is acting on a set of size N=∑i=1:n |Di| • Need to find the generator for G of size t • Deterministic algorithm: O~(N4+tN2) • O~(x) = O(xlogcx), c a constant • Computing the orbits of G on D is O(t|D|) • Assume O(t) < O(N) • Total cost at each node is no more than O~(N4) 1212

  13. Global Value Symmetries • A group consists of global value symmetries if: • For all variables X, Y, values a, b and symmetries g: • If (X = a)g = (X = b) • Then (Y = a)g = (Y = b) • The construction produces minimal GE-trees • For the complexity of the construction: • Same as before but with N = |Ui=1:nDi| • Instead of N=∑i=1:n |Di|

  14. GE-Trees and Search • Consider the partial assignment at N and GN the stabilizer of N • Let a and b be values in the domain of variable X • Let O be the orbit of a under GN • If there exists b in the orbit O such that b is deleted from the domain of A • Then there are no solutions extending N ^ (X = a) • Such values (a) are not extended during dynamic construction of GE-tree for value symmetries • GE-tree compared to SBDS and SBDD: • SBDS constructs a GE-tree using all symmetries of the group • SBDD constructs a GE-tree if the dominance check is applied at every node

  15. GE-Trees & Other Symmetries • Let T be a GE-tree constructed for the subgroup H of value symmetries of the symmetry group G • If SBDS or SBDD is performed while searching T • Then exactly one of each equivalence class of solutions will be found • If a GE-tree is constructed for the group of value symmetries • Then it is safe to use SBDD or SBDS to break all other symmetries • The combined approach has lower complexity because the GE-tree construction as described for value symmetries has a polynomial complexity while SBDD and SBDS have exponential complexities

  16. Experiments • Experiments conducted using the ECLiPSe CSP system • The partial assignment and the current variable domain are passed to GAP: • GAP returns a domain containing only symmetrically distinct values • Coloring non-symmetric graphs: • GE-tree compared to SBDD • 7-coloring of a 12-vertex graph: • 50.1 sec with SBDD • 8.87 sec with GE-tree

  17. Experiments (contd.) • A most perfect magic square of size n x n • A solution is one of 2n+1((n/2)!)2 symmetric equivalents • Remodeled the problem to convert variable symmetries to value symmetries

  18. Conclusion • This work presented a new conceptual abstraction: • A search tree containing a unique representation of each class of a full assignments • Polynomial time algorithm to construct the tree in case of value symmetries

  19. Thank you!

More Related