580 likes | 696 Views
Fair Cost-Sharing Method for the Minimum Spanning Tree Game. 邱冠凱 胡啟政 劉宗灝 文國煒. Outline. Coalition Game Dissatisfaction MWD MAD. Coalition Game. 邱冠凱. Example. Players = {1,2,3} All nonempty subset (named as coalition) {1}, {2}, {3}, {1,2}, {1,3}, {2,3}, {1,2,3}
E N D
Fair Cost-Sharing Method for the Minimum Spanning Tree Game 邱冠凱 胡啟政 劉宗灝 文國煒
Outline • Coalition Game • Dissatisfaction • MWD • MAD
Coalition Game 邱冠凱
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.
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.
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})
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.
r ( ) f P j l F S V S T i i i i i µ t t o r a n y c o a o n c m n c s a s p a n n n g r e e = S T e , 2 e S [ f g ] g [ f g ] f h d h b h f d d G S G S G i t t [ [ 3 o r w e r e r e n o e s e s u g r a p o n u c e 3 , 3 f g b h f S i t t t [ y e s e o v e r c e s r b 2 1 c a c({a, b, d, e}) = 10 3 3 3 c({b, d, e, f}) = 9 f d e 2 1 Minimum Spanning Tree Game G: connected network r: service provider V = {a, b, c, d, e, f}: clients
r 3 3 3 b 2 1 c a 3 3 3 f d e 2 1 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. 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}).
Outline • Coalition Game • Dissatisfaction • MWD • MAD
Dissatisfaction 胡啟政
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:
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
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 the worst dissatisfaction • SPANNING TREE-MAD: Find a mcst that minimizes the average dissatisfaction →Polynomial time algorithms for them.
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) = 10 T1 β(T2, a) = 11 β(T2, b) = 12 β(T2, c) = 39 β(T2, d) = 10 β(T2, e) = 41 T2
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 } β(B, v)
FEE • Example: G: L(x) = {1, 2, 3} L(y) = {1, 4} L(z) = {2, 4} F(x) = {3} F(y) = {1} F(z) = {2}
To compute F(v)… Find all mcsts and then trace them?
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
Arborescences • Example: G: H:
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).
FEE FEE Input: A digraph H = ( , A, c), a vertex v ∈ V Step 1: Compute any mcsa of H and let be its total cost Step 2:L := { | (x, v)∈ A } Step 3: F(v) := Step 4: For each l of Ldo 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 For Output: F(v)
FEE • Example: To compute F(x)… C = 6, L(x) = { 2, 3 } r l = 3 l = 2 3 3 3 2 1 y z x F(x) = { } 2 , 3 2 1
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!!
Outline • Coalition Game • Dissatisfaction • MWD • MAD
MWD – Minimum Worst Dissatisfaction Problem v在B上的cost v在所有mcsar中最小的cost The set of allocations from Bird’s rule
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.
How to decrease the upper bound? • Removing some arcs each time. • Which arc? • Arcs that cause worst dissatisfaction.
Algorithm • Input: A digraph H = (Vr, A, c) • 用 FEE 算每個點的 F(v) • 算出一棵 H 的 mcsar,其cost為 C1 • 在H上挑一個最大不滿意度(Fmax(v) / Fmin(v))最高的點 v • 把造成Fmax(v)的邊從 H 上移除 • 在 H 上重算一棵 mcsar • 若不存在,或其cost > C1,則回傳 C1 對應之 mcsar。 • 否則 goto step 4
Example r 3 3 3 x 2 y 1 z
Digraph F(x) = {2,3} mcsars of this digraph have cost of 6 F(y) = {1,2,3} r F(z) = {1,3} 3 3 3 2 1 x y z 2 1
Pick node z F(x) = {2,3} F(y) = {1,2,3} r F(z) = {1,3} 3 3 3 2 1 x y z 2 1
(r,z) removed. F(x) = {2,3} F(y) = {1,2,3} r F(z) = {1} 3 3 2 1 x y z 2 1
mcsar still exists F(x) = {2,3} F(y) = {1,2,3} r F(z) = {1} 3 3 2 1 x y z 2 1
Pick node y F(x) = {2,3} F(y) = {1,2,3} r F(z) = {1} 3 3 2 1 x y z 2 1
(r,y) removed. F(x) = {2,3} F(y) = {1,2} r F(z) = {1} 3 2 1 x y z 2 1
mcsar still exists F(x) = {2,3} F(y) = {1,2} r F(z) = {1} 3 2 1 x y z 2 1
Pick node y F(x) = {2,3} F(y) = {1,2} r F(z) = {1} 3 2 1 x y z 2 1
(x,y) removed. F(x) = {2,3} F(y) = {1} r F(z) = {1} 3 1 x y z 2 1
Any more mcsar ? F(x) = {2,3} F(y) = {1} NO r F(z) = {1} 3 1 x y z 2 1
Recover (x,y), find mcsar. F(x) = {2,3} F(y) = {1,2} r F(z) = {1} 3 2 1 x y z 2 1
Solution F(x) = {2,3} F(y) = {1,2} r F(z) = {1} 3 2 1 x y z 2 1
Worst dissatisfaction = 2. F(x) = {2,3} r F(y) = {1,2} F(z) = {1} 3 x 2 y 1 z
Outline • Coalition Game • Dissatisfaction • MWD • MAD
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.
Example 1 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 r 41 41 a e 11 10 b 12 c 39 d
MAD Problem • Minimize the sum or the average dissatisfaction are equivalent. • The SPANNING TREE-MAD problem can be described as follows:
Solving Procedure • First • The initial graph G=(Vr, E, c) is turned into a diagraph H=(Vr, A, c). • For each edge[x, y] belongs to E, A has corresponding arcs (x, y) and (y, x) • c(x, y)=c(y, x)=c[x, y]