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...
Gespeichert in:
Veröffentlicht in: | Journal of the ACM 1989-10, Vol.36 (4), p.873-886 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
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 |