14 Oct 03Cost sharing & Approximation1 Group strategy proof mechanisms via primal-dual algorithms...
-
date post
20-Dec-2015 -
Category
Documents
-
view
216 -
download
0
Transcript of 14 Oct 03Cost sharing & Approximation1 Group strategy proof mechanisms via primal-dual algorithms...
14 Oct 03 Cost sharing & Approximation 1
Group strategy proof mechanisms via primal-dual
algorithms
(Cost Sharing)
Martin Pál Éva Tardos
14 Oct 03 Cost sharing & Approximation 2
Our setting
Universe U of (selfish) users
Users want to benefit from shared infrastructure
cost function c*()c*(U) = cost of
c*() = cost of
c*(S) – cost of optimal infrastructure for users in S
often NP-hard to compute
U = {,,,,}
14 Oct 03 Cost sharing & Approximation 3
Sharing the cost
costuser shares
ΣiU pi ≥ c*(U)Cost Recovery:Approximate
Known as core in game theory
often empty for games of interest
p+p+p ≤ c( )
p+p+p+p+p ≥ c( )
ΣiS pi ≤ c*(S)Competitiveness:
no overpayment
for any SU:
14 Oct 03 Cost sharing & Approximation 4
Modeling the users
ui – value of service for i
User may say NO if pi>ui
util(i) = ui – pi if i gets service
0 otherwiseneed to recompute tree & payments!
Cost sharing fn: ξ : 2UU +
ξ(S,i) – share of user i, if set S served ξ(U, ) ≤ ξ(U-, )cross-monotonic: for iSTU
ξ(S,i) ≥ ξ(T,i)
14 Oct 03 Cost sharing & Approximation 5
The Moulin&Shenker mechanism
S := Urepeat ask each user i “is ξ(S,i) ≤ ui ?”
drop all iS who say NO until all iS say YESOutput: set S; prices pi =
ξ(S,i)
Theorem: [Moulin&Shenker]:
ξ(.) cross-monotonic mechanism group strategyproof
ui
cost share
14 Oct 03 Cost sharing & Approximation 6
•Exact cross-monotonic sharing exists if c*() submodular
[Moulin&Shenker 98]
•Exact cost sharing for spanning tree
[Kent&Skorin-Kapov 96], [Jain&Vazirani 01]
Any other games for which cross-mono sharing exists?
Known cross-monotonic functions
implies 2-approx. cost sharing for Steiner tree
14 Oct 03 Cost sharing & Approximation 7
General method for generating competitive, cross-monotonic cost shares using primal-dual algorithms
Used our method to construct a cost sharing fn for:
Our results
recovers 1/3 of cost
recovers 1/15 of cost
competitive, cross-monotonic
constructive proof gives an approximation algorithm
Metric Facility Location
Single Sink Rent or Buy
14 Oct 03 Cost sharing & Approximation 8
•Primal-dual approximation for Facility Location
[Jain&Vazirani99] , [Mahdian,Ye&Zhang 02], [Mettu&Plaxton 00]
•Approximation for Single Sink Rent or Buy [Karger&Minkoff 00], [Meyerson&Munagala 00]
[Swamy&Kumar 02], [Gupta,Kumar&Roughgarden 03]
Approximation algorithms
14 Oct 03 Cost sharing & Approximation 9
Single Sink Rent or Buy
U is a set of users.r is the sink (root) node.graph G with edge lengths
ce.
1) Find a path from each user to sink.
2) Rent or Buy each edge.Rent: pay ce for each path using e
Buy: pay M ce
Goal: minimize rental + buying cost.
14 Oct 03 Cost sharing & Approximation 10
Facility Location
F is a set of facilities.U is a set of users.cij is the distance between any i and j in U F.
(assume cij satisfies triangle inequality)
fi: cost of facility i
14 Oct 03 Cost sharing & Approximation 11
Facility Location
1) Pick a subset F’ of facilities to open
2) Assign every client to an open facility
Goal: Minimize the sum of facility and assignment costs: ΣiF’ fi + ΣjS c(j,σ(j))
14 Oct 03 Cost sharing & Approximation 12
Existing facility location algorithms..
each user j raises its j
j pays for connection first, then for facility
if facility paid for, declared open
(possibly cleanup phase in the end)
=5
=5
=6
cost shares
14 Oct 03 Cost sharing & Approximation 13
...do not yield cross-monotonic shares
with , ()=8
helped to stop earlier
failed to help =3
=3
=8
previously, ()=6
14 Oct 03 Cost sharing & Approximation 14
Ghost shares
After i freezes, continue growing its ghost i
ghosts keep growing forever
=3
=3
=5.5Fact: Shares i are cross-monotonic. Pf: more users more ghosts facilities open sooner i can stop growing earlier
14 Oct 03 Cost sharing & Approximation 15
Constructing a solution (1)
Sp: set of users contributing to p at time of opening – “contributor set”
tp: time of opening facility p
facility p is well funded, if j≥tp/3 for every jSp
Sptp
p
Close down all facilities that are not well funded
Lemma: For every facility p there is a nearby well funded facility r s.t.
dist(p,r) ≤ 2(tp- tr)
qtq ≤tp/3
rtr ≤tq/3
14 Oct 03 Cost sharing & Approximation 16
Constructing a solution (2)
Problem: user contributing to multiple well-funded facilities
Solution: close all of them but one (process by increasing tp)
Sptp
p
Sq
tq
q
Lemma: For every well funded facility p there is a nearby open q such that
dist(p,q) ≤ 2tp
p r≤ ≤2(tp- tr) ≤2trq
well-funded open
14 Oct 03 Cost sharing & Approximation 17
Summing up
Every open facility is well funded, i.e. can be paid for by Sp.
p r≤ ≤2(tp- tr) ≤2tr q
well-funded open
Sptp
pWe do not lose much on assignment cost by closing facilities.Cost shares pay for 1/3 of the cost of the solution.
Theorem: There is a cross-monotonic cost sharing function for facility location that recovers 1/3 of cost.
14 Oct 03 Cost sharing & Approximation 18
Plan of attack for Rent or Buy
• Gather clients into groups(often done by a facility location algorithm)
• Build a Steiner tree on the gathering points
Jain&Vazirani gave cost sharing fn for Steiner tree
Have cost sharing for facility location
Why not combine?
14 Oct 03 Cost sharing & Approximation 19
“One shot” algorithm
• Generate gathering points and build a Steiner tree at the same time.
• Allow each user to contribute only to the least demanding (i.e. largest) cluster he is connected to. not clear if the shares
can pay for the tree
14 Oct 03 Cost sharing & Approximation 20
General method for generating competitive, cross-monotonic cost shares using primal-dual algorithms.
Used our method to construct a cost sharing fn forFacility Location & Single Sink Rent or Buy.
Other problems admitting cross-mono cost sharing?Steiner Forest? Covering problems?
Impossibility results?
Conclusions
14 Oct 03 Cost sharing & Approximation 21
The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End.
*** *** The End *** ***
14 Oct 03 Cost sharing & Approximation 22
Cost shares
Each Steiner component C needs $1/second for growth.Maintenance cost of C split among users connectedUser connected to multiple components pays only to largest componentUser connected to root stops paying j =∫ fj(t) dt
14 Oct 03 Cost sharing & Approximation 23
Growing ghosts
Grow a ball around every user uniformly
When M or more balls meet, declare gathering point
Each gathering point immediately starts growing a Steiner component
When two components meet, merge into one
14 Oct 03 Cost sharing & Approximation 24
Building a solutionOpen all healthy
well funded facilities
Assign each client to closest facility
Fact 1: for every facility p, there is an open facility q within radius 2tp.
≤tp
j≤tp/3
tp1 ≤ j
≤tp1
tp
p≤tp1 ...
q
tq
Well funded
q’
healthyc(p,q) ≤2(tp-tq)
c(q,q’)≤2 tq
c(p,q’) ≤tp
14 Oct 03 Cost sharing & Approximation 25
Cost SharingInternet: many independent agents• Not hostile, but selfish• Willing to cooperate, if it helps them
14 Oct 03 Cost sharing & Approximation 26
Steiner tree: how to split cost
4 43
2 2 ?? ?
13 3
04 3
32 2
34 4
Cost shares Cost shares
14 Oct 03 Cost sharing & Approximation 27
OPT( ) = 5
p( ) = 5-3 = 2
OPT( ) = 3
Steiner tree: how to split cost
No “fair” cost allocation exists!
14 Oct 03 Cost sharing & Approximation 28
Desirable properties of mechanisms
• ΣjS pj=c*(S)(budget balance)
• Only people in S pay(voluntary participation)
• No cheating, even in groups(group strategyproofness)
• If uj high enough, j guaranteed to be in S(consumer sovereignity)
ΣjS pj ≤ c*(S)(competitiveness)
ΣjS pj ≥ c(S)/β(approx. cost recovery)
14 Oct 03 Cost sharing & Approximation 29
Cost sharing function
ξ : 2UU ℛξ(S,j) – cost share of user j, given set S
• Competitiveness: ΣjS ξ(S,j) ≤ c*(S)
• Cost recovery: c(S)/β ≤ ΣjS ξ(S,j)
• Voluntary particpiation: ξ(S,j) = 0 if jS• Cross-monotonicity: for jST
ξ(S,j) ≥ ξ(T,j)
14 Oct 03 Cost sharing & Approximation 30
Cost recovery
To prove cost recovery, we must build a network.
Steiner tree on all centers would be too expensive select only some of the centers like we did for facility location.
Need to show how to pay for the tree constructed.
14 Oct 03 Cost sharing & Approximation 31
Paying for the treeWe selected a subset of clusters so that every user pays only to one cluster.
But: users were free to chose to contribute to the largest cluster – may not be paying enough.
Solution: use cost share at time t to pay contribution at time 3t.
14 Oct 03 Cost sharing & Approximation 32
The last slide
•x-mono cost sharing known only for 3 problems so far
•Do other problems admit cross-mono cost sharing?
•Covering problems? Steiner Forest?
•Negative result: SetCover – no better than Ω(n) approx
•Applications of cost sharing to design of approximation algorithms.
Thank you!