On the complexity of the asymmetric VPN problem Thomas Rothvoß & Laura Sanit` a Institute of Mathematics EPFL, Lausanne ISMP’09
Concave Cost VPN Given: ◮ Undirected graph G = ( V, E ), costs c : E → Q + ◮ Outgoing traffic bound b + v ∈ N 0 , ingoing traffic bound b − v ∈ N 0 ◮ Concave non-decreasing function f : Q + → Q + Find: Paths P uv , capacities x e s.t. � c ( e ) · f ( x e ) → minimized e ∈ E and every valid traffic matrix ( D u,v ) u,v ∈ V can be routed. D is valid if v sends ≤ b + v and receives ≤ b − v
Concave Cost VPN Given: ◮ Undirected graph G = ( V, E ), costs c : E → Q + ◮ Outgoing traffic bound b + v ∈ N 0 , ingoing traffic bound b − v ∈ N 0 ◮ Concave non-decreasing function f : Q + → Q + Find: Paths P uv , capacities x e s.t. � c ( e ) · f ( x e ) → minimized e ∈ E and every valid traffic matrix ( D u,v ) u,v ∈ V can be routed. D is valid if v sends ≤ b + v and receives ≤ b − v f ( x e ) x e
Concave Cost VPN Given: ◮ Undirected graph G = ( V, E ), costs c : E → Q + ◮ Outgoing traffic bound b + v ∈ N 0 , ingoing traffic bound b − v ∈ N 0 ◮ Concave non-decreasing function f : Q + → Q + Find: Paths P uv , capacities x e s.t. � c ( e ) · f ( x e ) → minimized e ∈ E and every valid traffic matrix ( D u,v ) u,v ∈ V can be routed. D is valid if v sends ≤ b + v and receives ≤ b − v f ( x e ) W.l.o.g.: ◮ senders s ∈ S : b + s = 1 , b − s = 0 x e ◮ receivers r ∈ R : b + r = 0 , b − r = 1 ◮ non-terminals v : b + v = b − v = 0
Example s 1 s 2 s 3 r 1 e r 3 r 4 r 2
Example P s 1 r 2 s 1 s 2 s 3 r 1 e r 3 r 4 r 2
Example P s 1 r 2 s 1 s 2 P s 1 r 1 s 3 r 1 e r 3 r 4 r 2
Example P s 1 r 2 s 1 P s 2 r 3 s 2 P s 1 r 1 s 3 r 1 e r 3 r 4 r 2
Example P s 1 r 2 s 1 P s 2 r 3 s 2 P s 1 r 1 s 3 r 1 e P s 3 r 3 r 3 r 4 r 2
Example S R P s 1 r 2 s 1 r 1 s 1 P s 2 r 3 s 2 P s 1 r 1 s 2 r 2 s 3 r 1 e s 3 r 3 P s 3 r 3 r 3 r 4 r 4 r 2
Example S R P s 1 r 2 s 1 r 1 s 1 P s 2 r 3 s 2 P s 1 r 1 s 2 r 2 s 3 r 1 e s 3 r 3 P s 3 r 3 r 3 r 4 r 4 r 2
Example S R P s 1 r 2 s 1 r 1 s 1 P s 2 r 3 s 2 P s 1 r 1 s 2 r 2 s 3 r 1 e s 3 r 3 P s 3 r 3 r 3 r 4 r 4 r 2 x e = maximal cardinality of a matching in G e = ( S ∪ R, E e ) with ( s, r ) ∈ E e ⇔ e ∈ P sr
Example S R P s 1 r 2 vertex cover C s 1 r 1 s 1 P s 2 r 3 s 2 P s 1 r 1 s 2 r 2 s 3 r 1 e s 3 r 3 P s 3 r 3 r 3 r 4 r 4 r 2 x e = maximal cardinality of a matching in G e = ( S ∪ R, E e ) with ( s, r ) ∈ E e ⇔ e ∈ P sr
Known results Linear costs: ◮ APX -hard ◮ 5.55-apx [Gupta, Kumar, Roughgarden ’03] ◮ 4.74-apx [Eisenbrand, Grandoni ’05] ◮ 3.55-apx [Eisenbrand, Grandoni, Oriolo, Skutella ’07]
Known results Linear costs: ◮ APX -hard ◮ 5.55-apx [Gupta, Kumar, Roughgarden ’03] ◮ 4.74-apx [Eisenbrand, Grandoni ’05] ◮ 3.55-apx [Eisenbrand, Grandoni, Oriolo, Skutella ’07] Linear costs/symmetric ( b + v = b − v ): ◮ Opt. solution is a tree [Goyal, Olver, Shepherd ’08] ◮ Opt. tree solution = best shortest path tree [Fingerhut et al. ’97; Gupta et al. ’01]
Known results Linear costs: ◮ APX -hard ◮ 5.55-apx [Gupta, Kumar, Roughgarden ’03] ◮ 4.74-apx [Eisenbrand, Grandoni ’05] ◮ 3.55-apx [Eisenbrand, Grandoni, Oriolo, Skutella ’07] Linear costs/symmetric ( b + v = b − v ): ◮ Opt. solution is a tree [Goyal, Olver, Shepherd ’08] ◮ Opt. tree solution = best shortest path tree [Fingerhut et al. ’97; Gupta et al. ’01] Linear costs/balanced ( | R | = | S | ): ◮ Opt. tree solution = best shortest path tree [Italiano, Leonardi, Oriolo ’06]
Known results Linear costs: ◮ APX -hard ◮ 5.55-apx [Gupta, Kumar, Roughgarden ’03] ◮ 4.74-apx [Eisenbrand, Grandoni ’05] ◮ 3.55-apx [Eisenbrand, Grandoni, Oriolo, Skutella ’07] Linear costs/symmetric ( b + v = b − v ): ◮ Opt. solution is a tree [Goyal, Olver, Shepherd ’08] ◮ Opt. tree solution = best shortest path tree [Fingerhut et al. ’97; Gupta et al. ’01] Linear costs/balanced ( | R | = | S | ): ◮ Opt. tree solution = best shortest path tree [Italiano, Leonardi, Oriolo ’06] Theorem There is a polytime 50 -approximation for Concave Cost VPN that also gives a tree solution.
Single Sink Buy-at-Bulk f ( x e ) Given: ◮ G = ( V, E ), costs c : E → Q + x e ◮ clients D ⊆ V , root r ◮ Concave non-decreasing function f : Q + → Q + Find: Capacities x e s.t. � c ( e ) · f ( x e ) → minimize e ∈ E and each client can send a flow of 1 to r (simultaneously). client root r
Single Sink Buy-at-Bulk f ( x e ) Given: ◮ G = ( V, E ), costs c : E → Q + x e ◮ clients D ⊆ V , root r ◮ Concave non-decreasing function f : Q + → Q + Find: Capacities x e s.t. � c ( e ) · f ( x e ) → minimize e ∈ E and each client can send a flow of 1 to r (simultaneously). 1 1 2 client 1 3 1 1 5 1 root r
Single Sink Buy-at-Bulk f ( x e ) Given: ◮ G = ( V, E ), costs c : E → Q + x e ◮ clients D ⊆ V , root r ◮ Concave non-decreasing function f : Q + → Q + Find: Capacities x e s.t. � c ( e ) · f ( x e ) → minimize e ∈ E and each client can send a flow of 1 to r (simultaneously). Known results: ◮ APX -hard ◮ Opt. solution is tree [Karger, Minkoff ’00] ◮ For cable-based formulation: ◮ 76 . 8-apx [Gupta, Kumar, Roughgarden ’03] ◮ improved to 25-apx [Grandoni, Italiano ’06]
The algorithm Algorithm: +1 − 1 − 1 +1 − 1 +1 − 1
The algorithm Algorithm: 1. Choose a sender s ∗ ∈ S uniformly at random +1 − 1 − 1 s ∗ +1 − 1 +1 − 1
The algorithm Algorithm: 1. Choose a sender s ∗ ∈ S uniformly at random 2. Define central hub instance with single sender s ∗ (but b + s ∗ = | S | ), receivers S ∪ R − 1 − 1 − 1 s ∗ − 1 + | S | − 1 − 1
The algorithm Algorithm: 1. Choose a sender s ∗ ∈ S uniformly at random 2. Define central hub instance with single sender s ∗ (but b + s ∗ = | S | ), receivers S ∪ R 3. Compute 25-apx solution x ′ e using a SSBB algo for the central hub VPN instance − 1 − 1 − 1 s ∗ − 1 + | S | − 1 − 1
The algorithm Algorithm: 1. Choose a sender s ∗ ∈ S uniformly at random 2. Define central hub instance with single sender s ∗ (but b + s ∗ = | S | ), receivers S ∪ R 3. Compute 25-apx solution x ′ e using a SSBB algo for the central hub VPN instance − 1 − 1 − 1 s ∗ − 1 + | S | − 1 − 1 Claim: Capacities x ′ e suffice for orig. instance
The algorithm Algorithm: 1. Choose a sender s ∗ ∈ S uniformly at random 2. Define central hub instance with single sender s ∗ (but b + s ∗ = | S | ), receivers S ∪ R 3. Compute 25-apx solution x ′ e using a SSBB algo for the central hub VPN instance x ′ e = min { k, | S |} − 1 − 1 − 1 s ∗ e − 1 + | S | k terminals − 1 − 1 Claim: Capacities x ′ e suffice for orig. instance
SSBB vs. VPN with central hub VPN: ◮ sender s ∗ ( b + s ∗ = | S | ), receivers S ∪ R ◮ cost function � e ∈ E c e · f ( x e ) SSBB: ◮ root s ∗ , clients S ∪ R ◮ cost function � e ∈ E c e · f (min { x e , | S |} ) − 1 − 1 − 1 s ∗ − 1 + | S | − 1 − 1
SSBB vs. VPN with central hub VPN: f ( x e ) ◮ sender s ∗ ( b + s ∗ = | S | ), receivers S ∪ R ◮ cost function � e ∈ E c e · f ( x e ) x e SSBB: | S | ◮ root s ∗ , clients S ∪ R ◮ cost function � e ∈ E c e · f (min { x e , | S |} ) → concave − 1 − 1 − 1 s ∗ − 1 + | S | − 1 − 1
SSBB vs. VPN with central hub VPN: ◮ sender s ∗ ( b + s ∗ = | S | ), receivers S ∪ R ◮ cost function � e ∈ E c e · f ( x e ) SSBB: ◮ root s ∗ , clients S ∪ R ◮ cost function � e ∈ E c e · f (min { x e , | S |} ) → concave − 1 − 1 − 1 e s ∗ − 1 + | S | − 1 − 1
SSBB vs. VPN with central hub VPN: ◮ sender s ∗ ( b + s ∗ = | S | ), receivers S ∪ R ◮ cost function � e ∈ E c e · f ( x e ) SSBB: ◮ root s ∗ , clients S ∪ R ◮ cost function � e ∈ E c e · f (min { x e , | S |} ) → concave − 1 − 1 − 1 k receivers/clients e s ∗ − 1 + | S | − 1 − 1 capacity on e cost for e VPN SSBB
SSBB vs. VPN with central hub VPN: ◮ sender s ∗ ( b + s ∗ = | S | ), receivers S ∪ R ◮ cost function � e ∈ E c e · f ( x e ) SSBB: ◮ root s ∗ , clients S ∪ R ◮ cost function � e ∈ E c e · f (min { x e , | S |} ) → concave − 1 − 1 − 1 k receivers/clients e s ∗ − 1 + | S | − 1 − 1 capacity on e cost for e VPN min { k, | S |} c ( e ) · f (min { k, | S |} ) SSBB
SSBB vs. VPN with central hub VPN: ◮ sender s ∗ ( b + s ∗ = | S | ), receivers S ∪ R ◮ cost function � e ∈ E c e · f ( x e ) SSBB: ◮ root s ∗ , clients S ∪ R ◮ cost function � e ∈ E c e · f (min { x e , | S |} ) → concave − 1 − 1 − 1 k receivers/clients e s ∗ − 1 + | S | − 1 − 1 capacity on e cost for e VPN min { k, | S |} c ( e ) · f (min { k, | S |} ) SSBB k c ( e ) · f (min { k, | S |} )
Analysis Theorem There is a central hub solution of expected cost ≤ 2 · OPT . s ∗
Analysis Theorem There is a central hub solution of expected cost ≤ 2 · OPT . Proof: ◮ Let ( x e , P sr ) be optimal solution for orig. instance s ∗
Recommend
More recommend