ConceptComplete

Applications of Network Flows

Network flow theory unifies many combinatorial optimization problems. Matchings, edge-disjoint paths, and connectivity problems all reduce to flow computations.


Menger's Theorem and Connectivity

Definition7.3Menger's Theorem

The maximum number of edge-disjoint ss-tt paths equals the minimum number of edges in an ss-tt edge cut (minimum set of edges whose removal disconnects ss from tt). This follows from max-flow min-cut with unit capacities. The vertex version: the maximum number of internally vertex-disjoint ss-tt paths equals the minimum vertex cut size (for non-adjacent s,ts, t). This is proved by "splitting" each vertex vv into vin,voutv_{\text{in}}, v_{\text{out}} with a unit-capacity edge between them.

ExampleBipartite Matching via Flow

Maximum bipartite matching reduces to max-flow: given G=(XβˆͺY,E)G = (X \cup Y, E), create a network with source ss connected to all x∈Xx \in X (capacity 1), edges from XX to YY (capacity 1), and all y∈Yy \in Y connected to sink tt (capacity 1). The max flow equals the maximum matching size. Since all capacities are integers, the max flow is an integer flow, corresponding to a matching. This reduction proves KΓΆnig's theorem from max-flow min-cut.


Minimum Cost Flow

Definition7.4Minimum Cost Flow

In minimum cost flow, each edge has capacity c(e)c(e) and cost a(e)a(e). The goal: send dd units of flow from ss to tt minimizing total cost βˆ‘ea(e)f(e)\sum_e a(e)f(e). The successive shortest paths algorithm finds minimum cost augmenting paths (using Dijkstra or Bellman-Ford in the residual graph with reduced costs). The cycle-canceling algorithm starts with any feasible flow and eliminates negative-cost cycles. Both run in polynomial time.

RemarkLP Duality for Flows

Network flow problems have totally unimodular constraint matrices, guaranteeing integer optimal solutions for integer data. The LP dual of max-flow is min-cut; the dual of min-cost flow involves potentials (distances) at vertices. This structure makes network flow problems efficiently solvable despite being special cases of linear programming.


Flow Decomposition

Definition7.5Flow Decomposition Theorem

Any feasible flow ff in a network can be decomposed into at most ∣E∣|E| path flows (from ss to tt) and cycle flows, each with positive value. The decomposition is not unique but always exists. This is useful for interpreting the combinatorial structure of an optimal flow: each path in the decomposition represents a "route" for transporting goods from source to sink.

ExampleBaseball Elimination

Baseball elimination: can team xx still finish first? Reduce to max-flow: create a node for each remaining game between other teams, with capacity = games remaining. Edges to team nodes split wins; team nodes connect to tt with capacity = maximum wins xx can achieve minus current wins. If max-flow saturates all game edges, elimination is not guaranteed; otherwise, xx is mathematically eliminated. This models a complex combinatorial problem as a single flow computation.