More Powerful and Simpler Cost-Sharing Methods
Carmine VentreJoint work with Paolo Penna
University of Salerno
Why cost-sharing methods?
Town A needs a water distribution system A’s cost is € 11 millions
Town B needs a water distribution system B’s cost is € 7 millions
A and B construct a unique water distribution system for both cities The total cost is € 15
millions Why don’t collaborate
saving € 3 millions? How to share the cost?
Town A
Town B
Multicast vs cost-sharing
Service provider s Customers U Who gets serviced? How to share the cost?
Accept or reject the service?
We are selfish
Selfish agents
Each customer/agent has a private valuation for the service (vi) (how
much would pay for the service) declares a (potentially different) valuation (bi)
pays something for the service (Pi)
Agents’ goal is to maximize their own utility: ui(b) := vi – Pi(b)
Is my utility ¸ 0?
Mechanism design
Mechanism: M=(A, P)
Who gets the service Q(b)
How much each user pay
P1(b), …, Pn(b)How to serve Q(b)
CA(Q(b))
s s
A = MST A = OPT
Q(b)
Mechanism’s desired properties No positive transfer (NPT)
Payments are nonnegative: Pi 0
Voluntary Participation (VP) User i is charged less then his reported valuation
bi (i.e. bi ≥ Pi)
Consumer Sovereignty (CS) Each user can receive the transmission if he is
willing to pay a high price.
Mechanism’s desired properties Budget Balance (BB)
Cost recoveryi2Q(b) Pi(b) ¸ CA(Q(b))
Competitiveness: i2Q(b) Pi(b) ¦ CA(Q(b)) Cost Optimality (CO)
CA(Q(b)) = COPT(Q(b)) Group-strategyproof
No coalition of agents has an incentive to jointly misreport their true vi
Approximation concepts
-apx Budget Balance: CA(Q(b)) · Pi(b) · COPT(Q(b))
surplus mechanism Pi · (1+) CA(Q(b))
If A is an -apx algorithm and M is 0 surplus then M is -apx BB The converse is not true
Extant approach
MS provide the mechanism M() is a cost-sharing
method (Q, i) = 0 if i Q i2Q (Q, i) = CA(Q)
If is cross monotonic then M() is GSP, NPT, VP, CS and BB ([MS97])
When is cross monotonic?
Mechanism M()
1. Initialize Q Ã U
2. While 9 i 2 Q s.t. (Q,i) > bi drop i: Q Ã Q n {i}
3. Return Q, Pi = (Q, i)
is cross monotonic if 8 Q’ ½ Q µ U:
Q, i) · (Q’, i)
for every i 2 Q’
Extant approach (2)
Mechanism M()
1. Initialize Q Ã U
2. While 9 i 2 Q s.t. (Q,i) > bi drop i: Q Ã Q n {i}
3. Return Q, Pi = (Q, i)
is cross monotonic if 8 Q’ ½ Q µ U:
Q, i) · (Q’, i)
for every i 2 Q’
MS provide also the converse of the previous result: If CA(Q) is submodular
and non decreasing then any M which is BB, NPT, VP, CS and GSP is “equivalent” to some M(), is a cross monotonic cost sharing method
Our Main Results
If is self cross monotonic then M() has the same properties
Self cross monotonicity is a relaxation of the cross monotonicity condition It is much simpler to obtain
Is this more powerful? We provide the first mechanism for Steiner tree game on
the graphs polytime, CO, BB, VP, NPT and CS Not possible to obtain in general with cross monotonicity Best known result was a 2-BB [JV01]
NP hard problem
Self cross monotonicity: an example
Q
CA(Q)
s
50%50%
s
Pay less than before This is not a cross monotonic cost sharing method!
Self cross monotonicity: an example (2)
Q
CA(Q)
s
100%
s
Pay less than before
This guy pays 0
M() cannot drop him
Idea: some Q µ U do not “appear”. We need monotone only for possible subsets generated by M()
This is not a cross monotonic cost sharing method!
Self cross monotonicity
Intuitively a cost sharing method is self cross monotonic if it is cross monotonic w.r.t. M()’s output
We define P as the possible subsets generated by M()
P0 = U
Pj = {Qj-1n {i} | (Qj-1,i) > 0, Qj-1 2 P
j-1}P = [j=0
n Pj
is self cross monotonic if it is cross monotonic for every pair of sets in P
Reasonable algorithm
An algorithm A is reasonable if it can drop user one by one Exists i1, …, in s.t. A can compute a feasible
solution for Qj = U n {i1, …, ij} If A is reasonable then exists a cost sharing
method self cross monotonic for CA
U i1i2
100 %
…ij
The mechanism for the Steiner Tree Game What about if the optimal algorithm is
reasonable? For the Steiner tree game exists A polytime
reasonable which is optimal (only for the sets in P)
What about A? Consider the Prim’s MST algorithm
s, a1, a2, …, an
MST(Qj) is an optimal steiner tree for Qj
A drops users in this order
an = i1
…
…
a1 = in
Our results in wireless networks (3d – 1)-apx BB, no surplus, GSP, NPT, VP, CS
polytime mechanism Characterization of the pair algorithm, wireless
instances for which a cross monotonic mechanism always produce some surplus Surplus increase exponentially with d Definition of A-bad instances G
A is not optimal CA is not submodular (and badness and submodularity are not
equivalent) Our technique can be used to obtain no surplus
mechanisms for wireless instances
Open problems
When is cost sharing possible? Other problems
Steiner forest Connected facility location …
Distributed mechanisms? What is the cost of fairness?