《强化学习与最优控制》第 5.4 节 · 投影方程方法
TD(λ)、LSTD(λ)、LSPE(λ) 这些经典 RL 算法在 Bertsekas 的框架下有一个统一的数学根源:投影方程。理解了这个统一视角,就能看清各种 TD 变体的本质。
一、投影方程的数学设定
模拟方程
值迭代 J=TJ 的不动点方程可以改写为:
J=TJ+(J−TJ)=TJ+W
其中 W=J−TJ 是残差。对于精确解 J∗,W=0。
投影到子空间
当 J 被限制在参数化子空间 S 内时(J=Φr),不能要求残差为零。退而求其次:让残差与子空间正交。
Φ′(J−TJ)=0
这就是投影方程——将残差 J−TJ 投影到子空间 S 的正交补空间上,要求投影为零。
几何直觉
全空间 R^n
│
├── 子空间 S(参数化函数空间)
│ │
│ └── J̃ = Φr(近似解)
│
└── 残差 J̃ - TJ̃ ⊥ S(正交于子空间)
J∗ 是 T 的不动点(残差为零)。J~ 是使残差与 S 正交的点——即 TJ~ 在 S 上的正交投影。
二、投影贝尔曼方程
折扣问题的投影方程
Φr=Π(T(Φr))
其中 Π 是到子空间 S 的正交投影算子:
Π=Φ(Φ′ΞΦ)−1Φ′Ξ
- Ξ:状态分布的对角权重矩阵(各状态的采样频率)
- Φ:特征矩阵(每列是一个特征函数)
解
r=(Φ′ΞΦ)−1Φ′ΞT(Φr)
这是关于 r 的方程。对于线性架构 + 线性 DP 算子,这是线性方程组。
学习心得:投影方程的本质是"在受限空间内找到最接近不动点的点"。就像在三维空间中找一个点使 J=TJ,但被限制在一个平面上——找不到使残差为零的点,就找使残差与平面正交的点。
三、TD(0) 方法
TD(0) 的增量更新
每次观察转移 (i,u,j,g):
r←r+γϕ(i)[g+αϕ(j)′r−ϕ(i)′r]
- ϕ(i)′r:当前状态的近似值 J~(i)
- g+αϕ(j)′r:TD 目标(即时费用 + 折扣后的下一状态值)
- ϕ(i):特征向量(梯度方向)
与投影方程的关系
TD(0) 是投影方程 r=(Φ′ΞΦ)−1Φ′ΞT(Φr) 的随机增量求解:
- ϕ(i)[g+αϕ(j)′r−ϕ(i)′r] 是 Φ′Ξ(T(Φr)−Φr) 的单样本估计
- 多次更新后,r 收敛到投影方程的解
四、TD(λ) 方法——多步自举
λ-回报
TD(λ) 用多步回报作为目标值:
Gλ(i)=(1−λ)n=1∑∞λn−1G(n)(i)
其中 G(n) 是 n 步回报:
G(n)=g0+αg1+⋯+αn−1gn−1+αnJ~(in)
- λ=0:TD(0)(一步自举)
- λ=1:蒙特卡洛(完全不自举,用完整轨迹)
- λ∈(0,1):两者的几何加权
TD(λ) 更新
r←r+γϕ(i)[Gλ(i)−ϕ(i)′r]
资格迹(Eligibility Traces)
直接计算 Gλ 需要完整轨迹。资格迹提供了增量计算方式:
ek=αλek−1+ϕ(ik)
r←r+γek[gk+αϕ(ik+1)′r−ϕ(ik)′r]
- ek:资格迹,记录各特征"最近被激活的程度"
- λ 控制迹的衰减速度
- 使得 TD(λ) 可以在线增量更新,不需要等完整轨迹
学习心得:TD(λ) 的 λ 参数控制"自举"与"蒙特卡洛"的平衡:
- λ 小:信任近似值 J~(自举多,方差小但偏差大)
- λ 大:信任实际回报(自举少,偏差小但方差大)
实践中 λ≈0.7−0.9 通常是好的折中。
五、LSTD(λ)——最小二乘 TD
思想
TD(λ) 用增量梯度求解投影方程。LSTD(λ) 直接求解投影方程的正规方程:
Φ′Ξ(Tμ(λ)(Φr)−Φr)=0
展开后得到线性方程组 Ar=b,直接求解。
LSTD(0)
A=s∑ϕ(is)(ϕ(is)−αϕ(js))′
b=s∑ϕ(is)gs
r=A−1b
优势
- 无学习率:不需要调 γ(步长),直接求解
- 样本效率高:充分利用每条数据
- 收敛性好:线性架构下有收敛保证
劣势
- 计算量:需要求逆 A−1(m×m 矩阵,m 为特征数)
- 在线性:需要收集足够数据后一次性求解(有递增版本 LSTD-R)
六、LSPE(λ)——最小二乘策略评估
思想
LSPE(λ) 是 LSTD(λ) 和 TD(λ) 的折中——用最小二乘法做值迭代:
rk+1=argrmins∑[ϕ(is)′r−(gs+αϕ(js)′rk)]2
每步做一次最小二乘拟合(而不是增量梯度)。
与其他方法的关系
| 方法 |
每步操作 |
收敛速率 |
| TD(λ) |
增量梯度(一个样本) |
慢(受步长影响) |
| LSPE(λ) |
最小二乘拟合(一批样本) |
中(线性收敛) |
| LSTD(λ) |
直接求解正规方程 |
快(一步求解) |
学习心得:LSTD、LSPE、TD 三者的关系可以用"求解线性方程组"的类比理解:
- LSTD:直接求逆 r=A−1b(一步到位)
- LSPE:迭代法 rk+1=rk+(Ark−b)(每步用全部数据)
- TD:增量迭代法 r←r+γ(asr−bs)(每步用一个数据)
七、偏策略 vs 全策略
偏策略方法
- TD(λ)、LSTD(λ)、LSPE(λ) 用于策略评估(给定策略,估计 Jμ)
- 需要外层的策略改进循环
- 数据由当前策略产生(on-policy)
与 Q 学习结合
将投影方程方法用于 Q 因子:
- 用 Q 因子的特征 ϕ(i,u) 近似 Q~(i,u,r)
- LSTD-Q:直接求解 Q 因子的投影方程
- 可以与 off-policy 结合(但需重要性采样权重)
八、投影方程方法的收敛性
有利条件
- 线性架构:J~=Φr(特征线性组合)
- On-policy:数据由被评估的策略产生
- 折扣问题:α<1(压缩性)
三者满足时,投影方程有唯一解,TD(λ)/LSTD(λ)/LSPE(λ) 收敛到该解。
不利条件
- 非线性架构(神经网络)→ 无收敛保证
- Off-policy → 需要重要性采样,可能不稳定
- 无折扣(SSP 问题)→ 需要额外条件
与致命三要素的关系:投影方程方法用线性架构 + on-policy 避开了致命三要素中的"函数近似"和"off-policy"两条,因此有收敛保证。DQN 用神经网络 + off-policy 触发了全部三条,所以不稳定。
九、方法选择指南
| 场景 |
推荐方法 |
原因 |
| 小状态空间,已知模型 |
值迭代/策略迭代 |
精确、高效 |
| 小状态空间,无模型 |
表格 Q 学习 |
收敛保证 |
| 线性特征,on-policy |
LSTD(λ) |
样本高效、收敛 |
| 神经网络,off-policy |
DQN + 经验回放 |
无收敛保证但实践中有效 |
| 神经网络,on-policy |
PPO/A3C |
稳定性好(避开致命三要素) |
| 连续控制 |
策略梯度方法 |
第 4 章策略空间近似 |
下一篇将讨论策略空间近似——直接参数化策略并用梯度方法优化,这是连续控制和现代深度 RL 的另一半天地。
评论(0)