Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a...

51
Linearization and Perturbation Methods for Solving DSGE Models Lawrence J. Christiano December 16, 2019

Transcript of Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a...

Page 1: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Linearization and Perturbation Methodsfor Solving DSGE Models

Lawrence J. Christiano

December 16, 2019

Page 2: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Outline

• A Toy Example to Illustrate Basic Ideas

– Model solution as an unknown function, which solves afunctional equation.

– Except in a few examples, the unknown function must beapproximated.

– Linearization and Perturbation (these are by far the mostheavily used methods).

• Neoclassical model (Real Business Cycle model without hoursworked decision).

– Functional equation that defines the solution function.– Linearization and Perturbation.

Page 3: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Toy Example

• Suppose that: (i) x is some exogenous variable and (ii) y isdefined implicitly by the following equation:

h (x, y) = 0, for all x ∈ X

• Natural to think of the solution as a function, g (x) :

y = g (x) , where g solves functional equation, R :

‘Error Function′︷ ︸︸ ︷R (x; g) = h (x, g (x)) = 0, for all x ∈ X.

Page 4: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Toy Example

• The concept of a solution as a function, g, that solves afunctional equation, R (x; g) = 0, was a major insight of 1970sand 1980s:

– Nancy L. Stokey and Robert E. Lucas, Jr., with Edward C.Prescott, Recursive Methods in Economic Dynamics, HarvardUniversity Press, 1989.

– Ljungqvist and Sargent’s, Recursive Macroeconomic Theory,4rd Edition, MIT Press, 2018.

• Later, we will also consider another function, the value function.

Page 5: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

The Need to Approximate

• Finding the function, g, is a big problem except in special cases(one special case: h is linear)

– “infinite number of unknowns (i.e., one value of g for eachpossible x ∈ X) in an infinite number of equations (i.e., oneequation, h (x, g (x)) = 0 for each possible x ∈ X).”

• Two approaches:

– Linearization and Perturbation– Also, Projection (see this) and Extended Path (see this

manuscript and this and this code), but will not do that inthese notes.

Page 6: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Linearization• If h(x, y) were linear, then finding the solution would be easy,

since linear g would work.

• To do linearization need that there exists a value of x, say x∗,where you know the solution:

y∗ = g (x∗)

• Then approximate h (x, y) with

H (x, y) = h0 + hx (x∗, y∗) (x− x∗) + hy (x∗, y∗) (y− y∗) ,

where h0 ≡ h (x∗, y∗) = 0 because y∗ = g (x∗) .• Easy to find G (x) such that

H (x, G (x)) = 0, for all x ∈ X

obviously, must have y∗ = G (x∗).

Page 7: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Linearization• With H linear, a linear G works:

G (x) = y∗ + Gx (x− x∗) ,

where Gx is a parameter whose value is to be determined.

• Value of Gx determined by requirement

H (x, G (x)) = 0, for all x ∈ X

where

H (x, G (x)) = hx (x∗, y∗) (x− x∗) + hy (x∗, y∗) (G (x)− y∗)=[hx (x∗, y∗) + hy (x∗, y∗)Gx

](x− x∗)

• For this to be zero for all x ∈ X requires

Gx =−hx (x∗, y∗)hy (x∗, y∗)

, better have hy (x∗, y∗) 6= 0!

Page 8: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Perturbation• Linearization is a special case of Perturbation.

– Perturbation can be used to obtain higher orderapproximations beyond Linearization.

– Provides a transparent way to think about treatment of shocks.– Perturbation is the primary method used in Dynare (Dynamic

Rational Expectations Models).

• Perturbation obtains the Taylor series expansion of thefunction, g, around x = x∗.

• But, there are caveats associated with a Taylor seriesapproximation.

– Global properties of Taylor series expansion not necessarily verygood.

– Does not work when there are important non-differentiabilities(e.g., lower bound constraint on interest rate and occasionallybinding participation constraints in some financial frictionmodels).

Page 9: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Taylor Series Expansion

• The Perturbation method computes the Taylor seriesapproximation of the solution.

• Will have a close look at the Taylor series expansion, beforegoing back to Perturbation.

Page 10: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Taylor Series Expansion• Let                   be k+1 differentiable on the open interval and continuous on the closed interval between a and x. – Then,

– where 

– Question: is the Taylor series expansion a good approximation for f?

f : R → R

fx Pkx Rkx

Taylor series expansion about x a :Pkx fa f 1ax − a 1

2! f2ax − a2 . . . 1

k! fk ax − ak

remainder:Rkx 1

k1! fk1x − ak1, for some between x and a

Page 11: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Taylor Series Expansion• It’s not as good as you might have thought.

• The next slide exhibits the accuracy of the Taylor series approximation to the Rungefunction.– In a small neighborhood of the point where the approximation is computed (i.e., 0), higher order Taylor series approximations are increasingly accurate.

– Outside that small neighborhood, the quality of the approximation deteriorates with higher order approximations.

Page 12: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

-1.5 -1 -0.5 0 0.5 1 1.50.2

0.4

0.6

0.8

1

1.2

1.4

Taylor Series Expansions about 0 of Runge Function

5th order Taylor series expansion

10th order expansion

25th orderexpansion

Increasing order of approximation leads to improvedaccuracy in a neighborhood of zero and reduced accuracyfurther away.

11 x2

x

Page 13: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Taylor Series Expansion• Another example: the log function

– It is often used in economics. – Surprisingly, Taylor series expansion does not provide a great global approximation.

• Approximate log(x) by its kth order Taylor series approximation at the point, x=a:

– This expression diverges as N→∞ for 

logx loga ∑i1

k

−1i1 1ix − aa

i

x such that x − aa ≥ 1

Page 14: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Taylor Series Expansion of Log Function About x=1

1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

log(x)

2nd order approximation

5th order approximation

10th order approximation

25th order approximation

Taylor series approximation deterioratesinfinitely for x>2 as order of approximationincreases.

x

Page 15: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Taylor Series Expansion• In general, cannot expect Taylor series expansion to converge to actual function, globally. 

– There are some exceptions, e.g.,  Taylor’s series expansion of                                           about x=0converges to f(x) even for x far from 0.

– Problem: in general it is difficult to say for what values of x the Taylor series expansion gives a good approximation.            

fx ex , cosx, sinx

Page 16: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Taylor Versus Weierstrass• Problems with Taylor series expansion does not represent a

problem with polynomials per se as approximating functions.

• Weierstrass approximation theorem: for every continuous function,f(x), defined on [a,b], and for every  0,there exists a finite‐ordered polynomial, p(x), on [a,b] such that

• Weierstrass – polynomials may approximate well, even if sometimes the Taylor series expansion is not very good.

• Weierstrass theorem asserts that there exists some sequence of polynomials the limit of which approximates a function well.– We used the Runge function to illustrate a sequence that does not

approximate well: Taylor series expansion of Runge about zero.

|fx − px| , for all x ∈ a,b

Page 17: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

• Ok, we’re done with the digression on the Taylor series expansion.

• Now, back to the discussion of the perturbation method.– It approximates a solution using the Taylor series expansion.

Page 18: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Perturbation Method• Suppose there is a point,             , where we know the value taken on by the function, g, that we wish to approximate:

• Use the implicit function theorem to approximate g in a neighborhood of 

• Note:

x∗ ∈ X

Rx;g 0 for all x ∈ X→

Rjx;g ≡ djdxjRx;g 0 for all j, all x ∈ X.

gx∗ g∗, some x∗

x∗

Page 19: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Perturbation, cnt’d• Differentiate R with respect to   and evaluate the result at       :

• Do it again!

R1x∗ ddx hx,gx|xx

∗ h1x∗,g∗ h2x∗,g∗g′x∗ 0

→ g′x∗ − h1x∗,g∗h2x∗,g∗

xx∗

R2x∗ d2

dx2 hx,gx|xx∗ h11x∗,g∗ 2h12x∗,g∗g′x∗

h22x∗,g∗g′x∗2 h2x∗,g∗g′′x∗.

→ Solve this linearly for g′′x∗.

Page 20: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Perturbation, cnt’d• Preceding calculations deliver (assuming enough differentiability, appropriate invertibility, a high tolerance for painful notation!), recursively:

• Then, have the following Taylor’s series approximation:

g′x∗ ,g′′x∗ , . . . ,gnx∗

gx ≈ ĝxĝx g∗ g′x∗ x − x∗

12 g

′′x∗ x − x∗ 2 . . . 1n! g

nx∗ x − x∗n

Page 21: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Perturbation, cnt’d

• Check….• Study the graph of

– over                to verify that it is everywhere close to zero (or, at least in the region of interest). 

Rx;ĝ

x ∈ X

Page 22: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Example: a Circle• Function:

• For each x except x=‐2, 2, there are two distinct ythat solve h(x,y)=0:

• The perturbation method does not require that the function g that solves h(x,g(x))=0 be unique. – When you specify the value of the function,  g, at the point of the expansion, you select the function whose Taylor series expansion is delivered by the perturbation method.

hx,y x2 y2 − 4 0.

y g1x ≡ 4 − x2 , y g2x ≡ − 4 − x2 .

Page 23: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Example of Implicit Function Theorem

x

y

2

2

‐2

‐2

g′x∗ − h1x∗,g∗h2x∗,g∗

− x∗

g∗ h2 had better not be zero!

gx ≃ g∗ − x∗

g∗ x − x∗

hx,y x2 y2 − 4 0.

Page 24: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Outline

• A Toy Example to Illustrate Basic Ideas

– Model solution as an unknown function, which solves afunctional equation. X

– Except in a few examples, the unknown function must beapproximated. X

– Linearization and Perturbation (these are by far the mostheavily used methods). X

• Neoclassical model (Real Business Cycle model without hoursworked decision).

– Functional equation that defines the solution function.– Linearization and Perturbation.

Page 25: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Neoclassical Model• Resource constraint:

ct + Kt+1 − (1− δ)Kt = AtKαt , δ, α ∈ (0, 1)

• Preferences:

E0

∑t=0

βtu (ct) , u (ct) =c1−γ

t − 11− γ

, γ > 0.

• First order condition associated with optimalconsumption/saving decision:

u′ (ct) = Etβu′ (ct+1) fK,t+1, where

fK,t+1 = αAt+1Kα−1t+1 + 1− δ, t ≥ 0.

• Law of motion of technology:

At = Aρt−1eεt , εt is iidNormal

(0, σ2

ε

).

Page 26: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Neoclassical Model in Special Case• In the special case, δ, γ = 1, the Fonc is:

1ct

= EtβαAt+1Kα−1

t+1ct+1

, t ≥ 0,

or,1

AtKαt − Kt+1

= EtβαAt+1Kα−1

t+1At+1Kα

t+1 − Kt+2.

• Consider the following function,

Kt+1 = αβAtKαt , ”saving is a fixed fraction, αβ, of income”.

It satisfies the Fonc, for all t :

1(1− αβ)AtKα

t= Et

βαAt+1Kα−1t+1

(1− αβ)At+1Kαt+1

= Et1

(1− αβ)AtKαt

.

• So, solution is log-linear in K : kt+1 = log (αβ) + αkt, wherekt+1 = log Kt+1, at = log At

Page 27: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Transforming to Logs• Transformation:

kt = log (Kt) , at = log (At) .

• Why?– When δ, γ = 1, the solution is exactly linear in logs, maybe

solution is nearly linear in logs for δ, γ 6= 1.– Generally easier to understand relationships in terms of logs.

• Resource constraint:

ct =

≡f (kt,at)︷ ︸︸ ︷[exp (at + αkt) + (1− δ) exp (kt)]− exp (kt+1)

• Return on capital:

fK (kt+1, at+1) = α exp (at+1 + (α− 1) kt+1) + (1− δ)

• Shock: at = ρat−1 + εt.

Page 28: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

General γ, δ Case in Logs• First order condition is:

Et{c−γt − βc−γ

t+1fK (kt+1, at+1)} = 0,

where

fK (kt+1, at+1) = α exp (at+1 + (α− 1) kt+1) + (1− δ) .

• Then, the first order condition is:

Etv (kt, kt+1, kt+2, at, at+1) = 0,

where at is AR(1) and

v (kt, kt+1, kt+2, at, at+1) ≡ u′ (f (kt, at)− exp (kt+1))

−βu′ (f (kt+1, at+1)− exp (kt+2)) fK (kt+1, at+1)

Page 29: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Solving the Neoclassical Model• Let,

kt+1 = g (kt, at) ,

be the solution to the model.

• The function, g, solves

R (kt, at; g) = Etv (kt, g (kt, at) , g [g (kt, at) , at+1] , at, at+1) = 0,

for all at, kt ∈ (−∞, ∞) where

at+1 = ρat + εt+1.

• In general, tough to find g exactly (one exception: δ = γ = 1case!).

– Problem made trivial when we replace v by a linearapproximation.

Page 30: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Non-stochastic Steady State• Most model solutions need model’s non-stochastic steady state:

kt = kt+1 = kt+2 = k∗ and at = at+1 = 0.

• To find k∗, solve

v (k∗, k∗, k∗, 0, 0) = 0,

or,

u′ (f (k∗, 0)− exp (k∗)) = βu′ (f (k∗, 0)− exp (k∗)) fK (k∗, 0) ,

or,1 = βfK (k∗, 0) ,

or,

k∗ =1

1− αlog[

αβ

1− (1− δ) β

]• Computing the steady state trivial in this example.

– In many cases this is very hard.

Page 31: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

(log) Linearization Strategy• With non-stochastic steady state in hand, replace v by V :

V (kt, kt+1, kt+2) = v0 + v1 (kt − k∗) + v2 (kt+1 − k∗)+ v3 (kt+2 − k∗) + v4at + v5at+1,

where v0 = v (k∗, k∗, k∗, 0, 0) = 0,

v1 =∂v (kt, kt+1, kt+2, at, at+1)

∂kt|kt=kt+1=kt+2=k∗,at=at+1=0

and similarly for v2, v3.• Also,

v4 =∂v (kt, kt+1, kt+2, at, at+1)

∂at|kt=kt+1=kt+2=k∗,at=at+1=0,

and similarly for v5.

Page 32: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

(log) Linearization Strategy

• When V is linear, a linear G solves the model:

G (kt, at) = k∗ + Gk (kt − k∗) + Gaat,

where Gk, Ga accomplish the following:

EtV (kt, G (kt, at) , G [G (kt, at) , at+1] , at, at+1) = 0,

for all at, kt ∈ (−∞, ∞) and

V (kt, kt+1, kt+2) = v1 (kt − k∗) + v2 (kt+1 − k∗)+ v3 (kt+2 − k∗) + v4at + v5at+1.

Page 33: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Solving for Gk, Ga

• Substitute G (kt, at) = k∗ + Gk (kt − k∗) + Gaat into V:

EtV (kt, kt+1, kt+2) = Et{v1 (kt − k∗) + v2 (kt+1 − k∗)+ v3 (kt+2 − k∗) + v4at + v5at+1}

• Note:

kt+1 − k∗ = G (kt, at)− k∗ = Gk (kt − k∗) + Gaat

kt+2 − k∗ = Gk (kt+1 − k∗) + Gaat+1

= Gk (Gk (kt − k∗) + Gaat) + Gaat+1

Page 34: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Solving for Gk, Ga

• Substitute G (kt, at) = k∗ + Gk (kt − k∗) + Gaat into V:

EtV (kt, kt+1, kt+2) = Et{v1 (kt − k∗) + v2 (kt+1 − k∗)+ v3 (kt+2 − k∗) + v4at + v5at+1}

= Et{v1 (kt − k∗) + v2

=kt+1−k∗︷ ︸︸ ︷Gk (kt − k∗) + Gaat

+ v3

=kt+2−k∗︷ ︸︸ ︷Gk (Gk (kt − k∗) + Gaat) + Gaat+1

+ v4at + v5at+1}.

• Next, collect terms...

Page 35: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Solving for Gk, Ga• Need Gk and Ga that will make the following zero for all

kt, at = 0:

EtV (kt, kt+1, kt+2) = Et{v1 (kt − k∗) + v2 (Gk (kt − k∗) + Gaat)

+ v3 (Gk (Gk (kt − k∗) + Gaat) + Gaat+1)

+ v4at + v5at+1}

=(

v1 + v2Gk + v3G2k

)(kt − k∗)

+ [v2Ga + v3 (Gk + ρ)Ga + v4 + v5ρ] at,

using Etat+1 = ρat• So, must have

0 = v1 + v2Gk + v3G2k , Ga = −

v4 + v5ρ

v2 + v3 (Gk + ρ)

Page 36: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Output of Linearization Strategy• Delivers a solution to the neoclassical growth model:

kt+1 = G (kt, at) = k∗ + Gk (kt − k∗) + Gaat,

where Gk solves polynomial:

0 = v1 + v2Gk + v3G2k

– There are two solutions, but for reasons discussed later, onlyone value of Gk is admissible.

– As discussed later, in other models may not have a good wayto choose a value for Gk.

• Given Gk can solve for Ga using

Ga = −v4 + v5ρ

v2 + v3 (Gk + ρ).

– Note: solution for Ga is unique, given Gk.

Page 37: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Perturbation Method

• This completes discussion of linearization method for solvingneoclassical growth model.

• Next, turn to perturbation.

• Since first order perturbation is linearization, we’ll discuss thatagain.

Page 38: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Neoclassical Growth Model

• Objective:

• Constraints:

E0∑t0

tuct, uct ct

1− − 11 −

ct expkt1 ≤ fkt,at, t 0,1,2, . . . .

at at−1 t, t~ Et 0, Et2 V

fkt,at expktexpat 1 − expkt

Page 39: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Efficiency Condition

• Here,

• Parameter,  , indexes a set of models, withthe model of interest corresponding to

Etu′ct

fkt,at − expkt1

− u′ct1

fkt1,at t1 − expkt2

period t1 marginal product of capital

fKkt1,at t1 0.

kt,at ~given numberst1 ~random variabletime t choice variable, kt1

1

Page 40: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Solution• A policy rule,

• With the property:

• for all  

kt1 gkt,at,.

Rkt,at,;g ≡ Etu′ct

fkt,at − expgkt,at,

− u′

ct1

fkt1

gkt,at,,at1

at t1 − exp gkt1

gkt,at,,at1

at t1,

fK

kt1

gkt,at,,at1

at t1 0,

at,kt,.

Page 41: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Perturbation Approach• Straightforward application of the perturbation approach requires 

knowing the value taken on by the policy rule at a point.

• The overwhelming majority of models used in macro satisfy this requiement.

– In these models, can compute non‐stochastic steady state without any knowledge of the policy rule, g.

– Non‐stochastic steady state is      such that

– and

k∗

k∗ g k∗,a0 (nonstochastic steady state in no uncertainty case)

0 ,

0 (no uncertainty)

0

k∗ log 1 − 1 −

11−

.

Page 42: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Perturbation• Error function:

– for all values of                

• So, all order derivatives of R with respect to its arguments are zero (assuming they exist!).

kt,at,.

Rkt,at,;g ≡ Etu′ct

fkt,at − expgkt,at,

− u′ct1

fgkt,at,,at t1 − expggkt,at,,at t1,

fKgkt,at,,at t1 0,

Page 43: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Four (Easy to Show) Results About Perturbations

• Taylor series expansion of policy rule:

– : to a first order approximation, ‘certainty equivalence’ 

– All terms found by solving linear equations, except coefficient on past endogenous variable,        ,which requires solving for eigenvalues

– To second order approximation: slope terms certainty equivalent –

– Quadratic, higher order terms computed recursively.

gk

g 0

gk ga 0

gkt,at, ≃

linear component of policy rule

k gkkt − k gaat g

second and higher order terms

12 gkkkt − k

2 gaaat2 g2 gkakt − kat gkkt − k gaat . . .

Page 44: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

First Order Perturbation• Working out the following derivatives and evaluating at 

• Implies:

Rkkt,at,;g Rakt,at,;g Rkt,at,;g 0

Source of certainty equivalenceIn linear approximation

kt k∗,at 0

‘problematic term’

Rk u′′fk − eggk − u′fKkgk − u′′fkgk − eggk2 fK 0

Ra u′′fa − egga − u′fKkga fKa − u′′fkga fa − eggkga gafK 0

R −u′eg u′′fk − eggk fK g 0

Absence of arguments in these functions reflects they are evaluated in  kt k∗,at 0

Page 45: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Technical notes for following slide

• Simplify this further using:

• to obtain polynomial on next slide. 

u′′fk − eggk − u′fKkgk − u′′fkgk − eggk2 fK 0

1 fk − e

ggk − u′fKku′′gk − fkgk − eggk2 fK 0

1 fk −

1 e

g u′ fKku′′

fkfK gk eggk2fK 0

1

fkegfK

− 1fK

u′u′′

fKkegfK

fkeg gk gk2 0

1 − 1 1

u′u′′

fKkegfK

gk gk2 0

fK ~steady state equationfK K−1 expa 1 − , K ≡ expk exp − 1k a 1 −

fk expk a 1 − expk fKeg

fKk − 1exp − 1k afKK − 1K−2 expa − 1exp − 2k a fKke−g

Page 46: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

First Order, cont’d• Rewriting                term:

• There are two solutions,                                   – Theory (see Stokey‐Lucas) tells us to pick the smaller one. 

– In general, could be more than one eigenvalue less than unity: multiple solutions.

• Conditional on solution to     ,         solved for linearly using                equation.

• These results all generalize to multidimensional case

Rk 0

1 − 1 1

u′u′′fKKfK

gk gk2 0

0 gk 1, gk 1

gk gaRa 0

Page 47: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Numerical Example

• Parameters taken from Prescott (1986):

• Second order approximation:

ĝkt,at−1,t, 3.88k∗

0.98 0.996gk kt − k∗

0.06 0.07ga at

0g

12

0.014 0.00017gkk kt − k2

0.067 0.079gaa at2

0.000024 0.00068g

12

−0.035 −0.028

gka kt − kat 0

gk kt − k 0

ga at

0.99, 220, 0.36, 0.02, 0.95, V 0.012

Page 48: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

• Following is a graph that compares the policy rules implied by the first and second order perturbation.

• The graph itself corresponds to the baseline parameterization, and results are reported in parentheses for risk aversion equal to 20.

Page 49: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

‘If initial capital is 20 percent away from steady state,  then capitalchoice differs by 0.03 (0.035) percent between the two approximations.’

‘If shock is 6 standard deviations away from its mean, then capital choice differs by 0.14 (0.18) percent between the two approximations’

Number in parentheses at top correspond to       = 20.

-20 -10 0 10 200

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0.04

100*( kt - k* ), percent deviation of initial capital from steady state

100*

( kt+

1 (2nd

ord

er) -

kt+1

(1st

ord

er) )

= 2 = 20

-20 -10 0 10 200

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

100*at, percent deviation of initial shock from steady state

100*

( kt+

1 (2nd

ord

er) -

kt+1

(1st

ord

er) )

Page 50: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Conclusion

• For modest US‐sized fluctuations and for aggregate quantities, it is reasonable to work with first order perturbations.

• First order perturbation: linearize (or, log‐linearize) equilibrium conditions around non‐stochastic steady state and solve the resulting system. – This approach assumes ‘certainty equivalence’. Ok, as a first order approximation.

Page 51: Linearization and Perturbation Methods for Solving DSGE Modelslchrist/... · Linearization is a special case of Perturbation. { Perturbation can be used to obtain higher order approximations

Solution by Linearization• (log) Linearized Equilibrium Conditions:

• Posit Linear Solution:

• To satisfy equil conditions, A and Bmust:

• If there is exactly one A with eigenvalues less than unity in absolute value, that’s the solution. Otherwise, multiple solutions.

• Conditional on A, solve linear system for B. 

Et0zt1 1zt 2zt−1 0st1 1st 0

st − Pst−1 − t 0.zt Azt−1 Bst

0A2 1A 2I 0, F 0 0BP 1 0A 1B 0

List of endogenous variables determined at t

Exogenous shocks