3. 单智能体强化学习回顾

多智能体强化学习(MARL)的CTDE(Centralized Training with Decentralized Execution)框架,本质上是在单智能体强化学习算法基础上的扩展与重构。要理解CTDE中“集中训练”与“分散执行”的设计逻辑,必须先扎实掌握单智能体强化学习的核心算法族:基于价值的Q学习、基于策略的策略梯度方法,以及融合两者优势的Actor-Critic架构。这些算法不仅是MARL的基石,更决定了CTDE框架中评论家(Critic)如何利用全局信息、行动者(Actor)如何仅依赖局部观测做出决策。本节将系统回顾这些关键算法,剖析其原理、流程与工程实践中的常见误区,为后续学习CTDE框架下的多智能体协作打下坚实基础。

单智能体强化学习关键算法关系图 智能体 (Agent) 策略 π(a|s) 环境 (Environment) 状态转移 P(s'|s,a) 动作 a 状态 s'、奖励 r 策略梯度 (Policy Gradient) 直接优化策略参数 θ ∇J(θ) = E[∇log π(a|s) · Q(s,a)] REINFORCE: 蒙特卡洛采样 PPO: 裁剪代理目标 适用于连续动作空间 高方差,收敛慢 Q学习 (Q-Learning) 基于价值,学习 Q(s,a) Q(s,a) ← Q(s,a) + α[r + γ·max Q(s',a') - Q(s,a)] DQN: 神经网络逼近 Q 函数 目标网络 + 经验回放 适用于离散动作空间 过估计问题需处理 Actor-Critic (A2C/A3C) Actor: 策略网络 π(a|s) Critic: 价值网络 V(s) 或 Q(s,a) 优势函数 A = Q - V 降低方差 TD误差作为优势估计 连续/离散动作均可 CTDE框架的核心基础 经验回放 (Experience Replay): 打破样本相关性,提高数据利用率

上图展示了单智能体强化学习中三大算法族的内在关系。智能体与环境持续交互,产生状态、动作、奖励的转移序列。策略梯度方法直接对策略进行参数化更新,Q学习则通过逼近最优动作价值函数间接得到策略,而Actor-Critic架构将两者结合,用Critic网络估计价值以指导Actor网络的策略更新。经验回放作为DQN的重要组件,打破了样本间的时间相关性,显著提升了训练稳定性。理解这些算法各自的优缺点,是掌握CTDE框架下多智能体算法设计的前提。

3.1 策略梯度方法:直接优化策略

核心原理

策略梯度方法的核心思想是直接对策略函数 πθ(a|s) 进行参数化,并通过梯度上升最大化期望累积奖励 J(θ) = Eτ~πθ[Σt γt rt]。其梯度估计的核心公式为:

∇J(θ) = E[ ∇θ log πθ(a|s) · Qπ(s,a) ]

其中 Qπ(s,a) 表示在策略 π 下从状态 s 采取动作 a 的期望回报。该公式的直观解释是:如果某个动作带来的回报高于平均水平,就增加该动作被选中的概率;反之则降低。策略梯度方法天然适合连续动作空间,因为不需要对动作空间进行离散化处理。

判断方法与操作流程

在实际应用中,选择策略梯度方法通常基于以下判断标准:

  • 动作空间性质:若动作是连续的(如机器人关节力矩、自动驾驶转向角),策略梯度是首选。
  • 策略随机性需求:需要显式建模随机策略时(如博弈对抗中的混合策略),策略梯度更自然。
  • 稳定性要求:策略梯度方法虽然收敛性有保证,但方差较大,需要配合基线(Baseline)或优势函数使用。

标准的REINFORCE算法流程如下:

  1. 初始化策略参数 θ。
  2. 循环:使用当前策略 πθ 采样完整轨迹 τ = (s0, a0, r1, ..., sT-1, aT-1, rT)。
  3. 计算每个时间步的累积折扣回报 Gt = Σk=t+1T γk-t-1 rk。
  4. 更新策略参数:θ ← θ + α · Σt ∇θ log πθ(at|st) · Gt。

案例拆解:CartPole平衡控制

以经典的CartPole环境为例,智能体需要决定向左或向右施加力以保持杆子直立。使用REINFORCE算法时,我们注意到以下关键点:

  • 初始现象:随机策略下,杆子通常在几秒内倒下,奖励稀疏且延迟。
  • 关键参数:折扣因子 γ=0.99,学习率 α=0.01,每回合最大步数500。
  • 分析过程:由于REINFORCE使用完整轨迹的回报,方差极大。第一次更新后,策略可能剧烈震荡,甚至比随机策略更差。
  • 改进措施:引入基线 b(s) = V(s)(状态价值函数),将 Gt 替换为优势估计 At = Gt - V(st),方差显著降低。
  • 结果对比:加入基线后,训练收敛速度提升约3倍,最终策略能稳定保持杆子直立超过500步。
常见误区:初学者常忽略策略梯度的高方差问题,直接使用原始回报 Gt 进行更新,导致训练不稳定。务必引入基线或使用后续介绍的Actor-Critic架构来降低方差。此外,学习率设置过大容易导致策略“崩溃”,即策略变得过于确定而陷入次优解。

3.2 Q学习与DQN:基于价值的决策

核心原理

Q学习是一种基于价值(Value-based)的离策略(Off-policy)算法,其目标是学习最优动作价值函数 Q*(s,a),然后通过贪心策略 π(s) = argmaxa Q*(s,a) 选择动作。Q学习的更新公式为:

Q(s,a) ← Q(s,a) + α [ r + γ · max_a' Q(s',a') - Q(s,a) ]

其中 α 是学习率,γ 是折扣因子。当状态空间和动作空间较大时,使用深度神经网络逼近 Q 函数,即深度Q网络(DQN)。DQN引入了两个关键机制:经验回放和目标网络,以解决样本相关性和训练不稳定的问题。

经验回放机制详解

经验回放(Experience Replay)是DQN的核心创新之一。它将智能体与环境交互产生的转移样本 (s, a, r, s') 存入一个固定大小的回放缓冲区 D 中。训练时,从 D 中随机均匀采样一个小批量样本进行更新。这样做的好处是:

  • 打破样本相关性:连续交互的样本高度相关,直接用于梯度更新会导致模型偏向近期经验。随机采样打乱了时间顺序,使样本独立同分布。
  • 提高数据利用率:每个样本可以被多次使用,尤其在样本采集成本高的真实环境中(如机器人控制)尤为重要。
  • 平滑训练过程:从缓冲区中采样减少了参数更新的方差,使训练更加稳定。

案例拆解:Atari游戏中的DQN

以Atari 2600游戏《Breakout》为例,DQN的输入是原始像素帧(84×84×4),输出是18个离散动作的Q值。训练过程中的关键数据如下:

超参数值说明
回放缓冲区大小1,000,000存储最近100万帧经验
批量大小32每次采样32条经验更新
目标网络更新频率10,000步每1万步将Q网络参数复制到目标网络
初始探索率 ε1.0前100万步线性衰减至0.1

训练初期,智能体随机探索,得分很低。随着经验回放缓冲区中积累足够多样化的样本,Q网络开始学习到“击碎砖块”的策略。值得注意的是,目标网络的存在避免了“自举”导致的发散问题——如果使用同一个网络计算目标值和预测值,每次更新都会使目标值移动,导致训练不稳定。

经验提醒:回放缓冲区的大小需要根据任务复杂度调整。过小会导致样本多样性不足,过大则会使旧样本占据主导,降低对新环境的适应能力。在CTDE框架中,经验回放同样被广泛使用,但需要额外考虑多智能体样本的存储与采样策略。

3.3 Actor-Critic架构:策略与价值的融合

核心原理

Actor-Critic(AC)方法结合了策略梯度与价值学习的优势。其中,Actor(行动者)是一个策略网络 πθ(a|s),负责生成动作;Critic(评论家)是一个价值网络 Vφ(s) 或 Qφ(s,a),负责评估当前策略的好坏。Critic的输出作为基线或优势函数,指导Actor的更新方向。优势函数定义为:

A(s,a) = Q(s,a) - V(s)

优势函数衡量了在状态 s 下采取动作 a 相对于平均水平的优劣。若 A > 0,则增加该动作的概率;若 A < 0,则降低。实际中,常用TD误差 δ = r + γV(s') - V(s) 作为优势函数的无偏估计,避免了额外估计Q网络。

A2C/A3C与CTDE的关联

A2C(Advantage Actor-Critic)是AC架构的同步版本,A3C(Asynchronous Advantage Actor-Critic)是其异步版本。A3C通过多个并行环境中的智能体异步更新共享参数,打破了样本相关性,同时提高了训练效率。这一思想与CTDE框架有异曲同工之妙:CTDE中的“集中训练”类似于多个智能体共享一个全局Critic,而“分散执行”则类似于每个智能体独立使用自己的Actor网络进行决策。

在CTDE框架中,Critic可以获取所有智能体的观测和动作(全局信息),而Actor仅依赖局部观测。这种设计使得Critic能够更准确地评估联合动作的价值,从而为每个智能体提供更精确的优势信号,缓解了非平稳性问题。

案例拆解:连续控制任务中的A2C

以 Gym的“Pendulum-v1”为例,目标是让钟摆保持直立。动作是连续力矩值,范围[-2, 2]。使用A2C算法时:

  • 网络结构:Actor输出高斯分布的均值 μ 和标准差 σ,Critic输出状态价值 V(s)。
  • 训练过程:每个时间步计算TD误差 δt = rt + γV(st+1) - V(st),Actor的损失为 -log π(at|st) · δt,Critic的损失为 δt2。
  • 关键指标:训练500个回合后,平均回报从-1500提升至-200左右,策略能够稳定地将钟摆保持在直立位置附近。
  • 风险与代价:A2C对超参数敏感,尤其是Actor和Critic的学习率比例。若Critic学习过快,可能导致Actor更新方向错误;若过慢,则优势估计不准确。
总结复盘:Actor-Critic架构是CTDE框架的直接理论来源。在MARL中,每个智能体拥有独立的Actor网络(分散执行),而所有智能体共享一个全局Critic网络(集中训练)。Critic利用全局信息计算联合动作的优势函数,为每个智能体提供更稳定的梯度信号。理解A2C/A3C的方差削减机制,是理解MADDPG、QMIX等CTDE算法的基础。

3.4 关键算法对比与选型指南

算法类型动作空间方差样本效率CTDE适配性
REINFORCE策略梯度连续/离散高低不直接适用
DQN价值学习离散低中可扩展为独立Q学习
A2C/A3CAC架构连续/离散中中高直接适配(CTDE核心)
PPO策略梯度连续/离散低高可适配(需集中Critic)
SAC最大熵AC连续低高可适配(需处理熵项)

选型建议:若任务为离散动作且状态空间可穷举,优先考虑DQN及其变体;若任务为连续控制且需要高样本效率,SAC或PPO是更优选择;若需要直接迁移到CTDE框架,A2C/A3C提供了最自然的设计范式。经验回放机制在DQN中至关重要,但在AC架构中并非必需——A3C通过异步并行替代了经验回放的功能。

常见误区:许多初学者误以为经验回放是强化学习的“标配”,但在AC架构中,由于策略是on-policy的,使用经验回放会导致策略分布不匹配,反而引入偏差。CTDE框架中的经验回放需要特殊设计,例如使用“重要性采样”或“混合缓冲区”来缓解分布偏移问题。

综上所述,单智能体强化学习的三大算法族各有优劣。策略梯度方法直接且灵活,但方差大;Q学习稳定且样本利用率高,但受限于离散动作;Actor-Critic架构取长补短,成为现代深度强化学习的主流范式。经验回放作为DQN的加速器,在CTDE框架中需要重新审视其适用性。掌握这些基础算法的原理、流程与工程细节,是深入理解多智能体CTDE框架的必经之路。