Skip to content

Commit 252641b

Browse files
authored
misc (#193)
1 parent 46098ec commit 252641b

File tree

1 file changed

+18
-21
lines changed

1 file changed

+18
-21
lines changed

lectures/match_transport.md

+18-21
Original file line numberDiff line numberDiff line change
@@ -28,26 +28,23 @@ and Zhenyuan Zhang {cite}`boerma2023composite` used optimal transport theory to
2828
Production technologies allow firms to affect shape costs of mismatch with the consequence
2929
that costs of mismatch can be concave.
3030

31-
That means that it possible that equilibrium there is neither **positive assortive** nor **negative assorting** matching, an outcome that {cite}`boerma2023composite` call **composite assortive** matching.
31+
That means that it is possible that equilibrium there is neither **positive assortive** nor **negative assorting** matching, an outcome that {cite}`boerma2023composite` call **composite assortive** matching.
3232

33-
For example, in an equilibrium with composite matching, identical **workers** can sort into different **occupations**, some positively and some negatively.
33+
For example, in an equilibrium with composite matching, identical *workers* can sort into different *occupations*, some positively and some negatively.
3434

35-
{cite}`boerma2023composite`
36-
show how this can generate distinct distributions of labor earnings within and across occupations.
35+
{cite}`boerma2023composite` show how this can generate distinct distributions of labor earnings within and across occupations.
3736

3837

3938
This lecture describes the {cite}`boerma2023composite` model and presents Python code for computing equilibria.
4039

4140
The lecture applies the code to the {cite}`boerma2023composite` model of labor markets.
4241

43-
As with an earlier QuantEcon lecture on optimal transport (https://python.quantecon.org/opt_transport.html), a key tool will be **linear programming**.
44-
42+
As with an [earlier QuantEcon lecture on optimal transport](https://python.quantecon.org/opt_transport.html), a key tool will be [linear programming](https://intro.quantecon.org/lp_intro.html).
4543

4644

4745

4846
## Setup
4947

50-
5148
$X$ and $Y$ are finite sets that represent two distinct types of people to be matched.
5249

5350
For each $x \in X,$ let a positive integer $n_x$ be the number of agents of type $x$.
@@ -64,42 +61,42 @@ $$
6461

6562
so that the matching problem is *balanced*.
6663

67-
Given a *cost function* $c:X \times Y \rightarrow \mathbb{R}$, the (discrete) *optimal transport problem* is
64+
Given a **cost function** $c \colon X \times Y \rightarrow \mathbb{R}$, the (discrete) **optimal transport problem** is
6865

6966

7067
$$
71-
\begin{aligned}
72-
\min_{\mu \geq 0}& \sum_{(x,y) \in X \times Y} \mu_{xy}c_{xy} \\
73-
\text{s.t. }& \sum_{x \in X} \mu_{xy} = n_x \\
74-
& \sum_{y \in Y} \mu_{xy} = m_y
75-
\end{aligned}
68+
\begin{aligned}
69+
\min_{\mu \geq 0}& \sum_{(x,y) \in X \times Y} \mu_{xy}c_{xy} \\
70+
\text{s.t. }& \sum_{x \in X} \mu_{xy} = n_x \\
71+
& \sum_{y \in Y} \mu_{xy} = m_y
72+
\end{aligned}
7673
$$
7774

78-
Given our discreteness assumptions about $n$ and $m$, the problem admits an integer solution $\mu \in \mathbb{Z}_+^{X \times Y}$, i.e. $\mu_{xy}$ is a non-negative integer for each $x\in X, y\in Y$.
75+
Given our discreteness assumptions about $X$ and $Y$, the problem admits an integer solution $\mu \in \mathbb{Z}_+^{X \times Y}$, i.e., $\mu_{xy}$ is a non-negative integer for each $x\in X, y\in Y$.
7976

8077

8178
We will study integer solutions.
8279

8380
Two points about restricting ourselves to integer solutions are worth mentioning:
8481

8582
* it is without loss of generality for computational purposes, since every problem with float marginals can be transformed into an equivalent problem with integer marginals;
86-
* although the mathematical structure that we present actually wors for arbitrary real marginals, some of our Python implementations would fail to work with float arithmetic.
83+
* although the mathematical structure that we present actually works for arbitrary real marginals, some of our Python implementations would fail to work with float arithmetic.
8784

8885

8986
We focus on a specific instance of an optimal transport problem:
9087

91-
We assume that $X$ and $Y$ are finite subsets of $\mathbb{R}$ and that the cost function satisfies $c_{xy} = h(|x - y|)$ for all $x,y \in \mathbb{R},$ for an $h: \mathbb{R}_+ \rightarrow \mathbb{R}_+$ that is **strictly concave** and **strictly increasing** and **grounded** (i.e., $h(0)=0$).
88+
We assume that $X$ and $Y$ are finite subsets of $\mathbb{R}$ and that the cost function satisfies $c_{xy} = h(|x - y|)$ for all $x,y \in \mathbb{R},$ for an $h: \mathbb{R}_+ \rightarrow \mathbb{R}_+$ that is *strictly concave* and *strictly increasing* and *grounded* (i.e., $h(0)=0$).
9289

9390
Such an $h$ satisfies the following
9491

9592

96-
**Lemma.** Let $h: \mathbb{R}_+ \rightarrow \mathbb{R}_+$ be **strictly concave** and **grounded**. Then $h$ is strictly subadditive, i.e. for all $x,y\in \mathbb{R}_+, 0< x < y,$ we have
93+
**Lemma.** If $h \colon \mathbb{R}_+ \rightarrow \mathbb{R}_+$ is strictly concave and grounded, then $h$ is strictly subadditive, i.e. for all $x,y\in \mathbb{R}_+, 0< x < y,$ we have
9794

9895
$$
99-
h(x+y) < h(x) + h(y)
96+
h(x+y) < h(x) + h(y)
10097
$$
10198

102-
*Proof.* For $\alpha \in (0,1)$ and $x >0$ we have, by strict concavity and groundedness, $h(\alpha x) > \alpha h(x) + (1-\alpha) h(0)=\alpha h(x). $
99+
*Proof.* For $\alpha \in (0,1)$ and $x >0$ we have, by strict concavity and groundedness, $h(\alpha x) > \alpha h(x) + (1-\alpha) h(0)=\alpha h(x)$.
103100

104101
Now fix $x,y\in \mathbb{R}_+, 0< x < y,$ and let $\alpha = \frac{x}{x+y};$ the previous observation gives $h(x) = h(\alpha (x+y)) > \alpha h(x+y)$ and $h(y) = h((1-\alpha) (x+y)) > (1-\alpha) h(x+y) $; summing these inequality delivers the result. $\square$
105102

@@ -512,7 +509,7 @@ We conclude that if a matching features intersecting pairs, it can be modified v
512509
When we introduce the off diagonal matching, to stress that the types sets are disjoint now.
513510

514511

515-
To simplify our explanation of this property, assume for now that each agent has its own distinct type (i.e., |X|=|Y| =N and $n=m= \mathbf{1}_N$), in which case the optimal transport problem is also referred to as *assignment problem*.
512+
To simplify our explanation of this property, assume for now that each agent has its own distinct type (i.e., $|X| = |Y| =N$ and $n=m= \mathbf{1}_N$), in which case the optimal transport problem is also referred to as *assignment problem*.
516513

517514
Let's index agents according to their types:
518515

@@ -2496,4 +2493,4 @@ plot_wages_application(wage_worker_x_1980)
24962493

24972494
```{code-cell} ipython3
24982495
plot_wage_dispersion_model(wage_worker_x_1980, bins=100)
2499-
```
2496+
```

0 commit comments

Comments
 (0)