The Stackelberg Minimum Spanning Tree Game
Jean Cardinal Erik Demaine Samuel Fiorini Gwena¨elJoret
Stefan Langerman Ilan Newman Oren Weimann G3t R1CH Qu1CK with FTL N3tw0rk1ng!!!
Donald Duck Uncle Scrooge Samuel Fiorini Gwena¨elJoret
Stefan Langerman Ilan Newman Oren Weimann Once upon a time . . .
MIT scientists have invented a revolutionary device to communicate faster than the speed of light.
Gyro Gearloose with Randall L. Stephenson Scrooge’s Goal: Infinite profit! Donald’s Goal: Build a network for his nephews Scrooge’s Goal: Infinite profit! But suddenly. . . a competitor appears!
Gladstone Gander (to follow John E. Pepper, Jr. as chairman of Verizon) Example ? 3 1 ? ? 1 2
Gladstone Gander Uncle Scrooge
Donald Duck buys MST Example
Pricing MST 3 3 1 1 3 3 3 Instance 1 1 2 2 ? 3 revenue = 3 1 ? ? 1 2 1 1 3 1 1 2 1 2 1 1 2
revenue = 4 Assumption: blues have priority over reds of same weight Problem Statement
Given a graph G with red and blue edges
I Each red edge has a fixed cost c(e) [Gladstone Gander]
I The leader [Uncle Scrooge] has to set a price p(e) for each blue edge
I The follower [Donald Duck] then computes a MST with the resulting weights
Goal: maximize total weight of the blue edges in a MST Context for Stackelberg MST (StackMST)
Stackelberg game:
I Leader makes one move
I Follower makes one move dependent on leader’s move
Related work:
I “Highway” problems – pricing shortest paths: Labb´e, Marcotte, and Savard (Management Science, 1998), Grigoriev, van Hoesel, Kraaij, Uetz, and Bouhtou (WAOA 05), survey by Stan van Hoesel
I Bundle pricing: Guruswami, Hartline, Karlin, Kempe, Kenyon, and McSherry (SODA 05), Hartline and Koltun (WADS 05), Grigoriev, van Loon, Sitters, and Uetz (WG 06)
I Many other games and mechanisms on spanning trees ∃ cover of size ≤ t ⇐⇒ ∃ pricing giving ≥ (n + t − 1) + 2(m − t)
Hardness I
Proposition StackMST is NP-hard, even if c(e) ∈ {1, 2} ∀e
Proof idea: Reduction from SetCover
→ sets S1, S2,..., Sm → elements u1, u2,..., un ∃ cover of size ≤ t ⇐⇒ ∃ pricing giving ≥ (n + t − 1) + 2(m − t)
Hardness I
Proposition StackMST is NP-hard, even if c(e) ∈ {1, 2} ∀e
2 elements Proof idea: sets 1 Reduction from SetCover 2 1 → sets S1, S2,..., Sm 2 1 → elements u , u ,..., u 1 2 n 2 1 2 1 1 ∃ cover of size ≤ t ⇐⇒ ∃ pricing giving ≥ (n + t − 1) + 2(m − t)
Hardness I
Proposition StackMST is NP-hard, even if c(e) ∈ {1, 2} ∀e
2 elements Proof idea: sets 1 Reduction from SetCover 2 1 → sets S1, S2,..., Sm 2 1 → elements u , u ,..., u 1 2 n 2 1 2 1 1 ∃ cover of size ≤ t ⇐⇒ ∃ pricing giving ≥ (n + t − 1) + 2(m − t)
Hardness I
Proposition StackMST is NP-hard, even if c(e) ∈ {1, 2} ∀e
elements Proof idea: sets 1 Reduction from SetCover 1 1 → sets S1, S2,..., Sm 1 → elements u1, u2,..., un 1
1 1 1 ∃ cover of size ≤ t ⇐⇒ ∃ pricing giving ≥ (n + t − 1) + 2(m − t)
Hardness I
Proposition StackMST is NP-hard, even if c(e) ∈ {1, 2} ∀e
Proof idea: elements sets Reduction from SetCover 1 1 2 1 → sets S1, S2,..., Sm 1 → elements u1, u2,..., un 1 2 1 1 1 Hardness I
Proposition StackMST is NP-hard, even if c(e) ∈ {1, 2} ∀e
Proof idea: elements sets Reduction from SetCover 1 1 2 1 → sets S1, S2,..., Sm 1 → elements u1, u2,..., un 1 2 1 1 1
∃ cover of size ≤ t ⇐⇒ ∃ pricing giving ≥ (n + t − 1) + 2(m − t) Hardness II Inapproximability result
Proposition StackMST is APX-hard, even if c(e) ∈ {1, 2} ∀e
Proof idea:
I reduce from VertexCover in graphs with ∆ ≤ 3
I then everything is linear in n
I ∃ (1 − )-approx for StackMST ⇒ ∃ (1 + 8)-approx for VertexCover in graphs with ∆ ≤ 3 Bad News for Uncle Scrooge Approximation I
Assume that the red costs are c1 < c2 < ··· < ck c − c c − c Let ρ := 1 + 2 1 + ··· + k k−1 c2 ck
Z ck 1 c We have: ρ ≤ k and ρ ≤ 1 + dt = 1 + ln k c1 t c1
2
1
0 0 c 1 1 c 2 c 3 2 c 4 3 c 5
Theorem StackMST is ρ-approximable ⇒ min{k, 1 + ln ck }-approximable c1 Analysis: For any price function,
revenue = MST − MST ∩ R ≤ MST ∞ − MST 0 k k ∞ 0 X ∞ X 0 ⇒ OPT ≤ MST − MST = ci mi − ci mi i=1 i=1 Where ∞ ∞ I mi := #red edges of cost ci in MST 0 0 I mi := #red edges of cost ci in MST
Approximation II The Best-out-of-k algorithm
Algorithm Best-out-of-k (uniform pricing):
I For i = 1,..., k: assign price ci to all blue edges
I Pick i maximizing revenue of the corresponding MST k k ∞ 0 X ∞ X 0 ⇒ OPT ≤ MST − MST = ci mi − ci mi i=1 i=1 Where ∞ ∞ I mi := #red edges of cost ci in MST 0 0 I mi := #red edges of cost ci in MST
Approximation II The Best-out-of-k algorithm
Algorithm Best-out-of-k (uniform pricing):
I For i = 1,..., k: assign price ci to all blue edges
I Pick i maximizing revenue of the corresponding MST
Analysis: For any price function,
revenue = MST − MST ∩ R ≤ MST ∞ − MST 0 Approximation II The Best-out-of-k algorithm
Algorithm Best-out-of-k (uniform pricing):
I For i = 1,..., k: assign price ci to all blue edges
I Pick i maximizing revenue of the corresponding MST
Analysis: For any price function,
revenue = MST − MST ∩ R ≤ MST ∞ − MST 0 k k ∞ 0 X ∞ X 0 ⇒ OPT ≤ MST − MST = ci mi − ci mi i=1 i=1 Where ∞ ∞ I mi := #red edges of cost ci in MST 0 0 I mi := #red edges of cost ci in MST Approximation II Analysis: wavefront argument
bi := #blue edges (of cost ci ) in i-th tree
Claim ∞ 0 mi − mi = bi − bi+1 for all i Approximation II Analysis: wavefront argument
bi := #blue edges (of cost ci ) in i-th tree
Claim ∞ 0 mi − mi = bi − bi+1 for all i Approximation II Analysis: wavefront argument
bi := #blue edges (of cost ci ) in i-th tree
Claim ∞ 0 mi − mi = bi − bi+1 for all i } Approximation II Analysis: wavefront argument
bi := #blue edges (of cost ci ) in i-th tree
Claim ∞ 0 mi − mi = bi − bi+1 for all i } Approximation II Analysis: wavefront argument
bi := #blue edges (of cost ci ) in i-th tree
Claim ∞ 0 mi − mi = bi − bi+1 for all i } Approximation II Analysis: wavefront argument
bi := #blue edges (of cost ci ) in i-th tree
Claim ∞ 0 mi − mi = bi − bi+1 for all i } Approximation II Analysis: wavefront argument
bi := #blue edges (of cost ci ) in i-th tree
Claim ∞ 0 mi − mi = bi − bi+1 for all i } Approximation II Analysis: wavefront argument
bi := #blue edges (of cost ci ) in i-th tree
Claim ∞ 0 mi − mi = bi − bi+1 for all i } Approximation III Analysis: rewriting OPT
Denote the revenue of the i-th tree by qi := ci bi
From claim, we get
∞ 0 qi qi+1 ∞ 0 qk mi − mi = − for 1 ≤ i ≤ k − 1 and mk − mk = ci ci+1 ck ⇒ Can rewrite upper bound on OPT:
k X ∞ 0 q1 q2 q2 q3 qk ci (mi − mi ) = c1 − + c2 − + ··· + ck c1 c2 c2 c3 ck i=1 c2 − c1 ck − ck−1 = q1 + q2 + ··· + qk c2 ck Can tweak the analysis to get: Proposition Best-out-of-k is also a (3 + 2 ln b)-approximation
Approximation IV Analysis: final bit
Taking j such that qj is maximum, we have
OPT Pk c (m∞ − m0) ≤ i=1 i i i qj qj q c − c q c − c q ≤ 1 + 2 1 · 2 + ··· + k k−1 · k qj c2 qj ck qj c − c c − c ≤ 1 + 2 1 + ··· + k k−1 = ρ c2 ck So Best-out-of-k is a ρ-approximation algorithm Approximation IV Analysis: final bit
Taking j such that qj is maximum, we have
OPT Pk c (m∞ − m0) ≤ i=1 i i i qj qj q c − c q c − c q ≤ 1 + 2 1 · 2 + ··· + k k−1 · k qj c2 qj ck qj c − c c − c ≤ 1 + 2 1 + ··· + k k−1 = ρ c2 ck So Best-out-of-k is a ρ-approximation algorithm
Can tweak the analysis to get: Proposition Best-out-of-k is also a (3 + 2 ln b)-approximation And they lived happily ever after. . . IP formulation
(IP) −→relax (LP)
Proposition (good news) We have (IP) ≤ (LP) ≤ MST ∞ − MST 0
Proposition (bad news) The integrality gap of (LP) is k on instances with k distinct costs (and with ρ ∼ k) Open questions / outlook
Main open question:
I Does StackMST admit a constant-factor approximation?
Generalizations of StackMST:
I Pricing matroids: always ρ-approximable
I Stackelberg Steiner trees: also generalizes highway pricing The End