【发布时间】:2015-02-26 22:41:12
【问题描述】:
我在一个大小为 (n x n) 的网格上实现了 Q 学习,中间的单个奖励为 100。代理通过以下代理学习 1000 个 epoch 以达到目标:他以 0.8 的概率选择状态-动作值最高的移动,并选择 0.2 的随机移动。移动后,状态-动作值由 Q 学习规则更新。
现在我做了以下实验:除了底部的邻居之外,目标旁边的所有字段都获得了 -100 的奖励。在学习了 1000 个 epoch 后,agent 明显避免了走上坡路,而最频繁地从下坡路到达目标。
学习后,将底部邻居的奖励设置为 -100,将顶部邻居的奖励设置回 0,并在坚持状态动作值图的同时再次开始学习 1000 个 epoch。 这真的很可怕!代理需要很长时间才能找到目标(在 9x9 网格上最多 3 分钟)。检查路径后,我发现代理花费大量时间在 (0,0)->(1,0)->(0,0)->(1,0) 等两个状态之间跳跃...
我很难想象这种行为是否有意义。有人遇到过这样的情况吗?
【问题讨论】:
标签: algorithm machine-learning artificial-intelligence reinforcement-learning q-learning