>>Yuval Peres: So it's my great pleasure to have... advisor at Georgia Tech, and he's also a Ph.D. professor...

advertisement
>>Yuval Peres: So it's my great pleasure to have Vijay here. So Vijay was my Ph.D.
advisor at Georgia Tech, and he's also a Ph.D. professor of [inaudible]. And Vijay, I
know many of you know this already, but Vijay has done great work on phone-based
[inaudible] fundamental problems in algorithms, especially matching. And then
approximation algorithms, he wrote the book on it, literally. And over the last decade or
so Vijay has been working on algorithms for [inaudible]. So today he is going to tell us
some very interesting things about this, so over to Vijay.
>>Vijay Vazirani: So thank you all for coming. I hope I'm audible. Yeah? Okay.
Louder? Move it up? Better? Oh, good.
Okay. So I'm going to start with the following amazing quote of Adam Smith from his
treatise "The Wealth of Nations," but it's so important and in a sense overwhelming for
many of us that I should read it again carefully and tell he what he's talking about.
It says, It is not from the benevolence of the butcher, the brewer, or the baker, that we
expect our dinner, but from their regard for their own interest. Each participant in a
competitive economy is led by an invisible hand to promote an end which was part not
part of his intention."
So he's saying the best thing you can do for the economy and, therefore, for the society
is work out of self-interest. And what he's proposing is competitive self-interest. And, in
fact, later in the book he goes on to say do not work explicitly for other people because
that way you'll only do more harm. The markets and their economy is happiest and
most efficient when you work out of your own self-interest.
And the other thing he proposes as a natural way that markets should run is no
interference. So let the markets set their own prices, and that, he says, is best for the
buyers and the sellers.
And from that whole philosophy of his came the notion of free markets that we use in
the west and, of course, you know that the economic system that you follow determines
so much, including the history of economies of nations. And we saw that very explicitly
when the Soviet Union collapsed. We see the great wealth that has been created by
the free market economy here in the west. We also see how China moved from a
Communist system to more and more openness with [inaudible] right after Mao. And
now it is even ready to challenge the west in many spheres.
So these are very big decisions, and for Adam Smith to have said this in 1776, almost
250 years ago, is really amazing. I mean, this is a very -- it's really one of those big
statements from a genius.
So I just want to remark from my own side that this business of distributed
non-centralized operation is, by today, commonplace. It is what make the internet tick.
This is what makes the internet so great, because people just go out and do their best,
put the best contents, the best programs, the best ways of the best routers, everything.
And we have an amazing artifact out there. And these heterogenous distributed
systems are today very known and being exploited in many spheres.
But in a sense, the markets were the oldest and by far the biggest heterogenous be
distributive systems, so we definitely need to pay tribute to that fact.
So let me just say a bit more about this philosophy of Adam Smith by first stating the
definition of economics, a very, very insightful one or very succinct one given by Lionel
Robbins, a very prominent economist. So he says, "Economics is the study of the use
of scarce resources which have alternative uses."
So if you have a resource like sand on the beach, which is not scars, there is no
economy around it. Or if there's a resource that has only one use, there will be no
economy around it. But whenever a resource has multiple uses and is scarce, then you
have economies around those resources.
And the big question is how does a given economic system assign its scarce resources
among the alternative systems. So, for instance, here we have four producers of milk,
ice cream, cheese, and yogurt. So how much of this milk will be sent to each of these
producers? Well, if it were the Soviet Union, then each of these producers will ask for
as much as possible because it doesn't -- nothing comes from their pocket. Some
centralized agency will make these decisions. And if the ice cream guy gets too much
milk and he can use only half of it, well, the half can go and rot for all he cares. And
that's the way it worked, and that's the way it collapsed.
I guess you can tell us a bit about that [laughter]. We have people that grew up in that
system. And, actually, I was fortunate enough to visit it while it was still the Soviet
Union in 1986 and saw it with my own eyes.
Now, in the west, we do these allocations through the very powerful mechanism of
prices. And if suddenly you get some warm days and -- what is this? Am I losing voice
here?
>>: No.
>>Vijay Vazirani: And the people are consuming more and more ice cream, then the
guy who makes ice cream suddenly gets a lot of money, he can go buy more milk, the
price of milk goes up, and so these guys can afford less and so on. So there's a
massive feedback loop here between prices and the very important point here, the need
to maintain parity between supply and demand, which determines allocations of scarce
resources. And these prices which allow parity between demand and supply are called
equilibrium prices.
And that was what Adam Smith was recommending, that the markets should find their
own prices through a supply/demand tussle, if I may say so, and arrive at prices that
maintain parity between supply and demand.
Now, this is what determines everything in the west. What is the relative price of
something as useful as a pound of bread versus a pound of pearls. Something as
useful as a pound of bread and something as useless as a pound of pearls. Which one
do you think it will more expensive? Well, it's a matter of supply and demand. Pearls
are scarce, and some people are crazy enough to want them, so there you go. It has
not much to do with their usefulness, but it's just a matter of supply and demand.
But also, I mean, that was an extreme example, but just about everything in our lives is
determined by this mechanism of prices, including when we sell ourselves in the job
market. So what is the salary of and humanities professor or a math professor or a CS
professor or a business school professor or the president of the university or the football
coach [laughter]? I mean, it's all a matter of supply and demand.
Yeah?
>>: You should have gone down from the business professor to the president of the
university [laughter].
>>Vijay Vazirani: Okay. Yeah. I -- I don't know those numbers in the stratosphere, and
particularly numbers that are thrown around here are beyond my scope, so [laughter].
So, in any case, it determines everything. Who's poor, who's rich, who's important,
who's unimportant, and so there was a big deal made of all of this, there was a need to
understand and ratify that in a clean mathematical setting, and that's what mathematical
economists set out to do.
And in particular, Leon Walras, a French economist, came up with the general
equilibrium theory in 1874, which gave very clean abstract models, mathematical
models, of the economy which he could study to understand these various issues.
And the crowning success of the general equilibrium theory came with a mathematical
ratification of Adam Smith's invisible hand of the market. And I'll show you in what
sense this ratification came after giving you another central notion -- well, let's just
formally define equilibrium.
So the central tenet in general equilibrium theory in mathematical economics and
economics in the west or free-market economics is the notion of equilibrium. That is,
prices should be such that there's parity between supply and demand.
And then the very first question that comes up if you are going to study this in an
abstract mathematical setting is does your economy even admit equilibrium prices,
prices where there's parity between supply and demand, because if there are no such
prices, then no pricing mechanism is going to find it, obviously.
So this is an easy question to answer if there's only one good, because you have a
supply curve and a demand curve, and whenever they meet you get equilibrium prices.
And if supply exceeds demand or demand exceeds supply, you will have tension in the
market and your prices will wanted to go back to equilibrium.
Yes?
>>: Do you mean you only have one state that controls it?
>>Vijay Vazirani: Just one good.
>>: No, no, no. General question. There's a lot of --
>>Vijay Vazirani: Yeah, yeah, yeah, one state. One state. Yeah, yeah. I'm not talking
about a dynamically changing market yet or never in the stock.
>>: Because, I mean [inaudible].
>>Vijay Vazirani: No, no, no. Yeah, so that's way beyond our scope even at present.
So we're going to just talk about a static market with -- you'll see -- a complete clean
definition in the next slide, actually.
So what I want to get to is a relevant market where you have many, many goods, many,
many buyers with many diverse demands and desires, and very different buying power
that can influence the prices in the market. And the question is do you still get
equilibrium prices in such a market.
And as I said earlier, the first such model was given by Walras, but we will be studying a
slight special case of Walras's model that was given by Irving Fisher in a Ph.D. thesis to
Yale, and this model, it turns out, it not only more suitable for algorithmic analysis -- and
you'll see why. That's what my talk is all about -- but it is, in my opinion, the right model
of relevance today. Ask we can get into that, if there are any economists here, after my
talk, but I don't want to start defining two models and all that. I'll only define this model
and show you what can be done here algorithmically.
So here's the model for -- yeah, very formally. So we have a bunch of divisible goods,
and we know how much of each good is in the market. Maybe 14,000 gallons of this
and however many loaves of bread. And these are divisible, infinitely divisible. You can
slice it up as much as you want to.
And then this guy comes to the market and he comes with a certain amount of money,
and we know how much money, and he has utility function for each good, and we are
assuming concave because that satisfies decreasing marginal utilities, but [inaudible]
over goods. So his entire utility will be the sum over all goods of his fij of xij where xij is
the allocation of good j.
So this is supposed to be buyer number I. There will be more of these fellows who will
come. So that's his utility function, ui. I guess we don't have a pointer, but that's okay.
We don't need it.
Okay. So is that reasonably clear?
Okay. So now if I assign any prices to these goods -- P1, P2, P3 -- then this buyer can
compute an optimal bundle of goods for his money and say I want so much milk, butter
and bread. Okay? And [inaudible] has some doubts, but, look, he does look like a
calculator ->>: There's a pointer on podium.
>>Vijay Vazirani: On the podium. Oh, yes.
So my contention is that he can compute it.
>>: [inaudible].
>>Vijay Vazirani: Okay.
>>Vijay Vazirani: Oh, that was your doubt [laughter]? After this Ph.D. thesis?
>>: I looked at the cheese [inaudible] [laughter]. And is the knife not for sale [laughter]?
>>Vijay Vazirani: Okay, okay, please.
Okay. So he can compute his optimal bundle. And now look what we want. Now we
get many more of these buyers, each with their own utility functions, own money, and ->>: [inaudible] each user has infinite or ->>Vijay Vazirani: No, no, no, no. Finite. Finite. That's what [inaudible] came to the
market with. It's a parameter.
>>: [inaudible].
>>Vijay Vazirani: Different monies, you know, will get Steve Jobs and me [laughter].
>>: How bad is it -- if it's not [inaudible], flashlights and batteries ->>Vijay Vazirani: No, no, no. Of course, of course, of course. We'll come to all of
these things.
So a very good question, actually. For simplicity, we will assume additive. Utilities are
additive across goods. And that's by far not the way things are, so how much money do
you -- how much happiness do you get from bread and butter is not the sum of the -- I
mean, how much happiness do you get just from bread? Maybe something. From
butter? Nobody eats butter by -- okay. So additive is by far a major simplification just
for the sake of computability. And we'll get out of it whenever we can.
So everybody sees what this market is, right? Many of these fellows, different monies,
different utility functions, a fixed number of goods.
And now you won't find equilibrium -- and, again, what is the notion of equilibrium here?
So some prices -- P1, P2, P3 -- of these goods so that if each and every one of these
buyers gets an optimal bundle at these prices, the market clears, which means that all
the money is spent to the last cent and all the goods are sold to the last drop.
Is that notion okay? And you'll agree that this captures in a very clean way the notion of
parity between supply and demand, and the question is do such prices even exist in this
particular market model.
And the big theorem here is due to Arrow and Debreu saying that in an even more
general model of the market, equilibrium prices do exist, and it was used proving -proved using the Kakutani fixed point theorem. And it was really a big deal right away,
and they both got Nobel Prizes in two different years. Professor Arrow is still around at
Stanford, emeritus. He'll be almost 90 years old. They were both at Berkeley. Not
anymore.
Okay. But because this theorem uses some hammer as heavy as the Kakutani fixed
point theorem, it's highly non-constructive. And, of course, there's an issue of whether
markets actually compute equilibria. I mean, it's one thing to say that equilibrium prices
exist and then say, okay, pricing mechanisms are all powerful. We'll depend on them.
Well, we'll depend on them, but are there really -- are the markets capable of computing
them, and [inaudible] says are even computers capable of computing them. That's the
first level question before asking whether markets are capable of computing them.
So the issue of computability is left open, and from hindsight, this is a partial ratification
of the invisible hand of the market, not a total ratification. But some attempts were
made within economics, in particular Walras himself gave a very simple process called
Tatonnement process which basically you fix some prices, see which goods are
deficient, which goods are in excess, raise the prices of deficient goods, decrease the
price of excess goods, and go on to the next day, see what happens, and keep iterating.
And does it convert to equilibrium? Well, that's a good question. Many decades were
spent on this question. And I'm going to show you now where this all came to an end by
showing you three slides from a talk that Ken Arrow gave at WINE. So in 2007
December, WINE invited him to San Diego, and with his permission, I've gotten three of
his slides.
So that was a talk that he gave. That is the outline, and I'm going to jump to the last
slide of his where the program comes to an end because, first of all, Herb Scarf, who's
still at Yale, he gave an example where the Tatonnement was just cycles [inaudible].
And then there were many other pieces of bad news, including the fact that not only can
you prove existence of equilibrium from fixed point theorems, but you can prove fixed
point theorems from existence of equilibrium. So, I mean, it's a very hard question.
But, of course, we don't want to leave things there. And, in particular, we have a very
powerful and beautiful theory of algorithms, so we should really make an attempt now to
see what we can say about this so we're going to find equilibrium prices efficiently. And
this is not just of academic interest, because with the internet, there are some new
markets which are very interesting markets on the internet where you could compute
allocations in a centralized way if you need to because you have all the computing
power available. And you'd like to -- these already occupy a big fraction of the
economy, so you'd like to do as well as you can for such markets.
So we need an inherently-algorithmic theory of markets and market equilibria at this
point more than just for academic reasons.
And I want to say that the algorithmic theorem, as I said, was proved in a very general
model of the economy, and in particular the conditions on the utility functions of buyers
were very, very weak. Namely, just continuity, quasi-concavity and satisfied
non-satiation. That means that no matter what bundle you give to a buyer, you can
make him or her happier by giving them something more. Some more of some good or
goods will make him or her strictly happier.
So, I mean, that's too weak a condition, too general a situation, and what we want to do
or what we started to do within theoretical the computer science was started with some
reasonable utility functions constrained them down a lot, and that was the reason for
additive [inaudible] in particular, and see if market equilibrium can be computed in P.
And if not, we also know how to establish evidence of intractability through such
powerful means as the MP completeness or whatever else applies. So we would like to
do that.
And in particular, this model was among the first ones that was studied, and the first
result was a polynomial time algorithm for the case of linear utility functions. So now I'll
have to define a few things. And, actually, I want to ask you a question. I see a very
large section of technical interest represented here, and I don't know whether to get into
details of proof or keep it at a high level. Because even if I keep it at a high level, we'll
run into an hour and 10 minutes. So do you want this to be an hour-and-10-minute talk
or two-hour talk [laughter]? How many technical details would you like?
>>: The more the merrier.
>>Vijay Vazirani: The more the merrier. Excellent. Okay. Everybody is signed up for
that [laughter] okay.
So I'm going to assuming that buyer i's total utility is given by the following linear
function of allocations. So xij is the amount of good j that buyer i got. By the way, I'm
going to assume before that that there's one unit of each good in the market. So if there
are 40,000 gallons of milk, I will call that one unit, and I'm allowed to call that one unit
and scale everything else appropriately.
And I'm going to say that mi is the amount of money that each buyer i comes to the
market with, which is a parameter given to us. We know beforehand.
And now the other thing is we also know the utility function of each buyer. So uij is the
happiness developed by buyer i on getting one unit of good j. So if he gets xij units of
good j, that's the happiness from good j, and so this is the happiness over the whole
bundle.
Yes, sir?
>>: So you're assuming that this [inaudible] is fixed to one?
>>Vijay Vazirani: The supply is fixed, yes. One unit of each good.
>>: [inaudible].
>>Vijay Vazirani: Yeah. Yeah. Supply is fixed. Demand is given by this. The question
is can you make supply equal demand. I mean, they cannot demand -- I mean,
somebody brings 10 dollars to the market cannot demand everything, you know? They
can demand it, but [laughter] -- okay, you see what I mean. Okay.
Okay. So I hope this all holds water in your minds.
Yes?
>>: So is the allocation 0, 1, or a fraction?
>>Vijay Vazirani: No, no, fractional. No, no, that's why I said ->>: [inaudible].
>>Vijay Vazirani: Divisible goods. These are not like cars and factories that you can all
slice up.
>>: If all the goods have supply 1, are you saying that there's -- you can't model the
case where there's different amounts for each good?
>>Vijay Vazirani: No, no. I'm going to call 40 gallons of milk one unit, I'm going to call
10,000 loaves of bread one unit. I can call it one unit.
>>: Right. The xij that is fractions of that money are the [inaudible].
>>Vijay Vazirani: Yeah. Yeah. I mean, I can rename one unit to be -- why should I use
gallons, right? Okay.
So the most amazing thing and by far the most amazing construct that I have come up
with in my research career is this complex program which captures the equilibrium
allocations for this model. And it's really amazing. David Gale was the Gale of
Gale-Shepley David [inaudible] algorithm.
So what it is saying is you maximize the money-weighted logs of the utilities of the
buyers. So I could have plugged in this vi here by plugging this thing here. I mean, this
is just -- this is not a constraint.
The only constraint is that for each good, we have one unit only available to give out,
and we have, of course, not negativity. You cannot give negative amount of bread to
somebody.
Okay. And the amazing thing is that at optimality, these will be equilibrium allocations of
these goods. And the Lagrange variables corresponding to these constraints will be
equilibrium prices. And how you prove that is through the use of KKT conditions, but it's
just outrageous how everything works out. It's just pure black magic as far as I'm
concerned because what it shows you at the end is that everybody's money is fully
spent on an optimal bundle of goods. So fully spent means mi equals xij pj. So I'm
going to use [inaudible] and dual variables mixed together in an equation for each
buyer, and each buyer gets an optimal bundle of goods. That has to be proved. And
every good is fully sold. These all will be equality set to 1. And -Yes?
>>: [inaudible].
>>Vijay Vazirani: Because that will make sure that the marginal utility per dollar spent -so for each buyer, the marginal utility per dollar spent on each good will be the same at
equilibrium.
So, in other words, if the marginal utility per dollar spent were different on different
goods, then you're not getting an optimal bundle because then you should get less of
the place where you got marginal utility and put more money in the place where you got
more marginal utility. Okay? Right?
And the reason is that once you take the derivative of log, you'll get 1 over the utility,
and that goes into proving that.
Sorry. Yeah?
>>: I just wanted to say [inaudible].
>>Vijay Vazirani: Okay, okay.
And, again, just to summarize, what is so amazing about this convex program is that all
though equilibrium is supposed to optimize for each buyer, so it's a simultaneous
optimization of N rather difficult maybe convex programs or linear programs, what have
you, it does it with one objective function.
And in a sense, the rest of my talk is about ways to move out of this convex program,
how to build on it. So there are multiple themes in my talk. One is, of course, the
computational market, but the other is these kinds of convex programs. And actually,
there are more.
Yes, sir?
>>: Can you prove [inaudible] by saying it's a convex optimization or ->>Vijay Vazirani: No, no, no. We actually first gave a combinatorial algorithm for it and
then later realized that there was a convex program behind it. And that's the third
theme of my talk is combinatorial algorithms for convex programs.
But before that, I have missed one slide, so let me get back to this.
So I just want to say that this particular convex program always has a rational solution if
all the parameters are rational. So if mi's and uij's are all rational, then this convex
program always has a rational solution. So in a sense it's masquerading as a linear
program, because after all, a non-linear program like this, it's highly non-linear, so it
should always have or typically have an irrational solution. But this one always has a
rational solution that can be overwritten using only polynomial many bits. Okay? And
we will be honing in on such convex programs, which let's call them rational convex
programs.
Okay. So as I said, we gave a combinatorial algorithm for this market, and I hope I don't
have to go into the definition of combinatorial here or the importance of it. Okay. If
there's no questions, we can go on. That's good, because --
>>: Can I ask a quick question?
>>Vijay Vazirani: Yes.
>>: Is that a related result that shows anything known about that [inaudible] process?
>>Vijay Vazirani: No, no. It cycles. So end of the process.
>>: [inaudible].
>>Vijay Vazirani: In the linear? I don't know. It's not -- yeah, it's only polynomial time.
>>: What is a combinatorial algorithm?
>>Vijay Vazirani: Ah [laughter]. You are waiting for the right moment, right?
>>: [inaudible] [laughter].
>>Vijay Vazirani: So because there's a convex program, you could have used the
ellipsoid or interior point or gradient different or what have you, any of these, quote,
unquote, continuous methods.
But the point is that these continuous methods, to them what you have to supply is the
convex program for the given instance and they give you the solution for that instance.
And if you gave to them a convex program or a linear program for an instance from,
say, a shorter spot, they would give you a solution to that shorter spot instance.
And you don't have to tell to this solver where this convex program came from or the
linear program came from. So it gives you no insight whatsoever about the problem
itself. It doesn't even have to know the name of the promise from which the instance
came. So, in a sense, you can think of it as a ->>: [inaudible].
>>Vijay Vazirani: Sorry?
>>: [inaudible].
>>Vijay Vazirani: Yeah, as an algorithm for an instance where the combinatorial
algorithm -- okay, what's a combinatorial algorithm? Where you do a search over a
discreet space. And that's not formal, and there's no way or need to make it formal, but
you'll understand it when you see it.
And that's an algorithm for the problem, and in getting the algorithm, we really
understand so much about the structure of the problem that typically you end up making
a lot of progress in related problems. And then, again, it has massive uses in
applications because once you get a combinatorial algorithm, you can sort of jiggle it
around and fit it to your application and so on. And we'll see an example of that also.
But this was done combinatorially using the primal-dual paradigm, which before this was
run in the setting of LP [phonetic] duality, and we had to lift the paradigm up to handle
convex programs and KKT conditions. And then many our algorithms were designed
along these lines.
And here's an example of an application of these methods, combinatorial methods. So
Nisan was at your [inaudible] on sabbatical for a couple of years, and he was charged
with coming up with Google's TV ad auction system, and after looking into many
possibilities, he finally chose a market equilibrium-based algorithm, and for the
implementation he actually took inspiration, quote, unquote, as he says in his blog, from
these combinatorial algorithms.
And, of course, as you know, this is not peanuts here. I'm sure they're raking in millions
of dollars every day. It's operational, this particular system.
So that was a story with linear utility functions. But we want to go to more interesting
and rich utility functions. And clearly the next step was piecewise linear concave
utilities, but additively separable over goods. So if each buyer's utility for each good, for
good j, is given by this piecewise linear concave function and the utility over all goods is
simply additive, then what can we say about computation of equilibrium prices?
And this was a longstanding open problem since 2002, and the first thing that we need
to do, of course, is to see how we can build on the solution to the linear case, and in
that one the first thing to do is to see if the Eisenberg-Gale program can be generalized
to be first linear convex utilities.
So the thing to do there is for each of these pieces, I'll call it a segment, you let u ij k -this is for the kth segment -- that's the slope of the segment, that's the amount of good
represented in the segment, and xijk will be the amount of good allocated within the
segment, and we can write a very simple convex program generalization of
Eisenberg-Gale where the utility of a buyer is defined by total utility across the
segments and try to apply the black magic of KKT conditions and it fails. It fails.
Yes? Question?
>>: So [inaudible] each person gets [inaudible], like in the piecewise thing ->>Vijay Vazirani: We just want to guarantee that everybody -- relative to the prices that
we fix, everybody gets an optimal bundle, whatever that means.
>>: Because one person can actually [inaudible] utility without getting [inaudible].
>>Vijay Vazirani: No. Whatever gives them the optimal bundle. We then guarantee
that butter will come with bread.
>>: Okay.
>>Vijay Vazirani: We're still -- yeah, in the case of additively separable.
Okay. So the next thing to do is to build on that combinatorial insights from the linear
case, and this is possible. So there were two pieces of work, mine with Yannakakis and
[inaudible] here with Ravi Kannan showing that equilibrium is rational for this case, for
piecewise linear concave utilities. So, again, rational.
So let's jump into the proof of this since we want to see proof. So let's ask this question
first. It's a simpler question. Before we want to find prices, we want to at least have an
efficient algorithm for the following question: Given some prices P, are they equilibrium
prices? Can we determine if they are equilibrium prices?
In other words, can we compute the optimal bundles of all buyers and show that the
market will clear for the case of piecewise linear can cave utilities?
So there are two cases. So given these prices, we're actually given the numbers for
each good. We can see for each buyer, for each buyer and for each good we can
check -- we can determine how much of this good this buyer would want in the optimal
bundle, and there are two cases. Either for this good, the buyer gets a bunch of
segments fully and then some segment partially. So that's case one. Or the buyer gets
a bunch of segments fully and that's it. Nothing partial. So the next one is two lower
utility to get into his optimal bundle.
So now we can compute this for each buyer's all goods, okay? And here, actually, the
exact amount of good is not yet determined because there could be many segments
that give equal happiness per dollar spent. So from this information, the full and partial
segments, we can construct a network like this where we put on a node for each buyer,
so there are four buyers, and a node for each good, and there are four goods, and we
already allocate the full segments, the Case 1 segments, or, rather, these full segments
and these full segments. We can make those allocations already.
We want to determine whether the partial segments can be allocated in such a way that
market clears. So we can compute the amounts of -- so the value of the goods left over
after the full segments are allocated. Remember, there's one unit of the each good. So
if the price of this good was P, its total value was P1, and some amount of this good got
sold, so let's say Q1 is the value of the left over good.
Yes?
>>: Is it obvious how to allocate the full savings?
>>Vijay Vazirani: Oh, yeah. That's obvious.
>>: So do you translate to, like, utility ->>Vijay Vazirani: Yeah, yeah, yeah, yeah. That's obvious, yeah. You don't even need
that calculator that he had. Yeah.
So you can compute the value of each good, the left over value of each good, and you
can compute the left over money of each buyer after the full segments are allocated,
and you put down an edge wherever somebody wants a partial allocation of some good.
And you convert this into a flow problem, put down infinite capacities here, and if the
max flow in this graph equals the capacity of this graph which equals the capacity of this
graph, then we know that the market clears.
So that's what I'm stating here. The theorem is that P is equilibrium prices if and only if
the total flow in this equals the unspent money which equals the unspent -- unallocated
value of goods.
And these are all insights that are coming from combinatorial algorithms, these kind of
insights.
So in particular, we can write an LP for computing a max flow in this network by putting
down variables of -- flow variables for each of these edges, and we can say that the -so these are the fe's. And we can say that the max flow should be such and such.
Okay?
But that's not what we want to do. We don't want to do anything for given prices. We
want to show that whenever there is equilibrium, there's a rational equilibrium. Prices
are rational.
So next we do this very devious step. Namely, we let the p's be prices, variables, we let
p's be variables in this same LP. And, of course, we don't know what -- these prices are
variables, so we just guess the full and partial segments to get the network and the LP.
The LP is linear. Believe that, okay? It now has two kinds of variables, the flows on
edges and the prices of variables.
But we have guessed the full and partial segments. So there are exponentially many
guesses so there are exponentially many LP's. But corresponding to any correct guess,
the LP -- the optimal solution of the LP will reveal equilibrium prices.
But these are coming out of an LP, so they must be rational numbers. So although
there are exponentially many guesses, wherever you made the correct guess you will
get a rational number. So if there's any equilibrium, there's a rational equilibrium.
So once you have rationality, looks like the next thing to show is polynomial time
solvability, and that's where [inaudible] and I spent all of our time. And it turn the out
that in fact for the Arrow Debreu model, the problem turned out to be PPAD-hard.
So now what is PPAD? So basically there's a beautiful observation of Megiddo saying
that whenever an equilibrium is an NP it cannot be NP-hard because then NP equal to
co-NP.
So NP-hardness is not the way to prove intractability of equilibrium. And then
Papadimitriou came up with the class PPAD which captures the equilibria that have
rational solutions, like 2 Nash. And Etessami and Yannakakis came up with FIXP that
captures the complexity of irrational equilibria like 3 Nash or 4 Nash or whatever. And
in this case PPAD applies and they did it for the Walras model, the more general model.
And later these two papers in parallel did it for Fisher's model and, moreover, in our
paper we also gave membership in PPAD. So these were all PPAD hardness, so we
gave membership in PPAD for both models, assuming a simple sufficient condition,
namely, non-satiation. And if non-satiation is not satisfied, then existence of equilibrium
itself is NP-hard and all these results apply for approximate equilibria, 1 plus epsilon
approximate equilibria.
Yes?
>>: I didn't understand the PPAD ->>Vijay Vazirani: No, there is no way to explain that in less than three hours.
>>: But does it mean it's hard? Is it bad news?
>>Vijay Vazirani: Good question. So I'm not going to show you membership in PPAD
for these models, okay? Anybody who wants that can -- I will have to show that later,
and I'll jump directly to your question.
What does it mean? What does it mean? Is PPAD really hard? That was the question,
right? I don't know [laughter]. I don't know.
Yes, sir?
>>: How much of a problem is due to the don't cares coming ->>Vijay Vazirani: No, no, no, no, no. I can make this reasonably smooth and still get
PPAD-hardness. That's not the problem.
>>: [inaudible].
>>: [inaudible] [laughter].
>>Vijay Vazirani: I don't know. I don't remember. NP complete I remember [laughter].
So -- sorry?
>>: [inaudible].
>>Vijay Vazirani: I don't know. It's not relevant.
So I don't know. Nobody knows whether -- how hard it is, whether it's hard or -- I mean,
some people really think it's in P, some people think it's hard. It's too early to say.
But if you want to solve a piecewise linear concave by assuring that PPAD isn't P, then I
think you have to do some really solid work, because you'll also show that there are 2
Nashes in P and so on and so forth, and I don't know how many people are up for that.
Maybe.
But what I think really is the right question is this one. What is the right model? And
why do I say that?
Well, because -- so in my trip in [inaudible] what I saw was in the stores for some goods
the shelves were empty, for some goods they were overfull. And typically these were
poetry books and this was food. So obviously market was not clearing for anything.
And, really, I do not see that situation here in the U.S. for any good. I mean, prices are
always just -- the price of oil changes on a minute-by-minute basis trying to maintain
parity between supply and demand despite all the hanky panky that goes on.
There is some amount of parity that's being maintained despite all the events or
mis-events that happen all around the globe. So markets do manage to do this job, and
so maybe we haven't captured the right model yet or some aspect of the right model.
And so what are these aspects that are still missing? I think that's a great question to
answer. And I think that the same is the case for Nash equilibrium, because it's
PPAD-hard. What's the right solution concept that we should be honing in on for
dealing with situations of conflict of interest of people?
So let me show you that this is a good question by showing you that a lot can be done
about it.
So going back to 2002 after this result came out, in the spring of 2002 I was really hot
on this problem because I saw this was the burning question at that moment, and
towards the end of the summer I felt I had an algorithm, a polynomial time algorithm for
a piecewise linear concave utilities, and then soon after that everything fell apart. And
then looking into things, I realized that linear utilities satisfy something very important, a
very important condition called weak gross substitutability, which says that if you
increase the price of one good, the demand of another good cannot come down.
So that means goods are substitutes rather than complements. So a complement
means, like, bread and butter. If I increase the price of bread, the demand for butter will
probably come down, right?
But these goods are substitutes. They're like bread and cake. If I increase the price of
bread, the demand of cake will not come down, it will go up. Right? And even the
queen told us, right? We're back in I don't know when.
So this is not satisfied by piecewise linear concave utilities. Okay? And also at this
point I had so much invested in this algorithm that I really need the to salvage
something or lose the whole thing, and at that point the following idea came up.
Let me do something that was recommended by you all. Differentiate. Right? Which is
not a great idea. I mean, it's not an idea yet because it's just [laughter] transforming a
piecewise linear to a decreasing step function, which is obvious, you know,
differentiation of that function.
But now I want to change the x axis. Instead of the x axis being the amount of good, I
want it to be the money spent on good j. Okay? And that's a bizarre utility function. I
want people to give me utilities in this model where this is the amount of money spent
on a good and this is the rate at which they get happiness per unit of good. Okay?
So this buyer goes to the market and she gets happiness at this rate for chocolate eaten
for the first 20 dollars and at this rate for chocolate eaten for the next 20 dollars and so
on without knowing the price of chocolate. So if the price of chocolate is very low, she'll
be eating a lot of chocolates here [laughter] and still claiming happiness and so on.
Now, you may not like utility function, but it satisfies the gross substitutability that the
polynomial time combinatorial algorithm equilibrium is rational, and it has applications in
Google's AdWords market because it turns out that when you look into this market, you
see the money spent on keywords, this thing makes sense. And thinking about it in a
real market also, it makes sense. So at least some more general versions of this make
sense, and this is what we are working on right now at Microsoft.
>>: [inaudible].
>>Vijay Vazirani: I claim that you really need a fixed amount of things. Okay. So you
really need a fixed amount -- so if you go to buy your breakfast in the morning with 10
dollars and you have sort of a ballpark figure of saying, okay, you'll probably spend 2
dollars on the milk and 3 dollars on the eggs and 2 dollars on the bread and -- okay, and
then if prices are usual, you do that, and somehow if you see that, oh, milk has gone
through the roof today, okay, then you say, okay, I'll cut back on milk a bit, but I'll spend
more on cheese or something like that. Right?
So we have spending constraint utilities which are not exactly steps but more
continuous functions which allow you to do that. And you can have ballpark figures
which you adjust based on prices. So it's not an altogether out of the window idea. But
it's too radical for any economist to look at, in any case. But the algorithms were really
clean, economical, beautiful, big structure, and that's the reason that I asked this
question in the discussion of this paper five years ago: Is there a convex program for
this model?
And what I said was we believe the answer to this question should be yes. In our
experience, non-trivial polynomial time algorithms for problems are rare and happen for
a good reason, a deep mathematical structure intimately connected to the problem. So
you look at a non-trivial -- by non-trivial I mean a really clean economical beautiful like
matching, Edmond's matching algorithm. There's so much structure there. I mean,
there's the polyhedral [inaudible] of matching, there's the facets of the matching
[inaudible], there's the dimension of the [inaudible], there is the LP that always has
integral optimal solutions. I mean, it's amazing.
So this was the reason I said that there should be. And five years ago and a few
months ago our man here, Nickel [phonetic], found a totally different convex program for
linear Fisher, totally different from Eisenberg-Gale, by a most devious means. He took
Eisenberg-Gale and found its exact dual, close form, made a bizarre change of
variables, took the dual of the dual and got this bizarre program. And it generalizes to
spending constraint very naturally.
So we are in this situation, that be Eisenberg-Gale program is equal under Nickel's
program. This does not generalize to Fisher markets with piecewise linear concave
utilities, which I gave you the sort of spiel on that, that basically the black magic doesn't
work. But this generalizes to any constraint markets.
So we need to change gears at this point and look at yet another market where I'm
going to allow price discrimination, which is that businesses charge different amounts
from different users depending on who can pay what. And that's always done. It's
critical for the existence of some businesses like airlines.
And perfect price discrimination is where the business charges exactly what the
consumer is willing and able to pay. This is a technical term from mathematical
economics. And this is the kind of price discrimination we add to the market model to
Fisher's market with piecewise linear concave utility.
So buyers have piecewise linear concave utilities. Everything else is the same as in the
previous market except there's this middleman, and he buys goods in the usual way by
paying per unit, but he sells the goods to buyers not per unit of good but per unit of
utility that they get.
And the buyer can pick her own utility, her own rate, and tell her there's a unique rate at
which she can maximize her utility because there's a condition here that the middleman
never sells anything at a loss.
And it turns out that you can define the notion of equilibrium and equilibrium is captured
by a rational convex program. And guess what that convex program is? Piecewise
linear concave utilities plus perfect price discrimination.
What do you think the convex program is, the one that did not work for Fisher market
with piecewise linear concave utilities? Works when you throw in perfect price
discrimination. Which is not an unreal assumption at all.
So actually I can generalize this further. So to answer your question about separable
utilities, I can generalize this to non-separable utilities without the rationality and come
pretty close to what Arrow-Debreu had as their assumption for utility functions and
getting polynomial time solvability.
But going back to rational convex programs, we are in this situation that for linear
Fisher, we have these two fantastic convex programs, equivalent but very different
looking. This generalizes to spending constraint, and now this generalizes to price
discrimination market with piecewise linear concave utilities. Okay?
And that's not where it stops. There are many more rational convex programs. There's
one due to [inaudible] and me on combinatorial markets which allow for proportional
fairness of Frank Kelly, and there is several that solve Nash Bargaining problems, also
rational convex programs, and Kammal [phonetic] has an entirely different kind of
convex program having a different form than these ones for the Arrow-Debreu market
with linear utilities which is also rational. And all these combinatorial algorithms that I
showed you were just polynomial time, but [inaudible] has recently given a strongly
polynomial algorithm for Fisher linear markets, and I believe he's onto more, capturing
more of these markets with strongly polynomial algorithms. So ->>: Combinatorial?
>>Vijay Vazirani: Oh, yeah, totally combinatorial. Yeah. It's like matching, augmenting
parts.
So we have clearly a lot of good questions here to resolve, including the role of these
rational convex programs. I just had a blog today in the complexity blog that you can
see where this might go to -- we don't know what will end up, but it's worth pursuing
these leads, because they are almost as important as the integer LPs, LPs that always
have integral solutions, which led to combinatorial optimization, the entire field. So
these are big developments, I think. And there are tons of open issues here, not just
open problems.
And in the end, as far as these works were concerned, it's all really a plan for the
combinatorial approach to follow in convex programs, the seeking of combinatorial
algorithms that reveal so much about the problem and then gives you tools for the next
problem and the next problem and the next problem and so on.
In fact, this market -- this market came about in getting a combinatorial algorithm for a
certain Nash Bargaining problem. So just to say that these combinatorial algorithms are
incredibly important in the insights and the side effects that they give.
And, finally, it should not come as a great surprise that algorithmic [inaudible] and
economics, as it is called now, has given us such, you know, amazing directions for the
theory of algorithms and complexity theory, these complexity classes that capture
important problems and this new algorithmic direction because, after all, game theorists
and algorithm people were -- the same people were doing both foundational work in
both game theory and algorithms early on, like Gale, [inaudible] Dansick [phonetic],
[inaudible] and so on. And then the two fields sort of went apart and, because of the
internet, and all of these applications are coming back together.
And, of course, the two fields share a lot of methodology like duality and randomization.
So one should expect that when they come together again, there should be new
fertilization of ideas and new important directions, and that's what is happening here.
Thank you.
[applause].
>>Vijay Vazirani: Yes, sir?
>>: There was one aspect [inaudible] and the interesting questions was Marks
[phonetic] arrived at certain conclusions, and if you read this, the book, it's very
convincing because he makes similar assumptions in at least one aspect, namely, all
the producers and all the buyers are independent and small. And the missing aspect is
coalition. And quickly after his analysis, there were cocktails and [inaudible] and picture
changed dramatically. And that's what makes the real market [inaudible].
>>Vijay Vazirani: Great point, yeah. So whereas Adam Smith was banking on the good
senses of the individual, and they would not -- I mean, they had to act in their own
behalf rather than form coalitions of that kind, yeah. Good. Thank you.
Yes, sir?
>>: I recall John Nash managed to get rid of [inaudible].
>>Vijay Vazirani: Yes, yes, yes, yes.
>>: Can it do the same?
>>Vijay Vazirani: Yes. Now there are -- there is an economist at Yale, Yancopolis
[phonetic]. He has proofs using Brouwer's [inaudible] theorem. Yeah.
>>: [inaudible].
>>Vijay Vazirani: Yeah.
>>: Maybe sometimes you don't have [inaudible] but you want to create, like, software.
I mean, in some sense everybody can use Windows without causing -- but we still have
pretty good economics. With internet, basically any number of people can develop a
page, everybody can enjoy it, and there's ->>Vijay Vazirani: So I agree that for digital goods, this is all out, because you can
reproduce them. And once you have one, you can get any number at no cost. So it's a
different economy that applies there. That's a very good point. Thank you.
>>: [inaudible].
>>Vijay Vazirani: Yeah, but it's a different -- obviously this -- and that's where, actually,
price discrimination comes in also in a very big way, because in a usual economy you
assume decreasing returns to scale in production, and that's why you can charge at
marginal costs and recoup your fixed prices. But in these digital goods, the entire prices
are in the fixed and the marginal cost is zero, so how are you going to price goods at
marginal cost? You have to find different ways. And that's why you have price
discrimination and so on.
Yes?
>>: It used to be also that the airlines had to be very clever in differential pricing to
make any money.
>>Vijay Vazirani: Yes.
>>: At least going to the Wall Street Journal, you know, Jet Blue was the simplest
pricing structure and one of the few that make money.
>>Vijay Vazirani: I haven't see Jet Blue, but I've seen Southwest and so on, and they
are using price discrimination very much.
>>: Not compared with the older airlines.
>>Vijay Vazirani: Oh, very much so. I mean, on a daily basis the fare changes. If you
buy two months in advance or two days in advance, you pay a very different price.
That's price discrimination. They won't tell you up front ->>: [inaudible].
>>Vijay Vazirani: Sorry?
>>: I believe Jet Blue will tell you up front.
>>Vijay Vazirani: Okay. Any others?
So thank you for coming.
[applause]
Download