In combinatorial optimization, network flow problems are a class of computational problems in which the input is a flow network (a graph with numerical capacities on its edges), and the goal is to construct a flow, numerical values on each edge that respect the capacity constraints and that have incoming flow equal to outgoing flow at all vertices except for certain designated terminals.[1]

Specific types of network flow problems include:

  • The maximum flow problem, in which the goal is to maximize the total amount of flow out of the source terminals and into the sink terminals[1]: 166–206 
  • The minimum-cost flow problem, in which the edges have costs as well as capacities and the goal is to achieve a given amount of flow (or a maximum flow) that has the minimum possible cost[1]: 294–356 
  • The multi-commodity flow problem, in which one must construct multiple flows for different commodities whose total flow amounts together respect the capacities[1]: 649–694 
  • Nowhere-zero flow, a type of flow studied in combinatorics in which the flow amounts are restricted to a finite set of nonzero values

The max-flow min-cut theorem equates the value of a maximum flow to the value of a minimum cut, a partition of the vertices of the flow network that minimizes the total capacity of edges crossing from one side of the partition to the other. Approximate max-flow min-cut theorems provide an extension of this result to multi-commodity flow problems. The Gomory–Hu tree of an undirected flow network provides a concise representation of all minimum cuts between different pairs of terminal vertices.

Algorithms for constructing flows include

Otherwise the problem can be formulated as a more conventional linear program or similar and solved using a general purpose optimization solver.

Applications

Network flow problems have diverse applications across computer science, materials science, geophysics, and sports management.

Sports elimination

In sports analytics, maximum flow algorithms are used to solve the baseball elimination problem, first formulated by Schwartz in 1966. The problem determines whether a team in a sports league is mathematically eliminated from winning their division based on current standings and remaining matchups. This is modeled as a network flow where game matchups represent sources of flow, and teams represent sinks; if the maximum flow does not fully saturate the edges leaving the game nodes, the team is eliminated.[2] Kevin D. Wayne expanded on this by proving a "threshold property" of the standings, showing that the parametric maximum flow algorithm can identify all eliminated teams in a league in the same asymptotic time complexity as finding a single maximum flow.[3]

Fracture mechanics

In materials science and computational solid mechanics, the path of a crack or rupture propagating through a heterogeneous material can be modeled using the duality between continuous maximum flow and minimum cuts. Building on the continuous max-flow/min-cut theorem established by mathematician Gilbert Strang in 1983,[4] the "path of least resistance" for a crack corresponds to a continuous minimum cut across the domain, where local material fracture toughness is represented as a spatially varying capacity. By solving the dual continuous maximum flow problem on a combinatorially consistent grid (such as using Fast Fourier Transform and Alternating Direction Method of Multipliers algorithms), researchers can compute the effective macroscopic crack energy and exact fracture paths without suffering from grid-orientation bias.[5]

Geodetic rupture mapping

In geophysics, network flow optimization is used to map 3D earthquake fault rupture geometries using satellite-based Interferometric Synthetic Aperture Radar (InSAR). Because InSAR phase data is wrapped within cyclic intervals of $[-\pi, \pi]$, converting it into continuous ground displacement requires phase unwrapping. The standard tool for this task, the Statistical-Cost, Network-Flow Algorithm for Phase Unwrapping (SNAPHU), formulates 2D phase unwrapping as a minimum-cost network flow problem on a grid.[6] The resulting continuous deformation maps are then inverted using elastic dislocation models to reconstruct the fault slip distribution and active rupture geometry.

References

  1. ^ a b c d e f g Ahuja, Ravindra K.; Magnanti, Thomas L.; Orlin, James B. (1993). Network Flows: Theory, Algorithms, and Applications. Prentice Hall.
  2. ^ Schwartz, B. (1966). "Possible Winners in Relating Teams and Sports". Operations Research. 14 (2): 221–229. doi:10.1287/opre.14.2.221. Retrieved 2026-09-29.
  3. ^ Wayne, Kevin D. (2001). "A New Property and a Faster Algorithm for Baseball Elimination". SIAM Journal on Discrete Mathematics. 14 (2): 223–229. doi:10.1137/S089548019834241X. Retrieved 2026-09-29.
  4. ^ Strang, Gilbert (1983). "Maximal flow through a domain". Mathematical Programming. 26 (2): 123–143. doi:10.1007/BF01581898. Retrieved 2026-09-29.
  5. ^ Ernesti, Felix; Schneider, Matti (2021). "A fast Fourier transform based method for computing the effective crack energy of a heterogeneous material on a combinatorially consistent grid". International Journal for Numerical Methods in Engineering. 122 (21): 6137–6169. doi:10.1002/nme.6787. Retrieved 2026-09-29.
  6. ^ Chen, Curtis W.; Zebker, Howard A. (2001). "Two-dimensional phase unwrapping with use of statistical models for cost functions in nonlinear optimization". Journal of the Optical Society of America A. 18 (2): 338–351. doi:10.1364/JOSAA.18.000338. Retrieved 2026-09-29.