04.09.2013 Views

Algorithm Design

Algorithm Design

Algorithm Design

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

362<br />

Chapter 7 Network Flow<br />

remain compatible throughout the algorithm, (7.22) implies that f is a flow of<br />

maximum value. []<br />

Next we will consider the number of push and relabel operations. First<br />

we will prove a limit on the relabel operations, and this will help prove a<br />

limit on the maximum number of push operations possible. The algorithm<br />

never changes the label of s (as the source never has positive excess). Each<br />

other node v starts with h(v) = 0, and its label increases by 1 every time it<br />

changes. So we simply need to give a limit on how high a label can get. We<br />

only consider a node v for relabel when v has excess. The only source of flow<br />

in the network is the source s; hence, intuitively, the excess at v must have<br />

originated at s. The following consequence of this fact will be key to bounding<br />

the labels.<br />

(7.25) Let f be a preflotv. If the node v has excess, then there is a path in G[<br />

from v to the source s.<br />

Proof. Let A denote all the nodes u; such that there is a path from w ~ to s in<br />

the residual graph Gf, and let B = V-A. We need to show that all nodes with<br />

excess are in A.<br />

Notice that s ~ A. Further, no edges e = (x, y) leaving A can have positive<br />

flow, as an edge with f(e) > 0 would give rise to a reverse edge (y, x) in the<br />

residual graph, and then y would have been in A. Now consider the sum of<br />

excesses in the set B, and recall that each node in B has nonnegative excess,<br />

as s CB.<br />

0

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!