A primal deficient-basis simplex algorithm for linear programming☆
Introduction
We are concerned with the linear programming (LP) problem in the standard formwhere the columns and rows of the constraint matrix A ∈ Rm×n(m < n), the right-hand side b ∈ Rm, and the cost c ∈ Rn are all nonzero, and Ax = b is compatible. We stress that no assumption is made on the rank of A, except for 1 ⩽ rank(A) ⩽ m.
Theoretically, the difficulty related to (primal) degeneracy in the simplex algorithm [7] is that basic variables with value zero could lead to zero-length steps, and hence even cycling. A number of finite (cycling-preventing) simplex variants were proposed in the past (e.g., [4], [6], [3], [29], [17]); however, it is well known that such algorithms are not competitive with the simplex algorithm in practice.
Although degeneracy occurs all the time (it is not unusual for a large proportion of basic variables to be zero), the simplex algorithm and its non-finite variants must be regarded as finite in practice, since cycling rarely happens. In fact, such algorithms have been very successful. The obstacle to further progress has long been thought to be stalling; that is, the solution process could be stuck at a degenerate vertex for too long a time before leaving it. This has motivated various remedies from time to time (e.g., [13], [1], [14], [12]). In particular, Leichner, Dantzig, and Davis suggested a “strictly improving linear programming Phase I algorithm”, which proceeds without any stalling at all [15]. In addition, if a problem is highly degenerate, some efficient simplex solvers, such as CPLEX, perturb the problem to remove the degeneracy [2]. Pan also described perturbation variants of the simplex algorithm to handle degeneracy [21], [22].
While authors have attempted to develop algorithms that are impervious to degeneracy, efforts were made recently to take advantage of degeneracy. As degeneracy results from b lying in a proper subspace of the range of A, it is possible to extend the classical square basis, which plays a fundamental role in simplex methodology [5], to include a rectangular deficient case.
The concept of basis deficiency was formally introduced in [19],where (primal) deficient-basis simplex algorithms using the QR factorization were described. They were then modified using the LU factorization together with a new Phase-1 procedure described in [26]. Amenable to LP problems with n − m small relative to m, a novel primal algorithm using QR factorization was presented in [20] and later recast using LU factorization [23]. Dense implementations of tableau versions of such algorithms performed very favorably in computational experiments. Besides, the use of deficient bases seemed beneficial not only to primal algorithms but to dual ones as well [24]. In fact, an alternative setting of the dual simplex algorithm described in an earlier paper was pregnant with such an idea [18], and encouraging results were reported recently with a deficient-basis dual algorithm and its sparse implementation [25].
Here, we propose a primal deficient-basis simplex algorithm using rectangular LU factorization so that it proceeds without storing a full array. The proposed algorithm would solve LP problems with potentially improved stability compared to the simplex algorithm. A sparse implementation significantly outperformed MINOS 5.3 on a set of 50 Netlib test problems and 15 much larger real-world problems, including 8 Kennington and 5 BPMPD problems. In particular, the numerical results reveal that there is no inevitable correlation between an algorithm’s inefficiency and degeneracy, contradicting common belief.
The paper is organized as follows. Preliminaries are offered in the next section. In Section 3, an optimality condition is given, shedding light on the selection of an entering index. In Section 4, a search direction is derived and discussed, shedding light on the selection of a leaving index. In Section 5, the algorithm is described formally after two kinds of iterations and related LU factor updates are addressed. Finally, Section 6 reports computational results demonstrating the encouraging behavior of the proposed algorithm.
Section snippets
Preliminaries
In this section, we briefly present basic ideas and concepts, and make some assumptions.
In simplex methodology, the basis is a nonsingular m × m submatrix from the constraint matrix A. Such a basis is well-defined only under the assumption that A has full row rank. A common remedy is to introduce extra logical variables. However, this increases the size of the problem and complicates the solution process.
We argue that this common assumption on the rank of A is unnecessary. Further, even if A has
Optimality condition
To find a dual solution matching the primal solution , we consider the following system:Clearly, there is a unique solution when B is normal (s = m). In general, there are infinitely many solutions when B is deficient (s < m). Lemma 3.1 There exists a dual solution : Proof It can be easily verified that defined by (3.3), (3.4) (along with (2.2)) satisfies (3.1), (3.2), and hence the dual equality constraints. □
By Lemma 3.1, a dual
Search direction
An assumption throughout this section:where v2 is defined by (3.7). It is clear that this case holds whenever s < m and , but all discussions are also valid when s = m.
Formulation of the algorithm
Iterations carried out by the proposed algorithm fall into one of two categories: expanding iteration and full iteration, associated with certain basis changes. In this respect, LUSOL might be the only package available for updating LU factors of rectangular bases [10], [12], [27], [28]. In this section, we address these issues and then describe the algorithm formally.
Computational experiments
In this section, we report numerical results obtained in our computational experiments and make final remarks.
Acknowledgements
The author extend his respect to Professor George B. Dantzig for his great contributions to this field and for his enthusiastic encouragement given to the author during ismp97 and after.
References (29)
- et al.
Maintaining LU factors of a general sparse matrix
Linear Algebra and Its Applications
(1987) A dual projective simplex method for linear programming
Computers and Mathematics with Applications
(1998)A basis-deficiency-allowing variation of the simplex method
Computers and Mathematics with Applications
(1998)A projective simplex method for linear programming
Linear Algebra and Its Applications
(1999)A projective simplex algorithm using LU decomposition
Computers and Mathematics with Applications
(2000)- et al.
A phase-1 approach to the generalized simplex algorithm
Computers and Mathematics with Applications
(2001) - et al.
The efficient solution of linear programming problems – some algorithmic techniques and computational results
Mathematical Programming
(1977) Solving real-world linear programs: a decade and more of progress
Operations Research
(2002)New finite pivoting rules for the simplex method
Mathematics of Operations Research
(1977)Optimality and degeneracy in linear programming
Econometrica
(1952)
The generalized simplex method for minimizing a linear form under linear inequality restraints
Pacific Journal of Mathematics
Linear Programming and Extensions
Steepest-edge simplex algorithms for linear programming
Mathematical Programming
Cited by (7)
A linear programming decomposition focusing on the span of the nondegenerate columns
2015, European Journal of Operational ResearchCitation Excerpt :Degeneracy therefore becomes a potential opportunity to solve smaller linear systems at each iteration. Using deficient bases, Pan develops a simplex-like algorithm (Pan, 2008) and a dual projective algorithm (Pan, 2005) that show promising results in an experimental comparison with MINOS 5 (Murtagh & Saunders, 1983). Elhallaoui, Metrane, Soumis, and Desaulniers (2010); Elhallaoui, Villeneuve, Soumis, and Desaulniers (2005) also take advantage of degeneracy to speed up the solution of set partitioning problems by aggregating the original constraints into clusters of constraints.
Linear Programming Computation, Second Edition
2023, Linear Programming Computation, Second EditionOn Active-Set LP Algorithms Allowing Basis Deficiency
2022, Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)Sparsity prevention pivoting method for linear programming
2018, IEEE AccessLinear programming computation model based on DPVM
2017, Lecture Notes in Electrical EngineeringLinear programming computation
2014, Linear Programming Computation
- ☆
Project 10371017 supported by National Natural Science Foundation of China.