在强化学习中,最优值是否对应于在给定状态下执行最佳动作?

人工智能 强化学习 定义 价值函数 贝尔曼方程
2021-11-10 18:28:22

我对最优值的定义感到困惑(V) 和强化学习中的最优动作值 (Q*),所以我需要澄清一下,因为我在 Medium 和 GitHub 上阅读的一些博客与文献不一致。

本来我以为最优动作值,Q,表示您执行最大化当前奖励的操作,然后再采取最佳行动。

和最优值,V, 是平均值Q那个状态的值。这意味着如果你处于这种状态,平均“善良”就是这样。

例如:如果我在玩具店,我可以买铅笔、溜溜球或乐高。

Q(toy store, pencil) = -10
Q(toy store, yo-yo) = 5
Q(toy store, Lego) = 50

因此我的Q=50

但我的V在这种情况下是:

V* = -10 + 5 + 50 / 3 = 15

表示无论我采取什么行动,未来的平均预期回报是15.

为了学习的优势,我的基线是15. 所以任何小于0比平均水平差,高于任何水平0好于平均水平。

但是,现在我正在阅读有关如何V实际上假设在给定状态下的最优动作,意思是V在上述情况下为 50。

我想知道哪个定义是正确的。

1个回答

我想知道哪个定义是正确的。

两个定义中的星号 * 代表“遵循最优策略时的价值”意义上的“最优”

所以这个是正确的:

V实际上假设在给定状态下的最优动作,意思是V将是50在上述情况下

但是,您对 Q 的定义略有错误。

我认为这是因为您省略了参数。

状态值函数以状态为参数,Vπ(s),它返回处于状态的值s并遵循固定的政策π. * 用于表示遵循最优策略。

动作值函数有两个参数 - 一个状态和在该状态下可能的动作,Qπ(s,a),它返回处于状态的值s, 采取行动a(无论是否是最好的行动)并遵守政策π 那之后。

您在问题中的断言:

因此我的Q=50

是错误的,或者说没有意义,因为您没有说明参数。您已经用参数列出了 Q 的所有可能值。可以maxaQ(toy store,a)=50,或选择最佳动作π(toy store)=argmaxaQ(toy store,a)=Lego