Econometrics, Quantitative Economics, Data Science

Archive for the ‘Uncategorized’ Category

code

Code

Alfred Galichon’s github profile.

Alfred Galichon’s dockerhub profile.

Code for the math+econ+code series.
These are the github repositories for the ‘math+econ+code’ masterclass series.

TRaME: Transportation Methods for Econometrics
The TraME website is here, and sources are available on GitHub here.

Vector Quantile Regression
R and Matlab implementation of “Vector Quantile Regression” (Carlier, Chernozhukov and Galichon, Annals of Statistics, 2016).

Programming examples for Optimal Transport Methods in Economics.
These R programs are the programming examples described in Optimal Transport Methods in Economics.

The role of entropy in discrete choice models

The role of entropy in discrete choice models, part 1: the logit case

January 5, 2026

Part of the blog “Math of Choice”, based on Alfred Galichon’s forthcoming book, Discrete Choice Models: Mathematical Methods, Econometrics, and Data Science, Princeton University Press, April 2026.

Welcome to the first installment of a blog series exploring the rich mathematical landscape of discrete choice analysis. This series aims to go beyond the standard econometric recipes to uncover structural, geometric, and interdisciplinary connections—spanning optimal transport, convex analysis, and information theory—that often remain hidden in traditional textbook treatments. Whether you are an economist, a data scientist, or a mathematician, these posts will offer complementary insights into the mechanics of choice.

In this first blog post, we review the basics of random utility models with a focus on the logit model, and demonstrate the role played by entropy.

Basics of random utility models

In a random utility model, a consumer \(i\) chooses one option \(y\) from a set of alternatives \([Y] = \{1, \dots, Y\}\). The utility that consumer \(i\) derives from option \(y\) is defined as:

$$ U_{iy} = U_y + \varepsilon_{iy},$$

where \(U_y\) is the systematic utility—the part of utility based on observable attributes that is common to all consumers, and \(\varepsilon_{iy}\) is the random utility—an individual-specific random shock, drawn from a known probability distribution \(\mathcal P\). While the econometrician only sees the aggregate outcome (the “macro level”), the individual knows their specific \(\varepsilon_{iy}\) term (the “micro level”) and acts rationally to maximize their own utility.

Welfare. Consumer \(i\) solves the following optimization problem, which defines the indirect utility of consumer \(i\)
$$ u_i = \max_{y \in [Y]} \{ U_y + \varepsilon_{iy} \}. $$
To define the social welfare, we aggregate (or rather, we average) these values across the population. The welfare function \(G(U)\) is defined as the expectation with respect to \( \mathcal{P} \), the distribution of the vector of utility shocks \( (\varepsilon_{y}) \), of the indirect utility:

$$ G(U) = \mathbb{E}_{\mathcal{P}} \left[ \max_{y \in [Y]} \{ U_y + \varepsilon_{y} \} \right].$$

Market shares. The market share map \(\boldsymbol{\pi}(U) \) associates the market shares \(\pi_y\) of each option \(y\) to a vector of systematic utilities \(U\). Under suitable assumptions which ensure that the agent is almost never indifferent between two options, it is defined by:
$$\boldsymbol{\pi}_y(U) = \mathbb{P}_{\mathcal{P}} \left( U_y + \varepsilon_y \geq U_z + \varepsilon_z, \forall z \in [Y] \right).$$
There is an important connection between the welfare function \(G(U)\) and the market shares map \(\boldsymbol{\pi}(U) \). Imagine we increase \(U_y\) for a single \( y\in [Y]\) by a tiny amount \(\delta\). Then:

  • consumers who were already choosing option \(y\) (a proportion \(\pi_y\)) will see their welfare increase by exactly \(\delta\);
  • however, some consumers might switch to option \(y\) from other options because of this increase. However, since they were previously almost indifferent between their old choice and \(y\), the net gain in welfare from switching is of a second-order magnitude.

Therefore, to a first-order approximation, the total increase in social welfare is simply the proportion of existing users multiplied by the utility increase: \(\Delta G \approx \pi_y \cdot \delta\). Taking the limit as \(\delta \to 0\) shows that \({\partial G} / {\partial U_y} = \pi_y\), which leads to:

Theorem (Daly-Zachary-Williams, th. 1.2.1 p. 16). Under standard regularity assumptions, the welfare function \(G\) is differentiable with respect to the systematic utilities \(U\), and its gradient is exactly the vector of market shares:

$$ \nabla G(U) = \boldsymbol{\pi}(U). $$

The logit specialization

The logit model arises from a specific assumption about these random shocks: the \(\varepsilon_{iy}\) terms are independent and follow a centered Gumbel distribution. As a reminder, the centered, i.e. zero-mean, Gumbel distribution has the c.d.f. \(F(x) = \exp(-\exp(-(x+\gamma)))\), where \(\gamma \approx 0.577\) is the Euler-Mascheroni constant. In this specific case, the integral defining the welfare function \(G(U)\) has a beautiful closed-form solution known as the “log-sum-exp” function, a.k.a. softmax formula:
$$ G(U) = \log \left( \sum_{y \in [Y]} \exp(U_y) \right) $$
and by the Daly-Zachary-Williams theorem, the gradient of this welfare function gives us the market shares, which is the familiar Gibbs distribution:

$$ {\boldsymbol\pi}_y(U) = \frac{\exp(U_y)}{\sum_{z \in [Y]} \exp(U_z)}. $$

Aggregation of random utility. This brings us to the core insight of this post: how does the random noise \(\varepsilon\) aggregate at the macroscopic (i.e. the econometrician’s) level? In the logit model, i.e., when \( \mathcal{P} \) is the distribution of i.i.d. centered Gumbel variables, we can express the social welfare \(G(U)\) as:

Claim (Proposition 1.3.2 p. 21). We have:
$$ G(U) = \mathbb{E}_{\mathcal{P}} \left[ \max_{y \in [Y]} \{ U_y + \varepsilon_{y} \} \right] = \max_{\pi \geq 0: \sum_y \pi_y =1} \left\{ \sum_{y \in [Y]} \pi_y U_y – \sum_{y \in [Y]} \pi_y \log \pi_y \right\}.$$

This equation will be explained in detailed in the next post, in a more general setting, using convex duality. But we see that it tells a powerful story: the market as a whole acts as if a representative agent is maximizing a trade-off between standard utility and entropy, made of two terms:

  • the first term \( \sum_y \pi_y U_y \) represents order: expected individuals’ systematic utilities;
  • the second term \(-\sum_y \pi_y \log \pi_y\) represents disorder: the Shannon entropy.

In the logit model, the Gumbel-distributed individual shocks at the microscopic level aggregate perfectly into Shannon entropy at the macroscopic level. The “randomness” of the individual has become the “entropy” of the group.

In the next post, we will see how this logic generalizes to random utility models beyond logit, where different assumptions on \(\varepsilon\) yield different forms of “generalized” entropy.

← Previous post
Math of Choice
Next post →

Applied microeconometrics, Fall 2025

Applied microeconometrics

PhD Course, NYU Economics

Fall 2025

Alfred Galichon

This course will revisit some classical topics in microeconometrics (such as random utility models, dynamic discrete choice, demand estimation, matching models, and bundle choice problems) though the lenses of advanced computational methods (large scale optimization and machine learning). An important part of the course is dedicated to gaining familiarity with computational libraries such as scikit-learn, pytorch, openAI gym, chatGPT, gurobi, and others.

Lectures are delivered under a mix of in-person and online format. The language used is Python. Students not familiar with Python should contact the instructor to be provided a crash course before the start of classes.

Part 1. Random utility models

Content:
Poisson regression and logistic regression as generalized Linear Models, Lasso and Elastic Net, Min-Max Regret. Computation using Scikit-learn and TensorFlow.

Lectures:

  • L1
  • L2
  • L3
  • L4

References:

  • An Introduction to Statistical Learning with applications in Python with by James, Witten, Hastie, Tibshirani and Taylor
  • The Elements of Statistical Learning by Hastie, Tibshirani, and Friedman.
  • Generalized Linear Models by McCullagh and Nelder.

Applications:

Part 2. Dynamic discrete choice models
Content:
Rust, Markov Decision Processes, Multi-armed bandits, Q-Learning. Computation using OpenAI Gym.

Lectures:

  • L5
  • L6
  • L7
  • L8

References:

  • Rust, J. (1987). Optimal Replacement of GMC Bus Engines: An Empirical Model of Harold Zurcher. Econometrica.
  • Dynamic Programming and Optimal Control by Dimitri P. Bertsekas.
  • Reinforcement Learning: An Introduction by Richard S. Sutton and Andrew G. Barto.

Applications:

Part 3. Characteristics models
Content:
Pure characteristics model, random coefficient logit model, Power diagrams, matching models. Berry, Levinsohn, Pakes. Simulation (Probit, GHK), stochastic GD. Computation using pyopt package, pyBLP, pyTorch.

Lectures:

  • L9
  • L10
  • L11
  • L12

References:

  • Deep Learning by Aaron Courville, Ian Goodfellow, and Yoshua Bengio.
  • Train, K. (2009). Discrete Choice Methods with Simulation.
  • Galichon, A. (2016). Optimal Transport Methods in Economics.

Applications:

* automotive pricing https://www.kaggle.com/code/rkamath1/exploratory-analysis-tests-regression/input

https://pyblp.readthedocs.io/en/stable/_notebooks/tutorial/blp.html

* marriage market: https://github.com/TraME-Project/TraME-Datasets/

book-dcm

Discrete Choice Models

Mathematical Methods, Econometrics, and Data Science

Princeton University Press (to appear Spring 2026)

This text provides an overview of discrete choice models with in-depth coverage of the random utility model framework, logistic regressions, generalized linear models and applications to the gravity equation, empirical models of matching, hedonic models. The theory of multivariate extreme value is reviewed with applications to the nested logit model and other generalizations. The characteristics approach is covered as well as BLP demand estimation, and dynamic discrete choice methods. Equilibrium in models with non-transferable utility are discussed. The book features exercises and problem sets, and it includes a rich mathematical appendix, as well as extensive Python code examples.

The table of content and the book’s preface is available here.

A slide deck will be posted soon.

Sign up here to be updated on news regarding the release of the book and accompanying material.

cargese-2025

Inference on the equilibrium flow problem

Research retreat and mini-workshop held at the IASC Cargese, Corsica, France, April 21-26, 2025

Organizers: Alfred Galichon (New York University and Sciences Po) and Antoine Jacquet (Sciences Po)

Funded by the European Research Council grant ERC-CoG No. 866274 “EQUIPRICE”.

This event combines a research retreat and a mini-workshop both seeking to cross perspectives in the construction of a general framework for estimation of the “equilibrium flow problem”. The “equilibrium flow problem,” extends minimum cost flow problems in order to provide a unified network-based framework to analyze problems such as matching problems, multinomial choice problems, hedonic pricing problems, shortest path problems, dynamic programming problems, international trade flows. The equilibrium flow problem is a far-reaching extension of Optimal Transport, and thus, this project can be seen as an extension of the increasingly popular topic of “Inverse Optimal Transport”.
We have been studying the mathematical properties of the problem, with questions such as existence of equilibrium prices, investigating possible uniqueness, and lattice structure, and special attention paid to the Nontransferable Utility (NTU) limit of the problem, which, in the bipartite case, provides the Gale and Shapley stable marriage problem. An inferential theory is build using maximum likelihood estimation and minimax-regret estimators. Model selection is incorporated to estimation procedures; more precisely, the proximal mapping operator will be inserted in between two iterative phases of these procedures. Several applications are developed, one to the gravity equation in international trade, one to hedonic models, one to matching models.

Investigators and speakers:

  • Jean-David Benamou (INRIA)
  • Guillaume Carlier (Dauphine)
  • Alfred Galichon (NYU and Sciences Po)
  • Pierre Jacob (ESSEC)
  • Antoine Jacquet (Sciences Po)
  • Jean-Bernard Lasserre (Toulouse School of Economics)
  • Guillaume Pouliot (University of Chicago)
  • Maxime Sylvestre (Dauphine)

Talks are accessible to the public (on zoom) but registration is mandatory by emailing antoine.jacquet@sciencespo.fr.

Sunday April 20, 2025

Afternoon
Arrival and welcome reception.

Monday April 21, 2025

Morning
11am – 1230pm: opening session, “leveling the playing field: what are the main results we are after?” (led by Antoine Jacquet)

Afternoon
230pm – 330pm: Antoine Jacquet, “Computation of NTU aggregate equilibria with a finite-time Newton-Jacobi method.”
330pm – 4pm: coffee break.
4pm – 6pm: group work session.

Tuesday April 22, 2025

Morning
930am – 1030am: Guillaume Carlier, “Characterizations of the convex order: old and new.”
1030am – 11am: coffee break.
11am – 1230pm: group work session.

Afternoon
130pm – 330pm: Maxime Sylvestre, “Convergence of a hybrid scheme for the computation of weak inverse optimal transport”.
330pm – 4pm: coffee break.
4pm – 6pm: group work session.

Wednesday April 23, 2025

Morning
930am – 1030am: Jean-Bernard Lasserr.e, “Gaussian mixtures closest to a given measure via optimal transport”.
1030am – 11am: coffee break.
11am – 1230pm: group work session.

Afternoon: 130-330pm: Guillaume Pouliot, “Distributionally Robust Optimal Transport”.
4pm – 6pm: group work session.

Thursday April 24, 2025

Morning
930am – 1030am: Jean-David Benamou, “Stochastic Optimal Transport : A Numerical  Entropic Regularisation Approach.”
1030am – 11am: coffee break.
11am – 1230pm: group work session.

Afternoon
130pm – 230pm: Pierre Jacob, “Optimal transport and related problems in the field of Monte Carlo methods.”
230pm – 330pm: Alfred Galichon, “Some partial results on the inference in ITU matching models using LCP theory.”

330pm – 4pm: coffee break.
4pm – 6pm: group work session.

Friday April 25, 2025

Morning
930am – 1030am: concluding session (led by Maxime Sylvestre): perspectives and open problems.
1030am – 11am: coffee break.
11am – 1230pm: group work session.

Afternoon
230pm – 6pm: group work session.

Saturday April 26, 2025

Morning
Departure

Funded by the EU

Applied microeconometrics, Spring 2025

Applied microeconometrics

PhD Course, NYU Economics

Spring 2025

Alfred Galichon

This course will revisit some classical topics in microeconometrics (such as random utility models, dynamic discrete choice, demand estimation, matching models, and bundle choice problems) though the lenses of advanced computational methods (large scale optimization and machine learning). An important part of the course is dedicated to gaining familiarity with computational libraries such as scikit-learn, pytorch, openAI gym, chatGPT, gurobi, and others.

Lectures are delivered under a mix of in-person and online format. The language used is Python. Students not familiar with Python should contact the instructor to be provided a crash course before the start of classes.

Part 1. Random utility models

Content:
Poisson regression and logistic regression as generalized Linear Models, Lasso and Elastic Net, Min-Max Regret. Computation using Scikit-learn and TensorFlow.

Lectures:

  • L1
  • L2
  • L3
  • L4

References:

  • An Introduction to Statistical Learning with applications in Python with by James, Witten, Hastie, Tibshirani and Taylor
  • The Elements of Statistical Learning by Hastie, Tibshirani, and Friedman.
  • Generalized Linear Models by McCullagh and Nelder.

Applications:

Part 2. Dynamic discrete choice models
Content:
Rust, Markov Decision Processes, Multi-armed bandits, Q-Learning. Computation using OpenAI Gym.

Lectures:

  • L5
  • L6
  • L7
  • L8

References:

  • Rust, J. (1987). Optimal Replacement of GMC Bus Engines: An Empirical Model of Harold Zurcher. Econometrica.
  • Dynamic Programming and Optimal Control by Dimitri P. Bertsekas.
  • Reinforcement Learning: An Introduction by Richard S. Sutton and Andrew G. Barto.

Applications:

Part 3. Characteristics models
Content:
Pure characteristics model, random coefficient logit model, Power diagrams, matching models. Berry, Levinsohn, Pakes. Simulation (Probit, GHK), stochastic GD. Computation using pyopt package, pyBLP, pyTorch.

Lectures:

  • L9
  • L10
  • L11
  • L12

References:

  • Deep Learning by Aaron Courville, Ian Goodfellow, and Yoshua Bengio.
  • Train, K. (2009). Discrete Choice Methods with Simulation.
  • Galichon, A. (2016). Optimal Transport Methods in Economics.

Applications:

* automotive pricing https://www.kaggle.com/code/rkamath1/exploratory-analysis-tests-regression/input

https://pyblp.readthedocs.io/en/stable/_notebooks/tutorial/blp.html

* marriage market: https://github.com/TraME-Project/TraME-Datasets/

Cemmap-masterclass-2024

Cemmap masterclass, June 3-4, 2024

These lectures will introduce the optimal transport (OT) toolbox, with two applications in econometrics. The first one will pertain to the estimation of matching models. We start by introducing the discrete OT problem and its entropic regularization, and inverse OT, as well as its estimation using generalized linear models. The second application will deal with quantile methods. The one-dimensional OT problem will be discussed as well as its connections with the notions of quantile and rank is then covered. Connection with quantile regression will be discussed and the ‘vector quantile regression’ problem will then be introduced.

Part I Introduction (3h)
S1. Monge-Kantorovich duality (1h30)

S2. Computational optimal transport (1h30)

https://www.math-econ-code.org/optimal-assignment

Part II OT and matching models (3h)
S3. Matching with Transferable Utility and random utility (1h30)

https://www.math-econ-code.org/regularized-optimal-transport

S4. Estimation of matching models (1h30)

https://www.math-econ-code.org/matching-estimation

Part III OT and quantiles (2h)
S5. 1D optimal transport and quantiles (1h)

https://www.math-econ-code.org/one-dimensional-assignment

S5. Connection with quantile regression (1h)

https://www.math-econ-code.org/quantile-regression

Applied microeconometrics, Spring 2024

Applied microeconometrics

PhD Course, NYU Economics

Spring 2024

Alfred Galichon

This course will revisit some classical topics in microeconometrics (such as random utility models, dynamic discrete choice, demand estimation, matching models, and bundle choice problems) though the lenses of machine learning and state-of-the-art optimization methods. An important part of the course is dedicated to gaining familiarity with computational libraries such as scikit-learn, pytorch, openAI gym, chatGPT, gurobi, and others.

Lectures are delivered under a mix of in-person and online format. The language used is Python. Students not familiar with Python should contact the instructor to be provided a crash course before the start of classes.

Part 1. Random utility models meet Machine learning

Content:
Poisson regression and logistic regression as generalized Linear Models, Lasso and Elastic Net, Min-Max Regret. Computation using Scikit-learn and TensorFlow.

Lectures:

  • L1: Tue 1/30, 1145am-145pm (19W4, 802 and zoom)
  • L2: Thu 2/1, 1pm-3pm (19W4, 802 and zoom)
  • L3: Tue 2/6, 1145am-145pm (zoom)
  • L4: Thu 2/15, 1pm-3pm (zoom)

References:

  • An Introduction to Statistical Learning with applications in Python with by James, Witten, Hastie, Tibshirani and Taylor
  • The Elements of Statistical Learning by Hastie, Tibshirani, and Friedman.
  • Generalized Linear Models by McCullagh and Nelder.

Applications:

Part 2. Dynamic discrete choice models meet Reinforcement Learning
Content:
Rust, Markov Decision Processes, Multi-armed bandits, Q-Learning. Computation using OpenAI Gym and Stable Baselines.

Lectures:

  • L5: Thu 2/29, 1pm-3pm (zoom)
  • L6: Thu 3/7, 1pm-3pm (zoom)
  • L7: Wed 3/13, 330pm-530pm (19W4, 802 and zoom)
  • L8: Thu Mar 3/14, 1pm-3pm (19W4, 802 and zoom)

References:

  • Rust, J. (1987). Optimal Replacement of GMC Bus Engines: An Empirical Model of Harold Zurcher. Econometrica.
  • Dynamic Programming and Optimal Control by Dimitri P. Bertsekas.
  • Reinforcement Learning: An Introduction by Richard S. Sutton and Andrew G. Barto.

Applications:

Part 3. Characteristics models meet Deep Learning and Optimal Transport
Content:
Pure characteristics model, random coefficient logit model, Power diagrams, matching models.
Simulation (Probit, GHK), stochastic GD. Computation using pyopt package, pyBLP, pyTorch.

Lectures:

  • L9: Tue 4/2, 1145am-145pm (zoom)
  • L10: Tue 4/9, 1145am-145pm (zoom)
  • L11: Tue 4/16, 1145am-145pm (19W4, 802 and zoom)
  • L12: Thu 4/18, 1pm-3pm (19W4, 802 and zoom)

References:

  • Deep Learning by Aaron Courville, Ian Goodfellow, and Yoshua Bengio.
  • Train, K. (2009). Discrete Choice Methods with Simulation.
  • Galichon, A. (2016). Optimal Transport Methods in Economics.

Applications:

* automotive pricing https://www.kaggle.com/code/rkamath1/exploratory-analysis-tests-regression/input

https://pyblp.readthedocs.io/en/stable/_notebooks/tutorial/blp.html

* marriage market: https://github.com/TraME-Project/TraME-Datasets/

Part 4. Recent advances on Bundle choice
Content:
Bundle choice, assortment problem, one-to-many matching, gross substitutes, greedy algorithm 

Lectures:

  • L13: Tue 4/23, 1145am-145pm (zoom)
  • L14: Thu 4/25, 1pm-3pm (zoom) 
  • L15: Thu 5/2, 1pm-3pm (zoom)

Application:

New Perspectives on Substitutes

New Perspectives on Substitutes

Paris, June 2-3, 2023

Organizers: Alfred Galichon (New York University and Sciences Po) and Larry Samuelson (Yale University)

Substitutability has found itself at the core of modern economic modeling for two reasons.  First, it arises naturally in classes of models such as one-to-one matching, discrete choice, hedonic models, and many others.  Second, it leads to successful numerical methods, such as the greedy algorithm in the discrete case, and the Jacobi algorithm related ones in the continuous case.  Leading experts in the field will gather to make a link between discrete and continuous models and to explore recent theoretical developments and economic applications.

Abstracts can be found here.

Papers can be found here.

Slides can be found here.

The workshop is accessible to the public but registration is mandatory by emailing ag133@nyu.edu.

Friday June 2, 2023

Location: Sciences Po (27 rue Saint Guillaume, room AS)

1230pm-130pm: luncheon buffet (room AS)

Session 1

130pm-215pm: Renato Paes Leme: “Gross Substitutes: Representation and Approximation”

215pm-300pm: Xin Chen / Menglong Li: “S-Convexity and Gross Substitutability”

300pm-330pm: break

Session 2

330pm-415pm: Alexander Teytelboym: TBA

415pm-500pm: Jonathan Weinstein: “Direct Complementarity”

5pm-530pm: break

Session 3

530pm-615pm: Lucas Vernet: “Monotone Comparative Statics for Equilibrium Problems”

615-700pm: Ravi Jagadeesan: “Understanding Demand Types and Discrete Convexity”

700pm-730pm: dinner (invitation only): Chez Francoise, Aérogare des Invalides, 75007 Paris
https://goo.gl/maps/9HEZ9nMkRmcJrWkA6

Saturday June 3, 2023

Location: NYU Paris (57 boulevard Saint-Germain, 75005 Paris)

Session 4

0915am-10am: Faruk Gul: “Efficient Allocation of Indivisible Goods in Pseudo Markets with Constraints”

1000am-1045am: Pawel Dziewulski: “It’s all about parallelograms: comparative statics in quasilinear settings”

1045am-1115am: break

Session 5

1115am-1200pm: Elizabeth Baldwin: “Implementing Walrasian Equilibrium: The Language of Product-Mix Auctions”

1200pm-1245pm: Maxime Sylvestre: “Monotone comparative statics for submodular functions, with an application to aggregated deferred acceptance”

1245pm-130pm: Wolfgang Pesendorfer: “Lindahl Equilibrium as a Collective Choice Rule”

130pm lunch (invitation only): Les Papilles, 30 rue Gay Lussac, 75005 Paris
https://goo.gl/maps/73TVUbfvkG4cieXp7

Toronto-2022

Lecture series

Two lectures on matching models for family economics

Invited lectures given at the University of Toronto, April 1 and April 8, 2022

Content

The first lecture will cover transferable utility (TU) matching models with logit heterogeneity following the seminal paper by Choo and Siow (JPE 2006), its extension and parametric estimation following Galichon and Salanié (Restud 2022).
The second lecture will discuss the interplay between models of matching and collective models as depicted in Browning and Chiappori’s (Cambridge, 2014) monograph, and how models of imperfectly transferable utility (ITU) and logit or more general heterogeneity are needed to address this new class of problems, as is done in Galichon, Kominers and Weber (JPE, 2019).

Schedule

April 1 and April 8, 10am-12pm Eastern time, online.

Course material

The lecture slides are available from the following github repository.

References

These lectures are based on:
[GS] Galichon and Salanie (2022). Cupids invisible hands: Social Surplus and Identification in Matching Models. Review of Economic Studies.
[GKW] Galichon, Kominers and Weber (2019). Costly Concessions: An Empirical Framework for Matching with Imperfectly Transferable Utility (2019). Journal of Political Economy.
[MEC-OPTIM] Galichon (2022). `math+econ+code’ masterclass on optimal transport and economic applications. https://www.math-econ-code.org/mec-optim
[MEC-EQUIL] Galichon (2022). `math+econ+code’ masterclass on equilibrium transport and matching models in economics. https://www.math-econ-code.org/mec-equil

Outline

Lecture 1: Matching models with transferable utility:
Matching models as an optimization problem / regularized optimal transport / generalized linear models
Lecture 2: Matching models with imperfectly transferable / nontransferable utility:
Matching models as an equilibrium problem with substitutes