强化学习与马尔可夫决策过程:一周学习小结

最近花了一周时间系统学习了强化学习的基础概念、马尔可夫决策过程以及动态规划相关的值迭代和策略迭代方法。这篇文章是对这一周学习内容的整理,尽量用贴近日常交流的方式把核心知识点串起来,希望对同样在入门RL的朋友有点帮助。

目录


一、强化学习是什么

以前我理解的机器学习主要是监督学习(给数据、给标签,让模型预测)和无监督学习(找数据内部结构)。这周学到的强化学习是另一种范式——决策型任务

简单说,强化学习关注的是一个智能体(Agent)在一个动态环境里,通过试错(trial and error)与环境交互,学习如何行动才能让长期累积的奖励最大化。

关键区别:

  • 监督学习的训练数据是固定的。
  • 强化学习的训练数据是交互生成的:你采取什么动作,环境才会给你下一个状态和奖励。不同策略会导致完全不同的数据分布。

一个很直观的例子:无人驾驶小车。小车(智能体)看到路况(状态),选择打方向盘或踩油门(动作),然后得到是否平稳行驶的反馈(奖励)。全程没有老师告诉它“现在该左转15度”,全靠自己摸索。


二、核心要素:状态、动作、策略、奖励、价值

  • 历史(History):直到当前时刻为止,所有观测、动作、奖励的序列 H t = O 1 , R 1 , A 1 , … , O t , R t H_t = O_1, R_1, A_1, \dots, O_t, R_t Ht=O1,R1,A1,,Ot,Rt

  • 状态(State):用于决定下一步会发生什么的信息,是历史的函数 S t = f ( H t ) S_t = f(H_t) St=f(Ht)。如果状态包含了过去所有有用信息,就满足马尔可夫性质。

  • 策略(Policy):智能体在某个状态下如何选择动作。
    确定性策略: a = π ( s ) a = \pi(s) a=π(s)
    随机策略: π ( a ∣ s ) = P ( A t = a ∣ S t = s ) \pi(a|s) = P(A_t=a | S_t=s) π(as)=P(At=aSt=s)

  • 奖励(Reward):$ R(s,a) $,是即时反馈的标量,告诉智能体这一步做得“好”还是“坏”。

  • 价值函数(Value Function):评价长期意义上的“好”。比如状态价值 V π ( s ) V^\pi(s) Vπ(s) 表示从状态 s 开始,按照策略 π 行动能获得的期望累积折扣奖励。动作价值 Q π ( s , a ) Q^\pi(s,a) Qπ(s,a) 则是先执行动作 a,之后按 π 行动。

奖励是一口零食,价值是整桌宴席的预期。


三、马尔可夫决策过程(MDP)的数学框架

MDP 是强化学习中最常用的环境建模工具。它假设环境完全可观测,且满足马尔可夫性质:未来只依赖于当前状态和动作,与更早的历史无关。

MDP 的五元组

( S , A , { P s a } , γ , R ) (S, A, \{P_{sa}\}, \gamma, R) (S,A,{Psa},γ,R)

  • S S S:有限的状态集合
  • A A A:有限的动作集合
  • P s a P_{sa} Psa:状态转移概率,给定状态 s 和动作 a,转移到 s’ 的概率
  • γ ∈ [ 0 , 1 ] \gamma \in [0,1] γ[0,1]:折扣因子,让智能体不那么短视也可以不那么贪婪
  • R R R:奖励函数,可以是 R ( s , a ) R(s,a) R(s,a) R ( s ) R(s) R(s)

动态过程

S 0 → a 0 , R ( s 0 , a 0 ) S 1 → a 1 , R ( s 1 , a 1 ) S 2 … S_0 \xrightarrow{a_0, R(s_0,a_0)} S_1 \xrightarrow{a_1, R(s_1,a_1)} S_2 \dots S0a0,R(s0,a0) S1a1,R(s1,a1) S2
累积回报 = R ( s 0 , a 0 ) + γ R ( s 1 , a 1 ) + γ 2 R ( s 2 , a 2 ) + … R(s_0,a_0) + \gamma R(s_1,a_1) + \gamma^2 R(s_2,a_2) + \dots R(s0,a0)+γR(s1,a1)+γ2R(s2,a2)+

占用度量(Occupancy Measure)

这是一个挺有意思的概念:同一个 MDP 环境下,不同策略访问到的 (s, a) 分布不同。
ρ π ( s , a ) = E π [ ∑ t = 0 T γ t P ( s t = s , a t = a ) ] \rho^{\pi}(s,a) = \mathbb{E}_{\pi}\left[\sum_{t=0}^{T} \gamma^t \mathbb{P}(s_t=s, a_t=a)\right] ρπ(s,a)=Eπ[t=0TγtP(st=s,at=a)]
而策略的累积奖励恰好就是 ∑ s , a ρ π ( s , a ) R ( s , a ) \sum_{s,a} \rho^{\pi}(s,a) R(s,a) s,aρπ(s,a)R(s,a)。换句话说,策略的价值完全由它产生的状态-动作分布和奖励函数的内积决定。这也为后面的一些理论(比如模仿学习)提供了基础。


四、探索与利用的平衡

这是序列决策里一个非常“纠结”的问题:

  • 利用(Exploitation):按照当前已知的最好策略行动,获得确定的高收益。
  • 探索(Exploration):尝试新的动作,可能发现更好的策略,但也可能短期内收益变差。

举个生活例子:你常去的那家餐馆味道稳定(利用),但旁边新开了一家也许更好吃(探索),也可能踩雷。

强化学习中如果只利用不探索,容易陷入局部最优;如果只探索不利用,总收益会线性增长且永远收敛不了。理想情况是次线性 regret,即随着时间推移,后悔(与最优决策的差距)增长得越来越慢。


五、多臂老虎机:无状态的简化问题

多臂老虎机(Multi-arm Bandit,MAB)可以看作“没有状态”的强化学习。有 K 个摇臂(动作),每次拉下一个摇臂会得到一个随机奖励,目标是在 T 步内最大化总奖励。

增量更新公式

Q n + 1 ( a ) = Q n ( a ) + 1 n ( r n − Q n ( a ) ) Q_{n+1}(a) = Q_n(a) + \frac{1}{n} (r_n - Q_n(a)) Qn+1(a)=Qn(a)+n1(rnQn(a))
只需要记住当前的估值和采样次数,空间复杂度 O(1),很实用。

常见策略

策略做法特点
ε-greedy以概率 ε 随机探索,1-ε 选择当前最优简单,但 regret 仍线性增长
衰减 ε-greedyε 随时间减小理论上可达对数 regret,但衰减参数难调
乐观初始化初始 Q 值设得很大鼓励早期探索,但之后仍可能收敛到次优

Regret 下界(Lai & Robbins):
lim ⁡ T → ∞ σ R ≥ log ⁡ T ∑ a : Δ a > 0 Δ a D K L ( R ( r ∣ a ) ∥ R ∗ ( r ∣ a ) ) \lim_{T\to\infty} \sigma_R \ge \log T \sum_{a:\Delta_a>0} \frac{\Delta_a}{D_{KL}( \mathcal{R}(r|a) \parallel \mathcal{R}^*(r|a) )} TlimσRlogTa:Δa>0DKL(R(ra)R(ra))Δa
这个下界说明,在任意算法下,总 regret 至少以对数速度增长。能达到这个下界的算法(如 UCB)被认为是最优的。


六、值迭代与策略迭代

当我们从 MAB 升级到真正的 MDP 时,就需要考虑状态之间的转移了。对于离散、有限状态的 MDP,可以用动态规划求解最优策略。

贝尔曼方程(Bellman Equation)

V π ( s ) = R ( s ) + γ ∑ s ′ P s π ( s ) ( s ′ ) V π ( s ′ ) V^{\pi}(s) = R(s) + \gamma \sum_{s'} P_{s\pi(s)}(s') V^{\pi}(s') Vπ(s)=R(s)+γsPsπ(s)(s)Vπ(s)
它把当前状态的价值与下一步状态的价值联系起来。

两种经典算法

价值迭代

  1. 初始化 V ( s ) = 0 V(s) = 0 V(s)=0
  2. 重复更新直到收敛:
    V ( s ) = R ( s ) + max ⁡ a γ ∑ s ′ P s a ( s ′ ) V ( s ′ ) V(s) = R(s) + \max_{a} \gamma \sum_{s'} P_{sa}(s') V(s') V(s)=R(s)+amaxγsPsa(s)V(s)
    不显式维护策略,价值收敛后通过 arg ⁡ max ⁡ \arg\max argmax 提取策略。
    • 优点:实现简单,适合大规模状态空间
    • 缺点:收敛速度可能较慢

策略迭代

  1. 随机初始化策略 π
  2. 重复:
    a) 策略评估:求解当前 π 下的价值函数 V π V^{\pi} Vπ(解线性方程组或迭代求解)
    b) 策略改进:按贪心方式更新 π ( s ) = arg ⁡ max ⁡ a ∑ s ′ P s a ( s ′ ) V π ( s ′ ) \pi(s) = \arg\max_a \sum_{s'} P_{sa}(s') V^{\pi}(s') π(s)=argmaxasPsa(s)Vπ(s)
    • 优点:通常迭代次数很少
    • 缺点:每轮策略评估计算量大

书上有个很形象的例子:一个 4×4 的网格世界,走到灰色格子终止,每步奖励 -1。用均匀随机策略评估时,价值从 0 逐步扩散成负值越来越大的分布,而贪心策略也逐渐从混乱变得指向终点。这个例子让我直观理解了价值是如何“向后传播”的。

对比总结

价值迭代策略迭代
更新方式贝尔曼最优方程直接更新 V先求 V^π,再改进 π
每轮成本 O ( ∣ S ∣ 2 ∣ A ∣ ) O(|S|^{2}|A|) O(S2A)策略评估较贵
收敛速度线性收敛通常更快(但每轮贵)
适用场景状态空间大、转移无环状态空间小、有环

七、从表格型到深度强化学习的简要延伸

当状态空间连续或维度很高时(比如 Atari 游戏的原始像素),表格法就失效了。深度强化学习就是用深度神经网络来近似价值函数或策略。

  • DQN(Deep Q-Network):用神经网络拟合 Q(s,a),引入经验回放目标网络来稳定训练。
  • 2013 年 DeepMind 那篇《Playing Atari with Deep Reinforcement Learning》可以说是深度强化学习的开山之作。

神经网络参数多、训练不稳定、容易过拟合,这些都是新挑战。但好处是端到端:输入像素,输出动作,不需要手工设计特征。

目前前沿方向还包括:

  • 基于模型的 RL:先学一个环境模拟器,在模拟器中规划。
  • 分层 RL:把长时序任务拆成子目标。
  • 模仿学习:没有奖励信号,只模仿专家轨迹。
  • 多智能体 RL:环境里其他智能体也在学习,导致非稳态。

八、小结

这一周下来,主要收获了几条主线:

  1. RL 的核心思想:试错交互 + 最大化累积奖励。
  2. MDP 是描述这类问题的标准数学工具,状态、动作、奖励、转移概率四要素 + 折扣因子。
  3. 探索与利用 是 RL 特有的矛盾,多臂老虎机提供了研究它的简化舞台。
  4. 动态规划方法(值迭代、策略迭代)是表格型 MDP 的求解器,也是理解后续 TD、Q-learning 的基础。
  5. 深度强化学习 把 RL 的能力扩展到高维问题,但也带来了新的训练挑战。
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐