Successive Shortest Path (SSP) Algorithm with Multipliers Birgit - - PowerPoint PPT Presentation

successive shortest path ssp algorithm with multipliers
SMART_READER_LITE
LIVE PREVIEW

Successive Shortest Path (SSP) Algorithm with Multipliers Birgit - - PowerPoint PPT Presentation

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic Successive Shortest Path (SSP) Algorithm with Multipliers Birgit Engels ZAIK University of Cologne 13th Combinatorial Optimization Workshop January 11th-17th,


slide-1
SLIDE 1

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

Successive Shortest Path (SSP) Algorithm with Multipliers

Birgit Engels

ZAIK University of Cologne

13th Combinatorial Optimization Workshop January 11th-17th, Aussois Motivated by a joint project of:

slide-2
SLIDE 2

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

A freight car disposition problem Complexity of integral flow with multipliers 1,2 Instances with fractional vs. halfintegral solutions A modified SSP algorithm Obtaining an integral solution

slide-3
SLIDE 3

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

basic problem formulation

input:

  • known supplies/demands of empty freight cars (103 − 104)

supply demand

slide-4
SLIDE 4

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

basic problem formulation

input:

  • known supplies/demands of empty freight cars (103 − 104)
  • both of different types at different locations and times

22, Berlin, Jan 11th, 10:00 10, Berlin, Jan 12th, 10:00 42, Munich, Jan 16th, 13:00 56, Cologne, Jan 13th, 18:00 22, Berlin, Jan 15th, 11:00 50, Munich, Jan 15th, 14:00 42, Munich, Jan 16th, 16:00 6, Cologne, Jan 17th, 18:00

slide-5
SLIDE 5

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

basic problem formulation

input:

  • known supplies/demands of empty freight cars (103 − 104)
  • both of different types at different locations and times
  • timetable (time constraints, costs)

22, Berlin, Jan 11th, 10:00 10, Berlin, Jan 12th, 10:00 42, Munich, Jan 16th, 13:00 56, Cologne, Jan 13th, 18:00 22, Berlin, Jan 15th, 11:00 50, Munich, Jan 15th, 14:00 42, Munich, Jan 16th, 16:00 6, Cologne, Jan 17th, 18:00

slide-6
SLIDE 6

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

basic problem formulation

input:

  • known supplies/demands of empty freight cars (103 − 104)
  • both of different types at different locations and times
  • timetable (time constraints, costs)
  • type subtitution rules (1:1,1:2)

22, Berlin, Jan 11th, 10:00 10, Berlin, Jan 12th, 10:00 42, Munich, Jan 16th, 13:00 56, Cologne, Jan 13th, 18:00 22, Berlin, Jan 15th, 11:00 50, Munich, Jan 15th, 14:00 42, Munich, Jan 16th, 16:00 6, Cologne, Jan 17th, 18:00

slide-7
SLIDE 7

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

basic problem formulation

input:

  • known supplies/demands of empty freight cars (103 − 104)
  • both of different types at different locations and times
  • timetable (time constraints, costs)
  • type subtitution rules (1:1,1:2)

22, Berlin, Jan 11th, 10:00 10, Berlin, Jan 12th, 10:00 42, Munich, Jan 16th, 13:00 56, Cologne, Jan 13th, 18:00 22, Berlin, Jan 15th, 11:00 50, Munich, Jan 15th, 14:00 42, Munich, Jan 16th, 16:00 6, Cologne, Jan 17th, 18:00

slide-8
SLIDE 8

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

basic problem formulation

input:

  • known supplies/demands of empty freight cars (103 − 104)
  • both of different types at different locations and times
  • timetable (time constraints, costs)
  • type subtitution rules (1:1,1:2)
  • side constraints (storage, priority, etc)

22, Berlin, Jan 11th, 10:00 10, Berlin, Jan 12th, 10:00 42, Munich, Jan 16th, 13:00 56, Cologne, Jan 13th, 18:00 22, Berlin, Jan 15th, 11:00 50, Munich, Jan 15th, 14:00 42, Munich, Jan 16th, 16:00 6, Cologne, Jan 17th, 18:00

slide-9
SLIDE 9

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

basic problem formulation (1)

  • utput: optimal disposition, i.e.
  • allocation of all supply to as much demand as possible

22, Berlin, Jan 11th, 10:00 10, Berlin, Jan 12th, 10:00 42, Munich, Jan 16th, 13:00 56, Cologne, Jan 13th, 18:00 22, Berlin, Jan 15th, 11:00 50, Munich, Jan 15th, 14:00 42, Munich, Jan 16th, 16:00 6, Cologne, Jan 17th, 18:00

slide-10
SLIDE 10

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

basic problem formulation (1)

  • utput: optimal disposition, i.e.
  • allocation of all supply to as much demand as possible
  • respecting all rules/constraints, integrality

22, Berlin, Jan 11th, 10:00 10, Berlin, Jan 12th, 10:00 42, Munich, Jan 16th, 13:00 56, Cologne, Jan 13th, 18:00 22, Berlin, Jan 15th, 11:00 50, Munich, Jan 15th, 14:00 42, Munich, Jan 16th, 16:00 6, Cologne, Jan 17th, 18:00

slide-11
SLIDE 11

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

basic problem formulation (1)

  • utput: optimal disposition, i.e.
  • allocation of all supply to as much demand as possible
  • respecting all rules/constraints, integrality
  • minimal costs

22, Berlin, Jan 11th, 10:00 10, Berlin, Jan 12th, 10:00 42, Munich, Jan 16th, 13:00 56, Cologne, Jan 13th, 18:00 22, Berlin, Jan 15th, 11:00 50, Munich, Jan 15th, 14:00 42, Munich, Jan 16th, 16:00 6, Cologne, Jan 17th, 18:00

slide-12
SLIDE 12

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

basic problem formulation (1)

  • utput: optimal disposition, i.e.
  • allocation of all supply to as much demand as possible
  • respecting all rules/constraints, integrality
  • minimal costs

disposition can ’almost’ be modelled as flow problem.

22, Berlin, Jan 11th, 10:00 10, Berlin, Jan 12th, 10:00 42, Munich, Jan 16th, 13:00 56, Cologne, Jan 13th, 18:00 22, Berlin, Jan 15th, 11:00 50, Munich, Jan 15th, 14:00 42, Munich, Jan 16th, 16:00 6, Cologne, Jan 17th, 18:00

slide-13
SLIDE 13

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

basic problem formulation (1)

  • utput: optimal disposition, i.e.
  • allocation of all supply to as much demand as possible
  • respecting all rules/constraints, integrality
  • minimal costs

disposition can ’almost’ be modelled as flow problem. But: some features cannot, e.g. 1:2 substitution

22, Berlin, Jan 11th, 10:00 10, Berlin, Jan 12th, 10:00 42, Munich, Jan 16th, 13:00 56, Cologne, Jan 13th, 18:00 22, Berlin, Jan 15th, 11:00 50, Munich, Jan 15th, 14:00 42, Munich, Jan 16th, 16:00 6, Cologne, Jan 17th, 18:00

slide-14
SLIDE 14

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

network model N = (V , A) with 1:1 substitution

1 n n supply nodes n + 1 n + m m demand nodes norm sink l storage nodes n + m + 1 n + m + l

}

}

k

} prio

sinks transit edges: time and type match between supply/demand model edges b(n) = sn b(1) = s1 b(n + 1) = 0 b(n + m + l) = 0 c

slide-15
SLIDE 15

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

network model N = (V , A) with 1:1 substitution

1 n n supply nodes n + 1 n + m m demand nodes norm sink l storage nodes n + m + 1 n + m + l

}

}

k

} prio

sinks transit edges: time and type match between supply/demand model edges b(n) = sn b(1) = s1 b(n + 1) = 0 b(n + m + l) = 0 c

  • Obtain disposition as solution of min-cost flow
  • n N = (V , A) in polynomial time (e.g. by SSP).
slide-16
SLIDE 16

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

network model N = (V , A) with 1:1 substitution

1 n n supply nodes n + 1 n + m m demand nodes norm sink l storage nodes n + m + 1 n + m + l

}

}

k

} prio

sinks transit edges: time and type match between supply/demand model edges b(n) = sn b(1) = s1 b(n + 1) = 0 b(n + m + l) = 0 c

  • Obtain disposition as solution of min-cost flow
  • n N = (V , A) in polynomial time (e.g. by SSP).
  • All input values integral

⇒ flow solution integral as demanded!

slide-17
SLIDE 17

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

1:2 substitution and flow multipliers

Definition (flow f (A) in N = (V , A))

  • ∀aij ∈ A : lij ≤ f (aij) ≤ uij
  • ∀vi ∈ V :

ali=(vl,vi)∈A f (ali) − aik=(vi ,vk)∈A f (aik) = b(vi)

slide-18
SLIDE 18

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

1:2 substitution and flow multipliers

Definition (flow f (A) in N = (V , A))

  • ∀aij ∈ A : lij ≤ f (aij) ≤ uij
  • ∀vi ∈ V :

ali=(vl,vi)∈A f (ali) − aik=(vi ,vk)∈A f (aik) = b(vi)

1:2 substitution ⇒ Use same model enriched by multipliers:

slide-19
SLIDE 19

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

1:2 substitution and flow multipliers

Definition (flow f (A) in N = (V , A))

  • ∀aij ∈ A : lij ≤ f (aij) ≤ uij
  • ∀vi ∈ V :

ali=(vl,vi)∈A f (ali) − aik=(vi ,vk)∈A f (aik) = b(vi)

1:2 substitution ⇒ Use same model enriched by multipliers:

Definition (flow fm(A) in N = (V , A) with multipliers)

  • ∀aij ∈ A : lij ≤ fm(aij) ≤ uij
  • ∀vi ∈ V :
  • ali=(vl ,vi)∈A µ(ali)fm(ali) −

aik=(vi,vk)∈A fm(aik) = b(vi)

slide-20
SLIDE 20

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

network model with 1:2 substitution

Example

v w b(v) = +1 b(w) = −2 µvw = 2 f(v, w) = 1

slide-21
SLIDE 21

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

network model with 1:2 substitution

Example

v w b(v) = +1 b(w) = −2 µvw = 2 f(v, w) = 1

Network N:

1 n n supply nodes n + 1 n + m m demand nodes norm sink l storage nodes n + m + 1 n + m + l

}

} } prio

sinks transit edges: time and type match between supply/demand model edges b(n) = sn b(1) = s1 b(n + 1) = 0 b(n + m + l) = 0 c k

µuv = 2

slide-22
SLIDE 22

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

disposition network

We can model all instances as:

Definition (disposition networks)

  • network N = (V = X ∪ Y , A) is bipartite digraph
  • ∀a ∈ A : µa ∈ {1, 2}
  • ∀a = (u, v) ∈ A with µ(a) = 2 : u ∈ X, v ∈ Y .
  • Every path from a supply to a sink has

either path multiplier 1 or 2.

Definition (path multiplier)

Let path πu1un = u1, u2, . . . , un, then µ(πu1un) =

n−1

  • i=1

µuiui+1

slide-23
SLIDE 23

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

complexity of integral flow

Theorem (S.Sahni,’74)

Integral maximum flow with multipliers is NP-hard.

Proof.

Reduction from subset sum, using general multipliers

slide-24
SLIDE 24

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

complexity of integral flow

Theorem (S.Sahni,’74)

Integral maximum flow with multipliers is NP-hard.

Proof.

Reduction from subset sum, using general multipliers Proof does not hold for multipliers 1 and 2. Problem easier?

slide-25
SLIDE 25

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

complexity of integral flow

Theorem (S.Sahni,’74)

Integral maximum flow with multipliers is NP-hard.

Proof.

Reduction from subset sum, using general multipliers Proof does not hold for multipliers 1 and 2. Problem easier? No, we can even proof:

Theorem

Integral maximum flow on disposition networks is NP-hard.

Proof.

Reduction from 3SAT by construction of disposition network.

slide-26
SLIDE 26

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

halfintegral and fractional solutions

  • Integral solution: hard to guarantee.
slide-27
SLIDE 27

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

halfintegral and fractional solutions

  • Integral solution: hard to guarantee.
  • Guarantee certain fractional solutions?
slide-28
SLIDE 28

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

halfintegral and fractional solutions

  • Integral solution: hard to guarantee.
  • Guarantee certain fractional solutions?
  • Theorem

Optimal solutions for disposition networks are halfintegral.

Proof.

  • Circulation: Extend network N to special circulation.
  • Induction: Flow increases only (half)integral on certain arcs.
slide-29
SLIDE 29

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

halfintegral and fractional solutions

  • Integral solution: hard to guarantee.
  • Guarantee certain fractional solutions?
  • Theorem

Optimal solutions for disposition networks are halfintegral.

Proof.

  • Circulation: Extend network N to special circulation.
  • Induction: Flow increases only (half)integral on certain arcs.
  • Not in general!
slide-30
SLIDE 30

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

halfintegral and fractional solutions

  • Integral solution: hard to guarantee.
  • Guarantee certain fractional solutions?
  • Theorem

Optimal solutions for disposition networks are halfintegral.

Proof.

  • Circulation: Extend network N to special circulation.
  • Induction: Flow increases only (half)integral on certain arcs.
  • Not in general!
  • We can construct other instances with 3n nodes and

1 2n

fractional solutions.

slide-31
SLIDE 31

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

motivation for modified SSP

We...

  • started with simple flow model
  • obtained disposition solution by integral

min-cost flow solution with SSP

  • introduced flow multipliers for 1:2 substitution
  • lost polynomially achievable integral solution
  • guaranteed halfintegral solution for disposition network
  • want to keep SSP application

(easy incorporation of other side constraints) ⇒ Modify SSP algorithm.

slide-32
SLIDE 32

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

  • riginal SSP

SSP

1:

Init.

2:

while (b(s) > 0) and (b(t) < 0) and (∃πst)

3:

Find shortest s-t-path πst in N′

4:

Augment max. poss. flow δ along πst

5:

Update res. network N′

6:

end while

slide-33
SLIDE 33

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

modifying original SSP

3:

Find shortest s-t-path πst in N′

slide-34
SLIDE 34

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

modifying original SSP

3:

Find shortest s-t-path πst in N′ With usual path costs c′(πuv) = n

i=2 c((i − 1)i):

s t a b µsa = 2 µat = 1

2

slide-35
SLIDE 35

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

modifying original SSP

3:

Find shortest s-t-path πst in N′ With usual path costs c′(πuv) = n

i=2 c((i − 1)i):

s t a b µsa = 2 µat = 1

2

⇒ Define new path costs with multipliers: c′(πuv) =

n

  • i=2

i−1

  • j=1

µj(j+1) · c((i − 1)i).

slide-36
SLIDE 36

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

modifying original SSP

3:

Find shortest s-t-path πst in N′ With usual path costs c′(πuv) = n

i=2 c((i − 1)i):

s t a b µsa = 2 µat = 1

2

⇒ Define new path costs with multipliers: c′(πuv) =

n

  • i=2

i−1

  • j=1

µj(j+1) · c((i − 1)i). Compute with Dijkstra: Multiplier µi = i−1

j=1 µj(j+1) for each node i.

slide-37
SLIDE 37

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

modifying original SSP (1)

4:

Augment max. poss. flow δ along πst

slide-38
SLIDE 38

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

modifying original SSP (1)

4:

Augment max. poss. flow δ along πst Usual: δ := min{b(s), b(t), mina=(uv)∈πstcapr(a)}

slide-39
SLIDE 39

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

modifying original SSP (1)

4:

Augment max. poss. flow δ along πst Usual: δ := min{b(s), b(t), mina=(uv)∈πstcapr(a)} Here: δm := min{b(s), −b(t) µt , mina=(uv)∈πst capr(a) µu }

slide-40
SLIDE 40

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

modifying original SSP (2)

5:

Update res. network N′

slide-41
SLIDE 41

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

modifying original SSP (2)

5:

Update res. network N′ In residual network N′

m for each residual arc a = (u, v):

  • capacity cap(¯

a) = f (a), cost c(¯ a) = −c(a), flow 0

  • µ¯

a = 1 µa

slide-42
SLIDE 42

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

multiplier SSP

mSSP 1: Init. 2: while (b(s) > 0) and (b(t) < 0) and (∃πst) 3: Find shortest multiplier s-t-path πst in N′

m

4: Augment max. poss. flow δm along πst 5: Update res. network N′

m

6: end while

slide-43
SLIDE 43

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

multiplier SSP

mSSP 1: Init. 2: while (b(s) > 0) and (b(t) < 0) and (∃πst) 3: Find shortest multiplier s-t-path πst in N′

m

4: Augment max. poss. flow δm along πst 5: Update res. network N′

m

6: end while

Correctness:

  • Analougously to SSP (reduced cost criterium)
  • Based on modified path and reduced costs
slide-44
SLIDE 44

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

multiplier SSP

mSSP 1: Init. 2: while (b(s) > 0) and (b(t) < 0) and (∃πst) 3: Find shortest multiplier s-t-path πst in N′

m

4: Augment max. poss. flow δm along πst 5: Update res. network N′

m

6: end while

Correctness:

  • Analougously to SSP (reduced cost criterium)
  • Based on modified path and reduced costs

Running time:

  • Generally depends on δm (lower bound?)
  • Disposition application: δm ∈ { 1

2, 1}

⇒ (pseudo)polynomial running time

slide-45
SLIDE 45

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

Obtaining an integral disposition solution

Apply simple rounding heuristic:

Rounding 1: while (∃ halfintegral flow f ) 3: Find cheapest f from s to t via u 4: if (f = f + 1

2 violates cap(u, t) by at most 1 2 )

5: Round f up and round most expensieve halfintegral s − t-flow f ′ down. 6: else 7: Round f down and round next cheapest halfintegral s − t-flow f ′ up. 8: end while

slide-46
SLIDE 46

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

Obtaining an integral disposition solution

Apply simple rounding heuristic:

Rounding 1: while (∃ halfintegral flow f ) 3: Find cheapest f from s to t via u 4: if (f = f + 1

2 violates cap(u, t) by at most 1 2 )

5: Round f up and round most expensieve halfintegral s − t-flow f ′ down. 6: else 7: Round f down and round next cheapest halfintegral s − t-flow f ′ up. 8: end while

Remark:

If no flow f ′ can be found in line

5 Decrease rest supply (initial integral supplies!). 7 Increase rest supply.

slide-47
SLIDE 47

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

quality of integral solution

The simple heuristic ...

  • applies to halfintegral solutions for disposition networks
  • ends (in polynomial time) with integral solution and no

capacities violated

  • increases total costs by factor of 2 in the worst case
slide-48
SLIDE 48

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

quality of integral solution

The simple heuristic ...

  • applies to halfintegral solutions for disposition networks
  • ends (in polynomial time) with integral solution and no

capacities violated

  • increases total costs by factor of 2 in the worst case

But:

Actual flow value of resulting solution can be decreased!

slide-49
SLIDE 49

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

quality of integral solution

The simple heuristic ...

  • applies to halfintegral solutions for disposition networks
  • ends (in polynomial time) with integral solution and no

capacities violated

  • increases total costs by factor of 2 in the worst case

But:

Actual flow value of resulting solution can be decreased!

Therefore:

We work on better heuristics...

slide-50
SLIDE 50

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

quality of integral solution

The simple heuristic ...

  • applies to halfintegral solutions for disposition networks
  • ends (in polynomial time) with integral solution and no

capacities violated

  • increases total costs by factor of 2 in the worst case

But:

Actual flow value of resulting solution can be decreased!

Therefore:

We work on better heuristics...

...and...

  • n running time results for the mSSP on general instances.
slide-51
SLIDE 51

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

Thank you for your attention!

slide-52
SLIDE 52

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

flow with general multipliers

Theorem (S.Sahni,’74)

Integral maximum flow with multipliers is NP-hard.

Reduction from subset sum:

Given an instance I = [S = {si, 1 ≤ i ≤ r}, M] of subset sum: Demand of −M at t can be satisfied by an integral flow ⇔ I is solvable (or vice versa).

s t n1 nr cap(s, n1) = 1 . . . 1 . . . ni s1 si sr cap(s, ni) = 1 cap(s, nr) = 1

slide-53
SLIDE 53

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

flow with multipliers 1 and 2

Theorem

Integral maximum flow with multipliers 1, 2 is NP-hard.

Proof.

Replace ni with subgraph N|ni with inflow 1, outflow si, only multipliers 1, 2 (binary encoding si).

s t n1 nr cap(s, n1) = 1 . . . 1 . . . ni s1 si sr cap(s, ni) = 1 cap(s, nr) = 1

N|ni

slide-54
SLIDE 54

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

subgraph N|ni

for si = 31:

2 b1 b2 b3 b4 b5 t 1 2 2 2 ni ni1 2 ni2 ni3 2 1 1 cap(ni1, bj) = 1 cap(ni1, ni2) = 1 cap(ni3, bj) = 1

} }

Amplification of one flow unit to zi units at nodes bj, 1 ≤ j ≤ zi. Amplification of each flow unit at bj to the number of units resembling the valency of bit j. Binary representation of si

slide-55
SLIDE 55

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

flow with multipliers 1 and 2

Theorem

Integral maximum flow in disposition networks is NP-hard.

Reduction:

Given a boolean formula α in CNF with n clauses and m variables (limited occurance!): Demands can be satisfied by an integral flow ⇔ α is satisfiable.

b(n1) = +1 n1 . . . nm n0

1

n1

1

n1

m

n0

m

b(nm) = +1 . . . nc1 ncn ssat srest µn1,n0

1 = 2

µn1,n1

1 = 2

µnk,n0

k = 2

µnk,n1

k = 2

capnc1,ssat = 1 capncn,ssat = 1 b(ssat) = −n b(srest) = −2m + n

slide-56
SLIDE 56

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

flow with multipliers 1 and 2

Theorem

Integral maximum flow in disposition networks is NP-hard.

Reduction:

Given a boolean formula α in CNF with n clauses and m variables (limited occurance!): Demands can be satisfied by an integral flow ⇔ α is satisfiable.

b(n1) = +1 n1 . . . nm n0

1

n1

1

n1

m

n0

m

b(nm) = +1 . . . nc1 ncn ssat srest µn1,n0

1 = 2

µn1,n1

1 = 2

µnk,n0

k = 2

µnk,n1

k = 2

capnc1,ssat = 1 capncn,ssat = 1 b(ssat) = −n b(srest) = −2m + n

slide-57
SLIDE 57

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

flow with multipliers 1 and 2

Theorem

Integral maximum flow in disposition networks is NP-hard.

Reduction:

Given a boolean formula α in CNF with n clauses and m variables (limited occurance!): Demands can be satisfied by an integral flow with cost 2m · M − n ⇔ α is satisfiable.

b(n1) = +1 n1 . . . nm n0

1

n1

1

n1

m

n0

m

b(nm) = +1 . . . nc1 ncn ssat srest µn1,n0

1 = 2

µn1,n1

1 = 2

µnk,n0

k = 2

µnk,n1

k = 2

capnc1,ssat = 1 capncn,ssat = 1 b(ssat) = −n b(srest) = −2m + n costnc1,srest = M costncm,srest = M

slide-58
SLIDE 58

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

fractional solution

c = 1, µ = 2 c = 1, µ = 1 +1 −1 c = 1, µ = 2 +1 −1 c = 1, µ = 1 c = 1, µ = 2 +1 −1 +1 −1 +1 −1 +1 −1 f = 1

2

f = 1

2

f = 1

4

f = 3

4

f = 1

8

c = 1, µ = 2 −2n + 1 −1 c = 1, µ = 2 +1 c = 1, µ = 2 −2n − 1 −1 f = 1 − 1

2n

f = 1

2n

f = 2n−1 − 1

2

l = 1 l = 2 l = n

3

l = 3 +1

slide-59
SLIDE 59

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

halfintegral solution

Theorem

Optimal solutions for disposition networks are halfintegral.

slide-60
SLIDE 60

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

halfintegral solution

Theorem

Optimal solutions for disposition networks are halfintegral.

Proof.

Extend network N to circulation with only unit gain cycles.

1 1 1 2 2 s t 1 1 1 1 1 1 2 2 s1 t 1 1 1 s2 1 1 1 1 2 2 s1 t 1 1 1 s2 1 1 t1

1 2

t2

slide-61
SLIDE 61

disposition complexity fractional vs. halfintegral mSSP algorithm heuristic

halfintegral solution

Theorem

Optimal solutions for disposition networks are halfintegral.

Proof.

Induction: Flow increases only halfintegral on red-green and green-green arcs and integral on red-red and green-red arcs.

1 1 1 2 2 s t 1 1 1 1 1 1 2 2 s1 t 1 1 1 s2 1 1 1 1 2 2 s1 t 1 1 1 s2 1 1 t1

1 2

t2