# 强化学习论文精读-Zero to Hero **Repository Path**: Zen07/RL-papers-zero-to-hero ## Basic Information - **Project Name**: 强化学习论文精读-Zero to Hero - **Description**: 专注于强化学习领域的论文精读与解析,从基础到进阶,助力开发者和学习者快速掌握强化学习的核心概念与实践技巧。 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-06-25 - **Last Updated**: 2025-07-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: 论文学习 ## README # 强化学习论文精读:从零到英雄 (RL Papers: Zero to Hero) 大家好,我是Andrej Karpathy。欢迎来到我们的强化学习“拆解”和“组装”实验室。 本仓库旨在通过**深度精读**、**代码复现**和**构建知识图谱**的方式,帮助你真正消化现代强化学习的基石。 ### 学习地图 (The Learning Map) 知识不是线性的,它是一张图。下面是我们为你绘制的RL核心思想进化图。我们强烈建议你沿着“核心路径”前进,在打下坚实基础后,再根据兴趣探索其他分支。 ```mermaid graph TD %% 现代简约配色方案 classDef foundation fill:#667eea,color:#ffffff,stroke:#667eea,stroke-width:2px classDef tabular fill:#764ba2,color:#ffffff,stroke:#764ba2,stroke-width:2px classDef valueMethod fill:#00c9ff,color:#ffffff,stroke:#00c9ff,stroke-width:2px classDef policyMethod fill:#92fe9d,color:#000000,stroke:#00c851,stroke-width:2px classDef modelMethod fill:#fa709a,color:#ffffff,stroke:#fa709a,stroke-width:2px classDef advanced fill:#ffecd2,color:#000000,stroke:#fcb045,stroke-width:2px classDef core fill:#ff6b6b,color:#ffffff,stroke:#ee5a52,stroke-width:3px,font-weight:bold %% === 第一层:理论基础 === subgraph FOUND["🎯 理论基础"] MDP["马尔可夫决策过程
MDP"] BELL["贝尔曼方程
Bellman Equations"] POLICY["策略与价值函数
Policy & Value"] MDP --> BELL BELL --> POLICY end %% === 第二层:经典方法 === subgraph TAB["📖 经典方法"] DP["动态规划
Dynamic Programming"] MC["蒙特卡洛
Monte Carlo"] TD["时序差分
TD Learning"] end %% === 第三层:深度方法 === subgraph DEEP["🧠 深度强化学习"] direction TB subgraph VALUE["💙 价值方法"] DQN["⭐ DQN
核心必学"] DDQN["Double DQN"] DUELING["Dueling DQN"] RAINBOW["Rainbow DQN"] end subgraph POLIC["💚 策略方法"] REINFORCE["REINFORCE"] AC["⭐ Actor-Critic
核心必学"] A3C["A3C/A2C"] PPO["⭐ PPO
核心必学"] SAC["SAC"] end subgraph MODEL["💗 模型方法"] MCTS["MCTS"] DYNA["Dyna-Q"] WORLD["World Models"] end end %% === 第四层:前沿研究 === subgraph ADV["🚀 前沿方向"] MULTI["多智能体RL"] META["元学习"] HIER["层次化RL"] OFFLINE["离线RL"] end %% === 连接关系 === POLICY --> DP POLICY --> MC POLICY --> TD TD --> DQN POLICY --> REINFORCE POLICY --> MCTS DQN --> DDQN DQN --> DUELING DDQN --> RAINBOW DUELING --> RAINBOW REINFORCE --> AC AC --> A3C AC --> PPO AC --> SAC TD --> DYNA DQN --> WORLD AC --> WORLD PPO --> MULTI SAC --> META AC --> HIER DQN --> OFFLINE %% === 应用样式 === class MDP,BELL,POLICY foundation class DP,MC,TD tabular class DDQN,DUELING,RAINBOW valueMethod class REINFORCE,A3C,SAC policyMethod class MCTS,DYNA,WORLD modelMethod class MULTI,META,HIER,OFFLINE advanced class DQN,AC,PPO core ``` --- #### 🗺️ **核心路径 (Core Path)** *这是掌握现代强化学习的必经之路。点击链接开始学习。* 1. **[DQN]**: `01-Value-Based-Methods/01-DQN` * **简介**: 深度强化学习的开山之作。 2. **[Double DQN]**: `01-Value-Based-Methods/02-Double-DQN` * **简介**: 解决DQN的高估问题。 * **前置依赖**: DQN 3. **[A2C/A3C]**: `02-Policy-Gradient-Methods/01-A3C` * **简介**: 掌握Actor-Critic思想的基石。 4. **[PPO]**: `02-Policy-Gradient-Methods/02-PPO` * **简介**: 当今最稳定、最常用的策略梯度算法。 * **前置依赖**: A2C/A3C --- #### 🧭 **专业深潜 (Specialization Tracks)** *当你走完核心路径,可以根据兴趣选择深入探索。* * **价值函数专题 (Value-Based Methods)** * **[Dueling DQN]**: `01-Value-Based-Methods/03-Dueling-DQN` - 探索如何更精细地估计价值。 * **高级策略梯度 (Advanced Policy Gradients)** * **[SAC (Soft Actor-Critic)]**: `02-Policy-Gradient-Methods/03-SAC` - 了解最大熵RL如何提升探索和鲁棒性。 --- #### 仓库目录结构 ``` / ├── README.md # <-- 更新后的主导航页 ├── CONTRIBUTING.md # <-- 新增的贡献指南 ├── PAPER_TEMPLATE/ # <-- 新增的论文贡献模板 │ ├── README.md # <-- 模板:分析笔记 │ └── code/ │ └── main.py # <-- 模板:代码实现骨架 ├── 00-Foundations/ │ └── README.md ├── 01-Value-Based-Methods/ # (新) 价值方法模块 │ ├── 01-DQN/ │ │ ├── README.md │ │ ├── code/ │ │ └── paper.pdf │ ├── 02-Double-DQN/ │ │ └── ... │ └── README.md # (可选) 模块介绍 └── 02-Policy-Gradient-Methods/ # (新) 策略梯度模块 ├── 01-A3C/ │ └── ... ├── 02-PPO/ │ └── ... └── README.md # (可选) 模块介绍 ``` --- ### 如何使用与贡献 * **学习**: 进入每个论文文件夹,从`README.md`开始阅读精读笔记,然后挑战`code/`中的复现任务。 * **贡献**: 本项目由社区驱动。我们欢迎任何形式的贡献,无论是修正错误,还是添加新的论文精读。请参考我们的 **[贡献指南 (CONTRIBUTING.md)](CONTRIBUTING.md)**。 **The best way to learn is to build. Let's start building.**