31
12 Sep 03 Martin Pál: Cost sharing & Approx 1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

Embed Size (px)

DESCRIPTION

12 Sep 03Martin Pál: Cost sharing & Approx3 How much does it pay to share? # users cost No sharingSteiner tree cost # users cost M Rent or buy

Citation preview

Page 1: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 1

Cost Sharing and Approximation

Martin Pál

joint work with Éva Tardos

A-exam

Page 2: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 2

Cost SharingInternet: many independent agents• Not hostile, but selfish• Willing to cooperate, if it helps them

Page 3: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 3

How much does it pay to share?

# users

cost

No sharing

Steiner treecost

# users

# users

costM Rent or buy

Page 4: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 4

Steiner tree: how to split cost

4 432 2 ?

? ?1

3 30

4 33

2 23

4 4

Cost shares Cost shares

Page 5: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 5

OPT( ) = 5p( ) = 5-3 = 2

OPT( ) = 3

Steiner tree: how to split cost

No “fair” cost allocation exists!

Page 6: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 6

Utilities

$45u1=25

u2=25

u3=25

internetp1=15

p2=15

p3=15

uj – utility of agent j

u1’=5

Problem: users may not reveal true utilities

p1=0

p2=22.5p3=22.5

Page 7: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 7

Cost sharing mechanism..is a protocol/algorithm that

• requests utility uj from every user j• selects the set S of people serviced• builds network servicing S• Computes the payment pj of every user

jS

Page 8: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 8

Desirable properties of mech’s• Σ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)

Page 9: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 9

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)

Page 10: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 10

The Moulin&Shenker mechanismLet ξ : 2UU ℛ be a cost sharing function.S Uwhile unhappy users exist

offer each jS service at price ξ(S,j)

S S – {users j who rejected}output the set S and prices pj = ξ(S,j)Thm: [Moulin&Shenker]: ξ(.) cross-monotonic mech. group strategyproof

Page 11: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 11

Designing x-mono functionsWe construct cross-monotonic cost shares for two games:•Metric facility location game•Single source rent or buy gameFacility location: competitive, recovers 1/3 of costRent or buy:competitive, recovers 1/15 of cost

Page 12: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 12

Facility LocationF is a set of facilities.D is a set of clients.cij is the distance between any i and j in D

F.(assume cij satisfies triangle inequality)

fi: cost of facility i

Page 13: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 13

Facility Location1) Pick a subset F’ of facilities to open2) Assign every client to an open facilityGoal: Minimize the sum of facility and assignment costs: ΣiF’ fi + ΣjS c(j,σ(j))

Page 14: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 14

Existing 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)

=4

=4

=6

Page 15: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 15

..do not yield x-mono shares

=5

=5

with , ( )=6without , ( )=5 was stopped prematurely in the first run

Page 16: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 16

Ghost shares

=4

=4

=5

Two shares per user:•ghost share j

•real share jj grows foreverj stops when connected

Page 17: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 17

Easy factsFact 1: cost shares j are cross-monotonic.Pf: More users opens facilities faster each j can only stop growing earlier. Fact 2 [competitiveness]: ΣjS j ≤ c*(S).Pf: j is a feasible LP dual.

Hard part: cost recovery.

Page 18: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 18

Constructing a solutiontp: time when facility p openedSp: set of clients connected to p at time tp

facility p is well funded, if 3j≥tp for every jSp

each facility is either poisoned or healthyp is poisoned if it shares a client with a well funded healthy facility q and tp > tq

=7

=2

=2

tp=2

tq =7

Page 19: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 19

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/3tp1 ≤ j

≤tp1tp

p≤tp1 ...

qtq

Well funded

q’healthyc(p,q) ≤2(tp-tq)

c(q,q’)≤2 tq c(p,q’) ≤tp

Page 20: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 20

Cost recoveryFact 2: p open clients in Sp can pay 1/3 their connection + facility costPf: fj = ΣjS(p) tp – cjp and j≥tp/3

Sp

Fact 3: j is in no Sp can pay for 1/3 of connectionPf: fj = ΣjS(p) tp – cjp and j≥tp/3

open

≤j

≤2j

Page 21: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 21

Cost recoverySummary:•Cost shares can pay for 1/3 of soln we construct•Never pay more than cost of the optimum•With increasing # of users, individual share only decreases

Sp

open

≤j

≤2j

Page 22: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 22

A set of clients D.A source node s.cij is the distance between any pair of

nodes.(assume cij satisfies triangle inequality)

Single source rent or buy

Page 23: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 23

Single source rent or buy1) Pick a path from every client j to source s.Goal: Minimize the sum of edge costs: ΣeE min(pe,M) ce

#paths using edge e # paths

cost of eM

Page 24: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 24

Plan of attack• Gather clients into groups of M

(often done by a facility location algorithm)• Build a Steiner tree on the gathering

pointsJain&Vazirani gave cost sharing fn for Steiner treeHave cost sharing for facility locationWhy not combine?

Page 25: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 25

“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

Page 26: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 26

Growing ghostsGrow 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

Page 27: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 27

Cost sharesEach 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

Page 28: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 28

Easy factsFact: The cost shares j are cross-monotonic.Pf: More users causes more gathering points to open, more “area” is covered by Steiner clusters, clusters are bigger each j can only grow slower&stop sooner. Fact [competitiveness]: ΣjS j ≤ 2c*(S).Pf: LP duality.

Again, cost recovery is the hard part.

Page 29: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 29

Cost recoveryTo 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.

Page 30: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 30

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.

Page 31: 12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam

12 Sep 03 Martin Pál: Cost sharing & Approx 31

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!