Skip to main content

Flow networks and maximum flow in WACE Mathematics Applications Unit 4

Syllabus dot point

“Model flow in a directed network, find the maximum flow, and use the maximum-flow minimum-cut relationship.”

WACEMathematics ApplicationsUnit 48 min read

Quick answer

A flow network is a directed graph where each edge has a capacity (the most it can carry) and flow runs from a source to a sink. The maximum flow is the greatest amount that can be pushed from source to sink. A cut is a division of the vertices that separates source from sink; its capacity is the sum of the forward edges crossing it. By the maximum-flow minimum-cut theorem, the maximum flow equals the capacity of the smallest cut.

Jump to a section
  1. What this dot point is asking
  2. Flow networks
  3. Cuts
  4. The maximum-flow minimum-cut theorem
  5. Finding the minimum cut systematically
  6. Checking a proposed flow
  7. Exam-style questions

What this dot point is asking

You must model flow in a directed network, find the maximum flow, identify cuts, and apply the maximum-flow minimum-cut theorem.

Flow networks

A flow network carries a quantity (water, traffic, data) along directed edges, each with a maximum capacity. Flow enters at the source and leaves at the sink.

Flow rules

The flow along any edge cannot exceed its capacity. At every vertex except the source and sink, the total flow in equals the total flow out (conservation of flow). The value of a flow is the total leaving the source, which equals the total arriving at the sink.

Cuts

A cut partitions the vertices into two groups, one containing the source and the other the sink. The capacity of a cut is the sum of the capacities of the edges directed from the source side to the sink side (forward edges only; backward edges are ignored).

Every cut is an upper bound on the flow

Because a cut separates source from sink, all the flow must cross it on forward edges. So the flow can never exceed the capacity of any cut, and in particular it cannot exceed the smallest cut. This is why finding the minimum cut finds the maximum flow.

The maximum-flow minimum-cut theorem

Maximum-flow minimum-cut theorem

The maximum flow from the source to the sink equals the capacity of the minimum cut (the cut with the smallest total forward capacity).

To find the maximum flow by hand: identify several cuts, compute each cut's forward capacity, and the smallest of these is the maximum flow. The edge or edges forming the minimum cut are the bottleneck that limits the network.

Worked example

Finding the maximum flow

Traffic flows from SS to TT with capacities S→A=7S\to A = 7, S→B=5S\to B = 5, A→T=4A\to T = 4, A→B=3A\to B = 3, B→T=8B\to T = 8.

Step 1: Identify a systematic set of cuts to evaluate.

A cut partitions all vertices into a group containing SS and a group containing TT; its capacity is the total of only the forward edges crossing from the source side to the sink side. We try three natural cuts to bracket the maximum flow: one near the source, one near the sink, and one isolating an intermediate vertex.

Step 2: Compute the capacity of each candidate cut.

The cut separating {S}\{S\} from {A,B,T}\{A, B, T\} contains the edges S→A=7S\to A = 7 and S→B=5S\to B = 5, giving a capacity of 7+5=127 + 5 = 12. The cut separating {S,A,B}\{S, A, B\} from {T}\{T\} contains the edges A→T=4A\to T = 4 and B→T=8B\to T = 8, giving a capacity of 4+8=124 + 8 = 12. The cut placing AA on the sink side with {S,B}\{S, B\} on the source side contains S→A=7S\to A = 7 and B→T=8B\to T = 8, giving a capacity of 7+8=157 + 8 = 15.

Step 3: Identify the minimum cut.

The smallest capacity found across all candidate cuts is 1212, achieved by both the source-side cut and the sink-side cut. No other partition produces a smaller value, so the minimum cut has capacity 1212.

Step 4: Apply the theorem to state the maximum flow and verify it.

By the maximum-flow minimum-cut theorem, the maximum flow from SS to TT equals the minimum cut capacity, which is 1212 units. We can verify this by constructing a valid flow: route 77 units through AA (with 44 continuing to TT and 33 crossing to BB) and 55 units directly from SS to BB. Then B→TB\to T carries 3+5=83 + 5 = 8 and A→TA\to T carries 44, totalling 1212 units into TT, confirming that the capacity bound is achievable.

Finding the minimum cut systematically

For the small networks in this course, list the natural cuts and compute each one's forward capacity, then take the smallest. A reliable set of cuts to try is: the edges leaving the source, the edges entering the sink, and cuts that isolate each intermediate vertex on one side. The smallest of these forward-capacity totals is the minimum cut, and by the theorem it equals the maximum flow. The edges crossing that minimum cut are the bottleneck, and increasing only those capacities is the way to raise the maximum flow.

Checking a proposed flow

To confirm a flow is valid: check no edge exceeds its capacity, that flow is conserved at every intermediate vertex, and that the value out of the source equals the value into the sink. To confirm it is maximum, find a cut whose capacity equals the flow value; matching them proves optimality by the theorem.

Common errors
Counting backward edges in a cut
Only edges directed from the source side to the sink side contribute to a cut's capacity.
Taking the maximum cut instead of the minimum
The maximum flow equals the minimum cut; the largest cut is not the answer.
Ignoring flow conservation
Flow in must equal flow out at every vertex except the source and sink.
Stopping at the source capacity
The total leaving the source may exceed what later edges can carry; the bottleneck (minimum cut) sets the true maximum.

Exam-style questions

Questions in the style of SCSA exam questions on this dot point, each with a worked answer. They are written by ExamExplained unless tagged "Past paper"; the year shows the paper a question is modelled on.

WACE 2022-style7 marks
Water flows from source SS to sink TT. Pipe capacities (litres/min) are S→A=10S\to A = 10, S→B=8S\to B = 8, A→C=6A\to C = 6, A→B=3A\to B = 3, B→C=9B\to C = 9, C→T=12C\to T = 12. (a) Find the capacity of the cut separating {S,A,B}\{S, A, B\} from {C,T}\{C, T\}. (b) State the maximum flow from SS to TT and justify it.
Show worked answer →

A cut's capacity sums the forward edges crossing it.

(a) Edges crossing from {S,A,B}\{S, A, B\} to {C,T}\{C, T\} are A→C=6A\to C = 6 and B→C=9B\to C = 9, so the cut capacity is 6+9=156 + 9 = 15 litres/min. (3 marks)

(b) Test the cut at TT: only C→T=12C\to T = 12 enters TT, giving a cut capacity of 1212. The flow out of SS is at most 10+8=1810 + 8 = 18, but the bottleneck C→T=12C\to T = 12 limits the flow. The minimum cut is 1212, so by the maximum-flow minimum-cut theorem the maximum flow is 1212 litres/min. (4 marks)

Markers reward summing the forward edges of each cut and identifying the minimum cut as the maximum flow.

WACE 2024-style4 marks
State the maximum-flow minimum-cut theorem and explain why a cut gives an upper bound on the flow through a network.
Show worked answer →

The theorem equates the largest flow with the smallest cut.

The maximum-flow minimum-cut theorem states that the maximum flow from source to sink equals the capacity of the minimum cut (the cut with the smallest total forward capacity). (2 marks)

A cut separates the source from the sink, so every unit of flow must cross it on some forward edge. The total flow can therefore never exceed the sum of the forward capacities of the cut, making each cut an upper bound; the smallest such bound is the maximum flow. (2 marks)

Markers reward stating the theorem and the "all flow must cross the cut" upper-bound argument.

Practise this

Sources & how we know this

ExamExplained