Network Flow Algorithms

Abstract : Network flow problems are central problems in operations research, computer science, and engineering and they arise in many real world applications. Starting with early work in linear programming and spurred by the classic book of Ford and Fulkerson, the study of such problems has led to continuing improvements in the efficiency of network flow algorithms. In spite of the long history of this study, many substantial results have been obtained within the last several years. In this survey we examine some of these recent developments and the ideas behind them. We discuss the classical network flow problems, the maximum flow problem and the minimum-cost circulation problem, and a less standard problem, the generalized flow problem, sometimes called the problem of flows with losses and gains. The survey contains six chapters in addition to this introduction. Chapter 1 develops the terminology needed to discuss network flow problems. Chapter 2 discusses the maximum flow problem, and Chapters 3, 4, and 5 discuss different aspects of the minimum-cost circulation problem, and Chapter 6 discusses the generalized flow problem. In the remainder of this introduction, we mention some of the history of network flow research, comment on some of the results to be presented in detail in later sections, and mention some results not covered in this survey. We are interested in algorithms whose running time is small as a function of the size of the network and the numbers involved (e.g. capacities, costs, or gains).

[1]  Robert E. Tarjan,et al.  Faster Scaling Algorithms for Network Problems , 1989, SIAM J. Comput..

[2]  M. Iri A NEW METHOD OF SOLVING TRANSPORTATION· NETWORK PROBLEMS , 1960 .

[3]  Dimitri P. Bertsekas,et al.  Distributed Asynchronous Relaxation Methods for Linear Network Flow Problems , 1987 .

[4]  Refael Hassin,et al.  Maximum Flow in (s, t) Planar Networks , 1981, Inf. Process. Lett..

[5]  Michel Balinski,et al.  Signature Methods for the Assignment Problem , 1985, Oper. Res..

[6]  L. Lovász,et al.  Geometric Algorithms and Combinatorial Optimization , 1981 .

[7]  Andrew V. Goldberg,et al.  Finding minimum-cost circulations by canceling negative cycles , 1989, JACM.

[8]  Robert E. Tarjan,et al.  Efficiency of the Primal Network Simplex Algorithm for the Minimum-Cost Circulation Problem , 1991, Math. Oper. Res..

[9]  G. Minty Monotone networks , 1960, Proceedings of the Royal Society of London. Series A. Mathematical and Physical Sciences.

[10]  Éva Tardos,et al.  Note on Weintraub's Minimum-Cost Circulation Algorithm , 1989, SIAM J. Comput..

[11]  D. R. Fulkerson,et al.  Maximal Flow Through a Network , 1956 .

[12]  Andrew Vladislav Goldberg,et al.  Efficient graph algorithms for sequential and parallel computers , 1987 .

[13]  Robert E. Tarjan,et al.  Almost-optimum speed-ups of algorithms for bipartite matching and related problems , 1988, STOC '88.

[14]  Guenther Ruhe,et al.  Parametric maximal flows in generalized networks – complexity and algorithms , 1988 .

[15]  Andrew V. Goldberg,et al.  Finding Minimum-Cost Circulations by Successive Approximation , 1990, Math. Oper. Res..

[16]  A. V. Karzanov,et al.  Determining the maximal flow in a network by the method of preflows , 1974 .

[17]  Refael Hassin,et al.  An O(n log2 n) Algorithm for Maximum Flow in Undirected Planar Networks , 1985, SIAM J. Comput..

[18]  Greg N. Frederickson,et al.  Fast Algorithms for Shortest Paths in Planar Graphs, with Applications , 1987, SIAM J. Comput..

[19]  V GoldbergAndrew,et al.  Finding minimum-cost circulations by canceling negative cycles , 1989 .

[20]  Donald Goldfarb,et al.  A primal simplex algorithm that solves the maximum flow problem in at mostnm pivots and O(n2m) time , 1990, Math. Program..

[21]  Robert E. Tarjan,et al.  A data structure for dynamic trees , 1981, STOC '81.

[22]  Robert E. Tarjan,et al.  Fibonacci heaps and their uses in improved network optimization algorithms , 1984, JACM.

[23]  Robert E. Tarjan,et al.  Improved Time Bounds for the Maximum Flow Problem Improved Time Bounds for the Maximum Flow Problem Improved Time Bounds for the Maximum Flow Problem , 2008 .

[24]  A. Weintraub A Primal Algorithm to Solve Network Flow Problems with Convex Costs , 1974 .

[25]  Alon Itai,et al.  Maximum Flow in Planar Networks , 1979, SIAM J. Comput..

[26]  VishkinUzi,et al.  An O(n2 log n) parallel max-flow algorithm , 1982 .

[27]  Michel Minoux,et al.  Graphs and Algorithms , 1984 .

[28]  R. Tarjan Amortized Computational Complexity , 1985 .

[29]  N. Tomizawa,et al.  On some techniques useful for solution of transportation network problems , 1971, Networks.

[30]  Robert G. Busacker,et al.  A PROCEDURE FOR DETERMINING A FAMILY OF MINIMUM-COST NETWORK FLOW PATTERNS , 1960 .

[31]  Ravindra K. Ahuja,et al.  New distance-directed algorithms for maximum flow and parametric maximum flow problems , 1987 .

[32]  William H. Cunningham,et al.  A network simplex method , 1976, Math. Program..

[33]  Amnon Naamad,et al.  An O(EVlog²V) Algorithm for the Maximal Flow Problem , 1980, J. Comput. Syst. Sci..

[34]  Ravindra K. Ahuja,et al.  A Fast and Simple Algorithm for the Maximum Flow Problem , 2011, Oper. Res..

[35]  K. Truemper On Max Flows with Gains and Pure Min-Cost Flows , 1977 .

[36]  Pravin M. Vaidya,et al.  Fast algorithms for convex quadratic programming and multicommodity flows , 1986, STOC '86.

[37]  Richard M. Karp,et al.  Theoretical Improvements in Algorithmic Efficiency for Network Flow Problems , 1972, Combinatorial Optimization.

[38]  John H. Reif,et al.  Minimum s-t Cut of a Planar Undirected Network in O(n log2(n)) Time , 1983, SIAM J. Comput..

[39]  Andrew V. Goldberg,et al.  Solving minimum-cost flow problems by successive approximation , 1987, STOC.

[40]  Zvi Galil,et al.  An ) min-cost flow algorithm , 1988 .

[41]  Gernot M. Engel,et al.  Diagonal similarity and equivalence for matrices over groups with 0 , 1975 .

[42]  R. Tarjan A simple version of Karzanov's blocking flow algorithm , 1984 .

[43]  Richard M. Karp,et al.  A characterization of the minimum cycle mean in a digraph , 1978, Discret. Math..

[44]  D. Sleator An 0 (nm log n) algorithm for maximum network flow , 1980 .

[45]  Maurice Snowdon,et al.  Network Flow Programming , 1980 .

[46]  E. A. Dinic Algorithm for solution of a problem of maximal flow in a network with power estimation , 1970 .

[47]  Satoru Fujishige,et al.  A capacity-rounding algorithm for the minimum-cost circulation problem: A dual framework of the Tardos algorithm , 1986, Math. Program..

[48]  James B. Orlin,et al.  A faster strongly polynomial minimum cost flow algorithm , 1993, STOC '88.

[49]  Ravindra K. Ahuja,et al.  New scaling algorithms for the assignment and minimum cycle mean problems , 1988 .

[50]  James Renegar,et al.  A polynomial-time algorithm, based on Newton's method, for linear programming , 1988, Math. Program..

[51]  D. R. Fulkerson,et al.  An Out-of-Kilter Method for Minimal-Cost Flow Problems , 1960 .

[52]  Pravin M. Vaidya,et al.  Speeding-up linear programming using fast matrix multiplication , 1989, 30th Annual Symposium on Foundations of Computer Science.

[53]  Éva Tardos,et al.  A strongly polynomial minimum cost circulation algorithm , 1985, Comb..

[54]  Dimitri P. Bertsekas,et al.  Dual coordinate step methods for linear network flow problems , 1988, Math. Program..

[55]  Frank Harary,et al.  Finite Graphs and Networks, An Introduction with Applications. , 1967 .

[56]  Vijay V. Vazirani,et al.  Matching is as easy as matrix inversion , 1987, STOC.

[57]  M. Klein A Primal Method for Minimal Cost Flows with Applications to the Assignment and Transportation Problems , 1966 .

[58]  Andrew V. Goldberg,et al.  A Parallel Algorithm for Finding a Blocking Flow in an Acyclic Network , 1989, Inf. Process. Lett..

[59]  K. Onaga Optimum flows in general communication networks , 1967 .

[60]  J. Orlin Working Paper Alfred P. Sloan School of Management Genuinely Polynominal Simplex and Non-simplex Algorithms for the Minimum Cost Flow Problem Genuinely Polynominal Simplex and Non-simplex Algorithms for the Minimum Cost Flow Problem , 2008 .

[61]  Andrew V. Goldberg,et al.  Sublinear-time parallel algorithms for matching and related problems , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[62]  Robert E. Tarjan,et al.  Network Flow and Testing Graph Connectivity , 1975, SIAM J. Comput..

[63]  K. Onaga Dynamic Programming of Optimum Flows in Lossy Communication Nets , 1966 .

[64]  Narendra Karmarkar,et al.  A new polynomial-time algorithm for linear programming , 1984, STOC '84.

[65]  Kurt Mehlhorn,et al.  Faster algorithms for the shortest path problem , 1990, JACM.

[66]  Kenneth Steiglitz,et al.  Combinatorial Optimization: Algorithms and Complexity , 1981 .

[67]  H. Kuhn The Hungarian method for the assignment problem , 1955 .

[68]  Harold N. Gabow Scaling Algorithms for Network Problems , 1985, J. Comput. Syst. Sci..

[69]  Steven Fortune,et al.  Parallelism in random access machines , 1978, STOC.

[70]  Norman Zadeh,et al.  A bad network problem for the simplex method and other minimum cost flow algorithms , 1973, Math. Program..

[71]  Fred W. Glover,et al.  On the equivalence of some generalized network problems to pure network problems , 1973, Math. Program..

[72]  D. Bertsekas A distributed asynchronous relaxation algorithm for the assignment problem , 1985, 1985 24th IEEE Conference on Decision and Control.

[73]  Claude Berge,et al.  Graphs and Hypergraphs , 2021, Clustering.

[74]  J. Orlin On the simplex algorithm for networks and generalized networks , 1983 .

[75]  Donald Goldfarb,et al.  A computational comparison of the dinic and network simplex methods for maximum flow , 1988 .

[76]  S. N. Maheshwari,et al.  Analysis of Preflow Push Algorithms for Maximum Network Flow , 1988, FSTTCS.

[77]  A. Goldberg,et al.  Efficiency of the network simplex algorithm for the maximum flow problem , 1989 .

[78]  D. R. Fulkerson,et al.  Flows in Networks. , 1964 .

[79]  Andrew V. Goldberg,et al.  A new approach to the maximum flow problem , 1986, STOC '86.

[80]  S. N. Maheshwari,et al.  An O(|V|³) Algorithm for Finding Maximum Flows in Networks , 1978, Inf. Process. Lett..

[81]  George B. Dantzig,et al.  Linear programming and extensions , 1965 .

[82]  D. Koenig Theorie Der Endlichen Und Unendlichen Graphen , 1965 .

[83]  L. Khachiyan Polynomial algorithms in linear programming , 1980 .

[84]  Robert E. Tarjan,et al.  Data structures and network algorithms , 1983, CBMS-NSF regional conference series in applied mathematics.

[85]  Andrew V. Goldberg,et al.  Combinatorial Algorithms for the Generalized Circulation Problem , 1991, Math. Oper. Res..