Algorithmic Game Theory and Internet Computing Vijay V. Vazirani Markets and the Primal-Dual...
-
Upload
roger-lawrence -
Category
Documents
-
view
217 -
download
1
Transcript of Algorithmic Game Theory and Internet Computing Vijay V. Vazirani Markets and the Primal-Dual...
Algorithmic Game Theoryand Internet Computing
Vijay V. Vazirani
Markets and
the Primal-Dual Paradigm
Markets
Stock Markets
Internet
Revolution in definition of markets
Revolution in definition of markets
New markets defined byGoogle AmazonYahoo!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 companiesGoogleYahoo!MSN
Multi-billion dollar market – and still growing!
Totally revolutionized advertising, especially
by small companies.
Historically, the study of markets
has been of central importance,
especially in the West
Historically, the study of markets
has been of central importance,
especially in the West
General Equilibrium TheoryOccupied center stage in Mathematical
Economics for over a century
Leon Walras, 1874
Pioneered general
equilibrium theory
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
General Equilibrium Theory
Also gave us some algorithmic resultsConvex programs, whose optimal solutions capture equilibrium allocations,
e.g., Eisenberg & Gale, 1959 Nenakov & Primak, 1983
Cottle and Eaves, 1960’s: Linear complimentarity
Scarf, 1973: Algorithms for approximately computing fixed points
An almost entirely non-algorithmic theory!
General Equilibrium Theory
What is needed today?
An inherently algorithmic theory of
market equilibrium
New models that capture new markets
and are easier to use than traditional models
Beginnings of such a theory, within
Algorithmic Game Theory
Started with combinatorial algorithms
for traditional market models
New market models emerging
A central tenet
Prices are such that demand equals supply, i.e.,
equilibrium prices.
A central tenet
Prices are such that demand equals supply, i.e.,
equilibrium prices.
Easy if only one good
Supply-demand curves
Irving Fisher, 1891
Defined a fundamental
market model
utility
Utility function
amount of milk
utility
Utility function
amount of bread
utility
Utility function
amount of cheese
Total utility of a bundle of goods
= Sum of utilities of individual goods
For given prices,
1p 2p3p
For given prices,find optimal bundle of goods
1p 2p3p
Fisher 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
Combinatorial Algorithm for Linear Case of Fisher’s Model
Devanur, Papadimitriou, Saberi & V., 2002
Using the 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
No LP’s known for capturing equilibrium allocations for Fisher’s model
Eisenberg-Gale convex program, 1959
No LP’s known for capturing equilibrium allocations for Fisher’s model
Eisenberg-Gale convex program, 1959
DPSV: Extended primal-dual schema to
solving a nonlinear convex program
Fisher’s 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,
i ij ijj
U u xiju
]1,0[
x
xuuij
ijj iji
Fisher’s 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
i ij ijj
U u xiju
]1,0[
x
xuuij
ijj iji
An easier question
Given prices p, are they equilibrium prices?
If so, find equilibrium allocations.
An easier question
Given prices p, are they equilibrium prices?
If so, find equilibrium allocations.
Equilibrium prices are unique!
At prices p, buyer i’s most
desirable goods, S =
Any goods from S worth m(i)
constitute i’s optimal bundle
arg max ijj
j
u
p
Bang-per-buck
m(1)
m(2)
m(3)
m(4)
p(1)
p(2)
p(3)
p(4)
For each buyer, most desirable goods, i.e.
arg max ijj
j
u
p
Max flow
m(1)
m(2)
m(3)
m(4)
p(1)
p(2)
p(3)
p(4)
infinite capacities
Max flow
m(1)
m(2)
m(3)
m(4)
p(1)
p(2)
p(3)
p(4)
p: equilibrium prices iff both cuts saturated
Idea 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
Idea of algorithm
Iterations:
execute primal & dual improvements
Allocations Prices
Two important considerations
The price of a good never exceeds
its equilibrium priceInvariant: s is a min-cut
Max flow
m(1)
m(2)
m(3)
m(4)
p(1)
p(2)
p(3)
p(4)
p: low prices
Two important considerations
The price of a good never exceeds
its equilibrium priceInvariant: s is a min-cut
Identify tight sets of goods
: ( ) ( ( ))S A p S m S
Two important considerations
The price of a good never exceeds
its equilibrium priceInvariant: s is a min-cutIdentify tight sets of goods
Rapid progress is madeBalanced flows
Network N
m p
buyers
goods
bang-per-buck edges
Balanced flow in N
m p
W.r.t. flow f, surplus(i) = m(i) – f(i,t)
i
Balanced flow
surplus vector: vector of surpluses w.r.t. f.
Balanced flow
surplus vector: vector of surpluses w.r.t. f.
A flow that minimizes l2 norm of surplus vector.
Property 1
f: max flow in N.
R: residual graph w.r.t. f.
If surplus (i) < surplus(j) then there is no
path from i to j in R.
Property 1
i
surplus(i) < surplus(j)
j
R:
Property 1
i
surplus(i) < surplus(j)
j
R:
Property 1
i
Circulation gives a more balanced flow.
j
R:
Property 1
Theorem: A max-flow is balanced iff
it satisfies Property 1.
Pieces fit just right!
Balanced flows Invariant
Bang-per-buck
edgesTight sets
How primal-dual schema is adapted
to nonlinear setting
A convex program
whose optimal solution is equilibrium allocations.
A convex program
whose optimal solution is equilibrium allocations.
Constraints: packing constraints on the xij’s
A convex program
whose optimal solution is equilibrium allocations.
Constraints: packing constraints on the xxij’s
Objective fn: max utilities derived.
A convex program
whose optimal solution is equilibrium allocations.
Constraints: packing constraints on the xxij’s
Objective fn: max utilities derived. Must satisfy
If utilities of a buyer are scaled by a constant,
optimal allocations remain unchangedIf 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
Money-weighed geometric mean of utilities
1/ ( )( )( ) im im i
i iu
Eisenberg-Gale Program, 1959
max ( ) log
. .
:
: 1
: 0
ii
i ij ijj
iji
ij
m i u
s t
i u
j
ij
u xx
x
Eisenberg-Gale Program, 1959
max ( ) log
. .
:
: 1
: 0
ii
i ij ijj
iji
ij
m i u
s t
i u
j
ij
u xx
x
prices pj
KKT conditions
1. : 0
2. : 0 1
3. , :( )
4. , : 0( )
j
j iji
ij i
j
ij iij
j
j p
j p x
u ui j
p m i
u ui j x
p m i
Therefore, buyer i buys from
only,
i.e., gets an optimal bundle
arg max ijj
j
u
p
Therefore, buyer i buys from
only,
i.e., gets an optimal bundle
Can prove that equilibrium prices
are unique!
arg max ijj
j
u
p
Will relax KKT conditions
e(i): money currently spent by i
w.r.t. a special allocation
surplus money of i( ) ( )i m i e i
Will relax KKT conditions
e(i): money currently spent by i
w.r.t. a balanced flow in N
surplus money of i( ) ( )i m i e i
KKT conditions
1. : 0
2. : 0 1
3. , :( )
4. , : 0( )
j
j iji
ij i
j
ij iij
j
j p
j p x
u ui j
p m i
u ui j x
p m i
e(i)
e(i)
Potential function
2 2 21 2 ... n
Will show that potential drops by an inverse polynomial
factor in each phase (polynomial time).
Potential function
2 2 21 2 ... n
Will show that potential drops by an inverse polynomial
factor in each phase (polynomial time).( ( ))
ipoly m i
Point of departure
KKT conditions are satisfied via a
continuous process Normally: in discrete steps
Point of departure
KKT conditions are satisfied via a
continuous process Normally: in discrete steps
Open question: strongly polynomial algorithm?
Another point of departure
Complementary slackness conditions:
involve primal or dual variables, not both.
KKT conditions: involve primal and dual
variables simultaneously.
KKT conditions
1. : 0
2. : 0 1
3. , :( )
4. , : 0( )
j
j iji
ij i
j
ij iij
j
j p
j p x
u ui j
p m i
u ui j x
p m i
KKT conditions
1. : 0
2. : 0 1
3. , :( )
4. , : 0( ) ( )
j
j iji
ij i
j
ij ijij jiij
j
j p
j p x
u ui j
p m i
u xu ui j x
p m i m i
Primal-dual algorithms so far
Raise dual variables greedily. (Lot of effort spent
on designing more sophisticated dual processes.)
Primal-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.
Primal-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.
Our algorithm
Dual variables (prices) are raised greedily
Yet, primal objects go tight and looseBecause of enhanced KKT conditions
Deficiencies 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
utility
Concave utility function
amount of j
Concave utility functions
Do not satisfy weak gross substitutability
Concave utility functions
Do not satisfy weak gross substitutabilityw.g.s. = Raising the price of one good cannot lead to a
decrease in demand of another good.
Concave utility functions
Do not satisfy weak gross substitutabilityw.g.s. = Raising the price of one good cannot lead to a
decrease in demand of another good.
Open problem: find polynomial time algorithm!
utility
Piecewise linear, concave
amount of j
utility
PTAS for concave function
amount of j
Piecewise linear concave utility
Does not satisfy weak gross substitutability
utility
Piecewise linear, concave
amount of j
rate
rate = utility/unit amount of j
amount of j
Differentiate
rate
amount of j
rate = utility/unit amount of j
money spent on j
rate
rate = utility/unit amount of j
money spent on j
Spending constraint utility function
$20 $40 $60
Spending constraint utility function
Happiness derived is
not a function of allocation only
but also of amount of money spent.
$20 $40 $100
Extend model: assume buyers have utility for money
rate
Theorem: Polynomial time algorithm for
computing equilibrium prices and allocations for
Fisher’s model with spending constraint utilities.
Furthermore, equilibrium prices are unique.
Satisfies weak gross substitutability!
Old pieces become more complex+ there are new pieces
But they still fit just right!
Don Patinkin, 1956
Money, Interest, and Prices.
An Integration of Monetary and Value Theory
Pascal Bridel, 2002: Euro. J. History of Economic Thought,
Patinkin, Walras and the ‘money-in-the-utility- function’ tradition
An unexpected fallout!!
An unexpected fallout!!
A new kind of utility functionHappiness derived is
not a function of allocation only
but also of amount of money spent.
An unexpected fallout!!
A new kind of utility functionHappiness derived is
not a function of allocation only
but also of amount of money spent.
Has applications in
Google’s AdWords Market!
A digression
The view 5 years ago: Relevant Search Results
Business world’s view now :
(as Advertisement companies)
Bids for different keywords
DailyBudgets
So how does this work?
An interesting algorithmic question!
Monika Henzinger, 2004: Find an on-line
algorithm that maximizes Google’s revenue.
AdWords Allocation Problem
Search Engine
Whose ad to put
How to maximize revenue?
LawyersRus.com
Sue.com
TaxHelper.com
asbestos
Search results
Ads
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!
AdWords Problem
Mehta, Saberi, Vazirani & Vazirani, 2005:
1-1/e algorithm, assuming budgets>>bids
Optimal!
Spending
constraint
utilities
AdWords
Market
AdWords market
Assume that Google will determine equilibrium price/click for keywords
AdWords market
Assume that Google will determine equilibrium price/click for keywords
How should advertisers specify their
utility functions?
Choice of utility function
Expressive enough that advertisers get
close to their ‘‘optimal’’ allocations
Choice of utility function
Expressive enough that advertisers get
close to their ‘‘optimal’’ allocations
Efficiently computable
Choice of utility function
Expressive enough that advertisers get
close to their ‘‘optimal’’ allocations
Efficiently computable
Easy to specify utilities
linear utility function: a business will
typically get only one type of query
throughout the day!
linear utility function: a business will
typically get only one type of query
throughout the day!
concave utility function: no efficient
algorithm known!
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
Easier for a buyer
To say how much money she should spend
on each good, for a range of prices,
rather than how happy she is
with a given bundle.
Online shoe business
Interested in two keywords: men’s clog women’s clog
Advertising budget: $100/day
Expected profit:men’s clog: $2/clickwomen’s clog: $4/click
Considerations 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
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)
$60 $100
men’s clog
rate
2
1
rate = utility/click
$60 $100
women’s clog
rate
2
4
rate = utility/click
$80 $100
money
rate
0
1
rate = utility/$
AdWords market
Suppose Google stays with auctions but
allows advertisers to specify bids in
the spending constraint model
AdWords market
Suppose Google stays with auctions but
allows advertisers to specify bids in
the spending constraint model expressivity!
AdWords market
Suppose Google stays with auctions but
allows advertisers to specify bids in
the spending constraint model expressivity!
Good online algorithm for
maximizing Google’s revenues?
Goel & Mehta, 2006:
A small modification to the MSVV algorithm
achieves 1 – 1/e competitive ratio!
Open
Is there a convex program that
captures equilibrium allocations for
spending constraint utilities?
Equilibrium exists (under mild conditions)
Equilibrium utilities and prices are unique
Rational
With small denominators
Spending constraint utilities satisfy
Equilibrium exists (under mild conditions)
Equilibrium utilities and prices are unique
Rational
With small denominators
Linear utilities also satisfy
Proof follows fromEisenberg-Gale Convex Program, 1959
max ( ) log
. .
:
: 1
: 0
ii
i ij ijj
iji
ij
m i u
s t
i u
j
ij
u xx
x
For spending constraint utilities,proof follows from algorithm,
and not a convex program!
Open
Is there an LP whose optimal solutions
capture equilibrium allocations
for Fisher’s linear case?
Use spending constraint algorithm to solve
piecewise linear, concave utilities
Open
Algorithms & 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 …
utility
Piece-wise linear, concave
amount of j
ijf
rate
rate = utility/unit amount of j
amount of j
Differentiate ijg
Start with arbitrary prices, adding up to
total money of buyers.
( ) ( )ij ijj
xh x g
p
rate
money spent on j
rate = utility/unit amount of j
( ) ( )ij ijj
xh x g
p
Start with arbitrary prices, adding up to
total money of buyers.
Run algorithm on these utilities to get new prices.
( ) ( )ij ijj
xh x g
p
Start with arbitrary prices, adding up to
total money of buyers.
Run algorithm on these utilities to get new prices.
( ) ( )ij ijj
xh x g
p
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!
( ) ( )ij ijj
xh x g
p