Files
easy-rl/codes/README.md
johnjim0816 8028f7145e update
2021-05-03 23:00:01 +08:00

4.5 KiB
Raw Blame History

Eng|中文

写在前面

本项目用于学习RL基础算法尽量做到: 注释详细结构清晰

代码结构主要分为以下几个脚本:

  • model.py 强化学习算法的基本模型比如神经网络actorcritic等
  • memory.py 保存Replay Buffer用于off-policy
  • plot.py 利用matplotlib或seaborn绘制rewards图包括滑动平均的reward结果保存在result文件夹中
  • env.py 用于构建强化学习环境也可以重新自定义环境比如给action加noise
  • agent.py RL核心算法比如dqn等主要包含update和choose_action两个方法
  • main.py 运行主函数

其中model.py,memory.py,plot.py 由于不同算法都会用到,所以放入common文件夹中。

运行环境

python 3.7、pytorch 1.6.0-1.7.1、gym 0.17.0-0.18.0

使用说明

运行带有train的py文件或ipynb文件进行训练如果前面带有tasktask0_train.py表示对task0任务训练 类似的带有eval即为测试。

算法进度

算法名称 相关论文材料 环境 备注
On-Policy First-Visit MC medium blog Racetrack
Q-Learning towardsdatascience blog,q learning paper CliffWalking-v0
Sarsa geeksforgeeks blog Racetrack
DQN DQN Paper,Nature DQN Paper CartPole-v0
DQN-cnn DQN Paper CartPole-v0 与DQN相比使用了CNN而不是全链接网络
DoubleDQN DoubleDQN Paper CartPole-v0
Hierarchical DQN H-DQN Paper CartPole-v0
PolicyGradient Lil'log CartPole-v0
A2C A3C Paper CartPole-v0
SAC SAC Paper Pendulum-v0
PPO PPO paper CartPole-v0
DDPG DDPG Paper Pendulum-v0
TD3 TD3 Paper HalfCheetah-v2

Refs

RL-Adventure-2

RL-Adventure