Maximal Flow Through A Network
Maximal Flow Through A Network
L E M M A 1. S is a disconnecting set.
contain chains Ci", C 2 " joining a and b, and another maximal flow can be
obtained from/ as follows. Reduce the C\ and C2 components of / each by k2,
and increase each of the C\" and C 2 " components by &2. This unsaturates
the arc aj} contradicting its definition as an element of S. On the other hand,
if (Ci,fei),(C2, &2) were members of distinct maximal flows/i,/2, consideration
°f / = l(fi + / 2 ) brings us back to the former case. Hence, the arcs of S
have a definite orientation assigned to them by maximal flows. We refer to
that vertex of an arc a £ S which occurs first in a positive chain flow of a
maximal flow as the left vertex of a.
Now define a left arc of 5 as follows: an arc a of 5 is a left arc if and only
if there is a maximal flow / and a chain «i, a2, . . . , ak (possibly null) joining
a and the left vertex of a with no a{ saturated b y / . Let L be the set of left
arcs of S.
LEMMA 2. L is a disconnecting set.
Given an arbitrary chain a\{a ai), a 2 (aia 2 ), . . . , o:m(aw_i b) joining a and &,
it must intersect 5 by Lemma 1. Let at(at-i, at) be the first a{ ^ S. Then for
each at, i < t, there is a maximal flow ft in which at is unsaturated. The
average of these flows provides a maximal flow / in which ai, a2, . . . , o^_i
are unsaturated. It remains to show that this chain joins a to the left vertex
of <xu i.e., at-\ is the left vertex of at. Suppose not. Then the maximal flow
/ contains a chain flow
[]8i(a6i), 02(&i, 62), • • • , 0r(&r-ii b);k], k > 0, ps = au 6s_i = au bs = at-i.
Let the amount of unsaturation in / of at (i = 1, . . . , t — 1), be ki > 0.
Now alter / as follows: decrease the flow along the chain £1, /32, . . . , f3r by
min [&, &i] > 0 and increase the flow along the chain contained in
0£i, CX2, . . . , « M » £s+l» • • • , Pr
by this amount. The result is a maximal flow in which at is unsaturated, a
contradiction. Hence at £ L.
LEMMA 3. No positive chain flow of a maximal flow can contain more than
one arc of L.
Assume the contrary, that is, there is a maximal flow /1 containing a chain
flow
[0i(a&i), 0 2 ( W , • • • , 0r(br-u b);k], k > 0,
with arcs (3U Pj G £> £* occurring before pjt say, in the chain. L e t / 2 be that
maximal flow for which there is an unsaturated chain
ai(aai), a 2 (ai, a 2 ), . . . , a s (a s _i, bj-i)
from a to the left vertex of fij. Consider / = J ( / i + / 2 ) . This maximal flow
contains the chain flow [pi, /32, • • • , Pr\ k'] with ^' > \k, and each a t ( i = 1,
. . . , s) is unsaturated by kt > 0 in / . Again a l t e r / : decrease the flow along
]8i, 02, . . . , j3r by min [&', &*]>() and increase the flow along the chain con-
tained in au «2, . . . , «s, 0;, . . . , 0 r by the same amount, obtaining a maximal
flow in which 0* is unsaturated, a contradiction.
Now to prove the theorem it sufflces only to remark that the value of every
flow is no greater than v(D) where D is any disconnecting set; and on the other
hand we see from Lemma 3 and the definition of S that in adding the capacities
of arcs of L we have counted each chain flow of a maximal flow just once.
Since by Lemma 2 L is a disconnecting set, we have the reverse inequality.
Thus L is a minimal cut and the value of a maximal flow is v{L).
We shall refer to the value of a maximal flow through a network N as the
capacity of N (cap (N)). Then note the following corollary of the minimal cut
theorem.
COROLLARY. Let A be a collection of arcs of a network N which meets each cut
of N in just one arc. If Nr is a network obtained from N by adding k to the capacity
of each arc of A, then cap (Nf) = cap (N) + k.
It is worth pointing out that the minimal cut theorem is not true for net-
works with several sources and corresponding sinks, where shipment is re-
stricted to be from a source to its sink. For example, in the network (Fig. 1)
with shipment from a* to £* and capacities as indicated, the value of a minimal
disconnecting set (i.e., a set of arcs meeting all chains joining sources and
corresponding sinks) is 4, but the value of a maximal flow is 3.
2X \ 2
a, , o 3 " b, ,a 2
Fig. 1
graph (2; 3). (For convenience, we suppose there is no arc in G joining a and
b.) The importance of a&-planar networks lies in the following theorem.
Proof. We may assume, without loss of generality, that the arc db is part
of the boundary of the outside region, and that G lies in a vertical strip with a
located on the left bounding line of the strip, b on the right. Let T be the
chain joining a and b which is top-most in N. T has the desired property,
as we now show. Suppose not. Then there is a cut D, at least two arcs of which
are in T. Let these be a\ and a2l with a\ occurring before a2 in following T
from a to b. Since D is a cut, there is a chain G joining a and b which meets
D in a\ only. Similarly there is a chain C2 meeting D in a2 only. Let C2 be
that part of G joining a to an end point of a2. It follows from the definition
of T that G and C2 must intersect. But now, starting at a, follow C2 to its
last intersection with G, then G to b. We thus have a chain from a to b not
meeting D, contradicting the fact that D is a cut.
Symmetrically, of course, the bottom-most chain of N has the same
property.
Notice that this theorem is not valid for networks which are not a^-planar.
A simple example showing this is provided by the "gas, water, electricity"
graph (Fig. 2), in which every chain joining a and b meets some cut in three
arcs.
Fig. 2
before. Eventually, the graph disconnects, and a maximal flow has been
constructed.
REFERENCES
Rand Corporation,
Santi Monica, California