Skip to content

esbenscriver/SolveOneToOneMatching

Repository files navigation

arXiv CI CD

Description

This script implements a fixed-point iteration algorithm in JAX to solve a class of one-to-one matching models with linear transfers.

The main script, MatchingModel.py, sets up and solves a general system of fixed-point equations for the set of equilibrium transfers in a one-to-one matching model for a given specification of discrete choice models. The Script DiscreteChoiceModel.py contains three discrete choice models. Finally, the script examples/main.py sets up and solves three special cases of one-to-one matching models with transferable utility, where the discrete choices of agents on both sides of the matching market are described by:

  • Logit model
  • Nested logit model
  • Generalized nested logit model

Citations

If you use this script in your research, I ask that you also cite Andersen (2025).

@article{andersen2025note,
  title={Note on solving one-to-one matching models with linear transferable utility}, 
  author={Esben Scrivers Andersen},
  year={2025},
  eprint={2409.05518},
  archivePrefix={arXiv},
  primaryClass={econ.GN},
  url={https://arxiv.org/pdf/2409.05518}, 
}

Dependencies

In order to run the scripts, you need to have installed JAX, Simple Pytree, JAXopt, and squarem-JAXopt. The latter is an implementation of the SQUAREM accelerator, see Du and Varadhan (2020).

About

JAX implementation of a fixed-point algorithm for solving one-to-one matching models with transferable utility.

Resources

License

Stars

Watchers

Forks

Languages