# RL入门级资料(持续更新中) 本文档记录RL入门需要的学习材料 ## 0. 基础 + 科学上网 能够使用Google,YouTube和Google scholar等 + 电脑操作系统 Linux 或者 macOS 要求熟练掌握linux环境基本命令,学会配置代码需要的环境(软件和库) ## 1. 编程能力 ### Python 交互式学习编码:https://www.w3schools.com/python/ ### git 学会利用git基本命令,利用Github或者Gitlab进行代码管理 ### 深度学习框架 TensorFlow:掌握深度强化学习相关的tensorflow, tensorboard等用法 Pytorch:https://pytorch.org/tutorials/intermediate/reinforcement_q_learning.html ### Python IDE + PyCharm + Jupyter notebook ## 2. 仿真环境 + **OpenAI Gym** Gym is an open source Python library for developing and comparing reinforcement learning algorithms by providing a standard API to communicate between learning algorithms and environments, as well as a standard set of environments compliant with that API. **学习文档**:https://www.gymlibrary.dev/ **教程**:https://www.gymlibrary.dev/content/tutorials/ 要求能学会建立一个gym-based环境 + **Safety Gym** It provides a standardized method of comparing algorithms and how well they avoid costly mistakes while learning. If deep reinforcement learning is applied to the real world, whether in robotics or internet-based tasks, it will be important to have algorithms that are safe even while learning—like a self-driving car that can learn to avoid accidents without actually having to experience them. https://openai.com/blog/safety-gym/ + **自动驾驶相关仿真环境** + highway-env: https://github.com/eleurent/highway-env + 华为SMARTS + NeurIPS 2022,有兴趣可组队参加 https://smarts-project.github.io/ + 仿真环境:https://github.com/huawei-noah/SMARTS + SUMO(擅长交通流仿真) + https://www.eclipse.org/sumo/ + CommonRoad-RL(面向自动驾驶决策与规划) + 网站:https://commonroad.in.tum.de/ + 论文https://dl.acm.org/doi/abs/10.1109/ITSC48978.2021.9564898 + carla: https://github.com/carla-simulator/carla + 对硬件要求高 Intel i7 gen 9th - 11th / Intel i9 gen 9th - 11th / AMD ryzen 7 / AMD ryzen 9 16 GB RAM memory NVIDIA RTX 2070 / NVIDIA RTX 2080 / NVIDIA RTX 3070, NVIDIA RTX 3080 Ubuntu 18.04 ## 3. RL算法库 + **spinningup** 学术界,入门必读,针对几种典型的算法,要求能读懂代码并精读相关论文 https://spinningup.openai.com/en/latest/ + OpenAI baselines https://github.com/openai/baselines + **stable-baselines3** (SB3) https://stable-baselines3.readthedocs.io/en/master/guide/install.html 针对SB3,超参数优化参考:https://github.com/DLR-RM/rl-baselines3-zoo + **清华大学开源库 tianshou** https://github.com/thu-ml/tianshou 有中文版tutorial + **Ray** Ray is a unified way to scale Python and AI applications from a laptop to a cluster. 工业界常用,并行计算 https://github.com/ray-project/ray + **RLlib** RLlib is an open-source library for reinforcement learning (RL), offering support for production-level, highly distributed RL workloads while maintaining unified and simple APIs for a large variety of industry applications. Whether you would like to train your agents in a multi-agent setup, purely from offline (historic) datasets, or using externally connected simulators, RLlib offers a simple solution for each of your decision making needs. https://docs.ray.io/en/latest/rllib/index.html ## 4. 书籍/论文 **Sutton的经典书籍(第二版)** http://incompleteideas.net/book/bookdraft2017nov5.pdf 阅读几种典型的算法相关的论文(可在SB3或者spinningup网站中找到对应的算法和论文),比如DQN、PPO、TRPO、TD3、DDPG和SAC等算法。 ## 5. 课程 **CS287** https://www.youtube.com/watch?v=xWPViQ6LI-Q&list=PLwRJQ4m4UJjNBPJdt8WamRAt4XKc639wF 可在b站上看 **CS229** https://www.youtube.com/playlist?list=PLoROMvodv4rMiGQp3WXShtMGgzqpfVfbU ## 6. 云端计算资源 **Colab** https://colab.research.google.com/ **其他** 阿里云、腾讯云、华为云作为云计算龙头,云服务器具有超高性价比,是个人和中小企业选择云平台首选。 ## 7. 知乎 强化学习怎么入门好? https://www.zhihu.com/question/277325426 ## 8. 自动驾驶决策与规划团队 + 慕尼黑工大 https://www.epc.ed.tum.de/en/rt/research/automotive/motion-planning-autonomous-driving/ ## 9. RL-优秀中国学者 + Huazhe Xu: http://hxu.rocks/ + Yao Mu: https://yaomarkmu.github.io/ ## 10. RL-各种研究方向 + curriculum learning for reinforcement learning https://lilianweng.github.io/posts/2020-01-29-curriculum-rl/ ## 11. 目标期刊、会议 ### 期刊 IEEE Transactions on Industrial Informatics ### 会议 AAMAS ## 12. 实验 Machine Learning: What Is Ablation Study? https://www.baeldung.com/cs/ml-ablation-study