An augmenting path is a source-to-sink graph path of positive capacities in the residual network. Its bottleneck is . Add to original flow on forward residual edges and subtract on backward residual edges. Each internal vertex still satisfies flow conservation, and the bottleneck guarantees every capacity constraint. The resulting feasible flow has strength of a flow . In the unit-capacity residual network example, , and the subtraction on is precisely what allows the value to rise from to .
An augmenting path maximizing the possible increase in flow, namely its smallest residual network edge capacity. If the remaining maximum flow is and the original undirected network has edges, a path has bottleneck at least . Otherwise the vertices reachable through arcs of capacity at least define a cut of capacity strictly less than , contradicting the max-flow min-cut theorem. Only one directed arc per original crossing edge contributes to that cut.
Starting from zero flow, a widest augmenting path increases the current flow by at least , where is its remaining optimality gap. Therefore . Integer capacities keep this gap integer, so a gap below one is zero. The method takes augmentations for , or uniformly ; zero maximum flow requires no augmentation.
The Ford-Fulkerson algorithm repeatedly augments a feasible flow along an augmenting path. When no such path remains, the source-reachable vertices in the residual network define a cut of capacity equal to the flow value, proving optimality by the max-flow min-cut theorem.
Starting from the zero flow with integer capacities, every residual capacity and every augmenting bottleneck is an integer. Each augmentation therefore preserves integer edge flows and raises the flow value by at least one. Since the value is bounded by the total capacity leaving the source, the algorithm terminates after finitely many augmentations with an integral maximum flow.
Articles by others on the same topic
There are currently no matching articles.