An Efficient Characterization of Submodular Spanning Tree Games - - PowerPoint PPT Presentation

an efficient characterization of submodular spanning tree
SMART_READER_LITE
LIVE PREVIEW

An Efficient Characterization of Submodular Spanning Tree Games - - PowerPoint PPT Presentation

An Efficient Characterization of Submodular Spanning Tree Games Zhuan Khye Koh Laura Sanit` a Cooperative game Cooperative game Setting: A set of players N who are allowed to cooperate. Cooperative game Setting: A set of players N who are


slide-1
SLIDE 1

An Efficient Characterization of Submodular Spanning Tree Games

Zhuan Khye Koh Laura Sanit` a

slide-2
SLIDE 2

Cooperative game

slide-3
SLIDE 3

Cooperative game

Setting: A set of players N who are allowed to cooperate.

slide-4
SLIDE 4

Cooperative game

Setting: A set of players N who are allowed to cooperate. Goal: Distribute cost or revenue among them.

slide-5
SLIDE 5

Cooperative game

Setting: A set of players N who are allowed to cooperate. Goal: Distribute cost or revenue among them.

  • To model cooperation, we use a characteristic function ν : 2N → R.
slide-6
SLIDE 6

Cooperative game

Setting: A set of players N who are allowed to cooperate. Goal: Distribute cost or revenue among them.

  • To model cooperation, we use a characteristic function ν : 2N → R.

◮ ν(S) = total cost paid by the players in S if they form a coalition.

slide-7
SLIDE 7

Cooperative game

Setting: A set of players N who are allowed to cooperate.

ν(S) = 5

Goal: Distribute cost or revenue among them.

  • To model cooperation, we use a characteristic function ν : 2N → R.

◮ ν(S) = total cost paid by the players in S if they form a coalition.

slide-8
SLIDE 8

Cooperative game

Setting: A set of players N who are allowed to cooperate.

ν(S) = 5 ν(S′) = 8

Goal: Distribute cost or revenue among them.

  • To model cooperation, we use a characteristic function ν : 2N → R.

◮ ν(S) = total cost paid by the players in S if they form a coalition.

slide-9
SLIDE 9

Cooperative game

Setting: A set of players N who are allowed to cooperate.

ν(S) = 5 ν(S′) = 8

Goal: Distribute cost or revenue among them.

  • To model cooperation, we use a characteristic function ν : 2N → R.

◮ ν(S) = total cost paid by the players in S if they form a coalition.

  • An instance of the game is defined by (N, ν).
slide-10
SLIDE 10

Cooperative game

Setting: A set of players N who are allowed to cooperate.

ν(S) = 5 ν(S′) = 8

Goal: Distribute cost or revenue among them.

  • To model cooperation, we use a characteristic function ν : 2N → R.

◮ ν(S) = total cost paid by the players in S if they form a coalition.

  • An instance of the game is defined by (N, ν).
  • An outcome of the game is an allocation y ∈ RN such that
  • v∈N

yv = ν(N).

slide-11
SLIDE 11

How “good” is an allocation?

slide-12
SLIDE 12

How “good” is an allocation?

  • Many criteria for evaluating an allocation:
slide-13
SLIDE 13

How “good” is an allocation?

  • Many criteria for evaluating an allocation:

◮ Fairness - Is every agent charged proportionally to its contribution?

slide-14
SLIDE 14

How “good” is an allocation?

  • Many criteria for evaluating an allocation:

◮ Fairness - Is every agent charged proportionally to its contribution? ◮ Stability - Are there any incentives to cooperate?

slide-15
SLIDE 15

How “good” is an allocation?

  • Many criteria for evaluating an allocation:

◮ Fairness - Is every agent charged proportionally to its contribution? ◮ Stability - Are there any incentives to cooperate?

  • We use solution concepts. Some popular ones include:
slide-16
SLIDE 16

How “good” is an allocation?

  • Many criteria for evaluating an allocation:

◮ Fairness - Is every agent charged proportionally to its contribution? ◮ Stability - Are there any incentives to cooperate?

  • We use solution concepts. Some popular ones include:

◮ Core:

v∈S yv ≤ ν(S) for all S ⊆ N.

slide-17
SLIDE 17

How “good” is an allocation?

  • Many criteria for evaluating an allocation:

◮ Fairness - Is every agent charged proportionally to its contribution? ◮ Stability - Are there any incentives to cooperate?

2 2 2 2 2 2

  • We use solution concepts. Some popular ones include:

◮ Core:

v∈S yv ≤ ν(S) for all S ⊆ N.

slide-18
SLIDE 18

How “good” is an allocation?

  • Many criteria for evaluating an allocation:

◮ Fairness - Is every agent charged proportionally to its contribution? ◮ Stability - Are there any incentives to cooperate?

2 2 2 2 2 2 ν(S) = 5

  • We use solution concepts. Some popular ones include:

◮ Core:

v∈S yv ≤ ν(S) for all S ⊆ N.

slide-19
SLIDE 19

How “good” is an allocation?

  • Many criteria for evaluating an allocation:

◮ Fairness - Is every agent charged proportionally to its contribution? ◮ Stability - Are there any incentives to cooperate?

2 2 2 2 2 2 ν(S) = 5 ν(S′) = 8

  • We use solution concepts. Some popular ones include:

◮ Core:

v∈S yv ≤ ν(S) for all S ⊆ N.

slide-20
SLIDE 20

How “good” is an allocation?

  • Many criteria for evaluating an allocation:

◮ Fairness - Is every agent charged proportionally to its contribution? ◮ Stability - Are there any incentives to cooperate?

2 2 2 2 2 2 ν(S) = 5 ν(S′) = 8

  • We use solution concepts. Some popular ones include:

◮ Core:

v∈S yv ≤ ν(S) for all S ⊆ N.

◮ Shapley value, nucleolus, kernel, bargaining set, stable set, . . .

slide-21
SLIDE 21

How “good” is an allocation?

  • Many criteria for evaluating an allocation:

◮ Fairness - Is every agent charged proportionally to its contribution? ◮ Stability - Are there any incentives to cooperate?

2 2 2 2 2 2 ν(S) = 5 ν(S′) = 8

  • We use solution concepts. Some popular ones include:

◮ Core:

v∈S yv ≤ ν(S) for all S ⊆ N.

◮ Shapley value, nucleolus, kernel, bargaining set, stable set, . . .

  • Generally hard to compute unless ν satisfies certain properties.
slide-22
SLIDE 22

Submodularity

slide-23
SLIDE 23

Submodularity

  • Def. A game is submodular/convex if for any S, T ⊆ N,

ν(S) + ν(T) ≥ ν(S ∪ T) + ν(S ∩ T).

slide-24
SLIDE 24

Submodularity

  • Def. A game is submodular/convex if for any S, T ⊆ N,

ν(S) + ν(T) ≥ ν(S ∪ T) + ν(S ∩ T).

  • Equivalently, for any S ⊆ T ⊆ N and u ∈ N \ T,

ν(S ∪ u) − ν(S) ≥ ν(T ∪ u) − ν(T).

slide-25
SLIDE 25

Submodularity

  • Def. A game is submodular/convex if for any S, T ⊆ N,

ν(S) + ν(T) ≥ ν(S ∪ T) + ν(S ∩ T).

  • Equivalently, for any S ⊆ T ⊆ N and u ∈ N \ T,

ν(S ∪ u) − ν(S) ≥ ν(T ∪ u) − ν(T).

  • “Snowballing” effect.
slide-26
SLIDE 26

Submodularity

  • Def. A game is submodular/convex if for any S, T ⊆ N,

ν(S) + ν(T) ≥ ν(S ∪ T) + ν(S ∩ T).

  • Equivalently, for any S ⊆ T ⊆ N and u ∈ N \ T,

ν(S ∪ u) − ν(S) ≥ ν(T ∪ u) − ν(T).

  • “Snowballing” effect.
  • Some advantages of submodularity:
slide-27
SLIDE 27

Submodularity

  • Def. A game is submodular/convex if for any S, T ⊆ N,

ν(S) + ν(T) ≥ ν(S ∪ T) + ν(S ∩ T).

  • Equivalently, for any S ⊆ T ⊆ N and u ∈ N \ T,

ν(S ∪ u) − ν(S) ≥ ν(T ∪ u) − ν(T).

  • “Snowballing” effect.
  • Some advantages of submodularity:

◮ [Shapley ’71] A core solution exists and can be computed efficiently.

slide-28
SLIDE 28

Submodularity

  • Def. A game is submodular/convex if for any S, T ⊆ N,

ν(S) + ν(T) ≥ ν(S ∪ T) + ν(S ∩ T).

  • Equivalently, for any S ⊆ T ⊆ N and u ∈ N \ T,

ν(S ∪ u) − ν(S) ≥ ν(T ∪ u) − ν(T).

  • “Snowballing” effect.
  • Some advantages of submodularity:

◮ [Shapley ’71] A core solution exists and can be computed efficiently. ◮ Core membership is easy.

slide-29
SLIDE 29

Submodularity

  • Def. A game is submodular/convex if for any S, T ⊆ N,

ν(S) + ν(T) ≥ ν(S ∪ T) + ν(S ∩ T).

  • Equivalently, for any S ⊆ T ⊆ N and u ∈ N \ T,

ν(S ∪ u) − ν(S) ≥ ν(T ∪ u) − ν(T).

  • “Snowballing” effect.
  • Some advantages of submodularity:

◮ [Shapley ’71] A core solution exists and can be computed efficiently. ◮ Core membership is easy. ◮ [Kuipers ’96] The nucleolus can be computed efficiently.

slide-30
SLIDE 30

Submodularity

  • Def. A game is submodular/convex if for any S, T ⊆ N,

ν(S) + ν(T) ≥ ν(S ∪ T) + ν(S ∩ T).

  • Equivalently, for any S ⊆ T ⊆ N and u ∈ N \ T,

ν(S ∪ u) − ν(S) ≥ ν(T ∪ u) − ν(T).

  • “Snowballing” effect.
  • Some advantages of submodularity:

◮ [Shapley ’71] A core solution exists and can be computed efficiently. ◮ Core membership is easy. ◮ [Kuipers ’96] The nucleolus can be computed efficiently.

  • Q. Can we characterize submodular instances of a cooperative game?
slide-31
SLIDE 31

Submodularity

  • Def. A game is submodular/convex if for any S, T ⊆ N,

ν(S) + ν(T) ≥ ν(S ∪ T) + ν(S ∩ T).

  • Equivalently, for any S ⊆ T ⊆ N and u ∈ N \ T,

ν(S ∪ u) − ν(S) ≥ ν(T ∪ u) − ν(T).

  • “Snowballing” effect.
  • Some advantages of submodularity:

◮ [Shapley ’71] A core solution exists and can be computed efficiently. ◮ Core membership is easy. ◮ [Kuipers ’96] The nucleolus can be computed efficiently.

  • Q. Can we characterize submodular instances of a cooperative game?

◮ [van den Nouweland & Borm ’91] Communication game.

slide-32
SLIDE 32

Submodularity

  • Def. A game is submodular/convex if for any S, T ⊆ N,

ν(S) + ν(T) ≥ ν(S ∪ T) + ν(S ∩ T).

  • Equivalently, for any S ⊆ T ⊆ N and u ∈ N \ T,

ν(S ∪ u) − ν(S) ≥ ν(T ∪ u) − ν(T).

  • “Snowballing” effect.
  • Some advantages of submodularity:

◮ [Shapley ’71] A core solution exists and can be computed efficiently. ◮ Core membership is easy. ◮ [Kuipers ’96] The nucleolus can be computed efficiently.

  • Q. Can we characterize submodular instances of a cooperative game?

◮ [van den Nouweland & Borm ’91] Communication game. ◮ [Okamoto ’03] Coloring game and vertex cover game.

slide-33
SLIDE 33

Spanning tree game

slide-34
SLIDE 34

Spanning tree game

  • Introduced by [Claus & Kleitman ’73].
slide-35
SLIDE 35

Spanning tree game

  • Introduced by [Claus & Kleitman ’73].

Setting: A set of clients N would like to be connected to a source r. Cheapest solution is a minimum spanning tree. Goal: Distribute the cost of the tree.

slide-36
SLIDE 36

Spanning tree game

  • Introduced by [Claus & Kleitman ’73].

Setting: A set of clients N would like to be connected to a source r. Cheapest solution is a minimum spanning tree. Goal: Distribute the cost of the tree. r

1 5 7 2 2 3 3 2 6 5

slide-37
SLIDE 37

Spanning tree game

  • Introduced by [Claus & Kleitman ’73].

Setting: A set of clients N would like to be connected to a source r. Cheapest solution is a minimum spanning tree. Goal: Distribute the cost of the tree. r

1 5 7 2 2 3 3 2 6 5 1 2 3 2

slide-38
SLIDE 38

Spanning tree game

  • Introduced by [Claus & Kleitman ’73].

Setting: A set of clients N would like to be connected to a source r. Cheapest solution is a minimum spanning tree. Goal: Distribute the cost of the tree. r

2 2 2 2 1 5 7 2 2 3 3 2 6 5 1 2 3 2

slide-39
SLIDE 39

Spanning tree game

  • Introduced by [Claus & Kleitman ’73].

Setting: A set of clients N would like to be connected to a source r. Cheapest solution is a minimum spanning tree. Goal: Distribute the cost of the tree.

  • An instance is defined by an edge-weighted

complete graph G = (V , E) where V = N ∪r. r

2 2 2 2 1 5 7 2 2 3 3 2 6 5 1 2 3 2

slide-40
SLIDE 40

Spanning tree game

  • Introduced by [Claus & Kleitman ’73].

Setting: A set of clients N would like to be connected to a source r. Cheapest solution is a minimum spanning tree. Goal: Distribute the cost of the tree.

  • An instance is defined by an edge-weighted

complete graph G = (V , E) where V = N ∪r.

  • The clients can cooperate.

r

2 2 2 2 1 5 7 2 2 3 3 2 6 5 1 2 3 2

slide-41
SLIDE 41

Spanning tree game

  • Introduced by [Claus & Kleitman ’73].

Setting: A set of clients N would like to be connected to a source r. Cheapest solution is a minimum spanning tree. Goal: Distribute the cost of the tree.

  • An instance is defined by an edge-weighted

complete graph G = (V , E) where V = N ∪r.

  • The clients can cooperate.
  • For S ⊆ N, ν(S) is the cost of a minimum

spanning tree in G[S ∪ r]. r

2 2 2 2 1 5 7 2 2 3 3 2 6 5 1 2 3 2

slide-42
SLIDE 42

Spanning tree game

  • Introduced by [Claus & Kleitman ’73].

Setting: A set of clients N would like to be connected to a source r. Cheapest solution is a minimum spanning tree. Goal: Distribute the cost of the tree.

  • An instance is defined by an edge-weighted

complete graph G = (V , E) where V = N ∪r.

  • The clients can cooperate.
  • For S ⊆ N, ν(S) is the cost of a minimum

spanning tree in G[S ∪ r]. r

2 2 2 2 1 5 7 2 2 3 3 2 6 5 1 2

slide-43
SLIDE 43

Spanning tree game

slide-44
SLIDE 44

Spanning tree game

  • Not submodular.
slide-45
SLIDE 45

Spanning tree game

  • Not submodular.
  • [Bird ’76] proposed an allocation scheme.
slide-46
SLIDE 46

Spanning tree game

  • Not submodular.
  • [Bird ’76] proposed an allocation scheme.
  • [Granot & Huberman ’81] Bird’s allocation is a core solution.
slide-47
SLIDE 47

Spanning tree game

  • Not submodular.
  • [Bird ’76] proposed an allocation scheme.
  • [Granot & Huberman ’81] Bird’s allocation is a core solution.
  • [Granot & Huberman ’82] The game is permutationally convex.
slide-48
SLIDE 48

Spanning tree game

  • Not submodular.
  • [Bird ’76] proposed an allocation scheme.
  • [Granot & Huberman ’81] Bird’s allocation is a core solution.
  • [Granot & Huberman ’82] The game is permutationally convex.

◮ There exists an ordering 1, 2, . . . , n of the players such that for any j ≤ k and S ⊆ N \ [k], ν([j] ∪ S) − ν([j]) ≥ ν([k] ∪ S) − ν([k]).

slide-49
SLIDE 49

Spanning tree game

  • Not submodular.
  • [Bird ’76] proposed an allocation scheme.
  • [Granot & Huberman ’81] Bird’s allocation is a core solution.
  • [Granot & Huberman ’82] The game is permutationally convex.

◮ There exists an ordering 1, 2, . . . , n of the players such that for any j ≤ k and S ⊆ N \ [k], ν([j] ∪ S) − ν([j]) ≥ ν([k] ∪ S) − ν([k]). ◮ Generalizes submodularity.

slide-50
SLIDE 50

Spanning tree game

  • Not submodular.
  • [Bird ’76] proposed an allocation scheme.
  • [Granot & Huberman ’81] Bird’s allocation is a core solution.
  • [Granot & Huberman ’82] The game is permutationally convex.

◮ There exists an ordering 1, 2, . . . , n of the players such that for any j ≤ k and S ⊆ N \ [k], ν([j] ∪ S) − ν([j]) ≥ ν([k] ∪ S) − ν([k]). ◮ Generalizes submodularity.

  • [Faigle et al. ’97] Core membership is co-NP-hard.
slide-51
SLIDE 51

Spanning tree game

  • Not submodular.
  • [Bird ’76] proposed an allocation scheme.
  • [Granot & Huberman ’81] Bird’s allocation is a core solution.
  • [Granot & Huberman ’82] The game is permutationally convex.

◮ There exists an ordering 1, 2, . . . , n of the players such that for any j ≤ k and S ⊆ N \ [k], ν([j] ∪ S) − ν([j]) ≥ ν([k] ∪ S) − ν([k]). ◮ Generalizes submodularity.

  • [Faigle et al. ’97] Core membership is co-NP-hard.
  • [Faigle et al. ’98] Computing the nucleolus is NP-hard.
slide-52
SLIDE 52

Spanning tree game

  • Not submodular.
  • [Bird ’76] proposed an allocation scheme.
  • [Granot & Huberman ’81] Bird’s allocation is a core solution.
  • [Granot & Huberman ’82] The game is permutationally convex.

◮ There exists an ordering 1, 2, . . . , n of the players such that for any j ≤ k and S ⊆ N \ [k], ν([j] ∪ S) − ν([j]) ≥ ν([k] ∪ S) − ν([k]). ◮ Generalizes submodularity.

  • [Faigle et al. ’97] Core membership is co-NP-hard.
  • [Faigle et al. ’98] Computing the nucleolus is NP-hard.

Can we find an efficient characterization of submodular instances?

slide-53
SLIDE 53

State of the art

slide-54
SLIDE 54

State of the art

  • [Kobayashi & Okamoto ’14] characterized submodularity when G has
  • nly two distinct edge-weights.
slide-55
SLIDE 55

State of the art

  • [Kobayashi & Okamoto ’14] characterized submodularity when G has
  • nly two distinct edge-weights.

◮ Let G1 be the subgraph spanned by the cheaper edges.

slide-56
SLIDE 56

State of the art

  • [Kobayashi & Okamoto ’14] characterized submodularity when G has
  • nly two distinct edge-weights.

◮ Let G1 be the subgraph spanned by the cheaper edges. ◮ Submodular ⇔ The vertices of every cycle in G1 are adjacent to r or pairwise adjacent.

slide-57
SLIDE 57

State of the art

  • [Kobayashi & Okamoto ’14] characterized submodularity when G has
  • nly two distinct edge-weights.

◮ Let G1 be the subgraph spanned by the cheaper edges. ◮ Submodular ⇔ The vertices of every cycle in G1 are adjacent to r or pairwise adjacent. ◮ Efficiently testable using block decomposition.

slide-58
SLIDE 58

State of the art

  • [Kobayashi & Okamoto ’14] characterized submodularity when G has
  • nly two distinct edge-weights.

◮ Let G1 be the subgraph spanned by the cheaper edges. ◮ Submodular ⇔ The vertices of every cycle in G1 are adjacent to r or pairwise adjacent. ◮ Efficiently testable using block decomposition.

r

slide-59
SLIDE 59

State of the art

  • [Kobayashi & Okamoto ’14] characterized submodularity when G has
  • nly two distinct edge-weights.

◮ Let G1 be the subgraph spanned by the cheaper edges. ◮ Submodular ⇔ The vertices of every cycle in G1 are adjacent to r or pairwise adjacent. ◮ Efficiently testable using block decomposition.

r

slide-60
SLIDE 60

State of the art

  • [Kobayashi & Okamoto ’14] characterized submodularity when G has
  • nly two distinct edge-weights.

◮ Let G1 be the subgraph spanned by the cheaper edges. ◮ Submodular ⇔ The vertices of every cycle in G1 are adjacent to r or pairwise adjacent. ◮ Efficiently testable using block decomposition.

r

  • For general weights, they stated some sufficient conditions and some

necessary conditions. [Trudeau ’12] also gave a sufficient condition.

slide-61
SLIDE 61

State of the art

  • [Kobayashi & Okamoto ’14] characterized submodularity when G has
  • nly two distinct edge-weights.

◮ Let G1 be the subgraph spanned by the cheaper edges. ◮ Submodular ⇔ The vertices of every cycle in G1 are adjacent to r or pairwise adjacent. ◮ Efficiently testable using block decomposition.

r

  • For general weights, they stated some sufficient conditions and some

necessary conditions. [Trudeau ’12] also gave a sufficient condition.

  • It was conjectured that testing submodularity is co-NP-complete.
slide-62
SLIDE 62

State of the art

  • [Kobayashi & Okamoto ’14] characterized submodularity when G has
  • nly two distinct edge-weights.

◮ Let G1 be the subgraph spanned by the cheaper edges. ◮ Submodular ⇔ The vertices of every cycle in G1 are adjacent to r or pairwise adjacent. ◮ Efficiently testable using block decomposition.

r

  • For general weights, they stated some sufficient conditions and some

necessary conditions. [Trudeau ’12] also gave a sufficient condition.

  • It was conjectured that testing submodularity is co-NP-complete.
  • In this work, we fully characterize submodular instances. This

characterization can be verified in polynomial time.

slide-63
SLIDE 63

Preliminaries

slide-64
SLIDE 64

Preliminaries

  • Def. An instance is submodular if for any S ⊆ N and u, v ∈ N \ S,

ν(S ∪ u) + ν(S ∪ v) − ν(S) − ν(S ∪ {u, v}) ≥ 0

slide-65
SLIDE 65

Preliminaries

  • Def. An instance is submodular if for any S ⊆ N and u, v ∈ N \ S,

ν(S ∪ u) + ν(S ∪ v) − ν(S) − ν(S ∪ {u, v}) ≥ 0

  • For S ⊆ V , mst(S) := cost of a minimum spanning tree in G[S].
slide-66
SLIDE 66

Preliminaries

  • Def. An instance is submodular if for any S ⊆ N and u, v ∈ N \ S,

ν(S ∪ u) + ν(S ∪ v) − ν(S) − ν(S ∪ {u, v}) ≥ 0

  • For S ⊆ V , mst(S) := cost of a minimum spanning tree in G[S].
  • For u, v ∈ N, Suv := {S ⊆ V : r ∈ S and u, v /

∈ S}.

slide-67
SLIDE 67

Preliminaries

  • Def. An instance is submodular if for any S ⊆ N and u, v ∈ N \ S,

mst(S ∪ u) + mst(S ∪ v) − mst(S) − mst(S ∪ {u, v}) ≥ 0

  • For S ⊆ V , mst(S) := cost of a minimum spanning tree in G[S].
  • For u, v ∈ N, Suv := {S ⊆ V : r ∈ S and u, v /

∈ S}.

slide-68
SLIDE 68

Preliminaries

  • Def. An instance is submodular if for any u, v ∈ N and S ⊆ Suv,

mst(S ∪ u) + mst(S ∪ v) − mst(S) − mst(S ∪ {u, v}) ≥ 0

  • For S ⊆ V , mst(S) := cost of a minimum spanning tree in G[S].
  • For u, v ∈ N, Suv := {S ⊆ V : r ∈ S and u, v /

∈ S}.

slide-69
SLIDE 69

Preliminaries

  • Def. An instance is submodular if for any u, v ∈ N and S ⊆ Suv,

fuv(S) := mst(S ∪ u) + mst(S ∪ v) − mst(S) − mst(S ∪ {u, v}) ≥ 0

  • For S ⊆ V , mst(S) := cost of a minimum spanning tree in G[S].
  • For u, v ∈ N, Suv := {S ⊆ V : r ∈ S and u, v /

∈ S}.

slide-70
SLIDE 70

Preliminaries

  • Def. An instance is submodular if for any u, v ∈ N and S ⊆ Suv,

fuv(S) := mst(S ∪ u) + mst(S ∪ v) − mst(S) − mst(S ∪ {u, v}) ≥ 0

  • For S ⊆ V , mst(S) := cost of a minimum spanning tree in G[S].
  • For u, v ∈ N, Suv := {S ⊆ V : r ∈ S and u, v /

∈ S}.

  • Sort the edge weights w1 < w2 < · · · < wk.
slide-71
SLIDE 71

Preliminaries

  • Def. An instance is submodular if for any u, v ∈ N and S ⊆ Suv,

fuv(S) := mst(S ∪ u) + mst(S ∪ v) − mst(S) − mst(S ∪ {u, v}) ≥ 0

  • For S ⊆ V , mst(S) := cost of a minimum spanning tree in G[S].
  • For u, v ∈ N, Suv := {S ⊆ V : r ∈ S and u, v /

∈ S}.

  • Sort the edge weights w1 < w2 < · · · < wk.
  • Define the subgraph Gi := (V , Ei) where Ei = {e ∈ E : w(e) ≤ wi}.
slide-72
SLIDE 72

Preliminaries

  • Def. An instance is submodular if for any u, v ∈ N and S ⊆ Suv,

fuv(S) := mst(S ∪ u) + mst(S ∪ v) − mst(S) − mst(S ∪ {u, v}) ≥ 0

  • For S ⊆ V , mst(S) := cost of a minimum spanning tree in G[S].
  • For u, v ∈ N, Suv := {S ⊆ V : r ∈ S and u, v /

∈ S}.

  • Sort the edge weights w1 < w2 < · · · < wk.
  • Define the subgraph Gi := (V , Ei) where Ei = {e ∈ E : w(e) ≤ wi}.
  • Def. The expensive neighborhood of an edge uv is

ˆ N(uv) := {s ∈ V : w(su) > w(uv) or w(sv) > w(uv)} .

slide-73
SLIDE 73

Preliminaries

  • Def. An instance is submodular if for any u, v ∈ N and S ⊆ Suv,

fuv(S) := mst(S ∪ u) + mst(S ∪ v) − mst(S) − mst(S ∪ {u, v}) ≥ 0

  • For S ⊆ V , mst(S) := cost of a minimum spanning tree in G[S].
  • For u, v ∈ N, Suv := {S ⊆ V : r ∈ S and u, v /

∈ S}.

  • Sort the edge weights w1 < w2 < · · · < wk.
  • Define the subgraph Gi := (V , Ei) where Ei = {e ∈ E : w(e) ≤ wi}.
  • Def. The expensive neighborhood of an edge uv is

ˆ N(uv) := {s ∈ V : w(su) > w(uv) or w(sv) > w(uv)} .

u v s1 s2 s3 w1 w2 w3

slide-74
SLIDE 74

Preliminaries

  • Def. An instance is submodular if for any u, v ∈ N and S ⊆ Suv,

fuv(S) := mst(S ∪ u) + mst(S ∪ v) − mst(S) − mst(S ∪ {u, v}) ≥ 0

  • For S ⊆ V , mst(S) := cost of a minimum spanning tree in G[S].
  • For u, v ∈ N, Suv := {S ⊆ V : r ∈ S and u, v /

∈ S}.

  • Sort the edge weights w1 < w2 < · · · < wk.
  • Define the subgraph Gi := (V , Ei) where Ei = {e ∈ E : w(e) ≤ wi}.
  • Def. The expensive neighborhood of an edge uv is

ˆ N(uv) := {s ∈ V : w(su) > w(uv) or w(sv) > w(uv)} .

u v s1 s2 s3 w1 w2 w3

slide-75
SLIDE 75

Main result

Theorem: The spanning tree game on G is submodular if and only if:

1 There are no violated cycles in Gi for all i < k. 2 For every candidate edge uv, fuv( ˆ

N(uv)) ≥ 0. Furthermore, these conditions can be verified in polynomial time.

slide-76
SLIDE 76

First step

slide-77
SLIDE 77

First step

  • Submodularity characterization for k = 2:

The vertices of every cycle in G1 are adjacent to r

  • r pairwise adjacent.
slide-78
SLIDE 78

First step

  • Submodularity characterization for k = 2:

The vertices of every cycle in G1 are adjacent to r

  • r pairwise adjacent.
  • A natural extension:

The vertices of every cycle in Gi are adjacent to r

  • r pairwise adjacent, for all i < k.
slide-79
SLIDE 79

First step

  • Submodularity characterization for k = 2:

The vertices of every cycle in G1 are adjacent to r

  • r pairwise adjacent.
  • A natural extension:

The vertices of every cycle in Gi are adjacent to r

  • r pairwise adjacent, for all i < k.
  • This condition is too strong.
slide-80
SLIDE 80

First step

  • Submodularity characterization for k = 2:

The vertices of every cycle in G1 are adjacent to r

  • r pairwise adjacent.
  • A natural extension:

The vertices of every cycle in Gi are adjacent to r

  • r pairwise adjacent, for all i < k.
  • This condition is too strong.

r u s v 1 2

G1

r u s v 2 2 2 2

G2

r u s v 3

G3 = G

slide-81
SLIDE 81

First step

  • Submodularity characterization for k = 2:

The vertices of every cycle in G1 are adjacent to r

  • r pairwise adjacent.
  • A natural extension:

The vertices of every cycle in Gi are adjacent to r

  • r pairwise adjacent, for all i < k.
  • This condition is too strong.

r u s v 1 2

G1

r u s v 2 2 2 2

G2

r u s v 3

G3 = G

  • G2 violates the condition, yet the instance is submodular.
slide-82
SLIDE 82

Violated cycles

slide-83
SLIDE 83

Violated cycles

  • Def. Given a cycle C and a chord f = uv, let P1 and P2 denote the two

u-v paths in C.

u v P1 P2 f

slide-84
SLIDE 84

Violated cycles

  • Def. Given a cycle C and a chord f = uv, let P1 and P2 denote the two

u-v paths in C. ◮ f covers C if w(f ) ≥ w(e) for all e ∈ E(P1) or e ∈ E(P2).

u v P1 P2 f

slide-85
SLIDE 85

Violated cycles

  • Def. Given a cycle C and a chord f = uv, let P1 and P2 denote the two

u-v paths in C. ◮ f covers C if w(f ) ≥ w(e) for all e ∈ E(P1) or e ∈ E(P2). ◮ C is well-covered if it is covered by all of its chords.

u v P1 P2 f

slide-86
SLIDE 86

Violated cycles

  • Def. Given a cycle C and a chord f = uv, let P1 and P2 denote the two

u-v paths in C. ◮ f covers C if w(f ) ≥ w(e) for all e ∈ E(P1) or e ∈ E(P2). ◮ C is well-covered if it is covered by all of its chords.

u v P1 P2 f 1 3 1 1 2

slide-87
SLIDE 87

Violated cycles

  • Def. Given a cycle C and a chord f = uv, let P1 and P2 denote the two

u-v paths in C. ◮ f covers C if w(f ) ≥ w(e) for all e ∈ E(P1) or e ∈ E(P2). ◮ C is well-covered if it is covered by all of its chords.

u v P1 P2 f 1 3 1 1 2

  • Def. A cycle is violated if it is well-covered but its vertices are neither

adjacent to r nor pairwise adjacent.

slide-88
SLIDE 88

Violated cycles

  • Def. Given a cycle C and a chord f = uv, let P1 and P2 denote the two

u-v paths in C. ◮ f covers C if w(f ) ≥ w(e) for all e ∈ E(P1) or e ∈ E(P2). ◮ C is well-covered if it is covered by all of its chords.

u v P1 P2 f 1 3 1 1 2

  • Def. A cycle is violated if it is well-covered but its vertices are neither

adjacent to r nor pairwise adjacent. Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

slide-89
SLIDE 89

Violated cycles

  • Def. Given a cycle C and a chord f = uv, let P1 and P2 denote the two

u-v paths in C. ◮ f covers C if w(f ) ≥ w(e) for all e ∈ E(P1) or e ∈ E(P2). ◮ C is well-covered if it is covered by all of its chords.

u v P1 P2 f 1 3 1 1 2

  • Def. A cycle is violated if it is well-covered but its vertices are neither

adjacent to r nor pairwise adjacent. Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. ◮ Coincides with [Kobayashi & Okamoto ’14] when k = 2.

slide-90
SLIDE 90

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

slide-91
SLIDE 91

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

  • Recall some basic structures:
slide-92
SLIDE 92

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

  • Recall some basic structures:

◮ Hole.

slide-93
SLIDE 93

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

  • Recall some basic structures:

◮ Hole. ◮ Diamond. The degree-two vertices are called tips.

slide-94
SLIDE 94

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

  • Recall some basic structures:

◮ Hole. ◮ Diamond. The degree-two vertices are called tips.

  • Def. A hole is bad if at least one of its vertices is not adjacent to r.
slide-95
SLIDE 95

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

  • Recall some basic structures:

◮ Hole. ◮ Diamond. The degree-two vertices are called tips.

  • Def. A hole is bad if at least one of its vertices is not adjacent to r.

r

slide-96
SLIDE 96

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

  • Recall some basic structures:

◮ Hole. ◮ Diamond. The degree-two vertices are called tips.

  • Def. A hole is bad if at least one of its vertices is not adjacent to r.

r r

slide-97
SLIDE 97

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

  • Recall some basic structures:

◮ Hole. ◮ Diamond. The degree-two vertices are called tips.

  • Def. A hole is bad if at least one of its vertices is not adjacent to r.
  • Def. An induced diamond is bad if its hamiltonian cycle is well-covered

but at least one of its tips is not adjacent to r.

r r

slide-98
SLIDE 98

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

  • Recall some basic structures:

◮ Hole. ◮ Diamond. The degree-two vertices are called tips.

  • Def. A hole is bad if at least one of its vertices is not adjacent to r.
  • Def. An induced diamond is bad if its hamiltonian cycle is well-covered

but at least one of its tips is not adjacent to r.

r r r

slide-99
SLIDE 99

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

  • Recall some basic structures:

◮ Hole. ◮ Diamond. The degree-two vertices are called tips.

  • Def. A hole is bad if at least one of its vertices is not adjacent to r.
  • Def. An induced diamond is bad if its hamiltonian cycle is well-covered

but at least one of its tips is not adjacent to r.

r r r

Lemma 2: If the instance is submodular, then there are no bad holes or bad induced diamonds in Gi for all i < k.

slide-100
SLIDE 100

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k.

slide-101
SLIDE 101

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive.

slide-102
SLIDE 102

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle.

slide-103
SLIDE 103

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj.

slide-104
SLIDE 104

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj. ◮ We may assume that C has a chord.

slide-105
SLIDE 105

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj. ◮ We may assume that C has a chord. ◮ Claim: The subcycles of C formed by any chord are well-covered.

slide-106
SLIDE 106

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj. ◮ We may assume that C has a chord. ◮ Claim: The subcycles of C formed by any chord are well-covered. ◮ Suppose r ∈ V (C).

r

slide-107
SLIDE 107

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj. ◮ We may assume that C has a chord. ◮ Claim: The subcycles of C formed by any chord are well-covered. ◮ Suppose r ∈ V (C).

r s

slide-108
SLIDE 108

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj. ◮ We may assume that C has a chord. ◮ Claim: The subcycles of C formed by any chord are well-covered. ◮ Suppose r ∈ V (C).

r s

slide-109
SLIDE 109

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj. ◮ We may assume that C has a chord. ◮ Claim: The subcycles of C formed by any chord are well-covered. ◮ Suppose r ∈ V (C).

r s

slide-110
SLIDE 110

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj. ◮ We may assume that C has a chord. ◮ Claim: The subcycles of C formed by any chord are well-covered. ◮ Suppose r ∈ V (C).

r s

slide-111
SLIDE 111

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj. ◮ We may assume that C has a chord. ◮ Claim: The subcycles of C formed by any chord are well-covered. ◮ Suppose r ∈ V (C).

r s

slide-112
SLIDE 112

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj. ◮ We may assume that C has a chord. ◮ Claim: The subcycles of C formed by any chord are well-covered. ◮ Suppose r ∈ V (C).

r s

slide-113
SLIDE 113

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj. ◮ We may assume that C has a chord. ◮ Claim: The subcycles of C formed by any chord are well-covered. ◮ Suppose r ∈ V (C).

r s

◮ C is a bad induced diamond. (We skip the case r / ∈ V (C).)

slide-114
SLIDE 114

Violated cycles

Lemma 1: If the instance is submodular, then there are no violated cycles in Gi for all i < k. Proof: Contrapositive. ◮ Let j be the smallest integer such that Gj has a violated cycle. ◮ Pick the smallest violated cycle C in Gj. ◮ We may assume that C has a chord. ◮ Claim: The subcycles of C formed by any chord are well-covered. ◮ Suppose r ∈ V (C).

r s

◮ C is a bad induced diamond. (We skip the case r / ∈ V (C).) Remark: Violated cycles can be detected in polynomial time.

slide-115
SLIDE 115

Is this sufficient?

slide-116
SLIDE 116

Is this sufficient?

  • Recall our example:

r u s v

G1

r u s v

G2

r u s v

G3 = G

slide-117
SLIDE 117

Is this sufficient?

  • Recall our example:

r u s v

G1

r u s v

G2

r u s v

G3 = G

fuv({r, s}) = mst({r, s, u}) + mst({r, s, v}) − mst({r, s}) − mst({r, s, u, v})

slide-118
SLIDE 118

Is this sufficient?

  • Recall our example:

r u s v

G1

r u s v

G2

r u s v

G3 = G

fuv({r, s}) = mst({r, s, u}) + mst({r, s, v}) − mst({r, s}) − mst({r, s, u, v}) = 2w2 + 2w2 − w3 − (w1 + 2w2)

slide-119
SLIDE 119

Is this sufficient?

  • Recall our example:

r u s v

G1

r u s v

G2

r u s v

G3 = G

fuv({r, s}) = mst({r, s, u}) + mst({r, s, v}) − mst({r, s}) − mst({r, s, u, v}) = 2w2 + 2w2 − w3 − (w1 + 2w2) = 2w2 − w1 − w3

slide-120
SLIDE 120

Is this sufficient?

  • Recall our example:

r u s v

G1

r u s v

G2

r u s v

G3 = G

fuv({r, s}) = mst({r, s, u}) + mst({r, s, v}) − mst({r, s}) − mst({r, s, u, v}) = 2w2 + 2w2 − w3 − (w1 + 2w2) = 2w2 − w1 − w3 ← − can be made negative

slide-121
SLIDE 121

Candidate edge

slide-122
SLIDE 122

Candidate edge

  • Denote (⋆) as the following property:

There are no violated cycles in Gi for all i < k.

slide-123
SLIDE 123

Candidate edge

  • Denote (⋆) as the following property:

There are no violated cycles in Gi for all i < k. Lemma 4⋆: If S ⊆ ˆ Nuv, then fuv(S) = 0.

slide-124
SLIDE 124

Candidate edge

  • Denote (⋆) as the following property:

There are no violated cycles in Gi for all i < k. Lemma 4⋆: If S ⊆ ˆ Nuv, then fuv(S) = 0. ◮ If r / ∈ ˆ N(uv), then S ⊆ ˆ N(uv) for all S ∈ Suv.

slide-125
SLIDE 125

Candidate edge

  • Denote (⋆) as the following property:

There are no violated cycles in Gi for all i < k. Lemma 4⋆: If S ⊆ ˆ Nuv, then fuv(S) = 0. ◮ If r / ∈ ˆ N(uv), then S ⊆ ˆ N(uv) for all S ∈ Suv. ◮ So we can skip these edges!

slide-126
SLIDE 126

Candidate edge

  • Denote (⋆) as the following property:

There are no violated cycles in Gi for all i < k. Lemma 4⋆: If S ⊆ ˆ Nuv, then fuv(S) = 0. ◮ If r / ∈ ˆ N(uv), then S ⊆ ˆ N(uv) for all S ∈ Suv. ◮ So we can skip these edges!

  • Def. An edge uv is a candidate edge if r ∈ ˆ

N(uv).

slide-127
SLIDE 127

Candidate edge

  • Denote (⋆) as the following property:

There are no violated cycles in Gi for all i < k. Lemma 4⋆: If S ⊆ ˆ Nuv, then fuv(S) = 0. ◮ If r / ∈ ˆ N(uv), then S ⊆ ˆ N(uv) for all S ∈ Suv. ◮ So we can skip these edges!

  • Def. An edge uv is a candidate edge if r ∈ ˆ

N(uv). Lemma 5⋆: Assume fuv( ˆ N(uv)) ≥ 0 for every candidate edge uv. Then, fuv is inclusion-wise nonincreasing in ˆ N(uv) for every candidate edge uv.

slide-128
SLIDE 128

Putting it all together

slide-129
SLIDE 129

Putting it all together

Theorem: The spanning tree game on G is submodular if and only if:

1 There are no violated cycles in Gi for all i < k. 2 For every candidate edge uv, fuv( ˆ

N(uv)) ≥ 0. Furthermore, these conditions can be verified in polynomial time.

slide-130
SLIDE 130

Putting it all together

Theorem: The spanning tree game on G is submodular if and only if:

1 There are no violated cycles in Gi for all i < k. 2 For every candidate edge uv, fuv( ˆ

N(uv)) ≥ 0. Furthermore, these conditions can be verified in polynomial time. Proof: (⇒) Assume the game is submodular.

slide-131
SLIDE 131

Putting it all together

Theorem: The spanning tree game on G is submodular if and only if:

1 There are no violated cycles in Gi for all i < k. 2 For every candidate edge uv, fuv( ˆ

N(uv)) ≥ 0. Furthermore, these conditions can be verified in polynomial time. Proof: (⇒) Assume the game is submodular. ◮ Condition 1 is satisfied by Lemma 1.

slide-132
SLIDE 132

Putting it all together

Theorem: The spanning tree game on G is submodular if and only if:

1 There are no violated cycles in Gi for all i < k. 2 For every candidate edge uv, fuv( ˆ

N(uv)) ≥ 0. Furthermore, these conditions can be verified in polynomial time. Proof: (⇒) Assume the game is submodular. ◮ Condition 1 is satisfied by Lemma 1. ◮ Condition 2 is satisfied trivially.

slide-133
SLIDE 133

Putting it all together

Theorem: The spanning tree game on G is submodular if and only if:

1 There are no violated cycles in Gi for all i < k. 2 For every candidate edge uv, fuv( ˆ

N(uv)) ≥ 0. Furthermore, these conditions can be verified in polynomial time. Proof: (⇒) Assume the game is submodular. ◮ Condition 1 is satisfied by Lemma 1. ◮ Condition 2 is satisfied trivially. (⇐) Assume Conditions 1 and 2 are satisfied.

slide-134
SLIDE 134

Putting it all together

Theorem: The spanning tree game on G is submodular if and only if:

1 There are no violated cycles in Gi for all i < k. 2 For every candidate edge uv, fuv( ˆ

N(uv)) ≥ 0. Furthermore, these conditions can be verified in polynomial time. Proof: (⇒) Assume the game is submodular. ◮ Condition 1 is satisfied by Lemma 1. ◮ Condition 2 is satisfied trivially. (⇐) Assume Conditions 1 and 2 are satisfied. ◮ Let u, v ∈ N and S ∈ Suv.

slide-135
SLIDE 135

Putting it all together

Theorem: The spanning tree game on G is submodular if and only if:

1 There are no violated cycles in Gi for all i < k. 2 For every candidate edge uv, fuv( ˆ

N(uv)) ≥ 0. Furthermore, these conditions can be verified in polynomial time. Proof: (⇒) Assume the game is submodular. ◮ Condition 1 is satisfied by Lemma 1. ◮ Condition 2 is satisfied trivially. (⇐) Assume Conditions 1 and 2 are satisfied. ◮ Let u, v ∈ N and S ∈ Suv. ◮ If S ⊆ ˆ N(uv), then fuv(S) = 0 by Lemma 4.

slide-136
SLIDE 136

Putting it all together

Theorem: The spanning tree game on G is submodular if and only if:

1 There are no violated cycles in Gi for all i < k. 2 For every candidate edge uv, fuv( ˆ

N(uv)) ≥ 0. Furthermore, these conditions can be verified in polynomial time. Proof: (⇒) Assume the game is submodular. ◮ Condition 1 is satisfied by Lemma 1. ◮ Condition 2 is satisfied trivially. (⇐) Assume Conditions 1 and 2 are satisfied. ◮ Let u, v ∈ N and S ∈ Suv. ◮ If S ⊆ ˆ N(uv), then fuv(S) = 0 by Lemma 4. ◮ If S ⊆ ˆ N(uv), then fuv(S) ≥ fuv( ˆ N(uv)) ≥ 0 by Lemma 5.

slide-137
SLIDE 137

Thank you!