Mathematical Programming 46 (1990) 61-72 61 North-Holland A "BUILD-DOWN" SCHEME FOR LINEAR PROGRAMMING Yinyu YE Department of Management Sciences, The University of Iowa, Iowa City, IA 52242, USA Received 27 July 1987 Revised manuscript received 11 September 1988 We propose a "build-down" scheme for Karmarkar's algorithm and the simplex method for linear programming. The scheme starts with an optimal basis "candidate" set ~ including all columns of the constraint matrix, then constructs a dual ellipsoid containing all optimal dual solutions. A pricing rule is developed for checking whether or not a dual hyperplane corresponding to a column intersects the containing ellipsoid. If the dual hyperplane has no intersection with the ellipsoid, its corresponding column will not appear in any of the optimal bases, and can be eliminated from ~. As these methods iterate, ~ is eventually built-down to a set that contains only the optimal basic columns. Key words: Linear programming, simplex method, ellipsoid method, Karmarkar's algorithm, primal and dual. 1. Introduction Optimization problems can generally be divided into two categories: combinatorial optimization problems and continuous optimization problems. In combinatorial problems, we usually look for an object from a discontinuous set; in continuous problems, we look for real numbers or even a function. These two categories generally have quite different characteristics, and the algorithms for solving them are very distinct. However, linear programming plays a unique role in optimization theory; in one sense, it is a continuous optimization problem because the decision variables are real numbers, but it also may be considered a combinatorial optimization problem to identify an optimal basis containing certain columns from the constraint matrix. Approaches for solving linear programming (LP) have been well studied for several decades. Actually, the birth of linear programming is usually identified with the development of the simplex method in 1947 by Dantzig [4]. It says much for the algorithm that it remains a major algorithm used in optimization systems. The simplex method starts with a nonoptimal basis, then updates the basis via a pricing rule until reaching the optimal basis. Each iteration of the method brings one column (not in the current nonoptimal basis) into the basis, and deletes one column (in the current nonoptimal basis) from the basis. Unfortunately, the pricing rule does not guarantee that columns deleted from the basis will never appear in the optimal basis; therefore, each column has to be kept alive during the pricing process. Due to its practical and theoretical importance and its simple linear structure, LP has sparked tremendous interest among scientists in developing new algorithms.