matching games - computing the nucleolus in polynomial time · an outcome problems with the least...
TRANSCRIPT
![Page 1: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/1.jpg)
Matching GamesComputing the Nucleolus in Polynomial Time
By Justin TothJoint work with Jochen Könemann and Kanstantsin Pashkovich
University of Waterloo
![Page 2: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/2.jpg)
Weighted Matching Games
• Vertices: Players• Edges: PotentialCollaborations
• Have ≤ 1 collaborator• Models Network Bargainingsetting of [Kleinberg and Tardos’08]
1
![Page 3: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/3.jpg)
Weighted Matching Games
• Value ν(S) = max{w(M) :M is a matching on G[S]}
• S ⊆ T =⇒ ν(S) ≤ ν(T)• So assume the grandcoalition forms.
2
![Page 4: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/4.jpg)
Least Core
How to fairly distribute matchingvalue to the players?
min ϵ
s.t.
∑i∈S
pi ≥ ν(S)
− ϵ
∀S ⊆ V
∑i∈V
pi = ν(V)
pi ≥ 0 ∀i ∈ V
3
![Page 5: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/5.jpg)
Least Core
ν(V) = 70+ 70+ 70 = 210νfrac(V) = 7 · 35 = 245
min ϵ
s.t.
∑i∈S
pi ≥ ν(S)
− ϵ
∀S ⊆ V
∑i∈V
pi = ν(V)
pi ≥ 0 ∀i ∈ V
3
![Page 6: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/6.jpg)
Least Core
ν(V) = 70+ 70+ 70 = 210νfrac(V) = 7 · 35 = 245
min ϵ
s.t.∑i∈S
pi ≥ ν(S)− ϵ ∀S ⊆ V
∑i∈V
pi = ν(V)
pi ≥ 0 ∀i ∈ V
3
![Page 7: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/7.jpg)
An Outcome
ν(V) = 210ϵ1 = 70 - 2·34+ 70− 2 · 24 = 24
min ϵ
s.t.∑i∈S
pi ≥ ν(S)− ϵ ∀S ⊆ V
∑i∈V
pi = ν(V)
pi ≥ 0 ∀i ∈ V
4
![Page 8: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/8.jpg)
An Outcome
Problems with the Least Core:• outcomes are not unique• Excess: p(S)− ν(S) onlycontrolled for worst coalitions
4
![Page 9: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/9.jpg)
The Nucleolus
The nucleolus is fairest allocation p∗
5
![Page 10: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/10.jpg)
The Nucleolus
The nucleolus is fairest allocation p∗
exp(S) := p(S)− ν(S)
5
![Page 11: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/11.jpg)
The Nucleolus
The nucleolus is fairest allocation p∗
exp(S) := p(S)− ν(S)
Sort excesses: exp(S1) ≥ exp(S2) ≥ · · · ≥ exp(S) ≥ · · · =: θ(p)
5
![Page 12: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/12.jpg)
The Nucleolus
The nucleolus is fairest allocation p∗
exp(S) := p(S)− ν(S)
Sort excesses: exp(S1) ≥ exp(S2) ≥ · · · ≥ exp(S) ≥ · · · =: θ(p)
p∗ lexicographically minimizes θ(p)
5
![Page 13: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/13.jpg)
The Nucleolus
The nucleolus is fairest allocation p∗
exp(S) := p(S)− ν(S)
Sort excesses: exp(S1) ≥ exp(S2) ≥ · · · ≥ exp(S) ≥ · · · =: θ(p)
p∗ lexicographically minimizes θ(p)
And it is unique!
5
![Page 14: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/14.jpg)
Hardness of Computing the Nucleolus
In P
• Shortest Path Games• Node-Weighted Matching• Convex Games
• Our Result: Matching Games
NP-hard
• Spanning Tree Games• Flow Games• Weighted Voting Games• Linear Production Games
Open for 15 years: How about Weighted Matching Games?
[Kern and Paulusma ’03]
6
![Page 15: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/15.jpg)
Hardness of Computing the Nucleolus
In P• Shortest Path Games• Node-Weighted Matching• Convex Games
• Our Result: Matching Games
NP-hard• Spanning Tree Games• Flow Games• Weighted Voting Games• Linear Production Games
Open for 15 years: How about Weighted Matching Games?
[Kern and Paulusma ’03]
6
![Page 16: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/16.jpg)
Hardness of Computing the Nucleolus
In P• Shortest Path Games• Node-Weighted Matching• Convex Games
• Our Result: Matching Games
NP-hard• Spanning Tree Games• Flow Games• Weighted Voting Games• Linear Production Games
Open for 15 years: How about Weighted Matching Games?
[Kern and Paulusma ’03]
6
![Page 17: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/17.jpg)
Hardness of Computing the Nucleolus
In P• Shortest Path Games• Node-Weighted Matching• Convex Games• Our Result: Matching Games
NP-hard• Spanning Tree Games• Flow Games• Weighted Voting Games• Linear Production Games
Open for 15 years: How about Weighted Matching Games?
[Kern and Paulusma ’03]
6
![Page 18: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/18.jpg)
Maschler’s Scheme
Solve a hierarchy of linear programs
P1 ⊇ P2 ⊇ · · · ⊇ P|V| ≡ p∗
Subsequent LPs minimize excess over coalitions not fixed
P2 : min ϵ
s.t. p ∈ P1p(S) ≥ ν(S)− ϵ ∀S ̸∈ Fix(P1)
Fix(P1) = {S ⊂ V : ∃c s.t. p(S) = c, ∀p ∈ P1}
7
![Page 19: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/19.jpg)
Maschler’s Scheme
Solve a hierarchy of linear programs
P1 ⊇ P2 ⊇ · · · ⊇ P|V| ≡ p∗
Each LP fixes new coalitions =⇒ dimension of Pi+1 reduces
P2 : min ϵ
s.t. p ∈ P1p(S) ≥ ν(S)− ϵ ∀S ̸∈ Fix(P1)
Fix(P1) = {S ⊂ V : ∃c s.t. p(S) = c, ∀p ∈ P1}
7
![Page 20: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/20.jpg)
Maschler’s Scheme
Solve a hierarchy of linear programs
P1 ⊇ P2 ⊇ · · · ⊇ P|V| ≡ p∗
O(2|V|) constraints in naive formulation of each Pi
P2 : min ϵ
s.t. p ∈ P1p(S) ≥ ν(S)− ϵ ∀S ̸∈ Fix(P1)
Fix(P1) = {S ⊂ V : ∃c s.t. p(S) = c, ∀p ∈ P1}
7
![Page 21: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/21.jpg)
Maschler’s Scheme
Solve a hierarchy of linear programs
P1 ⊇ P2 ⊇ · · · ⊇ P|V| ≡ p∗
To implement Maschler’s Scheme give a polynomial sizedformulation for each Pi
P2 : min ϵ
s.t. p ∈ P1p(S) ≥ ν(S)− ϵ ∀S ̸∈ Fix(P1)
Fix(P1) = {S ⊂ V : ∃c s.t. p(S) = c, ∀p ∈ P1}
7
![Page 22: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/22.jpg)
Separation for P1
w(uv) = w(uv)− pu − pv Min
Excess Matchings: maxw(M)
Solve using your favourite maxweight matching algorithm!
min ϵ
s.t.∑i∈S
pi ≥ ν(S)− ϵ ∀S ⊆ V (???)
∑i∈V
pi = ν(V) (Easy!)
pi ≥ 0 ∀i ∈ V (Easy!)
8
![Page 23: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/23.jpg)
Separation for P1
w(uv) = w(uv)− pu − pv
Min
Excess Matchings: maxw(M)
Solve using your favourite maxweight matching algorithm!
min ϵ
s.t.∑i∈S
pi ≥ ν(S)− ϵ ∀S ⊆ V (???)
∑i∈V
pi = ν(V) (Easy!)
pi ≥ 0 ∀i ∈ V (Easy!)
8
![Page 24: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/24.jpg)
Separation for P1
w(uv) = w(uv)− pu − pv Min
Excess Matchings: maxw(M)
Solve using your favourite maxweight matching algorithm!
min ϵ
s.t.∑i∈S
pi ≥ ν(S)− ϵ ∀S ⊆ V (???)
∑i∈V
pi = ν(V) (Easy!)
pi ≥ 0 ∀i ∈ V (Easy!)
8
![Page 25: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/25.jpg)
Separation for P1
w(uv) = w(uv)− pu − pv Min
Excess Matchings: maxw(M)
Solve using your favourite maxweight matching algorithm!
min ϵ
s.t.∑i∈S
pi ≥ ν(S)− ϵ ∀S ⊆ V (Easy!)
∑i∈V
pi = ν(V) (Easy!)
pi ≥ 0 ∀i ∈ V (Easy!)
8
![Page 26: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/26.jpg)
Describing Constraints of P1
Tight P1 constraints ≡ optimal wmatchingsOptimal Matchings defined by:
x(E(B)) = |B| − 12 ∀B ∈ L
x(δ(v)) = 1 ∀v ∈ T
9
![Page 27: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/27.jpg)
Describing Constraints of P1
Tight P1 constraints ≡ optimal wmatchingsOptimal Matchings defined by:
x(E(B)) = |B| − 12 ∀B ∈ L
x(δ(v)) = 1 ∀v ∈ T
Can show T = ∅ when ϵ1 > 0
9
![Page 28: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/28.jpg)
Describing Constraints of P1
Tight P1 constraints ≡ optimal wmatchingsOptimal Matchings defined by:
x(E(B)) = |B| − 12 ∀B ∈ L
← Examples
9
![Page 29: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/29.jpg)
Describing Constraints of P1
Tight P1 constraints ≡ optimal wmatchingsOptimal Matchings defined by:
x(E(B)) = |B| − 12 ∀B ∈ L
← Examples
9
![Page 30: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/30.jpg)
Describing Constraints of P1
Tight P1 constraints ≡ optimal wmatchingsOptimal Matchings defined by:
x(E(B)) = |B| − 12 ∀B ∈ L
← Examples
9
![Page 31: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/31.jpg)
Describing Constraints of P1
Tight P1 constraints ≡ optimal wmatchingsOptimal Matchings defined by:
x(E(B)) = |B| − 12 ∀B ∈ L
Only describes constraints forone p ∈ P1
9
![Page 32: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/32.jpg)
Describing Constraints of P1
Tight P1 constraints ≡ optimal wmatchingsOptimal Matchings defined by:
x(E(B)) = |B| − 12 ∀B ∈ L
Only describes constraints forone p ∈ P1
Need something for all p ∈ P1
9
![Page 33: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/33.jpg)
Universal Matchings
If p is in relative interior of P1 we call p a universal allocation.
Matching M: exp(M) = ϵ1 ⇐⇒ exp(M) = ϵ1, ∀p ∈ P1
Max w(uv) := w(uv)− pu − pv weight matchings describe universalmatchings.
Studying the structure of universal matchings will be key!
10
![Page 34: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/34.jpg)
Universal Matchings
If p is in relative interior of P1 we call p a universal allocation.
Matching M: exp(M) = ϵ1 ⇐⇒ exp(M) = ϵ1, ∀p ∈ P1
Max w(uv) := w(uv)− pu − pv weight matchings describe universalmatchings.
Studying the structure of universal matchings will be key!
10
![Page 35: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/35.jpg)
Universal Matchings
If p is in relative interior of P1 we call p a universal allocation.
Matching M: exp(M) = ϵ1 ⇐⇒ exp(M) = ϵ1, ∀p ∈ P1
Max w(uv) := w(uv)− pu − pv weight matchings describe universalmatchings.
Studying the structure of universal matchings will be key!
10
![Page 36: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/36.jpg)
Universal Matchings
If p is in relative interior of P1 we call p a universal allocation.
Matching M: exp(M) = ϵ1 ⇐⇒ exp(M) = ϵ1, ∀p ∈ P1
Max w(uv) := w(uv)− pu − pv weight matchings describe universalmatchings.
Studying the structure of universal matchings will be key!
10
![Page 37: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/37.jpg)
Three Ideas for Description
Consider laminar blossom family L for p
(Recall: Matching M is optimal ⇐⇒ |M ∩ E(B)| = |B|−12 ∀B ∈ L)
1. Negative excess only on blossoms.
2. Other edges have ≥ 0 excess.
3. There is a symmertry property between vertices in the sameblossom
11
![Page 38: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/38.jpg)
Three Ideas for Description
Consider laminar blossom family L for p
(Recall: Matching M is optimal ⇐⇒ |M ∩ E(B)| = |B|−12 ∀B ∈ L)
Observations
1. Negative excess only on blossoms.
2. Other edges have ≥ 0 excess.
3. There is a symmertry property between vertices in the sameblossom
11
![Page 39: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/39.jpg)
Three Ideas for Description
Consider laminar blossom family L for p
Observations
1. Negative excess only on blossoms.
2. Other edges have ≥ 0 excess.
3. There is a symmertry property between vertices in the sameblossom
11
![Page 40: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/40.jpg)
Three Ideas for Description
Consider laminar blossom family L for p
Observations
1. Negative excess only on blossoms.
2. Other edges have ≥ 0 excess.
3. There is a symmertry property between vertices in the sameblossom
11
![Page 41: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/41.jpg)
Three Ideas for Description
Consider laminar blossom family L for p
Observations
1. Negative excess only on blossoms.
2. Other edges have ≥ 0 excess.
3. There is a symmertry property between vertices in the sameblossom
11
![Page 42: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/42.jpg)
Three Ideas for Description
Consider laminar blossom family L for p
Observations
1. Negative excess only on blossoms.
2. Other edges have ≥ 0 excess.
3. There is a symmertry property between vertices in the sameblossom
Theorem: These linear constraints suffice to describe Least Core P1
11
![Page 43: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/43.jpg)
Observations 1 and 2
1. w values > 0 on blossom edges.
Proof Idea: Drop non-positiveedge e from M: Optimal but|M− e ∩ E(B)| < |M ∩ E(B)| = |B|−1
2■
2. w values ≤ 0 on non-blossomedges.
Proof Idea: Can satisfy Lconstraints without such edges. ■
12
![Page 44: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/44.jpg)
Observations 1 and 2
1. w values > 0 on blossom edges.
Proof Idea: Drop non-positiveedge e from M: Optimal but|M− e ∩ E(B)| < |M ∩ E(B)| = |B|−1
2■
2. w values ≤ 0 on non-blossomedges.
Proof Idea: Can satisfy Lconstraints without such edges. ■
12
![Page 45: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/45.jpg)
Observation 3
Need to understand w distributionover each B ∈ L
13
![Page 46: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/46.jpg)
Observation 3
Need to understand w distributionover each B ∈ L
← Equal on each edge?
13
![Page 47: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/47.jpg)
Observation 3
Need to understand w distributionover each B ∈ L
← Equal on each edge?
Fails for larger examples!
13
![Page 48: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/48.jpg)
Observation 3
Actually: ∀u, v ∈ B,∀B ∈ L
pu - pu = pv − pv
13
![Page 49: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/49.jpg)
Observation 3
Actually: ∀u, v ∈ B,∀B ∈ L
pu - pu = pv − pv
Technical Proof. Key Idea:M exposing u can be modified
within B to expose v.
13
![Page 50: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/50.jpg)
Least Core Description
Obtain a nice P1 description
min ϵ
s.t. pv − pv = pu − pu for all u, v ∈ S∗i , i ∈ [k]p(e)− w(e) ≤ 0 for all e ∈ E∗p(e)− w(e) ≥ 0 for all e ∈ E+
p(M∗)− w(M∗) = −ϵ M∗ a universal matchingp(V) = ν(G)p ≥ 0
Where S∗1 , . . . , S∗k are maximal sets of L,
E∗ :=(∪
i∈[k] E(S∗i ))∩(∪
M∈M∗ M),
and E+ is the edges with at most one endpoint each S∗i .
14
![Page 51: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/51.jpg)
Implementing Maschler’s Scheme
Solve a hierarchy of linear programs
P1 ⊇ P2 ⊇ · · · ⊇ P|V| ≡ p∗
To find nucleolus= p∗ give a polynomial sized formulation for eachPi
P2 : min ϵ
s.t. p ∈ P1p(S) ≥ ν(S)− ϵ ∀S ̸∈ Fix(P1)
Fix(P1) = {S ⊂ V : ∃c s.t. p(S) = c, ∀p ∈ P1}
15
![Page 52: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/52.jpg)
Implementing Maschler’s Scheme
Solve a hierarchy of linear programs
P1 ⊇ P2 ⊇ · · · ⊇ P|V| ≡ p∗
To find nucleolus= p∗ give a polynomial sized formulation for eachPi
P2 : min ϵ
s.t. p ∈ P1p(e)− w(e) ≥ ϵ− ϵ1 ∀e ∈ E+, e ̸∈ Fix(P1)
pv ≥ ϵ− ϵ1 ∀v ̸∈ Fix(P1)p(e)− w(e) ≤ ϵ− ϵ1 ∀e ∈ E∗, e ̸∈ Fix(P1)
Fix(P1) = {S ⊂ V : ∃c s.t. p(S) = c, ∀p ∈ P1}
15
![Page 53: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/53.jpg)
Implementing Maschler’s Scheme
Observation 3 (Blossom Symmetry) plays a major role.
∀u, v ∈ B,∀B ∈ L,pu − pu = pv − pv
Lemma: B ∈ L\Fix(P1) =⇒ v ̸∈ Fix(P1) ∀v ∈ B
P2 : min ϵ
s.t. p ∈ P1p(e)− w(e) ≥ ϵ− ϵ1 ∀e ∈ E+, e ̸∈ Fix(P1)
pv ≥ ϵ− ϵ1 ∀v ̸∈ Fix(P1)p(e)− w(e) ≤ ϵ− ϵ1 ∀e ∈ E∗, e ̸∈ Fix(P1)
Fix(P1) = {S ⊂ V : ∃c s.t. p(S) = c, ∀p ∈ P1}
15
![Page 54: Matching Games - Computing the Nucleolus in Polynomial Time · An Outcome Problems with the Least Core: • outcomesarenotunique • Excess:p(S) (S) only controlledforworstcoalitions](https://reader035.vdocuments.site/reader035/viewer/2022071211/6023307095859e4fc703662a/html5/thumbnails/54.jpg)
The End - Thank You
Matching GamesComputing the Nucleolus in Polynomial Time
By Justin TothJoint work with Jochen Könemann and Kanstantsin Pashkovich
University of Waterloo
16