![Page 1: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/1.jpg)
Games in Networks and connections to algorithms
Éva TardosCornell University
![Page 2: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/2.jpg)
Why care about Games?Users with a multitude
of diverse economic interests sharing a Network (Internet)
• browsers• routers• servers
Selfishness:Parties deviate from their
protocol if it is in their interest
![Page 3: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/3.jpg)
Why care about Games?Users with a multitude
of diverse economic interests sharing a Network (Internet)
• browsers• routers• servers
Selfishness:Parties deviate from their
protocol if it is in their interest
Model Resulting Issues as
Games on Networks
![Page 4: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/4.jpg)
Two Related IssuesPrice of Anarchy
Measure degradation of performance caused by lack of cooperation, or limited cooperation (selfishness)
![Page 5: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/5.jpg)
Two Related IssuesPrice of Anarchy
Measure degradation of performance caused by lack of cooperation, or limited cooperation (selfishness)
Mechanism DesignHow to design/modify
games so that selfish behavior leads to desired outcome
![Page 6: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/6.jpg)
Two Related IssuesPrice of Anarchy
Measure degradation of performance caused by lack of cooperation, or limited cooperation (selfishness)
Mechanism DesignHow to design/modify
games so that selfish behavior leads to desired outcome
Through Examples
• Service Provider Game
• Routing and Network Design
• Bandwidth Allocation
![Page 7: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/7.jpg)
Price of Anarchycost of selfish outcome
“socially optimum” cost
Papadimitriou-Koutsoupias ‘99
Closely related to approximation algorithms
cost of algorithm“optimum” costapprox ratio =
![Page 8: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/8.jpg)
What is Selfish Outcome?
We will use: Nash equilibrium– Current strategy “best response” for all
players (no incentive to deviate)
Theorem [Nash 1952]:– Always exists if we allow randomized
strategies
![Page 9: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/9.jpg)
We Use Nash equilibrium– Current strategy “best response” for all players (no
incentive to deviate)Plus:
– “Stable” design– [Nash 1952] Always exists (randomized)
![Page 10: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/10.jpg)
We Use Nash equilibrium– Current strategy “best response” for all players (no
incentive to deviate)Plus:
– “Stable” design– [Nash 1952] Always exists (randomized)
Critique:– can users learn the best behavior?
[Greenwald, Friedman and Shenker, 2001]– There can be many Nash equilibria– Groups of users can have incentive to deviate
![Page 11: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/11.jpg)
Nash ↔ Local Optimization
Nash equilibrium: – Current strategy “best response” for all players– No user acting alone can improve his own solution
Local Optimum: – No “local move” can improve the overall solution
Connection:– Local move ↔ user acting alone
![Page 12: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/12.jpg)
Example: Service Provider Game [Vetta FOCS’02]
Set D of clients, and set F of possible facility locations
client
Possible facility5
3 23
42
![Page 13: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/13.jpg)
Example: Service Provider Game: [Vetta FOCS’02]
Set D of clients, and set F of possible facility locations
client
facilitieschosen
3
342
2
5
Players choose a facility to locate at
![Page 14: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/14.jpg)
Example: Service Provider Game: [Vetta FOCS’02]
Set D of clients, and set F of possible facility locations
client
facilitieschosen
3
342
2
5
Players choose a facility to locate atEach client connects to closest open facility
![Page 15: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/15.jpg)
Service Provider Game:costs and income
Income/cost: pay facility cost, but what to charge clients ??
Total cost: cost of facility f + Σp→f dist(p,f).
client
facilitieschosen
3
34
f
![Page 16: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/16.jpg)
Service Provider Game:costs and income
Income: charge clients for distance to second closest open facility (competitor, Vickrey price)
Provider benefit: income - cost of
client
facilitieschosen
3
34
![Page 17: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/17.jpg)
Service Provider Game:selfish moves
client
facilitieschosen
3
3
45
![Page 18: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/18.jpg)
Service Provider Game:selfish moves
client
facilitieschosen
3
34
5
![Page 19: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/19.jpg)
Service Provider Game:selfish moves
client
facilitieschosen
3
34
5
Fact: selfish improvement = better solution • ∆ in provider’s income = ∆ in overall solution cost
![Page 20: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/20.jpg)
Service Provider Game:selfish moves
client
facilitieschosen
3
34
5
Fact: selfish improvement = better solution • ∆ in provider’s income = ∆ in overall solution cost• Why: users switch to their best alternate
• we charged second highest price
![Page 21: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/21.jpg)
Service Provider GameSelfish improvement = overall improvementCorollary: Deterministic Nash exists
How Good is a Nash solution?
![Page 22: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/22.jpg)
Service Provider GameSelfish improvement = overall improvementCorollary: Deterministic Nash exists
How Good is a Nash solution?Vetta FOCS’2002:
– Any Nash 2-approximates social happiness of no facility costs (valuations-cost)
Devanur, et al. 2004– Any Nash 5-approximates total cost
![Page 23: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/23.jpg)
Service Provider GameSelfish improvement = overall improvementCorollary: Deterministic Nash exists
How Good is a Nash solution?Vetta FOCS’2002:
– Any Nash 2-approximates social happiness of no facility costs (valuations-cost)
Devanur, et al. 2004– Any Nash 5-approximates total cost
Why? all local optima are approximately optimal
![Page 24: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/24.jpg)
What we have seen so far:
Service Provider GameNash = local optima
Next: routingweaker connection to local optimization
![Page 25: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/25.jpg)
Example: Routing and Load Balancing Games
r1 =1s t
x 1.5
x1 .5
.5
.5
Load balancing:
Routing:
jobsmachines
![Page 26: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/26.jpg)
Example: Routing and Load Balancing Games
• A directed graph G = (V,E)
• source–sink pairs si,tifor i=1,..,k
• rate ri ≥ 0 of traffic between si and ti for each i=1,..,k
• For each edge e or machine, a latency function ℓe(•)
r1 =1s t
x 1.5
x1 .5
.5
.5
Load balancing:
Routing:
jobsmachines
![Page 27: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/27.jpg)
Example: Braess paradox
Braess paradox:• Delay increases from
1.5 to 2 – due to selfish routing– or due to added edge
s tx 1
1
x10
r1 =1
s tx 1
x1½
½½
½
![Page 28: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/28.jpg)
Selfish Move ≠ Overall Improvementr1 =1
s tx 11
x1½
Moving ½ the flow does not help selfishly
but move improves delay for remaining flow
![Page 29: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/29.jpg)
Selfish Move ≠ Overall Improvement
s t
x
1
1
½
r1 =1
s tx 11
x1½
Moving ½ the flow does not help selfishly
but move improves delay for remaining flow
![Page 30: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/30.jpg)
Selfish Move ≠ Overall Improvement
r1 =1
s tx 11
x1½
s t
x
1
1
½
Personal objective:• ℓP(f) = sum of latencies
of edges along P (w.r.t. flow f)
Assumption: ℓ monotone increasing
Overall objective:• C(f) = cost or total
latency of a flow f: = ΣP fP • ℓP(f)
can also be written as= Σe fe • ℓe(fe)
![Page 31: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/31.jpg)
Nonatomic Game
Facts: Nash is unique.
Users control an infinitesimally small amount of flow
Nash: all flow path carrying flow are shortest
s tx 1
x10
r=1
![Page 32: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/32.jpg)
Nonatomic Game
Facts: Nash is unique. Results e.g.:
– bound Nash/Opt Ratio [Roughgarden ’02], – bicriteria bound [Roughgarden-Tardos ’00].
Users control an infinitesimally small amount of flow
Nash: all flow path carrying flow are shortest
s tx 1
x10
r=1
![Page 33: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/33.jpg)
Here: Atomic Gamex 1
tx1
• Each user controls one unit of flow, and
• selects a single path
s
![Page 34: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/34.jpg)
Atomic Gamex 1
s tx1
• Each user controls one unit of flow, and
• selects a single path
Selfish moves improve a different function [Monderer Shapley’96, potential game]
Φ(f) = Σe ( ℓe(1)+…+ ℓe(fe))
![Page 35: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/35.jpg)
Atomic Gamex 1
tx1
• Each user controls one unit of flow, and
• selects a single path
s
Selfish moves improve a different function [Monderer Shapley’96, potential game]
Φ(f) = Σe ( ℓe(1)+…+ ℓe(fe))
Recall global objective is C(f) = Σe fe • ℓe(fe)
![Page 36: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/36.jpg)
Atomic Game ResultsFabrikant, Papadimitriou, Talwar STOC’04
– Single source game: Nash can be found in poly time: minimizing Φ(f) via min-cost flow
– Multi-source game: Finding Nash is polynomial local search (PLS) complete
![Page 37: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/37.jpg)
Atomic Game ResultsFabrikant, Papadimitriou, Talwar STOC’04
– Single source game: Nash can be found in poly time: minimizing Φ(f) via min-cost flow
– Multi-source game: Finding Nash is polynomial local search (PLS) complete
Anshelevich-D-K-T-W-R 2004:– Extend to Network Design Games
• Congestion (cost ℓ) decreases user cost
– use Φ to bound Best Nash/Opt ratio by O(log k)• k=number of players
![Page 38: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/38.jpg)
Why care about Finding a Nash?
Best Nash/Opt ratio?
Papadimitriou-Koutsoupias ’99
Nash = outcome of selfish behavior
⇒ worst Nash/Opt ratio: Price of Anarchy
![Page 39: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/39.jpg)
Nash as Stable DesignNeed to Find a Nash equilibrium
– Stable: as no user finds it in their interest to deviate
Need to find a “good” Nash– Best Nash/Opt ratio? = Price of Stability
[ADKTWR 2004]
![Page 40: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/40.jpg)
Games so far are nice…
Service provider game:• Nash ≈ local optimization
Potential game• Nash ≈ local optima for a related function
All have deterministic Nash.
![Page 41: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/41.jpg)
No Deterministic Nash
Matching Pennies:
1,-1-1,1-1,11,-1
H TH
T
![Page 42: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/42.jpg)
No Deterministic Nash
Network Design[Anshelevich-DTW
STOC’03]
Users bid contribution on individual edges.
• Single source game: Price of Anarchy = 1
s1
t1
t2
s2
11
11
![Page 43: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/43.jpg)
No Deterministic Nash
Network Design[Anshelevich-DTW
STOC’03]
Users bid contribution on individual edges.
• Single source game: Price of Anarchy = 1
• Multi source: no Nash
s1
t1
t2
s2
11
11
s2
11
11
?s1 t2
t1
![Page 44: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/44.jpg)
Mechanism Design:How to Design “Nice” Games?
![Page 45: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/45.jpg)
Mechanism Design:How to Design Games well
Many Users with diverse utilities for bandwidth.
How should we share a given B bandwidth?
![Page 46: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/46.jpg)
Mechanism Design:How to Design Games well
Traditional Mechanism Design (VCG):
• use payments to induce all players to tell us his utility for bandwidth
• Assign bandwidth to maximize social welfare (total utility obtained)Many Users with diverse
utilities for bandwidth. How should we share a
given B bandwidth?
![Page 47: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/47.jpg)
Mechanism Design:How to Design Games well
Traditional Mechanism Design (VCG):
• use payments to induce all players to tell us his utility for bandwidth
• Assign bandwidth to maximize social welfare (total utility obtained)
Cost lot of money; lots of information to share
Many Users with diverse utilities for bandwidth.
How should we share a given B bandwidth?
![Page 48: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/48.jpg)
Mechanism Design:How to Design Games well
Here:
• design a simple/natural Nash game that divides bandwidth and
• analyze the Prize of Anarchy
Kelly, Johari-Tsitsikis, 2004
Many Users with diverse utilities for bandwidth.
How should we share a given B bandwidth?
![Page 49: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/49.jpg)
Bandwidth Sharing GameUsers have a utility function
Ui(x) for receiving x bandwidth.
Ui(x)
xi x
Assume elastic users (concave utility functions)
![Page 50: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/50.jpg)
Bandwidth Sharing GameUsers have a utility function
Ui(x) for receiving x bandwidth.
Given a prize p, users maximizemaxx U (x) –px → xi
Ui(x)
xi x
Assume elastic users (concave utility functions)
![Page 51: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/51.jpg)
User Optimization?What do users do?
For a given price p:• solve • maxx U (x) –p·x
– U’(x)=p
• offer to pay w=x
Ui(x)
xxi
p·x
![Page 52: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/52.jpg)
Bandwidth Sharing GameUsers have a utility function
Ui(x) for receiving x bandwidth.
Given a prize p, users maximizemaxx U (x) –px → xi
Fact: there is a prize pat which selfish user optimization results in optimal allocation.
[convex optimization]
Ui(x)
xxi
px
Assume elastic users (concave utility functions)
![Page 53: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/53.jpg)
Bandwidth Sharing GameUsers have a utility function
Ui(x) for receiving x bandwidth.
Given a prize p, users maximizemaxx U (x) –px → xi
Fact: there is a prize pat which selfish user optimization results in optimal allocation.
[convex optimization]
But what is the right prize to charge?
Ui(x)
xxi
px
Assume elastic users (concave utility functions)
![Page 54: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/54.jpg)
Proportional Allocation Mechanism
Allocation game:• Players offer money wi for bandwidth. • Bandwidth allocated proportional to payments:
– effective price p= (Σi wi )/B
– player allocation xi = wi /p
![Page 55: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/55.jpg)
Proportional Allocation Mechanism
Allocation game:• Players offer money wi for bandwidth. • Bandwidth allocated proportional to payments:
– effective price p= (Σi wi )/B
– player allocation xi = wi /p
• Does this game have a Nash equilibrium? • What is the Price of Anarchy?
![Page 56: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/56.jpg)
User Optimization?What do users do?
For a fixed price p:• solve • maxx U (x) –p·x
– U’(x)=p
• offer to pay w=x
Ui(x)
xxi
p·x
![Page 57: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/57.jpg)
User Optimization?What do users do?
For a fixed price p:• solve • maxx U (x) –p·x
– U’(x)=p
• offer to pay w=x
But their bid effects the price!
Ui(x)
xxi
p·x
![Page 58: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/58.jpg)
User Optimization?
Solve optimization problem for best wi
• given all other players bids wj
Allocation game:• Players offer money
wi for bandwidth. • Bandwidth allocated:
– price p= (Σi wi )/B
– allocation xi = wi /p
![Page 59: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/59.jpg)
User Optimization?
Solve optimization problem for best wi
• given all other players bids wj
Result allocation and price such that
– U’(x)(1-x/B)=p
Allocation game:• Players offer money
wi for bandwidth. • Bandwidth allocated:
– price p= (Σi wi )/B
– allocation xi = wi /p
![Page 60: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/60.jpg)
Bandwidth Allocation Results
Kelly’97For users that are price takers: • Nash allocation is socially optimal
[Convex optimization]
Johari-Tsitsiklis’04For users that anticipate the price:
![Page 61: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/61.jpg)
Bandwidth Allocation Results
Kelly’97For users that are price takers: • Nash allocation is socially optimal
[Convex optimization]
Johari-Tsitsiklis’04For users that anticipate the price: • Nash allocation exists, and • Worst Price of Anarchy is 4/3.
![Page 62: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/62.jpg)
Bandwidth Allocation: Worst case
Linear utilities:User 1 has utility U1(x)=x for
Many-many other usershave utility Ui(x)=x/2.
• “Socially optimal” user 1 gets everything
• At Nash: user 1 gets ½ of the bandwidth – But gets it cheaper
many small users
user 1
![Page 63: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/63.jpg)
Bandwidth Allocation: NetworksBoth Kelly and
Johari-Tsitsiklisresults extend to networks
Users bid payments for each edge separately!
• fixed routing, or• allowing users to split
traffic between multiple pathsx 1
s tx1
![Page 64: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/64.jpg)
Summary
We talked about• Some natural Network Games
facility location, routing
![Page 65: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/65.jpg)
Summary
We talked about• Some natural Network Games
facility location, routing• Price of Anarchy, local search and
potential games
![Page 66: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/66.jpg)
Summary
We talked about• Some natural Network Games
facility location, routing• Price of Anarchy, local search and
potential games• Designing games (mechanism design)
bandwidth allocation
![Page 67: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/67.jpg)
Connections to Algorithms, I
Local search– Finding local opt ↔ finding Nash
• In STOC’04:[Fabrikant-Papadimitriou-Talwar] and [Gairing-
Lücking-Mavronicolas-Monien]
– Quality of local search ↔ Price of Anarchy• Approximation via local search (service
provider game)• Connection to potential function Φ
![Page 68: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/68.jpg)
Connections to Algorithms, II
Convex Optimization– Price in Kelly’s bandwidth allocation game
Pricing and primal-dual algorithms– Market equilibrium
In STOC’04: [Garg-Kapoor], [Devanur-Vazirani]
![Page 69: Games in Networks - Cornell Universityeva/stoc04.pdfHow to Design Games well Traditional Mechanism Design (VCG): • use payments to induce all players to tell us his utility for bandwidth](https://reader036.vdocument.in/reader036/viewer/2022071423/611d3dcff8b0b46d62070fcf/html5/thumbnails/69.jpg)
Algorithmic Game Theory• The main ingredients:
– Lack of central controllike distributed computing
– Selfish participants game theory
• Common in many settings e.g., Internet
• Exciting area with many open problems: – Cost of anarchy in other network games– Design games with low cost of anarchy
See Proceedings for references