From cc6126917768723e2717dfb1cbee1c42f53ffaf0 Mon Sep 17 00:00:00 2001 From: qiwang067 Date: Tue, 25 Jul 2023 16:59:16 +0800 Subject: [PATCH] update errata.md --- docs/errata.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/docs/errata.md b/docs/errata.md index 264fed79..827e0186 100644 --- a/docs/errata.md +++ b/docs/errata.md @@ -21,13 +21,18 @@ pip install pygame * 28页,第二个代码框第1行和倒数第1行:BespokeAgent → SimpleAgent * 28页,倒数第一段改为:SimpleAgent 类的 decide()方法用于决策,learn() 方法用于学习,该智能体不是强化学习智能体,不能学习,只能根据给定的数学表达式进行决策。 * 29页,第一个代码框第1行:play_montecarlo → play -* 29页,第二段第1行:play_montecarlo → play +* 29页,第一个代码框第2行:初始化 → 初始值 +* 29页,第一个代码框第6行:显示图形界面,图形界面可以用 env.close() 语句关闭 → 显示图形界面 +* 29页,第二段改为:上面代码中的 play 函数可以让智能体和环境交互一个回合,该函数有 4 个参数。env 是环境类。agent 是智能体类。render 是 bool 型变量,其用于判断是否需要图形化显示。如果 render 为 True,则在交互过程中会调用 env.render() 以显示图形界面,通过调用 env.close() 可关闭图形界面。train 是 bool 型变量,其用于判断是否训练智能体,在训练过程中设置为 True,让智能体学习;在测试过程中设置为 False,让智能体保持不变。该函数的返回值 episode\_reward 是 float 型的数值,其表示智能体与环境交互一个回合的回合总奖励。 +* 29页,第三段:并在交互过程中进行图形化显示,可用 env.close()语句关闭图形界面 → 并显示图形界面 * 29页,倒数第一个代码框的第1行改为:env.seed(3) # 设置随机种子,让结果可复现 * 29页,倒数第一个代码框第2行:play_montecarlo → play * 29页,倒数第一个代码框的倒数第1行改为:此语句可关闭图形界面 → 关闭图形界面 +* 30页,第一段改为:为了评估智能体的性能,需要计算出连续交互 100 回合的平均回合奖励,代码如下。 * 30页,第二个代码框第1行:play_montecarlo → play * 30页,第三个代码框:-102.61 → -106.63 -* 30页,第三段第2行:BespokeAgent → SimpleAgent +* 30页,第三段改为:SimpleAgent 类对应策略的平均回合奖励在 $-$110 左右,而对于小车上山任务,只要连续 100 个回合的平均回合奖励大于 $-$110,就可以认为该任务被解决了。 +* 30页,第四段改为:测试智能体在 Gym 库中某个任务的性能时,出于习惯使然,学术界一般最关心 100 个回合的平均回合奖励。对于有些任务,还会指定一个参考的回合奖励值,当连续 100 个回合的奖励大于指定的值时,则认为该任务被解决了。而对于没有指定值的任务,就无所谓任务被解决了或没有被解决[6]。 * 137页,第一段第1行:虽然式 (5.19) 看起来有点儿复杂,但实现起来是比较简单的 → 式 (5.19) 看起来复杂,但其实现比较简单 * 156页,第二段第1行:第一个好处是,→ 第一个好处是提高采样效率。 * 156页,第二段第6行:第二个好处是,→ 第二个好处是增加样本多样性。