#sdsc6007
English / 中文
强化学习的元素
强化学习包含以下五个核心元素:
-
智能体与环境:智能体执行动作,环境返回观测和奖励
-
奖励信号:标量反馈信号,指示智能体在时间t的表现
-
策略:描述智能体行为,是从状态到动作的映射
-
价值函数:预测预期未来奖励(在特定策略下)
-
模型:预测环境的行为/回报
智能体与环境的交互
在每个时间步t:
历史是观测、动作和奖励的序列:
Ht=O1,R1,A1,…,At−1,Ot,Rt
状态的定义
状态 St 是马尔可夫的,当且仅当它包含历史中的所有有用信息:
P(St+1∣St)=P(St+1∣S1,…,St)
一旦状态已知,历史就可以丢弃。
关键理解:马尔可夫性质意味着"未来只依赖于现在,而不依赖于过去",这大大简化了问题的建模。
探索与利用的权衡
-
探索:寻找关于环境的更多信息
-
利用:基于当前信息最大化总奖励
-
存在权衡关系(需要平衡两者)
实际例子:
- 选择餐厅:利用(去最喜欢的餐厅)vs 探索(尝试新餐厅)
- 在线广告:利用(显示相关产品)vs 探索(显示不同的广告)
- 选修课程:利用(选择之前最好的老师)vs 探索(尝试新老师)
马尔可夫决策过程介绍
基础与马尔可夫链
马尔可夫链/马尔可夫过程描述了一个无记忆的随机过程(没有奖励和动作),即具有马尔可夫性质的序列 S1,S2,…
定义:有限状态马尔可夫链是一个元组 ⟨S,P⟩
P∈RS×S 可表示为:
P=p11p21⋮pS1p12p22⋮pS2⋯⋯⋱⋯p1Sp2S⋮pSS
其中矩阵的每一行之和为1。
示例
graph LR
Lec1 -- 0.7 --> Lec2
Lec1 -- 0.3 --> IG
Lec2 -- 0.6 --> Lec3
Lec2 -- 0.4 --> FB
Lec3 -- 0.5 --> HW1
Lec3 -- 0.25 --> IG
Lec3 -- 0.25 --> Sleep
HW1 -- 1.0 --> Sleep
IG -- 0.5 --> Lec1
IG -- 0.2 --> IG
IG -- 0.3 --> FB
FB -- 0.5 --> FB
FB -- 0.5 --> IG
Sleep -- 1.0 --> Sleep
转移矩阵如下:
| From \ To |
Lec1 |
Lec2 |
Lec3 |
HW1 |
IG |
FB |
Sleep |
| Lec1 |
|
0.7 |
|
|
0.3 |
|
|
| Lec2 |
|
|
0.6 |
|
|
0.4 |
|
| Lec3 |
|
|
|
0.5 |
0.25 |
|
0.25 |
| HW1 |
|
|
|
|
|
|
1 |
| IG |
0.5 |
|
|
|
0.2 |
0.3 |
|
| FB |
|
|
|
|
0.5 |
0.5 |
|
| Sleep |
|
|
|
|
|
|
1 |
马尔可夫奖励过程
马尔可夫奖励过程 = 马尔可夫链 + 奖励(仍然没有动作或固定策略)
定义:MRP是一个元组 ⟨S,P,r,γ⟩
-
S 是有限状态集合
-
P 是状态转移概率矩阵
-
r 是奖励函数,rs=E[Rt+1∣St=s]
-
γ 是折扣因子,γ∈[0,1]
示例:
graph LR
Lec1[Lec 1</br>R = -1]
Lec2[Lec 2</br>R = -1]
Lec3[Lec 3</br>R = -1]
HW1[HW 1</br>R = 10]
IG[IG</br>R = 0.5]
FB[FB</br>R = -0.5]
Sleep[Sleep</br>R = 0]
Lec1 -- 0.7 --> Lec2
Lec1 -- 0.3 --> IG
Lec2 -- 0.6 --> Lec3
Lec2 -- 0.4 --> FB
Lec3 -- 0.5 --> HW1
Lec3 -- 0.25 --> IG
Lec3 -- 0.25 --> Sleep
HW1 -- 1.0 --> Sleep
IG -- 0.5 --> Lec1
IG -- 0.2 --> IG
IG -- 0.3 --> FB
FB -- 0.5 --> FB
FB -- 0.5 --> IG
Sleep -- 1.0 --> Sleep
回报与价值函数
回报 Gt 是从时间步t开始的总折扣奖励:
Gt=Rt+1+γRt+2+⋯=k=0∑∞γkRt+k+1
状态价值函数 v(s) 是从状态s开始的预期回报:
v(s)=E[Gt∣St=s]
MRP的贝尔曼方程详解
马尔可夫奖励过程(MRP)的贝尔曼方程是强化学习中的核心方程,它建立了状态价值与后续状态价值之间的关系。
1. 方程推导
从价值函数的定义出发:
v(s)=E[Gt∣St=s]=E[Rt+1+γRt+2+γ2Rt+3+⋯∣St=s]
将其分解为即时奖励和未来奖励的折现:
v(s)=E[Rt+1+γ(Rt+2+γRt+3+⋯)∣St=s]
v(s)=E[Rt+1+γGt+1∣St=s]
利用马尔可夫性和期望的线性性质:
v(s)=E[Rt+1∣St=s]+γE[Gt+1∣St=s]
v(s)=rs+γs′∈S∑pss′E[Gt+1∣St+1=s′]
v(s)=rs+γs′∈S∑pss′v(s′)
2. 参数说明
-
v(s): 状态s的价值,表示从状态s开始所能获得的期望累积奖励
-
rs: 即时奖励的期望值,rs=E[Rt+1∣St=s]
-
γ: 折扣因子(0 ≤ γ ≤ 1)
- γ = 0:只考虑即时奖励
- γ → 1:越来越重视未来奖励
- 通常设为0.9-0.99之间的值
-
pss′: 从状态s转移到状态s’的概率
-
S: 所有可能的状态集合
3. 矩阵形式
将每个状态的价值组成向量 v=[v(1),v(2),…,v(S)]T,奖励组成向量 r=[r1,r2,…,rS]T,得到矩阵形式:
v=r+γPv
其中P是状态转移概率矩阵。
4. 解析解
通过代数变换:
v−γPv=r
(I−γP)v=r
v=(I−γP)−1r
注意:该解析解只在状态空间较小时实用,因为矩阵求逆的复杂度为O(S³)。
实际例子
假设有三个状态{A, B, C},γ=0.9,奖励函数和转移概率如下:
| 状态 |
奖励 |
转移到A |
转移到B |
转移到C |
| A |
1 |
0.2 |
0.5 |
0.3 |
| B |
2 |
0.1 |
0.6 |
0.3 |
| C |
-1 |
0.4 |
0.4 |
0.2 |
建立贝尔曼方程:
v(A)=1+0.9(0.2v(A)+0.5v(B)+0.3v(C))
v(B)=2+0.9(0.1v(A)+0.6v(B)+0.3v(C))
v(C)=−1+0.9(0.4v(A)+0.4v(B)+0.2v(C))
转换为矩阵形式:
v(A)v(B)v(C)=12−1+0.90.20.10.40.50.60.40.30.30.2v(A)v(B)v(C)
解得:
v=(I−0.9P)−1r
通过计算可得各状态的具体价值值。
马尔可夫决策过程
马尔可夫决策过程 = 马尔可夫奖励过程 + 动作
定义:MDP是一个元组 ⟨S,A,P,r,γ⟩
-
S 是有限状态集合
-
A 是有限动作集合
-
P 是状态转移核,psas′=P(St+1=s′∣St=s,At=a)
-
r 是奖励函数,rsa=E[Rt+1∣St=s,At=a]
-
γ 是折扣因子,γ∈[0,1]
策略
策略 π 是给定状态下动作的分布:
π(a∣s)=P(At=a∣St=s)
这称为随机策略。
MDP中的最优性条件
有限视野情况与贝尔曼算子
目标:最大化 E[∑t=0T−1γtRt+1]
使用DP算法,我们有:
JN−t(s)=a∈Amax(γN−trsa+s′∈S∑psas′⋅JN−t+1(s′))
JN(s)=γN×0=0
归一化:vt(s)=γN−tJN−t(s)
vt+1(s)=a∈Amax(rsa+γs′∈S∑psas′⋅vt(s′))
v0(s)=0
贝尔曼算子
定义贝尔曼算子 T:
(Tv)(s)=a∈Amax(rsa+γs′∈S∑psas′⋅v(s′))
定义 Tkv(s)=T(Tk−1v)(s)(其中 T0v(s)=v(s))
我们可以用 TNv0=vN=J0 解决有限视野问题
对于静态确定性策略 π,定义策略下的贝尔曼算子 Tπ:
(Tπv)(s)=rsπ(s)+γs′∈S∑psπ(s)s′⋅v(s′)
贝尔曼算子的性质
单调性引理
考虑 v,v′∈RS,其中 v(s)≤v′(s), ∀s∈S:
(Tkv)(s)≤(Tkv′)(s),s∈S,k=1,2,…
同样适用于任何静态策略 π
如果 v(s)≤(Tv)(s), ∀s∈S,则:
(Tkv)(s)≤(Tk+1v)(s),s∈S,k=1,2,…
常数偏移引理
对于任何静态策略 π,标量 b, v∈RS:
(Tk(v+b⋅1S))(s)=(Tkv)(s)+γkb,s∈S,k=1,2,…
(Tπk(v+b⋅1S))(s)=(Tπkv)(s)+γkb,s∈S,k=1,2,…
其中 1S∈RS 是全1向量。
命题:DP算法的收敛性
假设
-
即时奖励 Rt 有界,即对某个常数M,∣Rt∣≤M
-
0<γ<1
命题
对于任何初始猜测 v0∈RS,对于任何 s∈S:
v⋆(s)=N→∞lim(TNv0)(s)
其中 v⋆ 是最优价值函数,即:
v⋆(s0)=πmaxK→∞limE[t=0∑KγtRt+1∣S0=s0]
同样,对于固定策略 π:
vπ⋆(s)=N→∞lim(TπNv0)(s)
深度理解:这个命题表明,无论我们从什么样的初始价值估计开始,通过不断应用贝尔曼算子,最终都会收敛到真正的最优价值函数。
命题:贝尔曼方程
命题
最优价值函数 v⋆ 满足对所有 s∈S:
v⋆(s)=a∈Amax(rsa+γs′∈S∑psas′⋅v⋆(s′))
或等价地:
v⋆=Tv⋆
而且 v⋆ 是这个方程的唯一解(因此,这个方程的解必须是最优价值函数)。
同样,对于任何 v∈RS,其中 v≥Tv(或 v≤Tv),我们有 v≥v⋆(或 v≤v⋆,分别)。
对于固定策略 π,相关价值函数 vπ 满足:
vπ(s)=rsπ(s)+γs′∈S∑psπ(s)s′⋅vπ(s′)
或等价地:
vπ=Tπvπ
命题:最优性的必要与充分条件
命题
一个静态策略 π 是最优的,当且仅当 π(s) 对每个 s∈S 在贝尔曼方程中达到最大值,即:
Tv⋆=Tπv⋆
含义
-
首先计算 v⋆
-
对每个 s∈S,选择:
as∈arga∈Amax(rsa+γs′∈S∑psas′⋅v⋆(s′))
-
构建一个策略 π,使得 π(s)=as
-
通过构造,Tv⋆=Tπv⋆
-
π 是最优静态确定性策略
唯一性与随机策略
-
最优策略不是唯一的
-
对于任何 s∈S,可能有多个 as 满足上述条件
-
随机选择 {as1,as2,…,asK} 中的任何动作在状态s下是最优的
-
随机策略:π(a∣s)=P(At=a∣St=s)
-
最优随机策略:如果 a∈{as1,as2,…,asK},则 π(a∣s)>0,否则 π(a∣s)=0
关键结论:在MDP设置中,最好的确定性策略与最好的随机策略表现一样好,随机策略不会提供额外的优势。