# 强化学习论文精读-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.**