# 入门教程

> 来源：https://dqn.cn/basics/ ｜ 作者：DQN.CN 编辑部 ｜ 发布：2026-10-31 ｜ 更新：2026-10-31 ｜ 许可：CC BY-NC-SA 4.0（文字）/ MIT（代码）

<div class="sec-intro">
<div class="sec-intro-text">

入门教程面向第一次接触强化学习的读者，从“什么是强化学习”讲起，先用多臂老虎机认识探索与利用，再依次介绍马尔可夫决策过程、贝尔曼方程，以及动态规划、蒙特卡洛、时序差分三类经典的表格型求解方法。最后用 Gymnasium 亲手跑通 FrozenLake 与 CartPole。建议按顺序阅读，每节末尾都有指向下一节的链接。

</div>
<img class="sec-intro-img" src="/illus/basics.svg" alt="入门教程插图：网格世界中的智能体沿路径走向终点" width="220" height="150">
</div>

## 目录

| 序号 | 章节 | 你将学到 |
| --- | --- | --- |
| 1 | [什么是强化学习](https://dqn.cn/basics/what-is-rl) | 基本要素、与监督学习的区别、回报 |
| 2 | [智能体与环境](https://dqn.cn/basics/agent-environment) | 交互循环、状态与观测、奖励设计 |
| 3 | [多臂老虎机](https://dqn.cn/basics/bandit) | 懊悔、ε-贪心、UCB、汤普森采样 |
| 4 | [马尔可夫决策过程（MDP）](https://dqn.cn/basics/mdp) | MP → MRP → MDP、价值函数、占用度量 |
| 5 | [贝尔曼方程](https://dqn.cn/basics/bellman) | 贝尔曼期望方程与最优方程 |
| 6 | [动态规划](https://dqn.cn/basics/dynamic-programming) | 策略评估、策略迭代、价值迭代 |
| 7 | [蒙特卡洛方法](https://dqn.cn/basics/monte-carlo) | 基于完整回合的无模型估计 |
| 8 | [时序差分（TD）学习](https://dqn.cn/basics/td-learning) | TD(0)、自举、偏差与方差 |
| 9 | [Q-learning 与 SARSA](https://dqn.cn/basics/q-learning-sarsa) | 同策略与异策略控制、n 步 SARSA |
| 10 | [Gymnasium 上手](https://dqn.cn/basics/gymnasium) | FrozenLake 与 CartPole 实战 |

## 前置知识

- Python 基础，会用 NumPy
- 概率论基础：期望、条件概率
- （可选）线性代数基础

## 学习建议

- **按顺序读**：前 5 节是概念和数学基础，后 5 节是算法；后面的内容会频繁引用前面的公式和记号。
- **动手跑代码**：每个算法页面都附有可直接运行的代码，结果均在本站环境中实际验证过，并在页面中如实给出输出。
- **做练习题**：每节末尾有练习题，建议至少完成前两道。
- **统一记号**：全站使用 Sutton & Barto 的记号——状态 $S_t$、动作 $A_t$、奖励 $R_{t+1}$、回报 $G_t$、折扣因子 $\gamma$、策略 $\pi$、价值函数 $v_\pi, q_\pi$、估计值 $V, Q$、步长 $\alpha$。

## 运行环境

```bash
pip install gymnasium numpy
```

入门教程的代码只依赖 NumPy 和 Gymnasium，普通笔记本电脑几秒到一分钟内即可运行完毕。
