在强化学习的背景下,奖励函数在马尔可夫决策过程 (MDP) 中依赖于什么?

机器算法验证 强化学习
2022-03-17 15:10:15

我试图在强化学习的背景下理解 MDP,特别是我试图理解奖励函数明确依赖的内容。

我已经看到了 Andrew Ng 在他的讲义中定义的奖励函数公式

R:S×AR

这意味着奖励函数取决于当前状态和在该状态下采取的行动并映射到某个实数(奖励)。

为了获得不同的观点,我阅读了维基百科的解释:

该过程在下一个时间步通过随机移动到新状态 s' 来响应,并给予决策者相应的奖励在我看来,这似乎是一种不同的解释,因为这会使奖励函数更像是以下形式的函数:Ra(s,s)

R:S×A×SR

在我看来,这似乎是完全不同的事情。在 MDP 应用于强化学习的背景下,我试图了解这两个公式是否实际上相同(以及是否有可能证明它们的等价性)。

4个回答

这两个定义并不相同,但它本质上归结为一个建模选择:对于某些问题,奖励函数可能更容易在 (state,action) 对上定义,而对于其他问题,元组 (state,action,州)可能更合适。甚至还有第三个选项只定义当前状态的奖励(这也可以在一些参考资料中找到)。

但是,我确实认为(状态,动作)对上的奖励函数 R(s,a) 的定义是最常见的。但是无论您对奖励函数的确切设计选择如何,核心学习算法都保持不变。

除了Pierre Lison支持奖励函数的回答之外,Sutton 和 Barto 在他们的书“强化学习:简介”的第 3.6 章中谈到了这个主题。R:S×AR

尽管就最常用的答案而言,公认的答案是正确的,但他们更喜欢从上述章节:R:S×A×SR

在传统的 MDP 理论中,总是出现在期望值和 [...] 中,因此使用更容易。然而,在强化学习中,我们更多地不得不参考个人的实际或样本结果。在强化学习教学中,我们发现符号在概念上更直接且更易于理解。RssaRsaRssa

我认为与 MDP 设置中的相同由转换函数确定。因此变为,可以简化为R(s,a,s)R(s,a)sT(s,a)R(s,a,s)R(s,a,T(s,a))R(s,a)

它们在以下意义上是等价的。现在假设您有一个由 (s1,a1),(s2,a2),..,(sk,ak) 组成的离线数据集,奖励为 r1,r2,...,rk。根据数据,您可以估计具有转移概率 T(s,a,s') 和 R(s,a,s') 的 MDP 模型。您还可以将 MDP 模型估计为 T(s,a,s') 和 R(s,a)。理论上求解这两个MDP模型,应该得到相同的policy和value结果。

以上是基于模型的学习。您还可以通过在线方式使用离线数据集来使用 Q-learning 方法(假设您依次观察 sk、ak、rk)。显然,由于两种形式的奖励不同,估计的 Q 矩阵 Q^t(s,a) 在学习期间会有所不同。但是,您应该在 Q(s,a) 收敛时获得相同的结果。原因是因为 P(s,a,s') 已经包含了从 R(s,a,s') 获取 R(s,a) 所需的信息。