Title: Algorithmic Game Theory and Internet Computing
1Algorithmic Game Theoryand Internet Computing
Markets and the Primal-Dual Paradigm
2The new face of computing
3A paradigm shift inthe notion of a market!
4(No Transcript)
5(No Transcript)
6(No Transcript)
7Historically, the study of markets
- has been of central importance,
- especially in the West
8Historically, the study of markets
- has been of central importance,
- especially in the West
General Equilibrium TheoryOccupied center stage
in MathematicalEconomics for over a century
9General Equilibrium Theory
- Also gave us some algorithmic results
- Convex programs, whose optimal solutions capture
- equilibrium allocations,
- e.g., Eisenberg Gale, 1959
- Nenakov Primak, 1983
-
10General Equilibrium Theory
- Also gave us some algorithmic results
- Convex programs, whose optimal solutions capture
- equilibrium allocations,
- e.g., Eisenberg Gale, 1959
- Nenakov Primak, 1983
- Scarf, 1973 Algorithms for approximately
computing - fixed points
-
11Todays reality
- New markets defined by Internet companies, e.g.,
- Google
- Yahoo!
- Amazon
- eBay
- Massive computing power available for running
- markets in a distributed or
centralized manner - A deep theory of algorithms with many powerful
- techniques
-
12What is needed today?
- An inherently-algorithmic theory of
- markets and market equilibria
13What is needed today?
- An inherently-algorithmic theory of
- markets and market equilibria
- Beginnings of such a theory, within
- Algorithmic Game Theory
14What is needed today?
- An inherently-algorithmic theory of
- markets and market equilibria
- Beginnings of such a theory, within
- Algorithmic Game Theory
- Natural starting point
- algorithms for traditional market
models
15What is needed today?
- An inherently-algorithmic theory of
- markets and market equilibria
- Beginnings of such a theory, within
- Algorithmic Game Theory
- Natural starting point
- algorithms for traditional market
models - New market models emerging!
16Theory of algorithms
- Interestingly enough, recent study of
- markets has contributed handsomely to
- this theory!
17A central tenet
- Prices are such that demand equals supply, i.e.,
- equilibrium prices.
18A central tenet
- Prices are such that demand equals supply, i.e.,
- equilibrium prices.
- Easy if only one good
19Supply-demand curves
20Irving Fisher, 1891
- Defined a fundamental
- market model
21(No Transcript)
22(No Transcript)
23 Utility function
utility
amount of milk
24 Utility function
utility
amount of bread
25 Utility function
utility
amount of cheese
26Total utility of a bundle of goods
- Sum of utilities of individual goods
27For given prices,
28For given prices,find optimal bundle of goods
29Fisher market
- Several goods, fixed amount of each good
- Several buyers,
- with individual money and utilities
- Find equilibrium prices of goods, i.e., prices
s.t., - Each buyer gets an optimal bundle
- No deficiency or surplus of any good
-
30(No Transcript)
31 Combinatorial Algorithm for Linear Case of
Fishers Model
- Devanur, Papadimitriou, Saberi V., 2002
- Using the primal-dual schema
-
32Primal-Dual Schema
- Highly successful algorithm design
- technique from exact and
- approximation algorithms
33Exact Algorithms for Cornerstone
Problems in P
- Matching (general graph)
- Network flow
- Shortest paths
- Minimum spanning tree
- Minimum branching
34Approximation Algorithms
- set cover facility
location - Steiner tree k-median
- Steiner network multicut
- k-MST feedback
vertex set - scheduling . . .
35(No Transcript)
36- No LPs known for capturing equilibrium
allocations for Fishers model -
37- No LPs known for capturing equilibrium
allocations for Fishers model - Eisenberg-Gale convex program, 1959
-
38- No LPs known for capturing equilibrium
allocations for Fishers model - Eisenberg-Gale convex program, 1959
- DPSV Extended primal-dual schema to
- solving a nonlinear convex
program -
39Fishers Model
- n buyers, money m(i) for buyer i
- k goods (unit amount of each good)
- utility derived by i
- on obtaining one unit of
j - Total utility of i,
40Fishers Model
- n buyers, money m(i) for buyer i
- k goods (unit amount of each good)
- utility derived by i
- on obtaining one unit of
j - Total utility of i,
- Find market clearing prices
41Bang-per-buck
- At prices p, buyer is most
- desirable goods, S
-
- Any goods from S worth m(i)
- constitute is optimal bundle
-
42A convex program
- whose optimal solution is equilibrium
allocations.
43A convex program
- whose optimal solution is equilibrium
allocations. - Constraints packing constraints on the xijs
44A convex program
- whose optimal solution is equilibrium
allocations. - Constraints packing constraints on the xijs
- Objective fn max utilities derived.
45A convex program
- whose optimal solution is equilibrium
allocations. - Constraints packing constraints on the xijs
- Objective fn max utilities derived. Must
satisfy - If utilities of a buyer are scaled by a constant,
- optimal allocations remain
unchanged - If money of buyer b is split among two new
buyers, - whose utility fns same as b, then union of
optimal - allocations to new buyers optimal
allocation for b
46Money-weighed geometric mean of utilities
47Eisenberg-Gale Program, 1959
48KKT conditions
49- Therefore, buyer i buys from
- only,
- i.e., gets an optimal bundle
-
50- Therefore, buyer i buys from
- only,
- i.e., gets an optimal bundle
- Can prove that equilibrium prices
- are unique!
-
51Idea of algorithm
- primal variables allocations
- dual variables prices of goods
- Approach equilibrium prices from below
- start with very low prices buyers have surplus
money - iteratively keep raising prices
- and decreasing surplus
-
-
52Idea of algorithm
- Iterations
- execute primal dual improvements
53Will relax KKT conditions
- e(i) money currently spent by i
- w.r.t. a special allocation
- surplus
money of i
54KKT conditions
e(i)
e(i)
55Potential function
Will show that potential drops by an inverse
polynomial factor in each phase (polynomial
time).
56Potential function
Will show that potential drops by an inverse
polynomial factor in each phase (polynomial
time).
57Point of departure
- KKT conditions are satisfied via a
- continuous process
- Normally in discrete steps
58Point of departure
- KKT conditions are satisfied via a
- continuous process
- Normally in discrete steps
- Open question strongly polynomial algorithm??
59An easier question
- Given prices p, are they equilibrium prices?
- If so, find equilibrium allocations.
60An easier question
- Given prices p, are they equilibrium prices?
- If so, find equilibrium allocations.
- Equilibrium prices are unique!
61For each buyer, most desirable goods, i.e.
62Max flow
p(1)
m(1)
p(2)
m(2)
p(3)
m(3)
m(4)
p(4)
infinite capacities
63Max flow
p(1)
m(1)
p(2)
m(2)
p(3)
m(3)
m(4)
p(4)
p equilibrium prices iff both cuts saturated
64Two important considerations
- The price of a good never exceeds
- its equilibrium price
- Invariant s is a min-cut
65Max flow
p(1)
m(1)
p(2)
m(2)
p(3)
m(3)
m(4)
p(4)
p low prices
66Two important considerations
- The price of a good never exceeds
- its equilibrium price
- Invariant s is a min-cut
- Identify tight sets of goods
67Two important considerations
- The price of a good never exceeds
- its equilibrium price
- Invariant s is a min-cut
- Identify tight sets of goods
- Rapid progress is made
- Balanced flows
68Network N
buyers
p
m
bang-per-buck edges
goods
69Balanced flow in N
p
m
i
W.r.t. flow f, surplus(i) m(i) f(i,t)
70Balanced flow
- surplus vector vector of surpluses w.r.t. f.
71Balanced flow
- surplus vector vector of surpluses w.r.t. f.
- A flow that minimizes l2 norm of surplus
vector.
72Balanced flow
- surplus vector vector of surpluses w.r.t. f.
- A flow that minimizes l2 norm of surplus
vector. - Must be a max-flow.
73Balanced flow
- surplus vector vector of surpluses w.r.t. f.
- A flow that minimizes l2 norm of surplus
vector. - Must be a max-flow.
- All balanced flows have same surplus vector.
74Balanced flow
- surplus vector vector of surpluses w.r.t. f.
- A flow that minimizes l2 norm of surplus
vector. - Makes surpluses as equal as possible.
75Property 1
- f max flow in N.
- R residual graph w.r.t. f.
- If surplus (i) lt surplus(j) then there is no
- path from i to j in R.
76Property 1
R
i
j
surplus(i) lt surplus(j)
77Property 1
R
i
j
surplus(i) lt surplus(j)
78Property 1
R
i
j
Circulation gives a more balanced flow.
79Property 1
- Theorem A max-flow is balanced iff
- it satisfies Property 1.
80Will relax KKT conditions
- e(i) money currently spent by i
- w.r.t. a special allocation
- surplus
money of i
81Will relax KKT conditions
- e(i) money currently spent by i
- w.r.t. a balanced flow in N
- surplus
money of i
82Pieces fit just right!
Invariant
Balanced flows
Bang-per-buck edges
Tight sets
83Another point of departure
- Complementary slackness conditions
- involve primal or dual variables, not
both. - KKT conditions involve primal and dual
- variables simultaneously.
84KKT conditions
85KKT conditions
86Primal-dual algorithms so far
- Raise dual variables greedily. (Lot of effort
spent - on designing more sophisticated dual
processes.)
87Primal-dual algorithms so far
- Raise dual variables greedily. (Lot of effort
spent - on designing more sophisticated dual
processes.) - Only exception Edmonds, 1965 algorithm
- for weight
matching.
88Primal-dual algorithms so far
- Raise dual variables greedily. (Lot of effort
spent - on designing more sophisticated dual
processes.) - Only exception Edmonds, 1965 algorithm
- for weight
matching. - Otherwise primal objects go tight and loose.
- Difficult to account for these reversals
- in the running time.
89Our algorithm
- Dual variables (prices) are raised greedily
- Yet, primal objects go tight and loose
- Because of enhanced KKT conditions
90Deficiencies of linear utility functions
- Typically, a buyer spends all her money
- on a single good
- Do not model the fact that buyers get
- satiated with goods
91Concave utility function
utility
amount of j
92Concave utility functions
- Do not satisfy weak gross substitutability
93Concave utility functions
- Do not satisfy weak gross substitutability
- w.g.s. Raising the price of one good cannot
lead to a - decrease in demand of another
good.
94Concave utility functions
- Do not satisfy weak gross substitutability
- w.g.s. Raising the price of one good cannot
lead to a - decrease in demand of another
good. - Open problem find polynomial time algorithm!
95Piecewise linear, concave
utility
amount of j
96PTAS for concave function
utility
amount of j
97Piecewise linear concave utility
- Does not satisfy weak gross substitutability
98Piecewise linear, concave
utility
amount of j
99Differentiate
100rate
amount of j
money spent on j
101Spending constraint utility function
rate utility/unit amount of j
rate
20
40
60
money spent on j
102Spending constraint utility function
- Happiness derived is
- not a function of allocation only
- but also of amount of money spent.
103Extend model assume buyers have utility for
money
rate
20
40
100
104(No Transcript)
105- Theorem Polynomial time algorithm for
- computing equilibrium prices and allocations for
- Fishers model with spending constraint
utilities. -
- Furthermore, equilibrium prices are unique.
106Satisfies weak gross substitutability!
107Old pieces become more complex there are new
pieces
108But they still fit just right!
109Don Patinkin, 1922-1995
- Considered utility functions that are
- a function of allocations and prices.
110An unexpected fallout!!
111An unexpected fallout!!
- A new kind of utility function
- Happiness derived is
- not a function of allocation only
- but also of amount of money spent.
112An unexpected fallout!!
- A new kind of utility function
- Happiness derived is
- not a function of allocation only
- but also of amount of money spent.
- Has applications in
- Googles AdWords Market!
113A digression
114AdWords Market
- Created by search engine companies
- Google
- Yahoo!
- MSN
- Multi-billion dollar market and still growing!
- Totally revolutionized advertising, especially
- by small companies.
115 The view 5 years ago Relevant Search
Results
116(No Transcript)
117Business worlds view now (as Advertisement
companies)
118So how does this work?
Bids for different keywords
Daily Budgets
119AdWords Allocation Problem
LawyersRus.com
asbestos
Search results
Search Engine
Sue.com
Ads
Whose ad to put How to maximize revenue?
TaxHelper.com
120AdWords Problem
- Mehta, Saberi, Vazirani Vazirani, 2005
- 1-1/e algorithm, assuming budgetsgtgtbids
-
-
121AdWords Problem
- Mehta, Saberi, Vazirani Vazirani, 2005
- 1-1/e algorithm, assuming budgetsgtgtbids
-
- Optimal!
122AdWords Problem
- Mehta, Saberi, Vazirani Vazirani, 2005
- 1-1/e algorithm, assuming budgetsgtgtbids
-
- Optimal!
123Spending constraint utilities
AdWords Market
124AdWords market
- Assume that Google will determine equilibrium
price/click for keywords
125AdWords market
- Assume that Google will determine equilibrium
price/click for keywords - How should advertisers specify their
- utility functions?
126Choice of utility function
- Expressive enough that advertisers get
- close to their optimal allocations
127Choice of utility function
- Expressive enough that advertisers get
- close to their optimal allocations
- Efficiently computable
128Choice of utility function
- Expressive enough that advertisers get
- close to their optimal allocations
- Efficiently computable
- Easy to specify utilities
129- linear utility function a business will
- typically get only one type of query
- throughout the day!
130- linear utility function a business will
- typically get only one type of query
- throughout the day!
- concave utility function no efficient
- algorithm known!
131- linear utility function a business will
- typically get only one type of query
- throughout the day!
- concave utility function no efficient
- algorithm known!
- Difficult for advertisers to
- define concave functions
132Easier for a buyer
- To say what are good allocations,
- for a range of prices,
- rather than how happy she is
- with a given bundle.
133Online shoe business
- Interested in two keywords
- mens clog
- womens clog
- Advertising budget 100/day
- Expected profit
- mens clog 2/click
- womens clog 4/click
134Considerations for long-term profit
- Try to sell both goods - not just the most
- profitable good
- Must have a presence in the market,
- even if it entails a small loss
135- If both are profitable,
- better keyword is at least twice as profitable
(100, 0) - otherwise
(60, 40) - If neither is profitable
(20, 0) - If only one is profitable,
- very profitable (at least 2/)
(100, 0) - otherwise
(60, 0)
136mens clog
rate utility/click
rate
2
1
60
100
137womens clog
rate utility/click
4
rate
2
60
100
138money
rate utility/
rate
1
0
80
100
139AdWords market
- Suppose Google stays with auctions but
- allows advertisers to specify bids in
- the spending constraint model
140AdWords market
- Suppose Google stays with auctions but
- allows advertisers to specify bids in
- the spending constraint model
- expressivity!
141AdWords market
- Suppose Google stays with auctions but
- allows advertisers to specify bids in
- the spending constraint model
- expressivity!
- Good online algorithm for
- maximizing Googles revenues?
142- Goel Mehta, 2006
- A small modification to the MSVV algorithm
- achieves 1 1/e competitive ratio!
143Open
- Is there a convex program that
- captures equilibrium allocations for
- spending constraint utilities?
144Spending constraint utilities satisfy
- Equilibrium exists (under mild conditions)
- Equilibrium utilities and prices are unique
- Rational
- With small denominators
145Linear utilities also satisfy
- Equilibrium exists (under mild conditions)
- Equilibrium utilities and prices are unique
- Rational
- With small denominators
146Proof follows fromEisenberg-Gale Convex Program,
1959
147For spending constraint utilities,proof follows
from algorithm, and not a convex program!
148Open
- Is there an LP whose optimal solutions
- capture equilibrium allocations
- for Fishers linear case?
149Use spending constraint algorithm to
solve piecewise linear, concave utilities
Open
150Piece-wise linear, concave
utility
amount of j
151Differentiate
152- Start with arbitrary prices, adding up to
- total money of buyers.
-
153rate
money spent on j
154- Start with arbitrary prices, adding up to
- total money of buyers.
-
- Run algorithm on these utilities to get new
prices.
155- Start with arbitrary prices, adding up to
- total money of buyers.
-
- Run algorithm on these utilities to get new
prices.
156- Start with arbitrary prices, adding up to
- total money of buyers.
-
- Run algorithm on these utilities to get new
prices. - Fixed points of this procedure are equilibrium
- prices for piecewise linear, concave
utilities! -
157Algorithms Game Theorycommon origins
- von Neumann, 1928 minimax theorem for
- 2-person
zero sum games - von Neumann Morgenstern, 1944
- Games and Economic
Behavior - von Neumann, 1946 Report on EDVAC
- Dantzig, Gale, Kuhn, Scarf, Tucker
158(No Transcript)