Presentation is loading. Please wait.

Presentation is loading. Please wait.

University of Pittsburgh CS 3150 Page 1 out of 20 Market Equilibrium via a Primal-Dual-Type Algorithm Written By Nikhil R. Devanur, Christos H. Papadimitriou,

Similar presentations


Presentation on theme: "University of Pittsburgh CS 3150 Page 1 out of 20 Market Equilibrium via a Primal-Dual-Type Algorithm Written By Nikhil R. Devanur, Christos H. Papadimitriou,"— Presentation transcript:

1 University of Pittsburgh CS 3150 Page 1 out of 20 Market Equilibrium via a Primal-Dual-Type Algorithm Written By Nikhil R. Devanur, Christos H. Papadimitriou, Amin Saberi, Vijay V. Vazirani Presented by Zhouyan Wang Advised by Prof. Kirk Pruhs November 18, 2003

2 University of Pittsburgh CS 3150 Page 2 out of 20 Outline Introduction Basic Algorithm: --- Basic Idea --- High Level Idea Algorithm with Polynomial Time

3 University of Pittsburgh CS 3150 Page 3 out of 20 Introduction Set A --- n Goods with each price p j Set B --- n’ Buyers with amount e i budget u ij --- the utility derived by i on obtaining a unit amount of goods j Buyer will use all his money to buy the goods with Max (u ij / p j ) since he will get the maximal satisfaction. Definition

4 University of Pittsburgh CS 3150 Page 4 out of 20 Graph p1p1 pnpn u 11 1, 2, …,i,… n’ BuyersGoods 1, 2, …,j,… n e1e1 e n’ /p 1 u 1n /p n u n’n /p n u n’1 /p 1 eiei : Budget pjpj :Price Introduction

5 University of Pittsburgh CS 3150 Page 5 out of 20 Problem The question is: --- How to find the market clearing prices? --- Namely, find the prices for goods such that the buyers will use up all money on hand to buy goods and there are no goods left in the market? Introduction

6 University of Pittsburgh CS 3150 Page 6 out of 20 Literature Review First defined by Irving Fisher in 1891 No Algorithm with polynomial time has been found This paper finds such algorithm by assuming u ij is a linear function of the amount of goods Introduction

7 University of Pittsburgh CS 3150 Page 7 out of 20 Basic Idea Basic Algorithm In the bipartition Graph(A,B), add a source s and sink t There is an edge from source to every goods. Their capacity is For every buyer i and goods j, connect them by an edge only if goods j can give buyer i the maximal utility per dollar and its capacity of the edge is infinite There is an edge from buyer i to sink t and its capacity is e i pjpj

8 University of Pittsburgh CS 3150 Page 8 out of 20 New Graph pnpn 2, …,i,… Buyers Goods j e1e1 e n’ eiei : Budget pjpj :Price Basic Algorithm p1p1 1 n pjpj Source Sink Infinite n’ 1

9 University of Pittsburgh CS 3150 Page 9 out of 20 Primal Dual Type Algorithm In order to find the clear price, solve the max flow problem by: Keep the price low such that all goods will always be sold out: (s, A U B U t) is the min cut --- Invariant Property. And then increase the prices gradually such that all buyers have spent all their money. Basic Algorithm

10 University of Pittsburgh CS 3150 Page 10 out of 20 High Level Idea Define Basic Algorithm 1.For Define its money as 2.For Define its money as 3.For Define its neighborhood: Lemma: For given prices p, graph satisfies the Invariant IFF

11 University of Pittsburgh CS 3150 Page 11 out of 20 High Level Idea,Cont. Basic Algorithm Define: 1.Tight Set: a unique maximal set such that --- be frozen by the algorithm 2. Active Sub-graph: 3. Drop the edges (i,j) with Lemma: If the Invariant holds and is the tight set, then each goods has an edge to certain buyer

12 University of Pittsburgh CS 3150 Page 12 out of 20 High Level Idea,Cont. Basic Algorithm Then gradually raise the prices of all goods in the active graph by the same pace, then: Event 1: A nonempty set R goes tight. Add it to the tight set and continue the next iteration. Event 2: An edge (i,j) with becomes an equality edge. Suppose j, remove component (S l, T l ) into the active subgraph.

13 University of Pittsburgh CS 3150 Page 13 out of 20 Find Tight Sets Basic Algorithm Let x * denote the value at which a nonempty set goes tight S * denote the tight set at prices x * p Lemma: For prices (x p) If x <= x*, then (s, A U B U t) is a min-cut If x > x *, then (s, A U B U t) is not a min-cut. Moreover, if (s U A 1 U B 1, A 2 U B 2 U t) is a min-cut in G(x p), then S * A 1

14 University of Pittsburgh CS 3150 Page 14 out of 20 Find Tight Sets, Cont. Basic Algorithm Lemma: x* and S * could be found using n max-flow computations. Proof: Let x = m(B)/m(A). Clearly, x >= x*. If (s, A U B U t) is a min cut in G(x P), then by the above lemma, we get: x = x* and S* = A. Otherwise, let (s U A 1 U B 1, A 2 U B 2 U t) be the min cut. By the above lemma again, S* A 1 A. Therefore, it is sufficient to get S* by at most n recursions on the smaller graph (A 1, N(A 1 )).

15 University of Pittsburgh CS 3150 Page 15 out of 20 Basic Algorithm Partition the whole algorithm into phases, each phase terminates with the occurrence of Event 1 Each phase is partitioned into iterations which conclude with a new edge entering the equality subgraph (Event 2) Basic Algorithm Define M be the total money possessed by the buyers f be the max flow in the graph at prices P M – f is the surplus money with buyers.

16 University of Pittsburgh CS 3150 Page 16 out of 20 Basic Algorithm, Cont. Basic Algorithm Let and Lemma 1: Each phase consists of at most n iterations. At the termination of a phase, the prices of the goods in the newly tight set must be rational numbers with denominator Lemma 2: Consider two phases P and P’, not necessarily consecutive, such that goods j lies in the newly tight sets at the end of P as well as P’. Then the increase in the price of j, going from P to P’ is

17 University of Pittsburgh CS 3150 Page 17 out of 20 Basic Algorithm, Cont. Basic Algorithm Lemma 3: After k phases, Corollary 4: The algorithm will end with market clearing price in at most phases, and execute iterations or times of computations.

18 University of Pittsburgh CS 3150 Page 18 out of 20 Advanced Algorithm After the each phase in the basic algorithm, instead of freezing the tight set by prices p, we add one more step: ADD Let be fixed and ADD to the price of each active subgraph and find a min cut in graph G that maximizes the s-side. Let be the subset of A on the s-side of the min cut. Freeze. Clearly, and The algorithm will continue the next phase from the prices p, so Invariant will be maintained.

19 University of Pittsburgh CS 3150 Page 19 out of 20 Advanced Algorithm,Cont. Advanced Algorithm However, for the set of goods in the active subgraph : Namely,the next phase must increase f by at least. Consider the situation when all goods are frozen and call it as an epoch. After the 1 st epoch, the total surplus is, set and run the next epoch…

20 University of Pittsburgh CS 3150 Page 20 out of 20 Advanced Algorithm,Cont. Advanced Algorithm Consider the 1 st epoch that.At the end of this epoch, the surplus, and we will set for the next epoch. By Lemma 2, the next epoch will be the final epoch and we will get the market clearing prices. Lemma: The number of total phases is: and the total iterations are and the total iterations are


Download ppt "University of Pittsburgh CS 3150 Page 1 out of 20 Market Equilibrium via a Primal-Dual-Type Algorithm Written By Nikhil R. Devanur, Christos H. Papadimitriou,"

Similar presentations


Ads by Google