DRL-Pytorch

DRL-Pytorch

PyTorch实现的深度强化学习算法集合

DRL-Pytorch项目提供多种常用深度强化学习算法的PyTorch实现,包括Q-learning、DQN变体、PPO、DDPG、TD3和SAC等。代码结构清晰统一,便于研究人员和开发者比较不同算法。项目还包含详细使用说明、依赖列表和学习资源推荐,有助于快速入门和实践。

强化学习PyTorchDRL算法深度学习人工智能Github开源项目
<div align=center> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/11f3e200-0e1d-4086-98f5-0cb10ff2087a.png" width=500 /> </div> <div align=center> 流行深度强化学习算法的清晰、健壮和统一的PyTorch实现 </div> <div align=center> <img src="https://img.shields.io/badge/Python-blue" /> <img src="https://img.shields.io/badge/Pytorch-ff69b4" /> <img src="https://img.shields.io/badge/DRL-blueviolet" /> </div> <br/> <br/>

0.星标历史

<div align="left"> <img width="70%" height="auto" src="https://api.star-history.com/svg?repos=XinJingHao/Deep-Reinforcement-Learning-Algorithms-with-Pytorch&type=Date"> </div> <br/>

1.依赖项

除非另有说明,本仓库使用以下Python依赖:

gymnasium==0.29.1 numpy==1.26.1 pytorch==2.1.0 python==3.11.5
<br/>

2.如何使用我的代码

进入你想使用的算法文件夹,运行main.py从头开始训练:

python main.py

更多详细信息,请查看相应算法文件夹中的README.md文件。

<br/>

3.代码的单独链接

<br/>

4.推荐的深度强化学习资源

4.1 模拟环境:

  • gymgymnasium(轻量级且标准的深度强化学习环境;易于入门;速度较慢):
<div align="left"> <img width="60%" height="auto" src="https://yellow-cdn.veclightyear.com/0a4dffa0/64aab302-222f-4c7a-9ed5-49344898f5b8.gif"> </div> <br/>
  • Isaac Gym(NVIDIA的物理模拟环境;GPU加速;超快):
<div align="left"> <img width="60%" height="auto" src="https://yellow-cdn.veclightyear.com/0a4dffa0/c791f9a6-20fa-415d-bba6-e6004e49f2c8.gif"> </div> <br/>
  • Sparrow(轻量级移动机器人模拟器;适合深度强化学习):
<div align="left"> <img width="60%" height="auto" src="https://yellow-cdn.veclightyear.com/0a4dffa0/3d5617f6-3e5c-440d-b42a-8bea14e8f39d.gif"> </div> <br/>
  • ROS(流行且全面的机器人物理模拟器;较重且速度慢):
<div align="left"> <img width="60%" height="auto" src="https://yellow-cdn.veclightyear.com/0a4dffa0/4d94a18d-ab4f-4319-a34d-db3a6371eea3.gif"> </div> <br/>
  • Webots(流行的机器人物理模拟器;比ROS更快;真实性稍低):
<div align="left"> <img width="60%" height="auto" src="https://yellow-cdn.veclightyear.com/0a4dffa0/8839c464-0e6a-46f3-b794-657b59bb4c30.gif"> </div> <br/>

4.2 书籍:

4.3 在线课程:

4.4 博客:

<br/>

5. 重要论文

DQN: Mnih V, Kavukcuoglu K, Silver D, 等. 通过深度强化学习实现人类水平的控制[J]. 自然, 2015, 518(7540): 529-533.

Double DQN: Van Hasselt H, Guez A, Silver D. 具有双Q学习的深度强化学习[C]//AAAI人工智能会议论文集. 2016, 30(1).

Duel DQN: Wang, Ziyu, 等. "用于深度强化学习的决斗网络架构." 国际机器学习会议. PMLR, 2016.

PER: Schaul T, Quan J, Antonoglou I, 等. 优先经验回放[J]. arXiv预印本 arXiv:1511.05952, 2015.

C51: Bellemare M G, Dabney W, Munos R. 强化学习的分布式视角[C]//国际机器学习会议. PMLR, 2017: 449-458.

NoisyNet DQN: Fortunato M, Azar M G, Piot B, 等. 用于探索的噪声网络[J]. arXiv预印本 arXiv:1706.10295, 2017.

PPO: Schulman J, Wolski F, Dhariwal P, 等. 近端策略优化算法[J]. arXiv预印本 arXiv:1707.06347, 2017.

DDPG: Lillicrap T P, Hunt J J, Pritzel A, 等. 使用深度强化学习进行连续控制[J]. arXiv预印本 arXiv:1509.02971, 2015.

TD3: Fujimoto S, Hoof H, Meger D. 解决演员-评论家方法中的函数逼近误差[C]//国际机器学习会议. PMLR, 2018: 1587-1596.

SAC: Haarnoja T, Zhou A, Abbeel P, 等. 软演员-评论家:离策略最大熵深度强化学习与随机演员[C]//国际机器学习会议. PMLR, 2018: 1861-1870.

ASL: 一小时内训练真实世界局部路径规划器:通过部分解耦强化学习和矢量化多样性

<br/>

6. 我的代码训练曲线:

Q学习:

<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/6b0a896f-e5b6-46da-86b8-19dadbe6e197.svg" width=320>

决斗双重DQN:

CartPoleLunarLander
<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/140bc2df-be25-44c6-ac5d-a262f2ed08cd.png" width="320" height="200"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/ef6e8f06-1269-4f28-a085-a3ec511df817.png" width="320" height="200">

Atari游戏上的噪声对偶DDQN:

乒乓球耐力赛车
<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/4714fdc6-905b-4193-aa2c-4c6ad12f9c9f.png" width="320" height="200"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/ebd32444-3b92-43f0-aab5-88b2d580e96b.png" width="320" height="200">
<br/>

优先级DQN/DDQN:

平衡杆月球着陆器
<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/b3ad2a6a-abb9-4e47-aac8-12b7f23d0fb4.svg" width="320" height="200"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/eed8a6e5-bbbc-4d32-9749-a0e1efc34577.svg" width="320" height="200">
<br/>

分类DQN:

平衡杆月球着陆器
<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/23eaae5e-1466-49d6-bc94-51831b6f4c9c.svg" width="320" height="200"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/d205ab6c-b73a-4dce-9747-9c83f1be4cd5.svg" width="320" height="200">
<br/>

噪声网络DQN:

平衡杆月球着陆器
<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/ae219a82-9215-47bf-9b79-8475368bae05.png" width="320" height="200"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/594103f0-b2b0-4532-a24f-356e9de57203.png" width="320" height="200">
<br/>

离散PPO:

<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/0a0c7a7e-7e33-46cd-a72a-96499e412ca3.jpg" width=700>

连续PPO:

<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/9091ac74-e8e4-46d2-a589-2abdbae6e421.jpg">

DDPG:

钟摆连续月球着陆器
<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/79947025-eabc-4b30-9ecb-50c28f12e6c5.svg" width="320" height="200"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/c8841a81-1922-4ce6-a69b-1b88d4fd8d3b.svg" width="320" height="200">
<br/>

TD3:

<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/aad2bb98-3ff8-4896-a526-24be3f3aa315.png" width=700>

连续SAC:

<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/8e946117-1ca7-4c74-b445-b2dcc22d099a.jpg" width=700>

离散SAC:

<img src="https://yellow-cdn.veclightyear.com/0a4dffa0/03e935f8-b93b-4b36-94ea-8fc272094076.jpg" width=700>

演员-共享者-学习者 (ASL):

<div align="left"> <img width="70%" height="auto" src="https://yellow-cdn.veclightyear.com/0a4dffa0/98a7620c-fe53-4844-b597-b72da53f3055.svg"> </div>

编辑推荐精选

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

热门AI工具AI办公办公工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

模型训练热门AI工具内容创作智能问答AI开发讯飞星火大模型多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

热门AI工具生产力协作转型TraeAI IDE
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

AI助手热门AI工具AI创作AI辅助写作讯飞绘文内容运营个性化文章多平台分发
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

下拉加载更多