21.01.2013 Views

Lecture Notes in Computer Science 4917

Lecture Notes in Computer Science 4917

Lecture Notes in Computer Science 4917

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

Complement<strong>in</strong>g Miss<strong>in</strong>g and Inaccurate Profil<strong>in</strong>g 297<br />

an analogue argument. F<strong>in</strong>ally, we may <strong>in</strong>sert a new directed edge of cost 0 from the<br />

s<strong>in</strong>gle s<strong>in</strong>k t to the s<strong>in</strong>gle source s. This will turn any feasible flow to a circulation of<br />

the same cost. Thus we may assume that <strong>in</strong> fact S=T=∅.<br />

4.1 Construct<strong>in</strong>g the Fixup Graph<br />

= and its measured flow w(v) and w (e)<br />

for the vertices<br />

and edges respectively, as <strong>in</strong>put for the optimal flow fixup, we wish to create a new<br />

Given a graph G ( V , E)<br />

graph ' ( V ',<br />

E')<br />

G = with given m<strong>in</strong>imal and maximal capacity constra<strong>in</strong>ts (b, c) for<br />

each edge, here<strong>in</strong> the fixup graph. This transformation is formally def<strong>in</strong>ed below.<br />

Input:<br />

• G t = ( Vt<br />

, Et<br />

)<br />

transformation.<br />

denotes the orig<strong>in</strong>al graph after apply<strong>in</strong>g the vertex<br />

• w (e)<br />

denotes the <strong>in</strong>itial flow estimation for every edge t E e∈ (this is<br />

thoroughly expla<strong>in</strong>ed <strong>in</strong> section 5 under "sett<strong>in</strong>g the constants").<br />

• k (e)<br />

±<br />

denotes the negative/positive confidence constants on any t E e∈ (see<br />

section 3).<br />

• Let D ( v)<br />

≡ ( w(<br />

el<br />

) ) − ( w(<br />

ek<br />

) ) for every t V v ∈ .<br />

∑<br />

el∈out(<br />

v)<br />

∑<br />

ek∈<strong>in</strong>(<br />

v)<br />

Output:<br />

• G '= ( V ',<br />

E')<br />

the fixup graph<br />

• b( e'),<br />

c(<br />

e')<br />

m<strong>in</strong>imum/maximum capacities for flow on every edge e'∈ E'<br />

• k (e')<br />

positive confidence constant for any e'∈ E'<br />

(note that <strong>in</strong>fus<strong>in</strong>g negative<br />

flow is not possible so here we do not need a negative confidence constants)<br />

The output graph for the circulation problem is def<strong>in</strong>ed as follows:<br />

1. s'�new Vertex, t'�new Vertex<br />

2. b ( t',<br />

s'<br />

) ← 0,<br />

c(<br />

t',<br />

s'<br />

) ← ∞<br />

3. cp ( t',<br />

s'<br />

) ← 0<br />

4. Er ← φ, L ← φ<br />

5. foreach e∈ Et<br />

do:<br />

a. b ( e)<br />

← 0 , (e)<br />

← ∞<br />

c<br />

+<br />

, k'(<br />

e)<br />

← k ( e)<br />

6. foreach e = v,<br />

u ∈ Et<br />

such that u, v ∉ Et<br />

do:<br />

a. ← E ∪ u,<br />

v<br />

Er r<br />

b. k'( ( u,<br />

v ) ) ← k ( ( v,<br />

u ) ), b(<br />

u,<br />

v ) ← 0,<br />

c(<br />

u,<br />

v ) ← w(<br />

e)<br />

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

Saved successfully!

Ooh no, something went wrong!