A network simplex algorithm with O(n) consecutive degenerate pivots

https://doi.org/10.1016/S0167-6377(02)00114-1Get rights and content

Abstract

In this paper, we suggest a new pivot rule for the primal simplex algorithm for the minimum cost flow problem, known as the network simplex algorithm. Due to degeneracy, cycling may occur in the network simplex algorithm. The cycling can be prevented by maintaining strongly feasible bases proposed by Cunningham (Math. Programming 11 (1976) 105; Math. Oper. Res. 4 (1979) 196); however, if we do not impose any restrictions on the entering variables, the algorithm can still perform an exponentially long sequence of degenerate pivots. This phenomenon is known as stalling. Researchers have suggested several pivot rules with the following bounds on the number of consecutive degenerate pivots: m,n2,k(k+1)/2, where n is the number of nodes in the network, m is the number of arcs in the network, and k is the number of degenerate arcs in the basis. (Observe that kn.) In this paper, we describe an anti-stalling pivot rule that ensures that the network simplex algorithm performs at most k consecutive degenerate pivots. This rule uses a negative cost augmenting cycle to identify a sequence of entering variables.

Introduction

The primal simplex algorithm for the minimum cost flow problem, known as the network simplex algorithm, is known to exhibit cycling (that is, an indefinitely repeating sequence of degenerate pivots). Cunningham [2], [3] showed that by using specific types of basis, known as the strongly feasible basis, cycling can be avoided. This technique (described in Section 2) starts with a strongly feasible basis, allows any nonbasic arc to enter the basis, but requires that if several arcs qualify as leaving arcs then an arc satisfying a particular property be chosen as the leaving arc. Cunningham [3], however, showed through a counter-example that the network simplex algorithm maintaining strongly feasible basis can still perform an exponentially long sequence of degenerate pivots, a phenomenon known as stalling.

Several anti-stalling pivot rules have been proposed by researchers. Cunningham [3] and Roohey-Laleh [7] proposed several anti-stalling pivot rules with bounds of O(m) and O(n2) on the number of consecutive degenerate pivots, where n is the number of nodes and m is the number of arcs in the network. Goldfarb et al. [5] also proposed several anti-stalling pivot rules, one of which performs at most k(k+1)/2 consecutive degenerate pivots, where k is the number of degenerate arcs in the basis. (Observe that kn.)

In this paper, we describe an anti-stalling pivot rule that ensures that the network simplex algorithm performs at most k degenerate pivots. This rule maintains a strongly feasible basis and uses a negative cost augmenting cycle to identify a sequence of entering variables that prevent stalling.

We point out that the results in this paper do not (to the best of our knowledge) lead to a polynomial time network simplex algorithm for the minimum cost flow problem. Currently, the only known polynomial time network primal simplex algorithm is due to Orlin [6] which performs O(min(n2mlog(nC),n2m2logn)) pivots.

Section snippets

Network simplex algorithm for the minimum cost flow problem

In this section, we first present some basic definitions and notation. We then give the linear programming formulation of the minimum cost flow problem and describe the network simplex algorithm. We refer the reader to Ahuja et al. [1, Chapter 11], for a review of the network simplex algorithm.

Let G=(N,A) be a directed network (or graph) defined by a set N of n nodes and a set A of m directed arcs. For the simplicity of notation, we assume that there are no parallel arcs. Each arc (i,j)∈A has

Augmenting and valid cycles

Let C be a cycle in G. We associate an orientation to the cycle C. Let C̄ denote the set of forward arcs (that is, along the orientation of the cycle) and C̄ denote the set of backward arcs in C (that is, opposite to the orientation of the cycle). A cycle C is an augmenting cycle in G with respect to a flow x if xij<uij for each arc (i,j)∈C̄, and xij>0 for each arc (i,j)∈C̄. We define the cost of an augmenting cycle C,c(C), as the change it will cause to the total flow cost if unit flow is

The anti-stalling pivot rule

We will now present our pivot rule. Our rule uses a valid cycle to identify entering arcs and uses Lemma 2 to identify leaving arcs.

Anti-Stalling Pivot Rule:

if there is an eligible arc (k,l) such that nodes k and l
are in the same free component, then pivot in the arc (k,l);
else
begin
find a valid negative cycle C in G with respect to the flow x;
while C is valid select an eligible arc (k,l) in C and pivot it in;
end;

Theorem 1

The network simplex algorithm using the anti-stalling pivot rule performs at most k

Acknowledgments

We thank the referee and the Associate Editor for their perceptive comments and helpful suggestions. The research of the first author was supported by the NSF Grants DMI-9900087 and DMI-0085682. The second author was supported by the NSF Grants DMI-9810359 and DMI-9820998.

References (7)

  • R.K. Ahuja et al.

    Network Flows: Theory, Algorithms, and Applications

    (1993)
  • W.H. Cunningham

    A network simplex method

    Math. Program.

    (1976)
  • W.H. Cunningham

    Theoretical properties of the network simplex method

    Math. Oper. Res.

    (1979)
There are more references available in the full text version of this article.

Cited by (10)

  • A solution approach to minimal average cost flow problem with lower and upper bounds on flows

    2022, Expert Systems with Applications
    Citation Excerpt :

    Goldfarb and Jin (1999) developed a new scaling algorithm with polynomial time complexity for the MCFP by successive shortest path algorithm, which works directly with the given data and original network, and dynamically adjusts the scaling factor between scaling phases, so that it performs at least one flow augmentation in each phase. Ahuja et al. (2002) designed a new network simplex algorithm to solve the MCFP by suggesting a new pivot rule for the primal simplex algorithm. Paparrizos et al. (2009) analytically presented a network exterior point simplex algorithm to solve the MCFP, which as modification of classical network simplex algorithm, mainly computes two flows, one flow is basic but not always feasible, and the other is feasible but not always basic; and they strictly proved the correctness of presented algorithm.

  • Generalized network improvement and packing problems

    2017, Generalized Network Improvement and Packing Problems
View all citing articles on Scopus
View full text