TOOLS FOR SOLVING DYNAMIC EQUILIBRIUM MODELS
Michel JUILLARD (CEPREMAP and Université de Paris 8)
Dynamic equilibrium models appear today in many streams of the literature:
applied general equilibrium, overlapping generation models, growth theory, business
cycle analysis, monetary policy, environmental economics, to cite a few. Because
they are usually built from first principles, they use nonlinear relationships
and place emphasis on explicit model consistent expectations. These two last
characteristics combined make solving for the equilibrium trajectory outside
of the steady state difficult and require most of the time numerical methods
making heavy use of the computer.
These paper present two algorithms for solving such problems, one in a deterministic
environment, the other one for stochastic problems. The first one, the Laffargue-Boucekkine-Juillard
(LBJ) algorithm, solves simultaneously all the equations of the model for all
the periods in the simulation using a Newton-Raphson method. This is made possible
despite the huge size of the problem by using the particular structure of the
Jacobian matrix in such problems. Experience has proven this approach effective
for models containing a few hundred equations for one period.
In a stochastic environment, it is by nature of the problem impossible to solve
for a single trajectory. Instead, the solution here takes the form of approximating
the decision rule followed by the agents of the model in determining the forward-looking
variables. A promising approach is to use a Taylor expansion of the original
model in order to compute the coefficients of the Taylor expansion of the decision
rules. This is indeed a perturbation approach. We are now able to compute second-order
approximations of models with about one hundred equations and to get an evaluation
of the extend in which future volatility of the shocks has a level effect of
current decisions. This is completely missed by linearization methods which
have the property of certainty equivalence.
These two algorithms are illustrated thru the use of DYNARE: a MATLAB tool
box written by the author for solving such problems.