强化学习基础(赵世钰)第一章

第1章 强化学习的基础概念

引言

  • 首先通过示例介绍强化学习(RL)的基本概念。

  • 然后在马尔可夫决策过程的框架下对这些概念进行形式化。


1 网格世界示例 (A Grid-world Example)

  • 网格单元:包含可通过单元格、禁止单元格、目标单元格以及边界。

  • 易于理解,非常适合用于说明概念。

任务

  • 给定任意起始区域,寻找一条通往目标的"好"路径。

  • 如何定义"好"?避免进入禁止单元格、绕路或碰触边界。


2 状态 (State)

状态:智能体相对于环境的状态。

在网格世界示例中,智能体的位置就是状态。有9个可能的位置,因此有9个状态: s 1 , s 2 , ... , s 9 s_1, s_2, \ldots, s_9 s1,s2,...,s9。

s 1 s_1 s1 s 2 s_2 s2 s 3 s_3 s3
s 4 s_4 s4 s 5 s_5 s5 s 6 s_6 s6
s 7 s_7 s7 s 8 s_8 s8 s 9 s_9 s9

状态空间 :所有状态的集合 S = { s i } i = 1 9 \mathcal{S} = \{s_i\}_{i=1}^9 S={si}i=19。


3 动作 (Action)

对于每个状态,有五种可能的动作: a 1 , ... , a 5 a_1, \ldots, a_5 a1,...,a5。

  • a 1 a_1 a1:向上移动;

  • a 2 a_2 a2:向右移动;

  • a 3 a_3 a3:向下移动;

  • a 4 a_4 a4:向左移动;

  • a 5 a_5 a5:保持不动。

状态的动作空间 :一个状态下所有可能动作的集合。 A ( s i ) = { a i } i = 1 5 \mathcal{A}(s_i) = \{a_i\}_{i=1}^5 A(si)={ai}i=15。

问题:不同状态能否有不同的动作集?可以。


4 状态转移 (State Transition)

当采取一个动作时,智能体可能从一个状态转移到另一个状态,这个过程称为状态转移

  • 在状态 s 1 s_1 s1 选择动作 a 2 a_2 a2,下一个状态为 s 2 s_2 s2: s 1 → a 2 s 2 s_1 \xrightarrow{a_2} s_2 s1a2 s2。

  • 在状态 s 1 s_1 s1 选择动作 a 1 a_1 a1,下一个状态仍为 s 1 s_1 s1: s 1 → a 1 s 1 s_1 \xrightarrow{a_1} s_1 s1a1 s1(向上碰到墙壁出不去,留在原位)。

状态转移定义了与环境的交互。

关于禁止区域的两种情形

  • 情形1 :禁止区域可进入但有惩罚(更一般且更具挑战性)。例如,在 s 5 s_5 s5 执行 a 2 a_2 a2 会转移到 s 6 s_6 s6。

  • 情形2 :禁止区域不可进入(如同被墙包围)。例如,上述动作会停留在 s 5 s_5 s5。

状态转移的表格表示

下面表格展示了每个状态-动作对对应的下一个状态:

状态 a 1 a_1 a1 (向上) a 2 a_2 a2 (向右) a 3 a_3 a3 (向下) a 4 a_4 a4 (向左) a 5 a_5 a5 (静止)
s 1 s_1 s1 s 1 s_1 s1 s 2 s_2 s2 s 4 s_4 s4 s 1 s_1 s1 s 1 s_1 s1
s 2 s_2 s2 s 2 s_2 s2 s 3 s_3 s3 s 5 s_5 s5 s 1 s_1 s1 s 2 s_2 s2
s 3 s_3 s3 s 3 s_3 s3 s 3 s_3 s3 s 6 s_6 s6 s 2 s_2 s2 s 3 s_3 s3
s 4 s_4 s4 s 1 s_1 s1 s 5 s_5 s5 s 7 s_7 s7 s 4 s_4 s4 s 4 s_4 s4
s 5 s_5 s5 s 2 s_2 s2 s 6 s_6 s6 s 8 s_8 s8 s 4 s_4 s4 s 5 s_5 s5
s 6 s_6 s6 s 3 s_3 s3 s 6 s_6 s6 s 9 s_9 s9 s 5 s_5 s5 s 6 s_6 s6
s 7 s_7 s7 s 4 s_4 s4 s 8 s_8 s8 s 7 s_7 s7 s 7 s_7 s7 s 7 s_7 s7
s 8 s_8 s8 s 5 s_5 s5 s 9 s_9 s9 s 8 s_8 s8 s 7 s_7 s7 s 8 s_8 s8
s 9 s_9 s9 s 6 s_6 s6 s 9 s_9 s9 s 9 s_9 s9 s 8 s_8 s8 s 9 s_9 s9

状态转移概率:使用概率描述状态转移。

  • 直觉 :在 s 1 s_1 s1 选择 a 2 a_2 a2,下一状态为 s 2 s_2 s2。

  • 数学 : p ( s 2 ∣ s 1 , a 2 ) = 1 , p ( s i ∣ s 1 , a 2 ) = 0 ∀ i ≠ 2 p(s_2|s_1,a_2) = 1, \qquad p(s_i|s_1,a_2) = 0 \ \ \forall i \neq 2 p(s2∣s1,a2)=1,p(si∣s1,a2)=0 ∀i=2

这是确定性情形。状态转移也可以是随机的(例如,受到阵风影响)。


5 策略 (Policy)

策略告诉智能体在某状态下应采取什么动作。

例如,对于状态 s 1 s_1 s1 的一个确定性策略:
π ( a 1 ∣ s 1 ) = 0 , π ( a 2 ∣ s 1 ) = 1 , π ( a 3 ∣ s 1 ) = 0 , π ( a 4 ∣ s 1 ) = 0 , π ( a 5 ∣ s 1 ) = 0 \pi(a_1|s_1)=0,\ \pi(a_2|s_1)=1,\ \pi(a_3|s_1)=0,\ \pi(a_4|s_1)=0,\ \pi(a_5|s_1)=0 π(a1∣s1)=0, π(a2∣s1)=1, π(a3∣s1)=0, π(a4∣s1)=0, π(a5∣s1)=0

随机策略的例子 :在 s 1 s_1 s1 状态,
π ( a 1 ∣ s 1 ) = 0 , π ( a 2 ∣ s 1 ) = 0.5 , π ( a 3 ∣ s 1 ) = 0.5 , π ( a 4 ∣ s 1 ) = 0 , π ( a 5 ∣ s 1 ) = 0 \pi(a_1|s_1)=0,\ \pi(a_2|s_1)=0.5,\ \pi(a_3|s_1)=0.5,\ \pi(a_4|s_1)=0,\ \pi(a_5|s_1)=0 π(a1∣s1)=0, π(a2∣s1)=0.5, π(a3∣s1)=0.5, π(a4∣s1)=0, π(a5∣s1)=0

策略的表格表示(可表示确定性或随机策略):

状态 a 1 a_1 a1 (向上) a 2 a_2 a2 (向右) a 3 a_3 a3 (向下) a 4 a_4 a4 (向左) a 5 a_5 a5 (静止)
s 1 s_1 s1 0 0.5 0.5 0 0
s 2 s_2 s2 0 0 1 0 0
s 3 s_3 s3 0 0 0 1 0
s 4 s_4 s4 0 1 0 0 0
s 5 s_5 s5 0 0 1 0 0
s 6 s_6 s6 0 0 1 0 0
s 7 s_7 s7 0 1 0 0 0
s 8 s_8 s8 0 1 0 0 0
s 9 s_9 s9 0 0 0 0 1

6 奖励 (Reward)

在网格世界示例中,奖励设计如下:

  • 若智能体试图出界, r bound = − 1 r_{\text{bound}} = -1 rbound=−1。

  • 若智能体试图进入禁止单元格, r forbid = − 1 r_{\text{forbid}} = -1 rforbid=−1。

  • 若智能体到达目标单元格, r target = + 1 r_{\text{target}} = +1 rtarget=+1。

  • 否则,奖励为 r = 0 r = 0 r=0。

奖励的解读:可视为人机接口,通过它可以引导智能体按照我们的期望行事。例如,上述奖励设计会使智能体尽量避免出界或进入禁止单元格。

奖励转移的表格表示

状态 a 1 a_1 a1 (向上) a 2 a_2 a2 (向右) a 3 a_3 a3 (向下) a 4 a_4 a4 (向左) a 5 a_5 a5 (静止)
s 1 s_1 s1 r bound r_{\text{bound}} rbound 0 r bound r_{\text{bound}} rbound 0 0
s 2 s_2 s2 r bound r_{\text{bound}} rbound 0 0 0 0
s 3 s_3 s3 r bound r_{\text{bound}} rbound r bound r_{\text{bound}} rbound r forbid r_{\text{forbid}} rforbid 0 0
s 4 s_4 s4 0 0 r forbid r_{\text{forbid}} rforbid r bound r_{\text{bound}} rbound 0
s 5 s_5 s5 0 r forbid r_{\text{forbid}} rforbid 0 0 0
s 6 s_6 s6 0 r bound r_{\text{bound}} rbound r target r_{\text{target}} rtarget 0 0
s 7 s_7 s7 0 0 r bound r_{\text{bound}} rbound r bound r_{\text{bound}} rbound 0
s 8 s_8 s8 0 r target r_{\text{target}} rtarget r bound r_{\text{bound}} rbound r forbid r_{\text{forbid}} rforbid 0
s 9 s_9 s9 r forbid r_{\text{forbid}} rforbid r bound r_{\text{bound}} rbound r bound r_{\text{bound}} rbound 0 0

数学描述:使用条件概率。

  • 直觉 :在 s 1 s_1 s1 执行动作 a 1 a_1 a1,奖励为 − 1 -1 −1。

  • 数学 : p ( r = − 1 ∣ s 1 , a 1 ) = 1 p(r=-1|s_1, a_1) = 1 p(r=−1∣s1,a1)=1 且 p ( r ≠ − 1 ∣ s 1 , a 1 ) = 0 p(r \neq -1|s_1, a_1) = 0 p(r=−1∣s1,a1)=0。

备注

  • 这里是确定性情形。奖励转移也可以是随机的(例如,努力学习会有回报,但回报多少不确定)。

  • 奖励依赖于状态和动作,但不依赖于下一状态(对比 s 1 , a 1 s_1, a_1 s1,a1 和 s 1 , a 5 s_1, a_5 s1,a5)。


7 轨迹与回报 (Trajectory and Return)

轨迹是一条状态-动作-奖励链。示例:

S_1 \\xrightarrow{r=0(a_2)} S_2 \\xrightarrow{r=0(a_3)} S_5 \\xrightarrow{r=0(a_3)} S_8 \\xrightarrow{r=1(a_2)} S_9

该轨迹的回报 是沿轨迹收集的所有奖励之和:
return = 0 + 0 + 0 + 1 = 1 \text{return} = 0 + 0 + 0 + 1 = 1 return=0+0+0+1=1

不同的策略产生不同的轨迹
s 1 → r = 0 s 4 → r = − 1 s 7 → r = 0 s 8 → r = + 1 s 9 s_1 \xrightarrow{r=0} s_4 \xrightarrow{r=-1} s_7 \xrightarrow{r=0} s_8 \xrightarrow{r=+1} s_9 s1r=0 s4r=−1 s7r=0 s8r=+1 s9

回报为: 0 − 1 + 0 + 1 = 0 0 - 1 + 0 + 1 = 0 0−1+0+1=0。

哪个策略更好?

  • 直觉:第一条更好,因为它避免了禁止区域。

  • 数学:第一条更好,因为它具有更大的回报。

  • 结论:回报可用于评估策略的好坏(下一讲详述)。

无穷轨迹问题
s 1 → a 2 s 2 → a 3 s 5 → a 3 s 8 → a 2 s 9 → a 5 s 9 → a 5 s 9 ... s_1 \xrightarrow{a_2} s_2 \xrightarrow{a_3} s_5 \xrightarrow{a_3} s_8 \xrightarrow{a_2} s_9 \xrightarrow{a_5} s_9 \xrightarrow{a_5} s_9 \ldots s1a2 s2a3 s5a3 s8a2 s9a5 s9a5 s9...

此时回报为:
return = 0 + 0 + 0 + 1 + 1 + 1 + ⋯ = ∞ \text{return} = 0 + 0 + 0 + 1 + 1 + 1 + \dots = \infty return=0+0+0+1+1+1+⋯=∞

此定义无效,因为回报发散。

引入折扣因子 γ ∈ [ 0 , 1 ) \gamma \in [0,1) γ∈[0,1)

折扣回报:
discounted return = 0 + γ 0 + γ 2 0 + γ 3 1 + γ 4 1 + γ 5 1 + ... \text{discounted return} = 0 + \gamma 0 + \gamma^2 0 + \gamma^3 1 + \gamma^4 1 + \gamma^5 1 + \dots discounted return=0+γ0+γ20+γ31+γ41+γ51+...
= γ 3 ( 1 + γ + γ 2 + ...   ) = γ 3 1 1 − γ = \gamma^3 (1 + \gamma + \gamma^2 + \dots) = \gamma^3 \frac{1}{1 - \gamma} =γ3(1+γ+γ2+...)=γ31−γ1

γ \gamma γ 的作用:

  1. 使和有限。

  2. 平衡远期与近期奖励:

    • 若 γ \gamma γ 接近 0,折扣回报的值由近期获得的奖励主导。

    • 若 γ \gamma γ 接近 1,折扣回报的值由远期获得的奖励主导。


8 Episodes and Continuing Tasks

Episode :当智能体遵循某策略与环境交互时,可能会在某些终止状态停止。产生的轨迹称为一个 episode(或 trial)。

示例 episode:
S 1 → r = 0 S 2 → r = 0 S 5 → r = 0 S 8 → r = 1 S 9 S_1 \xrightarrow{r=0} S_2 \xrightarrow{r=0} S_5 \xrightarrow{r=0} S_8 \xrightarrow{r=1} S_9 S1r=0 S2r=0 S5r=0 S8r=1 S9

一个 episode 通常假设为有限轨迹。有 episode 的任务称为episodic tasks

Continuing tasks :某些任务可能没有终止状态,意味着与环境的交互永不结束。

可将episodic tasks 转换为Continuing tasks

  • 方案1 :将目标状态视为特殊的吸收状态,一旦到达便永不离开,后续奖励恒为 r = 0 r = 0 r=0。

  • 方案2 :将目标状态视为普通状态并具有策略,智能体可以离开目标状态,每次进入目标状态获得 r = + 1 r = +1 r=+1。


9 总结与马尔可夫决策过程 (MDP)

通过网格世界示例,我们引入并理解了以下关键概念:

  • 状态 (State) 与 状态空间 (State space)

  • 动作 (Action) 与 动作空间 (Action space)

  • 状态转移 (State transition) 及 状态转移概率 (State transition probability) p ( s ′ ∣ s , a ) p(s'|s, a) p(s′∣s,a)

  • 策略 (Policy): π ( a ∣ s ) \pi(a|s) π(a∣s) 表示在状态 s s s 下选择动作 a a a 的概率

  • 奖励 (Reward) 及 奖励概率 (Reward probability) p ( r ∣ s , a ) p(r|s, a) p(r∣s,a)

  • 轨迹 (Trajectory)、幕 (Episode)、回报 (Return)、折扣回报 (Discounted return)

这些概念共同构成了马尔可夫决策过程 (Markov Decision Process, MDP) 的基础要素。MDP 是后续所有强化学习算法的核心数学模型框架。

对于课程后续内容(如贝尔曼公式、策略迭代、值函数近似等),理解 MDP 的这些基本构件( S , A , P , R , γ S, A, P, R, \gamma S,A,P,R,γ)是进一步学习的基石。

参考资料:

《Mathematical Foundations of Reinforcement Learning》,作者:赵世钰,2025年出版,清华大学出版社

相关推荐
拜特说1 小时前
RAG 进化史:从基础检索到智能体驱动
人工智能
weixin_398187751 小时前
YOLOv11改进:全维度动态卷积ODConv与C3k2模块创新
人工智能·yolo
李昊哲小课1 小时前
Hermes Agent Dashboard 二次开发指南
人工智能·智能体·hermesagent
MATLAB代码顾问1 小时前
RAG技术详解:从检索增强生成到知识库问答实战
人工智能
东方佑1 小时前
色块语义Token化器V3:用语义压缩重构图像编码
人工智能·计算机视觉·重构
小此方1 小时前
Re:从零开始的 C++ STL篇(十二)深度解析哈希函数设计、负载因子调节与两种冲突处理策略
c++·算法·哈希算法
沐泽__1 小时前
欧氏距离、余弦相似度(cosin)、点积 区别与用途详解(附实例)
人工智能·机器学习
victory04311 小时前
DeepSeek-V4知识点讲解记录
人工智能
xuhaoyu_cpp_java1 小时前
单调栈(算法)
java·数据结构·经验分享·笔记·学习·算法