跳转至

分层强化学习

动机

标准的平坦(flat)RL方法在面对以下挑战时表现不佳:

  • 长时间跨度:需要数百步才能完成的任务
  • 稀疏奖励:长期没有反馈信号
  • 组合复杂性:动作空间的指数爆炸
  • 迁移与复用:不同任务间的技能共享

分层强化学习(Hierarchical RL, HRL)通过在不同时间尺度上进行决策来解决这些问题。

Options框架

定义

Sutton, Precup & Singh (1999) 提出的Options框架是HRL的理论基础。一个Option \(\omega\) 由三元组定义:

\[\omega = (I_\omega, \pi_\omega, \beta_\omega)\]
  • \(I_\omega \subseteq \mathcal{S}\)启动集合(Initiation Set)——Option可以被启动的状态集合
  • \(\pi_\omega: \mathcal{S} \times \mathcal{A} \to [0, 1]\)内部策略(Intra-option Policy)——Option执行期间的行为策略
  • \(\beta_\omega: \mathcal{S} \to [0, 1]\)终止条件(Termination Condition)——在每个状态终止Option的概率

半马尔可夫决策过程(SMDP)

Options将决策过程从MDP扩展为SMDP:

  • 每个Option可能持续多个时间步
  • 高层策略在Option终止时选择下一个Option
  • 自然地实现了时间抽象

Option-Value函数

在Options框架下,价值函数定义为:

\[Q_\Omega(s, \omega) = \mathbb{E}\left[\sum_{t=0}^{\infty} \gamma^t r_t \mid s_0 = s, \omega_0 = \omega\right]\]

其中Option内部的更新使用内部策略 \(\pi_\omega\)

Option-Critic架构

Bacon et al. (2017) 提出了端到端学习Options的方法:

  • 同时学习内部策略 \(\pi_\omega\) 和终止条件 \(\beta_\omega\)
  • 使用策略梯度方法进行优化
  • 终止条件的梯度:
\[\frac{\partial Q_\Omega}{\partial \beta_\omega(s)} = -(Q_\omega(s, \omega) - V_\Omega(s))\]

当Option的价值高于平均价值时,终止概率降低。

MAXQ值分解

核心思想

Dietterich (2000) 提出将价值函数分解为子任务价值的层次结构:

\[Q^\pi(s, a) = V^\pi_a(s) + C^\pi(s, a)\]
  • \(V^\pi_a(s)\):执行子任务 \(a\) 的期望回报
  • \(C^\pi(s, a)\):完成子任务 \(a\) 后继续执行策略 \(\pi\) 的期望回报(完成函数)

层次分解

Root Task
├── Sub-task 1
│   ├── Primitive action a₁
│   └── Primitive action a₂
├── Sub-task 2
│   ├── Sub-sub-task 2.1
│   │   ├── Primitive action a₃
│   │   └── Primitive action a₄
│   └── Primitive action a₅
└── Sub-task 3
    └── Primitive action a₆

优势:允许子任务独立学习和复用。

Feudal Networks

Feudal RL

Dayan & Hinton (1993) 的原始想法,Vezhnevets et al. (2017) 提出了FeUdal Networks (FuN):

Manager(管理者)

  • 在低频率下运行
  • 设置子目标方向 \(g_t\)
  • 观察较长时间尺度的状态变化

Worker(执行者)

  • 在高频率下运行
  • 接收Manager设置的子目标
  • 执行原始动作以实现子目标

Manager的目标设置

\[g_t = f_{\text{Mspace}}(s_t)\]

Manager产生的目标是在学到的目标空间中的方向向量。

Worker的内在奖励

\[r^i_t = \frac{1}{c} \sum_{i=1}^{c} \cos(g_{t-i}, s_t - s_{t-i})\]

Worker因沿着Manager指定方向移动而获得奖励。

目标条件强化学习

Universal Value Function

Schaul et al. (2015) 提出通用价值函数,将目标作为额外输入:

\[V(s, g; \theta)\]

策略也以目标为条件:

\[\pi(a | s, g)\]

这使得单个网络可以处理多个目标。

Hindsight Experience Replay (HER)

Andrychowicz et al. (2017) 提出的里程碑式方法,解决目标条件RL中的稀疏奖励问题:

核心思想:失败的轨迹也包含有用信息——虽然没到达目标 \(g\),但到达了其他状态,可以把这些状态作为"假想目标"。

算法

  1. 采样轨迹 \(\tau = (s_0, a_0, s_1, \ldots, s_T)\),原始目标 \(g\)
  2. 对于轨迹中的每个转移 \((s_t, a_t, s_{t+1})\)
    • 存储原始经验 \((s_t, a_t, r_t, s_{t+1}, g)\)
    • 选择替代目标 \(g' = s_T\)(或其他策略选择的状态)
    • 重新计算奖励 \(r' = R(s_t, a_t, g')\)
    • 存储"事后"经验 \((s_t, a_t, r', s_{t+1}, g')\)

效果:将稀疏奖励转化为密集反馈,极大加速了目标条件RL的学习。

HIRO(Hierarchical RL with Off-policy Correction)

Nachum et al. (2018) 的两层分层方法:

高层策略:每 \(c\) 步选择子目标 \(g_t \in \mathcal{S}\)

低层策略:以当前状态和子目标为输入,输出动作

\[a_t = \pi_{\text{low}}(s_t, g_t)\]

低层奖励(内在):

\[r^{\text{low}}_t = -\|s_{t+1} - (s_t + g_t)\|\]

离策略修正:为高层重标注子目标,使离策略数据可用:

\[\tilde{g}_t = \arg\max_g \sum_{i=0}^{c-1} \log \pi_{\text{low}}(a_{t+i} | s_{t+i}, g_{t+i})\]

HAC(Hierarchical Actor-Critic)

Levy et al. (2019) 将HER扩展到多层分层结构:

  • 支持任意层数的层级
  • 每层都使用HER进行训练
  • 高层的动作空间是低层的目标空间

分层架构总览

graph TD
    A[分层RL方法] --> B[时间抽象]
    A --> C[目标条件]
    A --> D[技能发现]

    B --> B1[Options框架]
    B --> B2[Option-Critic]
    B --> B3[MAXQ]

    C --> C1[Universal Value Function]
    C --> C2[HER]
    C --> C3[HIRO]
    C --> C4[HAC]

    D --> D1[Feudal Networks]
    D --> D2[DIAYN]
    D --> D3[信息论方法]

    B1 --> E[半MDP<br/>SMDP]
    C2 --> F[稀疏奖励<br/>解决方案]

    style A fill:#f9f,stroke:#333
    style C fill:#bbf,stroke:#333
    style F fill:#bfb,stroke:#333

技能发现

无监督技能学习

自动发现有用的行为原语,无需人工定义子任务:

DIAYN (Diversity is All You Need)

\[\max_\pi I(s; z) - I(a; z | s)\]

最大化状态与技能编码之间的互信息,同时最小化动作对技能的依赖(鼓励通过状态而非动作来区分技能)。

技能组合

将发现的技能组合成复杂行为:

  • 顺序组合:依次执行多个技能
  • 并行组合:同时激活多个技能
  • 条件组合:根据状态选择技能

实践建议

场景 推荐方法
已知子任务结构 Options / MAXQ
稀疏目标达成 HER + DDPG/SAC
多层子目标 HAC
连续控制+子目标 HIRO
自动技能发现 DIAYN / Option-Critic

参考文献

  • Sutton, Precup & Singh, "Between MDPs and Semi-MDPs" (Artificial Intelligence 1999)
  • Dietterich, "Hierarchical Reinforcement Learning with the MAXQ Value Function Decomposition" (JAIR 2000)
  • Andrychowicz et al., "Hindsight Experience Replay" (NeurIPS 2017)
  • Vezhnevets et al., "FeUdal Networks for Hierarchical Reinforcement Learning" (ICML 2017)
  • Nachum et al., "Data-Efficient Hierarchical Reinforcement Learning" (NeurIPS 2018)
  • Levy et al., "Learning Multi-Level Hierarchies with Hindsight" (ICLR 2019)
  • Bacon et al., "The Option-Critic Architecture" (AAAI 2017)
  • Eysenbach et al., "Diversity is All You Need" (ICLR 2019)

评论 #