1. 价值函数与贝尔曼方程
1.1 状态价值函数
状态价值函数$V^{\pi}(s)$表示从状态$s$开始,遵循策略$\pi$的期望回报:
$$V^{\pi}(s) = \mathbb{E}_{\pi}[G_t | S_t = s]$$
其中$G_t$是折扣回报:$G_t = R_{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + \ldots$
1.2 贝尔曼方程的推导
将期望回报展开:
$$V^{\pi}(s) = \mathbb{E}_{\pi}[R_{t+1} + \gamma G_{t+1} | S_t = s]$$
根据期望的线性性质:
$$V^{\pi}(s) = \mathbb{E}_{\pi}[R_{t+1} | S_t = s] + \gamma \mathbb{E}_{\pi}[G_{t+1} | S_t = s]$$
第一项是即时奖励的期望,第二项是未来回报的期望。对动作和下一状态求期望:
$$V^{\pi}(s) = \sum_{a} \pi(a|s) \sum_{s'} P(s'|s,a) [R(s,a,s') + \gamma V^{\pi}(s')]$$
这就是贝尔曼方程,它建立了当前状态价值与下一状态价值之间的关系。
1.3 动作价值函数
动作价值函数$Q^{\pi}(s,a)$表示在状态$s$执行动作$a$后,遵循策略$\pi$的期望回报:
$$Q^{\pi}(s,a) = \mathbb{E}_{\pi}[G_t | S_t = s, A_t = a]$$
类似地,可以推导出Q函数的贝尔曼方程:
$$Q^{\pi}(s,a) = \sum_{s'} P(s'|s,a) [R(s,a,s') + \gamma \sum_{a'} \pi(a'|s') Q^{\pi}(s',a')]$$
1.4 价值函数的关系
状态价值函数和动作价值函数的关系:
$$V^{\pi}(s) = \sum_{a} \pi(a|s) Q^{\pi}(s,a)$$
$$Q^{\pi}(s,a) = \sum_{s'} P(s'|s,a) [R(s,a,s') + \gamma V^{\pi}(s')]$$
2. 最优价值函数与最优策略
2.1 最优状态价值函数
最优状态价值函数$V^*(s)$是所有策略中能获得的最大价值:
$$V^*(s) = \max_{\pi} V^{\pi}(s)$$
最优贝尔曼方程:
$$V^*(s) = \max_{a} \sum_{s'} P(s'|s,a) [R(s,a,s') + \gamma V^*(s')]$$
2.2 最优动作价值函数
最优动作价值函数$Q^*(s,a)$是所有策略中能获得的最大动作价值:
$$Q^*(s,a) = \max_{\pi} Q^{\pi}(s,a)$$
最优Q函数的贝尔曼方程:
$$Q^*(s,a) = \sum_{s'} P(s'|s,a) [R(s,a,s') + \gamma \max_{a'} Q^*(s',a')]$$
2.3 最优策略
一旦得到$Q^*$,最优策略是贪心策略:
$$\pi^*(a|s) = \begin{cases} 1 & \text{if } a = \arg\max_{a'} Q^*(s,a') \\ 0 & \text{otherwise} \end{cases}$$
3. Q-Learning更新规则推导
3.1 时序差分学习
Q-Learning使用时序差分(TD)方法更新Q值。TD误差定义为:
$$\delta_t = R_{t+1} + \gamma \max_{a'} Q(S_{t+1}, a') - Q(S_t, A_t)$$
这个误差表示当前Q值与目标值(即时奖励+折扣后的最优未来价值)的差异。
3.2 Q-Learning更新公式
使用梯度下降的思想,Q值更新为:
$$Q(S_t, A_t) \leftarrow Q(S_t, A_t) + \alpha[R_{t+1} + \gamma \max_{a'} Q(S_{t+1}, a') - Q(S_t, A_t)]$$
其中$\alpha$是学习率。这个更新规则会逐步将Q值收敛到$Q^*$。
3.3 收敛性
在满足以下条件时,Q-Learning保证收敛到$Q^*$:
- 所有状态-动作对被无限次访问
- 学习率满足:$\sum_t \alpha_t = \infty$ 且 $\sum_t \alpha_t^2 < \infty$
4. 策略梯度定理
4.1 策略目标函数
策略梯度方法的目标是最大化期望回报:
$$J(\theta) = \mathbb{E}_{\tau \sim \pi_{\theta}}[R(\tau)] = \int P(\tau|\theta) R(\tau) d\tau$$
其中$\tau$是轨迹,$R(\tau)$是轨迹的回报,$\theta$是策略参数。
4.2 策略梯度推导
对目标函数求梯度:
$$\nabla_{\theta} J(\theta) = \nabla_{\theta} \int P(\tau|\theta) R(\tau) d\tau$$
使用对数技巧:
$$\nabla_{\theta} J(\theta) = \int P(\tau|\theta) \nabla_{\theta} \log P(\tau|\theta) R(\tau) d\tau$$
这可以写成期望形式:
$$\nabla_{\theta} J(\theta) = \mathbb{E}_{\tau \sim \pi_{\theta}}[\nabla_{\theta} \log P(\tau|\theta) R(\tau)]$$
4.3 轨迹概率的对数
轨迹概率:$P(\tau|\theta) = P(s_0) \prod_{t=0}^{T-1} \pi_{\theta}(a_t|s_t) P(s_{t+1}|s_t, a_t)$
取对数:
$$\log P(\tau|\theta) = \log P(s_0) + \sum_{t=0}^{T-1} [\log \pi_{\theta}(a_t|s_t) + \log P(s_{t+1}|s_t, a_t)]$$
对$\theta$求梯度,只有策略项有贡献:
$$\nabla_{\theta} \log P(\tau|\theta) = \sum_{t=0}^{T-1} \nabla_{\theta} \log \pi_{\theta}(a_t|s_t)$$
4.4 策略梯度公式
代入得到策略梯度:
$$\nabla_{\theta} J(\theta) = \mathbb{E}_{\tau \sim \pi_{\theta}}\left[\sum_{t=0}^{T-1} \nabla_{\theta} \log \pi_{\theta}(a_t|s_t) R(\tau)\right]$$
使用回报到时间步$t$的累积奖励$G_t$,可以写成:
$$\nabla_{\theta} J(\theta) = \mathbb{E}_{\tau \sim \pi_{\theta}}\left[\sum_{t=0}^{T-1} \nabla_{\theta} \log \pi_{\theta}(a_t|s_t) G_t\right]$$
5. 优势函数与Actor-Critic
5.1 优势函数
优势函数$A^{\pi}(s,a)$衡量动作$a$相对于平均动作的好坏:
$$A^{\pi}(s,a) = Q^{\pi}(s,a) - V^{\pi}(s)$$
使用优势函数可以减少策略梯度的方差。
5.2 Actor-Critic策略梯度
使用价值函数$V^{\pi}(s)$作为基线,策略梯度变为:
$$\nabla_{\theta} J(\theta) = \mathbb{E}_{\tau \sim \pi_{\theta}}\left[\sum_{t=0}^{T-1} \nabla_{\theta} \log \pi_{\theta}(a_t|s_t) A^{\pi}(s_t, a_t)\right]$$
其中优势函数可以用TD误差估计:
$$A^{\pi}(s_t, a_t) \approx R_{t+1} + \gamma V^{\pi}(s_{t+1}) - V^{\pi}(s_t)$$
6. 总结
这些数学推导构成了强化学习的理论基础:
- 贝尔曼方程:建立了价值函数的递归关系
- 最优性:定义了最优策略和最优价值函数
- Q-Learning:通过TD学习直接学习最优Q函数
- 策略梯度:通过梯度上升优化策略参数
- Actor-Critic:结合价值函数和策略梯度,减少方差