MATLAB:Ramsey模型的求解与模拟

发布时间:2021-09-24 阅读 209

Stata连享会   主页 || 视频 || 推文 || 知乎 || Bilibili 站

温馨提示: 定期 清理浏览器缓存,可以获得最佳浏览体验。

New! lianxh 命令发布了:
随时搜索推文、Stata 资源。安装:
. ssc install lianxh
详情参见帮助文件 (有惊喜):
. help lianxh
连享会新命令:cnssc, ihelp, rdbalance, gitee, installpkg

课程详情 https://gitee.com/lianxh/Course

课程主页 https://gitee.com/lianxh/Course

⛳ Stata 系列推文:

PDF下载 - 推文合集

作者: 司绪 (重庆大学)
邮箱: sixu@cqu.com


目录


0. 引言

Ramsey 模型是学习宏观经济理论必然接触到的模型,该模型可以被称为中央计划者模型或代表性行为人模型,经济主体是同质的且承担了居民和厂商的双重角色。本文介绍一个简化的离散时间下确定性无限期限 Ramsey 模型的求解与模拟。

1.模型结构与求解

1.1 模型结构

  1. 居民效用函数是定义在消费 C 上的对数效用函数:

其中,β 为主观贴现因子。

  1. 经济中的生产技术为:

  2. 约束条件。在每一期,经济主体消费 Ct 并储蓄 Kt+1 以用于下一期的生产。假设资本是完全折旧的,那么,经济运行受到的资源约束方程为:

中央计划者或者代表性行为人通过选择每一期的消费以实现终生效用最大化。

此外,经济中每期的消费 Ct0,资本存量 Kt0

总结上述 Ramsey 问题如下:

1.2 求解

根据 Kuhn-Tucker 定理,可得到以下一阶条件:

u(Ct)=λtμt

λt=βλt+1f(Kt+1)+νt+1

0=λt[f(Kt)CtKt+1]

0=μtCt

0=νt+1Kt+1

λtμtνt分别是三个约束的拉格朗日乘子。现在,我们施加另外一个条件 limc0u(c) 以排除非负约束。根据以上条件,我们可以得到:

Kt+1=f(Kt)Ct

1=βu(Ct+1)u(Ct)f(Kt+1)

给定 K0,结合无限期限 Ramsey 问题需满足的横截条件 limtβtλtKt+1=0(随着资本存量积累而增加的效用,其增速最终要低于1/β,否则就会无限期地推迟消费),非线性差分方程组刻画了最优资本积累路径。

利用动态规划法,我们可以得到关于下期资本存量的政策函数为Kt+1=αβKtα,则关于消费的政策函数为Ct=KtααβKtα。满足这一决策规则的路径即为鞍点路径,其他的路径要么违反资本非负的约束条件,要么违反横截条件,这一结论可在接下来的模型动态模拟中得到更直观体现。

2.模型动态分析

下面,我们采用 Matlab 编程,进行模拟分析。

我们借助相位图考察经济的动态,首先对参数进行赋值:

α=0.5β=0.99

clear
alpha=.5;
beta =.99;

其次,在相位图中画出资本存量不变以及消费不变曲线的轨迹、资本存量非负约束、鞍点路径:

ks = (alpha*beta)^(1/(1-alpha));
cs = ks^alpha - ks;

kv=0:.01:1;
cv=0:.01:1;

h1 = plot(kv,kv.^alpha-kv,'-r','LineWidth',2);
hold on;

h2 = plot(ks*ones(size(cv)),cv,'-g','LineWidth',2);

% K_t+1 = 0
h3 = plot(kv,kv.^alpha,'-b','LineWidth',2);

% saddle path
k = 0.05:0.01:0.9;
css = k.^alpha - alpha*beta*(k.^alpha);
h4 = plot(k,css,':','LineWidth',2);
legend([h1,h2,h3,h4],'K(t)=K(t+1)','C(t)=C(t+1)','K(t+1)=0','saddle path');
鞍点路径
鞍点路径

在消费不变曲线左边(右边),消费增加(减少);在资本存量不变曲线之上(之下),资本存量降低(增加)。

两条线的交点给出了经济稳态时的资本存量K=(αβ)11α,消费C=f(K)K。可以看出,模型经济通过鞍点路径到达稳态点实现均衡。

最后,我们给出了几条鞍点路径以外的情况:

% other path 1
T = 3;
C = zeros(1,T+1);
K = zeros(1,T+1);
C(1) = 0.4;
K(1) = 0.5;
for i = 1:T
    %resources constraint
    K(i+1) = K(i)^alpha - C(i);
    %Euler equation
    C(i+1) = beta*C(i)*alpha*K(i+1)^(alpha-1);
end
p1 = plot(K,C);

% other path 2
T = 2;
C = zeros(1,T+1);
K = zeros(1,T+1);
C(1) = 0.2;
K(1) = 0.1;
for i = 1:T
    K(i+1) = K(i)^alpha - C(i);
    C(i+1) = beta*C(i)*alpha*K(i+1)^(alpha-1);
end
p2 = plot(K,C);

% other path 3
T = 10;
C = zeros(1,T+1);
K = zeros(1,T+1);
C(1) = 0.2;
K(1) = 0.6;
for i = 1:T
    K(i+1) = K(i)^alpha - C(i);
    C(i+1) = beta*C(i)*alpha*K(i+1)^(alpha-1);
end
p3 = plot(K,C);

% other path 4
T = 10;
C = zeros(1,T+1);
K = zeros(1,T+1);
C(1) = 0.1;
K(1) = 0.1;
for i = 1:T
    K(i+1) = K(i)^alpha - C(i);
    C(i+1) = beta*C(i)*alpha*K(i+1)^(alpha-1);
end
p4 = plot(K,C);
legend([p1,p2,p3,p4],'path1','path2','path3','path4');
其他路径
其他路径

可见,path1 和 path2 突破了资本存量非负限制,path3 和 path4 路径最终导致无限期推迟消费,违反了横截条件,模型经济通过鞍点路径实现稳态。

3. 参考资料

  • McCandless G. The ABCs of RBCs: an introduction to dynamic macroeconomic models[M]. Harvard University Press, 2008.

4. 相关推文

Note:产生如下推文列表的 Stata 命令为:
lianxh DSGE 模拟
安装最新版 lianxh 命令:
ssc install lianxh, replace

相关课程

免费公开课

最新课程-直播课

专题 嘉宾 直播/回看视频
最新专题 文本分析、机器学习、效率专题、生存分析等
研究设计 连玉君 我的特斯拉-实证研究设计-幻灯片-
面板模型 连玉君 动态面板模型-幻灯片-
面板模型 连玉君 直击面板数据模型 [免费公开课,2小时]
  • Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。

课程主页

课程主页

关于我们

  • Stata连享会 由中山大学连玉君老师团队创办,定期分享实证分析经验。
  • 连享会-主页知乎专栏,400+ 推文,实证分析不再抓狂。直播间 有很多视频课程,可以随时观看。
  • 公众号关键词搜索/回复 功能已经上线。大家可以在公众号左下角点击键盘图标,输入简要关键词,以便快速呈现历史推文,获取工具软件和数据下载。常见关键词:课程, 直播, 视频, 客服, 模型设定, 研究设计, stata, plus, 绘图, 编程, 面板, 论文重现, 可视化, RDD, DID, PSM, 合成控制法

连享会小程序:扫一扫,看推文,看视频……

扫码加入连享会微信群,提问交流更方便

✏ 连享会-常见问题解答:
https://gitee.com/lianxh/Course/wikis

New! lianxh 命令发布了:
随时搜索连享会推文、Stata 资源,安装命令如下:
. ssc install lianxh
使用详情参见帮助文件 (有惊喜):
. help lianxh