Documents
Resources
Learning Center
Upload
Plans & pricing Sign in
Sign Out
Get this document free

Harvard

VIEWS: 2 PAGES: 138

									Algorithmic Game Theory
   New Market Models
 and Internet Computing
     and Algorithms

    Vijay V. Vazirani
Markets
Stock Markets
Internet
   Revolution in definition of markets
   Revolution in definition of markets



   New markets defined by
     Google
     Amazon
     Yahoo!
     Ebay
   Revolution in definition of markets


   Massive computational power available
    for running these markets in a
     centralized or distributed manner
   Revolution in definition of markets


   Massive computational power available
    for running these markets in a
     centralized or distributed manner


   Important to find good models and
      algorithms for these markets
          Theory of Algorithms

   Powerful tools and techniques
     developed over last 4 decades.
          Theory of Algorithms

   Powerful tools and techniques
     developed over last 4 decades.

   Recent study of markets has contributed
     handsomely to this theory as well!
               Adwords Market
   Created by search engine companies
     Google
     Yahoo!
     MSN


   Multi-billion dollar market

   Totally revolutionized advertising, especially
       by small companies.
           New algorithmic and
         game-theoretic questions


   Monika Henzinger, 2004: Find an on-line
    algorithm that maximizes Google‟s revenue.
 The Adwords Problem:

N advertisers;
   Daily Budgets B1, B2, …, BN
   Each advertiser provides bids for keywords he is interested in.




                        Search Engine
  The Adwords Problem:

N advertisers;
   Daily Budgets B1, B2, …, BN
   Each advertiser provides bids for keywords he is interested in.




queries                 Search Engine
(online)
  The Adwords Problem:

N advertisers;
   Daily Budgets B1, B2, …, BN
   Each advertiser provides bids for keywords he is interested in.



                                                   Select one Ad
queries                 Search Engine
(online)                                           Advertiser
                                                    pays his bid
  The Adwords Problem:

N advertisers;
   Daily Budgets B1, B2, …, BN
   Each advertiser provides bids for keywords he is interested in.



                                                      Select one Ad
queries                   Search Engine
(online)                                              Advertiser
                                                       pays his bid




 Maximize total revenue

 Online competitive analysis - compare with best offline allocation
  The Adwords Problem:

N advertisers;
   Daily Budgets B1, B2, …, BN
   Each advertiser provides bids for keywords he is interested in.



                                                    Select one Ad
queries                   Search Engine
(online)                                            Advertiser
                                                     pays his bid




 Maximize total revenue

 Example – Assign to highest bidder: only ½ the offline revenue
Example:

       Bidder1 Bidder 2


Book      $1     $0.99     Queries: 100 Books then 100 CDs


 CD       $1      $0


         B1 = B2 = $100




                    LOST
                                                                   Revenue
                                                                   100$
   Algorithm Greedy

                                             Bidder 1   Bidder 2
Example:

       Bidder1 Bidder 2


Book      $1    $0.99     Queries: 100 Books then 100 CDs


 CD       $1     $0


        B1 = B2 = $100




                                                                  Revenue
                                                                  199$
   Optimal Allocation

                                            Bidder 1   Bidder 2
Generalizes online bipartite matching

    Each daily budget is $1, and
      each bid is $0/1.
Online bipartite matching

 advertisers   queries
Online bipartite matching

 advertisers   queries
Online bipartite matching

 advertisers   queries
Online bipartite matching

 advertisers   queries
Online bipartite matching

 advertisers   queries
Online bipartite matching

 advertisers   queries
Online bipartite matching

 advertisers   queries
        Online bipartite matching

   Karp, Vazirani & Vazirani, 1990:
    1-1/e factor randomized algorithm.
        Online bipartite matching

   Karp, Vazirani & Vazirani, 1990:
    1-1/e factor randomized algorithm. Optimal!
        Online bipartite matching

   Karp, Vazirani & Vazirani, 1990:
    1-1/e factor randomized algorithm. Optimal!

   Kalyanasundaram & Pruhs, 1996:
     1-1/e factor algorithm for b-matching:
    Daily budgets $b, bids $0/1, b>>1
             Adwords Problem

   Mehta, Saberi, Vazirani & Vazirani, 2005:
    1-1/e algorithm, assuming budgets>>bids.
             Adwords Problem

   Mehta, Saberi, Vazirani & Vazirani, 2005:
    1-1/e algorithm, assuming budgets>>bids.
    Optimal!
      New Algorithmic Technique

   Idea: Use both bid and
           fraction of left-over budget
      New Algorithmic Technique

   Idea: Use both bid and
           fraction of left-over budget

   Correct tradeoff given by
     tradeoff-revealing family of LP‟s
    Historically, the study of markets


   has been of central importance,
       especially in the West
        A Capitalistic Economy
depends crucially on pricing mechanisms,
 with very little intervention, to ensure:

 Stability
 Efficiency
 Fairness
Do markets even have inherently
    stable operating points?
  Do markets even have inherently
      stable operating points?


    General Equilibrium Theory
Occupied center stage in Mathematical
    Economics for over a century
Leon Walras, 1874


             Pioneered general
              equilibrium theory
Supply-demand curves
Irving Fisher, 1891


              Fundamental
                market model
Fisher‟s Model, 1891

                                           $
                $$$$$$$$$

    ¢

                             wine
            bread                              $$$$
                    cheese          milk


   People want to maximize happiness – assume
       Find prices
    linear utilities.s.t. market clears
Fisher‟s Model
     n buyers, with specified money, m(i) for buyer i
     k goods (unit amount of each good) U  u x
                                             i   
                                                 j
                                                     ij ij


     Linear utilities: uij is utility derived by i
      on obtaining one unit of j
     Total utility of i,

                    u  u x
                      i     j   ij   ij


                    x [0,1]
                      ij
Fisher‟s Model
    n buyers, with specified money, m(i)
    k goods (each unit amount, w.l.o.g.) U  u x
                                                      i
                                                           j
                                                               ij ij


    Linear utilities: uij is utility derived by i
     on obtaining one unit of j
    Total utility of i,
                            u  u x
                               i      j      ij   ij


    Find prices s.t. market clears, i.e.,
       all goods sold, all money spent.
     Arrow-Debreu Theorem, 1954

   Celebrated theorem in Mathematical Economics

   Established existence of market equilibrium under
     very general conditions using a deep theorem from
     topology - Kakutani fixed point theorem.
Kenneth Arrow



         Nobel   Prize, 1972
Gerard Debreu


         Nobel   Prize, 1983
    Arrow-Debreu Theorem, 1954
.

       Highly   non-constructive
Adam Smith

        The Wealth of Nations
          2 volumes, 1776.


        „invisible hand‟ of
         the market
         What is needed today?

   An inherently algorithmic theory of
     market equilibrium


   New models that capture new markets
   Beginnings of such a theory, within
       Algorithmic Game Theory

   Started with combinatorial algorithms
     for traditional market models

   New market models emerging
        Combinatorial Algorithm
          for Fisher‟s Model


   Devanur, Papadimitriou, Saberi & V., 2002

    Using primal-dual schema
      Primal-Dual Schema


 Highly successful algorithm design
  technique from exact and
  approximation algorithms
Exact Algorithms for Cornerstone
Problems in P:

    Matching (general graph)
    Network flow
    Shortest paths
    Minimum spanning tree
    Minimum branching
Approximation Algorithms


  set cover          facility location
  Steiner tree       k-median
  Steiner network    multicut
  k-MST              feedback vertex set
  scheduling . . .
   No LP‟s known for capturing equilibrium
    allocations for Fisher‟s model

   Eisenberg-Gale convex program, 1959

   DPSV: Extended primal-dual schema to
          solving nonlinear convex programs
A combinatorial market
         s2


 s1

                         t1

              t2
A combinatorial market
         s2
              c (e)

 s1

                         t1

              t2
  A combinatorial market
             m ( 2)
            s2
                 c (e)
m(1)
       s1

                           t1

                 t2
             A combinatorial market
   Given:
     Network   G = (V,E) (directed or undirected)
     Capacities on edges c(e)
     Agents: source-sink pairs    ( s1 , t1 ),...( sk , tk )
              with money m(1), … m(k)



   Find: equilibrium flows and edge prices
                  Equilibrium
   Flows and edge prices
     f(i): flow of agent i
     p(e): price/unit flow of edge e

   Satisfying:
     p(e)>0 only if e is saturated
     flows go on cheapest paths
     money of each agent is fully spent
Kelly‟s resource allocation model, 1997

Mathematical framework for understanding
        TCP congestion control



        Highly successful theory
TCP Congestion Control
f(i): source rate
 p(e): prob. of packet loss (in TCP Reno)
        queueing delay (in TCP Vegas)
TCP Congestion Control
   f(i): source rate
    p(e): prob. of packet loss (in TCP Reno)
           queueing delay (in TCP Vegas)


Kelly: Equilibrium flows are proportionally fair:
       only way of adding 5% flow to someone‟s
       dollar is to decrease 5% flow from
       someone else‟s dollar.
TCP Congestion Control

    primal process: packet rates at sources
    dual process:   packet drop at links

    AIMD + RED converges to equilibrium
                          in the limit
   Kelly & V., 2002: Kelly‟s model is a
      generalization of Fisher‟s model.


   Find combinatorial polynomial time
         algorithms!
Jain & V., 2005:
     Strongly polynomial combinatorial algorithm
      for single-source multiple-sink market
    Single-source multiple-sink market
   Given:
     Network   G = (V,E), s: source
     Capacities on edges c(e)
     Agents: sinks    t1 ,..., tk
       with money m(1), … m(k)



   Find: equilibrium flows and edge prices
                  Equilibrium
   Flows and edge prices
     f(i): flow of agent i
     p(e): price/unit flow of edge e

   Satisfying:
     p(e)>0 only if e is saturated
     flows go on cheapest paths
     money of each agent is fully spent
        1
            t   1   $10
    2
s
    2
            t   2   $10
             1
                 t   1   $10
    $5
         2
s
         2
    $5
                 t   2   $10
        1   t   1    10
                    $120
    2
s
    2
            t   2   $10
              $30
              1
                    t   1   $120
    $10
          2
s
          2
    $40
                    t   2   $10
Jain & V., 2005:
     Strongly polynomial combinatorial algorithm
      for single-source multiple-sink market

     Ascending price auction
       Buyers:  sinks (fixed budgets, maximize flow)
       Sellers: edges (maximize price)
    Auction of k identical goods

 p = 0;
 while there are >k buyers:
       raise p;
 end;
 sell to remaining k buyers at price p;
Find equilibrium prices and flows

             t   1


    s                t   2

                             t   3

                                     t   4
Find equilibrium prices and flows

              t   1   m(1)
                              m(2)
    s    cap(e)
                      t   2
                                  m(3)
                              t 3 m(4
                                  t4 )
               6
               0
                          t   1


           s                      t   2

                                          t   3

                                                  t   4




min-cut separating   s from all the sinks
    6
    0
            t   1


s                   t   2

                            t   3

                                    t   4




        p
    6
    0
            t   1


s                   t   2

                            t   3

                                    t   4




    p   
Throughout the algorithm:


c(i): cost of cheapest path from     s   to   t   i




                                      m(i)
  sink   t   i   demands flow f (i) 
                                      c(i)
                                                                      m(i)
i : c(i)  p                   sink     t   i   demands flow f (i) 
                                                                       p
                6
                0
                        t   1


            s                    t   2

                                             t   3

                                                     t   4




                p   
       Auction of edges in cut

 p = 0;
 while the cut is over-saturated:
      raise p;
 end;
 assign price p to all edges in the cut;
                                           c(2)  p0
     6         5
     0         0                           f (2)  10

                   t   1


s          t   2
                           t   3

                                   t   4




    p p   0
                                                    c(2)  p0

    6               5                       c(1)  c(3)  c(4)  p0  p
    0               0
                        t   1


s               t   2
                                t   3

                                        t   4




        p           p   
            0
                                                         c(2)  p0

                                                    c(1)  c(3)  p0  p1
    6               5                   2
    0               0                   0
                        t   1


s               t   2
                                t   3

                                            t   4




                                                    f (1)  f (3)  30
        p   0
                        p
                        1
    6               5                   2
    0               0                   0
                        t   1


s               t   2
                                t   3

                                            t   4




        p   0
                        p
                        1               p   
                                                        c(4)  p0  p1  p2
    6               5                   2
    0               0                   0
                        t   1


s               t   2
                                t   3

                                                t   4



                                                             f (4)  20
        p   0
                        p
                        1                   p   2
    6               5                   2
    0               0                   0
                        t   1


s               t   2
                                t   3

                                                t   4




        p               p                   p           nested cuts
            0           1                       2
   Flow and prices will:

     Saturate all
                 red cuts
     Use up sinks‟ money
     Send flow on cheapest paths
    Implementation

        t   1


s               t   2

                        t   3

                                t   4
                                    t

    t   1


s           t   2

                    t   3

                            t   4
                                                      t

               t   1


s                      t   2

                               t   3

                                       t   4




                                               m(i)
Capacity of   t i  t edge =           f (i) 
                                               c(i)
                                                  t
      6
      0
                  t   1


s                         t   2

                                  t   3

                                          t   4




    min s-t cut
                                            t
    6
    0
            t   1


s                   t   2

                            t   3

                                    t   4




        p
                                                t
    6
    0
                t   1


s                       t   2

                                t   3

                                        t   4




        p   
i : c(i)  p                                             t

                        t   1


         s                      t   2

                                        t   3

                                                t   4




                                                                m(i)
                p      Capacity of t i  t edge =      f (i)       
                                                                 p
                           f(2)=10
                                                      t
     6         5
     0         0
                   t   1


s          t   2
                              t   3

                                      t   4




    p p   0
                                              c(2)  p0
                                                t
    6               5
    0               0
                        t   1


s               t   2
                                t   3

                                        t   4




        p           p   
            0
                                                             t
    6               5                   2
    0               0                   0
                        t   1


s               t   2
                                t   3

                                            t   4


                                                      c(2)  p0
        p   0
                        p
                        1
                                            c(1)  c(3)  c(4)  p0  p1
                                                t

                    t   1


s           t   2
                            t   3

                                        t   4




    p   0
                    p
                    1               p   
                                                        t

                    t   1


s           t   2
                            t   3

                                        t   4



                                                c(4)  p0  p1  p2
    p   0
                    p
                    1               p   2
Eisenberg-Gale Program, 1959

       max  m(i ) log ui
              i

       s.t.
       i : ui   j u ij x ij
       j :  i x ij  1
       ij : x ij  0
   Lagrangian variables: prices of goods

   Using KKT conditions:
     optimal primal and dual solutions
     are in equilibrium
Convex Program for Kelly‟s Model

         max  m(i) log f (i)
                i

         s.t.
         i : f (i )   p fi   p


         e : flow(e)  c(e)
         i, p : fi  0
                    p
                JV Algorithm
   primal-dual alg. for nonlinear convex program
   “primal” variables: flows
   “dual” variables: prices of edges
   algorithm: primal & dual improvements


           Allocations      Prices
Rational!!
Irrational for 2 sources & 3 sinks


                     $1              $1
                                         2
        s1           t
                      1
                      1
                                     t1



               1     s   2   2       t   2

                                     $1
Irrational for 2 sources & 3 sinks


                               3         2
        s1     3     t
                      1
                      1      1 3    t
                                     1


                     s   2           t   2




               Equilibrium prices
Max-flow min-cut theorem!
Other resource allocation markets


   2 source-sink pairs (directed/undirected)
   Branchings rooted at sources (agents)
Branching market (for broadcasting)

   m(1)               m ( 2)   m(3)
      s   1   c (e)    s   2   s   3
Branching market (for broadcasting)

   m(1)               m ( 2)   m(3)
      s   1   c (e)    s   2   s   3
Branching market (for broadcasting)

   m(1)               m ( 2)   m(3)
      s   1   c (e)    s   2   s   3
Branching market (for broadcasting)

   m(1)               m ( 2)   m(3)
      s   1   c (e)    s   2   s   3
Branching market (for broadcasting)
    Given: Network G = (V, E),           directed
      edge capacities
      sources,        S V
      money of each source


    Find: edge prices and a packing
            of branchings rooted at sources s.t.
         p(e) > 0 => e is saturated
        each branching is cheapest possible
        money of each source fully used.
Eisenberg-Gale-type program
   for branching market


              max iS m(i) log bi

       s.t.   packing of branchings
Other resource allocation markets


   2 source-sink pairs (directed/undirected)
   Branchings rooted at sources (agents)
   Spanning trees
   Network coding
Eisenberg-Gale-Type Convex Program



              max i m(i)log ui
       s.t.    packing constraints
Eisenberg-Gale Market


     A market whose equilibrium is captured
       as an optimal solution to an
       Eisenberg-Gale-type program
   Theorem: Strongly polynomial algs for
             following markets :
    2  source-sink pairs, undirected (Hu, 1963)
     spanning tree (Nash-William & Tutte, 1961)
     2 sources branching (Edmonds, 1967 + JV, 2005)


   3 sources branching: irrational
   Theorem: Strongly polynomial algs for
             following markets :
    2  source-sink pairs, undirected (Hu, 1963)
     spanning tree (Nash-William & Tutte, 1961)
     2 sources branching (Edmonds, 1967 + JV, 2005)


   3 sources branching: irrational

   Open: (no max-min theorems):
    2  source-sink pairs, directed
     2 sources, network coding
Chakrabarty, Devanur & V., 2006:

    EG[2]: Eisenberg-Gale markets with 2 agents

    Theorem: EG[2] markets are rational.
Chakrabarty, Devanur & V., 2006:

    EG[2]: Eisenberg-Gale markets with 2 agents

    Theorem: EG[2] markets are rational.

    Combinatorial EG[2] markets: polytope
     of feasible utilities can be described via
     combinatorial LP.
    Theorem: Strongly poly alg for Comb EG[2].
          3-source branching




Single-source
                2 s-s undir
                               SUA
         Comb EG[2]
           2 s-s dir
Fisher                         Rational
                EG[2]



                 EG
          Efficiency of Markets
 „„price of capitalism‟‟
 Agents:
     differentabilities to control prices
     idiosyncratic ways of utilizing resources


   Q: Overall output of market when forced
        to operate at equilibrium?
              Efficiency

                  equilibrium  utility( I )
eff ( M )  min I
                     max  utility( I )
               Efficiency

                   equilibrium  utility( I )
 eff ( M )  min I
                      max  utility( I )



 Rich   classification!
      Market               Efficiency
     Single-source                 1
  3-source branching
                                1/ 2

k source-sink undirected     1/(2k  1)
                           l.b.  1/(k  1)
 2 source-sink directed       arbitrarily
                                small
Other properties:

   Fairness (max-min + min-max fair)
   Competition monotonicity
Open issues
     Strongly poly algs for approximating
       nonlinear    convex programs
       equilibria


     Insights into congestion control protocols?

								
To top