Title: Price of Anarchy, and Strategyproof Network Protocol Design
1Price of Anarchy, and Strategyproof Network
Protocol Design
- Xiang-Yang Li
- Department of Computer Science
- Illinois Institute of Technology
- Collaborated with Weizhao Wang, Zheng Sun
2Traditional Algorithms, Protocols
- Efficiency
- Time, space, communication efficiency
- Assumption
- Participants act as instructed
- Not always true
- Faulty ones ? Fault-tolerant computing
- Malicious ones ? Security, and Trusted computing
- Selfish ones ? Strategyproof computing
3Outline
- Preliminaries and Related Works
- Non-cooperative games
- Price of Anarchy
- Strategyproof mechanisms for routing
- Unicast
- Multicast
- Cooperative games
- Cost and payment sharing
- Conclusion and future work
4Why need truthful computing?
- Example wireless network routing, need nodes to
relay packets, but - Nodes are battery powered
- Nodes are selfish (self-incentive)
- Denying/lying can result disaster for system
- Example TCP/IP congestion control
- Additive increase, Multiplicative decrease
- Terminals can deviate from this and benefit
5How to deal with selfish nodes?
- Reputation based methods
- Routing through nodes with good reputation
- Nodes are rated by peers
- Pay each node its declared cost
- Node will manipulate its declared cost to
increase its profit - May reach a stable point no node will
unilaterally change its declared cost---Nash - Pay each node some payment
- Node maximizes its profit when it reports cost
truthfully - So relieve nodes from manipulating declared cost
6Models
- Non-cooperative games
- Extensive (Sequential) Game Chess
- Strategic (Simultaneous) Game (?)
Scissor-paper-stone - Topics to discuss
- Price of anarchy
- Strategyproof mechanism design (assume no
collusion) - Cooperative games
- Transferable payoffs (side payments)
- Non-transferable payoffss
- Topics to discuss
- Sharing the cost of providing service
- Sharing the payments to selfish service providers
7Non-cooperative Games
8Strategic Game
- It composes of
- A set of n players (or called agents)
- For each player, a set of strategies
- For each player, a payoff function that gives
payoff to him based on n actions chosen by n
players - Selfish player
- Chooses best action to maximize its payoff, given
others actions - Not necessarily the best if cooperate
9Example Prisoners Dilemma
1 2 cooperate defect
cooperate (R,R) (S,T)
defect (T,S) (P,P)
Both players view TgtR gt PgtS e.g., T10, R8,
P4, S1
Nash equilibrium (defect,defect)? (p,p)
Global optimum (R,R) if 2RgtTS
10Price of anarchy
- What if we let the selfish agents play out with
each other? - Stable point (Nash equilibrium) no agent can
unilaterally switch its strategy to improve its
payoff - Not always exist
- Conjecture NP-hard to find one
- The performance at stable point
- Worst ratio of this over the optimum if
cooperated --- price of anarchy - E.g., price of anarchy of prisoners dilemma is
R/P - Price of anarchy of a protocol could be large (as
routing)
11Algorithm Mechanism Design
- Instead of letting players play out, design
incentives to influence the actions - Knows what selfish players will do under
incentives - The system performance is ensured
- Typical incentives
- Monetary values
- Differentiated services, and so on
12Algorithm Mechanism Design
Unicast game
- N players
- Private type ti
- Strategy from Ai
- Mechanism M(O,P)
- Output O(a)
- Payment p(a)
- Player i
- Valuation
- Utility
13Algorithm Mechanism Design
- Truthful (Strategyproof) Mechanism Design
- Incentive Compatibility for every agent i,
revealing its true type is a best strategy
regardless of whatever others do (dominant
strategy). - Individual Rationality Every agent must have
non-negative utility if reveals its true private
input. - Other Desirable Property
- Polynomial time complexity
- Output
- Payment
14Example Network Protocols
- Unicast
- Truthful payment scheme (VCG scheme)
- Our contribution Fast Computation
- Collusion Among nodes Negative results
- Multicast
- VCG not applicable
- Several truthful mechanisms for structures LCPS,
VMST, PMST, Steiner Tree. - Payment Computing, and sharing
15Unicast
- Node vk costs ck to relay (private knowledge)
- Each node vk reports a cost dk
- Find the shortest path from node v0 to node v9
based on reported costs d - Compute a payment pk for node vk based on d
8
6
7
7
9
5
1
7
- Objective Find a payment pk(d) so node
maximizes utility when dk ck
16Strategyproof Unicast Scheme
- Output
- Least cost path from s to t, by LCP(s, t, G)
- Payment to a relay node vk
- Remove it and its incident links
- Compute the shortest path from s to t
- The payment to vk is
- Otherwise the payment is 0
17Unicast Mechanism
- A VCG mechanism
- Output maximizes the total valuations
- Payment is VCG family
- Distributed Computing
- By Feigenbaum, Papadimitriou, Sami, Shenker
- But still lots to be solved
- It is the selfish agents who do the computing!
18VCG Mechanism
- Who designed?
- Vickrey(1961) Groves(1973) Clarke(1971)
- What is VCG Mechanism?
-
-
- A VCG Mechanism is truthful.
19Unicast Payment Calculation
8
7
6
7
9
Total payment is 8910 27 instead of actual
cost 18.
7
7
20Overpayment- Frugality Ratio
- VCG mechanism
- Overpayment could be arbitrarily large
- LCP k (LCP2-LCP), k is hop of LCP
- Any truthful mechanism for unicast
- Overpayment could be arbitrarily large
- LCP min(k1,k2) (LCP2-LCP)/2, k1 is hop of LCP,
k2 is hop of LCP2 - Proved by Elkind et al, 2004
21Fast Payment Calculation
- Payment calculation for one node
- Dijstras algorithm
- Time complexity O(n log nm)
- Payment calculation for all nodes on the LCP
- Using Dijstras algorithm for every node
- Time complexity O(n2 log nnm)
- We can calculate it faster!
- Our Result Payment calculation for all nodes on
the LCP could be done in O(n log nm) which is
optimal.
22Multicasting
- Problem Statement
- A graph , a cost vector for
all nodes or links, k receiving nodes R. - The cost is private value
- Find a spanning tree to minimize
23Fundamental differences
- For unicast
- LCP (max total valuations) can be found
efficiently - For multicast
- NP hard to find min-cost tree (max total
valuations) - with only ln n approximation for node weighted
graph and O(1) for link weighted graph. - This difference leads to
- VCG does not apply for multicast
- How to design truthful mechanisms?
- Generally, replacing optimum with approximation
leads to non-truthfulness (Nisan, Ronen)
24Challenges
- Given a method A constructing a multicast
structure, can we design a strategyproof
mechanism M(A,P) using it as output? - Necessary and sufficient conditions
- If exists, how to?
- Efficient computing of payment
- Fair sharing of payment
25Necessary and Sufficient Conditions
- A multicast method implies a strategyproof
mechanism iff - It is monotone still selects a relay node if it
has a less cost - Monotone structures
- Least Cost Path Tree (LCPT) Based
- Virtual Minimum Spanning Tree Based
- Steiner Tree Based
26Strategyproof Payment Scheme
- Define Truthful Payment Schemes
- Network is bi-connected (avoid monopoly)
- Payment to a relay node
- Fix others costs, the maximum cost it could
declare while still in the structure
Not selected
selected
cost
27Payment Is Truthful!
- Individual Rationality (IR) non-negative utility
- Incentive Compatibility (IC)
- A node lies up its cost to
- Originally it is a relay node
- Originally it is not a relay node
- A nodes lies down its cost to
- Originally it is a relay node
- Originally it is not a relay node
28Payment Optimality
- The payment scheme is optimal regarding every
individual payment - among all truthful payment scheme based on this
structure
29Computing Payment
- Threshold defines a payment
- Question left how to find the threshold
efficiently? - Illustrate for structure
- Least Cost Path Tree (LCPT) Based
30LCPT Based Method
- Structure (node or link or both)
- Calculate all shortest paths from source node to
receivers - Combine these shortest paths
- The structure is a tree called Least Cost Path
Tree (LCPT) - Payment Scheme
- Calculate the payment for node vk based on every
LCP containing vk - Choosing the maximum of these payments as the
final payment
4
3
7
3
2
31Other Structures
- Virtual Minimum Spanning tree
- Construct the virtual complete graph K(G)
- Nodes are receivers, plus source node
- Edges are LCP between two end-points
- Find the MST on K(G), say VMST(G)
- All agents on VMST(G) are selected
- General link weighted Steiner Tree
- NP-Hard, constant approximation methods exist
- Efficient computing of payments
- General Node weighted Steiner Tree
- NP-Hard, best approximation ratio O(ln k)
- Efficient computing of payments
See our MobiCom 2004 paper for more details
32Cooperative Games
33What is cooperative game
- A set of agents N perform some task together and
get a value v(N) - how to share the value among them
- The sharing should be fair!
- Does share encourage cooperation?
- More member, larger shared value
34Example Cost Sharing
- Given a set of players N
- The cost of C(S) for every is known
- The cost is cohesive C(ST)lt C(S)C(T)
- Cost allocation
- Share the cost among players
- Budget balance
- Be fair core
- Cost sharing scheme
- Share the cost C(S) for every S
- Cross-monotone
35Multicast Cost Sharing(fixed tree)
- Given a structure for multicast
- The cost of each relay agent is known
- A fixed tree from the source to all receivers
- Share the cost among receivers
- Budget balance
- Be fair core
- Cross-monotone
- Methods
- Shapley Value
36Shapley Value
- Equally share for downstream receivers
37Multicast Cost Sharing-Valuation
- Given a structure for multicast
- The cost of each relay agent is known
- A fixed tree from the source to all receivers
- Share the cost among receivers
- Budget balance
- Be fair core
- Cross-monotone
- Each receiver has a valuation , and
participates only if - So need select subset of receivers
38With valuation
3
4
5
5
3
2
39Cost Sharing (no fixed tree)
- All receivers must get the data
- Find an efficient tree
- Share the cost of tree among receivers fairly?
- Various concepts of fair core, bargaining set,
etc - ?-Core
- ?-Budget balance
- fair
- Tight bound
- No allocation can recover more than fraction
of optimum cost - Conjecture Exist an allocation can recover
fraction of cost
40Cost Sharing (no fixed tree)
- Cross monotonic ?-Core
- ?-Budget balance
- fair
- Cross monotone
- Tight bound
- No allocation can recover more than fraction
of optimum cost - of Shapley value on LCPT can recover
fraction of cost and also the actual cost!
41Sharing Payment
- Since the relay agents may be selfish, we need
share the payments to relay agents among
receivers - Need to be fair and encourage cooperation
- No free rider sharing is at least some factor of
the payment needed if it acts alone - Cross-monotonic more population, less sharing
- No negative transfer
- Budget balance
42Sharing payment LCPT payment
- Mechanism using LCPT as output
43Properties
- No negative transfer
- Budget balance
- Cross-monotonic
- No-free rider
- Dummy
- sharing is its cost if marginal payment payment
of unicast - Symmetry
- shared payments are same if two are
interchangeable
44Summary
- Computing in selfish environment
- Non-Cooperative Games
- Price of anarchy
- Strategyproof mechanism
- Cooperative Games
- Cost sharing
- Payment sharing
- How to share the payment for other structures
45Questions and Comments
46Selfish via Game Theory
- Game Theory, studied in
- Neoclassical economics
- Mathematics
- Other social and behavioral sciences (Psychology)
- Computer Science
- Game Theory History
- John von Neumann, Oskar Morgenstern (1944)
- Theory of games and economics behavior
- Prisoner's Dilemma (1950)
- John Nash Non-cooperative game Nash equilibrium
(1951)