Using inverse Euler equations to solve multidimensional discrete-continuous dynamic models: A general method
Repository for `Using inverse Euler equations to solve multidimensional discrete-continuous dynamic models: A general method' by Dobrescu and Shanker.
We develop a general inverse Euler equation method to efficiently solve any multidimensional stochastic dynamic optimization problem with agents facing discrete-continuous choices and occasionally binding constraints. First, we provide a discrete time analogue to the Hamiltonian to (painlessly) recover the generalized necessary Euler equation. We then establish necessary and sufficient conditions to determine the existence of an Euler equation inverse, and the structure of the exogenous computational grid on which the inverse is well-defined. To handle applications with non-convexities generated by discrete choices, we finally present an off-the-shelf `rooftop-cut' algorithm guaranteed to asymptotically recover the optimal policy function under standard economic assumptions. We demonstrate our approach using two workhorse applications in the literature, and document the computational speed and accuracy gains our method generates.
With four constraints regions as in Dreudhal and Jorgensen (2017).
python3 plotPension.py
RFC+ Delaunay | G2EGM | |
---|---|---|
Total time (min) | 2.61 | 2.64 |
Euler errors | ||
All (average) | -6.660 | -6.572 |
5th percentile | -7.772 | -7.631 |
95th percentile | -4.423 | -4.964 |
Median | -6.930 | -6.713 |
Additional constraint upper-bound on pension deposits and six constrained regions (50% increase in constrained regions).
Under G2EGM, number of total interpolants over which to calculate grid points is now six, leading to 50% increase in time.
Using Theorem 1 to eliminate sub-optimal points that violate complementary slackness in the exogenous grid, the number of grid points in the six region case can be reduced to be approximately equal to the number of points in the four region case; this is because in the RFC implmentation, the optimal endogenous grid points cover approximately the same area in the endogenous grid space.
RFC+ Delaunay | G2EGM | |
---|---|---|
Total time (min) | 2.32 | 3.73 |
Euler errors | ||
All (average) | -6.542 | -5.872 |
5th percentile | -7.855 | -7.593 |
95th percentile | -3.982 | -1.807 |
Median | -6.844 | -6.531 |