TY - JOUR
T1 - A Guide on Solving Non-convex Consumption-Saving Models
AU - Druedahl, Jeppe
PY - 2021
Y1 - 2021
N2 - Consumption-saving models with adjustment costs or discrete choices are typically hard to solve numerically due to the presence of non-convexities. This paper provides a number of tools to speed up the solution of such models. Firstly, I use that many consumption models have a nesting structure implying that the continuation value can be efficiently pre-computed and the consumption choice solved separately before the remaining choices. Secondly, I use that an endogenous grid method extended with an upper envelope step can be used to solve efficiently for the consumption choice. Thirdly, I use that the required pre-computations can be optimized by a novel loop reordering when interpolating the next-period value function. As an illustrative example, I solve a model with non-durable consumption and durable consumption subject to adjustment costs. Combining the provided tools, the model is solved almost 50 times faster than with standard value function iteration for a given level of accuracy. Software is provided in both Python and C++.
AB - Consumption-saving models with adjustment costs or discrete choices are typically hard to solve numerically due to the presence of non-convexities. This paper provides a number of tools to speed up the solution of such models. Firstly, I use that many consumption models have a nesting structure implying that the continuation value can be efficiently pre-computed and the consumption choice solved separately before the remaining choices. Secondly, I use that an endogenous grid method extended with an upper envelope step can be used to solve efficiently for the consumption choice. Thirdly, I use that the required pre-computations can be optimized by a novel loop reordering when interpolating the next-period value function. As an illustrative example, I solve a model with non-durable consumption and durable consumption subject to adjustment costs. Combining the provided tools, the model is solved almost 50 times faster than with standard value function iteration for a given level of accuracy. Software is provided in both Python and C++.
KW - Continuous and discrete choices
KW - Endogenous grid method
KW - Occasionally binding constraints
KW - Post-decision states
KW - Stochastic dynamic programming
U2 - 10.1007/s10614-020-10045-x
DO - 10.1007/s10614-020-10045-x
M3 - Journal article
AN - SCOPUS:85094166081
VL - 58
SP - 747
EP - 775
JO - Computational Economics
JF - Computational Economics
SN - 0927-7099
ER -