Ramsey policy again

As Dynare 4 is now the main version, this forum is now closed. Please, post
on the Dynare Help forum
Forum rules
As Dynare 4 is the current Dynare version, there forum is now close. Post new question in the Dynare Help Forum.

Ramsey policy again

Postby tanya » Sun Mar 22, 2009 8:50 pm

The example on http://www.dynare.org/DynareWiki/OptimalPolicy seems to work. However, it is not obvious from what the policymaker's discount factor is. It is not defined and the welfare seems to be defined as one-period welfare.

Can anyone clarify:

(a) is welfare on-period in that example? If not, what is the policymaker's discount factor there? How to change it if needed?

(b) If yes, can we do the "standard" discounted welfare? What is the syntax?

Also, the note there says that "Ramsey" should work with non-quadratic (flow) utilities like log(C). Is this true? Has anyone tried? Is there any example available? The example is linear, can it work with non-linear model? Again, does anyone know an example?

Many thanks
tanya
 
Posts: 37
Joined: Tue Sep 12, 2006 6:41 pm

Re: Ramsey policy again

Postby StephaneAdjemian » Mon Mar 23, 2009 8:57 pm

Hi,

Let me consider the following example. Suppose that the social planner maximizes the intertemporal utility of the representative houshold:

\sum_{\tau=0}^{\infty} \beta^ {\tau} u(c_{t+\tau},l_{t+\tau})

where u(,) is the felicity function. This objective can be written recursively as follows:

W_t = u(c_t,l_t) + \beta W_{t+1}

where W_t, the welfare, is the intertemporal utility at time t. In the mod file you declare the planner objective as follows:

Code: Select all
planner_objective  u(c,l)


(obviously you have to replace the function u by whatever you want). Dynare then understands that the social planner has to maximize the welfare W. So, even if the declared function (after the planner_objective keyword) is static, the objective considered here is intertemporal (Dynare computes the discounted sum of instantaneous utilities for you). Note that, with the current version of Dynare, it is not possible to declare recursive utility functions (Kreps-Porteus).

The social planner can be less or more patient than the representative household, so the discount factor of the social planner is not necessarly equal to the discount factor of the representative household (\beta). You can set the social planner discount planner using an option in the command that triggers the simulation of the model. For instance:

Code: Select all
ramsey_policy (order=1,planner_discount=0.95) ;


Yes you can declare a general non linear (non quadratic) objective function and consider a non linear(ized) model of the economy. You are not bounded to the case of a linear model with quadratic objective.

Best Regards,
Stéphane.
Stéphane Adjemian
Université du Maine, GAINS and DynareTeam
https://stepan.adjemian.eu
StephaneAdjemian
 
Posts: 429
Joined: Wed Jan 05, 2005 4:24 pm
Location: Paris, France.

Re: Ramsey policy again

Postby bigbigben » Tue Mar 24, 2009 4:25 am

How about the optimal simple rule?
Does it only work for linear quadratic enviroment?
The example is such a case.
bigbigben
 
Posts: 171
Joined: Sun May 28, 2006 1:19 am

About the optimal weights used in OSR

Postby bigbigben » Tue Mar 24, 2009 2:24 pm

Can they be variables or functions of parameter? For example, if the social planner is a benevolent one, she wants to maximize the utility function. If we used second order Taylor expansion around the steady state, the weights becomes functions of steady state values, rather than some abitrary constants.
bigbigben
 
Posts: 171
Joined: Sun May 28, 2006 1:19 am

Re: Ramsey policy again

Postby tanya » Tue Mar 24, 2009 9:19 pm

Dear Stephane

Many thanks for this. Unfortunately, I could not make it work. The error message is:

??? Error using ==> print_info
MJDGGES returns the following error code8

Error in ==> stoch_simul at 44
print_info(info);

Error in ==> ramsey_policy at 25
info = stoch_simul(var_list);

Error in ==> ramseytest at 100
ramsey_policy(var_list_);

Error in ==> dynare at 102
evalin('base',fname) ;

This was obtained after I attempted to run this (which is the file from http://www.dynare.org/DynareWiki/OptimalPolicy with 3 modifications: "linear" removed from the model, objective has changed, and line with discount is added). BTW how does this know which variable is an instrument?

var y inf r;
varexo y_ inf_;

parameters delta sigma alpha kappa gammarr gammax0 gammac0 rbar lambda1 lambda2;

delta = 0.44;
kappa = 0.18;
alpha = 0.48;
sigma = -0.06;
lambda1 = 0.5;
lambda2 = 0.1;

model;
y = delta * y(-1) + (1-delta) * y(+1) + sigma *(r - inf(+1)) + y_;
inf = alpha * inf(-1) + (1-alpha) * inf(+1) + kappa*y + inf_;
end;

shocks;
var y_;
stderr 0.63;
var inf_;
stderr 0.4;
end;

//planner_objective inf^2 + lambda1*y^2 + lambda2*r^2;

planner_objective y^(1+sigma)/(1+sigma);

ramsey_policy (order=1,planner_discount=0.99) ;
tanya
 
Posts: 37
Joined: Tue Sep 12, 2006 6:41 pm

Re: Ramsey policy again

Postby bigbigben » Tue Mar 24, 2009 9:39 pm

Hi, Tanya:

The problem you run into is model specific. I wrote my own model and set an obj. func similar to yours, but it works.

The error message tells the solve has difficulty to solve the 8th eigenvalue of the system.
bigbigben
 
Posts: 171
Joined: Sun May 28, 2006 1:19 am

Re: Ramsey policy again

Postby tanya » Tue Mar 24, 2009 10:15 pm

Thanks - this was just an arbitrary example. I wanted to check details before using dynare for larger model (and more sensible). Perhaps this is why... Many thanks for your time.
Tanya
tanya
 
Posts: 37
Joined: Tue Sep 12, 2006 6:41 pm


Return to Dynare version 4

Who is online

Users browsing this forum: No registered users and 1 guest