Skip to content

Commit 99c9f64

Browse files
authored
Add files via upload
1 parent f0b156b commit 99c9f64

File tree

1 file changed

+38
-40
lines changed

1 file changed

+38
-40
lines changed

lectures/mccall_correlated.md

Lines changed: 38 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ tags: [hide-output]
3434

3535
## 概述
3636

37-
在本讲座中,我们求解一个具有持久性和暂时性工资成分的{doc}`McCall求职搜索模型 <mccall_model>`
37+
在本讲座中,我们求解一个工资报价由持久性和暂时性成分组成的{doc}`McCall求职搜索模型 <mccall_model>`
3838

39-
换句话说,我们放宽了工资随机性在时间上相互独立的假设
39+
换句话说,我们放宽了工资随机性在时间上独立的假设
4040

4141
同时,我们将回到假设工作是永久性的,不会发生离职。
4242

@@ -60,7 +60,7 @@ from numba.experimental import jitclass
6060

6161
## 模型
6262

63-
每个时间点的工资由下式给出
63+
每个时期的工资由下式给出
6464

6565
$$
6666
w_t = \exp(z_t) + y_t
@@ -74,13 +74,13 @@ y_t \sim \exp(\mu + s \zeta_t)
7474
z_{t+1} = d + \rho z_t + \sigma \epsilon_{t+1}
7575
$$
7676

77-
这里 $\{ \zeta_t \}$ 和 $\{ \epsilon_t \}$ 都是独立同分布的标准正态分布
77+
这里 $\{ \zeta_t \}$ 和 $\{ \epsilon_t \}$ 都是独立同分布的标准正态随机变量
7878

7979
这里 $\{y_t\}$ 是暂时性成分,$\{z_t\}$ 是持久性成分。
8080

8181
如前所述,劳动者可以:
8282

83-
1. 接受报价并在该工资水平永久工作,或
83+
1. 接受当前工作机会,并在该工资水平永久工作,或
8484
1. 领取失业补偿金 $c$ 并等待下一期。
8585

8686
价值函数满足贝尔曼方程:
@@ -93,77 +93,75 @@ v^*(w, z) =
9393
\right\}
9494
$$
9595

96-
在这个表达式中,$u$ 是效用函数,$\mathbb E_z$ 是给定当前 $z$ 时下一期变量的期望
96+
在这个表达式中,$u$ 是效用函数,$\mathbb E_z$ 是给定当前 $z$ 时下一期变量的条件期望
9797

98-
变量 $z$ 作为状态进入贝尔曼方程,因为它的当前值有助于预测未来工资
98+
变量 $z$ 作为状态变量进入贝尔曼方程,这是因为它的当前值有助于预测未来工资
9999

100100
### 简化
101101

102-
有一种方法可以减少这个问题的维度,这大大加快了计算速度。
102+
我们可以通过以下方法降低问题维度,显著提升计算效率:
103103

104-
首先,让 $f^*$ 为继续价值函数,定义为:
104+
首先,让 $f^*$ 为延续价值函数,定义为:
105105

106106
$$
107107
f^*(z) := u(c) + \beta \, \mathbb E_z v^*(w', z')
108108
$$
109109

110-
贝尔曼方程现在可以写成
110+
现在贝尔曼方程可以写成
111111

112112
$$
113113
v^*(w, z) = \max \left\{ \frac{u(w)}{1-\beta}, \, f^*(z) \right\}
114114
$$
115115

116-
结合最后两个表达式,我们看到继续价值函数满足
116+
结合上述两个表达式,我们看到延续价值函数满足
117117

118118
$$
119119
f^*(z) = u(c) + \beta \, \mathbb E_z \max \left\{ \frac{u(w')}{1-\beta}, f^*(z') \right\}
120120
$$
121121

122-
我们将通过引入算子来求解这个函数方程
122+
为求解该函数方程,我们引入算子$Q$
123123

124124
$$
125125
Qf(z) = u(c) + \beta \, \mathbb E_z \max \left\{ \frac{u(w')}{1-\beta}, f(z') \right\}
126126
$$
127127

128128
根据构造,$f^*$ 是 $Q$ 的不动点,即 $Q f^* = f^*$。
129129

130-
在温和的假设下,可以证明 $Q$ 是 $\mathbb R$ 上连续函数空间上的[压缩映射](https://en.wikipedia.org/wiki/Contraction_mapping)
130+
在较弱的假设下,可以证明 $Q$ 是 $\mathbb R$ 上连续函数空间上的一个[压缩映射](https://en.wikipedia.org/wiki/Contraction_mapping)
131131

132-
根据巴拿赫压缩映射定理,这意味着 $f^*$ 是唯一的不动点,我们可以从任何合理的初始条件开始通过迭代 $Q$ 来计算它
132+
根据巴拿赫压缩映射定理,$f^*$ 是唯一的不动点,我们可以从任何合理的初始条件开始通过迭代 $Q$ 来得到$f^*$
133133

134-
一旦我们有 $f^*$,我们就可以通过在接受报酬超过继续价值时停止来求解搜寻问题,即:
134+
求得 $f^*$后,这一搜索问题的解就是当接受工作的收益超过延续价值时停止求职,即:
135135

136136
$$
137137
\frac{u(w)}{1-\beta} \geq f^*(z)
138138
$$
139139

140140
对于效用函数,我们取 $u(c) = \ln(c)$。
141141

142-
保留工资是最后一个表达式中等式成立的工资。
143-
144-
即:
142+
保留工资是最后一个表达式中等式成立的工资:
145143

146144
```{math}
147145
:label: corr_mcm_barw
148146
149147
\bar w (z) := \exp(f^*(z) (1-\beta))
150148
```
151149

152-
我们的主要目标是求解保留规则并研究其性质和含义
150+
我们的主要目标是求解该保留工资规则,并分析其性质与含义
153151

154152
## 实现
155153

156154
让 $f$ 作为我们对 $f^*$ 的初始猜测。
157155

158156
在迭代时,我们使用{doc}`拟合价值函数迭代 <mccall_fitted_vfi>`算法。
159157

160-
特别地,$f$ 和所有后续迭代都存储为网格上的值向量
158+
特别地,$f$ 和所有后续迭代值都作为向量存储在一个网格
161159

162-
这些点根据需要通过分段线性插值插值成函数
160+
这些点通过分段线性插值转换为函数
163161

164-
$Qf$ 定义中的积分通过蒙特卡洛计算
162+
$Qf$ 定义中的期望项通过蒙特卡洛计算
165163

166-
以下列表通过提供我们将使用的数据类型信息来帮助Numba
164+
以下类型声明帮助 Numba 进行类型推断
167165

168166
```{code-cell} python3
169167
job_search_data = [
@@ -172,14 +170,14 @@ job_search_data = [
172170
('d', float64), # 持久性状态位移系数
173171
('ρ', float64), # 持久性状态相关系数
174172
('σ', float64), # 状态波动率
175-
('β', float64), # 贴现因子
176-
('c', float64), # 失业补偿金
173+
('β', float64), # 折现因子
174+
('c', float64), # 失业补助
177175
('z_grid', float64[:]), # 状态空间网格
178176
('e_draws', float64[:,:]) # 积分用的蒙特卡洛抽取
179177
]
180178
```
181179

182-
这是一个存储数据和贝尔曼方程右侧的类
180+
这是一个存储数据和贝尔曼方程右侧项的类
183181

184182
默认参数值嵌入在类中。
185183

@@ -193,8 +191,8 @@ class JobSearch:
193191
d=0.0, # 持久性状态位移系数
194192
ρ=0.9, # 持久性状态相关系数
195193
σ=0.1, # 状态波动率
196-
β=0.98, # 贴现因子
197-
c=5, # 失业补偿金
194+
β=0.98, # 折现因子
195+
c=5, # 失业补助
198196
mc_size=1000,
199197
grid_size=100):
200198
@@ -208,7 +206,7 @@ class JobSearch:
208206
a, b = z_mean - k * z_sd, z_mean + k * z_sd
209207
self.z_grid = np.linspace(a, b, grid_size)
210208
211-
# 抽取并存储冲击
209+
# 生成并存储冲击
212210
np.random.seed(1234)
213211
self.e_draws = randn(2, mc_size)
214212
@@ -243,8 +241,8 @@ def Q(js, f_in, f_out):
243241
e1, e2 = js.e_draws[:, m]
244242
z_next = d + ρ * z + σ * e1
245243
go_val = np.interp(z_next, js.z_grid, f_in) # f(z')
246-
y_next = np.exp(μ + s * e2) # y' 抽取
247-
w_next = np.exp(z_next) + y_next # w' 抽取
244+
y_next = np.exp(μ + s * e2) # 生成 y'
245+
w_next = np.exp(z_next) + y_next # 生成 w'
248246
stop_val = np.log(w_next) / (1 - β)
249247
expectation += max(stop_val, go_val)
250248
expectation = expectation / M
@@ -307,9 +305,9 @@ ax.legend()
307305
plt.show()
308306
```
309307

310-
注意保留工资随当前状态 $z$ 增加
308+
注意保留工资随当前状态 $z$ 单调递增
311309

312-
这是因为更高的状态导致代理人预测更高的未来工资,增加了等待的期权价值
310+
这是因为更高的状态导致代理人预测更高的未来工资,增加了等待的价值
313311

314312
让我们尝试改变失业补偿金并观察其对保留工资的影响:
315313

@@ -329,7 +327,7 @@ ax.legend()
329327
plt.show()
330328
```
331329

332-
正如预期的那样,更高的失业补偿金在所有状态值下都提高了保留工资
330+
正如预期的那样,更高的失业补偿金在所有状态下都提高了保留工资
333331

334332
## 失业持续时间
335333

@@ -356,7 +354,7 @@ def compute_unemployment_duration(js, seed=1234):
356354
357355
unemployed = True
358356
while unemployed and t < t_max:
359-
# 抽取当前工资
357+
# 生成当前工资
360358
y = np.exp(μ + s * np.random.randn())
361359
w = np.exp(z) + y
362360
res_wage = np.exp(f_star_function(z) * (1 - β))
@@ -380,7 +378,7 @@ def compute_unemployment_duration(js, seed=1234):
380378
return compute_expected_tau()
381379
```
382380

383-
让我们用一些可能的失业补偿金值来测试这个
381+
让我们用一些可能的失业补偿金值来计算失业持续时间
384382

385383
```{code-cell} ipython3
386384
c_vals = np.linspace(1.0, 10.0, 8)
@@ -391,7 +389,7 @@ for i, c in enumerate(c_vals):
391389
durations[i] = τ
392390
```
393391

394-
这是结果图
392+
这是可视化结果
395393

396394
```{code-cell} ipython3
397395
fig, ax = plt.subplots()
@@ -410,10 +408,10 @@ plt.show()
410408
```{exercise}
411409
:label: mc_ex1
412410
413-
研究平均失业持续时间如何随贴现因子 $\beta$ 变化。
411+
研究平均失业持续时间如何随折现因子 $\beta$ 变化。
414412
415-
* 你的先验预期是什么
416-
* 结果是否符合预期
413+
* 你的预期是什么
414+
* 结果是否符合你的预期
417415
```
418416

419417
```{solution-start} mc_ex1

0 commit comments

Comments
 (0)