55
Introduction Analysis Minimum-Cost Flow Problem Smoothed Analysis Successive Shortest Path Algorithm Minimum-Cost Flow Network flow network: G =(V , E ) balance values: b : V Z costs: c : E R 0 capacities: u : E N 2 1 -1 -2 0 0 3/2 3/1 1/2 3/1 1/3 3/1 1/2 cost/capacity 2 / 17

Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Minimum-Cost Flow Network

flow network: G = (V ,E )balance values: b : V → Z

costs: c : E → R≥0

capacities: u : E → N

2

1

-1

-2

0

0

3/2 3/1

1/2 3/1

1/3

3/1 1/2

cost/capacity 2 / 17

Page 2: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Minimum-Cost Flow Problem

2

1

-1

-2

0

0

3/2 3/1

1/2 3/1

1/3

3/1 1/2

1

1

2

1

1

1

flow: f : E → R≥0

capacity constraints: ∀e ∈ E : f (e) ≤ u(e)Kirchhoff’s law: ∀v ∈ V : b(v) = out(v)− in(v)

3 / 17

Page 3: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Minimum-Cost Flow Problem

2

1

-1

-2

0

0

3/2 3/1

1/2 3/1

1/3

3/1 1/2

1

1

2

1

1

1

flow: f : E → R≥0

capacity constraints: ∀e ∈ E : f (e) ≤ u(e)Kirchhoff’s law: ∀v ∈ V : b(v) = out(v)− in(v)

Goal: minflow f

∑e∈E f (e) · c(e)

3 / 17

Page 4: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Minimum-Cost Flow Problem

2

1

-1

-2

0

0

3/2 3/1

1/2 3/1

1/3

3/1 1/2

2

1

21

1

flow: f : E → R≥0

capacity constraints: ∀e ∈ E : f (e) ≤ u(e)Kirchhoff’s law: ∀v ∈ V : b(v) = out(v)− in(v)

Goal: minflow f

∑e∈E f (e) · c(e)

3 / 17

Page 5: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Short History

Pseudo-Polynomial Algorithms:

Out-of-Kilter algorithm [Minty 60, Fulkerson 61]Cycle Canceling algorithmSuccessive Shortest Path algorithm

4 / 17

Page 6: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Short History

Pseudo-Polynomial Algorithms:

Out-of-Kilter algorithm [Minty 60, Fulkerson 61]Cycle Canceling algorithmSuccessive Shortest Path algorithm

Polynomial Time Algorithms:

Capacity Scaling algorithm [Edmonds and Karp 72]Cost Scaling algorithm

4 / 17

Page 7: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Short History

Pseudo-Polynomial Algorithms:

Out-of-Kilter algorithm [Minty 60, Fulkerson 61]Cycle Canceling algorithmSuccessive Shortest Path algorithm

Polynomial Time Algorithms:

Capacity Scaling algorithm [Edmonds and Karp 72]Cost Scaling algorithm

Strongly Polynomial Algorithms:

Tardos’ algorithm [Tardos 85]Minimum-Mean Cycle Canceling algorithmNetwork Simplex algorithmEnhanced Capacity Scaling algorithm [Orlin 93]

4 / 17

Page 8: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Theory vs. Practice

Theory Practice

Fastest algorithm:Enhanced Capacity Scaling

Fastest algorithm:Network Simplex

5 / 17

Page 9: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Theory vs. Practice

Theory Practice

Fastest algorithm:Enhanced Capacity Scaling

Fastest algorithm:Network Simplex

Successive Shortest Path:exponential in worst case

Minimum-Mean Cycle Canceling:strongly polynomial

Successive Shortest Path

much faster than

Minimum-Mean Cycle Canceling

5 / 17

Page 10: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Reason for Gap between Theory and Practice

Worst-case complexity is too pessimistic!

There are artificial worst-case inputs. Theseinputs, however, do not occur in practice.

Adversary

“I willtrick youralgo-rithm!”

6 / 17

Page 11: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Reason for Gap between Theory and Practice

Worst-case complexity is too pessimistic!

There are artificial worst-case inputs. Theseinputs, however, do not occur in practice.

This phenomenon occurs also for many otherproblems and algorithms.

Adversary

“I willtrick youralgo-rithm!”

6 / 17

Page 12: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Reason for Gap between Theory and Practice

Worst-case complexity is too pessimistic!

There are artificial worst-case inputs. Theseinputs, however, do not occur in practice.

This phenomenon occurs also for many otherproblems and algorithms.

Adversary

“I willtrick youralgo-rithm!”

Goal

Find a more realistic performance measure that is not just basedon the worst case.

6 / 17

Page 13: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Smoothed Analysis

Observation: In worst-case analysis, the adversary is too powerful.Idea: Let’s weaken him!

Input model:

Adversarial choice of flow network

Adversarial real arc capacities ue and node balance values bv

Adversarial densities fe : [0, 1] → [0, φ]

Arc costs ce independently drawn according to fe

7 / 17

Page 14: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Smoothed Analysis

Observation: In worst-case analysis, the adversary is too powerful.Idea: Let’s weaken him!

Input model:

Adversarial choice of flow network

Adversarial real arc capacities ue and node balance values bv

Adversarial densities fe : [0, 1] → [0, φ]

Arc costs ce independently drawn according to fe

Randomness models, e.g., measurement errors, numericalimprecision, rounding, . . .

7 / 17

Page 15: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Smoothed Analysis

Worst-case Analysis: maxce T

Smoothed Analysis: maxfe E [T ]

8 / 17

Page 16: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Smoothed Analysis

Worst-case Analysis: maxce T

Smoothed Analysis: maxfe E [T ]

φ = 1: Average-case analysis

0 1

1x

f (x)

8 / 17

Page 17: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Smoothed Analysis

Worst-case Analysis: maxce T

Smoothed Analysis: maxfe E [T ]

0 1x

f (x)

φ

1/φ

8 / 17

Page 18: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Smoothed Analysis

Worst-case Analysis: maxce T

Smoothed Analysis: maxfe E [T ]

φ → ∞: Worst-case analysis

0 1x

f (x)

φ

x⋆

8 / 17

Page 19: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Smoothed Analysis

Worst-case Analysis: maxce T

Smoothed Analysis: maxfe E [T ]

φ → ∞: Worst-case analysis

0 1x

f (x)

x⋆

φ

8 / 17

Page 20: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Initial Transformation

Successive Shortest Path algorithm

2

1

-1

-2

0

0

3/2 3/1

1/2 3/1

1/3

3/1 1/2

9 / 17

Page 21: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Initial Transformation

Successive Shortest Path algorithm

0

0

3/2 3/1

1/2 3/1

1/3

3/1 1/2

0

0

0

0

3 -3

0/2

0/20/1

0/1

9 / 17

Page 22: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Augmenting Steps

Successive Shortest Path algorithm

0

0

3/2 3/1

1/2 3/1

1/3

3/1 1/2

0

0

0

0

3 -3

0/2

0/20/1

0/12

2

2

2

2

path length: 3, augmenting flow value: 2

10 / 17

Page 23: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Augmenting Steps

Successive Shortest Path algorithm

0

0

3/2 3/1

3/1

3/1

0

0

0

0

0/1

0/10/2

0/2

-1/2

-1/2

1 -1-1/21/1

update residual network

10 / 17

Page 24: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Augmenting Steps

Successive Shortest Path algorithm

0

0

3/2 3/1

3/1

3/1

0

0

0

0

0/1

0/10/2

0/2

-1/2

-1/2

1 -1-1/21/1

1

1

1

1

1

path length: 5, augmenting flow value: 1

10 / 17

Page 25: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Augmenting Steps

Successive Shortest Path algorithm

0

0

3/2 3/1

0

0

0

0

0/2

0/2

-1/2

-1/2

-3/1

-3/1

0/1

0/1

0 0-1/11/2

update residual network

10 / 17

Page 26: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Resulting Flow

Successive Shortest Path algorithm

0

0

3/2 3/1

1/2 3/1

1/3

3/1 1/2

0

0

0

0

3 -3

0/2

0/20/1

0/12

1

21

1

2

21

1

flow cost: 11, flow value: 3

11 / 17

Page 27: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Resulting Flow

Successive Shortest Path algorithm

2

1

-1

-2

0

0

3/2 3/1

1/2 3/1

1/3

3/1 1/2

2

1

21

1

flow cost: 11, flow value: 3

11 / 17

Page 28: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Results

Theorem (Upper Bound)

In expectation, the SSP algorithm requires O(mnφ) iterations andhas a running time of O(mnφ(m + n log n)).

12 / 17

Page 29: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

Minimum-Cost Flow ProblemSmoothed AnalysisSuccessive Shortest Path Algorithm

Results

Theorem (Upper Bound)

In expectation, the SSP algorithm requires O(mnφ) iterations andhas a running time of O(mnφ(m + n log n)).

Theorem (Lower Bound)

There are smoothed instances on which the SSP algorithm requiresΩ(m ·min n, φ · φ) iterations in expectation.

upper bound tight for φ = Ω(n)

12 / 17

Page 30: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Useful Properties

Lemma

The distances from the source to any node increase monotonically.

0value

cost

initial solution: empty flow

13 / 17

Page 31: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Useful Properties

Lemma

The distances from the source to any node increase monotonically.

0value

cost

value

length

slope = path length

×

value

after 1 iteration

13 / 17

Page 32: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Useful Properties

Lemma

The distances from the source to any node increase monotonically.

0value

cost

after 2 iterations

13 / 17

Page 33: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Useful Properties

Lemma

The distances from the source to any node increase monotonically.

0value

cost

after 3 iterations

13 / 17

Page 34: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Useful Properties

Lemma

The distances from the source to any node increase monotonically.

0value

cost

after 4 iterations

13 / 17

Page 35: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Useful Properties

Lemma

The distances from the source to any node increase monotonically.

0value

cost

after 5 iterations#iterations = #distinct slopes

13 / 17

Page 36: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Useful Properties

Lemma

The distances from the source to any node increase monotonically.

0value

cost

after 5 iterations#iterations = #distinct slopes

Lemma

Every intermediate flow is optimal for its flow value.13 / 17

Page 37: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Counting the Number of Slopes

slope = augmenting path length ∈ (0, n]

0 n

14 / 17

Page 38: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Counting the Number of Slopes

slope = augmenting path length ∈ (0, n] =k⋃

ℓ=1

Iℓ, |Iℓ| =n

k

0 n

14 / 17

Page 39: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Counting the Number of Slopes

slope = augmenting path length ∈ (0, n] =k⋃

ℓ=1

Iℓ, |Iℓ| =n

k

0 n

=⇒ #slopes =k∑

ℓ=1

#slopes ∈ Iℓ

14 / 17

Page 40: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Counting the Number of Slopes

slope = augmenting path length ∈ (0, n] =k⋃

ℓ=1

Iℓ, |Iℓ| =n

k

0 n

=⇒ E[#slopes] =k∑

ℓ=1

E[#slopes ∈ Iℓ]

14 / 17

Page 41: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Counting the Number of Slopes

slope = augmenting path length ∈ (0, n] =k⋃

ℓ=1

Iℓ, |Iℓ| =n

k

0 n

=⇒ E[#slopes] =k∑

ℓ=1

E[#slopes ∈ Iℓ]

≈k∑

ℓ=1

Pr [∃slope ∈ Iℓ]

14 / 17

Page 42: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Counting the Number of Slopes

slope = augmenting path length ∈ (0, n] =k⋃

ℓ=1

Iℓ, |Iℓ| =n

k

0 n

=⇒ E[#slopes] =k∑

ℓ=1

E[#slopes ∈ Iℓ]

≈k∑

ℓ=1

Pr [∃slope ∈ Iℓ]

Main Lemma

∀d ≥ 0 : ∀ε ≥ 0 : Pr [∃slope ∈ (d , d + ε]] = O(mφε)

14 / 17

Page 43: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Counting the Number of Slopes

slope = augmenting path length ∈ (0, n] =k⋃

ℓ=1

Iℓ, |Iℓ| =n

k

0 n

=⇒ E[#slopes] =k∑

ℓ=1

E[#slopes ∈ Iℓ]

≈k∑

ℓ=1

Pr [∃slope ∈ Iℓ]

= O(mnφ)

Main Lemma

∀d ≥ 0 : ∀ε ≥ 0 : Pr [∃slope ∈ (d , d + ε]] = O(mφε)

14 / 17

Page 44: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Flow Reconstruction

Main Lemma

∀d ≥ 0 : ∀ε ≥ 0 : Pr [∃slope ∈ (d , d + ε]] = O(mφε)

cost

value0

15 / 17

Page 45: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Flow Reconstruction

Main Lemma

∀d ≥ 0 : ∀ε ≥ 0 : Pr [∃slope ∈ (d , d + ε]] = O(mφε)

d - slope threshold

≤ d

≤ d

> d

> d

d

cost

value0

15 / 17

Page 46: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Flow Reconstruction

Main Lemma

∀d ≥ 0 : ∀ε ≥ 0 : Pr [∃slope ∈ (d , d + ε]] = O(mφε)

d - slope threshold

F ⋆- flow at breakpoint

≤ d

≤ d

> d

> d

d

cost

F⋆

value0

15 / 17

Page 47: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Flow Reconstruction

Main Lemma

∀d ≥ 0 : ∀ε ≥ 0 : Pr [∃slope ∈ (d , d + ε]] = O(mφε)

d - slope threshold

F ⋆- flow at breakpoint

P - next augmenting path

e - empty arc of P in Gf ⋆ ≤ d

≤ d

> d

> d

d

c(P )

cost

F⋆

value0

15 / 17

Page 48: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Flow Reconstruction

Main Lemma

∀d ≥ 0 : ∀ε ≥ 0 : Pr [∃slope ∈ (d , d + ε]] = O(mφε)

d - slope threshold

F ⋆- flow at breakpoint

P - next augmenting path

e - empty arc of P in Gf ⋆ ≤ d

≤ d

> d

> d

d

c(P )

cost

F⋆

value0

∃slope ∈ (d , d + ε] ⇐⇒ c(P) ∈ (d , d + ε]

15 / 17

Page 49: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Flow Reconstruction

Main Lemma

∀d ≥ 0 : ∀ε ≥ 0 : Pr [∃slope ∈ (d , d + ε]] = O(mφε)

d - slope threshold

F ⋆- flow at breakpoint

P - next augmenting path

e - empty arc of P in Gf ⋆ ≤ d

≤ d

> d

> d

d

c(P )

cost

F⋆

value0

∃slope ∈ (d , d + ε] ⇐⇒ c(P) ∈ (d , d + ε]

Goal: Reconstruct F ⋆ and P without knowing ce

15 / 17

Page 50: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Principle of Deferred Decisions

Main Lemma

∀d ≥ 0 : ∀ε ≥ 0 : Pr [∃slope ∈ (d , d + ε]] = O(mφε)

Phase 1: Reveal all ce′ for e′ 6= e.

Assume this suffices to uniquely iden-tify F ⋆ and P .

≤ d

≤ d

> d

> d

d

c(P )

cost

F⋆

value0

16 / 17

Page 51: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Principle of Deferred Decisions

Main Lemma

∀d ≥ 0 : ∀ε ≥ 0 : Pr [∃slope ∈ (d , d + ε]] = O(mφε)

Phase 1: Reveal all ce′ for e′ 6= e.

Assume this suffices to uniquely iden-tify F ⋆ and P .

Phase 2:

Pr [c(P) ∈ (d , d + ε]]

= Pr [c(e) ∈ (z , z + ε]] ≤ φε,

where z is fixed if ce′ for e′ 6= e is fixed.

≤ d

≤ d

> d

> d

d

c(P )

cost

F⋆

value0

16 / 17

Page 52: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Flow Reconstruction

Case 1: e forward arc

Set c ′(e) = 1 and for all e ′ 6= e set c ′(e ′) = c(e ′).Run SSP with modified costs c ′.

17 / 17

Page 53: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Flow Reconstruction

Case 1: e forward arc

Set c ′(e) = 1 and for all e ′ 6= e set c ′(e ′) = c(e ′).Run SSP with modified costs c ′.

≤ d

≤ d

> d

> d

d

c(P )

cost

F⋆

value0

17 / 17

Page 54: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Flow Reconstruction

Case 1: e forward arc

Set c ′(e) = 1 and for all e ′ 6= e set c ′(e ′) = c(e ′).Run SSP with modified costs c ′.

≤ d

≤ d

> d

> d

d

cost

F⋆

value0

c′

c

17 / 17

Page 55: Minimum-Cost Flow Problem Successive Shortest Path Algorithm Minimum-CostFlowNetworkroeglin.org/teaching/Skripte/Slides_SSP.pdf · 2018. 7. 9. · Minimum-Cost Flow Problem Smoothed

IntroductionAnalysis

ObservationsDiscretizationFlow Reconstruction

Flow Reconstruction

Case 1: e forward arc

Set c ′(e) = 1 and for all e ′ 6= e set c ′(e ′) = c(e ′).Run SSP with modified costs c ′.

≤ d

≤ d

> d

> d

d

cost

F⋆

value0

c′

c

F ⋆ is the same for c and c ′17 / 17