《Reinforcement Learning: An Introduction》强化学习导论原文翻译 17.3 观察与状态

在本书中,我们将学习的近似值函数(以及第13章中的策略)写为环境状态的函数。这是第一部分中提出的方法的一个重要限制,其中学习值函数被实现为一个表,这样任何值函数都可以精确地近似;这种情况等于假设环境状态被agent完全观测。但是在许多情形下,包括在所有自然智慧生命中,感官输入仅提供关于世界状态的部分信息。某些物体可能被其他物体遮挡,或在agent后面,或几英里外。在这些情况下,环境状态的潜在重要方面不能直接观察到,并且假设学习值函数被实现为环境状态空间上的表,这是一个强的,不切实际的和限制性的假设。
  我们在第二部分中发展的参数函数逼近框架的限制性要小得多,可以说,根本没有限制。在第二部分中,我们保留了学习的值函数(和策略)是环境状态函数的假设,但允许这些函数被参数化任意限制。有些令人惊讶且并未广泛认识到的是,函数逼近包含了部分可观察性的重要方面。例如,如果存在不可观察的状态变量,则可以选择参数化,使得近似值不依赖于该状态变量。效果就像状态变量不可观察一样。因此,参数化案例获得的所有结果都适用于部分可观察性而无需更改。在这个意义上,参数化函数近似的情况包括部分可观察性的情况。
  然而,如果没有对部分可观察性进行更明确的处理,有许多问题无法进行研究。虽然我们不能在这里给他们一个完全的处理,但我们可以概述这样做所需的变化。有四个步骤
  首先,我们会改变问题。环境不会发出其状态,而只发出观测——依赖于其状态的信号,但是,就像机器人的传感器一样,只提供有关它的部分信息。为方便起见,在不失一般性的情况下,我们假设奖励是观察的一个直接的已知的函数(也许观察是一个向量,而奖励是其中一个组成部分)。然后环境相互作用将没有明确的状态或奖励,但只是一个交替的动作序列{A_t} \in A和观察O_t \in O
A_0,O_1,A_1,O_2,A_2,O_3,A_3,O_4,\cdots
永远地持续(参见公式3.1)或形成以特殊终态观察结束的片段。
  其次,我们可以从观察和行动的顺序中恢复本书中使用的状态概念。让我们使用历史这个词符号H_t,作为轨迹的初始部分直到观察:{H_t} = {\rm{ }}{A_0},{O_1}, \ldots ,{A_{t - 1}},{O_t}。历史代表了我们可以了解过去,而不是在数据流之外的最大程度(因为历史是整个过去的数据流)。当然,历史随着 t 而增长,并且可能变得庞大且笨重。状态的概念是对历史的一些简单总结,它与预测未来的实际历史一样有用。让我们明确一下这意味着什么。作为历史的总结,状态必须是历史的函数,S_t = f(H_t),这是因为作为整个历史对于预测未来有用,它必须具有所谓的马尔可夫性。形式上,这是函数 f 的属性。当且仅当由f映射到相同状态\left (f(h)= f(h_0) \right )的任何两个历史 h 和 h_0对于它们的下一次观察具有相同的概率时,函数 f 具有马尔可夫性质,

\begin{array}{l} \;\;\;\;\; f (h) = f (h_0) \\ \Rightarrow \textup{Pr}\{O_{t+1} = o|H_t = h, A_t = a\} = \textup{Pr}\{O_t+1 = o|H_t = h_0, A_t = a\} \end{array}, (17.5)

对于所有o\in Oa\in A。如果 f 是马尔可夫的,则S_t= f(H_t)是我们在本书中使用该术语的状态。我们称之为马尔可夫状态,以区别于历史概括,但未达到马尔可夫性的状态(我们将在稍后考虑)。
  马尔可夫状态是预测下一次观测的良好基础(17.5),但更重要的是,它也是预测或控制任何事物的良好基础。例如,让测试成为未来可能发生的任何特定的交替行动和观察序列。例如,三步测试表示为\tau = a_1 o_1 a_2 o_2 a_3 o_3。给定特定历史 h 的该测试的概率定义为
p(\tau |h)= \textup{Pr} \{O_{t + 1} = o_1,O_{t + 2} = o_2,O_{t + 3} = o_3 | H_t = h,A_t = a_1,A_{t + 1} = a_2,A_{t+2} = a_3\} (17.6)
如果 f 是马尔可夫,h 和 h_0 是映射到 f 下相同状态的任何两个历史,那么对于任何长度的任何测试 \tau,给定两个历史的概率也必须相同:
 f(h)=f(h_0)\Rightarrow p(\tau |h)=p(\tau |h_0)(17.7)
换句话说,马尔可夫状态概括了确定任何测试概率所需的历史中的所有信息。实际上,它概括了进行任何预测所需的所有内容,包括任何GVF,并且为了最佳表现(如果 f 是马尔可夫的,则总是存在确定性函数\pi,使得选择{A_t} \buildrel\textstyle.\over= \pi \left( {f\left( {{H_t}} \right)} \right)是最优的。
  将强化学习扩展到部分可观察问题的第三步是处理某些计算因素。特别是,我们希望状态是历史的紧致概括。例如,恒等函数完全满足马尔可夫 f 的条件,但没什么用,因为对应的状态  S_t=H_t会随着时间的推移而变得笨重,如前所述,但更根本的是因为它永远不会重复发生;Agent永远不会遇到相同的状态两次(在一个持续的任务中),因此永远不会从表格学习方法中受益。我们希望我们的状态和马尔科夫一样紧致。关于如何获得和更新状态存在类似的问题。我们确实不想要一个能够掌握整个历史的函数 f。相反,出于计算原因,我们更倾向于获得与 f 相同的效果,增量递归更新,结合下一个数据增量A_tO_{t+1},从S_t计算S_{t+1}
S _{t+1}= u(S_t,A_t,O_{t+1}),对于所有t\geq 0,(17.8)
给出第一个状态 S_0 。函数 u 称为状态更新函数。例如,如果 f 是恒等的(S_t=H_t),那么你只会通过在其上附加A_tO_{t+1}来扩展 S_t 。给定 f,总是可以构造相应的 u,但是它可能在计算上不方便,并且如在恒等示例中,它可能不会产生紧致状态。状态更新函数是处理部分可观察性的任何 agent 体系结构的核心部分。它必须是可以有效计算的,因为在状态可用之前不能进行任何动作或预测。图17.1给出了这种 agent 体系结构的整体图。

《Reinforcement Learning: An Introduction》强化学习导论原文翻译 17.3 观察与状态_第1张图片

图17.1:概念agent体系结构,包括模型,计划程序和状态更新函数。在这种情况下,世界接收动作 A 并发出观察 O 状态更新函数u 使用观察和动作副本来产生新状态。新状态输入到策略和值函数,产生下一个动作,并且还输入到规划器(和 u)。对学习负有最大责任的信息由虚线显示,这些虚线在对角线上穿过它们改变的方框。奖励R直接改变政策和价值功能。行动,奖励和状态改变了模型,它与规划器密切合作,也改变了策略和价值函数。请注意,规划器的操作可以与agent - 环境交互分离,而其他进程应该在锁定步中与此交互操作以跟上新数据的到达。另请注意,模型和规划器不直接处理观察,而只处理由 u 生成的状态,可以作为模型学习的目标。

  通过状态更新函数获得马尔可夫状态的示例由称为部分可观察的MDP或POMDP的贝叶斯方法提供。在这种方法中,假设环境具有良好定义的潜在状态 X_t,它是基础并产生环境的观察结果,但是从不可用于agent(并且不应与agent用于做出预测和决策的状态S_t混淆 )。 POMDP的自然马尔可夫状态 S_t 是给定历史的潜在状态的分布,称为信念状态。具体而言,假设通常情况下存在无数个潜在状态,X_t\in \{1,2,...,d\}。然后,信念状态是向量S_t\doteq s_t\in \mathbb{R}^d,其中分量为

s_t[i]\doteq \textup{Pr}\{X_t=i|H_t\},对于所有可能的潜在状态i \in \{1,2,..., d\}

信念状态保持相同的大小(相同数量的组件)但是增长。它也可以通过贝叶斯规则逐步更新,假设一个人完全了解环境的内部运作。具体而言,信念状态更新函数的第 i 个组成部分是

u(\mathbf{s},a,o)[i]\doteq \frac{\sum_{x=1}^{d}\mathbf{s}[x]p(i,o|x,a)}{\sum_{x=1}^{d}\sum_{x'=1}^{d}\mathbf{s}[x]p(x',o|x,a)}(17.9)
对于所有a\in Ao \in O,信念状态\mathbf{s}\in \mathbb{R}^d与分量s [x],其中四参数 p 函数不是通常的MDP(如第3章所述),而是类似于POMDP,就潜在状态而言:p(x',o|x,a)\doteq \textup{Pr}\{X_t=x',O_t =o|X_{t-1}=x,A_{t-1}=a\}。这种方法在理论工作中很受欢迎,并且具有许多重要的应用,但其假设和计算复杂性的拓展性不佳,我们不建议将其作为人工智能的一种方法。
Markov状态的另一个例子是由预测状态表示(Predictive State Representations,PSR)提供的。 PSR解决了POMDP方法的弱点,即其agent状态S_t的语义基于环境状态X_t,它无法被观察到,因此很难学习。在PSR和相关方法中,agent状态的语义反而基于对未来观察和行动的预测,这些预测很容易观察到。在PSR中,马尔可夫状态被定义为d个挑选的“核”测试的概率的d维向量,如上所述(17.6)。然后,向量由状态更新函数 u 更新,该函数类似于贝叶斯规则,但其语义基于可观察数据,这可以说更容易学习。这种方法已经在很多方面得到了扩展,包括终端测试,成分测试,强大的“谱”方法,以及通过TD方法学习的闭环和时间抽象测试。一些最好的理论发展是针对称为可观察算子模型(OOM)和顺序系统(Thon,2017)的系统。
  我们在强化学习中如何处理部分可观察性的简要概述中的最后一步是重新引入近似。正如第二部分的介绍中所讨论的那样,要想更接近人工智能,必须接受近似。对于各状态而言,这与价值函数一样。我们必须接受并使用近似的状态概念。近似状态将在我们的算法中扮演与以前相同的角色,因此我们继续使用符号 S_t 作为agent使用的状态,即使它可能不是马尔可夫的。
  也许近似状态的最简单的例子就是当前的观察,S_t\doteq O_t。当然,这种方法无法处理任何隐藏的状态信息。最好使用最后的k个观察和动作,S_t\doteq O_t,A_{t-1},O_{t-1},...,A_{t-k},对于k≥1,这可以通过状态更新函数来实现,该函数只是将新数据移入并将最旧数据移出。这种k阶历史方法仍然非常简单,但与尝试直接使用单个立即观察作为状态相比,可以大大增加agent的能力。
  当马尔可夫性质(17.5)只是近似满足时会发生什么?不幸的是,当确定Markov属性的一步预测变得甚至稍微不准确时,长期预测性能会急剧下降。长期测试,GVF和状态更新函数可能都很差。短期和长期近似目标是不同的,目前没有有用的理论保证。
  尽管如此,仍有理由认为本节概述的一般概念适用于近似情况。一般的想法是,对某些预测有益的状态对其他人也有好处(特别是马尔可夫状态,足以进行一步预测,对所有其他预测也是如此)。如果我们放下马尔可夫案例的特定结果,那么总体思路与我们在17.1节中讨论的多头学习和辅助任务类似。我们讨论了对辅助任务有益的表示通常对主要任务也有好处。总之,这些提出了一种部分可观察性和表征性学习的方法,其中追求多个预测并用于指导状态特征的构建。由完美但不切实际的马尔可夫属性提供的保证被启发式所取代,即对某些预测有益的东西可能对其它部分有益。这种方法可以很好地适应计算资源。使用大型机器,人们可以尝试大量的预测,可能有利于那些与最终目标最相似或最容易可靠学习的预测,或者根据其他一些标准。这里重要的是不要手动选择预测,而应该由agent去做。这将需要一种通用语言进行预测,以便agent可以系统地探索大量可能的预测空间,通过它们筛选最有用的预测。
  特别地,POMDP和PSR方法都可以应用于近似状态。状态的语义在形成状态更新函数时很有用,就像在这两种方法和k阶方法中一样。为了在状态中保留有用的信息,不需要语义是正确的。一些状态增强的方法,例如Echo状态网络(Jaeger,2002),几乎保留了关于历史的全部信息,但仍然表现良好。有很多可能性,我们希望在这个领域有更多的工作和想法。学习近似状态的状态更新函数是表示学习的主要问题,只要它出现在强化学习中。

你可能感兴趣的:(强化学习,教材学习)