49 LINEAR PROGRAMMING

Linear programming has many important practical applications, and has also given rise to a wide body of theory. See Section 49.9 for recommended sources. Here we consider the linear programming problem in the form of maximizing a linear function of d variables subject to n linear inequalities. We focus on the relationship of the problem to computational geometry, i.e., we consider the problem in small dimension. More precisely, we concentrate on the case where d ≪ n, i.e., d = d(n) is a function that grows very slowly with n. By linear programming duality, this also includes the case n ≪ d. This has been called fixed-dimensional linear programming, though our viewpoint here will not treat d as constant. In this case there are strongly polynomial algorithms, provided the rate of growth of d with n is small enough. The plan of the chapter is as follows. In Section 49.2 we consider the simplex method, in Section 49.3 we review deterministic linear time algorithms, in Section 49.4 randomized algorithms, and in Section 49.5 we consider the derandomization of the latter. Section 49.6 discusses the combinatorial framework of LP-type problems, which underlie most current combinatorial algorithms and allows their application to a host of optimization problems. We briefly describe the more recent combinatorial framework of unique sink orientations, in the context of striving for algorithms with a milder dependence on d. In Section 49.7 we examine parallel algorithms for this problem, and finally in Section 49.8 we briefly discuss related issues. The emphasis throughout is on complexity-theoretic bounds for the linear programming problem in the form (49.1.1).

[1]  Timothy M. Chan Improved Deterministic Algorithms for Linear Programming in Low Dimensions , 2016, SODA.

[2]  Uri Zwick,et al.  An Improved Version of the Random-Facet Pivoting Rule for the Simplex Algorithm , 2015, STOC.

[3]  Oliver Friedmann,et al.  A Subexponential Lower Bound for Zadeh's Pivoting Rule for Solving Linear Programs and Games , 2011, IPCO.

[4]  Uri Zwick,et al.  Subexponential lower bounds for randomized pivoting rules for the simplex algorithm , 2011, STOC '11.

[5]  Bernd Gärtner,et al.  Clarkson's Algorithm for Violator Spaces , 2009, CCCG.

[6]  Bernd Gärtner,et al.  Understanding and using linear programming , 2007, Universitext.

[7]  M. Bálek,et al.  Abstract Models of Optimization Problems , 2007 .

[8]  Jirí Matousek,et al.  Violator spaces: Structure and algorithms , 2006, Discret. Appl. Math..

[9]  Bernd Gärtner,et al.  Linear programming and unique sink orientations , 2006, SODA '06.

[10]  Timothy M. Chan Low-dimensional linear programming with violations , 2002, The 43rd Annual IEEE Symposium on Foundations of Computer Science, 2002. Proceedings..

[11]  Bernd Gärtner The Random-Facet simplex algorithm on combinatorial cubes , 2002, Random Struct. Algorithms.

[12]  Tibor Szabó,et al.  Unique sink orientations of cubes , 2001, Proceedings 2001 IEEE International Conference on Cluster Computing.

[13]  Shang-Hua Teng,et al.  Smoothed analysis of algorithms: why the simplex algorithm usually takes polynomial time , 2001, STOC '01.

[14]  Emo Welzl,et al.  A Simple Sampling Lemma: Analysis and Applications in Geometric Optimization , 2001, Discret. Comput. Geom..

[15]  Alexander Schrijver,et al.  Theory of linear and integer programming , 1986, Wiley-Interscience series in discrete mathematics and optimization.

[16]  Timothy M. Chan Geometric Applications of a Randomized Optimization Technique , 1998, SCG '98.

[17]  Gil Kalai,et al.  Linear programming, the simplex algorithm and simple polytopes , 1997, Math. Program..

[18]  Timothy M. Chan Deterministic algorithms for 2-d convex programming and 3-d online linear programming , 1997, SODA '97.

[19]  Jiřı́ Matoušek,et al.  Derandomization in Computational Geometry , 1996, J. Algorithms.

[20]  Timothy M. Chan Fixed-dimensional linear programming queries made easy , 1996, SCG '96.

[21]  Emo Welzl,et al.  Linear Programming - Randomization and Abstract Frameworks , 1996, STACS.

[22]  Martin E. Dyer,et al.  A parallel algorithm for linear programming in fixed dimension , 1995, SCG '95.

[23]  Kenneth L. Clarkson,et al.  Las Vegas algorithms for linear and integer programming when the dimension is small , 1995, JACM.

[24]  Jirí Matousek,et al.  On Enclosing k Points by a Circle , 1995, Inf. Process. Lett..

[25]  Bernd Gärtner A Subexponential Algorithm for Abstract Optimization Problems , 1992, FOCS.

[26]  Peter Widmayer,et al.  k-Violation Linear Programming , 1994, Inf. Process. Lett..

[27]  Jiří Matoušek,et al.  Lower Bounds for a Subexponential Optimization Algorithm , 1994, Random Struct. Algorithms.

[28]  Nina Amenta,et al.  Helly-type theorems and Generalized Linear Programming , 1994, Discret. Comput. Geom..

[29]  Nina Amenta,et al.  Bounded boxes, Hausdorff distance, and a new proof of an interesting Helly-type theorem , 1994, SCG '94.

[30]  Bernard Chazelle,et al.  On linear-time deterministic algorithms for optimization problems in fixed dimension , 1996, SODA '93.

[31]  Michiel H. M. Smid,et al.  Static and Dynamic Algorithms for k-Point Clustering Problems , 1993, J. Algorithms.

[32]  Micha Sharir,et al.  Computing the Smallest K-enclosing Circle and Related Problems , 1993, Comput. Geom..

[33]  Michael T. Goodrich Geometric partitioning made easier, even in parallel , 1993, SCG '93.

[34]  Martin E. Dyer,et al.  A class of convex programs with applications to computational geometry , 1992, SCG '92.

[35]  Nimrod Megiddo,et al.  A deterministic poly(log log N)-time N-processor algorithm for linear programming in fixed dimension , 1992, STOC '92.

[36]  Jirí Matousek,et al.  Linear optimization queries , 1992, SCG '92.

[37]  Micha Sharir,et al.  A subexponential bound for linear programming , 1992, SCG '92.

[38]  Micha Sharir,et al.  A Combinatorial Bound for Linear Programming and Related Problems , 1992, STACS.

[39]  David Eppstein,et al.  Dynamic three-dimensional linear programming , 1991, [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.

[40]  David Avis,et al.  A pivoting algorithm for convex hulls and vertex enumeration of arrangements and polyhedra , 1991, SCG '91.

[41]  Emo Welzl,et al.  Smallest enclosing disks (balls and ellipsoids) , 1991, New Results and New Trends in Computer Science.

[42]  Richard M. Karp,et al.  Parallel Algorithms for Shared-Memory Machines , 1991, Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity.

[43]  N. Alon,et al.  Parallel Linear Programming in Fixed Dimension Almost Surely in Constant Time , 1990, FOCS.

[44]  Xiaotie Deng An Optimal Parallel Algorithm for Linear Programming in the Plane , 1990, Inf. Process. Lett..

[45]  Raimund Seidel,et al.  Linear programming and convex hulls made easy , 1990, SCG '90.

[46]  Nimrod Megiddo On the ball spanned by balls , 1989, Discret. Comput. Geom..

[47]  Martin E. Dyer,et al.  A randomized algorithm for fixed-dimensional linear programming , 1989, Math. Program..

[48]  L. Lovász,et al.  Geometric Algorithms and Combinatorial Optimization , 1988, Algorithms and Combinatorics.

[49]  Richard M. Karp,et al.  A simplex variant solving an m times d linear program in O(min(m2, d2) expected number of pivot steps , 1987, J. Complex..

[50]  K. Borgwardt The Simplex Method: A Probabilistic Analysis , 1986 .

[51]  Kenneth L. Clarkson Further applications of random sampling to computational geometry , 1986, STOC '86.

[52]  Martin E. Dyer,et al.  On a Multidimensional Search Technique and its Application to the Euclidean One-Centre Problem , 1986, SIAM J. Comput..

[53]  Michael J. Todd,et al.  Polynomial expected behavior of a pivoting algorithm for linear complementarity and linear programming problems , 1986, Math. Program..

[54]  Éva Tardos,et al.  A Strongly Polynomial Algorithm to Solve Combinatorial Linear Programs , 1986, Oper. Res..

[55]  Nimrod Megiddo,et al.  A simplex algorithm whose average number of steps is bounded between two quadratic functions of the smaller dimension , 1984, STOC '84.

[56]  Martin E. Dyer,et al.  Linear Time Algorithms for Two- and Three-Variable Linear Programs , 1984, SIAM J. Comput..

[57]  Nimrod Megiddo,et al.  Linear Programming in Linear Time When the Dimension Is Fixed , 1984, JACM.

[58]  Stephen Smale,et al.  On the average number of steps of the simplex method of linear programming , 1983, Math. Program..

[59]  M. E. Dyer,et al.  The Complexity of Vertex Enumeration Methods , 1983, Math. Oper. Res..

[60]  Nimrod Megiddo,et al.  Towards a Genuinely Polynomial Algorithm for Linear Programming , 1983, SIAM J. Comput..

[61]  Nimrod Megiddo,et al.  Linear-time algorithms for linear programming in R3 and related problems , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[62]  David E. Muller,et al.  Finding the Intersection of two Convex Polyhedra , 1978, Theor. Comput. Sci..

[63]  V. Klee,et al.  HOW GOOD IS THE SIMPLEX ALGORITHM , 1970 .