Finding minimum-cost circulations by canceling negative cycles

A classical algorithm for finding a minimum-cost circulation consists of repeatedly finding a residual cycle of negative cost and canceling it by pushing enough flow around the cycle to saturate an arc. We show that a judicious choice of cycles for canceling leads to a polynomial bound on the number...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Journal of the ACM 1989-10, Vol.36 (4), p.873-886
Hauptverfasser: GOLDBERG, A. V, TARJAN, R. E
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:A classical algorithm for finding a minimum-cost circulation consists of repeatedly finding a residual cycle of negative cost and canceling it by pushing enough flow around the cycle to saturate an arc. We show that a judicious choice of cycles for canceling leads to a polynomial bound on the number of iterations in this algorithm. This gives a very simple strongly polynomial algorithm that uses no scaling. A variant of the algorithm that uses dynamic trees runs in Ο( nm (log n )min{log( nC ), m log n }) time on a network of n vertices, m arcs, and arc costs of maximum absolute value C . This bound is comparable to those of the fastest previously known algorithms.
ISSN:0004-5411
1557-735X
DOI:10.1145/76359.76368