the max-flow min-cut theorem - georgia institute of technologypeople.math.gatech.edu › ~thomas ›...

7
1 The max-flow min-cut theorem A directed graph or digraph is a pair ,, where is a finite set and ⊆. A network is a quadruple ,,,, where is a digraph, ,∈ are distinct, and :→0,∞. s … source t … sink c … capacity function Example

Upload: others

Post on 25-Jun-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The max-flow min-cut theorem - Georgia Institute of Technologypeople.math.gatech.edu › ~thomas › TEACH › 6014 › lecture4.pdf · (Max-flow min-cut theorem, Ford & Fulkerson)

1

The max-flow min-cut theorem

A directed graph or digraph is a pair � � ��, ��, where � is a

finite set and � ⊆ � �.

A network is a quadruple � � ��, �, , ��, where � is a digraph,

�, ∈ ���� are distinct, and �: ���� → �0,∞�. s … source t … sink c … capacity function

Example

Page 2: The max-flow min-cut theorem - Georgia Institute of Technologypeople.math.gatech.edu › ~thomas › TEACH › 6014 › lecture4.pdf · (Max-flow min-cut theorem, Ford & Fulkerson)

2

Notation. For � ⊆ ���� ����� ≔ �� ∈ ����: �has tail in�,head in���� � �� ����� ≔ �� ∈ ����: �has head in�,tail in���� � ��

���� �� � ��� �, ���� �� � ��� �. If !: ���� → ", then

!���� ≔ # !���,$∈%&�'�

!���� ≔ # !���$∈%(�'�

Example

Page 3: The max-flow min-cut theorem - Georgia Institute of Technologypeople.math.gatech.edu › ~thomas › TEACH › 6014 › lecture4.pdf · (Max-flow min-cut theorem, Ford & Fulkerson)

3

A flow in � is a mapping !: ���� → R such that

(i) 0 * !��� * ���� ∀� ∈ ���� (capacity constraints)

(ii) !�� � � !�� � ∀ ∈ ���� � ��, � (conservation conditions)

Example

Page 4: The max-flow min-cut theorem - Georgia Institute of Technologypeople.math.gatech.edu › ~thomas › TEACH › 6014 › lecture4.pdf · (Max-flow min-cut theorem, Ford & Fulkerson)

4

Lemma. If ! is a flow in a network � � ��, �, , �� and � ⊆ ���� with � ∈ �, ∉ �, then

!���� � !���� � !���� � !����

Definition. !���� � !���� is the value of !, denoted by val�!�. Proof. !�� � � !�� � ∀ ∈ ���� � ��, �. Sum over all ∈ � � ���

!���� � !��, �0� + !��, �� + # !���$2345672

$894:8'��4�

� !���� � !��0 , �� + !��, �� + # !���$2345672

$894:8'��4�

!��, �0� + !��, �� � !����, !��0 , �� + !��, �� � !����

s

X

Page 5: The max-flow min-cut theorem - Georgia Institute of Technologypeople.math.gatech.edu › ~thomas › TEACH › 6014 › lecture4.pdf · (Max-flow min-cut theorem, Ford & Fulkerson)

5

Corollary. If ! is a flow in a network � � ��, �, , ��, then

!���� � !���� � !�� � � !�� � Proof. Apply previous lemma to � � ���� � � �. □

A cut in a network � is a set of edges of the form ����� for some

set � ⊆ ���� with � ∈ �, ∉ �. The capacity of a cut < is

cap�<� ≔ #����$∈?

If < � �����, then cap�<� � �����.

Corollary. val�!� * cap�<� for every flow ! and every cut < in

�.

Proof. Let < � �����. val�!� � !���� � !���� � !���� � !���� �

� # !���$∈%&�'�

� # !���$∈%(�'�

* # ����$∈%&�'�

� cap�<�

Page 6: The max-flow min-cut theorem - Georgia Institute of Technologypeople.math.gatech.edu › ~thomas › TEACH › 6014 › lecture4.pdf · (Max-flow min-cut theorem, Ford & Fulkerson)

6

Lemma. In any network, there exists a flow of maximum value.

Proof. Let � � ��, �, , �� be a network, and let

@ ≔ sup�val�!� ∶ !isaflowin�}.

There exists a sequence of flows !I, !J, … such that

LM�!8� ≥ @ � I8.

Let �I, �J, … , �O be the edges of �. The sequence �!8��I��8PIQ has

a convergent subsequence �!8��I��8∈RS. Let !��I� be the limit.

The sequence �!8��J��8∈RS has a convergent subsequence

�!8��J��8∈RT. Let !��J� be the limit. After U steps we construct a

flow !. Then ! is a flow of value @. □

Page 7: The max-flow min-cut theorem - Georgia Institute of Technologypeople.math.gatech.edu › ~thomas › TEACH › 6014 › lecture4.pdf · (Max-flow min-cut theorem, Ford & Fulkerson)

7

Theorem. (Max-flow min-cut theorem, Ford & Fulkerson) In any

network � there exists a flow !∗ and cut <∗ such that

val�!∗� � cap�<∗�. If the capacity function is integral (takes on integer values only),

then !∗ can be chosen integral.

Proof. Let � � ��, �, , ��, and let ! be a flow of maximum value.

By an augmenting path we mean a path W in the underlying

undirected multigraph such that

(i) � is an end of W

(ii) !��� X ���� for every “forward” edge � ∈ ��W� (iii) !��� Y 0 for every “backward” edge � ∈ ��W�