Hyper-Sparsity in the Revised Simplex Method and How to Exploit it

The revised simplex method is often the method of choice when solving large scale sparse linear programming problems, particularly when a family of closely-related problems is to be solved. Each iteration of the revised simplex method requires the solution of two linear systems and a matrix vector product. For a significant number of practical problems the result of one or more of these operations is usually sparse, a property we call hyper-sparsity. Analysis of the commonly-used techniques for implementing each step of the revised simplex method shows them to be inefficient when hyper-sparsity is present. Techniques to exploit hyper-sparsity are developed and their performance is compared with the standard techniques. For the subset of our test problems that exhibits hyper-sparsity, the average speedup in solution time is 5.2 when these techniques are used. For this problem set our implementation of the revised simplex method which exploits hyper-sparsity is shown to be competitive with the leading commercial solver and significantly faster than the leading public-domain solver.

[1]  G. Dantzig,et al.  THE PRODUCT FORM FOR THE INVERSE IN THE SIMPLEX METHOD , 1954 .

[2]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms , 1972, SIAM J. Comput..

[3]  R. V. Helgason,et al.  Algorithms for network programming , 1980 .

[4]  Darwin Klingman,et al.  NETGEN: A Program for Generating Large Scale Capacitated Assignment, Transportation, and Minimum Cost Flow Network Problems , 1974 .

[5]  John W. Mamer,et al.  Solving Multicommodity Flow Problems with a Primal Embedded Network Simplex Algorithm , 1997, INFORMS J. Comput..

[6]  Gautam Mitra,et al.  Finding Better Starting Bases for the Simplex Method , 1996 .

[7]  Roland Wunderling Paralleler und Objektorientierter Simplex , 1996 .

[8]  Robert E. Bixby,et al.  MIP: Theory and Practice - Closing the Gap , 1999, System Modelling and Optimization.

[9]  Yuval Rabani,et al.  Linear Programming , 2007, Handbook of Approximation Algorithms and Metaheuristics.

[10]  J. Tomlin Pivoting for Size and Sparsity in Linear Programming Inversion Routes , 1972 .

[11]  Paula M. J. Harris Pivot selection methods of the Devex LP code , 1973, Math. Program..

[12]  Robert E. Bixby,et al.  Solving Real-World Linear Programs: A Decade and More of Progress , 2002, Oper. Res..

[13]  J. Gilbert,et al.  Sparse Partial Pivoting in Time Proportional to Arithmetic Operations , 1986 .

[14]  Donald Goldfarb,et al.  Steepest-edge simplex algorithms for linear programming , 1992, Math. Program..

[15]  Jeffery L. Kennington,et al.  An Empirical Evaluation of the KORBX® Algorithms for Military Airlift Applications , 1990, Oper. Res..

[16]  D. Klingman,et al.  NETGEN: A PROGRAM FOR GENERATING LARGE SCALE (UN) CAPACITATED ASSIGNMENT, TRANS-PORTATION, AND MINIMUM COST FLOW NETWORK , 2015 .

[17]  J. Mamer,et al.  A Decomposition-Based Pricing Procedure for Large-Scale Linear Programs: An Application to the Linear Multicommodity Flow Problem , 2000 .

[18]  Iain S. Duff,et al.  On Algorithms for Obtaining a Maximum Transversal , 1981, TOMS.

[19]  John A. Tomlin,et al.  Updated triangular factors of the basis to maintain sparsity in the product form simplex method , 1972, Math. Program..

[20]  Alexander Meeraus,et al.  Matrix augmentation and partitioning in the updating of the basis inverse , 1977, Math. Program..

[21]  R. Bartels A stabilization of the simplex method , 1971 .