ACM Home Page
Please provide us with feedback. Feedback
A new approach to the maximum-flow problem
Full text PdfPdf (1.63 MB)
Source Journal of the ACM (JACM) archive
Volume 35 ,  Issue 4  (October 1988) table of contents
Pages: 921 - 940  
Year of Publication: 1988
ISSN:0004-5411
Authors
Andrew V. Goldberg  Massachusetts Institute of Technology, Cambridge
Robert E. Tarjan  Princeton Univ., Princeton, NJ; and AT&T Bell Labs, Murray Hill, NJ
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 69,   Downloads (12 Months): 617,   Citation Count: 133
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/48014.61051
What is a DOI?

ABSTRACT

All previously known efficient maximum-flow algorithms work by finding augmenting paths, either one path at a time (as in the original Ford and Fulkerson algorithm) or all shortest-length augmenting paths at once (using the layered network approach of Dinic). An alternative method based on the preflow concept of Karzanov is introduced. A preflow is like a flow, except that the total amount flowing into a vertex is allowed to exceed the total amount flowing out. The method maintains a preflow in the original network and pushes local flow excess toward the sink along what are estimated to be shortest paths. The algorithm and its analysis are simple and intuitive, yet the algorithm runs as fast as any other known method on dense graphs, achieving an O(n3) time bound on an n-vertex graph. By incorporating the dynamic tree data structure of Sleator and Tarjan, we obtain a version of the algorithm running in O(nm log(n2/m)) time on an n-vertex, m-edge graph. This is as fast as any known method for any graph density and faster on graphs of moderate density. The algorithm also admits efficient distributed and parallel implementations. A parallel implementation running in O(n2log n) time using n processors and O(m) space is obtained. This time bound matches that of the Shiloach-Vishkin algorithm, which also uses n processors but requires O(n2) space.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
AHUJA, R. K. AND ORLIN, J.B. A fast and simple algorithm for the maximum flow problem. Tech. Rep. 1905-87, Sloan School of Management, Massachusetts Institute of Technology, Cambridge, Mass., 1987.
 
1a
AHUJA, R. K., ORLIN, J. B., AND TARJAN, R.E. Improved time bounds for the maximum flow problem. Unpublished mansucript.
2
 
2a
CHERIYAN, J., AND MAHESHWARI, S. N. Analysis of preflow push algorithms for maximum network flow. Department of Computer Science and Engineering, Indian Institute of Tech., New Delhi, India, 1987.
 
3
CHERKASKY, R.V. An algorithm for constructing maximal flows in networks with complexity of O(V2x/E) operations. Math. Methods Solution Econ. Probl. 7 (1977), 112-125. (In Russian.)
 
4
DINIC, E.A. Algorithm for solution of a problem of maximum flow in networks with power estimation. Sov. Math. Dokl. 11 (1970), 1277-1280.
5
 
6
 
7
FORD, L. R., JR., AND FULKERSON, D.R. Maximal flow through a network. Can. J. Math. 8 (1956), 399-404.
 
8
FORD, L. R., JR., AND FULKERSON, D.R. Flows in Networks. Princeton University Press, Princeton, N.j., 1962.
9
 
10
 
11
GALIL, Z. An 0(VS/3E2/3) algorithm for the maximal flow problem. Acta Inf. 14 (1980), 221-242.
 
12
GALIL, Z., AND NAAMAD, A. An O(EV log2V) algorithm for the maximal flow problem. J. Comput. Syst. Sci. 21 (1980), 203-217.
13
 
14
GOLDBERG, A. V. A new max-flow algorithm. Tech. Rep. MIT/LCS/TM-291, Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, Mass., 1985.
 
15
16
 
17
 
18
KARZANOV, A.V. Determining the maximal flow in a network by the method of preflows. Sov. Math. Dokl. 15 (1974), 434-437.
 
19
LAWLER, E.L. Combinatorial Optimization: Networks and Matroids. Holt, Rinehart, and Winston, New York, 1976.
 
20
LEISERSON, C., AND MAGGS, B. Communication-efficient parallel graph algorithms. In Proceedings of the International Conference on Parallel Processing. IEEE Computer Society Press, Silver Spring, Md., 1986, pp. 861-868.
 
21
MALHOTRA, V. M., PRAMODH KUMAR, M., AND MAHESHWARI, S.N. An O(I V I3) algorithm for finding maximum flows in networks. Inf. Process. Lett. 7 (1978), 277-278.
 
22
OGIELSKI, A. T. Integer optimization and zero-temperature fixed point in Ising random-field systems. Phys. Rev. Lett. 57 (1986), 1251-1254.
 
23
 
24
PICARD, J. C., AND RATLIFF, H. O. Minimum cuts and related problems. Networks 5 (1975), 357-370.
 
25
 
26
 
27
SLEATOR, D.D. An O(nm log n) algorithm for maximum network flow. Tech. Rep. STAN-CS- 80-831, Computer Science Dept., Stanford Univ., Stanford, Calif., 1980.
 
28
29
 
30
 
31
TAP.JAN, R.E. A simple version of Karzanov's blocking flow algorithm. Oper. Res. Lett. 2 (1984), 265-268.

CITED BY  133


REVIEW

"Charles Martel : Reviewer"

Network flow algorithms are powerful tools that can be used to solve a wide range of optimization problems in management and logistics, such as scheduling of production in manufacturing facilities, routing of packets in communication networks, a  more...

Collaborative Colleagues:
Andrew V. Goldberg: colleagues
Robert E. Tarjan: colleagues