Zeitschrift für Operations Research

, Volume 33, Issue 6, pp 383–403

Implementing Goldberg's max-flow-algorithm — A computational investigation

  • U. Derigs
  • W. Meier
Theory

Abstract

In this paper we review Goldberg's algorithm for solving max-flow-problems on networks and we discuss several ideas for implementing and enhancing this approach. We present computational results for these implementations and we compare our best Goldberg-codes with implementations of Dinic's and Karzanov's method presented in literature.

Our results show that the implementations of Goldberg's algorithm outperform the other codes significantly. Here the essential breakthrough is obtained by the use of a modification of Goldberg's basic labeling scheme by which the number of labeling steps is reduced drastically.

Zusammenfassung

Wir diskutieren einige Strategien und Datenstrukturen für eine effiziente Implementierung des Preflow-Push-Algorithmus von Goldberg zur Bestimmung maximaler Flüsse in Netzwerken. Wir berichten über numerische Erfahrungen mit diesen Implementierungen und Vergleichtests mit publizierten Codes zur Lösung des Max-Flow-Problems, die auf der Basis der Algorithmen von Dinic und Karzanov entwickelt wurden.

Unsere Ergebnisse zeigen, dafß die Goldberg-Codes wesentlich weniger Rechenzeit benötigen. Der entscheidende Durchbruch wird dabei durch eine neue Modifikation der Markierungsmethode von Goldberg erzielt, durch die die Anzahl der Markierungsschritte drastisch reduziert wird.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Cheriyan J, Maheswari SN (1987) Analysis of preflow push algorithms for maximum network flow. Department of Computer Science and Engeneering, Indian Institute of Technology, New Dehli, IndiaGoogle Scholar
  2. Cheung T (1980) Computational comparison of eight methods for the maximum network flow problem. ACM Transactions on Mathematical Software 6/1:1–16Google Scholar
  3. Dinic EA (1970) Algorithm for solution of a problem of maximum flow in a network with power estimation. Soviet Mathematics Doklady 11/5:1277–1280Google Scholar
  4. Ford LR JR, Fulkerson DR (1956) Maximal flow through a network. Canadian Journal of Mathematics 8/3:399–404Google Scholar
  5. Glover F, Klingman D, Mote J, Whitman D (1979) Comprehensive computer evaluation for the maximum flow problem. Management Science Report 79-1, University of Colorado, BoulderGoogle Scholar
  6. Goldberg AV, Tarjan RE (1986) A new approach to the maximum flow problem. Proceedings 18th Annual ACM Symposium on Theory of Computing, pp 136–146Google Scholar
  7. Goldfarb D, Grigoriadis MD (1988) A computational comparison of the dinic and network simplex methods for maximum flow. Annals of Operations Research 13/83–123Google Scholar
  8. Imai H (1983) On the practical efficiency of various maximum flow algorithms. Journal of the Operations Society of Japan 26:61–82Google Scholar
  9. Karzanov AV (1974) Determining the maximal flow in a network by the methods of preflows. Soviet Mathematics Doklady 15/2:434–437Google Scholar
  10. Klingman D, Napier A, Stutz J (1974) Netgen: a program for generating large scale capacitated assignment, transportation and minimum cost flow network problems. Management Science 20: 814–821Google Scholar
  11. Köppen E (1980) Numerische Untersuchungen zum maximalen Flußproblem. Diplomarbeit, Universität zu KölnGoogle Scholar
  12. Meier W (1987) Neue Ansätze zur Bestimmung maximaler Flüsse in Netzwerken. Diplomarbeit, Universität BayreuthGoogle Scholar
  13. Sleator DD, Tarjan RE (1981) A data structure for dynamic trees. Proceedings of the 13th Annual ACM Symposium on Theory of Computing, Milwaukee, Wisconsin, pp 114–122Google Scholar

Copyright information

© Physica-Verlag 1989

Authors and Affiliations

  • U. Derigs
    • 1
  • W. Meier
    • 1
  1. 1.Lehrstuhl für Betriebsinformatik und Operations ResearchUniversität BayreuthBayreuth

Personalised recommendations