2. 强化学习基础

强化学习的本质是智能体(Agent)在与环境(Environment)的交互中,通过试错来学习最优行为策略。几乎所有现代强化学习算法——包括后续要讲的PPO、SAC以及多智能体变体——都建立在马尔可夫决策过程(MDP)这一数学框架之上。MDP不仅提供了形式化的语言来描述“状态-动作-奖励”的循环,还定义了智能体优化目标的数学表达。理解MDP的五个核心要素(状态、动作、奖励、折扣因子、状态转移)以及策略与价值函数的概念,是掌握任何深度强化学习算法的前提。本节将系统梳理这些基础概念,并揭示它们如何在PPO与SAC中被具体化。

MDP五元组与策略/价值函数关系图 MDP <S, A, P, R, γ> 状态 S 环境可观测信息 动作 A 智能体决策输出 奖励 R 即时反馈信号 转移 P P(s'|s,a) 折扣因子 γ ∈[0,1] 策略 π(a|s) 行为选择分布 价值函数 V/Q 期望回报估计 智能体通过策略选择动作,环境反馈奖励并转移状态,价值函数评估长期回报

上图展示了MDP的核心结构。在强化学习中,环境被抽象为一个马尔可夫过程,其状态转移满足马尔可夫性质:下一时刻的状态仅取决于当前状态和当前动作,与更早的历史无关。这一性质极大地简化了问题的数学表达,使得我们可以在不追溯完整历史的情况下做出最优决策。下面我们逐一拆解这些要素。

核心原理:MDP五元组与马尔可夫性质

一个离散时间的MDP由五元组 (S, A, P, R, γ) 定义。其中 S 是有限或连续的状态集合,A 是动作集合,P(s'|s,a) 是状态转移概率,R(s,a,s') 是奖励函数,γ 是折扣因子。智能体在每个时间步 t 观测到状态 s_t,依据策略 π(a|s) 选择动作 a_t,环境据此转移到新状态 s_{t+1} 并返回即时奖励 r_t。这个过程不断循环,形成一条轨迹(Trajectory):s_0, a_0, r_0, s_1, a_1, r_1, ...。

马尔可夫性质是MDP的基石。它意味着状态 s_t 已经包含了做出最优决策所需的全部历史信息。在实际工程中,这要求我们设计状态表示时尽可能完整地反映环境的关键特征。例如,在机器人控制任务中,如果状态只包含当前关节角度而不包含角速度,那么系统就不满足马尔可夫性质,策略学习会变得极其困难。因此,状态设计是强化学习工程化的第一步,也是最关键的一步。

判断方法:如何设计状态、动作与奖励

在实际建模过程中,我们需要遵循一套系统化的判断流程来定义MDP的各个要素。以下是常用的操作步骤:

  1. 状态空间设计:列出影响决策的所有关键变量。对于连续控制任务,通常包括位置、速度、加速度等;对于游戏任务,可能包括屏幕像素或特征向量。状态应满足马尔可夫性质,即从状态中应能推断出环境动态的全部相关信息。
  2. 动作空间定义:明确智能体可以执行的操作。动作可以是离散的(如左转、右转、前进)或连续的(如施加力矩、控制油门)。PPO和SAC都支持连续动作空间,但SAC在处理高维连续动作时通常更稳定。
  3. 奖励函数设计:奖励是引导智能体行为的唯一信号。设计原则是“稀疏但明确”——过于稀疏的奖励会导致探索困难,过于密集的奖励可能引入局部最优。例如,在训练四足机器人行走时,可以设置前进距离作为奖励,同时加入能量消耗的惩罚项。
  4. 折扣因子选择:γ 决定了智能体对远期回报的重视程度。γ 接近1时,智能体更关注长期收益;γ 较小时,智能体更短视。在无限时域任务中,γ 必须小于1以保证累积回报收敛。
经验提醒:在PPO和SAC的实际应用中,奖励归一化(Reward Normalization)是常见的预处理步骤。如果奖励量级过大或过小,会导致价值网络训练不稳定。建议将奖励缩放至 [-1, 1] 或使用自适应归一化技术。

策略与价值函数:从评估到优化的桥梁

策略 π(a|s) 定义了在状态 s 下选择动作 a 的概率分布。在PPO中,策略通常由高斯分布表示(连续动作)或分类分布表示(离散动作),其参数由神经网络输出。价值函数则用于评估当前策略的好坏:状态价值函数 Vπ(s) 表示从状态 s 出发,遵循策略 π 所能获得的期望折扣回报;动作价值函数 Qπ(s,a) 表示在状态 s 执行动作 a 后,再遵循策略 π 的期望回报。两者关系为 Vπ(s) = Ea~π[Qπ(s,a)]。

在SAC算法中,价值函数被扩展为软价值函数,额外引入了熵正则项。这意味着SAC不仅最大化累积奖励,还同时最大化策略的熵(即随机性),从而鼓励探索并避免过早收敛到局部最优。这一设计使得SAC在连续控制任务中表现出色,尤其是在需要高度灵活性的场景中。

案例拆解:基于MDP的自动驾驶变道决策

为了将抽象概念具体化,我们考虑一个简化的自动驾驶变道场景。假设车辆在高速公路上行驶,需要决定是否变道超车。

MDP要素具体定义说明
状态 S自车速度、与前车距离、与目标车道后车距离、目标车道后车速度4维连续状态,满足马尔可夫性质
动作 A保持车道、向左变道、向右变道3个离散动作
奖励 R成功变道 +10;碰撞 -100;每步时间惩罚 -0.1;急刹车 -1稀疏奖励+密集惩罚
折扣 γ0.95重视中期收益,避免过度短视
转移 P由交通模拟器提供包含其他车辆的随机行为

在这个案例中,策略 π(a|s) 将4维状态映射到3个动作的概率分布。价值函数 Q(s,a) 则估计在给定交通状况下执行某个动作的长期安全性。训练初期,智能体会随机尝试变道,可能频繁发生碰撞;随着训练进行,价值网络逐渐学会预测风险,策略网络则倾向于选择安全且高效的变道时机。值得注意的是,如果状态中不包含目标车道后车的速度,智能体将无法判断变道是否安全,这直接违反了马尔可夫性质,导致训练失败。

常见误区与总结复盘

风险提示:一个常见的错误是将折扣因子设置得过大(如 γ=0.999)而忽略了任务的实际时域。在有限时域任务中,过大的 γ 会导致价值函数方差增大,使得PPO的策略更新不稳定。另一个误区是奖励设计过于复杂,包含多个相互冲突的项,导致智能体学会“钻空子”——例如在自动驾驶任务中,智能体可能通过急加速来获得速度奖励,却忽略了舒适性惩罚。

总结本节内容,MDP为强化学习提供了严谨的数学框架,而策略与价值函数则是连接环境交互与参数优化的核心工具。在实际工程中,我们应优先确保状态设计的完备性,其次谨慎设计奖励函数,最后选择合适的折扣因子。PPO和SAC虽然算法细节不同,但都基于MDP的回报最大化目标——PPO通过裁剪的代理目标函数稳定更新策略,SAC则通过最大熵框架平衡探索与利用。理解这些基础概念,是后续掌握算法细节的前提。