1 / 57

Game Theory: introduction and applications to computer networks

Game Theory: introduction and applications to computer networks. Introduction Giovanni Neglia INRIA – EPI Maestro 3 February 2014 Part of the slides are based on a previous course with D. Figueiredo (UFRJ) and H. Zhang (Suffolk University).

earl
Download Presentation

Game Theory: introduction and applications to computer networks

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. Game Theory: introduction and applications to computer networks Introduction Giovanni Neglia INRIA – EPI Maestro 3 February 2014 Part of the slides are based on a previous course with D. Figueiredo (UFRJ) and H. Zhang (Suffolk University)

  2. Always an equilibrium with small Loss of Efficiency? • Consider only affine cost functions, i.e. cα(x)=aα+bαx • We will use the potential to derive a bound on the social cost of a NE • P(f) <= CS(f) <= 2 P(f) Cα (x) Pα(fα) Cα(fα) x fα

  3. Always an equilibrium with small Loss of Efficiency? • Consider only affine cost functions i.e. cα(x)=aα+bαx • We will use the potential to derive a bound on the social cost of a NE • P(f) <= CS(f) <= 2 P(f) • P(f) = Σ ε E P=Σ ε E Σt=1,…f c(t) <= <=Σ ε E Σt=1,…f c(f)=Σ ε E fc(f)=CS(f) • P(f) = Σ ε E P=Σ ε E Σt=1,…f(aα+bαt)= =Σ ε E fαaα+bαfα(fα+1)/2 >= Σ εEfα(aα+bαfα)/2 =CS(f)/2

  4. Always an equilibrium with small Loss of Efficiency? • Consider only affine cost functions i.e. cα(x)=aα+bαx • P(f) <= CS(f) <= 2 P(f) • Let’s imagine to start from routing fOpt with the optimal social cost CS(fOpt), • Applying the BR dynamics we arrive to a NE with routing fNE and social cost CS(fNE) • CS(fNE) <= 2 P(fNE) <= 2 P(fOpt) <= 2 CS(fOpt) • The LoE of this equilibrium is at most 2

  5. Same technique, different result • Consider a network with a routing at the equilibrium • Add some links • Let the system converge to a new equilibrium • The social cost of the new equilibrium can be at most 4/3 of the previous equilibrium social cost (as in the Braess Paradox)

  6. Loss of Efficiency, Price of Anarchy, Price of Stability • Loss of Efficiency (LoE) • given a NE with social cost CS(fNE) • LoE= CS(fNE) / CS(fOpt) • Price of Anarchy (PoA) [Koutsoupias99] • Different settings G (a family of graph, of cost functions,...) • Xg=set of NEs for the setting g in G • PoA = supgεGsupNEεXg{CS(fNE) / CS(fOpt)} => “worst” loss of efficiencyin G • Price of Stability (PoS) [Anshelevish04] • PoS = supgε GinfNEεXg{CS(fNE) / CS(fOpt)} => guaranteedloss of efficiency in G

  7. Stronger results for affine cost functions • We have proven that for unit-traffic routing games the PoS is at most 2 • For unit-traffic routing games and single-source pairs the PoS is 4/3 • For non-atomic routing games the PoA is 4/3 • non-atomic = infinite players each with infinitesimal traffic • For other cost functions they can be much larger (even unbounded)

  8. Performance Evaluation Sponsored Search Markets Giovanni Neglia INRIA – EPI Maestro 4 February 2013

  9. Google • A class of games for which there is a function P(s1,s2,…sN) such that • For each i Ui(s1,s2,…xi,…sN)>Ui(s1,s2,…yi,…sN) if and only if P(s1,s2,…xi,…sN)>P(s1,s2,…yi,…sN) • Properties of potential games: Existence of a pure-strategy NE and convergence to it of best-response dynamics • The routing games we considered are particular potential games

  10. How itworks • Companies bid for keywords • On the basis of the bids Google puts their link on a given position (first ads get more clicks) • Companies are charged a given cost for each click (the cost depends on all the bids)

  11. Somenumbers • ≈ 95% of Google revenues (46 billions$) fromads • investor.google.com/financial/tables.html • 87% of Google-Motorola revenues (50 billions$) • Costs • "calligraphypens" $1.70 • "Loan consolidation" $50 • "mesothelioma" $50 per click • Click fraudproblem

  12. Outline • Preliminaries • Auctions • Matchingmarkets • Possible approaches to adspricing • Google mechanism • References • Easley, Kleinberg, "Networks, Crowds and Markets", ch.9,10,15

  13. Types of auctions • 1stprice & descendingbids • 2ndprice & ascendingbids

  14. Game Theoretic Model • N players (the bidders) • Strategies/actions: biisplayeri’sbid • For player i the good has value vi • piisplayeri’spayment if hegets the good • Utility: • vi-pi if player i gets the good • 0 otherwise • Assumptionhere: values vi are independentand private • i.e. veryparticulargoods for whichthereis not a referenceprice

  15. Game Theoretic Model • N players (the bidders) • Strategies: biisplayeri’sbid • Utility: • vi-bi if player i gets the good • 0 otherwise • Difficulties: • Utilities of otherplayers are unknown! • Better to model the strategyspaceas continuous • Most of the approacheswestudied do not work!

  16. 2ndpriceauction • Player with the highestbidgets the good and pays a priceequal to the 2ndhighestbid • There is a dominant strategies • I.e. a strategythatis more convenientindependentlyfromwhat the otherplayers do • Be truthful, i.e. bid how muchyouevaluate the good (bi=vi) • Social optimality: the bidderwho value the good the mostgetsit!

  17. bi=viis the highestbid bids bids bi’>bi bi bk bk Ui=vi-bk>vi-bi=0 Ui’=vi-bk bh bh bn bn Bidding more than viis not convenient

  18. bi=viis the highestbid bids bids bi bk bk bi’<bi Ui=vi-bk>vi-bi=0 Ui’=0 bh bh bn bn Biddinglessthan viis not convenient (maybeunconvenient)

  19. bi=viis not the highestbid bids bids bi’>bi Ui’=vi-bk<vi-bi=0 bk bk bi Ui=0 bh bh bn bn Bidding more than viis not convenient (maybeunconvenient)

  20. bi=viis not the highestbid bids bids bk bk bi bi’<bi Ui’=0 Ui=0 bh bh bn bn Biddinglessthan viis not convenient

  21. Seller revenue • N bidders • Values are independentrandom values between 0 and 1 • Expectedithlargest utility is(N+1-i)/(N+1) • Expected seller revenue is(N-1)/(N+1)

  22. 1stpriceauction • Player with the highestbidgets the good and pays a priceequal to her/hisbid • Beingtruthfulis not a dominant strategyanymore! • How to studyit?

  23. 1stpriceauction • Assumption: for eachplayer the other values are i.i.d. random variables between 0 and 1 • to overcome the factthat utilities are unknown • Player i’sstrategyis a function s() mapping value vi to a bid bi • s() strictlyincreasing, differentiablefunction • 0≤s(v)≤v  s(0)=0 • Weinvestigate if thereis a strategy s() common to all the playersthat leads to a Nash equilibrium

  24. 1stpriceauction • Assumption: for eachplayer the other values are i.i.d. random variables between 0 and 1 • Player i’sstrategyis a function s() mapping value vi to a bid bi • Expectedpayoff of player i if all the playersplays s(): • Ui(s,…s,…s) = viN-1 (vi-s(vi)) i’spayoff if he/shewins prob. i wins

  25. 1stpriceauction • Expectedpayoff of player i if all the playersplay s(): • Ui(s,…s,…s) = viN-1 (vi-s(vi)) • What if i plays a differentstrategyt()? • If all playersplaying s() is a NE, then : • Ui(s,…s,…s) = viN-1(vi-s(vi)) ≥ viN-1 (vi-t(vi)) = = Ui(s,…t,…s) • Difficult to check for all the possible functionst() differentfrom s() • Help from the revelationprinciple

  26. The RevelationPrinciple • All the strategies are equivalent to bidder i supplying to s() a different value of vi s() vi bi t() s() vi' vi bi' bi'

  27. 1stpriceauction • Expectedpayoff of player i if all the playersplays s(): • Ui(v1,…vi,…vN) = Ui(s,…s,…s) = viN-1 (vi-s(vi)) • What if i plays a differentstrategyt()? • By the revelationprinciple: • Ui(s,…t,…s) = Ui(v1,…v,…vN)= vN-1(vi-s(v)) • If viN-1 (vi-s(vi)) ≥ vN-1(vi-s(v)) for each v (and for each vi) • Then all playersplaying s() is a NE

  28. 1stpriceauction • If viN-1 (vi-s(vi)) ≥ vN-1(vi-s(v)) for each v (and for each vi) • Then all playersplaying s() is a NE • f(v)=viN-1 (vi-s(vi)) - vN-1 (vi-s(v)) isminimized for v=vi • f’(v)=0 for v=vi, • i.e. (N-1) viN-2 (vi-s(v)) + viN-1 s’(vi) = 0 for each vi • s’(vi) = (N-1)(1 – s(vi)/vi), s(0)=0 • Solution: s(vi)=(N-1)/N vi

  29. 1stpriceauction • All playersbiddingaccording to s(v) = (N-1)/N v is a NE • Remarks • They are not truthful • The more they are, the highertheyshouldbid • Expected seller revenue • ((N-1)/N) E[vmax] = ((N-1)/N) (N/(N+1)) = (N-1)/(N+1) • Identical to 2ndpriceauction! • A general revenue equivalenceprinciple

  30. Outline • Preliminaries • Auctions • Matchingmarkets • Possible approaches to adspricing • Google mechanism • References • Easley, Kleinberg, "Networks, Crowds and Markets", ch.9,10,15

  31. MatchingMarkets goods buyers v11,v21, v31 1 1 v12, v22, v32 2 2 v12, v22, v32 3 3 vij: value thatbuyer j gives to good i How to match a set of differentgoods to a set of buyerswithdifferentevaluations

  32. MatchingMarkets p1=2 12, 4, 2 1 1 8, 7, 6 p2=1 2 2 7, 5, 2 p3=0 3 3 Whichgoodsbuyerslikemost? Preferred seller graph How to match a set of differentgoods to a set of buyerswithdifferentevaluations

  33. MatchingMarkets • Given the prices, look for a perfectmatching on the preferred seller graph • There is no suchmatching for this graph p1=2 12, 4, 2 1 1 8, 7, 6 p2=1 2 2 7, 5, 2 p3=0 3 3 Whichgoodsbuyerslikemost? Preferred seller graph

  34. MatchingMarkets • But withdifferentprices, thereis p1=3 12, 4, 2 1 1 8, 7, 6 p2=1 2 2 7, 5, 2 p3=0 3 3 Whichgoodsbuyerslikemost? Preferred seller graph

  35. MatchingMarkets • But withdifferentprices, thereis • Suchprices are market clearing prices p1=3 12, 4, 2 1 1 8, 7, 6 p2=1 2 2 7, 5, 2 p3=0 3 3 Whichgoodsbuyerslikemost? Preferred seller graph

  36. Market Clearing Prices • Theyalwaysexist • And canbeeasilycalculated if valuations are known • They are socially optimal in the sensethattheymaximize the sum of all the payoffs in the network (bothsellers and buyers)

  37. Outline • Preliminaries • Auctions • Matchingmarkets • Possible approaches to adspricing • Google mechanism • References • Easley, Kleinberg, "Networks, Crowds and Markets", ch.9,10,15

  38. Adspricing Ads positions companies r1 v1 1 1 v2 r2 2 2 v3 r3 3 3 vi: value thatcompany i gives to a click ri: click rate for an ad in position i (assumed to beindependent from the ad and known a priori) How to rankadsfromdifferentcompanies

  39. Adspricing as a matchingmarket Ads positions companies • Problem: Valuations are not known! • … but wecould look for something as 2ndpriceauctions r1 v1r1, v1r2, v1r3 1 1 v2r1, v2r2, v2r3 r2 2 2 v3r1, v3r2, v3r3 r3 3 3 vi: value thatcompany i gives to a click ri: click rate for an ad in position i (assumed to beindependent from the ad and known a priori)

  40. The VCG mechanism • The correct way to generalize 2ndpriceauctions to multiple goods • Vickrey-Clarke-Groves • Everybuyersshouldpay a priceequal to the social value loss for the othersbuyers • Example: consider a 2ndpriceauctionwith v1>v2>…vN • With 1 present the othersbuyersget 0 • Without 1, 2 would have got the good with a value v2 • then the social value loss for the othersis v2

  41. The VCG mechanism • The correct way to generalize 2ndpriceauctions to multiple goods • Vickrey-Clarke-Groves • Everybuyersshouldpay a priceequal to the social value loss for the othersbuyers • If VBSis the maximum total valuation over all the possible perfectmatchings of the set of sellers S and the set of buyers B, • If buyer j gets good i, he/sheshouldbecharged VB-jS- VB-jS-i

  42. VCG example Ads positions companies r1=10 v1=3 1 1 v2=2 r2=5 2 2 v3=1 r3=2 3 3 vi: value thatcompany i gives to a click ri: click rate for an ad in position i (assumed to beindependent from the ad and known a priori)

  43. VCG example Ads positions companies 30, 15, 6 1 1 20, 10, 4 2 2 10, 5, 2 3 3

  44. VCG example Ads positions companies • This is the maximum weightmatching • 1 gets 30, 2 gets 10 and 3 gets 2 30, 15, 6 1 1 20, 10, 4 2 2 10, 5, 2 3 3

  45. VCG example Ads positions companies • If 1 weren’tthere, 2 and 3 wouldget 25 instead of 12, • Then 1 shouldpay 13 30, 15, 6 1 1 20, 10, 4 2 2 10, 5, 2 3 3

  46. VCG example Ads positions companies • If 2 weren’tthere, 1 and 3 wouldget 35 instead of 32, • Then 2 shouldpay 3 30, 15, 6 1 1 20, 10, 4 2 2 10, 5, 2 3 3

  47. VCG example Ads positions companies • If 3 weren’tthere, nothingwould change for 1 and 2, • Then 3 shouldpay 0 30, 15, 6 1 1 20, 10, 4 2 2 10, 5, 2 3 3

  48. The VCG mechanism • Everybuyersshouldpay a priceequal to the social value loss for the othersbuyers • If VBSis the maximum total valuation over all the possible perfectmatchings of the set of sellers S and the set of buyers B, • If buyer j gets good i, he/sheshouldbecharged VB-jS- VB-jS-i • Under thispricemechanism, truth-tellingis a dominant strategy

  49. Outline • Preliminaries • Auctions • Matchingmarkets • Possible approaches to adspricing • Google mechanism • References • Easley, Kleinberg, "Networks, Crowds and Markets", ch.9,10,15

  50. Google’s GSP auction • Generalized Second Price • Once all the bids are collected b1>b2>…bN • Company i pays bi+1 • In the case of a single good (position), GSP isequivalent to a 2ndpriceauction, and also to VCG • But why Google wanted to implementsomethingdifferent???

More Related