Introduction
Resource Allocation Problem
Exchange Economies
Market Equilibrium : Resource Allocation
Problem
Sanjiv Kapoor
Ill Inst of Tech.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Market Equlibrium Models
• m traders, n goods
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Exchange Economies
Market Equlibrium Models
• m traders, n goods
• a non-empty convex set Ki ⊆ ℜn which is the set of all
“feasible” allocations that trader i may receive (in many
cases, Ki = ℜn+ ),
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Market Equlibrium Models
• m traders, n goods
• a non-empty convex set Ki ⊆ ℜn which is the set of all “feasible”
allocations that trader i may receive (in many cases, Ki = ℜn+ ),
• a concave utility function ui : Ki → ℜ+ which represents her
preferences for the different bundles of goods, and
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Market Equlibrium Models
• m traders, n goods
• a non-empty convex set Ki ⊆ ℜn which is the set of all “feasible”
allocations that trader i may receive (in many cases, Ki = ℜn+ ),
• a concave utility function ui : Ki → ℜ+ which represents her
preferences for the different bundles of goods, and
• an initial endowment of goods wi = (wi1 , . . . , win )⊤ ∈ Ki .
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Market Equlibrium Models
• m traders, n goods
• a non-empty convex set Ki ⊆ ℜn which is the set of all “feasible”
allocations that trader i may receive (in many cases, Ki = ℜn+ ),
• a concave utility function ui : Ki → ℜ+ which represents her
preferences for the different bundles of goods, and
• an initial endowment of goods wi = (wi1 , . . . , win )⊤ ∈ Ki .
• Find prices for the goods so that traders are in equilibirum:
Market equilibrium achieved when there is no incentive to
trade
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
History
• 1891 Fisher
1894 Walras (Walrasian Equilibrium) and Fisher (19th
Century).
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
History
• 1891 Fisher
1894 Walras (Walrasian Equilibrium) and Fisher (19th Century).
• 1954 Arrow and Debreu: Proved the existence of equlibiria.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
History
• 1891 Fisher
1894 Walras (Walrasian Equilibrium) and Fisher (19th Century).
• 1954 Arrow and Debreu: Proved the existence of equlibiria.
• Hydraulic apparatus by Fisher
Walrasian tatonnement
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Fisher Model
• Special case of the Walrasian Model
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Fisher Model
• Special case of the Walrasian Model
• There are n buyers and m sellers
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Exchange Economies
Fisher Model
• Special case of the Walrasian Model
• There are n buyers and m sellers
• Each seller has exactly one commodity (seller j has aj amount
of commodity j)
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Fisher Model
• Special case of the Walrasian Model
• There are n buyers and m sellers
• Each seller has exactly one commodity (seller j has aj amount of
commodity j)
• Buyers have only money.(Buyer i has ei units of money)
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Fisher Model
• Special case of the Walrasian Model
• There are n buyers and m sellers
• Each seller has exactly one commodity (seller j has aj amount of
commodity j)
• Buyers have only money.(Buyer i has ei units of money)
• Sellers want only money, buyers want only commodities
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Mathematical Formulation
∀i Maximize
m
X
vij xij
j=1
Subject to:
∀i :
m
X
xij pj =
m
X
aij pj
(1)
j=1
j=1
xij ≥ 0
Good Availability Constraints:
∀j :
n
X
xij = aj
i=1
(2)
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Computation-Prior art
• Arrow et al. 1959
Stability of a local greedy price adjustment method for Gross
Substitute utility functions
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Computation-Prior art
• Arrow et al. 1959
Stability of a local greedy price adjustment method for Gross
Substitute utility functions
• Eisenberg and Gale, 1959
Fisher model, additive linear utilities
Reduced the problem to a convex optimization problem
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Computation-Prior art
• Arrow et al. 1959
Stability of a local greedy price adjustment method for Gross
Substitute utility functions
• Eisenberg and Gale, 1959
Fisher model, additive linear utilities
Reduced the problem to a convex optimization problem
• Eaves, 1976
Linear complementarity problem
Lemke’s algorithm
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Computation-Prior art
• Arrow et al. 1959
Stability of a local greedy price adjustment method for Gross
Substitute utility functions
• Eisenberg and Gale, 1959
Fisher model, additive linear utilities
Reduced the problem to a convex optimization problem
• Eaves, 1976
Linear complementarity problem
Lemke’s algorithm
• Newman and Primak, 1992
Ellipsoid method: provably polynomial-time method
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Recent Computer Science Interest:
• Recently complexity issues, Papadimtriou,
Deng-Papadimitriou-Safra.
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Recent Computer Science Interest:
• Recently complexity issues, Papadimtriou,
Deng-Papadimitriou-Safra.
• Primal-Dual Approaches: Devanur et al (2002)
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Recent Computer Science Interest:
• Recently complexity issues, Papadimtriou,
Deng-Papadimitriou-Safra.
• Primal-Dual Approaches: Devanur et al (2002)
• Auction Method: Garg-Kapoor (2004)
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Recent Computer Science Interest:
• Recently complexity issues, Papadimtriou,
Deng-Papadimitriou-Safra.
• Primal-Dual Approaches: Devanur et al (2002)
• Auction Method: Garg-Kapoor (2004)
• Convex Programming : Jain, Y. Ye (2004)
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Exchange Economies
Recent Computer Science Interest:
• Recently complexity issues, Papadimtriou,
Deng-Papadimitriou-Safra.
• Primal-Dual Approaches: Devanur et al (2002)
• Auction Method: Garg-Kapoor (2004)
• Convex Programming : Jain, Y. Ye (2004)
• Tattonement: Codenotti et al. (2005), Cole-Fleischer(2008)
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Parameterized LP
The market equilibrium conditions can be written as a solution to a
specific primal-dual program.
Maximize
m
n X
X
vij xij
i=1 j=1
Subject to:
∀j :
∀i :
n
X
xij = aj
i=1
m
X
xij pj =
m
X
(3)
aij pj
j=1
j=1
xij ≥ 0
SK
Market Equilibrium
(4)
Introduction
Resource Allocation Problem
Exchange Economies
Complementary slackness conditions
∀j :
∀i :
n
X
xij = aj
i=1
m
X
m
X
j=1
j=1
xij pj =
(5)
aij pj
∀i, j : xij > 0 ⇒ vij /pj ≥ vik /pk , ∀k
xij ≥ 0, pj ≥ 0
SK
Market Equilibrium
(6)
(7)
Introduction
Resource Allocation Problem
Auction Algorithm
• Fix a bid increment factor (1 + ǫ).
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Auction Algorithm
• Fix a bid increment factor (1 + ǫ).
• Start with low prices
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Auction Algorithm
• Fix a bid increment factor (1 + ǫ).
• Start with low prices
• A trader with sufficient surplus money finds its best
commodity a commodity that maximizes vij /pj
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Exchange Economies
Auction Algorithm
• Fix a bid increment factor (1 + ǫ).
• Start with low prices
• A trader with sufficient surplus money finds its best commodity a
commodity that maximizes vij /pj
• Acquires a best item by outbidding the current winning
trader
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Auction Algorithm
• Fix a bid increment factor (1 + ǫ).
• Start with low prices
• A trader with sufficient surplus money finds its best commodity a
commodity that maximizes vij /pj
• Acquires a best item by outbidding the current winning trader
• Raises the price of the acquired commodity by a factor of
(1 + ǫ).
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Auction Algorithm
• Fix a bid increment factor (1 + ǫ).
• Start with low prices
• A trader with sufficient surplus money finds its best commodity a
commodity that maximizes vij /pj
• Acquires a best item by outbidding the current winning trader
• Raises the price of the acquired commodity by a factor of (1 + ǫ).
• Stop when all the traders have small surplus
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
PRICE=5
2 UNITS
M=0
PRICE=5
M=0
2 UNITS
PRICE=5
3 UNITS
M=30
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
PRICE=5
3 UNITS
M=0
PRICE=5
2 UNITS
M=15
PRICE=10
3 UNITS
M=0
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
PRICE=10
2 UNITS
M=0
PRICE=5
2 UNITS
M=0
PRICE=15, 1 UNIT
M=10
PRICE =10, 2 UNITS
SK
Market Equilibrium
Introduction
Resource Allocation Problem
M=5
Exchange Economies
PRICE=5, 1 UNIT
PRICE=10, 1 UNIT
PRICE=5
2 UNITS
M=0
PRICE=15, 1 UNIT
PRICE =10, 2 UNITS
M=0
SK
Market Equilibrium
Introduction
Resource Allocation Problem
M=0
Exchange Economies
PRICE=10, 1 UNIT
PRICE=10, 1 UNIT
PRICE=5
2 UNITS
M=0
PRICE=15, 1 UNIT
PRICE =10, 2 UNITS
M=0
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Convergence
The auction Method convergence to a ǫ-approximate solution in
O((1/ǫ)poly(n, m)).
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Resource Allocation Problem
c2
c3
p2
p3
c4
p4
p1
c1
T
S
c5
p5
S2
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Resource Allocation Problem
c2
p2
c3
p3
c4
p4
p1
c1
T
S
c5
p5
S2
Find flows between source-sink pairs with restrictions provided by
capacity and expenditure.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Mathematical Formulation
Graph N = (G(V, E), c, p)
p : E → R+ is the price function
c : E → Z+ is the capacity function
∀(si , ti ) Max Ui (fi )
X
fi (u, v) ≤ c(u, v)
s.t.∀e = (u, v),
i
X
∀i, ∀v ∈ V
fi (u, v) =
e=(u,v)
∀i,
X
X
(Capacity)
fi (v, w)
(Conservation)
e=(v,w)
pe · fi (e) ≤ Ei
(Endowment)
e
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Possible approaches
• Convex Programming Approach
Eisenberg-Gale.
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Possible approaches
• Convex Programming Approach
Eisenberg-Gale.
• Primal-Dual Methodology
Kelly, Vazirani, Jain-Vazirani.
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Possible approaches
• Convex Programming Approach
Eisenberg-Gale.
• Primal-Dual Methodology
Kelly, Vazirani, Jain-Vazirani.
• Tattonement
Similar to computing multi-commodity flows.
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Exchange Economies
Tattonement
T
S
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Tattonement
(1 + ǫ)
(1 + ǫ)
(1 + ǫ)
(1 + ǫ)
T
S
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Tattonement
1+ǫ
1+ǫ
1+ǫ
1+ǫ
T
S
S2
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Tattonement
1+ǫ
1+ǫ
1+ǫ
1+ǫ
1+ǫ
S
1+ǫ
S2
1+ǫ
1+ǫ
SK
Market Equilibrium
T
Introduction
Resource Allocation Problem
Exchange Economies
Tattonement
1+ǫ
1+ǫ
1+ǫ
1+ǫ
(1 + ǫ)2
T
S
1+ǫ
1+ǫ
1+ǫ
S2
1+ǫ
1+ǫ
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Does this optimize the utility of each source-sink
pair
• Does not allow for a source-sink pair to withdraw flow
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Does this optimize the utility of each source-sink
pair
• Does not allow for a source-sink pair to withdraw flow
• We need to optimize at each price point
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Does this optimize the utility of each source-sink
pair
• Does not allow for a source-sink pair to withdraw flow
• We need to optimize at each price point
• Use indirect utility functions
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Does this optimize the utility of each source-sink
pair
• Does not allow for a source-sink pair to withdraw flow
• We need to optimize at each price point
• Use indirect utility functions
Definition (Indirect utility function)
Trader i:
indirect utility function e
ui : ℜn+ × ℜ+ → ℜ+ gives the maximum
utility achievable at given price and income:
e
ui (π, e) = max{ui (x) | x ∈ Ki , π · x ≤ e}.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Algorithmic Approach
• Initialize pe = 1;
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Algorithmic Approach
• Initialize pe = 1;
• Repeat for r = 1 to N iterations:
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Algorithmic Approach
• Initialize pe = 1;
• Repeat for r = 1 to N iterations:
1 Each source-sink pair i computes
fi ∈ argmax{Ui (fi ) | fi ∈ Ki , π · fi ≤ Ei }.
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Exchange Economies
Algorithmic Approach
• Initialize pe = 1;
• Repeat for r = 1 to N iterations:
1 Each source-sink pair i computes
fi ∈ argmax{Ui (fi ) | fi ∈ Ki , π · fi ≤ Ei }.P
2 Compute the aggregate demand Fe =
i fi (e) and let
σr = max1e Fe where Fe denotes the aggregate demand on edge e.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Algorithmic Approach
• Initialize pe = 1;
• Repeat for r = 1 to N iterations:
1 Each source-sink pair i computes
fi ∈ argmax{Ui (fi ) | fi ∈ Ki , π · fi ≤ EP
i }.
2 Compute the aggregate demand Fe =
i fi (e) and let
σr = max1e Fe where Fe denotes the aggregate demand on edge e.
3 Update price of each edge e: pe ← pe (1 + δσr Fe ).
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Algorithmic Approach
• Initialize pe = 1;
• Repeat for r = 1 to N iterations:
1 Each source-sink pair i computes
fi ∈ argmax{Ui (fi ) | fi ∈ Ki , π · fi ≤ EP
i }.
2 Compute the aggregate demand Fe =
i fi (e) and let
σr = max1e Fe where Fe denotes the aggregate demand on edge e.
3 Update price of each edge e: pe ← pe (1 + δσr Fe ).
• Output for each e: weighted average of fi (e) (weighted by σr )
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Algorithmic Approach
• Initialize pe = 1;
• Repeat for r = 1 to N iterations:
1 Each source-sink pair i computes
fi ∈ argmax{Ui (fi ) | fi ∈ Ki , π · fi ≤ EP
i }.
2 Compute the aggregate demand Fe =
i fi (e) and let
σr = max1e Fe where Fe denotes the aggregate demand on edge e.
3 Update price of each edge e: pe ← pe (1 + δσr Fe ).
• Output for each e: weighted average of fi (e) (weighted by σr )
• Output for each edge e: weighted average of p(e) (weighted
by σr )
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Why does it Work?
Lemma
The outputs fi (e) and p satisfy Ui (fi (e)) ≥ e
ui (p, Ei ) for each i
e
ui (p, Ei ) is the indirect utility function for each i.
This critically depends on the convexity of e
ui .
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Exchange Economy
Recall:
• a non-empty convex set Ki ⊆ ℜn which is the set of all
“feasible” allocations that trader i may receive
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Exchange Economies
Exchange Economy
Recall:
• a non-empty convex set Ki ⊆ ℜn which is the set of all
“feasible” allocations that trader i may receive
• a concave utility function ui : Ki → ℜ+ which represents her
preferences for the different bundles of goods, and
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Exchange Economy
Recall:
• a non-empty convex set Ki ⊆ ℜn which is the set of all
“feasible” allocations that trader i may receive
• a concave utility function ui : Ki → ℜ+ which represents her
preferences for the different bundles of goods, and
• an initial endowment of goods wi = (wi1 , . . . , win )⊤ ∈ Ki .
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Exchange Economy
Recall:
• a non-empty convex set Ki ⊆ ℜn which is the set of all
“feasible” allocations that trader i may receive
• a concave utility function ui : Ki → ℜ+ which represents her
preferences for the different bundles of goods, and
• an initial endowment of goods wi = (wi1 , . . . , win )⊤ ∈ Ki .
• A market equilibrium is a price vector π ∈ ℜn+ and bundles
xi ∈ Ki so as to:
(i) Maximize
P
PUtility subject to budget constraints.
(ii) i xi = i wi .
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Theorem
The set of all market equilibria in the exchange economy is defined by.
P
P
i xi ≤
i wi
e
ui (π, π · wi ) ≤ u(xi ) for all i
(8)
π ∈ ℜn+
xi ∈ Ki for all i.
• Program (8) is convex when, for all i,
(i) the function e
ui (π, π · wi ) is a convex function of π ∈ ℜn+
(ii) the utility function ui is concave
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Convexity of the Indirect Utility Function
• Homogenous utility functions u : ℜn+ → ℜ (of degree one),
i.e., u(αx) = αu(x) for all α ∈ ℜ+ and x ∈ ℜn+
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Convexity of the Indirect Utility Function
• Homogenous utility functions u : ℜn+ → ℜ (of degree one), i.e.,
u(αx) = αu(x) for all α ∈ ℜ+ and x ∈ ℜn+
• The indirect utility function e
u(π, λ) is convex in π for all
λ ∈ ℜ++ .
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Convexity of the Indirect Utility Function
Homogenous utility functions:
The indirect utility function e
u(π, λ) is convex in π for all λ ∈ ℜ++ .
homogeneous utility functions of degree one include:
• Linear utilities u(x) = a · x
a ∈ ℜn+ .
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Convexity of the Indirect Utility Function
Homogenous utility functions:
The indirect utility function e
u(π, λ) is convex in π for all λ ∈ ℜ++ .
homogeneous utility functions of degree one include:
• Linear utilities u(x) = a · x
• Leontief utilities u(x) = minj∈S aj xj where S ⊆ {1, . . . , n},
a ∈ ℜn+ .
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Convexity of the Indirect Utility Function
Homogenous utility functions:
The indirect utility function e
u(π, λ) is convex in π for all λ ∈ ℜ++ .
homogeneous utility functions of degree one include:
• Linear utilities u(x) = a · x
• Leontief utilities u(x) = minj∈S aj xj where S ⊆ {1, . . . , n},
• Cobb-Douglas utilities u(x) =
Q
aj
j xj
assuming
a ∈ ℜn+ .
SK
Market Equilibrium
P
j aj
= 1,
Introduction
Resource Allocation Problem
Exchange Economies
Convexity of the Indirect Utility Function
Homogenous utility functions:
The indirect utility function e
u(π, λ) is convex in π for all λ ∈ ℜ++ .
homogeneous utility functions of degree one include:
• Linear utilities u(x) = a · x
• Leontief utilities u(x) = minj∈S aj xj where S ⊆ {1, . . . , n},
• CES utilities u(x) =
Q
P
aj
j xj assuming
j aj = 1,
P
ρ 1/ρ
( j aj xj ) for −∞ < ρ < 1 and ρ
• Cobb-Douglas utilities u(x) =
and nested CES utilities.
a ∈ ℜn+ .
SK
Market Equilibrium
6= 0,
Introduction
Resource Allocation Problem
Exchange Economies
Resource allocation utilities
The resource allocation utility u : ℜn+ → ℜ
u(x) = max{c · y | y ∈ ℜk+ , Ay ≤ x}.
(9)
n×k
is a matrix and c ∈ ℜk+ be a
where k is a positive integer, A ∈ ℜ+
vector.
• Columns of matrix A can be thought of as “objects” that the
trader wants to “build”.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Resource allocation utilities
The resource allocation utility u : ℜn+ → ℜ
u(x) = max{c · y | y ∈ ℜk+ , Ay ≤ x}.
n×k
is a matrix and c ∈ ℜk+ be a
where k is a positive integer, A ∈ ℜ+
vector.
• Columns of matrix A can be thought of as “objects” that the
trader wants to “build”.
• A unit of an object l needs Ajl units of resource (or good) j
and accrues cl units of utility.
SK
Market Equilibrium
(9)
Introduction
Resource Allocation Problem
Exchange Economies
Resource allocation utilities
The resource allocation utility u : ℜn+ → ℜ
u(x) = max{c · y | y ∈ ℜk+ , Ay ≤ x}.
(9)
n×k
is a matrix and c ∈ ℜk+ be a
where k is a positive integer, A ∈ ℜ+
vector.
• Columns of matrix A can be thought of as “objects” that the
trader wants to “build”.
• A unit of an object l needs Ajl units of resource (or good) j and
accrues cl units of utility.
• The trader builds yl units of object l such that the total need
for resources is at most x and the total utility c · y is
maximized.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Interesting markets
1
Multi-commodity flow markets (in directed or undirected
capacitated networks).
Trader i wants to send maximum amount of flow from source
si to sink ti such that the total cost of routing the flow under
the prices π is at most her budget.
The objects here are si -ti paths and the resources are the
edges.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Interesting markets
1
Multi-commodity flow markets (in directed or undirected
capacitated networks).
Trader i wants to send maximum amount of flow from source si
to sink ti such that the total cost of routing the flow under the
prices π is at most her budget.
The objects here are si -ti paths and the resources are the edges.
2
Steiner-tree markets in undirected capacitated networks.
Trader i is associated with a subset Si of nodes and wants to
build maximum fractional packing of Steiner trees
connecting Si
Total cost of building under the prices π is at most her
budget.
Objects here are Steiner trees (resp. arborescences).
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
A more general framework
Consider the convex program:
P
i xi
e
ui (π, π · wi )
π
xi
P
≤
i wi
≤ u(xi ) for all i
∈ Π
∈ Ki for all i.
SK
Market Equilibrium
(10)
Introduction
Resource Allocation Problem
Exchange Economies
A more general framework
Definition (Weak (1 + ǫ)-approximate market equilibrium)
A price vector π ∈ Π and allocation bundles xi ∈ Ki for each trader i
1
The utility of xi to trader i is at least that of the
utility-maximizing bundle under prices π: ui (xi ) ≥ e
ui (π, π · wi )
for each i,
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
A more general framework
Definition (Weak (1 + ǫ)-approximate market equilibrium)
A price vector π ∈ Π and allocation bundles xi ∈ Ki for each trader i
1
2
The utility of xi to trader i is at least that of the utility-maximizing
bundle under prices π: ui (xi ) ≥ e
ui (π, π · wi ) for each i,
The total demand
P
Pis at most (1 + ǫ) times the supply:
x
≤
(1
+
ǫ)
i i
i wi , and
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
A more general framework
Definition (Weak (1 + ǫ)-approximate market equilibrium)
A price vector π ∈ Π and allocation bundles xi ∈ Ki for each trader i
1
2
3
The utility of xi to trader i is at least that of the utility-maximizing
bundle under prices π: ui (xi ) ≥ e
ui (π, π · wi ) for each i,
The total demandPis at most (1 + ǫ) times the supply:
P
i xi ≤ (1 + ǫ)
i wi , and
P
P
The market clears: π · i wi = π · i xi .
SK
Market Equilibrium
Introduction
Resource Allocation Problem
A more general framework
1
Initialize pj = 1 for 1 ≤ j ≤ n.
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
A more general framework
1
2
Initialize pj = 1 for 1 ≤ j ≤ n.
Repeat for r = 1 . . . N = δn log1+δ n iterations:
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
A more general framework
1
2
Initialize pj = 1 for 1 ≤ j ≤ n.
Repeat for r = 1 . . . N = δn log1+δ n iterations:
1
Announce prices π = αp.
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Exchange Economies
A more general framework
1
2
Initialize pj = 1 for 1 ≤ j ≤ n.
Repeat for r = 1 . . . N = δn log1+δ n iterations:
1
2
Announce prices π = αp.
Each trader i computes xi ∈ argmax{ui (x) | x ∈ Ki , π · x ≤ π · wi }.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
A more general framework
1
2
Initialize pj = 1 for 1 ≤ j ≤ n.
Repeat for r = 1 . . . N = δn log1+δ n iterations:
1
2
3
Announce prices π = αp.
Each trader i computes xi ∈ argmax{ui (x)
P | x ∈ Ki , π · x ≤ π · wi }.
Compute the aggregate demand X = i xi
σr = max1j Xj .
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
A more general framework
1
2
Initialize pj = 1 for 1 ≤ j ≤ n.
Repeat for r = 1 . . . N = δn log1+δ n iterations:
1
2
3
4
Announce prices π = αp.
Each trader i computes xi ∈ argmax{uP
i (x) | x ∈ Ki , π · x ≤ π · wi }.
Compute the aggregate demand X = i xi
σr = max1j Xj .
Update for each good j: pj ← pj (1 + δσr Xj ).
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
A more general framework
1
2
Initialize pj = 1 for 1 ≤ j ≤ n.
Repeat for r = 1 . . . N = δn log1+δ n iterations:
1
2
3
4
3
Announce prices π = αp.
Each trader i computes xi ∈ argmax{uP
i (x) | x ∈ Ki , π · x ≤ π · wi }.
Compute the aggregate demand X = i xi
σr = max1j Xj .
Update for each good j: pj ← pj (1 + δσr Xj ).
Output for each i: xi =
PN
r=1 σr xi (r)
P
N
r=1 σr
xi (r) value of xi in the rth iteration.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
A more general framework
1
2
Initialize pj = 1 for 1 ≤ j ≤ n.
Repeat for r = 1 . . . N = δn log1+δ n iterations:
1
2
3
4
3
Announce prices π = αp.
Each trader i computes xi ∈ argmax{uP
i (x) | x ∈ Ki , π · x ≤ π · wi }.
Compute the aggregate demand X = i xi
σr = max1j Xj .
Update for each good j: pj ← pj (1 + δσr Xj ).
Output for each i: xi =
PN
r=1 σr xi (r)
P
N
r=1 σr
xi (r) value of xi in the rth iteration.
4
Output π =
PN
r=1 σr π(r)
P
N
r=1 σr
π(r) value of π in the rth iteration.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Two properties:
• xi and π satisfy optimality constraints.
SK
Market Equilibrium
Exchange Economies
Introduction
Resource Allocation Problem
Exchange Economies
Two properties:
• xi and π satisfy optimality constraints.
Lemma
ui (π, π · wi ) for each i.
The outputs xi and π satisfy ui (xi ) ≥ e
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Two properties:
• xi and π satisfy optimality constraints.
Lemma
ui (π, π · wi ) for each i.
The outputs xi and π satisfy ui (xi ) ≥ e
• xi satisfies the availability constraint.
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Two properties:
• xi and π satisfy optimality constraints.
Lemma
ui (π, π · wi ) for each i.
The outputs xi and π satisfy ui (xi ) ≥ e
• xi satisfies the availability constraint.
Lemma
The outputs xi satisfy
P
i xi
SK
≤
1
1−2δ
P
i wi .
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Conclusions
• Use of indirect utility functions for the Market Equilibirum
Problem
SK
Market Equilibrium
Introduction
Resource Allocation Problem
Exchange Economies
Conclusions
• Use of indirect utility functions for the Market Equilibirum
Problem
• A tattonement process for solving the MEP problem.
SK
Market Equilibrium
© Copyright 2026 Paperzz