symmetry breaking polytopes a framework for symmetry
play

Symmetry Breaking Polytopes: A Framework for Symmetry Handling in - PowerPoint PPT Presentation

Symmetry Breaking Polytopes: A Framework for Symmetry Handling in Binary Programs Christopher Hojny joint work with Marc E. Pfetsch Technische Universitt Darmstadt Department of Mathematics Aussois Combinatorial Optimization Workshop 2018


  1. Symmetry Breaking Polytopes: A Framework for Symmetry Handling in Binary Programs Christopher Hojny joint work with Marc E. Pfetsch Technische Universität Darmstadt Department of Mathematics Aussois Combinatorial Optimization Workshop 2018 Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 1

  2. Symmetry in Binary Programs A symmetry group of a binary program max { w ⊤ x : Ax ≤ b , x ∈ { 0, 1 } n } is a group Γ ≤ S n such that ◮ γ ∈ Γ transforms feasible solutions x to feasible solutions γ ( x ), ◮ γ ( x ) and x have the same objective value for each feasible x . Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 2

  3. Symmetry in Binary Programs A symmetry group of a binary program max { w ⊤ x : Ax ≤ b , x ∈ { 0, 1 } n } is a group Γ ≤ S n such that ◮ γ ∈ Γ transforms feasible solutions x to feasible solutions γ ( x ), ◮ γ ( x ) and x have the same objective value for each feasible x . ? = Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 2

  4. Symmetry in Binary Programs A symmetry group of a binary program max { w ⊤ x : Ax ≤ b , x ∈ { 0, 1 } n } is a group Γ ≤ S n such that ◮ γ ∈ Γ transforms feasible solutions x to feasible solutions γ ( x ), ◮ γ ( x ) and x have the same objective value for each feasible x . 1 shift ? = Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 2

  5. Symmetry in Binary Programs A symmetry group of a binary program max { w ⊤ x : Ax ≤ b , x ∈ { 0, 1 } n } is a group Γ ≤ S n such that ◮ γ ∈ Γ transforms feasible solutions x to feasible solutions γ ( x ), ◮ γ ( x ) and x have the same objective value for each feasible x . 2 shifts ? = Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 2

  6. Symmetry in Binary Programs A symmetry group of a binary program max { w ⊤ x : Ax ≤ b , x ∈ { 0, 1 } n } is a group Γ ≤ S n such that ◮ γ ∈ Γ transforms feasible solutions x to feasible solutions γ ( x ), ◮ γ ( x ) and x have the same objective value for each feasible x . 3 shifts ? = Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 2

  7. Representative Systems Idea ◮ Handle symmetries by computing only solution representatives. But ◮ How can we achieve this? Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 3

  8. Symmetry Handling Techniques Examples: ◮ isomorphism pruning (Margot [2002]) ◮ orbital branching (Ostrowski et al. [2011]) ◮ symmetry handling inequalities (Liberti [2012]) Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 4

  9. Outline Symretopes Symresacks Full Orbitopes Symmetry Handling Exploiting Problem Information Packing and Partitioning Constraints Numerical Results Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 5

  10. Lexicographic Representative Systems Friedman’s approach (Friedman [2007]): ◮ define universal ordering vector: ¯ c = (2 n − 1 , 2 n − 2 , ... , 2, 1) ∈ R n ◮ FD-inequalities: ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ) ◮ Given permutation group Γ : x ∈ { 0, 1 } n fulfills FD-inequalities for all γ ∈ Γ if and only if x is lexicographically maximal in its orbit, see Friedman [2007]. Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 6

  11. Lexicographic Representative Systems Friedman’s approach (Friedman [2007]): ◮ define universal ordering vector: ¯ c = (2 n − 1 , 2 n − 2 , ... , 2, 1) ∈ R n ◮ FD-inequalities: ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ) ◮ Given permutation group Γ : x ∈ { 0, 1 } n fulfills FD-inequalities for all γ ∈ Γ if and only if x is lexicographically maximal in its orbit, see Friedman [2007]. ◮ impractical in applications ◮ very large coefficients ◮ separation routine unknown Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 6

  12. Symretopes Definition Symmetry breaking polytope (symretope) for Γ : S( Γ ) := conv( { x ∈ { 0, 1 } n : ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ), γ ∈ Γ } ). ◮ valid inequalities ⇔ symmetry handling inequalities ◮ facet inequalities are “strongest” symmetry handling inequalities Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 7

  13. Symretopes Definition Symmetry breaking polytope (symretope) for Γ : S( Γ ) := conv( { x ∈ { 0, 1 } n : ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ), γ ∈ Γ } ). ◮ valid inequalities ⇔ symmetry handling inequalities ◮ facet inequalities are “strongest” symmetry handling inequalities Complete linear descriptions? ◮ available for Γ = S n , Γ = A n , and Γ = S n ≀ S m ◮ bad news: NP-hard to optimize over S( Γ ) ◮ goal: Find tractable IP formulations for S( Γ ). Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 7

  14. Symresacks Problem with symretopes: ◮ possibly many defining inequalities, ◮ very complicated in general. A bit simpler: Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 8

  15. Symresacks Problem with symretopes: ◮ possibly many defining inequalities, ◮ very complicated in general. A bit simpler: Definition Symresack for γ ∈ Γ : P γ := conv( { x ∈ { 0, 1 } n : ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ) } ). Origin of name: Complementing binary variables yields a 0/1 knapsack problem: n n (2 n − γ ( i ) − 2 n − i ) x i ≤ 0. � � c ⊤ x ≥ ¯ c ⊤ γ ( x ) ⇔ c i x γ − 1 ( i ) − ¯ c i x i ) ≤ 0 ⇔ ¯ (¯ i =1 i =1 Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 8

  16. Results on Symresacks Theorem, H., Pfetsch [2017] The linear optimization problem over symresacks P γ can be solved in O ( n α ( n )) time, where α is the inverse Ackermann function. Algorithm and proof uses results for “orbisacks” of Kaibel and Loos [2011]. Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 9

  17. Results on Symresacks Theorem, H., Pfetsch [2017] The linear optimization problem over symresacks P γ can be solved in O ( n α ( n )) time, where α is the inverse Ackermann function. Algorithm and proof uses results for “orbisacks” of Kaibel and Loos [2011]. Consequences: ◮ intersecting IP formulation of P γ for all γ ∈ Γ and ◮ separating valid inequalities for P γ yields ◮ IP formulation for S( Γ ). Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 9

  18. Cover Inequalities Still one problem: The coefficients of the defining inequality for P γ can be exponentially large → numerical problems. Possible remedy: Theorem, H., Pfetsch [2017] The separation problem of minimal cover inequalities for P γ can be solved in O ( n α ( n )) time. ◮ IP formulation of P γ with coefficients in { 0, ± 1 } ◮ Corresponding IP formulation for S( Γ ) can be separated in O ( | Γ | n α ( n )) time. Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 10

  19. The Symretope Framework symmetric BP symmetric BP symretopes symretopes symresacks symresacks constr. symresack constr. symretope min. cover. inequ. min. cover. inequ. general pack./part. orbitope facet description facet description facet description facet description IP formulation IP formulation symm. handl. inequ. Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 11

  20. Outline Symretopes Symresacks Full Orbitopes Symmetry Handling Exploiting Problem Information Packing and Partitioning Constraints Numerical Results Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 12

  21. Full Orbitopes Definition Full Orbitope O m , n ( Γ ) for Γ ≤ S n : convex hull of matrices X ∈ { 0, 1 } m × n whose columns are sorted lex. max. w.r.t. permutations from Γ . Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 13

  22. Full Orbitopes Definition Full Orbitope O m , n ( Γ ) for Γ ≤ S n : convex hull of matrices X ∈ { 0, 1 } m × n whose columns are sorted lex. max. w.r.t. permutations from Γ . Examples:       0 0 0 0 0 0 0 0 0 0 0 0  cyclic  symmetric 1 0 1 0 − → 1 0 1 0 − → 1 1 0 0     group group 0 1 1 1 1 1 0 1 1 0 1 1 Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 13

  23. Full Orbitopes Definition Full Orbitope O m , n ( Γ ) for Γ ≤ S n : convex hull of matrices X ∈ { 0, 1 } m × n whose columns are sorted lex. max. w.r.t. permutations from Γ . Examples:       0 0 0 0 0 0 0 0 0 0 0 0  cyclic  symmetric 1 0 1 0 − → 1 0 1 0 − → 1 1 0 0     group group 0 1 1 1 1 1 0 1 1 0 1 1 Applications: ◮ cyclic group: periodic timetabling ◮ symmetric group: graph coloring, assignment problems Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 13

  24. Full Orbitope O m , n ( S n ) – Properties ◮ linear objective can be maximized in O ( m 2 n ) time, Kaibel and Pfetsch [2008] ◮ there exists extended formulation of polynomial size, Kaibel and Loos [2010] ◮ complete linear description ◮ open for n ≥ 3 ◮ available for n = 2 � orbisack O m := O m ,2 ( S 2 ) Aussois 2018 | Christopher Hojny: Symmetry Breaking Polytopes | 14

Recommend


More recommend