Polytopes Associated with Symmetry Handling Christopher Hojny joint work with Marc Pfetsch Technische Universität Darmstadt Department of Mathematics 20th Combinatorial Optimization Workshop, Aussois 2016 Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 1
Motivation ◮ Consider a necklace with n black (0) and white (1) beads. ◮ Associate with a necklace a vector in { 0, 1 } n . ◮ necklaces x , x ′ ∈ { 0, 1 } n are “equal” ⇔ ∃ cyclic shift γ such that γ ( x ) = x ′ . ? = Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 2
Motivation ◮ Consider a necklace with n black (0) and white (1) beads. ◮ Associate with a necklace a vector in { 0, 1 } n . ◮ necklaces x , x ′ ∈ { 0, 1 } n are “equal” ⇔ ∃ cyclic shift γ such that γ ( x ) = x ′ . 1 shift ? = Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 2
Motivation ◮ Consider a necklace with n black (0) and white (1) beads. ◮ Associate with a necklace a vector in { 0, 1 } n . ◮ necklaces x , x ′ ∈ { 0, 1 } n are “equal” ⇔ ∃ cyclic shift γ such that γ ( x ) = x ′ . 2 shifts ? = Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 2
Motivation ◮ Consider a necklace with n black (0) and white (1) beads. ◮ Associate with a necklace a vector in { 0, 1 } n . ◮ necklaces x , x ′ ∈ { 0, 1 } n are “equal” ⇔ ∃ cyclic shift γ such that γ ( x ) = x ′ . 3 shifts ? = Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 2
Motivation ◮ Consider a necklace with n black (0) and white (1) beads. ◮ Associate with a necklace a vector in { 0, 1 } n . ◮ necklaces x , x ′ ∈ { 0, 1 } n are “equal” ⇔ ∃ cyclic shift γ such that γ ( x ) = x ′ . 3 shifts ? = Question: How can we characterize (the convex hull of) a representative system of “distinct” necklaces? Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 2
Representative Systems Generalized Problem What can be said about { x ∈ { 0, 1 } n : x is orbit representative } � � conv if Γ ≤ S n acts on { 0, 1 } n ? Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 3
Lexicographic Representative Systems Friedman’s approach [Friedman, 2007]: c = (2 n − 1 , 2 n − 2 , ... , 2, 1) ⊤ ∈ R n ◮ define ¯ ◮ Friedman inequality for γ ∈ Γ : c ⊤ x ≥ ¯ c ⊤ γ ( x ) ¯ (2 n − γ ( i ) − 2 n − i ) x i ≤ 0 � ⇔ i ∈ [ n ] ◮ x ∈ { 0, 1 } n with ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ) ∀ γ ∈ Γ are lexicographically maximal in their Γ -orbit. Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 4
Application in Binary Programs ◮ Let Γ ≤ S n be a symmetry group of a binary program, i.e., ◮ γ ∈ Γ transforms feasible solutions x to feasible solutions γ ( x ), ◮ γ ( x ) and x have the same objective value for each feasible x . ◮ Add Friedman’s inequalities for each γ ∈ Γ . ◮ Restricted binary program contains only solutions which are lexicographically maximal w.r.t. Γ . Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 5
Application in Binary Programs ◮ Let Γ ≤ S n be a symmetry group of a binary program, i.e., ◮ γ ∈ Γ transforms feasible solutions x to feasible solutions γ ( x ), ◮ γ ( x ) and x have the same objective value for each feasible x . ◮ Add Friedman’s inequalities for each γ ∈ Γ . ◮ Restricted binary program contains only solutions which are lexicographically maximal w.r.t. Γ . But: ◮ Coefficients of Friedman inequalities are exponentially large. ◮ If Γ is large, many inequalities have to be added. Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 5
Further Symmetry Handling Techniques Examples: ◮ isomorphism pruning [Margot, 2002] ◮ orbital branching [Ostrowski et al., 2011] ◮ symmetry breaking inequalities [Liberti, 2012] Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 6
Outline Symmetry Breaking Polytopes Optimization Complexity over Symresacks Separation of Minimal Cover Inequalities for Symresacks Relaxed Symretopes Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 7
Symmetry Breaking Polytopes Definition The symmetry breaking polytope (symretope) for Γ ≤ S n is { x ∈ { 0, 1 } n : ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ) ∀ γ ∈ Γ } � � S( Γ ) := conv . A relaxed symretope for Γ is any polytope S with � S ∩ { 0, 1 } n � conv = S( Γ ). Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 8
Symmetry Breaking Polytopes Definition The symmetry breaking polytope (symretope) for Γ ≤ S n is { x ∈ { 0, 1 } n : ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ) ∀ γ ∈ Γ } � � S( Γ ) := conv . A relaxed symretope for Γ is any polytope S with � S ∩ { 0, 1 } n � conv = S( Γ ). Proposition (cf. [Babai and Luks, 1983]) The linear optimization problem over S( Γ ) is NP-hard. Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 8
Symmetry Breaking Polytopes Definition The symmetry breaking polytope (symretope) for Γ ≤ S n is { x ∈ { 0, 1 } n : ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ) ∀ γ ∈ Γ } � � S( Γ ) := conv . A relaxed symretope for Γ is any polytope S with � S ∩ { 0, 1 } n � conv = S( Γ ). Questions: ◮ Can we find a complete linear description of S( Γ )? ◮ Can we find tractable IP-formulations for S( Γ ) via relaxed symretopes? ◮ Are all Friedman inequalities necessary for a relaxed symretope? Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 8
Symresacks Special case: only one permutation, knapsack polytope Definition The symresack for a permutation γ ∈ S n is { x ∈ { 0, 1 } n : ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ) } � � P γ := conv { x ∈ { 0, 1 } n : x � γ ( x ) } � � = conv . Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 9
Symresacks Special case: only one permutation, knapsack polytope Definition The symresack for a permutation γ ∈ S n is { x ∈ { 0, 1 } n : ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ) } � � P γ := conv { x ∈ { 0, 1 } n : x � γ ( x ) } � � = conv . Examples: ◮ γ = (1, 2) ∈ S n : { x ∈ { 0, 1 } n : x 1 ≥ x 2 } � � P γ = conv Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 9
Symresacks Special case: only one permutation, knapsack polytope Definition The symresack for a permutation γ ∈ S n is { x ∈ { 0, 1 } n : ¯ c ⊤ x ≥ ¯ c ⊤ γ ( x ) } � � P γ := conv { x ∈ { 0, 1 } n : x � γ ( x ) } � � = conv . Examples: ◮ γ = (1, 2) ∈ S n : { x ∈ { 0, 1 } n : x 1 ≥ x 2 } � � P γ = conv ◮ γ = (1, 2)(3, 4) ... (2 n − 1, 2 n ) ∈ S 2 n : { x ∈ { 0, 1 } 2 n : ( x 1 , x 3 , ... , x 2 n − 1 ) � ( x 2 , x 4 , ... , x 2 n ) } � � P γ = conv This is the orbisack O n , see [Kaibel and Loos, 2011]. Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 9
Orbisacks Orbisack { X = ( X 1 , X 2 ) ∈ { 0, 1 } n × 2 : X 1 � X 2 } � � O n := conv Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 10
Orbisacks Orbisack { X = ( X 1 , X 2 ) ∈ { 0, 1 } n × 2 : X 1 � X 2 } � � O n := conv Properties of vertices of O n : ◮ either all rows are constant 1 1 0 0 1 1 1 1 0 0 Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 10
Orbisacks Orbisack { X = ( X 1 , X 2 ) ∈ { 0, 1 } n × 2 : X 1 � X 2 } � � O n := conv Properties of vertices of O n : ◮ either all rows are constant 1 1 ◮ or the first non-constant row c 0 0 is (1, 0), c is called critical row 1 0 0 1 0 0 Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 10
Orbisacks and Symresacks Orbisackoidal Symresack { X = ( X 1 , X 2 ) ∈ { 0, 1 } n × 2 : X 1 � X 2 , X 2 = γ ( X 1 ) } � � Q γ := conv Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 11
Orbisacks and Symresacks Orbisackoidal Symresack { X = ( X 1 , X 2 ) ∈ { 0, 1 } n × 2 : X 1 � X 2 , X 2 = γ ( X 1 ) } � � Q γ := conv Lemma P γ and Q γ are linearly equivalent. Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 11
Optimization over Q γ and P γ Theorem The linear optimization problem max { W ⊤ X : X ∈ Q γ } , W ∈ R n × 2 , can be solved in time O ( n 2 ) for any γ ∈ S n . Proof idea: ◮ each vertex of Q γ is a vertex of O n ◮ fix a critical row c ∈ [ n + 1] ◮ find a maximizer in Q γ with critical row c in time O ( n ) ◮ iterate over all possible critical rows Aussois 2016 | Christopher Hojny: Polytopes Associated with Symmetry Handling | 12
Recommend
More recommend