Cost sharing and approximation
Download
1 / 31

Cost Sharing and Approximation - PowerPoint PPT Presentation


  • 112 Views
  • Uploaded on

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.

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

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


An Image/Link below is provided (as is) to download presentation

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
Cost sharing and approximation

A-exam

Cost Sharing and Approximation

Martin Pál

joint work withÉva Tardos

Martin Pál: Cost sharing & Approx


Cost sharing
Cost Sharing

  • Internet: many independent agents

  • Not hostile, but selfish

  • Willing to cooperate, if it helps them

Martin Pál: Cost sharing & Approx


How much does it pay to share

cost

Steiner tree

# users

cost

No sharing

# users

cost

Rent or buy

M

# users

How much does it pay to share?

Martin Pál: Cost sharing & Approx


Steiner tree how to split cost

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 cost1
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


Utilities

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


Desirable properties of mech s

Σ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
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
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
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
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 location1
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


Existing algorithms

=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


Do not yield x mono shares

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


Ghost shares

=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
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
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


Building a solution

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


Cost recovery

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


Cost recovery1

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


Single source rent or buy
Single source rent or buy

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


Single source rent or buy1

#paths using edge e

cost of e

M

# paths

Single source rent or buy

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
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
“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
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
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 facts1
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 recovery2
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
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


The last slide

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


ad