Scaling Algorithms for Network Problems

This paper gives algorithms for network problems that work by scaling the numeric parameters. Assume all parameters are integers. Let n, m, and N denote the number of vertices, number of edges, and largest parameter of the network, respectively. A scaling algorithm for maximum weight matching on a bipartite graph runs in O(n34m log N) time. For appropriate N this improves the traditional Hungarian method, whose most efficient implementation is O(n(m +n log n)). The speedup results from finding augmenting paths in batches. The matching algorithm gives similar improvements for the following problems: single-source shortest paths for arbitrary edge lengths (Bellman's algorithm); maximum weight degree-constrained subgraph; minimum cost flow on a 0–1 network. Scaling gives a simple maximum value flow algorithm that matches the best known bound (Sleator and Tarjan's algorithm) when log N=O(log n). Scaling also gives a good algorithm for shortest paths on a directed graph with nonnegative edge lengths (Dijkstra's algorithm).

[1]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[2]  Richard Bellman,et al.  ON A ROUTING PROBLEM , 1958 .

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

[4]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[5]  Harold N. Gabow,et al.  A scaling algorithm for weighted matching on general graphs , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

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

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

[8]  H. W. Kuhn,et al.  Variants of the hungarian method for assignment problems , 1956 .

[9]  Silvio Micali,et al.  An O(v|v| c |E|) algoithm for finding maximum matching in general graphs , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).

[10]  Robert E. Tarjan,et al.  Scaling and related techniques for geometry problems , 1984, STOC '84.

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

[12]  Robert B. Dial,et al.  Algorithm 360: shortest-path forest with topological ordering [H] , 1969, CACM.

[13]  Donald B. Johnson,et al.  Efficient Algorithms for Shortest Paths in Sparse Networks , 1977, J. ACM.

[14]  Harold N. Gabow,et al.  An efficient reduction technique for degree-constrained subgraph and bidirected network flow problems , 1983, STOC.

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

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

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

[18]  Richard M. Karp,et al.  A n^5/2 Algorithm for Maximum Matchings in Bipartite Graphs , 1971, SWAT.

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

[20]  Robert A. Wagner,et al.  A Shortest Path Algorithm for Edge-Sparse Graphs , 1976, J. ACM.