Docstoc

sinclair

Document Sample
sinclair Powered By Docstoc
					 Convergence to Nash


Michal Feldman and Amos Fiat
Congestion Games – Approx Nash
• Convergence to Approximate Nash in
  Congestion Games – Steve Chien and Alistair
  Sinclair, SODA 2007
• ε-Nash – no player can improve her cost by
  more than a factor of ε
• A congestion game satisfies the α≥1 bounded
  jump condition if
  de(t+1) ≤ α de(t) – delay on edge/resource e
    Bounds the increase of one additional player using
    the resource
  Symmetric Congestion Games,
   α-bounded resources/edges
• The ε-Nash dynamics converges from
  any initial state in    n          
                           log( nC ) 
                                      
 steps (if the player with the largest
  relative gain gets to play first)
  C is an upper bound on the cost of any player
  Symmetric Congestion Games,
   α-bounded resources/edges
• The ε-Nash dynamics converges from
  any initial state in  n(  1) 
                        (1   ) log(nC )  T
                                           
steps (if every player gets to play at
 least once within every T time steps)
  C is an upper bound on the cost of any player
 Symmetric Congestion Games,
  α-bounded resources/edges
Exact Potential Function                  fs (e)
For Congestion Game          ( s )    d e (t )
                                      eE t 1


 Player pi with current cost     ci ( s)   ( s) / 
 Makes a move, the cost must
 Decrease by a factor of ε
 Which means that the potential drops by

      ( s) /                          n          
                                          log( nC ) 
                                                     
   Symmetric Congestion Games,
    α-bounded resources/edges
             fs (e)
 ( s )    d e (t )
         eE t 1
Player pi with current cost ci ( s)   ( s ) / 
makes a move, the cost must
decrease by a factor of ε
Which means that the potential drops by  ( s) / 
after  log  /  steps we have
               max

reached an ε-Nash.
In any case,
                                                    
 (s)  i ci (s)     So, # steps is ≤
                                           log(nC ) 
                                                     
   Symmetric Congestion Games,
    α-bounded resources/edges
             fs (e)
 ( s )    d e (t )            If this player has largest cost, then
                                  we get the result needed
         eE t 1
Player pi with current cost ci ( s)   ( s ) / 
makes a move, the cost must
decrease by a factor of ε
Which means that the potential drops by  ( s) / 
after  log  /  steps we have
               max

reached an ε-Nash.
In any case,
                                                      
 (s)  i ci (s)     So, # steps is ≤
                                             log(nC ) 
                                                       
  Symmetric Congestion Games,
   α-bounded resources/edges
• So, if we always let the player with the
  largest relative gain play, and every edge
  has α-bounded jumps, and if the next step
  is made by player i, then the cost for i is at
  least 1/α the cost for j
  Symmetric Congestion Games,
   α-bounded resources/edges
• The ε-Nash dynamics converges from
  any initial state in  n(  1) 
                        (1   ) log(nC )  T
                                           
steps (if every player gets to play at
 least once within every T time steps)
  C is an upper bound on the cost of any player
     Why care about Games?
Users with a multitude
 of diverse economic
 interests sharing a
 Network (Internet)
     • browsers
     • routers
     • servers
                              Model Resulting Issues as
Selfishness:
  Parties deviate from
    their protocol if it is   Games on Networks
    in their interest
A simple game: load balancing
Each job wants to be on a lightly loaded
  machine.


With coordination we                   1
                              2
can arrange them to
minimize load                          3
                              2

Example: load of 4
                         machine 1   machine 2
 A simple game: load balancing
Each job wants to be on a lightly loaded
  machine.

• Without coordination?                    2


• Stable arrangement:                  1

No job has incentive to switch             3
                                       2


• Example: some have load of 5
              Games: setup
• A set of players (in example: jobs)
• for each player, a set of strategies
     (which machine to choose)
Game: each player picks a strategy
For each strategy profile (a strategy for each
  player)  a payoff to each player
      (load on selected machine)
Nash Equilibrium: stable strategy profile:
 where no player can improve payoff by
 changing strategy
                Games: setup
Deterministic (pure) or randomized (mixed)
 strategies?

Pure: each player selects a strategy.
  simple, natural, but stable solution may not exists

Mixed: each player chooses a probability distribution of
  strategies.
• equilibrium exists (Nash),
• but pure strategies often make more sense
 Pure versus Mixed strategies in
          load balancing

• Pure strategy: load of 1
                                           1         1




• A mixed equilibrium              1             1

  Expected load of 3/2                 50% 50%
                                                         50%
  for both jobs              50%




                         Machine 1         Machine 2
        Quality of Outcome:
         Goal’s of the Game
Personal objective for player i:
    min load Li or expected load E(Li)
Overall objective?
• Social Welfare: i Li or
     expected value E(i Li )
• Makespan: maxi Li or
    max expected value maxi E(Li) or
    expected makespan E(maxi Li )
 Example: simple load balancing
n identical jobs and n machines
           1     1      1       1       1


All pure equilibria: load of 1 (also optimum)
A mixed equilibrium: prob 1/n each machine

       1


expected load: E(Li)= 1+(n-1)   1
                                n
                                    <2 for each i
E(maxi Li ): balls and bins: log n/log log n
     Results on load balancing:
Theorem for E(maxi Li ):
• w/uniform speeds, p.o.a ≤ log m/log log m
• w/general speeds, worst-case p.o.a. is
     Θ(log m/log log log m)

Proof idea: balls and bins is worst case??
Requence of results by
  [Koutsoupias/Papadimitriou 99],
  [Mavronicolas/Spirakis 01],
  [Koutsoupias/Mavronicolas/Spirakis 02],
  [Czumaj/Vöcking 02]
                 Today:
focus on pure equilibria

Does a pure equilibria exists?
Does a high quality equilibria exists?
Are all equilibria high quality?

 some of the results extend to
 sum/max of E(Li)
             load balancing and routing
       Load balancing:                          Delay as a function
                                ℓe(x) = x       of load:
jobs                                            x unit of load 
                                                causes delay ℓe(x)
                             machines




   Routing network:                         Allow more complex
                                            networks
             ℓe(x) = x                          x         1
        s                t                  s       0         t
               1                                1         x
   Atomic vs. Non-atomic Game
Non-atomic game:                               80%           r=1
                                         x               1
• Users control an infinitesimally   s                       t
                                               0
  small amount of flow
                                           1             x
• equilibrium: all flow path                       20%
  carrying flow are minimum
  total delay                                                      r=1
                                               x             1
Atomic Game:                           s             0             t
• Each user controls a unit of flow, and       1             x
• selects a single path or machine

 Both congestion games: cost on edge e depends on the
 congestion (number of users)
  Example of nonatomic flow on two
               links
• One unit of flow sent from s to t
                   x
              Flow = .5                Traffic on lower
        s                     t        edge is envious.
                   1
              Flow = .5                  x
                                      Flow = 1
An envy free solution:            s                     t
                                             1
                 No-one is            Flow = 0
                 better off

Infinite number of players
      • will make analysis cleaner by continuous math
                  Braess’s Paradox
Original Network
              x .5                        .5   1
      s                                               t
                      .5                 .5                   Cost of Nash flow
              1                                x
                                                              = 1.5
Added edge:                x                              1
                                    .5               .5
                  s            .5              0   .5
                                                                t
                           1                              x
      Effect?
                  Braess’s Paradox
Original Network
              x .5             .5   1
      s                                 t
                   .5         .5                Cost of Nash flow
              1                     x
                                                = 1.5
Added edge:
                        x 1                 1
               s               1    0   1         t
                        1                   x
     Cost of Nash flow = 2
     All the flow has increased delay!
         Model of Routing Game
• A directed graph G = (V,E)
• source–sink pairs si,ti for
                                     x           .5 1
  i=1,..,k                       s          .5          t
                                                     r1 =1
• rate ri  0 of traffic             1 .5        .5 x
  between si and ti for each
  i=1,..,k


• Load-balancing jobs wanted min load
• Here want minimum delay:
   delay adds along path
   edge-delay is a function ℓe(•) of the load on
   the edge e
            Delay Functions                           r1 =1

Assume ℓe(x) continuous and            x
                                             .5       .5 1
                                  s                           t
 monotone increasing in load          1 .5            .5 x
 x on edge

No capacity of edges for now
Example to model capacity u:


 ℓe(x)= a/(u-x)                ℓe(x)

                                      x
                                                  u
          Goal’s of the Game
Personal objective: minimize
  ℓP(f) = sum of latencies of edges along P
                                       (wrt.
  flow f)
No need for mixed strategies

Overall objective:
   C(f) = total latency of a flow f: = P fP•ℓP(f)
  =social welfare
              Routing Game??
 Flow represents                            x          1
 • cars on highways                     s                  t
 • packets on the Internet                             x
                                                1
individual packets or small  continuous model
User goal: Find a path selfishly minimizing user delay
 true for cars,
packets?: users do not choose paths on the Internet:
routers do!

With delay as primary metric  router protocols choose
shortest path!
    Connecting Nash and Opt

• Min-latency flow
    • for one s-t pair for simplicity


•   minimize C(f) = e fe• ℓe(fe)
•   subject to: f is an s-t flow
•                  carrying r units

• By summing over edges rather than paths
  where fe = amount of flow on edge e
Characterizing the Optimal Flow
• Optimality condition: all flow travels along
  minimum-gradient paths
                                 x .5       1
  gradient is:           s              0       t
                             1              x
  (x ℓ(x))’                         .5
        = ℓ(x)+x ℓ’(x)
Characterizing the Optimal Flow
• Optimality condition: all flow travels along
  minimum-gradient paths
                                   x .5       1
  gradient is:             s              0       t
                               1              x
  (x ℓ(x))’                           .5
        = ℓ(x)+x ℓ’(x)


Recall: flow f is at Nash equilibrium iff all flow
travels along minimum-latency paths
               Nash  Min-Cost
Corolary 1: min cost is “Nash” with delay
          ℓ(x)+x ℓ’(x)

Corollary 2: Nash is ‘’min cost’’ with cost
                      fe
          Ф(f) = e 0 ℓe(x) dx

Why?
gradient of:
                    fe
                  (0 ℓe(x) dx )’ = ℓ(x)
           Using function Ф
• Nash is the solution minimizing Ф


Theorem (Beckmann’56)
• In a network latency functions ℓe(x) that
  are monotone increasing and continuous,

• a deterministic Nash equilibrium exists,
  and is essentially unique
       Using function Ф (con’t)
• Nash is the solution minimizing value of Ф
• Hence,
           Ф(Nash) < Ф(OPT).

Suppose that we also know for any solution
          Ф ≤ cost ≤ A Ф

 cost(Nash) ≤ A Ф(Nash) ≤ A Ф(OPT) ≤ A
 cost(OPT).
 There exists a good Nash!
      Example:              Ф ≤ cost ≤ A Ф

Example: ℓe(x) =x then
  – total delay is x·ℓe(x)=x2
  – potential is  ℓe() d = x2/2

More generally: linear delay ℓe(x) =aex+be
  – delay on edge x·ℓe(x) = aex2+be x
  – potential on edge:  ℓe() d = aex2/2+be x
  – ratio at most 2

Degree d polynomials:
  – ratio at most d+1
 Sharper results for non-atomic
            games
Theorem 1 (Roughgarden-Tardos’00)
• In a network with linear latency functions
   – i.e., of the form ℓe(x)=aex+be

• the cost of a Nash flow is at most 4/3
  times that of the minimum-latency flow
     Sharper results for non-atomic
                games
 Theorem 1 (Roughgarden-Tardos’00)
 • In a network with linear latency functions
    – i.e., of the form ℓe(x)=aex+be

 • the cost of a Nash flow is at most 4/3
   times that of the minimum-latency flow

          x                                      r=1
                                     x       1
       Flow = .5                 s               t
 s                  t                    0
           1                         1       x
      Flow = .5

Nash cost 1       optimum 3/4   Nash cost 2 optimum 1.5
Braess paradox in springs (aside)


         Cutting
         middle
         string

                   makes the weight rise
   and decreases power flow
   along springs
   Flow=power; delay=distance
  Bounds for spring paradox
Theorem 1’ (Roughgarden-Tardos’00)
In a network with springs and strings cutting
  some strings can increase the height by at
  most a factor of 4/3.



             Cutting
             middle
             string
 General Latency Functions
• Question: what about more general
 edge latency functions?
• Bad Example: (r = 1, d large)

                             A Nash flow can
      1       xd   1-
                             cost arbitrarily
  s                      t   more than the
          0    1   
                             optimal (min-cost)
                             flow
         Sharper results for non-atomic
                    games
Theorem 2 (Roughgarden’02):
• In any network with any class of convex continuous
  latency functions
• the worst price of anarchy is always on two edge
  network


 1-      x               x       Corollary:
                      1           price of anarchy for
 s            t   s           t   degree d polynomials is
          1
                     01
                                  O(d/log d).
             Another Proof idea
Modify the network
Nash:                                     ℓe(x)
        fe      ℓe(x)          fe

                                        ℓ(x)=
• Add a new fixed delay parallel edge

  – fixed cost set = ℓe(fe)

• Nash not effected
• Optimum can only improve
             Modified Network
Nash:                           e          ℓe(x)
        fe       ℓe(x)

                                 fe-e    ℓ(x)=
  – fixed cost set = ℓe(fe)

• Optimum on modified network
splits flow so that marginal costs are
  equalized

• and common marginal cost is = ℓe(fe)
             Proof of better bound
Nash:                       e        ℓe(x)
        fe       ℓe(x)

                             fe-e ℓ(x)=
• Theorem 2: the worst price of anarchy is
  always two edge network

• Proof: Prize of anarchy on G is median of
  ratios for the edges
More results for non-atomic games
Theorem 3 (Roughgarden-Tardos’00):
• In any network with continuous,
  nondecreasing latency functions

cost of Nash with          cost of opt with
rates ri for all i        rates 2ri for all i


  Proof …
         Proof of bicriteria bound
Nash:                         e         ℓe(x)
        fe     ℓe(x)

                              fe-e   ℓ(x)=
common marginal cost on two edges in opt is =
  ℓ e ( fe )
• Proof: Opt may cost very little, but marginal
  cost is as high as latency in Nash
•  Augmenting to double rate costs at least as
  much as Nash
 More results for non-atomic games
 Theorem 3 (Roughgarden-Tardos’00):
 • In any network with continuous,
   nondecreasing latency functions

 cost of Nash with           cost of opt with
 rates ri for all i         rates 2ri for all i


Morale for the Internet:
build for double flow rate
  Morale for       IP versus ATM?
Corollary: with M/M/1 delay fns: ℓ(x)=1/(u-x),
where u=capacity

Nash w/cap. 2u  opt w/cap. u


Doubling capacity is more effective than
optimized routing (IP versus ATM)
                Part II
• Discrete potential games:

• network design

• price of anarchy stability
   Continuous Potential Games
Continuous potential game: there is a function
  (f) so that Nash equilibria are exactly the local
  minima of 


also known as Walrasian equilibrium  convex then
   Nash equilibrium are the minima. For example

                            fe
                Ф(f) = e 0 ℓe(x) dx
             Discrete Analog
                    Atomic Game
                                             t
• Each user controls              s
  one unit of flow, and                     t
                                  s
• selects a single path

Theorem Change in potential is same as function
 change perceived by one user
     [Rosenthal’73, Monderer Shapley’96,]
(f) = e ( ℓe(1)+…+ ℓe(fe)) = e e
Even though moving player ignores all
 other users
   Potential: Tracking Happiness
Theorem Change in potential is same as function
 change perceived by one user
     [Rosenthal’73, Monderer Shapley’96,]
(f) = e ( ℓe(1)+…+ ℓe(fe)) = e e
                   Potential before move:
Reason?
                   ℓe(1)+… ℓe(fe -1) + ℓe(fe)
     e
                          +    ℓe’(1)+…+ ℓe’(fe’)
     e’
   Potential: Tracking Happiness
Theorem Change in potential is same as function
 change perceived by one user
     [Rosenthal’73, Monderer Shapley’96,]
(f) = e ( ℓe(1)+…+ ℓe(fe)) = e e
                   Potential after move:
Reason?
                   ℓe(1)+… ℓe(fe -1) + ℓe(fe)
     e
                          +    ℓe’(1)+…+ ℓe’(fe’) + ℓe’(fe’+1)
     e’            Change in  is -ℓe(fe) + ℓe’(fe’+1)

                   same as change for player
    What are Potential Games
Discrete potential game: there is a function
  (f) so that change in potential is same as function
  change perceived by one user
Theorem [Monderer Shapley’96] Discrete
  potential games if and only if congestion game (cost
  of using an element depends on the number of users).
Proof of “if” direction (f) = e ( ℓe(1)+…+   ℓe(fe))

Corollary: Nash equilibria are local min. of (f)
              Why care about
               Best Nash/Opt ratio?

Papadimitriou-Koutsoupias ’99
Nash = outcome of selfish behavior

worst Nash/Opt ratio: Price of Anarchy

Non-atomic game: Nash is unique…
Atomic Nash not unique!
     Best Nash is good quality…
                     cost of best selfish outcome
Price of Stability= “socially optimum” cost

                         cost of worst selfish outcome
Price of Anarchy=       “socially optimum” cost

 Potential argument  Low price of stability
 But do we care?
 Atomic Game: Routing with Delay
Theorems 1&2 true for the Nash minimizing the
 potential function, assuming all players carry
 the same amount of flow

Worst case on 2 edge network
Atomic Game: Price of Anarchy?
Theorem: Can be bounded for some classes of
 delay functions
 e.g., polynomials of degree at most d at most
 exponential in d.

  Suri-Toth-Zhou SPAA’04 + Awerbuch-Azar-Epstein
  STOC’05+ Christodoulou-Koutsoupias STOC’05
Network Design as Potential Game
Given: G = (V,E),
costs ce (x) for all e є E,
k terminal sets (colors)
  Have a player for each color.
Network Design as Potential Game
Given: G = (V,E),
costs ce (x) for all e є E,
k terminal sets (colors)
  Have a player for each color.

Each player wants to build a
  network in which his nodes
  are connected.

  Player strategy: select a
  tree connecting his set.
           Costs in Connection Game
Players pay for their trees,
   want to minimize payments.

What is the cost of the edges?
ce (x) is cost of edge e for x users.

Assume economy of scale for costs:



        ce (x)


                           x
           Costs in Connection Game
Players pay for their trees,
   want to minimize payments.

What is the cost of the edges?
ce (x) is cost of edge e for x users.

Assume economy of scale for costs:



        ce (x)                          How do players share
                                        the cost of an edge?
                           x
             A Connection Game
How do players share the cost
 of an edge?
Natural choice is fair sharing,
 or Shapley cost sharing:
               A Connection Game
How do players share the cost
 of an edge?
Natural choice is fair sharing,
 or Shapley cost sharing:
Players using e pay for it evenly:
             ci(P) = Σ ce (ke ) /ke
where ke number of users on edge e
                        [Herzog, Shenker, Estrin’97]
               A Connection Game
How do players share the cost
 of an edge?
Natural choice is fair sharing,
 or Shapley cost sharing:
Players using e pay for it evenly:
             ci(P) = Σ ce (ke ) /ke
where ke number of users on edge e
                        [Herzog, Shenker, Estrin’97]

This is congestion game: ℓe(x) =ce(x)/x
      with decreasing “latency”
                A Simple Example

    t 1, t 2 , … t k

          t


1                 k


         s
    s1, s2, … sk
                A Simple Example

    t 1, t 2 , … t k

          t                 t


1                 k    1        k


         s                  s
    s1, s2, … sk        One NE:
                       each player
                        pays 1/k
                A Simple Example

    t 1, t 2 , … t k

          t                 t             t


1                 k    1        k     1       k


         s                  s             s
    s1, s2, … sk        One NE:      Another NE:
                       each player   each player
                        pays 1/k        pays 1
    Maybe Best Nash is good?
We know price of anarchy is bad.
Game is a potential game so maybe Price
of Stability is better.

                        cost of best selfish outcome
 Price of Stability=
                       “socially optimum” cost


 Do we care?
      Nash as Stable Design
Need to Find a Nash equilibrium
  – Stable design: 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]
  Design with a constraint for stability
  Results for Network Design
Theorem [Anshelevich, Dasgupta, Kleinberg,
  Tardos, Wexler, Roughgarden FOCS’04]
Price of Stability is at most O(log k) for k
  players

proof:
• edge cost   ce with ke > 0 users
• edge potential with ke > 0 users
           e =ce·(1+1/2+1/3+…+1/k)
     Ratio at most Hk=O(log k)
          Example: Bound is Tight


                          t


          1   1
                  2
                      1
                          3           1          1
                                                     k
                                          k-1
1+   1       2               3   ...      k-1           k

          0       0   0           0   0
          Example: Bound is Tight


                          t                                  cost(OPT) = 1+ε

          1   1
                  2
                      1
                          3           1          1
                                                     k
                                          k-1
1+   1       2               3   ...      k-1           k

          0       0   0           0   0
          Example: Bound is Tight


                          t                                cost(OPT) = 1+ε
                                                           …but not a NE:
          1   1
                  2
                      1
                          3           1          1
                                                     k       player k
                                          k-1
1+                               ...                        pays (1+ε)/k,
      1       2               3            k-1           k
                                                             could pay 1/k
          0       0   0           0   0
          Example: Bound is Tight


                          t


          1   1
                  2
                      1
                          3           1          1
                                                     k       so player k
                                          k-1
1+                               ...                        would deviate
      1       2               3            k-1           k

          0       0   0           0   0
          Example: Bound is Tight


                          t


          1   1
                  2
                      1
                          3           1          1
                                                     k       now player k-1
                                          k-1
1+                               ...                        pays (1+ε)/(k-1),
      1       2               3            k-1           k
                                                             could pay 1/(k-1)
          0       0   0           0   0
          Example: Bound is Tight


                          t


          1   1
                  2
                      1
                          3           1          1
                                                     k       so player k-1
                                          k-1
1+                               ...                        deviates too
      1       2               3            k-1           k

          0       0   0           0   0
             Example: Bound is Tight


                             t                                  Continuing this
                                                                  process, all
             1   1       1                          1             players defect.
                     2       3           1              k
                                             k-1
1+      1       2               3   ...      k-1           k

             0       0   0           0   0                      This is a NE!
                                                                (the only Nash)
                                                                           1       1
                                                                cost = 1 + 2 + … + k

      Price of Stability is Hk = Θ(log k)!
          Congestion games
Routing with delay:                   xd       1
• cost increasing with            s                 t
                                           0
  congestion
                                      1        xd
     e.g., ce(x)= xℓe(x) =xd+1

Network Design Game:
• cost decreasing with
  congestion
      e.g., ℓe(x)= c(x)e/x
  Contrast with Routing Games
Routing games                   Design with Fair Sharing
• ce(x) increasing              • ce(x) decreasing
• Traffic maybe non-            • Choice atomic
  atomic OK? to split traffic       need to select single path
• Nash is unique                • Many equilibria
• Price of Stability grows      • Price of Stability
  with steepness of c:            bounded by  log n
   – worst case on 2 links
   – bicriteria bound
            x
         Flow = .5
     s               t
             1
         Flow = .5
                 Part III
Is Nash a reasonable concept?

Is the price of anarchy always small?
  and what can be do when its too big
  (mechanism design)

Examples:
• Network design and
• Resource allocation
        Why stable solutions?
Plan: analyze the quality of Nash equilibrium.
But will players find an equilibrium?
• Can a stable solution be found in poly. time?
• Does natural game play lead to an equilibrium?
• We are assuming non-cooperative players,
  what if there is cooperation?

Answer 1: A clean solution concept and exists
 ([Nash 1952] if game finite)
  Does life lead to clan solutions?
        Why stable solutions?
• Finding an equilibrium?

Nonatomic games: we’ll see that equilibrium can be
  found via convex optimization [Beckmann’56]

Atomic game: finding an equilibrium is polynomial local
  search (PLS) complete [Fabrikant, Papadimitriou, Talwar
  STOC’04]
        Why stable solutions?
• Does natural game play lead to equilibrium?

we’ll see that natural “best response play” leads to
  equilibrium if players change one at-a-time

See also:
Fischer\Räcke\Vöcking’06, Blum\Even-Dar\Ligett’06
  also if players simultaneously play natural learning
  strategies
      Why stable solutions?
• We are assuming non-cooperative players

Cooperation? No great models,
see some partial results on Thursday.
 How to Design “Nice” Games?
              (Mechanism Design)
Traditional Mechanism
  Design (VCG):

• use payments to induce
  all players to tell us his
  utility for connection
• Select a network to
  maximize social welfare
  (minimize cost)
 How to Design “Nice” Games?
              (Mechanism Design)
Traditional Mechanism
  Design (VCG):

• use payments to induce
  all players to tell us his
  utility for connection
• Select a network to
  maximize social welfare
  (minimize cost)

Cost lot of money; lots of
 information to share
 How to Design “Nice” Games?
              (Mechanism Design)
Traditional Mechanism          Here:
  Design (VCG):
                               • design a simple/natural
• use payments to induce         Nash game where users
  all players to tell us his     select their own graphs
  utility for connection         and
• Select a network to
  maximize social welfare
  (minimize cost)              • analyze the Prize of
                                 Anarchy
Cost lot of money; lots of
 information to share
   Network Design Mechanism
How should multiple players
on a single edge split costs?
We used fair sharing …
     [Herzog, Shenker, Estrin’97]



 ci(P) = Σ ce (ke ) /ke
 where ke number of users on edge e

 which makes network design a potential game
  Network Design Game Revisited
 How should multiple players
 on a single edge split costs?
 We used fair sharing …
      [Herzog, Shenker, Estrin’97]

Another approach: Why not free market?
players can also agree on shares? ...any division
  of cost agreed upon by players is OK.

Near-Optimal Network Design with Selfish Agents
  STOC ‘03 Anshelevich, Dasgupta, Tardos, Wexler.
   Network Design without Fairness

Results [Anshelevich, Dasgupta, Tardos, Wexler
  STOC’03]

Good news: Price of Stability 1 when all users
  want to connect to a common source
(as compared to log n for fair sharing)
But: with different source-sink pairs
• Nash may not exists (free riding problem)
• and may be VERY bad when it exists
Partial good news:  low cost Approximate Nash
         No Deterministic Nash:
          Free Riding problem
Network Design              s1                t2
   [ADTW STOC’03]                    1
                                 1        1
                                     1
Users bid contribution on   s2                t1
  individual edges.
• Single source game:                ?
  Price of Anarchy = 1      s1                t2
                                      1
                                 1        1
• Multi source: no Nash              1
                            s2                t1
         Mechanism Design
Example: Network design.

Results can be used to answer question:
 Should one promote “fair sharing” or “free
 market”?
     Another Example: Bandwidth
              Allocation




Many Users with diverse
  utilities for bandwidth.
How should we share a
  given B bandwidth?
    Bandwidth Sharing Game
Assumption:
Users have a utility function Ui(x) for receiving x
  bandwidth.


                                     Ui(x)

Assume elastic users
(concave utility functions)
                                xi             x
                 A Mechanism:
                             Kelly: proportional sharing

                             • Players offer money wi
                               for bandwidth.
                             • Bandwidth allocated
                               proportional to payments:
Many Users with diverse         – effective price p= (i wi )/B
  utilities for bandwidth.      – player allocation xi = wi /p

How should we share a
  given B bandwidth?
               A Mechanism:
                         Kelly: proportional sharing
                         • Players offer money wi for
                           bandwidth.
                         • allocation proportional:
                            – unit price p= (i wi )/B
Many Users with
 diverse utilities for      – player i gets xi = wi /p
 bandwidth.           Thm: If players are price-takers
                        (do not anticipate the effect
How should we share a   of their bid on the price)
  given B bandwidth?  Selfish play results in optimal
                        allocation
         Price Taking Users
Given price p:
how much bandwidth does user i want?
                                                     Ui(x)
                     slope p
Answer: keeps asking
for more until marginal
increase in happiness is
                                     xi
at least p:                                             x
                               Assume elastic users
        Ui’(x)=p               (concave utility functions)
           Price Taking Users:
         Kelly Mechanism Optimal
 Equilibrium at price p:
                                      slope p

 each user i wants xi such
                                                      Ui(x)
   that Ui’(xi)=p
 Total bandwidth used up at
   price p
  result optimal division of
   bandwidth                          xi                 x
                                Assume elastic users
                                (concave utility functions)
Price taking users
standard assumption if many players
    Kelly Proportional Sharing:
                       Johari-Tsitsikis, 2004:

                       what if players do
                        anticipate their effect
                        on the price?
Players offer money
   wi for bandwidth.
                       Theorem: Price of Anarchy
Bandwidth allocated
                        at most ¾ on any
  proportional to       networks, and any
  payments              number of users
     Kelly Proportional Sharing:
                         Theorem [Johari-Tsitsikis,
                           2004] Price of Anarchy at
                           most ¾ on any networks, and
                           any number of users

                         Why not optimal? big users
                          “shade” their price. User
Players offer money wi
   for bandwidth.
                          choice

Bandwidth allocated
                              Ui’(xi)(1-xi)=p
  proportional to        assuming total bandwidth is 1
  payments
                         Worst case: one large user and
                          many small users
                Summary
We talked about many issues

Price of Anarchy/Stability/Coalitions
in the context of some Network Games:
  – routing, load balancing, network design,
    bandwidth sharing
• Designing games (mechanism design)
  – network design
      Algorithmic Game Theory
• The main ingredients:
  – Lack of central control like distributed computing
   – Selfish participants game theory
• Common in many settings e.g., Internet
Most results so far:
  – Price of anarchy/stability in many games,
    including many I did not mention
  – e.g. Facility location (another potential game)
    [Vetta FOCS’02] and [Devanur-Garg-
    Khandekar-Pandit-Saberi’04]:
     Some Open Directions:
• Other natural network games with low
  lost of anarchy
• Design games with low cost of anarchy
• Better understand dynamics of natural
  game play
• Dynamics of forming coalitions

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:11
posted:9/17/2012
language:English
pages:104