TD3 算法详解:双延迟深度确定性策略梯度
一、算法背景与动机
双延迟深度确定性策略梯度算法(Twin Delayed Deep Deterministic Policy Gradient, TD3)是强化学习中专门针对连续动作空间问题设计的一种算法。它由 Fujimoto 等人在 2018 年提出,旨在解决深度确定性策略梯度(DDPG)算法在实际应用中存在的关键挑战。
DDPG 的局限性
DDPG 结合了策略(Actor)和价值函数(Critic),在连续动作空间中表现优异,但存在以下主要问题:
- Q 值过估计问题:Critic 网络在训练时容易高估 Q 值,导致策略网络(Actor)学习不稳定。
- 策略噪声问题:由于策略直接输出确定性动作,在训练时容易陷入局部最优解。
- 训练不稳定性:Critic 网络和 Actor 网络同时更新时,相互影响可能导致训练震荡。
为了解决上述问题,TD3 通过三项核心改进显著提升了算法的鲁棒性。
二、核心思想
TD3 在 DDPG 的基础上提出了三项关键改进:
1. 双 Critic 网络(Twin Critics)
动机:DDPG 中的 Critic 网络在估计 Q 值时存在系统性的高估问题。
方法:TD3 使用两个独立的 Critic 网络计算 Q 值,取两者的最小值作为目标 Q 值。
$$y = r + \gamma \min \big( Q_{\theta_1'}(s', \pi_{\phi'}(s')), Q_{\theta_2'}(s', \pi_{\phi'}(s')) \big)$$
效果:有效减少了 Q 值的高估偏差(Overestimation Bias),防止策略受到错误估计的误导。
2. 延迟更新(Delayed Policy Updates)
动机:在 DDPG 中,Critic 网络和 Actor 网络同时更新,可能导致 Actor 策略在不稳定的 Q 值估计上进行优化。
方法:降低 Actor 和目标网络的更新频率,通常在 Critic 更新两次后才更新一次 Actor。
效果:降低了 Actor 网络的更新频率,从而提高了策略的稳定性。
3. 目标策略平滑(Target Policy Smoothing)
动机:DDPG 中的目标策略直接输出确定性动作,容易对极端动作过拟合。
方法:在目标值计算中,对动作加入高斯噪声并裁剪到一定范围。
$$a' = \pi_{\phi'}(s') + \text{clip}(\epsilon, -c, c), \quad \epsilon \sim \mathcal{N}(0, \sigma)$$
效果:提高了算法对噪声和目标值波动的鲁棒性。
三、数学细节解析
1. Actor-Critic 框架的核心
Actor-Critic 方法将策略学习(Actor)与价值评估(Critic)结合。Actor 负责生成动作,Critic 负责评估当前策略的表现。
(1) 策略梯度
Actor 通过最大化累计奖励学习最优策略:
$$\nabla_\phi J(\pi_\phi) = \mathbb{E}{s \sim \rho^\pi} \left[ \nabla\phi \pi_\phi(s) \nabla_a Q^\pi(s, a) \big|{a=\pi\phi(s)} \right]$$
其中 $\rho^\pi$ 是由策略生成的状态分布,$Q^\pi(s, a)$ 是 Critic 估计的动作值函数。
(2) 价值评估 (Critic)
Critic 通过最小化时间差分(Temporal Difference, TD)误差,学习状态 - 动作值函数:


