460 likes | 585 Views
Price of Anarchy, and Strategyproof Network Protocol Design. Xiang-Yang Li Department of Computer Science Illinois Institute of Technology Collaborated with: Weizhao Wang, Zheng Sun. Traditional Algorithms, Protocols. Efficiency Time, space, communication efficiency Assumption
E N D
Price of Anarchy, and Strategyproof Network Protocol Design Xiang-Yang Li Department of Computer Science Illinois Institute of Technology Collaborated with: Weizhao Wang, Zheng Sun
Traditional 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
Outline • 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
Why 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
How 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
Models • 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
Strategic 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
Example: Prisoners Dilemma Both players view: T>R > P>S e.g., T=10, R=8, P=4, S=1 Nash equilibrium (defect,defect) (p,p) Global optimum (R,R) if 2R>T+S
Price 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 prisoner’s dilemma is R/P • Price of anarchy of a protocol could be large (as routing)
Algorithm 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
N wireless nodes • Private cost ci • Strategies: all possible costs • Mechanism • Output O(c): a path • Payment p(c) • Node i • Valuation: • Utility: Algorithm 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:
Algorithm 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
Example: 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
Unicast • Node vkcosts ckto 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 7 6 7 9 5 1 7 • Objective: Find a payment pk(d) so node maximizes utility when dk =ck
Strategyproof 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
Unicast 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!
VCG Mechanism • Who designed? • Vickrey(1961); Groves(1973); Clarke(1971) • What is VCG Mechanism? • A VCG Mechanism is truthful.
5 5 Overpayment ratio: Unicast Payment Calculation 8 7 6 7 9 Total payment is 8+9+10 =27 instead of actual cost 18. 7 7
Overpayment- 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
Fast Payment Calculation • Payment calculation for one node • Dijstra’s algorithm • Time complexity O(n log n+m) • Payment calculation for all nodes on the LCP • Using Dijstra’s algorithm for every node • Time complexity O(n2 log n+nm) • We can calculate it faster! • Our Result: Payment calculation for all nodes on the LCP could be done in O(n log n+m) which is optimal.
9 1 4 3 7 5 2 Multicasting • 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
Fundamental 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)
Challenges • 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
Necessary 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
Strategyproof 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
Payment 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
Payment Optimality • The payment scheme is optimal regarding every individual payment • among all truthful payment scheme based on this structure
Computing Payment • Threshold defines a payment • Question left: how to find the threshold efficiently? • Illustrate for structure • Least Cost Path Tree (LCPT) Based
9 1 LCPT 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
Other Structures • Virtual Minimum Spanning tree • Construct the virtual complete graphK(G) • Nodes are receivers, plus source node • Edges are LCP between two end-points • Find the MST onK(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
What 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
Example: Cost Sharing • Given a set of players N • The cost of C(S) for every is known • The cost is cohesive: C(S+T)<= 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
4 3 7 3 9 1 2 Multicast 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
4 3 7 3 9 1 4 3 2 3/2+3/2=3 Shapley Value • Equally share for downstream receivers
Multicast 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
4 3 7 4 3 7 4 5 3 5 2 3 1 1 9 9 9 1 4 3 7 2 2 6 4 5 3 5 2 2 With valuation 3 4 5 5 3 2
Cost 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
Cost 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!
Sharing 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
15 14 7 8 6 14 9 7/2+(15-8)=11.5 4 4 5 7/2+5=8.5 Sharing payment: LCPT payment • Mechanism using LCPT as output
Properties • 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
Summary • 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
Selfish 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)