Personal Knowledge Base

A long-term research and learning notebook for posts, notes, papers, projects, and research directions.

Skip to content
← Back to notes

强化学习 05:Monte Carlo Learning

使用完整回合的实际回报估计值函数,并通过探索与重要性采样实现同策略和异策略控制。

4 min read

核心思想

Monte Carlo(MC)方法不需要环境模型,而是直接使用完整回合产生的实际回报作为学习目标:

Gt=Rt+1+γRt+2++γTt1RTG_t=R_{t+1}+\gamma R_{t+2}+\cdots+\gamma^{T-t-1}R_T

对状态 ss 的多次回报取平均,可以估计:

Vπ(s)=Eπ[GtSt=s]V^\pi(s)=\mathbb{E}_\pi[G_t\mid S_t=s]

MC 方法必须等到回合结束后才能得到 GtG_t,因此天然适合具有终止状态的回合式任务。

首次访问与每次访问

同一状态可能在一条轨迹中出现多次:

  • 首次访问 MC:每个回合只使用状态第一次出现后的回报。
  • 每次访问 MC:使用状态每一次出现后的回报。

两种方法在常见条件下都能收敛到真实值函数。增量均值更新为:

V(St)V(St)+αt[GtV(St)]V(S_t) \leftarrow V(S_t)+\alpha_t\left[G_t-V(S_t)\right]

αt=1/N(St)\alpha_t=1/N(S_t) 时,该更新等价于样本均值;使用固定步长则更适合非平稳环境。

Monte Carlo 控制

仅估计 VπV^\pi 不足以在未知模型下改进策略,因为无法比较不同动作。MC 控制通常直接学习动作值:

Q(St,At)Q(St,At)+αt[GtQ(St,At)]Q(S_t,A_t) \leftarrow Q(S_t,A_t)+\alpha_t \left[G_t-Q(S_t,A_t)\right]

然后对 QQ 构造 ϵ\epsilon-greedy 策略。这样既保留探索,又逐渐偏向高价值动作。

同策略学习

同策略 MC 使用同一个策略采样并优化。典型循环是:

  1. 使用当前 ϵ\epsilon-soft 策略生成完整回合。
  2. 用回合回报更新访问过的 Q(s,a)Q(s,a)
  3. 令策略对更新后的 QQ 保持 ϵ\epsilon-greedy。

只要每个状态动作对持续得到访问,并适当减小探索率,策略就可以趋近最优。

异策略学习

异策略方法使用行为策略 bb 产生数据,却评估或优化目标策略 π\pi。二者的轨迹分布不同,需要使用重要性采样比率修正:

ρt:T1=k=tT1π(AkSk)b(AkSk)\rho_{t:T-1} =\prod_{k=t}^{T-1} \frac{\pi(A_k\mid S_k)}{b(A_k\mid S_k)}

普通重要性采样直接平均 ρG\rho G,无偏但方差可能很大。加权重要性采样使用归一化权重:

V(s)=iρiGiiρiV(s) = \frac{\sum_i \rho_i G_i} {\sum_i \rho_i}

它通常方差更低,但在有限样本下会引入偏差。

优势与限制

优势

  • 不需要知道转移概率和奖励模型。
  • 目标是真实回报,不依赖当前值函数的自举估计。
  • 每条轨迹可以独立采样,容易并行。

限制

  • 必须等到回合结束,无法立即更新。
  • 长轨迹的回报方差较大。
  • 很难直接用于没有自然终点的持续任务。
  • 异策略重要性采样可能产生极端权重。

与动态规划和 TD 的关系

动态规划使用完整的模型期望,MC 使用完整的采样回报,Temporal-Difference Learning 则使用一步或多步采样并从当前估计自举。三者的主要差异可以理解为:学习目标中使用多少真实奖励,以及是否使用已有值函数估计。

Related Posts