在 DeepMind 关于 Atari 视频游戏的深度 Q 学习的论文中(这里),他们有一个参数“no-op max”,它是代理在剧集开始时要执行的“无操作”动作的最大数量。
这是用来干嘛的?这是针对某些特定剧集还是针对所有剧集?我的意思是对于某些游戏,如果代理做了任何事情,它会立即失败,并且情节不会继续到该代理可以采取一些行动的程度。
谢谢
在 DeepMind 关于 Atari 视频游戏的深度 Q 学习的论文中(这里),他们有一个参数“no-op max”,它是代理在剧集开始时要执行的“无操作”动作的最大数量。
这是用来干嘛的?这是针对某些特定剧集还是针对所有剧集?我的意思是对于某些游戏,如果代理做了任何事情,它会立即失败,并且情节不会继续到该代理可以采取一些行动的程度。
谢谢
在每场游戏开始时,都会播放随机数量的无操作动作(此类动作的最大数量由该参数控制)以在初始游戏状态中引入多样性。
如果一个代理每次玩同一个游戏时都从完全相同的初始状态开始,他们担心强化学习会简单地学习从初始状态记住一系列好的动作,而不是学习观察当前状态和根据该观察选择一个好的动作(这是我们有兴趣学习的更有趣的事情)。这个想法是,通过在我们“开始游戏”的状态中引入随机性,智能体应该变得不可能/更难“作弊”并简单地记住来自单个特定初始状态的完整动作序列。
请注意,在 2017 年,《重温街机学习环境:通用代理的评估协议和开放问题》一文中提出,这类序列无操作操作在上述目标方面并不像我们希望的那样有效,并提出了一种替代解决方案,该解决方案包括通过“粘性动作”在整个游戏中引入随机性(基本上有时随机继续最近选择的动作,而不是代理选择的新动作)。