Reinforcement Learning: An Introduction Second Edition - Chapter 5

Monte Carlo Methods

这一章考虑了第一类用于估计价值函数并寻找最优策略的学习方法(first learning methods)。蒙特卡洛方法s不需要完备的环境知识,它们仅仅需要经验,即从真实或者模拟的环境交互中采样得到的状态、动作、收益序列。

蒙特卡洛方法s通过平均样本的回报来解决强化学习问题。这里只定义用于分幕式任务的蒙特卡洛方法s。价值估计和策略改进在一个幕结束时才进行。因此蒙特卡洛方法s是逐幕做出改进的,而非每一步(在线online)都有改进。通常术语“蒙特卡洛”泛指任何包含大量随即成分的估计方法s。这里我们用它特指那些对完整的回报取平均的方法s(相对于从部分收益中学习的方法s,将在下一章中介绍)。

蒙特卡洛方法s采样并平均每一个“状态-动作”二元组(each state–action pair)的回报。与赌博机方法s的区别是,这里状态是相互关联的。

在上一章,我们从MDP的知识中计算价值函数,而在这里,我们从MDP的样本回报(sample returns)中学习价值函数。蒙特卡洛方法s只有通过采样获得的经验

5.1 Monte Carlo Prediction

蒙特卡洛方法s的基础——根据经验估计状态的价值:对所有访问(visit)这个状态之后产生的回报进行平均。

首次访问型MC方法(The first-visit MC method):本章主要关注的方法。

每次访问型MC方法(The every-visit MC method):可以更自然地拓展到函数近似(function approximation)与资格迹( eligibility traces)方法。此方法无需检查 S t S_t St是否在当前幕的早期时段出现过。

两种方法的收敛性的探讨。

例 5.1 二十一点:即使知道此问题的完整环境知识,使用DP方法来计算价值函数也很困难。DP方法需要提前获得每个状态的期望收益转移概率,然而这些计算往往既复杂又容易出错。蒙特卡洛方法s只需要利用若干幕采样序列就能计算的特性是一个巨大优势,即使我们已知整个环境的 知识/动态特性/动态的知识。

练习 5.1:1,根据玩家的策略,当手牌点数小于20时,玩家会继续要牌,此时有很高的概率爆牌,因此状态价值很低;但是当手牌点数为20或21时,根据庄家策略,玩家有很高的概率手牌大于庄家,因此价值函数突然增高。2,当庄家显示的牌为10或A时,庄家的总点数有更高的概率为20或21,这导致本局平局或输掉的概率增大,导致最靠左右两侧的价值降低。3,由于A既可以是1也可以是11,当玩家的起始手牌有A时,他可以根据情况来决定点数;玩家有更高的概率获得点数20/21而不爆牌。

练习 5.2:结果不会非常不一样。在这个游戏中,由于点数不会减少,因此每一个幕中不可能出现两个相同的状态。

将回溯图的思想应用到蒙特卡洛算法s中。回溯图的区别清楚地体现了两种算法之间的本质区别。

蒙特卡洛方法s的一个重要事实:对于每个状态的估计是独立的。蒙特卡洛方法s并没有使用自举思想。

特别需要注意:计算一个状态的代价与状态的个数无关。这使得蒙特卡洛方法s可以获得一个或一个子集的状态的价值函数,根据采样获取回报的平均值,而完全不需要考虑其他的状态。这是蒙特卡罗方法s相比DP方法s的三个优势之一。

例 5.2 肥皂泡:边框形状已知,且表面连续。DP方法:根据边框的高度,对内部的点不断迭代。采取就地更新方法,起初不使用未估计的点估计其他点,例如一个点周围有一个点尚未被估计,则只是用其余被估计的点估计该点。蒙特卡洛方法:从感兴趣的点开始随机行走,最终到达的边界点就是对该点的近似。两种方法通过不断迭代,最终都会收敛到近似值。

5.2 Monte Carlo Estimation of Action Values

在没有环境模型*的情况下,仅仅有状态价值函数无法确定一个策略,动作的价值(即动作价值函数的值)更加有用一些。

读书笔记:没有模型,仅从经验中学习,因此只有部分状态的价值,无法直接使用状态价值函数进行单步搜索。

*环境模型到底是什么?:根据环境的知识,通过计算得到的收益和转移概率?或者等价于环境的知识?

动作价值函数的策略评估问题:只需将对状态的访问改为对“状态-动作”二元组的访问,蒙特卡洛方法就可以用几乎和之前完全相同的方式来解决此问题。

这里唯一的问题是,一些“状态-动作”二元组可能永远不会被访问。确定性的策略导致每个状态只会观测到一个动作的回报。由于没有平均回报,其他动作的蒙特卡洛估计值不会随着经验的增加而改善。

解决思路:保持试探。方法一:试探性出发(exploring starts)——将指定的“状态-动作”二元组作为起点进行采样,所有“状态-动作”二元组都有一定的概率被选为起点。

当直接从真实环境进行学习时,试探性出发假设很难满足——方法二:只考虑那些在每个状态下所有动作都有非零概率被选中的随机策略——两个重要变种。

练习 5.3:根节点为状态动作二元组。

5.3 Monte Carlo Control

基于试探性出发假设的蒙特卡洛控制方法。

控制问题:近似最优策略。 → \rightarrow 广义策略迭代(GPI)。

首先,思考经典策略迭代的蒙特卡洛版本。策略评估完全按照上一节的方法进行,假设策略评估时有无限多幕的样本序列进行试探。策略改进的方法是在当前价值函数上贪心地选择动作。动作价值函数的策略改进不需要使用任何的模型信息。策略改进定理保证新策略一定更优,除非原策略已经是最优策略。这反过来保证了整个流程会收敛到最优策略和最优价值函数。

去除假设

首先去除策略评估时有无限多幕的样本序列进行试探这一假设。对于DP和蒙特卡洛算法s,有两个方法。第一个方法是坚持在每次策略评估中近似 q π k q_{\pi_k} qπk 的想法。然而即使问题规模很小,这种方法也可能需要大量的幕序列以用于计算。

第二种方法是放弃在策略改进前完成策略评估 → \rightarrow 价值迭代 → \rightarrow 价值迭代的“就地更新”版本:

价值迭代的“双数组更新”版本:先进行策略评估的一次遍历,然后进行策略改进。
价值迭代的“就地更新”版本:在单个状态s中交替进行策略的改进和评估。

对于蒙特卡洛策略迭代 → \rightarrow Monte Carlo with Exploring Starts (Monte Carlo ES):逐幕交替进行评估与改进。

Initialize, for all s ∈ S s \in S sS, a ∈ A ( s ) a \in A(s) aA(s):
    Q ( s , a ) ← Q(s, a) ← Q(s,a) arbitrary
    π ( s ) ← π(s) ← π(s) arbitrary
    R e t u r n s ( s , a ) ← Returns(s, a) ← Returns(s,a) empty list

Repeat forever:
   Choose S 0 ∈ S S_0 ∈ S S0S and A 0 ∈ A ( S 0 ) A_0 ∈ A(S_0) A0A(S0) s.t. all pairs have probability > 0
   Generate an episode starting from S 0 S_0 S0, A 0 A_0 A0, following π π π
   For each pair s s s, a a a appearing in the episode:
       G ← G ← G return following the first occurrence of s s s, a a a
      Append G G G to R e t u r n s ( s , a ) Returns(s, a) Returns(s,a)
       Q ( s , a ) ← Q(s, a) ← Q(s,a) average( R e t u r n s ( s , a ) Returns(s, a) Returns(s,a))
   For each s s s in the episode:
       π ( s ) ← a r g m a x a Q ( s , a ) π(s) ← argmax_a Q(s, a) π(s)argmaxaQ(s,a)

练习 5.4:
Initialize, for all s ∈ S s \in S sS, a ∈ A ( s ) a \in A(s) aA(s):
    Q ( s , a ) ← Q(s, a) ← Q(s,a) arbitrary
    π ( s ) ← π(s) ← π(s) arbitrary
    N u m b e r ( s , a ) ← Number(s, a) ← Number(s,a) 0

Repeat forever:
   Choose S 0 ∈ S S_0 ∈ S S0S and A 0 ∈ A ( S 0 ) A_0 ∈ A(S_0) A0A(S0) s.t. all pairs have probability > 0
   Generate an episode starting from S 0 S_0 S0, A 0 A_0 A0, following π π π
   For each pair s s s, a a a appearing in the episode:
       G ← G ← G return following the first occurrence of s s s, a a a a n d \mathbf{and} and N u m b e r ( s , a ) ← N u m b e r ( s , a ) + 1 Number(s, a) ← Number(s, a) + 1 Number(s,a)Number(s,a)+1
       Q ( s , a ) ← Q ( s , a ) + 1 N u m b e r ( s , a ) [ G − Q ( s , a ) ] Q(s, a) ← Q(s, a) + \frac{1}{Number(s, a)}[G - Q(s, a)] Q(s,a)Q(s,a)+Number(s,a)1[GQ(s,a)]
   For each s s s in the episode:
       π ( s ) ← a r g m a x a Q ( s , a ) π(s) ← argmax_a Q(s, a) π(s)argmaxaQ(s,a)

注:Number(s, a) 为“状态-动作”二元组 (s, a) 首次出现的次数。

需要指出的是,蒙特卡洛ES的收敛性尚未得到严格的证明。

例 5.3 解决二十一点问题:所有幕都是模拟的游戏

5.4 Monte Carlo Control without Exploring Starts

唯一的一般性解决方案:智能体能够持续不断地选择所有可能的动作 → \rightarrow on-policy (同轨策略) methods and off-policy (离轨策略) methods。

在同轨策略方法中,用于生成采样数据序列的策略(即用于决策的策略)被评估或改进的策略 是相同的;而在离轨策略方法中,被评估或改进的策略用于生成采样数据的策略 是不同的,即生成的数据“离开”了待优化的策略所决定的决策序列轨迹。

本节将介绍一个没有试探性出发假设的同轨策略的蒙特卡洛控制方法。

在同轨策略方法中,策略一般是“soft”的。 ϵ \epsilon ϵ- g r e e d y greedy greedy 策略是 ϵ \epsilon ϵ- s o f t soft soft 策略的一个特例。

对于任意一个 ϵ \epsilon ϵ- s o f t soft soft 策略 π \pi π,根据 q π q_\pi qπ 生成的任意一个 ϵ \epsilon ϵ- g r e e d y greedy greedy 策略保证优于或等于 π \pi π

使用 ϵ \epsilon ϵ- s o f t soft soft policies 的同轨策略的首次访问型MC控制算法。

ϵ \epsilon ϵ- s o f t soft soft 策略的策略改进定理的证明。

5.5 Off-policy Prediction via Importance Sampling

用另一个策略产生的幕来学习一个策略的价值函数。

The target policy:用来学习;学习其价值函数是学习过程的目标。
The behavior policy:用来生成行动样本;它是控制智能体和产生行为的策略。

Off-policy learning:学习所用的数据“离开”了待学习的目标策略;在仅有“非”(不遵循)该策略的经验下学习该策略。

离轨策略方法方差更大,收敛更慢;但同时也更强大,更通用。可以将同轨策略方法视为一种目标策略与行动策略相同的离轨策略方法的特例。

一个预测问题实例,两个策略都固定且已知。

覆盖假设(the assumption of coverage):对任意 π ( a ∣ s ) > 0 \pi(a|s)>0 π(as)>0,要求 b ( a ∣ s ) > 0 b(a|s)>0 b(as)>0。在策略 b b b 与策略 π \pi π 不同的状态中, b b b 必须是随机的。另一方面,策略 π \pi π 则可能是确定的。

在控制过程中,目标策略通常是一个确定性的贪心策略。而当行为策略是随机的且具有探索性时,策略 π \pi π 会成为一个确定性的最优策略。不过本节仅讨论当 π \pi π 不变且已知时的“预测问题”。

重要度采样:给定另一个分布的样本,估计一个分布的期望值的一种通用方法/技术。 → \rightarrow 对回报值根据其轨迹在目标策略与行动策略中出现的相对概率(即重要度采样比 ρ t : T − 1 \rho_{t:T-1} ρt:T1)进行加权。因此,目标策略的期望回报为 ρ t : T − 1 G t \rho_{t:T-1}G_t ρt:T1Gt

符号规定:
1,时间编号跨越幕的边界递增;
2, τ ( s ) \tau(s) τ(s):所有访问过状态 s 的时刻(或在幕内首次访问状态 s 的时刻)的集合;
3, T ( t ) T(t) T(t):时刻 t 后的首次终止;
4, G t G_t Gt:在 t 之后到达 T ( t ) T(t) T(t) 时的回报值;

则:
1, { G t } t ∈ τ ( s ) \left \{ G_t \right \}_{t\in \tau(s)} {Gt}tτ(s):状态 s 对应的回报值s;
2, { ρ t : T − 1 } t ∈ τ ( s ) \left \{ \rho_{t:T-1} \right \}_{t\in \tau(s)} {ρt:T1}tτ(s):相应的重要度采样比s。

普通重要度采样:使估计值离观测值很远 → \rightarrow 方差。
加权重要度采样:有偏 → \rightarrow 偏差。

练习 5.5:首访为10,每访为5.5。

例 5.4 对二十一点游戏中的状态值的离轨策略估计

例 5.5 无穷方差:普通重要度采样得到的估计值非常不稳定,因为这个采样的方差是无限大的(因为重要度采样比的方差是无限大的),估计值不会收敛。可以自己写一些采样序列,通过计算对比两种方法。

练习 5.7 解:在初始阶段,我们不太可能从行为策略的采样数据中看到与目标策略相匹配的幕(即只在所有牌的总和大于等于20的时候停牌),因此我们对 V ( s ) V(s) V(s) 的估计将保持为0,这恰好与 V π ( s ) V_{\pi}(s) Vπ(s) 的真实值相接近。当我们从策略b中看到一些符合我们目标策略的轨迹时,我们输出的方差最初会很高,导致较高的误差,随着我们观察到更多的轨迹,方差会逐渐下降,直到10,000次后渐进地接近真实值。

练习 5.8 解:估计器的方差仍然是无穷的,因为每次访问该状态的预期收益仍然是1。在这种情况下,首次访问和每次访问的MC之间的唯一区别是,回报值项的数量会随着访问状态的次数而增加,因此方差会继续增加到无穷大。

5.6 Incremental Implementation

逐幕地进行增量式实现蒙特卡洛预测方法。第二章对收益进行平均,蒙特卡洛方法对回报进行平均。同轨蒙特卡洛和使用普通重要度采样的离轨蒙特卡洛都可以以相同的方式使用第二章中的方法。

使用普通重要度采样的离轨蒙特卡洛方法的增量形式:用2.4中的计算过程再推一遍。

5.7 Off-Policy Monte Carlo Control

本书的第二类学习控制方法——离轨策略方法。同轨方法:在使用策略进行控制(即近似最优策略or控制智能体生成数据?)的同时,也评估该策略。

两个策略分离的好处:当行动策略能对所有可能的动作继续进行采样时,目标策略可以是确定的(例如贪心)。

行动策略必须是软性的,以保证目标策略所有可能做出的动作被选择的概率都非零。

使用重要度采样的离轨策略MC控制方法:此处,目标策略是贪心策略,行为策略是 ϵ \epsilon ϵ- s o f t soft soft 策略。一个潜在的问题是,这种方法只从幕的尾部学习,即在最后一个非贪心动作之后。

练习 5.11:因为此处目标策略为贪心策略,即一个确定性策略,其概率值为1,因此可以替换。

5.8 Importance Sampling on Truncated Returns

(折扣敏感的重要度采样)

根据折扣,对采样进行处理,以减小策略估计的方差。

思路:把折扣看作幕终止的概率,或者部分终止的程度。

平价部分回报(flat partial returns)

回报截断的重要度采样更加复杂,原估计器中的一项,被拆分成了 T − t − 1 + 1 T-t-1+1 Tt1+1 项。相比于折扣率为1 的加权重要度采样,此时分子分母中的采样比系数无法被约分。此时,估计无偏?

5.9 Per-Decision Importance Sampling

考虑收益内部结构的另一种方法。

重要性采样比中的一些项与收益不相关,它们是期望值为1的独立随机变量。

独立随机变量乘积的期望是变量期望值的乘积。

通过移除这些项,可以估计值的减小方差。

尚不知道加权重要度采样是否有每次决策性版本。到目前为止,我们已知的所有为其提出的估计器都不具备统计意义上的一致性(即数据无限时,他们也不会收敛到真实值)。

练习 5.14:权值的增量形式?

5.10 Summary

蒙特卡洛方法的四个优点。

蒙特卡洛预测。

蒙特卡洛控制。

试探性出发。

同轨策略方法和离轨策略方法。

时序差分学习:和蒙特卡洛一样从经验中学习,但也像DP方法一样自举。

Bibliographical and Historical Remarks

狄利克雷问题:数学中,狄利克雷问题(Dirichlet problem)是寻找一个函数,使其为给定区域内一个指定的偏微分方程(PDE)的解,且在边界上取预定值。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《强化学习导论》(Reinforcement Learning: An Introduction)是Richard S. Sutton和Andrew G. Barto合作编写的一本经典教材,是强化学习领域的一本重要参考书。该书系统地介绍了强化学习的基本概念、算法和应用。 这本书分为三个部分。第一部分概述了强化学习的基本概念和问题,介绍了强化学习的基本元素:智能体、环境、状态、动作、奖励等,并讨论了不同类型的强化学习问题。第二部分重点介绍了标准强化学习问题的解决方法,包括动态规划、蒙特卡罗方法和时间差分学习等。通过这些方法,可以学习到如何最大化累积奖励来达到特定目标。第三部分则讨论了强化学习中的其他重要主题,如函数近似学习、策略梯度方法、探索与利用的平衡等。 这本书有几个显著的特点。首先,它以直观的例子和图解介绍了强化学习的基本概念,使得读者能够更容易地理解和掌握相关知识。其次,书中提供了大量的算法和伪代码,方便读者实际操作和实现。此外,书中还包含了丰富的练习题和案例研究,可以帮助读者巩固学习成果和应用知识。 《强化学习导论》被广泛应用于学术界和工业界,对于研究者、学生和工程师都具有重要的参考价值。它为读者提供了一个系统和全面的学习路径,帮助他们深入理解强化学习的原理和方法,并在实际问题中应用和发展强化学习技术。通过阅读《强化学习导论》,读者将能够了解强化学习的基本思想,熟悉常用的解决方法,并能够运用这些知识解决实际问题,为相关领域的研究和应用做出贡献。 ### 回答2: 《强化学习导论》(Reinforcement Learning: An Introduction)是一本经典的强化学习教材,由Richard S. Sutton和Andrew G. Barto合著。 该书的主要目的是介绍强化学习的基本概念、方法和算法。强化学习是一种机器学习的分支,其中智能体通过与环境的交互来学习最佳行动策略。与传统的监督学习和无监督学习不同,强化学习的训练过程主要基于奖励信号的反馈。 《强化学习导论》的内容涵盖了强化学习的基础知识和重要概念。首先,书中介绍了马尔可夫决策过程(Markov Decision Process,MDP)作为强化学习问题的数学框架。然后详细介绍了值函数和策略的概念,以及如何通过值函数和策略来指导智能体的学习和决策过程。 该书还介绍了各种强化学习方法,如蒙特卡罗方法、时序差分学习和Q-learning等。这些方法用于解决基于模型(model-based)和非基于模型(model-free)的强化学习问题。每种方法的优点、局限性和适用场景都有详细阐述。 此外,《强化学习导论》还提供了大量的实例和案例研究,以帮助读者加深对强化学习理论的理解。书中还包含了许多练习题和算法伪代码,读者可以通过实践来巩固所学的知识。 总之,《强化学习导论》是一本系统全面介绍强化学习理论和方法的经典教材。它不仅适合作为强化学习领域的入门读物,也适合作为学术界和工业界从业人员的参考书籍。 ### 回答3: 《强化学习:一种介绍》(Reinforcement Learning: An Introduction)是由Richard S. Sutton和Andrew G. Barto合著的一本权威教材,详细介绍了强化学习的原理和应用。 该书首先从强化学习的基本概念入手,解释了强化学习与其他机器学习方法的区别。强化学习是一种学习代理如何通过与环境的交互来最大化奖励的方法。与监督学习和无监督学习不同,强化学习的代理在无人指导的情况下进行学习,通过不断试错来逐步提升策略的质量。 书中详细介绍了强化学习中的基本要素:环境、状态、动作和奖励。同时,书中还介绍了多种强化学习算法,包括动态规划、蒙特卡洛方法和时序差分学习等。这些算法分别适用于不同类型的问题和环境,读者可以根据具体情况选择合适的算法进行应用。 此外,书中还介绍了强化学习中的进一步概念,如函数逼近和价值函数等。函数逼近是解决大规模问题的关键技术,而价值函数则用于评估状态或策略的质量。通过这些进一步的概念,读者可以深入理解强化学习的工作原理,并应用于解决复杂实际问题。 《强化学习:一种介绍》是一本深入浅出、权威且易读的教材,适合学习强化学习的初学者和相关领域的研究人员。无论是对于计算机科学、人工智能还是机器学习感兴趣的读者,该书都提供了一个良好的入门指南,帮助读者理解并应用强化学习的基本原理和方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值