Mathematical Programming

, Volume 78, Issue 2, pp 109–129

A polynomial time primal network simplex algorithm for minimum cost flows

  • James B. Orlin

DOI: 10.1007/BF02614365

Cite this article as:
Orlin, J.B. Mathematical Programming (1997) 78: 109. doi:10.1007/BF02614365


Developing a polynomial time primal network simplex algorithm for the minimum cost flow problem has been a long standing open problem. In this paper, we develop one such algorithm that runs in O(min(n2m lognC, n2m2 logn)) time, wheren is the number of nodes in the network,m is the number of arcs, andC denotes the maximum absolute arc costs if arc costs are integer and ∞ otherwise. We first introduce a pseudopolynomial variant of the network simplex algorithm called the “premultiplier algorithm”. We then develop a cost-scaling version of the premultiplier algorithm that solves the minimum cost flow problem in O(min(nm lognC, nm2 logn)) pivots. With certain simple data structures, the average time per pivot can be shown to be O(n). We also show that the diameter of the network polytope is O(nm logn).


Minimum cost flowsNetwork simplexPolynomial timeSimplex algorithmPremultipliers

Copyright information

© The Mathematical Programming Society, Inc 1997

Authors and Affiliations

  • James B. Orlin
    • 1
  1. 1.Sloan School of Management, MITCambridgeUSA