on integer programming and convolution
play

On Integer Programming and Convolution Klaus Jansen Lars Rohwedder - PowerPoint PPT Presentation

On Integer Programming and Convolution Klaus Jansen Lars Rohwedder Department of Computer Science University of Kiel Berkeley 2020 Integer Linear Programming Standard Form max c T x Ax = b x Z n 0 where A Z m n , b Z m , c


  1. On Integer Programming and Convolution Klaus Jansen Lars Rohwedder Department of Computer Science University of Kiel Berkeley 2020

  2. Integer Linear Programming Standard Form max c T x Ax = b x ∈ Z n ≥ 0 where A ∈ Z m × n , b ∈ Z m , c ∈ Z n . Considered case m (#constraints) is a fixed constant, entries of A are small ( ≤ ∆). Applications Knapsack and scheduling problems, configuration IPs,. . .

  3. Pseudo-polynomial Algorithms Papadimitrou 1981 IP can be solved in time ( m (∆ + � b � ∞ )) O ( m 2 ) . Eisenbrand & Weismantel 2018 IP can be solved in time n · O ( m ∆) 2 m · � b � 2 ∞ .

  4. Pseudo-polynomial Algorithms Papadimitrou 1981 IP can be solved in time ( m (∆ + � b � ∞ )) O ( m 2 ) . Eisenbrand & Weismantel 2018 IP can be solved in time n · O ( m ∆) 2 m · � b � 2 ∞ . This talk IP can be solved in time O ( m ∆) 2 m · log( � b � ∞ ) + O ( nm ).

  5. Pseudo-polynomial Algorithms Papadimitrou 1981 IP can be solved in time ( m (∆ + � b � ∞ )) O ( m 2 ) . Eisenbrand & Weismantel 2018 IP can be solved in time n · O ( m ∆) 2 m · � b � 2 ∞ . This talk IP can be solved in time O ( m ∆) 2 m · log( � b � ∞ ) + O ( nm ). Moreover, for every m and δ > 0 improving the exponent to 2 m − δ is equivalent to finding a truly subquadratic algorithm for (min , +)-convolution.

  6. Other results Feasibility problem Our algorithm: O ( m ∆) m · log(∆) · log(∆ + � b � ∞ ) + O ( nm ). Improving exponent to m − δ would contradict the Strong Exponential Time Hypothesis (SETH). Previous best result (Eisenbrand, Weismantel 2018): n · O ( m ∆) m · � b � ∞ .

  7. Other results Knapsack problems with small weights Running time Previous O (∆ 2 ) O ( nC ) , O ( n ∆ 2 ) Unbounded Knapsack O (∆ log 2 (∆)) Unbounded Subset-Sum O ( C log( C )) (∆ = maximum weight; C = capacity)

  8. Other results Knapsack problems with small weights Running time Previous O (∆ 2 ) O ( nC ) , O ( n ∆ 2 ) Unbounded Knapsack O (∆ log 2 (∆)) Unbounded Subset-Sum O ( C log( C )) (∆ = maximum weight; C = capacity) Scheduling on identical machines P || C max 2 O (1 /ǫ log 4 (1 /ǫ )) + O ( N log N ) Previous EPTAS 2 O (1 /ǫ log 2 (1 /ǫ )) + O ( N ) New EPTAS ( N = number of jobs, M = number of machines with M ≤ N )

  9. Steinitz Lemma Let �·� be a norm in R m and let v (1) , . . . , v ( t ) ∈ R m such that � v ( i ) � ≤ 1 for all i and v (1) + · · · + v ( t ) = 0. Then there exists a permutation π ∈ S t such that for all j ∈ { 1 , . . . , t } j � v ( π ( i )) � ≤ m . � i =1 0 0

  10. Steinitz for IP Consider an optimal solution x ∗ of (IP) and the sequence of column vectors max c T x A 1 , . . . , A 1 , A 2 , . . . , A 2 , . . . Ax = b (IP) � �� � � �� � x ∗ 1 times x ∗ 2 times x ∈ Z n ≥ 0 Recall that � A i � ∞ ≤ ∆.

  11. Steinitz for IP Consider an optimal solution x ∗ of (IP) and the sequence of column vectors max c T x A 1 , . . . , A 1 , A 2 , . . . , A 2 , . . . Ax = b (IP) � �� � � �� � x ∗ 1 times x ∗ 2 times x ∈ Z n ≥ 0 Recall that � A i � ∞ ≤ ∆. b 0

  12. Steinitz for IP Consider an optimal solution x ∗ of (IP) and the sequence of column vectors max c T x A 1 , . . . , A 1 , A 2 , . . . , A 2 , . . . Ax = b (IP) � �� � � �� � x ∗ 1 times x ∗ 2 times x ∈ Z n ≥ 0 Recall that � A i � ∞ ≤ ∆. b b 0 0

  13. Steinitz for IP More formally, Corollary Let v (1) , . . . , v ( t ) denote columns of A with � t i =1 v ( i ) = b . Then there exists a permutation π ∈ S t such that for all j ∈ { 1 , . . . , t } � � j � � � v ( π ( i )) − j · b / t � � ≤ 2 m ∆ . � � � � i =1 ∞ This follows easily from the Steinitz Lemma: Insert vectors v ( i ) − b / t , 2∆ i ∈ { 1 , . . . , t } , in the Steinitz Lemma. Note that � v ( i ) − b / t � ∞ ≤ 1. 2∆

  14. Eisenbrand & Weismantel b ◮ Every 0 − b path gives a feasible solution ◮ Longest path is optimal solution v ◮ O ( m ∆) m · � b � ∞ vertices u ◮ n · O ( m ∆) m · � b � ∞ edges if v − u = A i is column; ◮ Running time: 0 weight c i n · O ( m ∆) 2 m · � b � 2 ∞ Observation: There is an optimal solution of bounded norm, i.e., � x � 1 ≤ O ( m ∆) m · � b � ∞ .

  15. Our Approach Let v (1) + . . . + v ( t ) = b be columns corresponding to an b optimal solution of (IP). b ′ = v (1) + . . . + v ( t / 2) 0

  16. Our Approach Let v (1) + . . . + v ( t ) = b be columns corresponding to an b optimal solution of (IP). b ′ = v (1) + . . . + v ( t / 2) Equivalent: v (1) + . . . + v ( t / 2) is optimal for { max c T x , Ax = b ′ , x ∈ Z n ≥ 0 } and v ( t / 2+1) + . . . + v ( t ) is for { max c T x , Ax = b − b ′ , x ∈ Z n 0 ≥ 0 } .

  17. Our Approach Let v (1) + . . . + v ( t ) = b be columns corresponding to an b optimal solution of (IP). b ′ = v (1) + . . . + v ( t / 2) Equivalent: v (1) + . . . + v ( t / 2) is optimal for 1 2 b { max c T x , Ax = b ′ , x ∈ Z n ≥ 0 } and v ( t / 2+1) + . . . + v ( t ) is for { max c T x , Ax = b − b ′ , x ∈ Z n 0 ≥ 0 } . If ordered via Steinitz Lemma, b ′ and b − b ′ are not far from 1 2 b . Also, t cut in half in subproblems.

  18. Dynamic Program Assume w.l.o.g. there is an optimal solution x with � x � 1 = 2 K , where K ∈ log( O ( m ∆) m · � b � ∞ ) = O ( m log( m ∆) + log( � b � ∞ ))

  19. Dynamic Program Assume w.l.o.g. there is an optimal solution x with � x � 1 = 2 K , where K ∈ log( O ( m ∆) m · � b � ∞ ) = O ( m log( m ∆) + log( � b � ∞ )) Solve for every i = K , K − 1 , . . . , 0 and every b ′ with � � � b ′ − 1 � � 2 i b ≤ 4 m ∆ � � b � ∞ the problem max c T x Ax = b ′ � x � 1 = 2 K − i x ∈ Z n ≥ 0 . 0 Solution for original problem at i = 0 and b ′ = b .

  20. Iterative calculation Let i < K and b ′ with � b ′ − 1 / 2 i · b � ∞ ≤ 4 m ∆. Let v (1) , . . . , v (2 K − i ) correspond to a solution of max { c T x , Ax = b ′ , � x � 1 = 2 K − i , x ∈ Z n ≥ 0 } , ordered via Steinitz Lemma.

  21. Iterative calculation Let i < K and b ′ with � b ′ − 1 / 2 i · b � ∞ ≤ 4 m ∆. Let v (1) , . . . , v (2 K − i ) correspond to a solution of max { c T x , Ax = b ′ , � x � 1 = 2 K − i , x ∈ Z n ≥ 0 } , ordered via Steinitz Lemma. Set b ′′ := v (1) + . . . + v (2 K − i − 1 ) . � � � � � � 1 � b ′′ − 1 1 1 � b ′′ − � � � � � 2 b ′ − � 2 b ′ 2 i +1 b ≤ + 2 i +1 b ≤ 4 m ∆ � � � � � � � � � � ∞ ∞ ∞ � �� � � �� � ≤ 2 m ∆ ≤ 1 / 2 · 4 m ∆ Similarly, � � 1 � � � ( b ′ − b ′′ ) − 2 i +1 b ≤ 4 m ∆ . � � � ∞

  22. Iterative calculation Let i < K and b ′ with � b ′ − 1 / 2 i · b � ∞ ≤ 4 m ∆. Let v (1) , . . . , v (2 K − i ) correspond to a solution of max { c T x , Ax = b ′ , � x � 1 = 2 K − i , x ∈ Z n ≥ 0 } , ordered via Steinitz Lemma. Set b ′′ := v (1) + . . . + v (2 K − i − 1 ) . � � � � � � 1 � b ′′ − 1 1 1 � � b ′′ − � � � � 2 b ′ − � 2 b ′ 2 i +1 b ≤ + 2 i +1 b ≤ 4 m ∆ � � � � � � � � � � ∞ ∞ ∞ � �� � � �� � ≤ 2 m ∆ ≤ 1 / 2 · 4 m ∆ Similarly, � � 1 � � � ( b ′ − b ′′ ) − 2 i +1 b ≤ 4 m ∆ . � � � ∞ Guess b ′′ ( O ( m ∆) m candidates), look up solutions for ( i + 1 , b ′′ ) and ( i + 1 , b ′ − b ′′ ), and take the best.

  23. Merging solutions (max, +)-convolution r 1 , . . . , r i 2 − 1 , r i 2 , r i 2 +1 ,. . . , r i − 1 Input: r 1 , . . . , r N ∈ R , s 1 , . . . , s N ∈ R s 1 , . . . , s i 2 − 1 , s i 2 , s i 2 +1 ,. . . , s i − 1 Output: t 1 , . . . , t N ∈ R with t i = max j [ r j + s i − j ] t i For m = 1, merging solutions directly corresponds to solving (max, +)-convolution of size N = O (∆). For general m , we can cast the problem to an instance of (max, +)-convolution of size N = O ( m ∆) m .

  24. Merging solutions (max, +)-convolution r 1 , . . . , r i 2 − 1 , r i 2 , r i 2 +1 ,. . . , r i − 1 Input: r 1 , . . . , r N ∈ R , s 1 , . . . , s N ∈ R s 1 , . . . , s i 2 − 1 , s i 2 , s i 2 +1 ,. . . , s i − 1 Output: t 1 , . . . , t N ∈ R with t i = max j [ r j + s i − j ] t i For m = 1, merging solutions directly corresponds to solving (max, +)-convolution of size N = O (∆). For general m , we can cast the problem to an instance of (max, +)-convolution of size N = O ( m ∆) m . T ( N ) time algorithm for (min, +)-convolution ⇒ T ( O ( m ∆) m ) · O ( m log( m ∆) + log( � b � ∞ )) + O ( nm ) for IP. With T ( n ) = O ( n 2 / log( n )): O ( m ∆) 2 m · log( � b � ∞ ) + O ( nm ).

  25. Lower bound Theorem If there is an m ∈ N and δ > 0 for which an Algorithm exists that solves IPs with m constraints in time O ( m (∆ + � b � ∞ )) 2 m − δ , then (min ,+)-convolution can be solved in time O ( N 2 − δ ′ ). Theorem (Cygan et al. 2017) 1. There exists a δ > 0 and an O ( N 2 − δ ) time algorithm for (min ,+)-convolution if and only if 2. There exists a δ > 0 and an O ( C 2 − δ ) time algorithm for Unbounded Knapsack .

Recommend


More recommend