这个开源项目用Pytorch实现了17种强化学习算法

强化学习在过去的十年里取得了巨大的发展,如今已然是各大领域热捧的技术之一,今天,猿妹和大家推荐一个有关强化学习的开源项目。

这个开源项目是通过PyTorch实现了17种深度强化学习算法的教程和代码库,帮助大家在实践中理解深度RL算法。

完整的17个算法实现如下:

  • Deep Q Learning (DQN) (Mnih et al. 2013)
  • DQN with Fixed Q Targets (Mnih et al. 2013)
  • Double DQN (DDQN) (Hado van Hasselt et al. 2015)
  • DDQN with Prioritised Experience Replay (Schaul et al. 2016)
  • Dueling DDQN (Wang et al. 2016)
  • REINFORCE (Williams et al. 1992)
  • Deep Deterministic Policy Gradients (DDPG) (Lillicrap et al. 2016 )
  • Twin Delayed Deep Deterministic Policy Gradients (TD3) (Fujimoto et al. 2018)
  • Soft Actor-Critic (SAC & SAC-Discrete) (Haarnoja et al. 2018)
  • Asynchronous Advantage Actor Critic (A3C) (Mnih et al. 2016)
  • Syncrhonous Advantage Actor Critic (A2C)
  • Proximal Policy Optimisation (PPO) (Schulman et al. 2017)
  • DQN with Hindsight Experience Replay (DQN-HER) (Andrychowicz et al. 2018)
  • DDPG with Hindsight Experience Replay (DDPG-HER) (Andrychowicz et al. 2018 )
  • Hierarchical-DQN (h-DQN) (Kulkarni et al. 2016)
  • Stochastic NNs for Hierarchical Reinforcement Learning (SNN-HRL) (Florensa et al. 2017)
  • Diversity Is All You Need (DIAYN) (Eyensbach et al. 2018)

所有实现都能够快速解决Cart Pole(离散动作),Mountain Car Continuous(连续动作),Bit Flipping(具有动态目标的离散动作)或Fetch Reach(具有动态目标的连续动作)。创建者计划尽快添加更多的分层RL算法。

1. Cart Pole 和 Mountain Car

下面展示了各种RL算法成功学习离散动作游戏Cart Pole 或连续动作游戏Mountain Car。使用3个随机种子运行算法的平均结果显示如下:

阴影区域表示正负1标准差。使用超参数可以在 results/Cart_Pole.py 和 results/Mountain_Car.py 文件中找到。

2. Hindsight Experience Replay (HER) Experiements

下图展示了DQN和DDPG在 Bit Flipping(14位)和 Fetch Reach 环境中的性能,这些环境描述在论文《后见之明体验重放2018》和《多目标强化学习2018》中。这些结果复现了论文中发现的结果,并展示了Fetch HER如何让一个agent解决它无法解决的问题。注意,在每对agents中都使用了相同的超参数,因此它们之间的唯一区别是是否使用hindsight。

3. Hierarchical Reinforcement Learning Experiments

上图左边的结果显示了在 Long Corridor 环境中 DQN 和 Kulkarni 等人在 2016 年提出的 hierarchy -DQN 算法的性能。 上图右边的结果显示了 Florensa 等人 2017 年提出的 DDQN 算法和用于分层强化学习的随机神经网络 (SNN-HRL) 的性能。

目前,该项目已经在Github上标星 962,170个Fork(Github地址:https://github.com/p-christ/Deep-Reinforcement-Learning-Algorithms-with-PyTorch)

  • 发表于:
  • 原文链接http://news.51cto.com/art/201909/603731.htm

扫码关注云+社区

领取腾讯云代金券