Disjunctive Programming
Total Page:16
File Type:pdf, Size:1020Kb
Chapter 10 Disjunctive Programming Egon Balas Introduction by Egon Balas In April 1967 I and my family arrived into the US as fresh immigrants from be- hind the Iron Curtain. After a fruitful semester spent with George Dantzig’s group in Stanford, I started working at CMU. My debut in integer programming and entry ticket into Academia was the additive algorithm for 0-1 programming [B65], an im- plicit enumeration procedure based on logical tests akin to what today goes under the name of constraint propagation. As it used only additions and comparisons, it was easy to implement and was highly popular for a while. However, I was aware of its limitations and soon after I joined CMU I started investigating cutting plane procedures, trying to use for this purpose the tools of convex analysis: support func- tions and their level sets, maximal convex extensions, polarity, etc. During the five years starting in 1969, I proposed a number of procedures based on the central idea of intersection cuts [2] (numbered references are to those at the end of the paper, whereas mnemonicized ones are to the ones listed at the end of this introduction): Given any convex set S containing the LP optimum of a mixed integer program (MIP) but containing no feasible integer point in its interior, one can generate a valid cut by intersecting the boundary of S with the extreme rays of the cone defined by the optimal solution to the linear programming relaxation of the MIP and tak- ing the hyperplane defined by the intersection points as the cut. The search for the most appropriate sets S in this role has led to the concept of outer polars and related constructs [3, 6]. In our days, the idea of intersection cuts has been revived in the form of cutting planes from convex sets with lattice-free interiors, and is the object of numerous investigations (e.g., [ALWW07], [BC07], [CM07], [DW07]). It was this line of research that has led to the idea of disjunctive programming, through a process outlined in section 1 of the paper below. Optimizing a function Egon Balas Carnegie Mellon University, Pittsburgh, USA e-mail: [email protected] M. Jünger et al. (eds.), 50 Years of Integer Programming 1958-2008, 283 DOI 10.1007/978-3-540-68279-0_10, © Springer-Verlag Berlin Heidelberg 2010 284 Egon Balas subject to a set of linear inequalities connected by conjunction or disjunction is a special type of nonconvex programming problem called disjunctive programming. Mixed 0-1 programming is its most important special case. More broadly speak- ing, disjunctive programming is optimization over a union of polyhedra. The basic document on disjunctive programming is the July 1974 technical report “Disjunc- tive Programming: Properties of the convex hull of feasible points,” MSRR #348, referenced as [10] in the survey below, which however has not appeared in print until 24 years later, when it was published as an invited paper with a preface by Gerard´ Cornuejols´ and Bill Pulleyblank [B98]. The reasons for this situation are complex. The 1974 paper was not rejected, but the report I received at the end of a very long refereeing process was asking for a revision that would have involved a major rewriting effort at a time when I was engaged in other, complementary re- search projects. As a result, when shortly thereafter I was invited by the late Peter Hammer to prepare an introductory survey of disjunctive programming for the up- coming 1977 ARIDAM conference in Vancouver, I decided to incorporate into that survey the main results of MSSR #348 and forego its publication as a stand alone paper. This is how this survey came about. Looking back on that decision, I find that not much of substance was lost. Sec- tions 2–6 of this survey adequately summarize the main findings of the 1974 pa- per, with one important exception, which I will now explain. MSRR #348 explored the basic properties of disjunctive programs from a polyhedral point of view. It gave two compact characterizations of the convex hull of a union P of polyhe- i i dra Pi = x : A x b , i Q, in a higher dimensional space, a procedure we call today extended{ formulation.≥ } ∈ The first one describes convP as the set of points x i i i i i i i satisfying x = ∑(x : i Q) for some (x ,x0), i Q, such that A x b x0,i Q, i i ∈ ∈ ≥ ∈ ∑(x0 : i Q) = 1, x0 0,i Q. The second one describes the facets of convP as the vertices∈ of the reverse≥ ∈ polar of P, defined as P# := y : yx 1 x P , shown to be the set of points y satisfying y uiAi,i Q for{ some u≥i 0 such∀ ∈ that} uibi 1, i Q. Both characterizations are linear≥ in Q∈ , the number of≥ polyhedra in the union.≥ ∈ In a certain sense the two characterizations| | are equivalent: projecting the higher-dimensional polyhedron of the convex hull characterization onto the x-space yields the set of all valid inequalities and conversely, taking the reverse polar of the reverse polar yields the convex hull. Thus in the survey paper I only included the second characterization, so that the first one did not appear in print until 1985 [B85]. But it is precisely this first characterization which has served as a prototype for the many extended formulations that have proved to be such prolific tools for polyhedral analysis of combinatorial problems, starting with the early studies of this type in the 1980’s [BP83], [BP89], [BLP89], and continuing with a plethora of results, the more recent ones being exemplified by [PW06], [A06], [CW08]. It is also this first char- acterization that was generalized to nonlinear disjunctive programming [SM99] and was extensively used in the modeling of a variety of practical situations in industry. Habent sua fata libelli, goes the Latin saying: books have their own fate. This apparently also applies to papers or theorems or discoveries. While the work on disjunctive programming, including the cutting planes that it entailed, stirred little if any enthusiasm at the time of its inception, about 15 years later when Sebas- 10 Disjunctive Programming 285 tian Ceria, Gerard´ Cornuejols´ and myself recast essentially the same results in a new framework which we called lift-and-project [BCC93], the reaction was quite different. This time our work was focused on algorithmic aspects, with the cutting planes generated in rounds and embedded into an enumerative framework (branch and cut), and was accompanied by the development of an efficient computer code (MIPO, developed by Sebastian) that was able to solve many problem instances that had been impervious to solution by branch-and-bound alone. Our interest in return- ing to the ideas of disjunctive programming was prompted by the exciting work of Lovasz´ and Schrijver on matrix cones [LS91]. We discovered that a streamlined version of the Lovasz-Schrijver´ procedure was isomorphic to the disjunctive pro- gramming procedure for generating the integer hull of a 0-1 program by starting with the higher dimensional representation and projecting it onto the original space. Thus the Lovasz-Schrijver´ Theorem according to which n applications of this pro- cedure (n being the number of 0-1 variables) yields the integer hull, follows directly from the sequential convexification procedure for facial disjunctive programs, of which 0-1 programs are a prime example (see Section 6 below). The reader will no doubt recognize in the linear program P1∗(g,α0) preceding Theorem 4.4 of section 4 below, the ancestor of the cut generating linear program of the lift-and-project (L&P) algorithm [BCC93], which is the specialization of P1∗(g,α0) to the case of the disjunction xk = 0 or xk = 1. The computational success of L&P cuts triggered a strong revival of interest in cutting planes. Gerard´ and Sebastian soon discovered [BCCN96] that mixed inte- ger Gomory (MIG) cuts, when used in the MIPO fashion, i.e., generated in rounds and embedded into a branch-and-bound framework, could also solve many of the problem instances unsolved at the time. Since the MIG cuts were easier to imple- ment than the L&P ones, they were the first to find their way into the commercial codes. The combination of cutting planes with branch and bound played a central role in the revolution in the state of the art in integer programming that started in the mid-90s. The commercial implementation of lift-and-project cuts had to await the discovery of a method [BP03], [P03] for generating them directly from the LP simplex tableau, without explicit recourse to the higher dimensional cut generating linear program. Today, due to the efforts of Pierre Bonami [BB07], an open-source implementation is also publicly available [COIN-OR]. References [A06] A. Atamturk,¨ Strong formulations of robust mixed 0-1 programming, Mathematical Programming 108 (2006) 235–250. [ALWW07] K. Andersen, Q. Louveaux, R. Weismantel and L.A. Wolsey, Inequalities from two rows of the simplex tableau, Integer Programming and Combinatorial Optimization IPCO 12 (M. Fischetti and D.P. Williamson, eds.), Springer, 2007, pp. 1–16. [B65] E. Balas, An additive algorithm for solving linear programs in 0-1 variables, Opera- tions Research 13 (1965) 517–546. [B85] E. Balas, Disjunctive programming and a hierarchy of relaxations for discrete op- timization problems, SIAM Journal on Algebraic and Discrete Methods 6 (1985) 466–486. 286 Egon Balas [B98] E. Balas, Disjunctive programming: Properties of the convex hull of feasible points, Invited paper with a Foreword by G. Cornuejols´ and G. Pulleyblank, Discrete Ap- plied Mathematics 89 (1998) 1–44.