1 Fair Cost-Sharing Method for the Minimum Spanning Tree Game 邱冠凱 胡啟政 劉宗灝...
-
Upload
marianna-lamb -
Category
Documents
-
view
239 -
download
1
Transcript of 1 Fair Cost-Sharing Method for the Minimum Spanning Tree Game 邱冠凱 胡啟政 劉宗灝...
1
Fair Cost-Sharing Method for the
Minimum Spanning Tree Game
邱冠凱 胡啟政 劉宗灝 文國煒
2
Outline
• Coalition Game• Dissatisfaction
• MWD
• MAD
3
Coalition Game
邱冠凱
4
Example
• Players = {1,2,3}
• All nonempty subset (named as coalition)– {1}, {2}, {3}, {1,2}, {1,3}, {2,3}, {1,2,3}
• A cost function c related to all coalitions.– c({1}) = v1, c({2}) = v2, ..., c({1,2,3}) = v7
• c(S) is the amount that the players in the coalition S have to pay collectively in order to have access to a service.
5
Core
• The problem is to find the core of this coalition game.
• Core is a cost distribution of the grand coalition such that no other coalition can obtain an outcome better for all its members than the current assignment.
• There may not exist any core.– Emptynness of the core.
• There may exist many cores.– Some players would unhappy with the cost allocation.
6
Example
• We want to find the cost allocation {x1, x2, x3} such that – x1+x2+x3 = c({1,2,3})– x1 c({1})≦– x2 c({2})≦– x3 c({3})≦– x1+x2 c({1, 2})≦– x1+x3 c({1, 3})≦– x2+x3 c({2, 3})≦
7
Cooperative Game
• Given a solution in the core, there is no incentive for a player to leave the grand coalition.
• Coalition game is also named as cooperative game.
• The minimum spanning tree game is a classical cooperative game problem.
8
Minimum Spanning Tree Game
For any coalition S µ V, c(S) =minfPe2TS
cejTS is a spanning treeof G[S [ f rg]g, whereG[S [ f rg] denotes thesubgraph of G inducedby theset of vertices S [ f rg
r
a
bc
d e f
3 3
3 3
3
3
2 1
2 1
G: connected networkr: service providerV = {a, b, c, d, e, f}: clients
c({a, b, d, e}) = 10
c({b, d, e, f}) = 9
9
The core of MST game
• Bird proposed a cost allocation rule known as Bird’s rule.
• Bird’s rule ensures that no coalition has incentive to be formed.– We don’t prove it here.
r
a
bc
d e f
3 3
3 3
3
3
2 1
2 1
xa = 2, xb = 3, xc = 1, xd = 2, xe = 3, xf = 1,xa + xb + xc+ xd+ xe+ xf = 12 = c({a, b, c, d, e, f}).
10
Outline
• Coalition Game
• Dissatisfaction• MWD
• MAD
11
Dissatisfaction
胡啟政
12
Dissatisfaction
• Definition: For the cost a player have to pay in one solution, dissatisfaction is the ratio of the current cost to the best cost (the smallest one) of all solutions.
• Dissatisfaction of an agent i in a solution is:
•
iCy
ii y
xCx
min
),(
Viix )(
1),( Cxi
13
Cost Sharing with Fairness
• Two optimization problems:– MWD: minimize the worst dissatisfaction
• i.e. Find an allocation which
minimizes
– MAD: minimize the average dissatisfaction• i.e. Find an allocation which
minimizes
Cxx Vii )(
),(max CxiVi
Cxx Vii )(
),( CxiVi
14
With Bird’s Rule…
• The dissatisfaction of a vertex v to a mcst T is:
• Two optimization problems become– SPANNING TREE-MWD: Find a mcst that minimizes t
he worst dissatisfaction– SPANNING TREE-MAD: Find a mcst that minimizes t
he average dissatisfaction
→ Polynomial time algorithms for them.
)},'({min
),(),(
' vT
vTCT
GTTBirdv
15
Work With Trees…
• The fee of a vertex depends on the path between the root and it. β(T1, a) = 41
β(T1, b) = 11
β(T1, c) = 12
β(T1, d) = 39
β(T1, e) = 10T1
T2
β(T2, a) = 11
β(T2, b) = 12
β(T2, c) = 39
β(T2, d) = 10
β(T2, e) = 41
16
FEE
• To determine the dissatisfaction of a vertex v ∈V, it’s necessary to know the set of fees it can have to pay, which is F(v).
• From Bird’s rule, β(B, v) can only take values in L(v) = { | [x, v] ∈ E }],[ vxc
β(B, v) ],[ vxc
17
FEE
• Example:
G: :GTL(x) = {1, 2, 3}
L(y) = {1, 4}
L(z) = {2, 4}
F(x) = {3}
F(y) = {1}
F(z) = {2}
18
To compute F(v)…
Find all mcsts and then trace them?
19
Arborescences
• Assume arborescences are oriented from the root to the leaves. For convenience to deal with the problem, we can build from G=( ,E,c) a weighted digraph H=( ,A,c).
• For each edge [x,y] ∈ E, there are two arcs (x,y) and (y,x) in A with cost
rV rV
],[),(),( yxxyyx ccc
20
Arborescences
• Example:
G: H:
21
Arborescences
• Thus, given a mcst T of an undirected connected graph G, there exists in H a corresponding mcsa B, and C(T) = C(B).r
22
FEE
FEEInput: A digraph H = ( , A, c), a vertex v ∈ VStep 1: Compute any mcsa of H and let be its total costStep 2: L := { | (x, v) ∈ A }Step 3: F(v) := Step 4: For each l of L do
A’ := A \ {(x,v) | ≠ l }H’ := ( , A, c )Compute a mcsa B’ in H’If B’ exists and its total cost is Then F(v) := F(v) U { l }
End ForOutput: F(v)
rVr
optC
),( vxc
rV '|Ar
optC
),( vxc
23
FEE
• Example: To compute F(x)…
C = 6, L(x) = { 2, 3 }
opt
r
x y z
3 3
2
2
1
1
l = 2
3
F(x) = { }2
l = 3
, 3
24
FEE
• Computing a mcsa : O(mn) ( m = |A|, n = | | )
Total time : O(mn )
• After F(v) is computed, F (v) and F (v) can be determined. Also, dissatisfactions are determined.
And we can start to solve optimization problems now!!
r rV2
max min
25
Outline
• Coalition Game
• Dissatisfaction
• MWD• MAD
26
The Minimum Worst Dissatisfaction Problem
劉宗灝
27
MWD – Minimum Worst Dissatisfaction Problem
'
Among all spanning arborescences of minimum cost,
find one the minimizes the worst dissatisfaction over
all vertices.
argmin max{ ( , )}
( , ) ( , )
min {
H
H
B T v Birdv V
v BirdB T
B C
B vB C
( ', )}B v
The set of allocations from Bird’s rule
v在 B上的 cost
v在所有 mcsar中最小的 cost
28
MWD – Minimum Worst Dissatisfaction Problem
• The maximum Fmax(v) / Fmin(v) among all vertices is an upper bound on the worst dissatisfaction.
• The idea of the algorithm is decrease the upper bound until it reached the optimal.
29
How to decrease the upper bound?
• Removing some arcs each time.
• Which arc?– Arcs that cause worst dissatisfaction.
30
Algorithm
1. Input: A digraph H = (Vr, A, c)
2. 用 FEE 算每個點的 F(v)
3. 算出一棵 H 的 mcsar ,其 cost 為 C1
4. 在 H 上挑一個最大不滿意度 (Fmax(v) / Fmin(v)) 最高的點 v
5. 把造成 Fmax(v) 的邊從 H 上移除6. 在 H 上重算一棵 mcsar
1. 若不存在,或其 cost > C1,則回傳 C1 對應之 mcsar。2. 否則 goto step 4
31
Example
r
x y z
3 3 3
2 1
32
Digraph
r
x y z
3 3 3
2 1
12
F(x) = {2,3}F(y) = {1,2,3}F(z) = {1,3}
mcsars of this digraph have cost of 6
33
Pick node z
r
x y z
3 3 3
2 1
12
F(x) = {2,3}F(y) = {1,2,3}F(z) = {1,3}
34
(r,z) removed.
r
x y z
3 3
2 1
12
F(x) = {2,3}F(y) = {1,2,3}F(z) = {1}
35
mcsar still exists
r
x y z
3 3
2 1
12
F(x) = {2,3}F(y) = {1,2,3}F(z) = {1}
36
Pick node y
r
x y z
3 3
2 1
12
F(x) = {2,3}F(y) = {1,2,3}F(z) = {1}
37
(r,y) removed.
r
x y z
3
2 1
12
F(x) = {2,3}F(y) = {1,2}F(z) = {1}
38
mcsar still exists
r
x y z
3
2 1
12
F(x) = {2,3}F(y) = {1,2}F(z) = {1}
39
Pick node y
r
x y z
3
2 1
12
F(x) = {2,3}F(y) = {1,2}F(z) = {1}
40
(x,y) removed.
r
x y z
3
2 1
1
F(x) = {2,3}F(y) = {1}F(z) = {1}
41
Any more mcsar ?
r
x y z
3
2 1
1
F(x) = {2,3}F(y) = {1}F(z) = {1}
NO
42
Recover (x,y), find mcsar.
r
x y z
3
2 1
12
F(x) = {2,3}F(y) = {1,2}F(z) = {1}
43
Solution
r
x y z
3
2 1
12
F(x) = {2,3}F(y) = {1,2}F(z) = {1}
44
Worst dissatisfaction = 2.
r
x y z
3
2 1
F(x) = {2,3}F(y) = {1,2}F(z) = {1}
45
Outline
• Coalition Game
• Dissatisfaction
• MWD
• MAD
46
The Minimum Average Dissatisfaction Problem
文國煒
47
MAD Problem
• Give a graph, among all spanning arborescences of minimum cost, find one that minimizes the average dissatisfaction.
• Minimize the average dissatisfaction also minimize the worst dissatisfaction.
However, this is not always true.
48
Example 1
r
a e
b c d
41 41
11 10
12 39
T T`Fmax(a)/Fmin(a)=41/11
Fmax(b)/Fmin(b)=1
Fmax(c)/Fmin(c)=1
Fmax(d)/Fmin(d)=39/10
Fmax(e)/Fmin(e)=1
The Worst:3.9
Average:2.12
Fmax(a)/Fmin(a)=1
Fmax(b)/Fmin(b)=12/11
Fmax(c)/Fmin(c)=39/12
Fmax(d)/Fmin(d)=1
Fmax(e)/Fmin(e)=41/10
The Worst:4.1
Average:2.08
49
MAD Problem
• Minimize the sum or the average dissatisfaction are equivalent.
• The SPANNING TREE-MAD problem can be described as follows:
Vv
BirdvTB CBH ),(minarg
50
Solving Procedure
• First– The initial graph G=(Vr, E, c) is turned into a di
agraph H=(Vr, A, c).– For each edge[x, y] belongs to E, A has corre
sponding arcs (x, y) and (y, x)
– c(x, y)=c(y, x)=c[x, y]
51
Solving Procedure
• Second– Remove each arc that c(x, y)<Fmin(y)
• Third– For each arc (x, y) belongs to A, has a weight
w(x, y) = c(x, y)/Fmin(y).
– The weight w(x, y) captures the dissatisfaction of y if the arc (x, y) is chosen.
52
Solving Procedure
• Forth– Computing a spanning arborescence rooted
in r which minimizes the total weight can provide the optimal solution.
53
Example 2
r
h
a b c d
efg
4
4
3 2 1
3 2 1
3
T T`T``
54
Example 2
r
h
a b c d
efg
4,4/3
4,4/3
3,3/2
3,1
3,1
3,3/2
2,2
2,1
2,1
2,2
1,1
1,1
1,1
1,1
3,33,3
T Average dissatisfaction: (4/3+3/2+2+1+3+1+1+1)/8≈1.47T` Average dissatisfaction: (4/3+3/2+2+1+3+1+1+1)/8≈1.47
Average dissatisfaction: (4/3+3/2+2+1+1+2+3/2+4/3)/8≈1.45T``
T`` is not a minimum cost spanning tree!!
cost, weight
55
Solving Procedure
• Forth– For each arc (x, y), combines c(x, y) and w(x, y) in to a co
mposite cost and generates the new H*.
– Computing a spanning arborescence rooted in r with which minimizes the total cost can provide the optimal solution.
10,)1( ),(),(),(
~
yxyxyx wcc~
c
56
Algorithm
57
Example 3
h
a b c d
efg
4
4
3 2 1
3 2 1
3
G
4,4/3
4,4/3
3,3/2
3,3/2
3,1
3,1
2,2
2,1
2,2
2,1
1,1
1,1 3,3
3,3
1,1
1,1HA mcsar B is determined and its sum of dissatisfactions is D=4/3+3/2+1+3+1+1+1=71/6
λ= 71/77
4λ+(1- λ)4/3
4λ+(1- λ)4/3
3λ+(1- λ)3/2
3λ+(1- λ)
3λ+(1- λ)3/2
3λ+(1- λ)
2λ+(1- λ)
2λ+(1- λ)
2
2
1
1
1
1
3
3
H*B*Optimal solution
58
Thank you!