Protection of flows Protection of flows under targeted attacks - - PowerPoint PPT Presentation

protection of flows protection of flows under targeted
SMART_READER_LITE
LIVE PREVIEW

Protection of flows Protection of flows under targeted attacks - - PowerPoint PPT Presentation

Protection of flows Protection of flows under targeted attacks under targeted attacks Jannik Matuschke Tom McCormick Gianpaolo Oriolo TU Berlin UBC Vancouver Tor Vergata Britta Peis Martin Skutella RWTH Aachen TU Berlin Robust flows


slide-1
SLIDE 1

Protection of flows under targeted attacks Protection of flows under targeted attacks

Jannik Matuschke TU Berlin Tom McCormick UBC Vancouver Gianpaolo Oriolo Tor Vergata Britta Peis RWTH Aachen Martin Skutella TU Berlin

slide-2
SLIDE 2

Robust flows

protect flow against link failures/targeted attacks

slide-3
SLIDE 3

Robust flows

protect flow against link failures/targeted attacks Adversarial model (1) flow player: specify nominal flow max (2) interdictor: reduce flow min

slide-4
SLIDE 4

Robust flows

protect flow against link failures/targeted attacks Adversarial model (1) flow player: specify nominal flow max (2) interdictor: reduce flow min This talk: new model with fractional flow interdiction

slide-5
SLIDE 5

Outline 1 Fractional interdiction model 2 Flow fortification

slide-6
SLIDE 6

The model s

2 3 2 t 1 3 u ≡ 2

capacitated network with interdiction costs

◮ c(e): cost of removing 1 unit flow from e

slide-7
SLIDE 7

The model s

2 3 2 t 1 3 u ≡ 2 B = 2

capacitated network with interdiction costs

◮ c(e): cost of removing 1 unit flow from e ◮ B : interdictor budget

slide-8
SLIDE 8

The model s

2 3 2 t 1 3 u ≡ 2 B = 2

(1) flow player: specify path flow x(P)

slide-9
SLIDE 9

The model s

2 3 2 t 1 3 u ≡ 2 B = 2

(1) flow player: specify path flow x(P) (2) interdictor: specify removed flow z(P)

slide-10
SLIDE 10

The model s

2 3 2 t 1 3 u ≡ 2 B = 2

(1) flow player: specify path flow x(P) (2) interdictor: specify removed flow z(P) interdictor greedily attacks weakest link: ¯ c(P) := mine∈P c(e)

slide-11
SLIDE 11

The model s

2 3 2 t 1 3 u ≡ 2 B = 2

(1) flow player: specify path flow x(P) (2) interdictor: specify removed flow z(P) interdictor greedily attacks weakest link: ¯ c(P) := mine∈P c(e)

slide-12
SLIDE 12

The model s

2 3 2 t 1 3 u ≡ 2 B = 2

(1) flow player: specify path flow x(P) (2) interdictor: specify removed flow z(P) interdictor greedily attacks weakest link: ¯ c(P) := mine∈P c(e) Z := {z : 0 ≤ z(P) ≤ x(P),

P ¯

c(P)z(P) ≤ B} robust value: valr(x) := minz∈Z

  • P x(P) − z(P)
slide-13
SLIDE 13

The model s

2 3 2 t 1 3 u ≡ 2 B = 2 z(P1) = 1

(1) flow player: specify path flow x(P) (2) interdictor: specify removed flow z(P) interdictor greedily attacks weakest link: ¯ c(P) := mine∈P c(e) Z := {z : 0 ≤ z(P) ≤ x(P),

P ¯

c(P)z(P) ≤ B} robust value: valr(x) := minz∈Z

  • P x(P) − z(P)
slide-14
SLIDE 14

The model s

2 3 2 t 1 3 u ≡ 2 B = 2 z(P1) = 1 z(P2) = 1/2

(1) flow player: specify path flow x(P) (2) interdictor: specify removed flow z(P) interdictor greedily attacks weakest link: ¯ c(P) := mine∈P c(e) Z := {z : 0 ≤ z(P) ≤ x(P),

P ¯

c(P)z(P) ≤ B} robust value: valr(x) := minz∈Z

  • P x(P) − z(P)
slide-15
SLIDE 15

The model s

2 3 2 t 1 3 u ≡ 2 B = 2 z(P1) = 1 z(P2) = 1/2 valr(x) = 3/2

(1) flow player: specify path flow x(P) (2) interdictor: specify removed flow z(P) interdictor greedily attacks weakest link: ¯ c(P) := mine∈P c(e) Z := {z : 0 ≤ z(P) ≤ x(P),

P ¯

c(P)z(P) ≤ B} robust value: valr(x) := minz∈Z

  • P x(P) − z(P)
slide-16
SLIDE 16

Optimal flow strategy

Algorithm

◮ guess C∗ := max{¯

c(P) : z∗(P) > 0} for optimal (x∗, z∗)

slide-17
SLIDE 17

Optimal flow strategy

Algorithm

◮ guess C∗ := max{¯

c(P) : z∗(P) > 0} for optimal (x∗, z∗)

◮ c′(P) := min{¯

c(P), C∗}

slide-18
SLIDE 18

Optimal flow strategy

Algorithm

◮ guess C∗ := max{¯

c(P) : z∗(P) > 0} for optimal (x∗, z∗)

◮ c′(P) := min{¯

c(P), C∗}

◮ find flow x′ maximizing P c′(P)x′(P)

slide-19
SLIDE 19

Optimal flow strategy

Algorithm

◮ guess C∗ := max{¯

c(P) : z∗(P) > 0} for optimal (x∗, z∗)

◮ c′(P) := min{¯

c(P), C∗}

◮ find flow x′ maximizing P c′(P)x′(P)

Theorem

x′ is an optimal robust flow.

slide-20
SLIDE 20

Optimal flow strategy

Algorithm

◮ guess C∗ := max{¯

c(P) : z∗(P) > 0} for optimal (x∗, z∗)

◮ c′(P) := min{¯

c(P), C∗}

◮ find flow x′ maximizing P c′(P)x′(P)

Theorem

x′ is an optimal robust flow. Proof idea: valr(x∗) =

  • P

x∗(P) − z∗(P)

slide-21
SLIDE 21

Optimal flow strategy

Algorithm

◮ guess C∗ := max{¯

c(P) : z∗(P) > 0} for optimal (x∗, z∗)

◮ c′(P) := min{¯

c(P), C∗}

◮ find flow x′ maximizing P c′(P)x′(P)

Theorem

x′ is an optimal robust flow. Proof idea: valr(x∗) =

  • P

x∗(P) − z∗(P) =

  • P

c′(P) C∗ (x∗(P) − z∗(P))

slide-22
SLIDE 22

Optimal flow strategy

Algorithm

◮ guess C∗ := max{¯

c(P) : z∗(P) > 0} for optimal (x∗, z∗)

◮ c′(P) := min{¯

c(P), C∗}

◮ find flow x′ maximizing P c′(P)x′(P)

Theorem

x′ is an optimal robust flow. Proof idea: valr(x∗) =

  • P

x∗(P) − z∗(P) =

  • P

c′(P) C∗ (x∗(P) − z∗(P)) =

  • P c′(P)x∗(P)

C∗ − B C∗

slide-23
SLIDE 23

Optimal flow strategy

Algorithm

◮ guess C∗ := max{¯

c(P) : z∗(P) > 0} for optimal (x∗, z∗)

◮ c′(P) := min{¯

c(P), C∗}

◮ find flow x′ maximizing P c′(P)x′(P)

Theorem

x′ is an optimal robust flow. Proof idea: valr(x∗) =

  • P

x∗(P) − z∗(P) =

  • P

c′(P) C∗ (x∗(P) − z∗(P)) =

  • P c′(P)x∗(P)

C∗ − B C∗ ≤ valr(x′)

slide-24
SLIDE 24

Further results

G

s s1

1

s2

2

t1 t2 t

1 2

◮ reduction from multi-commodity flow

◮ integral version NP-hard ◮ preserves combinatorial algorithms

◮ generalizes to packing problems on arbitrary set systems

◮ multi-commodity flow ◮ abstract flows ◮ b-matchings

slide-25
SLIDE 25

Flow fortification

(1) flow player: specify path flow x(P) for P ∈ P and added interdiction costs c+(e) for e ∈ E

◮ fortification cost γ(e), fortification budget BF ◮ e∈E γ(e)c+(e)x(e) ≤ BF

(2) interdictor: attack flow on paths z(P) for P ∈ P

◮ cost of interdicting flow unit on P:

¯ c(P) := min

e∈P c0(e) + c+(e) ◮ fractionally interdict as before

s 2+1 3+0 2+1 t 1+1 3+0

slide-26
SLIDE 26

Results for fortification variant

Theorem

It is NP-hard to decide whether OPT > 0. Proof idea: reduction from Disjoint Paths

Theorem

If c0 ≡ 0, then optimal flow and fortification strategy can be found in polynomial time. Proof idea:

◮ optimal fortification strategy: uniform interdiction cost

C+(x) := BF

  • e γ(e)x(e)

◮ optimal flow: maximizes P x(P) − B/C+(x)

(can be computed by min cost circulation)

slide-27
SLIDE 27

Summary goal: robustness against targeted attacks

New: model with fractional interdiction

◮ max robust flow in poly-time ◮ fortification: hard in general, but tractable in special case

slide-28
SLIDE 28

Summary goal: robustness against targeted attacks

New: model with fractional interdiction

◮ max robust flow in poly-time ◮ fortification: hard in general, but tractable in special case

Thank you!