3. 强化学习入门

在交通信号控制、匝道调节、自动驾驶决策等多智能体场景中,强化学习(RL)提供了“通过与环境反复交互来学习最优策略”的通用框架。理解RL,必须从最基础的数学建模开始:马尔可夫决策过程(MDP)。MDP用五元组 (S, A, P, R, γ) 描述一个序贯决策问题:状态集合 S、动作集合 A、状态转移概率 P、奖励函数 R 以及折扣因子 γ。交通场景中,S 可以是各车道排队长度与相位状态,A 是相位切换或绿灯延长,R 则常设计为通行量增加、延误减少或排队消散。

在MDP基础上,强化学习要回答两个核心问题:“这个状态有多好?” 和 “这个动作有多好?”。前者由状态值函数 V(s) 描述,后者由动作值函数 Q(s,a) 描述。二者满足贝尔曼方程,即当前价值等于即时奖励加上折扣后的未来价值期望。值函数方法(如Q-learning)通过不断迭代贝尔曼方程逼近最优Q值;策略梯度方法则直接对策略参数求梯度,提升期望回报;Actor-Critic 将两者结合,用Actor输出动作、Critic评估价值;PPO则在此基础上引入重要性采样与裁剪机制,使策略更新更稳定。

强化学习核心方法演进:从MDP到PPO MDP 基础模型 状态 S:车道排队 / 相位 / 速度 动作 A:相位切换 / 绿灯延长 奖励 R:通行量↑ 延误↓ 排队↓ 转移 P(s'|s,a):交通流演化 折扣 γ:平衡即时与长期收益 目标:最大化期望累计回报 值函数方法 V(s) = E[G_t | S_t=s] Q(s,a) = E[G_t | S_t=s, A_t=a] 贝尔曼迭代:Q ← r + γ max Q(s',a') 代表:Q-learning、DQN 策略梯度方法 π_θ(a|s) 直接参数化策略 ∇J(θ) = E[∇logπ_θ(a|s)·G_t] REINFORCE:用回报加权梯度 代表:REINFORCE、PPO Actor-Critic 融合架构 Actor(策略网络)输出动作概率 | Critic(价值网络)估计 V(s) 或 Q(s,a) PPO:裁剪重要性采样比,稳定策略更新 值函数 提供基线 策略梯度 直接优化

核心原理:值函数、策略梯度与贝尔曼方程

值函数方法的核心是贝尔曼最优方程。Q-learning 的更新规则为:

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

其中 α 是学习率,γ 是折扣因子。该式说明:当前动作的价值,应逐步逼近“即时奖励 + 下一状态最优动作价值”的折扣和。Q-learning 属于 off-policy 方法,可以用旧策略产生的数据更新当前策略,因此在交通仿真中常配合经验回放使用。

策略梯度方法则直接对策略参数 θ 求梯度。最基础的 REINFORCE 算法使用完整回合回报 G_t 作为权重:

θ ← θ + α · ∇_θ log π_θ(a_t | s_t) · G_t

它的直觉是:如果某动作带来了高回报,就提高该动作被选中的概率;反之则降低。但 REINFORCE 方差大、学习慢。Actor-Critic 引入 Critic 网络估计 V(s) 作为基线,用优势函数 A(s,a) = Q(s,a) − V(s) 替代原始回报,从而显著降低方差。

方法流程:从Q-learning到PPO的演进

下表对比了四种核心方法的关键特征,便于在交通控制任务中选型:

方法 策略类型 核心机制 交通场景适用性
Q-learning Off-policy 贝尔曼迭代 + 贪心策略 离散相位控制、小规模状态
DQN Off-policy Q网络 + 经验回放 + 目标网络 高维状态感知、单路口信号
Actor-Critic On-policy Actor输出动作,Critic估计价值 连续控制、匝道调节
PPO On-policy 裁剪重要性采样比,限制策略更新幅度 多路口协同、稳定训练首选

PPO 的核心思想可以用一句话概括:“不要一次更新太猛”。它构造重要性采样比 r_t(θ) = π_θ(a|s) / π_θ_old(a|s),并裁剪到 [1−ε, 1+ε] 区间,目标函数为:

L^CLIP(θ) = E[ min( r_t(θ)·A_t, clip(r_t(θ), 1−ε, 1+ε)·A_t ) ]

当新策略偏离旧策略过远时,裁剪项会阻止梯度继续朝该方向更新,从而避免训练崩溃。这一特性使 PPO 成为多智能体交通信号协同控制中最常用的基线算法之一。

案例场景:单路口信号控制中的PPO应用

考虑一个四相位单路口,状态设计为各进口道排队长度与当前相位,动作空间为“保持当前相位”或“切换到下一相位”,奖励设计为 r = −(总排队长度 + 总延误)。使用 PPO 训练时,Actor 网络输出两个动作的概率,Critic 网络估计当前状态价值。每 5 秒决策一次,一个回合包含 3600 秒仿真。训练初期策略随机切换相位,随着优势函数估计逐渐准确,策略学会在排队较长的方向延长绿灯,在排队较短时快速切换。

实操提示:在交通仿真中,PPO 的 ε 通常设为 0.1~0.2,学习率 3e-4,GAE 参数 λ=0.95。若奖励尺度差异大,建议先做归一化,否则 Critic 难以收敛。

误区与复盘:常见训练失败原因

  • 奖励设计过于稀疏:只在回合结束给奖励,导致 Q-learning 和 PPO 都难以学习。应设计密集奖励,如每步的排队变化量。
  • 状态信息不完整:MDP 要求状态满足马尔可夫性。若只给当前排队而不给相位持续时间,策略可能反复切换。
  • 忽略 on-policy 与 off-policy 差异:PPO 是 on-policy,旧数据不能反复使用;Q-learning 可用经验回放,但需注意目标网络更新频率。
  • 多智能体直接套用单智能体PPO:每个路口独立训练会导致环境非平稳。应引入集中训练、分散执行(CTDE)框架,如 MAPPO。
复盘要点:若 PPO 训练曲线剧烈震荡,优先检查优势估计是否使用了 GAE、裁剪系数 ε 是否过大、以及奖励是否被异常值主导。交通场景中,一次严重拥堵可能产生极大负奖励,建议对奖励做截断或标准化。

从 MDP 到 PPO,强化学习在交通领域的落地路径逐渐清晰:用 MDP 建模交互,用值函数或策略梯度求解,用 Actor-Critic 降低方差,用 PPO 提升稳定性。掌握这条主线,才能在多智能体交通交互工程中进一步处理非平稳性、部分可观测性和信用分配等更复杂的问题。