强化学习中同一状态的不同奖励

时间:2017-04-15 13:07:12

标签: machine-learning reinforcement-learning q-learning

我想为Chrome恐龙游戏(您离线时可以玩的游戏)实施Q-Learning。

我将我的状态定义为:到下一个障碍物的距离,速度和下一个障碍物的大小。

对于奖励,我想使用成功通过障碍的数量,但可能会发生相同的状态有不同的直接奖励。同样类型的障碍可能会在游戏后期再次出现,但是传递它的奖励会更高,因为已经有更多障碍物通过。

我现在的问题是:这是一个问题还是Q-Learning仍然有效?如果不是有更好的方法吗?

1 个答案:

答案 0 :(得分:3)

MDP的定义表示奖励r(s,a,s')被定义为在州a采取行动s以搜索州s'的预期奖励}。这意味着只要具有明确的期望,给定的(s,a,s')可以具有不变的奖励,或者一些奖励的分配。正如您所定义的那样,奖励与通过的障碍数量成正比。因为游戏可以永远持续,所以某些(s,a,s')的奖励看起来像是自然数的总和。这个系列有所不同,所以没有期望。实际上,如果你运行Q-learning,你可能会看到值函数发散(NaN值),但是学习中间的策略可能没问题,因为增长最快的值将是最好的状态动作对。 / p>

为避免这种情况,您应该选择不同的奖励功能。您可以奖励代理人在其死亡时获得的分数(最终奖励很高,否则为零)。只要代理人别无选择,只要向前迈进,你也会很好地给予生活奖励(每一步都有小奖励)。只要将最高总奖励分配给最长的运行(并且对(s,a,s')元组的奖励的预期得到了很好的定义),这是好的。