据我了解,Q-learning 为您提供了确定性策略。但是,我们可以使用一些技术从学习的 Q 值中构建一个有意义的随机策略吗?我认为仅仅使用 softmax 是行不通的。
Q-learning 可以用来推导随机策略吗?
人工智能
强化学习
q学习
随机策略
确定性政策
2021-11-09 20:31:24
1个回答
不,不可能使用 Q-learning 来构建一个有意的随机策略,因为学习算法是围绕在每一步仅选择最大化值而设计的,并且这个假设会延续到动作值更新步骤- 即假设代理将始终选择最高的 Q 值,而这又用于计算 TD 目标值。如果您使用随机策略作为目标策略,则假设被打破,Q 表(或近似器)不会收敛到策略*的行动价值估计值。
只有在特定状态下存在多个最大动作值时,Q-learning 产生的策略才能被视为随机的——在这种情况下,您可以使用任何分布选择等效的最大化值。
理论上,您可以使用 Q 值来导出各种分布,例如玻尔兹曼分布或您建议的 softmax(您将需要包含一些权重因子以使 softmax 通常工作)。这些可以很好地用于行为策略、进一步培训,并作为更常见的替代方案-贪婪的方法。但是,它们不是最优策略,训练算法不会以任何有意义的方式调整与您要解决的问题相关的概率。您可以为例如设置一个值为了-贪婪,或者有更多参数的更复杂的动作选择,但没有基于值的方法可以提供一种方法来更改这些参数以使动作选择最优。
在随机策略表现更好的情况下(例如,Scissor、Paper、Stone 与利用代理行为模式的对手相比)基于值的方法无法提供学习正确分布的机制,并且它们通常无法在这种环境中很好地学习。相反,您需要研究策略梯度方法,其中策略函数是直接学习的并且可以是随机的。最基本的策略梯度算法是 REINFORCE,A3C 等 Actor-Critic 的变体非常流行。
* 您可以通过使用与随机目标策略(例如 SARSA 或预期 SARSA)一起工作的估计器来绕过此限制。预期的 SARSA 甚至可以在策略外使用来学习一个随机策略的 Q 值,同时表现不同。但是,这些都不能让您将概率分布更改为最佳分布。