我正在使用强化学习代理玩 3D 游戏,但无法收集“当前和下一个状态”对。
为了决定执行什么动作,网络必须执行前向传递。
它及时执行前向传递 ,但与此同时,实际环境可能已经发生了显着变化。在电脑游戏中,这意味着已经过去了 10 帧或更多帧(数量不等)。
如果我在同一台计算机上同时运行 100 场比赛,情况会变得更糟。
我没有能力在每一帧停止游戏进行前向传播。无论如何,如果我训练,比如说一个现实生活中的机器人走路,那是不可能的。
问题:
我是否应该坚持“固定时间步长”的方法,只要求每 0.1 秒提供一次操作?当它计算下一个动作时,我可以假装网络不断输出所有跳过帧的最新动作。好主意?
如果这是唯一的选择,那么我是否应该不惜一切代价避免前向道具花费超过“固定时间步长”的情况?(在我的情况下超过 0.1 秒)所以为了安全起见,最好选择 0.2 秒。
似乎很不可靠-有更好的方法吗?
有没有探讨替代方案的论文?(我想这样的论文将是关于现实生活中的机器人训练)