1 / 38

Selfish Caching in Distributed Systems: A Game-Theoretic Analysis

Selfish Caching in Distributed Systems: A Game-Theoretic Analysis. By Byung-Gon Chun et al. UC Berkeley PODC’04. Outline. Motivation Game Theory Problem Formulation Theoretical Results Simulation Results Conclusions. Motivation.

elvin
Download Presentation

Selfish Caching in Distributed Systems: A Game-Theoretic Analysis

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Selfish Caching in Distributed Systems: A Game-Theoretic Analysis By Byung-Gon Chun et al. UC Berkeley PODC’04

  2. Outline • Motivation • Game Theory • Problem Formulation • Theoretical Results • Simulation Results • Conclusions CSE658 wireless Seminar

  3. Motivation • Traditional networks assume nodes are cooperative and follow certain protocol • In reality, nodes may behave selfishly • Seek to maximize their own benefit • Many applications: P2P, ad hoc network • Selfish Caching is to: Find appropriate object placement strategies for distributed replication groups of selfish nodes CSE658 wireless Seminar

  4. Game Theory • Definition: A formal way to analyze interaction among a group of rational players who behave strategically. • Game • a set of players: {1, 2, …, n} • player i has a set of alternative strategies: S_i • each strategy is called a pure strategy • mixed strategy: choosing all strategies according to prob. dist. • Strategy profile s= (s_1, s_2, …, s_n), where s_i є S_i • Payoff function h_i(s): the payoff to player i when the players choose strategy profile s • All above are common knowledge to each player

  5. Game Theory Continued • Nash equilibrium (NE): strategy profile in which no player can be strictly better off by unilateral deviation • Why NE? • It is a stable, self-enforcing solution • Theorem (Nash, 1951) – “For a game with finite players and each player having a set of finite strategies, there always exists an equilibrium in (mixed) strategy.” • In most cases, NE does not achieve social optimum due to selfishness of each player CSE658 wireless Seminar

  6. How to quantify the selfishness? • Price of anarchy (Papadimitriou et al, 1999) • loss of efficiency • ratio of the social cost of the worst possible Nash equilibrium to the cost of social optimum • Optimistic Price of anarchy Smallest ratio of NE and social optimum CSE658 wireless Seminar

  7. Caching and Selfish Caching

  8. Traditional Caching Problem • Given: • n servers; m objects • distance matrix D: d_{ij} is the distance from server i to server j • demand matrix W: w_{ij} is the demand of server i to object j • Placement cost matrix P: α_{ij} is the placement cost of server i for object j • No memory constraint • Goal: Place objects into servers s.t. the total access cost + placement cost is minimized • It is uncapacitated multi-facility location problem – NP hard CSE658 wireless Seminar

  9. Selfish caching problem • Each node tries to minimize its own access + placement cost • Model selfish caching problem as a non-cooperative game with n players whose strategies are sets of objects to cache • Each node (player) chooses a pure strategy that minimize its own cost CSE658 wireless Seminar

  10. Basic Selfish Caching Cost Model • Given: • s_i: strategy chosen by server i (set of objects i places) • Strategy profile: s = (s_1, s_2, …, s_n) • the cost of server i: • For each object, at least one server will choose to cache CSE658 wireless Seminar

  11. Separability of Uncapacitated Version • We can look at individual object placement separately due to no memory constraint • Nash equilibrium of the multi-object caching game is the combination of the Nash Equilibria of single object caching game CSE658 wireless Seminar

  12. Social Optimal Caching CSE658 wireless Seminar

  13. Social Optimal Caching • Social Optimal Cost: C(So) = minS CSE658 wireless Seminar

  14. Single Object Selfish Caching Game • Strategy: si = 1, when i replicates ; 0, otherwise strategy profile: s = (s1, s2, …, sn) • Cost of server i to access object j • Social cost of s: ∑ ci(s) CSE658 wireless Seminar

  15. Major Questions • Does a pure strategy Nash equilibrium exist in single object selfish caching game? • If so, what is the price of anarchy in such NE? • How does price of anarchy vary under different demand distribution, underlying topology and placement cost? • Can Nash equilibrium achieve social optimum? CSE658 wireless Seminar

  16. Major Results • Pure strategy NE exists in single-object caching game • Price of anarchy can be bad: O(n) • With payment as incentive for nodes to replicate, there exists pure strategy NE achieving social optimum CSE658 wireless Seminar

  17. How to find the pure strategy NE in single object caching game? • Assume placement cost the same for all servers: α ; server i’s demand is w_i • Algorithm: 1. Remove “zero demand” servers from the server set N 2. Pick a server y s.t. α/w_y is the minimum 1) y places the object 2) Remove y and all z where w_z*d_{zy} ≤ α 3. Continue 2 until N is empty CSE658 wireless Seminar

  18. Continued… • Claim: The resulting configuration X is a pure strategy NE • All such y have no incentive to remove its object • All such z have no incentive to replicate • No player has incentive to deviate, its NE. CSE658 wireless Seminar

  19. Price of Anarchy (PoA) of Single Object Game • PoA = C(WNE)/C(SO) CSE658 wireless Seminar

  20. Inefficiency of NE CSE658 wireless Seminar

  21. Payment Game • Each player i offers a payment to another player j as incentive for j to replicate object • Strategy for player i: (v_i, b_i, t_i) • v_i: the player to whom i makes a bid • b_i: the value of the i’s bid • t_i: payment threshold beyond which i will replicate • Total amount of bids received by i: R_i • i replicates iff R_i >= t_i • I_i = 1 if i replicates object, I_i = 0 if not CSE658 wireless Seminar

  22. Payment Game Continued… • If i makes bid b_i to j • If j replicates the object, then i must pay j amount of b_i • If j does not replicate, i does not pay j • The outcome of the game is: {(I_i, v_i, b_i, R_i)} • Cost Model CSE658 wireless Seminar

  23. Results of Payment Game • Theorem In the payment game, there is always Nash equilibrium that implements the social optimum configuration CSE658 wireless Seminar

  24. Simulation

  25. Proof • Observation If node i replicates the object, j is the nearest node to i that replicates the object, and dij < α, then i should have a threshold at least (α – dij ) • Consider the social optimal configuration Φ. • i is one of the cache nodes, Qi the set of nodes that access object from i (not including i). • For each j in Qi, δj is extra cost needed if not accessing j • Claim: If node i replicates the object, j is the nearest node to i that replicates the object, if i is CSE658 wireless Seminar

  26. CSE658 wireless Seminar

  27. Varying Placement Cost CSE658 wireless Seminar

  28. Effects of Payment and Different Underlying Topology

  29. CSE658 wireless Seminar

  30. CSE658 wireless Seminar

  31. Conclusions • Introduce a non-cooperative game model for selfish caching • Pure strategy NE exists and the price of anarchy can be O(n) • With payments, price of anarchy can be improved as one CSE658 wireless Seminar

  32. Distributed Selfish Replication By N. Laoutaris etc IEEE TPDS 2005

  33. Network Model • Object sets O={o_1, o_2…,o_N}, n players • Accessing object from a node’s local cache costs t_l, from a remote node’s cache t_r, and from origin server t_s, with t_l <= t_r <= t_s • Each node has memory capacity: C_i • Goal is to maximize the excess gain (access cost reduced due to caching) CSE658 wireless Seminar

  34. Game Model • Node i’s strategy P_i: the set of objects replicated at i • Global object placement P = {P_1, P_2,…, P_n}; P_-i = P_1 U … U P_{i-1} U P_{i+1} U… U P_n • The gain for i under P is CSE658 wireless Seminar

  35. There exists a NE • Step 1 (Greedy Local): each node caches the top C_i popular object according to its own access demand • Step 2: in the order of their node id, each node adjusts its placement (move in/out objects) according to the current placement of all other nodes. • What obtained is a NE. CSE658 wireless Seminar

  36. Sketch of proof (why its NE): • Only need to show in step 2 above, for any node i, the changes in the cache placement by the nodes following i’s turn do not affect the optimality of i’s placement (i.e. the top C_i popular data do not change). • Lemma 1: In step 2, for any node, only object with more than 1 copy in the network can be removed • Otherwise, the object’s gain won’t be reduced and thus won’t be removed out • Lemma 2: In sep 2, only object with zero copy in the network can be moved in • By way of contradiction • Each removed object does not affect i’s cache placement optimality since there are at one more copy in the network • Each moved-in object does not affect i’s cache placement optimality since its gain must be lower than that of any objects currently in i’s cache. • So each node has no incentive to change its cache placement.

  37. Our approach • Network Model (two major difference compared with existing work): • Consider both memory capacity of each node and the number of hops between nodes; consider both caching cost and access cost • Network nodes are the source nodes of all the objects CSE658 wireless Seminar

  38. Game model becomes more complicated!! • Thus a pure strategy NE is in question, even omitting the caching cost! CSE658 wireless Seminar

More Related