talk ppt

advertisement
Markets and
Algorithmic Game Theory
the Primal-Dual Paradigm
and Internet Computing
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 – 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 Theory
Occupied 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 results
 Convex
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
General Equilibrium Theory
An almost entirely
non-algorithmic 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 function
utility
amount of milk
Utility function
utility
amount of bread
Utility function
utility
amount of cheese
Total utility of a bundle of goods
= Sum of utilities of individual goods
For given prices,
p1
p2
p3
For given prices,
find optimal bundle of goods
p1
p2
p3
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
Steiner tree
Steiner network
k-MST
scheduling . . .
facility location
k-median
multicut
feedback vertex set

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) U  u x

uij : utility derived by i
on obtaining one unit of j
Total utility of i,
ui   j uij xij
i


x
ij
 [0,1]
j
ij ij
Fisher’s Model




n buyers, money m(i) for buyer i
k goods (unit amount of each good)
uij : utility derived by i
on obtaining one unit of j
Total utility of i,
ui   j uij xij
x
ij

 [0,1]
Find market clearing prices
Ui   j uijxij
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!
Bang-per-buck

At prices p, buyer i’s most
uij
desirable goods,
S = arg max j
pj

Any goods from S worth m(i)
constitute i’s optimal bundle
For each buyer, most desirable goods, i.e.
arg max j
m(1)
p(1)
m(2)
p(2)
m(3)
p(3)
m(4)
p(4)
uij
pj
Max flow
p(1)
m(1)
p(2)
m(2)
p(3)
m(3)
m(4)
p(4)
infinite capacities
Max flow
p(1)
m(1)
m(2)
p(2)
p(3)
m(3)
m(4)
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 price
 Invariant:
s is a min-cut
Max flow
p(1)
m(1)
p(2)
m(2)
p(3)
m(3)
m(4)
p(4)
p:
low prices
Two important considerations

The price of a good never exceeds
its equilibrium price
 Invariant:
 Identify
s is a min-cut
tight sets of goods
S  A : p( S )  m(( S ))
Two 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
Network N
buyers
p
m
bang-per-buck
edges
goods
Balanced flow in N
p
m
i
W.r.t. flow f, surplus(i) = m(i) – f(i,t)
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
R:
i
j
surplus(i) < surplus(j)
Property 1
R:
i
j
surplus(i) < surplus(j)
Property 1
R:
i
j
Circulation gives a more balanced flow.
Property 1

Theorem: A max-flow is balanced iff
it satisfies Property 1.
Pieces fit just right!
Balanced flows
Tight sets
Invariant
Bang-per-buck
edges
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 xij’s

Objective fn: max utilities derived.
A convex program

whose optimal solution is equilibrium allocations.

Constraints: packing constraints on the xij’s

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
Money-weighed geometric mean
of utilities
m(i )

i
)
m ( i ) 1/
i i
( u
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
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
prices pj
KKT conditions
1.j : p j  0
2.j : p j  0   i xij  1
uij
ui
3.i, j :

p j m(i )
uij
ui
4.i, j : xij  0 

p j m(i )

Therefore, buyer i buys from
only,
i.e., gets an optimal bundle
arg max j
uij
pj
arg max j

Therefore, buyer i buys from
only,
i.e., gets an optimal bundle

Can prove that equilibrium prices
are unique!
uij
pj
Will relax KKT conditions


e(i): money currently spent by i
w.r.t. a special allocation
 i  m(i)  e(i) surplus money of i
Will relax KKT conditions


e(i): money currently spent by i
w.r.t. a balanced flow in N
 i  m(i)  e(i) surplus money of i
KKT conditions
1.j : p j  0
2.j : p j  0   i xij  1
uij
ui
e(i)
3.i, j :

p j m(i )
uij
ui
e(i)
4.i, j : xij  0 

p j m(i )
Potential function
      ...  
2
1
2
2
2
n
Will show that potential drops by an inverse polynomial
factor in each phase (polynomial time).
Potential function
      ...  
2
1
2
2
2
n
Will show that potential drops by an inverse polynomial
factor in each phase (polynomial time).
  poly(i 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.j : p j  0
2.j : p j  0   i xij  1
uij
ui
3.i, j :

p j m(i )
uij
ui
4.i, j : xij  0 

p j m(i )
KKT conditions
1.j : p j  0
2.j : p j  0   i xij  1
uij
ui
3.i, j :

p j m(i )
uij
ui
4.i, j : xij  0 


p j m(i )

u
x
ij
ij
j
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 loose
 Because
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
Concave utility function
utility
amount of j
Concave utility functions

Do not satisfy weak gross substitutability
Concave 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.
Concave 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!
Piecewise linear, concave
utility
amount of j
PTAS for concave function
utility
amount of j
Piecewise linear concave utility

Does not satisfy weak gross substitutability
Piecewise linear, concave
utility
amount of j
Differentiate
rate = utility/unit amount of j
rate
amount of j
rate = utility/unit amount of j
rate
amount of j
money spent on j
Spending constraint utility function
rate = utility/unit amount of j
rate
$20
$40
$60
money spent on j
Spending constraint utility function

Happiness derived is
not a function of allocation only
but also of amount of money spent.
Extend model: assume buyers have
utility for money
rate
$20 $40
$100
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-utilityfunction’ tradition
An unexpected fallout!!
An unexpected fallout!!

A new kind of utility function
 Happiness
derived is
not a function of allocation only
but also of amount of money spent.
An 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
Google’s AdWords Market!
A digression
The view 5 years ago: Relevant Search Results
Business world’s view now :
(as Advertisement companies)
So how does this work?
Bids for
different
keywords
Daily
Budgets
An interesting algorithmic question!

Monika Henzinger, 2004: Find an on-line
algorithm that maximizes Google’s revenue.
AdWords Allocation Problem
LawyersRus.com
asbestos
Search Engine
Sue.com
Search results
Ads
Whose ad to put
TaxHelper.com
How to maximize
revenue?
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:
 women’s clog:
$2/click
$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

If only one is profitable,

very profitable (at least $2/$)
 otherwise
($20, $0)
($100, $0)
($60, $0)
men’s clog
rate = utility/click
rate
2
1
$60
$100
women’s clog
rate = utility/click
4
rate
2
$60
$100
money
rate = utility/$
rate
1
0
$80 $100
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?
Spending constraint utilities satisfy

Equilibrium exists (under mild conditions)

Equilibrium utilities and prices are unique

Rational

With small denominators
Linear utilities also satisfy

Equilibrium exists (under mild conditions)

Equilibrium utilities and prices are unique

Rational

With small denominators
Proof follows from
Eisenberg-Gale Convex 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
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?
Open
Use spending constraint algorithm
to solve
piecewise linear, concave utilities
Algorithms & Game Theory
common 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 …
Piece-wise linear, concave f ij
utility
amount of j
Differentiate g ij
rate = utility/unit amount of j
rate
amount of j


Start with arbitrary prices, adding up to
total money of buyers.
x
hij ( x)  gij ( )
pj
x
hij ( x)  gij ( )
pj
rate = utility/unit amount of j
rate
money spent on j



Start with arbitrary prices, adding up to
total money of buyers.
x
hij ( x)  gij ( )
pj
Run algorithm on these utilities to get new prices.



Start with arbitrary prices, adding up to
total money of buyers.
x
hij ( x)  gij ( )
pj
Run algorithm on these utilities to get new prices.


Start with arbitrary prices, adding up to
total money of buyers.
x
hij ( x)  gij ( )
pj

Run algorithm on these utilities to get new prices.

Fixed points of this procedure are equilibrium
prices for piecewise linear, concave utilities!
Download