Forbidden Vertices
Total Page:16
File Type:pdf, Size:1020Kb
Forbidden vertices Gustavo Angulo*, Shabbir Ahmed*, Santanu S. Dey*, Volker Kaibel† September 8, 2013 Abstract In this work, we introduce and study the forbidden-vertices problem. Given a polytope P and a subset X of its vertices, we study the complexity of linear optimization over the subset of vertices of P that are not contained in X. This problem is closely related to finding the k-best basic solutions to a linear problem. We show that the complexity of the problem changes significantly depending on the encoding of both P and X. We provide additional tractability results and extended formula- tions when P has binary vertices only. Some applications and extensions to integral polytopes are discussed. 1 Introduction Given a nonempty rational polytope P ⊆ Rn, we denote by vert(P ), faces(P ), and facets(P ) the sets of vertices, faces, and facets of P , respectively, and we write f(P ) := jfacets(P )j. We also denote by xc(P ) the extension complexity of P , that is, the minimum number of inequalities in any linear extended formulation of P , i.e., a description of a polyhedron whose image under a linear map is P . Finally, given a set X ⊆ vert(P ), we define forb(P; X) := conv(vert(P )nX), where conv(S) denotes the convex hull of S ⊆ Rn. This work is devoted to understanding the complexity of the forbidden-vertices problem defined below. Definition 1. Given a polytope P ⊆ Rn, a set X ⊆ vert(P ), and a vector c 2 Rn, the forbidden-vertices problem is to either assert vert(P ) n X = ?, or to return a minimizer of c>x over vert(P ) n X otherwise. Our work is motivated by enumerative schemes for stochastic integer programs [8], where a series of potential solutions are evaluated and discarded from the search space. As we will see later, the problem is also related to finding different basic solutions to a linear program. To address the complexity of the forbidden-vertices problem, it is crucial to distinguish between differ- ent encodings of a polytope. Definition 2. An explicit description of a polytope P ⊆ Rn is a system Ax ≤ b defining P . An implicit description of P is a separation oracle which, given a rational vector x 2 Rn, either asserts x 2 P , or returns a valid inequality for P that is violated by x. ∗Georgia Institute of Technology: [email protected], [email protected], [email protected] yOtto-von-Guericke-Universitat¨ Magdeburg: [email protected] 1 Note that an extended formulation for P is a particular case of an implicit description. When P admits a separation oracle that runs in time bounded polynomially in the facet complexity of P and the encoding size of the point to separate, we say that P is tractable. We refer the reader to [15, Section 14] for a deeper treatment of the complexity of linear programming. We also distinguish different encondings of a set of vertices. Definition 3. An explicit description of X ⊆ vert(P ) is the list of the elements in X. If X = vert(F ) for some face F of P , then an implicit description of X is an encoding of P and some valid inequality for P defining F . Below we summarize our main contributions. • In Section 2, we show that the complexity of optimizing over vert(P )nX or describing forb(P; X) changes significantly depending on the encoding of P and/or X. In most situations, however, the problem is hard. • In Section 3 we consider the case of removing a list X of binary vectors from a 0-1 polytope P . When P is the unit hypercube, we present two compact extended formulations describing forb([0; 1]n;X). We further extend this result and show that the forbidden-vertices problem is polynomially solvable for tractable 0-1 polytopes. • Then in Section 4 we apply our results to the k-best problem and to binary all-different polytopes, showing the tractability of both. Finally, in Section 5, we also provide extensions to integral polytopes. The complexity results of Sections 2 and 3 lead to the following classification, depending on the en- conding of P and X, and whether P has 0-1 vertices only or not. P General 0-1 Explicit Implicit Explicit Implicit NP-hard Explicit NP-hard for jXj = 1 Polynomial Polynomial Polynomial for fixed jXj X Implicit NP-hard NP-hard - NP-hard In constructing linear extended formulations, disjunctive programming emerges as a practical power- ful tool. The lemma below follows directly from [2] and the definition of extension complexity. We will frequently refer to it. n n mi Lemma 4. Let P1;:::;Pk be polytopes in R . If Pi = fx 2 R j 9yi 2 R : Eix + Fiyi = hi; yi ≥ 0g, then k n n mi k Pk Pk conv([i=1Pi) = fx 2 R j 9xi 2 R ; yi 2 R ; λ 2 R : x = i=1 xi;Eixi + Fiyi = λihi; i=1 λi = k Pk 1; yi ≥ 0; λ ≥ 0g. In particular, we have xc conv([i=1Pi) ≤ i=1(xc(Pi) + 1). 2 General polytopes We begin with some general results when P ⊆ Rn is an arbitrary polytope. The first question is how complicated forb(P; X) is with respect to P . 2 n Proposition 5. For each n, there exists a polytope Pn ⊆ R and a vertex vn 2 vert(Pn) such that Pn has 2n+1 2 n vertices and n + 1 facets, while forb(Pn; fvng) has 2 facets. n n > 3 Proof. Let Qn := [0; 1] \ L, where L := x 2 R j 1 x ≤ 2 and 1 is the vector of ones. It has been 2 0 1 observed [1] that Qn has 2n + 1 facets and n + 1 vertices. We translate Qn and define Qn := Qn − n 1 = 1 1 n 0 0 n > 1 0 − n ; 1 − n \ L , where L := x 2 R j 1 x ≤ 2 . Since Qn is a full-dimensional polytope having 0 the origin in its interior, there is a one-to-one correspondence between the facets of Qn and the vertices 0 ∗ 2 of its polar Pn := (Qn) and vice versa. In particular, Pn has n + 1 facets and 2n + 1 vertices. Let 0 0 v 2 vert(Pn) be the vertex associated with the facet of Qn defined by L . From polarity, we have ∗ 1 1 n ∗ forb(Pn; fvg) = − n ; 1 − n . Thus forb(Pn; fvg) is a full-dimensional polytope with the origin in n n its interior and 2 vertices. By polarity, we obtain that forb(Pn; fvg) has 2 facets. Note that the above result only states that forb(P; X) may need exponentially many inequalities to be described, which does not constitute a proof of hardness. Such a result is provided by Theorem 11 at the end of this section. We first show that forb(P; X) has an extended formulation of polynomial size in f(P ) when both P and X are given explicitly and the cardinality of X is fixed. Proposition 6. Suppose P = fx 2 Rnj Ax ≤ bg. Using this description of P , and an explicit list of vertices X, we can construct an extended formulation of forb(P; X) that requires at most f(P )jXj+1 inequalities, i.e., xc(forb(P; X)) ≤ f(P )jXj+1. Proof. Let X = fv1; : : : ; vjXjg and define FX := fF1 \···\FjXjj Fi 2 facets(P ); vi 2= Fi; i = 1;:::; jXjg. We claim forb(P; X) = conv ([F 2FX F ) : Indeed, let w 2 vert(P ) n X. For each i = 1;:::; jXj, there exists Fi 2 facets(P ) such that w 2 Fi and vi 2= Fi. Therefore, letting F := F1 \···\ FjXj, we have F 2 FX and w 2 F , proving the forward inclusion. For the reverse inclusion, consider F 2 FX . By definition, F is a face of P that does not intersect X, and hence F ⊆ forb(P; X). ( (P; X)) ≤ P ( (F ) + 1) (F ) ≤ f(F ) ≤ f(P ) − 1 By Lemma 4, we have xc forb F 2FX xc . Since xc for each jXj proper face F of P and jFX j ≤ f(P ) , the result follows. Note that when X = fvg, the above result reduces forb(P; fvg) to the convex hull of the union of the facets of P that are not incident to v, which is a more intuitive result. Actually, we can expect describing forb(P; X) to be easier when the vertices in X are “far” thus can be removed “independently”, and more complicated when they are “close”. Proposition 6 can be refined as follows. The graph of a polytope P , or the 1-skeleton of P , is a graph G with vertex set vert(P ) such that two vertices are adjacent in G if and only if they are adjacent in P . Proposition 7. Let G be the graph of P . Let X ⊆ vert(P ) and let (X1;:::;Xm) be a partition of X such that Xi and Xj are independent in G, i.e., there is no edge connecting Xi to Xj, for all 1 ≤ i < j ≤ m. Then m \ forb(P; X) = forb(P; Xi): i=1 Tm Proof. We only need to show forb(P; X) ⊇ i=1 forb(P; Xi). For this, it is enough to show that for each > > Tm c we have maxfc x : x 2 forb(P; X)g ≥ max c x : x 2 i=1 forb(P; Xi) . Given c, let v be an optimal solution to the maximization problem in the right-hand side, and let W ⊆ vert(P ) be the set of vertices 3 w of P such that c>w ≥ c>v.