Robust Integer Programming (and more) Shmuel Onn Technion – Israel Institute of Technology Outline 1. Graver bases and integer programming Shmuel Onn Outline 1. Graver bases and integer programming 2. Robust integer programming Shmuel Onn Outline 1. Graver bases and integer programming 2. Robust integer programming 3. Huge multiway tables: P versus NP intersect coNP Shmuel Onn Graver Bases and Integer Programming The Fundamental Theorem Definition: The Graver basis of an integer matrix A is the finite set G(A) of conformal-minimal nonzero integer vectors x satisfying Ax = 0. Shmuel Onn The Fundamental Theorem Definition: The Graver basis of an integer matrix A is the finite set G(A) of conformal-minimal nonzero integer vectors x satisfying Ax = 0. x is conformal-minimal if no other y in same orthant has all |yi| ≤ |xi| Shmuel Onn The Fundamental Theorem Definition: The Graver basis of an integer matrix A is the finite set G(A) of conformal-minimal nonzero integer vectors x satisfying Ax = 0. x is conformal-minimal if no other y in same orthant has all |yi| ≤ |xi| Theorem: separable convex minimization in polytime with G(A): min Zn } {Σ fi(xi) : Ax = b, l ≤ x ≤ u, x in Shmuel Onn The Fundamental Theorem Definition: The Graver basis of an integer matrix A is the finite set G(A) of conformal-minimal nonzero integer vectors x satisfying Ax = 0. x is conformal-minimal if no other y in same orthant has all |yi| ≤ |xi| Theorem: separable convex minimization in polytime with G(A): min Zn } {Σ fi(xi) : Ax = b, l ≤ x ≤ u, x in Reference: A polynomial oracle-time algorithm for convex integer minimization (Hemmecke, Onn, Weismantel) Mathematical Programming, 2011 Shmuel Onn The Fundamental Algorithm To solve min {f(x) : Ax = b, l ≤ x ≤ u, x in Zn } n R with the Graver basis G(A) Do: f R Shmuel Onn The Fundamental Algorithm To solve min {f(x) : Ax = b, l ≤ x ≤ u, x in Zn } n R f with the Graver basis G(A) Do: 1. Find initial point by auxiliary program R Shmuel Onn The Fundamental Algorithm To solve min {f(x) : Ax = b, l ≤ x ≤ u, x in Zn } n R f R with the Graver basis G(A) Do: 1. Find initial point by auxiliary program 2. Iteratively improve by Graver-best steps, Z and z in G(A). that is, by best cz with c in Shmuel Onn The Fundamental Algorithm To solve min {f(x) : Ax = b, l ≤ x ≤ u, x in Zn } n R f R with the Graver basis G(A) Do: 1. Find initial point by auxiliary program 2. Iteratively improve by Graver-best steps, Z and z in G(A). that is, by best cz with c in Using supermodality of f and integer Caratheodory theorem (Cook-Fonlupt-Schrijver, Sebo) we can show polytime convergence to some optimal solution Shmuel Onn Comprehensive development of the theory of Graver bases and integer programming (and more) is in my monograph Available electronically from my homepage (with kind permission of EMS) Robust Integer Programming Robust Integer Programming Player 1 (decision maker) chooses point x feasible in X := {x Zn : Ax = b, l ≤ x ≤ u } Shmuel Onn Robust Integer Programming Player 1 (decision maker) chooses point x feasible in X := {x Zn : Ax = b, l ≤ x ≤ u } Player 2 (nature) reveals cost c in a set of one of two forms: Box: C := {c Zn : d ≤ c ≤ e } List: C := {c1, . . . , ck } Shmuel Onn Robust Integer Programming Player 1 (decision maker) chooses point x feasible in X := {x Zn : Ax = b, l ≤ x ≤ u } Player 2 (nature) reveals cost c in a set of one of two forms: Box: C := {c Zn : d ≤ c ≤ e } List: C := {c1, . . . , ck } The problem is: minx X maxc C cx Shmuel Onn Robust Integer Programming Player 1 (decision maker) chooses point x feasible in X := {x Zn : Ax = b, l ≤ x ≤ u } Player 2 (nature) reveals cost c in a set of one of two forms: Box: C := {c Zn : d ≤ c ≤ e } List: C := {c1, . . . , ck } The problem is: minx X maxc C cx The dual problem is: maxc C minx X cx Shmuel Onn Robust Integer Programming Theorem: The following hold for Robust IP with G(A) given: minx X maxc C cx maxc C minx X cx Box C List C polynomial time NP-hard NP-hard polynomial time Reference: Robust integer programming (Onn) Operations Research Letters, 2014 Shmuel Onn Robust Integer Programming Player 1 chooses point in X := {x Zn : Ax = a, 0 ≤ x ≤ 1 } Shmuel Onn Robust Integer Programming Player 1 chooses point in X := {x Zn : Ax = a, 0 ≤ x ≤ 1 } Player 2 chooses point in Y := {y Zn : By = b, 0 ≤ y ≤ 1 } Shmuel Onn Robust Integer Programming Player 1 chooses point in X := {x Zn : Ax = a, 0 ≤ x ≤ 1 } Player 2 chooses point in Y := {y Zn : By = b, 0 ≤ y ≤ 1 } The cooperative problem is: minx X miny Y xy Shmuel Onn Robust Integer Programming Theorem: The following hold for Cooperative IP: 1. The following is NP-hard even if G(A) and G(B) are given: min {xy : x, y {0,1}n, Ax = a, By = b } Shmuel Onn Robust Integer Programming Theorem: The following hold for Cooperative IP: 1. The following is NP-hard even if G(A) and G(B) are given: min {xy : x, y {0,1}n, Ax = a, By = b } 2. The following is NP-hard even if A=B is totally unimodular: min {xy : x, y {0,1}n, Ax = a, Ay = b } Shmuel Onn Robust Integer Programming Theorem: The following hold for Cooperative IP: 1. The following is NP-hard even if G(A) and G(B) are given: min {xy : x, y {0,1}n, Ax = a, By = b } 2. The following is NP-hard even if A=B is totally unimodular: min {xy : x, y {0,1}n, Ax = a, Ay = b } 3. The following is polynomial time solvable if A is totally unimodular : min {x1x2… xp : xk {0,1}n, Axk = a, k=1,…,p } Shmuel Onn Application: Minimizing Critical Edges We wish to choose p paths from s to t in a digraph G, and then use one of them randomly to make it Robust against an adversary who tries to block us. An edge is critical if used by all paths. We protect at high cost each critical edge against the adversary. So our problem is to choose p paths with minimum number of critical edges. It is Shmuel Onn Application: Minimizing Critical Edges We wish to choose p paths from s to t in a digraph G, and then use one of them randomly to make it Robust against an adversary who tries to block us. An edge is critical if used by all paths. We protect at high cost each critical edge against the adversary. So our problem is to choose p paths with minimum number of critical edges. It is min {x1x2… xp : xk {0,1}n, Axk = a, k=1,…,p } with A the vertex-arc matrix of G and a suitable integer vector. So by our theorem, we can solve this problem in polynomial time. Shmuel Onn Application: Minimizing Critical Edges We wish to choose p paths from s to t in a digraph G, and then use one of them randomly to make it Robust against an adversary who tries to block us. An edge is critical if used by all paths. We protect at high cost each critical edge against the adversary. So our problem is to choose p paths with minimum number of critical edges. It is min {x1x2… xp : xk {0,1}n, Axk = a, k=1,…,p } with A the vertex-arc matrix of G and a suitable integer vector. So by our theorem, we can solve this problem in polynomial time. In fact, we solve a harder problem of lexicographically minimizing the number of edges used by at least k paths for k=p,p-1,…,2,1 Shmuel Onn The Unimodular Intersection Problem Theorem: For c nondecreasing and A totally unimodular, can solve in polynomial time the following nonlinear IP with x the compression of x: min {cx : x {0,1}np, Axk = a, k=1,…,p } Reference: The unimodular intersection problem (Kaibel, Onn, Pauline Sarrabezolles) Arxiv, 2015 Shmuel Onn Huge Multiway Tables Multiway Tables The multiway table problem of Motzkin (1952) concerns minimization over m1 X . . . X mk X mk+1 tables with given margins. 6 3 1 3 2 0 4 0 8 1 5 0 1 0 9 Shmuel Onn Multiway Tables The multiway table problem of Motzkin (1952) concerns minimization over m1 X . . . X mk X mk+1 tables with given margins. 6 3 1 3 2 0 4 0 8 1 5 0 1 0 If all mi fixed then solvable by fixed dimension theory. 9 Shmuel Onn Multiway Tables The multiway table problem of Motzkin (1952) 6 concerns minimization over m1 X . . . X mk X n tables with given margins. 3 n 1 3 2 0 4 0 8 1 5 0 1 0 9 Shmuel Onn Multiway Tables The multiway table problem of Motzkin (1952) 6 concerns minimization over m1 X . . . X mk X n tables with given margins. 3 0 n 4 0 1 5 g If one side n is variable then we have the following: 1 3 2 8 0 1 0 9 Lemma: For fixed m1,. . ., mk there is Graver complexity g:=g(m1,. . ., mk) such that the relevant Graver basis consists of all O(ng) lifts of the relevant Graver basis of m1 X . . . X mk X g tables. Shmuel Onn Multiway Tables The multiway table problem of Motzkin (1952) 6 concerns minimization over 3 m1 X . . . X mk X n tables with given margins. 0 n 4 0 1 5 g If one side n is variable then we have the following: 1 3 2 8 0 1 0 9 Lemma: For fixed m1,. . ., mk there is Graver complexity g:=g(m1,. . ., mk) such that the relevant Graver basis consists of all O(ng) lifts of the relevant Graver basis of m1 X . . . X mk X g tables. g(3,3)=9, g(3,4) = 27, g(3,5) = ? Ω(2m) = g(3,m) = Ο(6m) Shmuel Onn Multiway Tables The multiway table problem of Motzkin (1952) 6 concerns minimization over m1 X . . . X mk X n tables with given margins. 3 1 3 2 0 n 4 0 8 1 5 g 0 1 0 9 Corollary: (Non)-linear optimization over m1 X . . . X mk X n tables with given margins is doable in polynomial time O(ng(m1,…,mk) L) . Shmuel Onn Multiway Tables The multiway table problem of Motzkin (1952) 6 concerns minimization over m1 X . . . X mk X n tables with given margins. 3 n 1 3 2 0 4 0 8 1 5 0 1 0 9 Corollary: (Non)-linear optimization over m1 X . . . X mk X n tables with given margins is doable in polynomial time O(ng(m1,…,mk) L) . Corollary: Robust optimization with Box C over m1 X . . . X mk X n tables with given margins is doable in polynomial time O(ng(m1,…,mk) L) . Shmuel Onn Multiway Tables The multiway table problem of Motzkin (1952) 6 concerns minimization over m1 X . . . X mk X n tables with given margins. 3 n 1 3 2 0 4 0 8 1 5 0 1 0 9 Corollary: (Non)-linear optimization over m1 X . . . X mk X n tables with given margins is doable in polynomial time O(ng(m1,…,mk) L) . However, if two sides are variable then have the Universality Theorem: Every integer program is one over 3 X m X n tables with given line-sums. Shmuel Onn Multiway Tables Theorem: Linear optimization over m1 X . . . X mk X n tables with given margins is doable in fixed-parameter cubic time O(n3 L). Reference: N-fold integer programming in cubic time (Hemmecke, Onn, Lyubov Romanchuk) Mathematical Programming, 2013 Shmuel Onn Huge Multiway Tables Consider the problem of deciding existence of an l X m X n huge table with t given types of row-sums and column-sums having nk layers of each type k with the nk encoded in binary. 6 3 n 1 3 2 0 4 0 8 1 5 0 1 0 9 Shmuel Onn Huge Multiway Tables Consider the problem of deciding existence of an l X m X n huge table with t given types of row-sums and column-sums having nk layers of each type k with the nk encoded in binary. 6 3 n 1 3 2 0 4 0 8 1 5 0 1 0 9 Theorem: 1. For 3-way tables and variable t the problem is in P. Shmuel Onn Huge Multiway Tables Consider the problem of deciding existence of an l X m X n huge table with t given types of row-sums and column-sums having nk layers of each type k with the nk encoded in binary. 6 3 n 1 3 2 0 4 0 8 1 5 0 1 0 9 Theorem: 1. For 3-way tables and variable t the problem is in P. 2. For 4-way tables and fixed t the problem is in P. Shmuel Onn Huge Multiway Tables Consider the problem of deciding existence of an l X m X n huge table with t given types of row-sums and column-sums having nk layers of each type k with the nk encoded in binary. 6 3 n 1 3 2 0 4 0 8 1 5 0 1 0 9 Theorem: 1. For 3-way tables and variable t the problem is in P. 2. For 4-way tables and fixed t the problem is in P. 3. For 4-way tables and variable t it is in NP and coNP. Shmuel Onn Huge Multiway Tables Consider the problem of deciding existence of an l X m X n huge table with t given types of row-sums and column-sums having nk layers of each type k with the nk encoded in binary. 6 3 n 1 3 2 0 4 0 8 1 5 0 1 0 9 Theorem: 1. For 3-way tables and variable t the problem is in P. 2. For 4-way tables and fixed t the problem is in P. 3. For 4-way tables and variable t it is in NP and coNP. Reference: Huge Multiway Table Problems (Onn) Discrete Optimization, 2014 Huge Unimodular N-Fold Programs (Onn, Sarrabezolles) Arxiv, 2015 Shmuel Onn