你可能很感兴趣知道 v2 激光雷达追踪中存在一个错误,使代理认为有幻像,有时会与自己的腿相交:
https://github.com/openai/gym/pull/1789
发现这个错误让我对任何解决了 BipedalWalkerHardcore-v2 的人印象更加深刻 - 来自激光雷达的观察结果似乎不一致且不正确,返回最远的命中结果而不是最近的命中结果。
...
在修复之前 - 激光雷达追踪地面,并击中坑的一侧,让代理在坑前有一个“幻影峡谷”的印象,只有在它接近坑时才会出现:
https://i.imgur。 com/XKPnRTR.png
...
修复后 - 激光雷达被地形停止,即使后面有另一个物体:https ://i.imgur.com/Gg8B5BD.png
...
在对文档进行了三次检查之后——我提交了一个小调整(对于应该被忽略的对象返回 -1 而不是 1)——现在看起来腿被正确地忽略了,并且在所有情况下跟踪都是准确的!
...
在我看来,BipedalWalkerHardcore-v2 的解决方案不仅学会了处理复杂的环境,而且领先一步,能够处理复杂的环境和幻觉,导致他们在最轻微的立方体提示下跳跃,并且即使在他们脚下看不到地面时也能继续奔跑,更多地依赖触摸传感器而不是激光雷达,或者可能识别出真坑和“假坑”之间“形状”的差异(一个真正的坑)坑有地板)
截至 2020 年 1 月 31 日,已通过这些修复将 BipedalWalkerHardcore-v2 升级到 BipedalWalkerHardcore-v3。
您现在可能想尝试重新培训您的代理!(虽然它仍然是一个难以解决的环境)
为了解释为什么 DDPG 不能解决它,虽然有 bug,但 BipedalWalkerHardcore-v2是solvable:这个问题的解决方案和环境本身一样坑坑洼洼。例如,要学会跳过环境中的一个坑,智能体必须执行一系列复杂的动作,这些动作很难随机发现。每次失败时,它都知道靠近坑很可能会导致巨大的惩罚,并且为了最大化它的奖励,通常会使用像 DDPG 这样的幼稚方法保持静止,因为这样做的奖励更高而不是再次尝试并掉入坑中。简而言之,原版 DDPG 缺乏足够的探索能力,无法在收敛到不靠近坑之前找到所需的一系列复杂动作。更不用说它需要学习成功的所有其他事情。
在已解决该问题的极少数已发布示例中,有一个使用了进化策略——一种无梯度的方法,基本上尝试了数百万个策略并对其进行评估,以及一种定制的 A3C 方法,专为解决这一特定环境而量身定制。两者都有很高的计算和样本要求。我根据经验说话,因为我个人使用 RL 探索算法解决了这个环境,该算法可以推广到其他环境,在单个 cpu 上在 4 小时内解决它,并且可以与任何非策略 RL 算法一起使用,但不幸的是我无法由于 IP 与我工作的公司一起发布它。
TLDR;普通 DDPG 解决它的机会非常小。