I intentionally didn’t give the general statement in the post, because I wanted to keep the post non-mathematical, and the general statement is pure math. It’s basically just Arrow-Debreu-style microeconomics.
Here’s the general version:
Assume pareto optimal production of goods (any number of them, all continuously divisible). Pareto optimality means that there’s an implicit “price” vector: the normal vector to the pareto surface. Our particular point on the pareto surface is the point at which the maximum total value of goods is produced, according to those prices (assuming concavity of the surface, which is pretty much always assumed in economics).
To achieve that point on the pareto surface, we use a greedy algorithm: whenever there’s a choice, take the option which produces the most total value given those prices. (This is the multi-good version of “comparative advantage”.)
The typical assumptions built-in to the models ensure that the greedy algorithm actually achieves the optimal point—e.g. independent production functions, continuous allocation of time/other resources, etc. (We don’t necessarily need linear production functions, but concavity is usually assumed.)
Intuitively: the price vector quantifies the trade-off between production of goods in the system as a whole. If e.g. the price of apples is 1, oranges is 2, and bananas is 3, then that means producing 1 more apple costs 1⁄2 orange or 1⁄3 banana or (in general) 1/2*x orange and 1⁄3 * (1-x) bananas. That’s opportunity cost in the system as a whole, assuming that a pareto-optimal trade-off is made—i.e. assuming that we produce the additional apple while remaining on the pareto surface. The resources required to produce an additional apple could have been used to produce 1/2*x orange and 1⁄3 * (1-x) bananas instead, for whatever value of x we want (assuming it’s small enough that the linear approximation still holds).
But an individual person, or any particular choice faced, may have different trade-offs than the system as a whole. Maybe I have an opportunity to produce 1 apple at the cost of 1 orange, or 1⁄4 bananas, or 1*x orange and 1/4*x bananas (so my prices are 1, 1, 4 rather than 1, 2, 3). What’s my optimal move? Well, if I devote a fraction x1 of my resources to apples, x2 to oranges , and x3 to bananas, then I’ll produce (something proportional to) 1*x1 apples, 1*x2 oranges, and 1/4*x3 bananas, for a total value (proportional to) 1*1*x1 + 1*2*x2 + 1/4*3*x3. In that case, I’ll achieve maximum value by devoting as much production as possible to oranges.
In general, assuming the greedy algorithm works, we maximize total value by locally choosing the option with highest (global price)/(local price), where prices capture the opportunity costs of producing one thing rather than something else.
Does that make sense? Happy to give more detail/math on any particular points.
Also, one minor side note, in response to this:
Dynomight’s post seems to provide a sufficient counterargument to this, in its example illustrating how with more than 2 players, opening up a trade route may not be a Pareto improvement (may not be a good thing for everyone).
Note that, in that example, the new trade route still allows a pareto improvement in total production of goods. It’s “not a pareto improvement” in the sense that fewer goods may be allocated to a particular agent. Thus the standard argument from economics that we should rely on free markets plus wealth transfers: free markets ensure pareto optimal total production of goods, and wealth transfers allow that production to be distributed in such a way that nobody ends up worse off. That’s the theory, anyway.
Thus the standard argument from economics that we should rely on free markets plus wealth transfers: free markets ensure pareto optimal total production of goods, and wealth transfers allow that production to be distributed in such a way that nobody ends up worse off. That’s the theory, anyway.
Approaching this from a mechanism design standpoint, is there a way to distribute wealth such that this guarantee is actually enforced? It seems challenging!
It’s tough, at least if we want the mechanism to be fairly general.
Here’s an example of the kind of problem which comes up. We expect richer people to substitute from inferior to superior goods—e.g. as the populace becomes wealthier, they eat a bit less rice and a bit more chicken, or a bit less chicken and a bit more beef. So opening up trade creates a pareto improvement in the production frontier (e.g. holding everything else constant, we can always get more beef), but consumers may move to a new point on that frontier with different things produced.
So far, that’s not really a problem for mechanism design—all the goods are still traded on the market, presumably for money, so we can still use monetary income to tell whether someone is better/worse off. The real problem comes when people use extra wealth to substitute toward non-market goods—most notably leisure. If the populace becomes wealthier in real terms, they may decide to work less. But for mechanism design purposes, it’s really hard to separate that from new trade putting someone out of business.
Nope. Roughly speaking, pareto-optimality tells us about a gradient, while concavity/convexity tell us about curvature. That said, if we can randomize decisions, then pareto-optimality under expectations implies concavity: if our frontier is convex, we can take a random mix of two points on the frontier in order to get a point whose expected value is a pareto improvement over the frontier.
I intentionally didn’t give the general statement in the post, because I wanted to keep the post non-mathematical, and the general statement is pure math. It’s basically just Arrow-Debreu-style microeconomics.
Here’s the general version:
Assume pareto optimal production of goods (any number of them, all continuously divisible). Pareto optimality means that there’s an implicit “price” vector: the normal vector to the pareto surface. Our particular point on the pareto surface is the point at which the maximum total value of goods is produced, according to those prices (assuming concavity of the surface, which is pretty much always assumed in economics).
To achieve that point on the pareto surface, we use a greedy algorithm: whenever there’s a choice, take the option which produces the most total value given those prices. (This is the multi-good version of “comparative advantage”.)
The typical assumptions built-in to the models ensure that the greedy algorithm actually achieves the optimal point—e.g. independent production functions, continuous allocation of time/other resources, etc. (We don’t necessarily need linear production functions, but concavity is usually assumed.)
Intuitively: the price vector quantifies the trade-off between production of goods in the system as a whole. If e.g. the price of apples is 1, oranges is 2, and bananas is 3, then that means producing 1 more apple costs 1⁄2 orange or 1⁄3 banana or (in general) 1/2*x orange and 1⁄3 * (1-x) bananas. That’s opportunity cost in the system as a whole, assuming that a pareto-optimal trade-off is made—i.e. assuming that we produce the additional apple while remaining on the pareto surface. The resources required to produce an additional apple could have been used to produce 1/2*x orange and 1⁄3 * (1-x) bananas instead, for whatever value of x we want (assuming it’s small enough that the linear approximation still holds).
But an individual person, or any particular choice faced, may have different trade-offs than the system as a whole. Maybe I have an opportunity to produce 1 apple at the cost of 1 orange, or 1⁄4 bananas, or 1*x orange and 1/4*x bananas (so my prices are 1, 1, 4 rather than 1, 2, 3). What’s my optimal move? Well, if I devote a fraction x1 of my resources to apples, x2 to oranges , and x3 to bananas, then I’ll produce (something proportional to) 1*x1 apples, 1*x2 oranges, and 1/4*x3 bananas, for a total value (proportional to) 1*1*x1 + 1*2*x2 + 1/4*3*x3. In that case, I’ll achieve maximum value by devoting as much production as possible to oranges.
In general, assuming the greedy algorithm works, we maximize total value by locally choosing the option with highest (global price)/(local price), where prices capture the opportunity costs of producing one thing rather than something else.
Does that make sense? Happy to give more detail/math on any particular points.
Also, one minor side note, in response to this:
Note that, in that example, the new trade route still allows a pareto improvement in total production of goods. It’s “not a pareto improvement” in the sense that fewer goods may be allocated to a particular agent. Thus the standard argument from economics that we should rely on free markets plus wealth transfers: free markets ensure pareto optimal total production of goods, and wealth transfers allow that production to be distributed in such a way that nobody ends up worse off. That’s the theory, anyway.
Approaching this from a mechanism design standpoint, is there a way to distribute wealth such that this guarantee is actually enforced? It seems challenging!
It’s tough, at least if we want the mechanism to be fairly general.
Here’s an example of the kind of problem which comes up. We expect richer people to substitute from inferior to superior goods—e.g. as the populace becomes wealthier, they eat a bit less rice and a bit more chicken, or a bit less chicken and a bit more beef. So opening up trade creates a pareto improvement in the production frontier (e.g. holding everything else constant, we can always get more beef), but consumers may move to a new point on that frontier with different things produced.
So far, that’s not really a problem for mechanism design—all the goods are still traded on the market, presumably for money, so we can still use monetary income to tell whether someone is better/worse off. The real problem comes when people use extra wealth to substitute toward non-market goods—most notably leisure. If the populace becomes wealthier in real terms, they may decide to work less. But for mechanism design purposes, it’s really hard to separate that from new trade putting someone out of business.
doesn’t pareto-optimal imply lack of convexity/concavity?
Nope. Roughly speaking, pareto-optimality tells us about a gradient, while concavity/convexity tell us about curvature. That said, if we can randomize decisions, then pareto-optimality under expectations implies concavity: if our frontier is convex, we can take a random mix of two points on the frontier in order to get a point whose expected value is a pareto improvement over the frontier.