Course Outline

This is the outline for the course Computational Economics.

0.1 Course-wide expectations

  • Languages & tools: Python, JAX, Git, Quarto
  • Core numerical skills: root finding, interpolation, quadrature, dynamic programming, simulation, fixed points

1 Introduction to Python

1.1 Readings / references

  • Python Software Foundation (2026)
  • Harris et al. (2020)
  • Virtanen et al. (2020)
  • McKinney (2010)
  • Hunter (2007)

2 Brock and Mirman Model

2.1 Readings

  • Brock and Mirman (1972)

3 Real Business Cycle Model w/ JAX

3.1 Readings

  • Kydland and Prescott (1982)
  • G. D. Hansen (1985)
  • King, Plosser, and Rebelo (1988)
  • Prescott (1986)

3.2 JAX Readings

  • Bradbury et al. (2018)

4 Aiyagari Model

4.1 Readings


5 Krusell–Smith Model

5.1 Readings

  • Krusell and Smith (1998)

6 Solving Krusell–Smith Model using Machine Learning Methods

6.1 Readings

  • Maliar, Maliar, and Winant (2021)
  • Han, Yang, and E (2021)
  • Maliar and Maliar (2022)
  • Achdou, Lasry, and Lions (2022)
  • Gu et al. (2024)
  • Yang et al. (2025)

7 Continuous-Time Model

7.1 Readings

  • Achdou et al. (2022)
  • Ahn et al. (2018)
  • Brunnermeier and Sannikov (2014)
  • He and Krishnamurthy (2013)

8 HANK

8.1 Readings

  • Kaplan, Moll, and Violante (2018)
  • Auclert (2019)
  • Guerrieri and Lorenzoni (2017)

9 Sequence-Space Jacobian

9.1 Readings

  • Auclert et al. (2021)

10 Macro Public Finance

10.1 Readings

  • Conesa, Li, and Li (2023)

11 Structural Estimation

11.1 Readings

  • L. P. Hansen (1982)
  • McFadden (1989)
  • Pakes and Pollard (1989)
  • Gouriéroux, Monfort, and Renault (1993)
  • Rust (1987)
  • Bajari, Benkard, and Levin (2007)

12 High Performance Computing

12.1 Readings

  • Rocklin (2015)
  • OpenMP Architecture Review Board (2021)
  • Message Passing Interface Forum (2025)

References

Achdou, Yves, Jiequn Han, Jean-Michel Lasry, Pierre-Louis Lions, and Benjamin Moll. 2022. “Income and Wealth Distribution in Macroeconomics: A Continuous-Time Approach.” The Review of Economic Studies 89 (1): 45–86. https://doi.org/10.1093/restud/rdab002.
Achdou, Yves, Jean-Michel Lasry, and Pierre-Louis Lions. 2022. “Simulating Numerically the Krusell-Smith Model with Neural Networks.” arXiv Preprint arXiv:2211.07698. https://arxiv.org/abs/2211.07698.
Ahn, SeHyoun, Greg Kaplan, Benjamin Moll, Thomas Winberry, and Christian Wolf. 2018. “When Inequality Matters for Macro and Macro Matters for Inequality.” NBER Macroeconomics Annual 32 (1): 1–75. https://doi.org/10.1086/696046.
Aiyagari, S. Rao. 1994. “Uninsured Idiosyncratic Risk and Aggregate Saving.” Quarterly Journal of Economics 109 (3): 659–84. https://doi.org/10.2307/2118417.
Auclert, Adrien. 2019. “Monetary Policy and the Redistribution Channel.” American Economic Review 109 (6): 2333–67. https://doi.org/10.1257/aer.20160137.
Auclert, Adrien, Bence Bardóczy, Matthew Rognlie, and Ludwig Straub. 2021. “Using the Sequence-Space Jacobian to Solve and Estimate Heterogeneous-Agent Models.” Econometrica 89 (5): 2379–419. https://doi.org/10.3982/ECTA17434.
Bajari, Patrick, C. Lanier Benkard, and Jonathan Levin. 2007. “Estimating Dynamic Models of Imperfect Competition.” Econometrica 75 (5): 1331–70. https://doi.org/10.1111/j.1468-0262.2007.00796.x.
Bewley, Truman F. 1986. “Stationary Monetary Equilibrium with a Continuum of Independently Fluctuating Consumers.” In Contributions to Mathematical Economics in Honor of Gerard Debreu, edited by Werner Hildenbrand and Andreu Mas-Colell, 79–102. Amsterdam: North-Holland.
Bradbury, James, Roy Frostig, Peter Hawkins, Matthew James Johnson, Chris Leary, Dougal Maclaurin, George Necula, et al. 2018. JAX: Composable Transformations of Python+NumPy Programs.” Computer software. https://github.com/jax-ml/jax.
Brock, William A., and Leonard J. Mirman. 1972. “Optimal Economic Growth and Uncertainty: The Discounted Case.” Journal of Economic Theory 4 (3): 479–513. https://doi.org/10.1016/0022-0531(72)90135-4.
Brunnermeier, Markus K., and Yuliy Sannikov. 2014. “A Macroeconomic Model with a Financial Sector.” American Economic Review 104 (2): 379–421. https://doi.org/10.1257/aer.104.2.379.
Conesa, Juan Carlos, Bo Li, and Qian Li. 2023. “A Quantitative Evaluation of Universal Basic Income.” Journal of Public Economics 223: 104881. https://doi.org/https://doi.org/10.1016/j.jpubeco.2023.104881.
Gouriéroux, Christian, Alain Monfort, and Eric Renault. 1993. “Indirect Inference.” Journal of Applied Econometrics 8 (S1): S85–118. https://doi.org/10.1002/jae.3950080507.
Gu, Zhouzhou, Mathieu Laurière, Sebastian Merkel, and Jonathan Payne. 2024. “Global Solutions to Master Equations for Continuous Time Heterogeneous Agent Macroeconomic Models.” arXiv Preprint arXiv:2406.13726. https://doi.org/10.48550/arXiv.2406.13726.
Guerrieri, Veronica, and Guido Lorenzoni. 2017. “Credit Crises, Precautionary Savings, and the Liquidity Trap.” Quarterly Journal of Economics 132 (3): 1427–67. https://doi.org/10.1093/qje/qjx005.
Han, Jiequn, Yucheng Yang, and Weinan E. 2021. “DeepHAM: A Global Solution Method for Heterogeneous Agent Models with Aggregate Shocks.” Swiss Finance Institute Research Paper No. 25-06, Forthcoming, Quantitative Economics. https://ssrn.com/abstract=3999635.
Hansen, Gary D. 1985. “Indivisible Labor and the Business Cycle.” Journal of Monetary Economics 16 (3): 309–27. https://doi.org/10.1016/0304-3932(85)90039-X.
Hansen, Lars Peter. 1982. “Large Sample Properties of Generalized Method of Moments Estimators.” Econometrica 50 (4): 1029–54. https://doi.org/10.2307/1912775.
Harris, Charles R., K. Jarrod Millman, Stéfan J. van der Walt, et al. 2020. “Array Programming with NumPy.” Nature 585 (7825): 357–62. https://doi.org/10.1038/s41586-020-2649-2.
He, Zhiguo, and Arvind Krishnamurthy. 2013. “Intermediary Asset Pricing.” American Economic Review 103 (2): 732–70. https://doi.org/10.1257/aer.103.2.732.
Huggett, Mark. 1993. “The Risk-Free Rate in Heterogeneous-Agent Incomplete-Insurance Economies.” Journal of Economic Dynamics and Control 17 (5–6): 953–69. https://doi.org/10.1016/0165-1889(93)90024-M.
Hunter, John D. 2007. “Matplotlib: A 2D Graphics Environment.” Computing in Science & Engineering 9 (3): 90–95. https://doi.org/10.1109/MCSE.2007.55.
Kaplan, Greg, Benjamin Moll, and Giovanni L. Violante. 2018. “Monetary Policy According to HANK.” American Economic Review 108 (3): 697–743. https://doi.org/10.1257/aer.20160042.
King, Robert G., Charles I. Plosser, and Sergio T. Rebelo. 1988. “Production, Growth and Business Cycles: I. The Basic Neoclassical Model.” Journal of Monetary Economics 21 (2–3): 195–232. https://doi.org/10.1016/0304-3932(88)90030-X.
Krusell, Per, and Anthony A. Smith. 1998. “Income and Wealth Heterogeneity in the Macroeconomy.” Journal of Political Economy 106 (5): 867–96. https://doi.org/10.1086/250034.
Kydland, Finn E., and Edward C. Prescott. 1982. “Time to Build and Aggregate Fluctuations.” Econometrica 50 (6): 1345–70. https://doi.org/10.2307/1913386.
Maliar, Lilia, and Serguei Maliar. 2022. “Deep Learning Classification: Modeling Discrete Labor Choice.” Journal of Economic Dynamics and Control 135: 104295. https://doi.org/10.1016/j.jedc.2021.104295.
Maliar, Lilia, Serguei Maliar, and Pablo Winant. 2021. “Deep Learning for Solving Dynamic Economic Models.” Journal of Monetary Economics 122: 76–101. https://doi.org/10.1016/j.jmoneco.2021.07.004.
McFadden, Daniel. 1989. “A Method of Simulated Moments for Estimation of Discrete Response Models Without Numerical Integration.” Econometrica 57 (5): 995–1026. https://doi.org/10.2307/1913621.
McKinney, Wes. 2010. “Data Structures for Statistical Computing in Python.” In Proceedings of the 9th Python in Science Conference (SciPy 2010), 56–61. https://doi.org/10.25080/Majora-92bf1922-00a.
Message Passing Interface Forum. 2025. MPI: A Message-Passing Interface Standard, Version 5.0. https://www.mpi-forum.org/docs/.
OpenMP Architecture Review Board. 2021. OpenMP Application Programming Interface, Version 5.2. https://www.openmp.org/wp-content/uploads/OpenMP-API-Specification-5-2.pdf.
Pakes, Ariel, and David Pollard. 1989. “Simulation and the Asymptotics of Optimization Estimators.” Econometrica 57 (5): 1027–57. https://doi.org/10.2307/1913622.
Prescott, Edward C. 1986. “Theory Ahead of Business Cycle Measurement.” Quarterly Review. Federal Reserve Bank of Minneapolis. https://doi.org/10.21034/qr.1042.
Python Software Foundation. 2026. “Python.” https://www.python.org/.
Rocklin, Matthew. 2015. “Dask: Parallel Computation with Blocked Algorithms and Task Scheduling.” In Proceedings of the 14th Python in Science Conference (SciPy 2015), 130–36. https://doi.org/10.25080/Majora-7b98e3ed-013.
Rust, John. 1987. “Optimal Replacement of GMC Bus Engines: An Empirical Model of Harold Zurcher.” Econometrica 55 (5): 999–1033. https://doi.org/10.2307/1911259.
Virtanen, Pauli, Ralf Gommers, Travis E. Oliphant, et al. 2020. SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python.” Nature Methods 17 (3): 261–72. https://doi.org/10.1038/s41592-019-0686-2.
Yang, Yucheng, Chiyuan Wang, Andreas Schaab, and Benjamin Moll. 2025. “Structural Reinforcement Learning for Heterogeneous Agent Macroeconomics.” arXiv Preprint arXiv:2512.18892. https://doi.org/10.48550/arXiv.2512.18892.