+ All Categories
Home > Documents > Max Flow Application: Precedence Relations

Max Flow Application: Precedence Relations

Date post: 03-Jan-2016
Category:
Upload: erasmus-karsten
View: 33 times
Download: 4 times
Share this document with a friend
Description:
Max Flow Application: Precedence Relations. Updated 4/2/08. Precedence Relations. Given a finite set of elements B we define a precedence relation as relation  between pairs of elements of S such that: i not  i for all i in B i  j implies j  i for all i , j in B - PowerPoint PPT Presentation
Popular Tags:
26
Max Flow Application: Precedence Relations Updated 4/2/08
Transcript
Page 1: Max Flow Application: Precedence Relations

Max Flow Application: Precedence Relations

Updated 4/2/08

Page 2: Max Flow Application: Precedence Relations

Precedence Relations

• Given a finite set of elements B we define a precedence relation as relation between pairs of elements of S such that:

1. i not i for all i in B2. i j implies j i for all i, j in B3. i j and j k implies i k for all i, j, k in

B

Slide 2

Page 3: Max Flow Application: Precedence Relations

Examples of Precedence Relations

1. Let B be the set of integers. The < relation is a precedence relation on B.

2. Let B be a set of jobs and let i j mean that job j cannot start until job i is complete.

Slide 3

Page 4: Max Flow Application: Precedence Relations

Network Representation of Precedence Relations

a

f

e

d

b

c

a e, a f, d e, d c, d b, f c

Slide 4

Page 5: Max Flow Application: Precedence Relations

Minimum Chain Covering Problem

• A chain i1, i2, …, ik is a sequence of elements in B such that i1 i2 … ik.

• The minimum chain covering problem is to find a minimum number of chains that collectively contain (cover) all the elements of B.

Slide 5

Page 6: Max Flow Application: Precedence Relations

Example: Aircraft Scheduling

• Given a set of flight legs that must be serviced, determine the minimum number of planes required.

• Example– Flight 1: SFO -> LAX– Flight 2: LAX -> DFW – Flight 3: OAK -> MSP– Flight 4: LAX -> CVG

Slide 6

Page 7: Max Flow Application: Precedence Relations

Aircraft Scheduling Example

F1

F3

F2

F4

Four-Chain Solution: {{F1},{F2},{F3},{F4}}

Three-Chain Solution: {{F1, F2},{F3},{F4}}

Three-Chain Solution: {{F1, F4},{F2},{F3}}

Slide 7

Page 8: Max Flow Application: Precedence Relations

Max Flow Formulation of Minimum Chain Covering Problem

a

f

e

d

b

c

a e, a f, d e, d c, d b, f c

Slide 8

Page 9: Max Flow Application: Precedence Relations

Max Flow Formulationa

b

c

d

e

f

a'

b'

c'

d'

e'

f'

s t

1

1

11

1

1 1

1

11

1

1

Slide 9

Page 10: Max Flow Application: Precedence Relations

Representing Chains with Flows

• If i j and elements i and j are consecutive elements in the same chain, then let xsi = xij' = xj't = 1

• If element i starts a chain, then let xi't = 0• If element i ends a chain, then let xsi = 0• If element i is itself a chain, then let xsi = xi't = 0• Example Covers

1. 6 chains: {{a}, {b}, {c}, {d}, {e}, {f}}2. 4 chains: {{a, f, c}, {b}, {d}, {e}}3. 3 chains: {{a, f, c}, {b}, {d, e}}

Slide 10

Page 11: Max Flow Application: Precedence Relations

Cover 1: Flow Representationa

b

c

d

e

f

a'

b'

c'

d'

e'

f'

s t

0

0

00

0

0 0

0

00

0

00

# chains = 6v = 0

Slide 11

Page 12: Max Flow Application: Precedence Relations

Cover 2: Flow Representationa

b

c

d

e

f

a'

b'

c'

d'

e'

f'

s t

1

0

00

0

1 1

101

0

0

1

0

# chains = 4v = 2

Slide 12

Page 13: Max Flow Application: Precedence Relations

Cover 3: Flow Representationa

b

c

d

e

f

a'

b'

c'

d'

e'

f'

s t

1

0

01

0

1 1

101

0

0

1

1

# chains = 3v = 3

1

Slide 13

Page 14: Max Flow Application: Precedence Relations

Finding Chains from a Feasible Flow

1. Chose i' such that the flow from i' to t = 0. Let k = 1. chain[k] = i.

2. If the flow from s to i = 0, then stop. {chain[1], chain[2], …, chain[k]} is a chain.

3. If the flow from s to i = 1 then find the unique j' such that the flow from i to j' = 1. Let k = k+1, chain[k] = j. Let i = j. Go to step 2.

Slide 14

Page 15: Max Flow Application: Precedence Relations

A Feasible Flow v = 2a

b

c

d

e

f

a'

b'

c'

d'

e'

f'

s t

1

0

00

0

1 1

101

0

0

1

0

Slide 15

Page 16: Max Flow Application: Precedence Relations

Finding a Chain

• Step 1: i' = a', k = 1, chain[1] = a

• Step 2: xsa=1

• Step 3: j' =f', k = 2, chain[2] = f, i = f

• Step 2: xsf = 1

• Step 3: j' =c', k = 3, chain[3] = c, i = c

• Step 2: xsc = 0.

• Chain: a, f, c

Slide 16

Page 17: Max Flow Application: Precedence Relations

Observation

• There is a one-to-one correspondence between feasible flows and chain coverings

• The number of chains in a cover plus the value of the flow is equal to the number of elements in the set– Cover 1: 6 + 0 = 6– Cover 2: 4 + 2 = 6– Cover 3: 3 + 3 = 6

• # chains + v = |B|• # chains = |B| - v• Since |B| is fixed, maximizing v minimizes the number

of chains

Slide 17

Page 18: Max Flow Application: Precedence Relations

Interpretation of Min Cuts

• Observe that S = {s, 1, 2, …, |B|}, T = N \{S} is a cut with finite capacity.

• Arcs of the form (i, j') cannot be in a minimum cut.

• If xsi = 0 in a maximum flow then

– Node i will be reachable from the source in the residual network

– Node j' will also be reachable from the source if i j

Slide 18

Page 19: Max Flow Application: Precedence Relations

Interpretation of Min Cuts

• Arcs of the form (s, i) and (i', t) each contribute 1 unit to u[S, T].

• Minimizing u[S, T] is equivalent to finding the largest subset A of B such that i can be in S and i' can be in T for all i in A

• Since the capacity of a minimum cut is finite, it follows that the set of elements in A mutually incomparable

Slide 19

Page 20: Max Flow Application: Precedence Relations

Maximum Flow v = 3a

b

c

d

e

f

a'

b'

c'

d'

e'

f'

s t

1

0

01

0

1 1

101

0

0

1

11

Slide 20

Page 21: Max Flow Application: Precedence Relations

Residual Networka

b

c

d

e

f

a'

b'

c'

d'

e'

f'

s t

1

Slide 21

Page 22: Max Flow Application: Precedence Relations

Residual Networka

b

c

d

e

f

a'

b'

c'

d'

e'

f'

s t

1

Slide 22

Page 23: Max Flow Application: Precedence Relations

Residual Networka

b

c

d

e

f

a'

b'

c'

d'

e'

f'

s t

1

Slide 23

Page 24: Max Flow Application: Precedence Relations

Residual Networka

b

c

d

e

f

a'

b'

c'

d'

e'

f'

s t

1

Slide 24

Page 25: Max Flow Application: Precedence Relations

Mutually Incomparable Elements

a

f

e

d

b

c

f is not e, e is not f, e is not b, b is not e, f is not b, b is not b

b, e, and f form an anti-chain

Slide 25

Page 26: Max Flow Application: Precedence Relations

Dilworth’s Theorem

• Given a set B and a precedence relation, the size of the largest anti-chain is equal to the size of the minimum chain covering

• Proof follows from the max-flow min-cut theorem

Slide 26


Recommended