为什么我们可以采取行动一个a从下一个状态s's′在 Q-learning 更新规则的最大部分,如果该动作不会导致任何奖励?

人工智能 q学习 马尔可夫决策过程 策略外方法 策略方法 马尔可夫属性
2021-11-02 15:55:19

我正在使用 OpenAI 的购物车环境。首先,这个环境不是马尔可夫吗?

知道了这一点,我的主要问题是关于 Q-learning 和 off-policy 方法:

对我来说,根据状态的最大 Q 和不是来自所采取行动的奖励值来更新 Q 值有什么奇怪的吗?这如何使学习更好并让您学习最佳策略?

1个回答

我正在使用 OpenAI 的购物车环境。首先,这个环境不是马尔可夫吗?

OpenAI Gym CartPole 环境Markov。您是否知道转移概率不会影响状态是否具有马尔可夫属性。重要的是知道当前状态足以确定下一个状态和原则上的奖励。您不需要明确知道状态转换模型或奖励函数。

CartPole 的非马尔可夫状态的一个示例是,如果缺少其中一个特征 - 例如小车的当前位置,或杆的角速度。仍然有可能让代理尝试解决带有此类缺失数据的 CartPole,但状态将不再是马尔可夫,这将是一个更难的挑战。

对我来说,根据状态的最大 Q 和不是来自所采取行动的奖励值来更新 Q 值有什么奇怪的吗?这如何使学习更好并让您学习最佳策略?

回顾一下,您指的是这个更新方程,或者它的一些变体:

Q(St,At)Q(St,At)+α(Rt+1+γmaxaQ(St+1,a)Q(St,At))

这里的另一个更正是,奖励值所采取的行动和发生的经验有关。这很重要——Rt+1St+1来自采取行动后观察到的经验At,它们不是来自其他任何地方。事实上,这是插入到更新中的唯一经验数据,其他一切都基于以某种自我参照的方式(也称为“引导”)的操作价值估计。

这如何收敛到最优策略?它遵循称为广义策略迭代 (GPI)的过程,其工作原理如下:

  • 目标政策是始终根据您当前的估计采取最佳行动

  • 仅在非策略方法中(即不适用于所有 GPI),需要将行为策略的经验转换为目标策略的价值估计。在单步 Q 学习中,这是maxaQ(St+1,a)来自。它正在计算遵循目标策略的未来价值*。不需要中间值,因为您正在为Q(St,At),没有其他时间步骤需要您关心行为和目标策略之间的差异(只有“现在”和“所有未来,这是自举的”)

  • 一旦你更新了 Q 表中的动作值估计,它就会自动更新目标策略,因为它总是采取最好的估计动作。

  • 由于以以下形式注入了一些真实的经验数据,因此每次更新都会改进您的价值估计Rt+1St+1.

  • 每次估计改进时,目标策略也可以改进并变得更接近最优策略。

  • 当目标策略发生变化时,这会降低估计的准确性,因为它们是针对之前的策略进行的。但是,下次访问相同的状态和操作时,它们将根据新改进的策略进行更新。

在随机环境中,当代理尝试不同的动作时,由于好运或坏运,估计可能会变得更糟。然而,随着时间的推移,大数定律将获胜,价值估计将收敛到接近其当前政策的真实值,这将使政策改进在可能的情况下不可避免(警告,只有在可以证明最终收敛于最优策略的表格 Q 学习方法)。

有证据表明,当估计准确时,始终采取最大化行动是对政策的严格改进。它被称为政策改进定理


* 需要明确的是,在这里取最大值并没有什么特别聪明的地方。从字面上看,这就是选择目标策略要做的事情,所以术语maxaQ(St+1,a)Vπ(St+1)- 处于状态的价值St+1对于当前目标策略π.