Skip to content

Commit 628d9bd

Browse files
committed
minor updates
1 parent 4f9e75b commit 628d9bd

File tree

1 file changed

+21
-24
lines changed

1 file changed

+21
-24
lines changed

lectures/inventory_dynamics.md

Lines changed: 21 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,6 @@ kernelspec:
2121

2222
# 库存动态
2323

24-
```{index} single: 马尔可夫过程, 库存
25-
```
26-
2724
```{contents} 目录
2825
:depth: 2
2926
```
@@ -32,14 +29,14 @@ kernelspec:
3229

3330
在本讲座中,我们将研究企业的库存时间路径,其遵循所谓的s-S库存动态。
3431

35-
这些企业
32+
这些企业遵循以下补货规则:
3633

37-
1. 等待直到库存下降至某个水平$s$以下,然后
38-
2. 订购足够数量的产品,将库存补充到容量$S$。
34+
1. 当库存水平下降至某个临界值$s$以下时,
35+
2. 企业会订购足够数量的产品,将库存补充到目标水平$S$。
3936

4037
这种管理库存的方式在实践中很常见,并且在某些情况下也是最优的。
4138

42-
早期文献和其宏观经济影响可以在{cite}`caplin1985variability`中找到。
39+
早期文献和其对宏观经济的影响可以在{cite}`caplin1985variability`中找到。
4340

4441
我们的本节的目标是学习更多关于模拟、时间序列和马尔可夫动态的知识。
4542

@@ -62,7 +59,7 @@ from numba.experimental import jitclass
6259

6360
## 样本路径
6461

65-
假设有一个公司,拥有库存 $X_t$
62+
假设有一个公司,拥有库存 $X_t$。
6663

6764
当库存 $X_t \leq s$ 时,公司会补货至 $S$ 单位。
6865

@@ -152,7 +149,7 @@ ax.legend(**legend_args)
152149
plt.show()
153150
```
154151

155-
现在让我们模拟多条路径,以便更全面地了解不同结果的概率
152+
现在让我们模拟多条路径,这样可以更好地了解库存动态的整体行为和可能的库存分布
156153

157154
```{code-cell} ipython3
158155
sim_length=200
@@ -178,7 +175,7 @@ plt.show()
178175

179176
通过这些 $X_T$ 的样本,我们可以构建其分布 $\psi_T$ 的图像。
180177

181-
下面是$T=50$的情况下,一个可视化示例
178+
下面是$T=50$的情况下的一个可视化示例
182179

183180
```{code-cell} ipython3
184181
T = 50
@@ -250,7 +247,7 @@ plt.show()
250247

251248
核密度估计可以被理解为平滑的直方图。
252249

253-
当被估计的分布很可能是平滑的时候,核密度估计比直方图更可取
250+
当我们认为底层分布是平滑的时候,核密度估计通常比直方图提供更准确的图像
254251

255252
我们将使用[scikit-learn](https://scikit-learn.org/stable/)中的核密度估计量
256253

@@ -273,7 +270,7 @@ plot_kde(sample, ax)
273270
plt.show()
274271
```
275272

276-
概率质量的分配与上面直方图所显示的类似
273+
概率密度的分配与上面直方图所显示的类似
277274

278275
## 练习
279276

@@ -294,18 +291,18 @@ plt.show()
294291
295292
你应该能看到收敛性,体现在两个连续分布之间的差异越来越小。
296293
297-
尝试不同的初始条件来验证,长期来看,不同初始条件下分布是不变的
294+
尝试使用不同的初始条件来验证,无论从哪个初始状态开始,长期分布都会收敛到相同的平稳分布
298295
```
299296

300297
```{solution-start} id_ex1
301298
:class: dropdown
302299
```
303300

304-
以下是一种可能的解法
301+
以下是其中一种解法
305302

306-
因为其中的计算涉及大量的CPU周期,所以我们试图更高效地编写代码
303+
由于这个计算需要大量的计算资源,我们需要编写更高效的代码
307304

308-
也就是编写一个专门的函数,而不是使用上面的类
305+
为此,我们将创建一个专门的函数来替代之前使用的类,以提高计算效率
309306

310307
```{code-cell} ipython3
311308
s, S, mu, sigma = firm.s, firm.S, firm.mu, firm.sigma
@@ -354,23 +351,23 @@ ax.legend()
354351
plt.show()
355352
```
356353

357-
注意到,在 $t=500$ 或 $t=750$ 时密度几乎不再变化
354+
从图中可以看出,随着时间的推移,分布逐渐收敛到一个稳定状态
358355

359-
我们得到了平稳密度的合理近似
356+
在 t=500 和 t=750 时的分布几乎完全重合,表明我们已经得到了平稳密度的良好近似
360357

361358
你可以通过测试多个不同的初始条件,来确定初始条件确实不重要。
362359

363-
例如,尝试用所有公司从 $X_0 = 20$ 或 $X_0 = 80$ 开始重新运行上面的代码
360+
例如,你可以尝试将所有公司的初始库存设置为 $X_0 = 20$ 或 $X_0 = 80$,然后重新运行上面的代码,观察分布最终是否收敛到相同的稳态分布
364361

365362
```{solution-end}
366363
```
367364

368365
```{exercise}
369366
:label: id_ex2
370367
371-
使用模拟的方式,计算从 $X_0 = 70$ 开始的公司在前50个周期内需要订货两次或更多的概率
368+
使用模拟的方法,估计一家初始库存为 $X_0 = 70$ 的公司在前50个时期内至少需要补充库存两次的概率
372369
373-
你需要一个较大的样本量来获得准确的结果
370+
为了获得统计上可靠的结果,请确保使用足够大的样本量
374371
```
375372

376373
```{solution-start} id_ex2
@@ -381,7 +378,7 @@ plt.show()
381378

382379
同样地,由于计算量相对较大,我们编写了一个专门的函数而不是使用上面的类。
383380

384-
我们还将使用跨公司的并行化处理
381+
我们将利用并行计算来同时处理多家公司的模拟,以提高计算效率
385382

386383
```{code-cell} ipython3
387384
@jit(parallel=True)
@@ -416,11 +413,11 @@ freq = compute_freq()
416413
print(f"至少发生两次缺货的频率 = {freq}")
417414
```
418415

419-
尝试将上面jitted函数中的`parallel`标志改为`False`
416+
尝试将上面`@jit`[装饰器](https://zhuanlan.zhihu.com/p/53666925)中的`parallel`参数改为`False`
420417

421418
根据你的系统配置,运行速度的差异可能会很大。
422419

423-
在台式机上,速度提升了5倍。
420+
在我们的系统上运行速度提升了5倍!
424421

425422
```{solution-end}
426423
```

0 commit comments

Comments
 (0)