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 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