Projection methods are perceived to be difficult to implement, but I have developed the Promes toolbox that can solve DSGE models with projection methods using Matlab. To use the toolbox the modeler has to carry out four tasks:
- supply a model file which computes the Euler equation residuals;
- set the interval where the policy function should be approximated;
- supply an initial guess for the policy function;
- select an algorithm.
Based on these inputs the toolbox constructs the appropriate grid, and solves the policy function using the selected algorithm. The toolbox includes a function that evaluates the policy function, taking the state variables as input.
With Promes v05.0.0 you have the options to approximate the policy function with:
- a spline;
- a complete Chebyshev polynomial;
- Smolyak’s algorithm (using code by Rafa Valero);
- a complete polynomial based on monomials.
A simple standard RBC model can be solved in less than 0.05 seconds with each of the basis functions. Computation times do increase strongly with the complexity of the model, and a model with four continuous state variables and two policy variables can solved in a couple of seconds.
For v05.0.0 you will need the Optimization Toolbox, but a future release will also include Fixed Point Iteration, which does not require the Optimization Toolbox.
To install Promes v05.0.0:
Unpack the zip file in your destination folder. This will add the folders PROMES_v05.0.0 and TOOLS to the destination folder;
To use the Promes toolbox the folder PROMES_v05.0.0 and the subfolders grid_subfun and smolyak_subfun need to be on the searchpath in Matlab. You can run examples from the folder PROMES_v05.0.0/Examples.
I have attached the manual for further information. The toolbox and manual include several examples on how to use the toolbox. I have also attached a more technical paper which evaluates several of the algorithms for three DSGE models, including one with an attracting limit cycle. This paper is also available at my personal website Sijmen Duineveld - Research.
All feedback or ideas are more than welcome at firstname.lastname@example.org.