Private capacities in mechanism design
Vincenzo Auletta Paolo Penna Giuseppe Persiano
Università di Salerno, Italy
Ideal World
In practice…
The Internet
Self organized, no central authority, anarchic
Different “entities” which• have their own goal• may not follow the “protocol”
Selfish agents
Example: BGP Routing
An Autonomous System may report false link status to redirect traffic to another AS
AS1
AS2source destination
Link down
Toy problem
source destination
Routing cost (time/latency)
t1
t2
0
0
Payment (large enough)
Algorithm: smallest cost
Toy problem
source destination
Routing cost (time/latency)
C1
C2
Payment: 2nd smallest cost
Algorithm: smallest cost
Toy problem
source destination
Routing cost (time/latency)
7
10
Payment: 2nd smallest cost
Algorithm: smallest cost
A truthtelling agent maximizes his/her utility
Truthful mechanism
7 10 – 7 8 10 – 7 11 0 – 0
Mechanism design
When are truthful mechanisms possible?
How to design them?
Mechanism = Algorithm + Payments
Focus on the Algorithm!!
truthful mechanism monotone algorithm
One-parameter setting
Mechanism = Algorithm + Payments
t1 ti tn
utilityi = paymenti – worki ti
r1 ri tn
workn work1 worki
… …t1 ti tn
paymentipayment1 paymentn
per-unit cost
One-parameter setting
Mechanism = Algorithm + Payments
utilityi = paymenti – worki ti
• P2P, Grid computing, scheduling• Routing• Wireless communications
speed
One-parameter setting
Mechanism = Algorithm + Payments
utilityi = paymenti – worki ti
• P2P, Grid computing, scheduling• Routing• Wireless communications
Well understood…but assumes infinite capacities!
battery
worki
ti
truthful [Myerson81][Archer&Tardos01]
Our contribution
• New model (one-parameter + capacities)
• Characterization of truthfulness
• Few applications (optimal mechanisms)
• Open questions
ALGORITHMIC!!
Private capacities
… …t1 ti tnc1 ci cn
per-unit cost
max work that can effort
utilityi = paymenti – worki ti
when “work capacity”
utilityi = – when “work > capacity”
Characterization of truthfulness
Weakly monotone algorithm: ti > ti
worki worki or worki > ci
truthful mechanism weakly monotone algorithm
… …t1 ti tnc1 ci cn
algorithm
worki
… …t1 ti tnc1 ci cn
algorithm
worki
per-unit cost increasesless work
too much work
Example: Greedy Algorithm
5
610
Weakly monotone algorithm: ti > ti
worki worki or worki > ci
fixed capacities
x2 x
106
5
NO!
1 x
10 6 5
Characterization of truthfulness: proof ingredients
truthfulness cycle monotonicity [Rochet 87]
weak monotonicity
Hard to understand/us
e
simple
…
nonnegative length nonnegative length
k different inputs for agent i
how worki changes
ti ci
worki
t i c i
work i
worki worki or worki > ci
ti•(work i worki )
t i•(worki work i)
(t i ti ) •(worki work i)
Characterization of truthfulness: proof ingredients
truthfulness cycle monotonicity [Rochet 87]
weak monotonicity
Hard to understand/us
e
simple
…
nonnegative length nonnegative length
obvioushard
How to design the mechanism
Algorithm + Payments
Truthful mechanism
Algorithm
polytimeweakly
monotone optimal cost
not always[Archer&Tardos 01]
Can we have all of them?
min-max problems (max congestion, makespan, fairness)
yes[this work]
Without capacities[AT 01]
How to design the mechanism
min-max problems (max congestion, makespan, fairness)
Scheduling: truthful PTAS for O(1) machines [this work]
exact + rounding
Algorithm
polytimeweakly
monotone optimal cost
Without capacities[Andelmann et al
07]
Open questions
• PTAS for any number of machines?– Without capacities: Yes [Christodoulou & Kovacs 09]
• Complexity of “truthful” algorithms– BGP routing– Network lifetime
• Multi-parameter settings? – No simple characterization [this work]
Private capacities
Thank You