我正在使用 OpenAI 的购物车环境。首先,这个环境不是马尔可夫吗?
知道了这一点,我的主要问题是关于 Q-learning 和 off-policy 方法:
对我来说,根据状态的最大 Q 和不是来自所采取行动的奖励值来更新 Q 值有什么奇怪的吗?这如何使学习更好并让您学习最佳策略?
我正在使用 OpenAI 的购物车环境。首先,这个环境不是马尔可夫吗?
知道了这一点,我的主要问题是关于 Q-learning 和 off-policy 方法:
对我来说,根据状态的最大 Q 和不是来自所采取行动的奖励值来更新 Q 值有什么奇怪的吗?这如何使学习更好并让您学习最佳策略?
我正在使用 OpenAI 的购物车环境。首先,这个环境不是马尔可夫吗?
OpenAI Gym CartPole 环境是Markov。您是否知道转移概率不会影响状态是否具有马尔可夫属性。重要的是知道当前状态足以确定下一个状态和原则上的奖励。您不需要明确知道状态转换模型或奖励函数。
CartPole 的非马尔可夫状态的一个示例是,如果缺少其中一个特征 - 例如小车的当前位置,或杆的角速度。仍然有可能让代理尝试解决带有此类缺失数据的 CartPole,但状态将不再是马尔可夫,这将是一个更难的挑战。
对我来说,根据状态的最大 Q 和不是来自所采取行动的奖励值来更新 Q 值有什么奇怪的吗?这如何使学习更好并让您学习最佳策略?
回顾一下,您指的是这个更新方程,或者它的一些变体:
这里的另一个更正是,奖励值与所采取的行动和发生的经验有关。这很重要——和来自采取行动后观察到的经验,它们不是来自其他任何地方。事实上,这是插入到更新中的唯一经验数据,其他一切都基于以某种自我参照的方式(也称为“引导”)的操作价值估计。
这如何收敛到最优策略?它遵循称为广义策略迭代 (GPI)的过程,其工作原理如下:
目标政策是始终根据您当前的估计采取最佳行动
仅在非策略方法中(即不适用于所有 GPI),需要将行为策略的经验转换为目标策略的价值估计。在单步 Q 学习中,这是来自。它正在计算遵循目标策略的未来价值*。不需要中间值,因为您正在为,没有其他时间步骤需要您关心行为和目标策略之间的差异(只有“现在”和“所有未来,这是自举的”)
一旦你更新了 Q 表中的动作值估计,它就会自动更新目标策略,因为它总是采取最好的估计动作。
由于以以下形式注入了一些真实的经验数据,因此每次更新都会改进您的价值估计和.
每次估计改进时,目标策略也可以改进并变得更接近最优策略。
当目标策略发生变化时,这会降低估计的准确性,因为它们是针对之前的策略进行的。但是,下次访问相同的状态和操作时,它们将根据新改进的策略进行更新。
在随机环境中,当代理尝试不同的动作时,由于好运或坏运,估计可能会变得更糟。然而,随着时间的推移,大数定律将获胜,价值估计将收敛到接近其当前政策的真实值,这将使政策改进在可能的情况下不可避免(警告,只有在可以证明最终收敛于最优策略的表格 Q 学习方法)。
有证据表明,当估计准确时,始终采取最大化行动是对政策的严格改进。它被称为政策改进定理。
* 需要明确的是,在这里取最大值并没有什么特别聪明的地方。从字面上看,这就是选择目标策略要做的事情,所以术语和- 处于状态的价值对于当前目标策略.