当前位置: 首页 > 工具软件 > RL Coach > 使用案例 >

强化学习 - Deep RL开源项目总结

岳志义
2023-12-01

https://zhuanlan.zhihu.com/p/24392239

一. Lua 语言的程序包(运用框架:Torch 7):

1. 相关论文:Human-level control through deep reinforcement learning

CODE链接(需翻墙) 另外的链接(不需要翻墙):kuz/DeepMind-Atari-Deep-Q-Learner

实现的算法名称:Deep Q-Networks(DQN)

推荐指数(★★★★★)

 

推荐理由:谷歌公司开源的第一个深度强化学习软件包,重要价值不用我多说了吧。

 

 

2. 软件包名称:ehrenbrav/DeepQNetwork

实现算法:DQN 应用场景:玩超级马里奥游戏 推荐指数(★★★)

相关论文:Human-Level Control through Deep Reinforcement Learning

 

 

3. 软件包名称:Kaixhin/Atari

实现算法: DQN, persistent advantage learning, dueling network, double DQN, A3C

 

推荐指数(★★★★)

 

 

4. 软件包名称:iassael/learning-to-communicate

实现算法:Reinforced Inter-Agent Learning (RIAL) and Differentiable Inter-Agent Learning (DIAL)

推荐指数(★★★)

相关论文:[1605.06676] Learning to Communicate with Deep Multi-Agent Reinforcement Learning

 

 

5. 软件包名称:facebook/MazeBase

推荐指数(★★★) 推荐理由:Simple environment for creating very simple 2D games and training neural network models to perform tasks within them

相关论文:A Sandbox for Learning from Games

 

 

6. 软件包名称:eparisotto/ActorMimic

推荐指数(★★★) 实现算法:ActorMimic

相关论文:Actor-Mimic: Deep Multitask and Transfer Reinforcement Learning

 

 

二. Python语言的DRL程序包:

基于TensorFlow:

1. 软件包名称:devsisters/DQN-tensorflow

实现算法:DQN

推荐指数(★★★)

相关论文:Human-Level Control through Deep Reinforcement Learning

 

 

2. 软件包名称:gliese581gg/DQN_tensorflow

实现算法:DQN

推荐指数(★★)

 

 

3. 软件包名称:nivwusquorum/tensorflow-deepq

实现算法:DQN

推荐指数(★★★★)

推荐理由:可以用Jupyter Notebook

 

 

4. 软件包名称: deep-rl-tensorflow

实现算法:DQN、DDQN、Dueling Network

相关论文:

[1] Playing Atari with Deep Reinforcement Learning

[2] Human-Level Control through Deep Reinforcement Learning

[3] Deep Reinforcement Learning with Double Q-learning

 

[4] Dueling Network Architectures for Deep Reinforcement Learning

推荐指数(★★★★★) 推荐理由:基于TensorFlow下的多种DRL算法实现,有很好的扩展价值。

 

 

5. 软件包名称:coreylynch/async-rl

实现算法:A3C 推荐指数(★★★★)

 

相关论文:Asynchronous Methods for Deep Reinforcement Learning".

 

推荐理由:结合使用Tensorflow + Keras + OpenAI Gym

 

 

基于Keras:

1. 软件包名称:matthiasplappert/keras-rl

实现算法:

  • Deep Q Learning (DQN) [1][2]
  • Double DQN [3]
  • Deep Deterministic Policy Gradient (DDPG) [4]
  • Continuous DQN (CDQN or NAF) [6]
  • Cross-Entropy Method (CEM) [7][8]

相关论文在标注链接里面。

推荐指数(★★★★★)

推荐理由:基于keras的最好的一款DRL软件包,实现的算法较全(包括离散动作空间、连续动作空间)

 

基于Theano:

1. 软件包名称:spragunr/deep_q_rl

实现算法:DQN

推荐指数(★★★)

推荐理由:基于Theano框架

 

基于neon深度学习包:

1. 软件包名称:tambetm/simple_dqn

实现算法:DQN

相关论文:Human-Level Control through Deep Reinforcement Learning

推荐指数(★★)

 

其它的一些Python语言的DRL软件包:

1. 软件包名称:VinF/deer

主要实现算法:DQN,prioritized experience replay, double Q-learning, DDPG

推荐指数(★★★)

 

 

2. 软件包名称:muupan/async-rl

实现算法: A3C 推荐指数(★★)

相关论文:Asynchronous Methods for Deep Reinforcement Learning.

 

 

3. 软件包名称:miyosuda/async_deep_reinforce

实现算法: A3C

推荐指数(★★)

相关论文:Asynchronous Methods for Deep Reinforcement Learning.

 

 

4. 软件包名称:openai/rllab

实现算法:

推荐指数(★★★★★)

推荐理由:OpenAI出品,必是精品。

 

 

5. 软件包名称:openai/gym

推荐指数(★★★★★)

推荐理由:OpenAI Gym is a toolkit for developing and comparing reinforcement learning algorithms.

6.软件包名称:openai/universe

推荐指数(★★★★★)

推荐理由:A software platform for measuring and training an AI's general intelligence across the world's supply of games, websites and other applications.(多么美好的未来啊)

 

 

7. 软件包名称:joschu/modular_rl

实现算法: TRPO,Proximal Policy Optimization,CEM

推荐指数(★★★)

 

 

8. 软件包名称:openai/vime

实现算法:Variational Information Maximizing Exploration (VIME)

推荐指数(★★)

相关论文:VIME: Variational Information Maximizing Exploration

 

 

C和C++的DRL程序包:

1. 相关论文:Human-level control through deep reinforcement learning

CODE链接 实现算法:DQN

推荐指数(★★★★)

 

推荐理由:首次基于Caffe深度学习框架尝试解决深度强化学习问题。

 

 

2. 软件包名称:Replicating-DeepMind

主要实现算法:DQN

推荐指数(★★)

 

 

3. 软件包名称:xbpeng/DeepTerrainRL

相关论文: Terrain-Adaptive Locomotion Skills Using Deep Reinforcement Learning

推荐指数(★★)

 

 

4.软件包名称:deepmind/lab

推荐指数(★★★★★)

推荐理由:A customisable 3D platform for agent-based AI research(用来对抗OpenAI的Universe?)

 

 

5. 软件包名称:junhyukoh/nips2015-action-conditional-video-prediction

推荐指数(★★)

相关论文:Action-Conditional Video Prediction using Deep Networks in Atari Games

 

 

6. 软件包名称:mhauskn/dqn

 

实现算法:DRQN (Recurrent DQN)

推荐指数(★★★)

相关论文:Deep Recurrent Q-Learning for Partially Observable MDPs

 

 

Javascript的DRL程序包:

1. 软件包名称:karpathy/reinforcejs

实现算法:

  • Dynamic Programming methods
  • (Tabular) Temporal Difference Learning (SARSA/Q-Learning)
  • Deep Q-Learning
  • Stochastic/Deterministic Policy Gradients and Actor Critic architectures for dealing with continuous action spaces. (very alpha, likely buggy or at the very least finicky and inconsistent)

推荐指数(★★★★)

推荐理由:单凭Javascript,我就觉得很牛逼了。

 

 

Java的DRL程序包:

1. 软件包名称:deeplearning4j/rl4j

实现算法: DQN,A3C

推荐指数(★★★★★)

推荐理由:Java语言,我的最爱。目前商用价值最高的语言。

 

 

另外一些好玩的DRL项目:

1. 软件包名称:yenchenlin/DeepLearningFlappyBird 和 songrotek/DRL-FlappyBird

实现算法:DQN

应用场景:玩愤怒的小鸟

推荐指数(★★★★)

 

 

2. 软件包名称:bitwise-ben/Snake

实现算法:DQN

应用场景:玩贪吃蛇

推荐指数(★★★)

 

 

3. 软件包名称:yanpanlau/DDPG-Keras-Torcs

实现算法:DDPG

基于的框架:keras

应用场景:TORCS赛车

相关论文:Deep Deterministic Policy Gradient

推荐指数(★★★★★) 推荐理由:男生应该都对车有兴趣吧

 

 

4. 软件包名称:Ardavans/DSR

实现算法:DSR

应用场景:Doom射击

推荐指数(★★★★)

相关论文:Deep Successor Reinforcement Learning (DSR)


两年期间,又有许多有价值的强化学习项目在网上开源:

  1. ShangtongZhang/reinforcement-learning-an-introduction

简述:Python replication for Sutton & Barto's bookReinforcement Learning: An Introduction (2nd Edition)

2. dennybritz/reinforcement-learning

简述:Implementation of Reinforcement Learning Algorithms. Python, OpenAI Gym, Tensorflow. Exercises and Solutions to accompany Sutton's Book and David Silver's course.

3. MorvanZhou/Reinforcement-learning-with-tensorflow

简述:Simple Reinforcement learning tutorials,适合入门。

4. deepmind/trfl

简述:TRFL (pronounced "truffle") is a library built on top of TensorFlow that exposes several useful building blocks for implementing Reinforcement Learning agents.

5. tensorlayer/tensorlayer

简述:Deep Learning and Reinforcement Learning Library for Scientists

6. openai/baselines

简述:OpenAI Baselines: high-quality implementations of reinforcement learning algorithms

7. google/dopamine

简述:Dopamine is a research framework for fast prototyping of reinforcement learning algorithms.

8. keras-rl/keras-rl

简述:Deep Reinforcement Learningfor Keras.

9. tensorforce/tensorforce

简述:a TensorFlow library for applied reinforcement learning

10. rll/rllab

简述:rllab is a framework for developing and evaluating reinforcement learning algorithms, fully compatible with OpenAI Gym.

11. NervanaSystems/coach

简述:Reinforcement Learning Coach by Intel AI Lab enables easy experimentation with state of the art Reinforcement Learning algorithms

12. tensorflow/agents

简述:TF-Agents is a library for Reinforcement Learning in TensorFlow

 类似资料: