强化学习的核心目标是通过智能体与环境的交互,学习最大化累积奖励的策略。其优化方法围绕策略更新、价值估计、样本效率、训练稳定性等核心问题展开,可分为多个大类,以下是详细梳理:
一、策略优化方法(Policy Optimization)
策略优化直接对策略函数(\(\pi(a|s;\theta)\))进行参数更新,目标是最大化期望累积奖励。这类方法尤其适用于连续动作空间,核心是通过梯度上升优化策略参数。
1. 策略梯度方法(Policy Gradient, PG)
- 核心思想:通过计算策略参数的梯度(\(\nabla_\theta J(\theta)\),其中\(J(\theta)\)是策略的期望奖励),沿梯度方向更新参数,使策略更可能产生高奖励的动作。
- 经典算法:
- REINFORCE:最基础的策略梯度算法,使用蒙特卡洛(Monte Carlo)方法估计每一步的回报(Return),直接计算梯度\(\nabla_\theta \log \pi(a_t|s_t;\theta) \cdot G_t\)(\(G_t\)为从t时刻开始的累积奖励)。
- 带基线的策略梯度:REINFORCE 方差较大,引入基线(Baseline,如状态价值\(V(s)\))减少方差,梯度变为\(\nabla_\theta \log \pi(a_t|s_t;\theta) \cdot (G_t - V(s_t))\),其中\((G_t - V(s_t))\)称为优势函数(Advantage Function)\(A(s_t,a_t)\)。
2. 信任区域方法(Trust Region Methods)
解决策略梯度中 “大步更新可能导致策略性能下降” 的问题,通过限制策略更新幅度(在 “信任区域” 内)保证稳定性。
- TRPO(Trust Region Policy Optimization):
- 核心:将策略更新约束在 KL 散度(衡量新旧策略差异)的信任区域内,通过最大化带约束的 surrogate 目标函数实现稳定更新。
- 缺点:计算复杂,需要二阶优化(Hessian 矩阵)。
- PPO(Proximal Policy Optimization):
- 简化 TRPO,通过剪辑(Clip) 目标函数替代 KL 约束:\(\max_\theta \mathbb{E}[ \min(r_t(\theta) A_t, \text{clip}(r_t(\theta), 1-\epsilon, 1+\epsilon) A_t) ]\),其中\(r_t(\theta) = \pi(a_t|s_t;\theta)/\pi_{\text{old}}(a_t|s_t;\theta)\)。
- 优势:计算简单、稳定性强,成为当前最流行的强化学习算法之一,广泛用于连续控制任务(如机器人控制)。
二、价值优化方法(Value Optimization)
价值优化通过优化价值函数(状态价值\(V(s)\)或动作价值\(Q(s,a)\))间接指导策略,核心是让价值函数逼近真实值,再通过 “贪婪策略”(选择最大化价值的动作)生成行为。适用于离散动作空间。
1. 表格型价值方法
- Q-learning:异策略(Off-policy)算法,通过贝尔曼方程更新\(Q(s,a)\):\(Q(s,a) \leftarrow Q(s,a) + \alpha [r + \gamma \max_{a'} Q(s',a') - Q(s,a)]\),使用下一状态的最大 Q 值估计目标,不依赖当前策略。
- SARSA:同策略(On-policy)算法,更新公式为\(Q(s,a) \leftarrow Q(s,a) + \alpha [r + \gamma Q(s',a') - Q(s,a)]\),目标依赖当前策略选择的下一个动作\(a'\),更注重 “在线交互安全性”。
2. 深度价值方法(结合深度学习)
- DQN(Deep Q-Network):将 Q 函数用深度神经网络拟合(\(Q(s,a; \theta)\)),解决高维状态空间问题(如 Atari 游戏)。
- 核心改进:
- 经验回放(Experience Replay):存储\((s,a,r,s',d)\)样本到回放池,随机采样打破样本相关性,减少过拟合。
- 目标网络(Target Network):用独立的目标网络\(Q(s,a; \theta^-)\)计算目标 Q 值(\(r + \gamma \max_{a'} Q(s',a'; \theta^-)\)),固定一段时间再同步主网络参数,减少训练波动。
- 核心改进:
- DQN 的改进:
- Double DQN:解决 DQN 的 “过估计” 问题(Q 值偏高),用主网络选动作(\(\arg\max_{a'} Q(s',a'; \theta)\)),目标网络算价值(\(Q(s',a'; \theta^-)\)),目标变为\(r + \gamma Q(s', \arg\max_{a'} Q(s',a'; \theta); \theta^-)\)。
- Dueling DQN:将 Q 函数分解为状态价值\(V(s)\)和优势函数\(A(s,a)\)(\(Q(s,a) = V(s) + A(s,a) - \frac{1}{|A|}\sum_a A(s,a)\)),更高效学习状态本身的价值。
- Rainbow:融合 Double DQN、Dueling DQN、优先经验回放(Prioritized Experience Replay)等多种改进,性能大幅提升。
三、Actor-Critic 方法(结合策略与价值优化)
Actor-Critic(AC)结合策略优化(Actor)和价值优化(Critic)的优势:Actor 负责生成策略(\(\pi(a|s)\)),Critic 通过价值函数(或优势函数)评估 Actor 的动作,指导其更新,兼顾效率与稳定性。
1. 基础 AC 与 A2C
- AC:Critic 估计\(Q(s,a)\)或\(A(s,a)\),Actor 根据 Critic 的反馈(如\(A(s,a)\))更新策略梯度:\(\nabla_\theta J(\theta) \propto \mathbb{E}[ \nabla_\theta \log \pi(a|s) \cdot A(s,a) ]\)。
- A2C(Advantage Actor-Critic):用优势函数\(A(s,a) = Q(s,a) - V(s)\)作为 Critic 的反馈,进一步减少方差,同时通过多线程并行训练提升效率。
2. 异步 AC 方法
- A3C(Asynchronous Advantage Actor-Critic):通过多个异步线程(Worker)独立与环境交互,各自计算梯度并异步更新全局参数,无需经验回放即可打破样本相关性,大幅提升训练速度。
四、通用优化技巧
1. 样本效率提升
- 经验回放(Experience Replay):如 DQN,重复利用历史样本,减少与环境的交互次数。
- 离线强化学习(Offline RL):直接利用静态数据集(无需实时交互)训练,适合数据有限或交互成本高的场景(如医疗、自动驾驶),核心是解决 “分布偏移”(训练数据分布与策略分布不匹配),代表算法有 BCQ、CQL。
- 元强化学习(Meta-RL):让智能体从多个任务中学习 “学习策略”,快速适应新任务(如 Few-shot 学习),代表算法有 MAML(Model-Agnostic Meta-Learning)。
2. 训练稳定性优化
- 目标网络(Target Network):如 DQN、DDPG(Deep Deterministic Policy Gradient),固定目标函数参数减少波动。
- 梯度裁剪(Gradient Clipping):限制梯度大小(如\(\max(\text{grad}, \text{threshold})\)),防止梯度爆炸。
- 熵正则化(Entropy Regularization):在目标函数中加入策略熵(\(H(\pi) = -\mathbb{E}[ \log \pi(a|s) ]\)),鼓励策略多样性,避免过早收敛到次优策略(如 PPO、SAC)。
3. 探索与利用平衡
强化学习需在 “探索未知动作” 和 “利用已知高价值动作” 间平衡:
- ε- 贪婪策略:以\(\epsilon\)概率随机选动作(探索),\(1-\epsilon\)概率选最优动作(利用),\(\epsilon\)随训练衰减。
- 玻尔兹曼探索:按概率\(\pi(a|s) \propto \exp(Q(s,a)/\tau)\)选择动作,温度\(\tau\)控制探索程度(\(\tau \to 0\)时接近贪婪)。
- 内在奖励(Intrinsic Reward):如好奇心驱动学习(Curiosity-Driven Learning),通过预测误差(智能体对环境的 “惊讶度”)作为额外奖励,鼓励探索未知区域。
五、基于模型的强化学习(Model-Based RL)
通过学习环境模型(预测下一步状态和奖励),在模型中模拟交互生成样本,减少真实环境交互。代表算法如 MBPO(Model-Based Policy Optimization),通过模型生成的虚拟数据辅助训练,样本效率比无模型方法高 1-2 个数量级。
总结
不同优化方法适用于不同场景:
- 离散动作空间:优先考虑 DQN 系列、Q-learning;
- 连续动作空间:优先考虑 PPO、TRPO、DDPG;
- 样本有限场景:离线 RL、基于模型的 RL;
- 高稳定性需求:PPO、A2C。
实际应用中常结合多种方法(如 Rainbow 融合多种 DQN 改进),需根据任务特性(动作空间、样本成本、稳定性要求)选择合适策略。
867

被折叠的 条评论
为什么被折叠?



