
摘要
强化学习的潜力在于仅通过指定一个高层次的奖励函数,即可自主解决复杂的序贯决策问题。然而,在实际应用中,往往需要依赖简单而直观的奖励信号,这类信号通常导致稀疏且具有误导性的反馈,从而使强化学习算法面临严峻挑战。要规避这些陷阱,必须对环境进行充分探索,但设计能够实现高效探索的算法,仍是该领域的一项核心难题。我们提出,有效探索的主要障碍源于两个关键问题:一是算法在训练过程中逐渐遗忘如何返回先前访问过的状态(即“脱离”现象),二是未能在探索前先返回到某个状态(即“脱轨”现象)。为解决上述问题,我们提出了Go-Explore算法家族,其基于两个简洁而有力的原则:显式记忆具有潜力的状态,并在主动探索前优先返回到这些状态。Go-Explore成功解决了此前所有未被攻克的Atari游戏,并在所有高探索难度任务中超越了现有最先进方法,尤其在两大极具挑战性的经典游戏《蒙提祖玛的复仇》(Montezuma’s Revenge)和《陷阱》(Pitfall)上实现了数量级的性能提升。此外,我们在一个稀疏奖励的机器人抓取与放置任务中验证了Go-Explore在实际应用中的潜力。进一步地,我们证明引入目标条件策略可显著提升Go-Explore的探索效率,并使其在训练过程中具备应对随机性的能力。Go-Explore所展现出的显著性能优势表明,显式记忆状态、返回状态并从这些状态出发进行探索,是一种强大且通用的探索机制。这一简单而深刻的洞察,或将成为构建真正智能学习代理的关键所在。
代码仓库
qgallouedec/lge
pytorch
GitHub 中提及
uber-research/go-explore
官方
tf
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| atari-games-on-atari-2600-berzerk | Go-Explore | Score: 197376 |
| atari-games-on-atari-2600-bowling | Go-Explore | Score: 260 |
| atari-games-on-atari-2600-centipede | Go-Explore | Score: 1422628 |
| atari-games-on-atari-2600-freeway | Go-Explore | Score: 34 |
| atari-games-on-atari-2600-gravitar | Go-Explore | Score: 7588 |
| atari-games-on-atari-2600-montezumas-revenge | Go-Explore | Score: 43791 |
| atari-games-on-atari-2600-pitfall | Go-Explore | Score: 6954 |
| atari-games-on-atari-2600-private-eye | Go-Explore | Score: 95756 |
| atari-games-on-atari-2600-skiing | Go-Explore | Score: -3660 |
| atari-games-on-atari-2600-solaris | Go-Explore | Score: 19671 |
| atari-games-on-atari-2600-venture | Go-Explore | Score: 2281 |
| atari-games-on-atari-games | Go-Explore | Mean Human Normalized Score: 4989.94% |