Cost Sharing and Approximation

1 / 31

# Cost Sharing and Approximation - PowerPoint PPT Presentation

A - exam. Cost Sharing and Approximation. Martin P ál joint work with Éva Tardos. Cost Sharing. Internet: many independent agents Not hostile, but selfish Willing to cooperate, if it helps them. cost. Steiner tree. # users. cost. No sharing. # users. cost. Rent or buy. M. # users.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about ' Cost Sharing and Approximation' - kathleen-aughmuty

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

A-exam

### Cost Sharing and Approximation

Martin Pál

joint work withÉva Tardos

Martin Pál: Cost sharing & Approx

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

Martin Pál: Cost sharing & Approx

cost

Steiner tree

# users

cost

No sharing

# users

cost

M

# users

How much does it pay to share?

Martin Pál: Cost sharing & Approx

4

3

4

2

2

3

?

3

1

0

4

4

2

4

3

?

3

2

3

?

Cost shares

Cost shares

Steiner tree: how to split cost

Martin Pál: Cost sharing & Approx

Steiner tree: how to split cost

OPT( ) = 3

OPT( ) = 5

p( ) = 5-3 = 2

No “fair” cost allocation exists!

Martin Pál: Cost sharing & Approx

u1’=5

p1=15

p1=0

Problem: users may not reveal true utilities

u2=25

p2=15

p2=22.5

u3=25

p3=15

p3=22.5

Utilities

uj – utility of agent j

u1=25

\$45

internet

Martin Pál: Cost sharing & Approx

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 jS

Martin Pál: Cost sharing & Approx

ΣjS pj ≤ c*(S)

(competitiveness)

ΣjS pj ≥ c(S)/β

(approx. cost recovery)

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

Martin Pál: Cost sharing & Approx

Cost sharing function
• ξ : 2UU ℛ
• ξ(S,j) – cost share of user j, given set S
• Competitiveness: ΣjSξ(S,j)≤c*(S)
• Cost recovery: c(S)/β≤ΣjSξ(S,j)
• Voluntary particpiation: ξ(S,j) = 0 if jS
• Cross-monotonicity: for jST
• ξ(S,j) ≥ ξ(T,j)

Martin Pál: Cost sharing & Approx

The Moulin&Shenker mechanism

Let ξ : 2UU ℛ be a cost sharing function.

• S U
• while unhappy users exist
• offer each jS 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

Martin Pál: Cost sharing & Approx

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

Martin Pál: Cost sharing & Approx

Facility Location

F 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

Martin Pál: Cost sharing & Approx

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: ΣiF’fi + ΣjS c(j,σ(j))

Martin Pál: Cost sharing & Approx

=4

=4

=6

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)

Martin Pál: Cost sharing & Approx

with , ( )=6

without , ( )=5

was stopped prematurely in the first run

=5

=5

..do not yield x-mono shares

Martin Pál: Cost sharing & Approx

=4

=4

=5

Ghost shares
• Two shares per user:
• ghost share j
• real share j
• j grows forever
• j stops when connected

Martin Pál: Cost sharing & Approx

Easy facts

Fact 1: cost shares j are cross-monotonic.

Pf: More users opens facilities faster  each j can only stop growing earlier.

Fact 2 [competitiveness]: ΣjSj≤c*(S).

Pf: j is a feasible LP dual.

Hard part: cost recovery.

Martin Pál: Cost sharing & Approx

Constructing a solution

=2

tp:time when facility p opened

Sp: set of clients connected to p at time tp

facility p is well funded, if 3j≥tp for every jSp

each facility is either poisoned or healthy

p is poisoned if it shares a client with a well funded healthy facility q and tp> tq

tp=2

=2

tq =7

=7

Martin Pál: Cost sharing & Approx

Well funded

p

q

≤tp1

≤tp

≤tp1

...

tp

tp1 ≤ j

tq

j≤tp/3

healthy

 c(p,q’) ≤tp

q’

Building a solution

Open 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.

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

c(q,q’)≤2 tq

Martin Pál: Cost sharing & Approx

Fact 2: p open  clients in Sp can pay 1/3 their connection + facility cost

Pf: fj = ΣjS(p)tp – cjp and j≥tp/3

Sp

Fact 3: j is in no Sp can pay for 1/3 of connection

Pf: fj = ΣjS(p)tp – cjp and j≥tp/3

≤j

≤2j

open

Cost recovery

Martin Pál: Cost sharing & Approx

Sp

≤j

≤2j

open

Cost recovery
• Summary:
• 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

Martin Pál: Cost sharing & Approx

A set of clients D.

A source node s.

cij is the distance between any pair of nodes.

(assume cij satisfies triangle inequality)

Martin Pál: Cost sharing & Approx

#paths using edge e

cost of e

M

# paths

1) Pick a path from every client j to source s.

Goal: Minimize the sum of edge costs:

ΣeE min(pe,M) ce

Martin Pál: Cost sharing & Approx

Plan of attack
• Gather clients into groups of M
• (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?

Martin Pál: Cost sharing & Approx

“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

Martin Pál: Cost sharing & Approx

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

Martin Pál: Cost sharing & Approx

Cost shares

Each Steiner component C needs \$1/second for growth.

Maintenance cost of C split among users connected

User connected to multiple components pays only to largest component

User connected to root stops paying

j =∫ fj(t) dt

Martin Pál: Cost sharing & Approx

Easy facts

Fact: 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]: ΣjSj≤2c*(S).

Pf: LP duality.

Again, cost recovery is the hard part.

Martin Pál: Cost sharing & Approx

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.

Martin Pál: Cost sharing & Approx

Paying for the tree

We 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.

Martin Pál: Cost sharing & Approx

Thank you!

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.

Martin Pál: Cost sharing & Approx