一句话定位

Director 在 dreamer-v2 的 RSSM 世界模型基础上加一层 manager-worker 层级:manager 每 K=8 步在一个离散化的隐目标空间里选一个 subgoal,goal autoencoder 把它解码成世界模型的 1024 维状态向量,worker 用 max-cosine 相似度追这个目标;manager 只需最大化任务奖励 + 一个基于 goal-autoencoder 重建误差的探索奖励,worker 完全不看任务奖励也能学会在多数任务上把 manager 的目标执行到位。全部四个组件(世界模型、goal autoencoder、manager、worker)用同一批想象轨迹端到端联合优化。论文主打两个从像素直接学、无先验语义目标空间的高稀疏奖励基准——四足机器人第一视角 3D 迷宫Visual Pin Pad——Director 是唯一在两者上都成功的方法;同时在 Atari、DeepMind Control、Crafter、DMLab 上验证不掉队。NeurIPS 2022。

背景与定位

层级强化学习(HRL)的长期难题是「谁来定义子任务/目标空间」:多数方法依赖人工指定的子任务(如 Minecraft 里手写奖励)或语义目标空间(导航任务里给全局 XY 坐标、机器人姿态),少数尝试直接从稀疏奖励学层级的方法(如 FuN, Vezhnevets et al. 2017)效果有限、且往往仍需把任务奖励喂给底层策略,才勉强跑通,这就削弱了引入高层控制器的意义。

Director 走的是「在学好的世界模型隐空间里做层级规划」这条路,直接建在 planet 开创、dreamer-v1dreamer-v2 定型的「RSSM + 隐空间想象 actor-critic」范式之上——世界模型的隐状态既是 manager/worker 共享的表征,也是目标空间本身,不需要额外定义语义目标。相比 HIRO(Nachum et al. 2018a,给机器人和目标的全局 XY 坐标 + 稠密 L2 奖励)与 NORL(Nachum et al. 2018b,用 5×5 降采样俯视图替代 XY 坐标,但仍用稠密 ground-truth 奖励训练 manager),Director 的定位是纯第一视角相机 + 本体感觉输入、只有触碰目标时的稀疏奖励、无俯视图/全局坐标这一更难的设定。论文强调两个关键设计:① 用离散 goal autoencoder 压缩连续隐状态、给 manager 一个好选的动作空间;② 用 max-cosine 相似度而非 L2 作为 worker 的目标奖励。实现直接复用 DreamerV2 公开代码库,在其之上加约 250 行代码。

模型架构

Director = 世界模型 + goal autoencoder + manager + worker 四件套,全部并发优化(Figure 2)。

世界模型(沿用 planet 的 RSSM,记法与 DreamerV2 一致):representation model reprθ(sₜ|sₜ₋₁,aₜ₋₁,xₜ)、dynamics model dynθ(sₜ|sₜ₋₁,aₜ₋₁)、decoder recθ(sₜ)≈xₜ、reward predictor rewθ(sₜ₊₁)≈rₜ,四网络联合优化,目标是标准变分 ELBO(β 加权 KL + 重建 + 奖励似然)。世界模型状态 sₜ 是 1024 维连续向量

goal autoencoder(把连续状态压成离散码):encoder encφ(z|sₜ)、decoder decφ(z)≈sₜ。直接选 1024 维连续向量做目标对 manager 太难(等价于一个高维连续控制问题),因此用 DreamerV2 的 vector-of-categoricals 方案:encoder 输出一个 8×8 logits 矩阵L=8 个类别变量、每个 C=8 类),每行采样一个 one-hot、flatten 成 64 维稀疏向量(8 位为 1、其余为 0),采样经 straight-through 估计器(Bengio et al. 2013)反传梯度。训练目标(Eq.4)= MSE 重建损失 + β·KL(encφ(z|sₜ) ‖ 均匀先验),β=1.0;只对 goal autoencoder 自己的参数更新,不给世界模型传梯度。

manager 策略 mgrψ(z|sₜ):每 K=8 个环境步选一次新目标,输出与 goal encoder 同构的类别分布向量,在 goal autoencoder 的离散码空间里动作(而非直接选连续隐状态);选出的码经 goal decoder 解码为世界模型状态空间里的目标 g=dec(z) 再传给 worker。manager 最大化任务奖励 + 探索奖励的折扣和:探索奖励 rᵗᵉˣᵖˡ = ‖decφ(z)−sₜ₊₁‖²(z~encφ(z|sₜ₊₁),即目标解码后的重建误差,反映该状态对当前 goal-autoencoder 有多「新颖」),任务/探索两路 return 各自归一化(指数滑动标准差、衰减率 0.999)后按权重 wₑₓₜᵣ=1.0、wₑₓₚₗ=0.1 相加;用两个独立 state-value critic 分别估计任务/探索回报。想象轨迹按 K 步做时间抽象(每 K 步取一个状态、K 步内奖励求和)来更新 manager,因是 on-policy 想象、无需重要性采样修正。

worker 策略 wkrξ(aₜ|sₜ,g):输入当前状态与(每 K 步才变一次的)目标 g,输出原始动作。奖励用作者提出的 max-cosine 相似度(Eq.8):rᵗᵍᵒᵃˡ = (g/m)ᵀ(sₜ₊₁/m),m=max(‖g‖,‖sₜ₊₁‖)——只对状态向量按「g 和 s 中更大的那个模长」归一化(而非各自独立归一化),避免 worker 为了「更容易够到任意方向的目标」而退化到原点附近。worker 最大化这个 goal 奖励(不给任务奖励,标准变体),用带 goal-conditioned state critic 的想象轨迹训练;想象轨迹按 K 步切成独立片段,片段内 goal 恒定,critic 估计片段外的 goal 回报以支持够到远处目标。论文也报告了「worker 额外拿到 1.0·goal + 0.5·task 权重的任务奖励」的变体,用来补足 manager 过于粗粒度时的低层细节。

worker/manager 均用 Dreamer 的 actor-critic(λ-return,Eq.11/12)优化,两者共享同一批世界模型想象出的轨迹。

关键配置数字(Table F.1,跨全部任务、全部 domain 统一):并行环境数 4;训练频率每 16 个 policy step 一次梯度更新;MLP 4 层×512 单元,LayerNorm+ELU;想象 horizon H=16;折扣 γ=0.99;目标持续时间 K=8;goal autoencoder L=8 latents、C=8 classes、β=1.0;学习率 1e-4;weight decay 1e-2;Adam epsilon 1e-6。世界模型与策略优化的其余超参直接沿用 DreamerV2 默认值、未改动。

数据

Director 是纯在线 RL(无离线数据集/预训练语料),「数据」即 agent 与环境交互产生、写入 replay buffer 的经验序列,世界模型从中重建监督信号;论文未单独披露 Director 的 replay buffer 容量与 batch 采样规格(沿用 DreamerV2 默认,未在文中重新给出具体数字,故此处标未披露)。评测覆盖的环境与规模:

  • Egocentric Ant Mazes(S/M/L/XL 四种尺寸):四足机器人经关节力矩控制,输入仅第一视角 64×64×3 相机 + 本体感觉,无全局 XY 坐标/俯视图;控制频率 50Hz,episode 时限 3000 步,无提前终止(避免任务信息泄漏);仅在触碰固定目标区域的时间步给稀疏奖励;不同墙壁着色以辅助自定位。5 个随机种子,训练至约 9M 步。
  • Visual Pin Pad(Three/Four/Five/Six 四种难度):agent 控制黑方块四向移动,需按正确顺序踩踏不同颜色的 pad;成功给一次性稀疏奖励 10 分并随机重置位置;episode 时限 2000 步,屏幕底部显示已激活 pad 历史(去除长期记忆这一正交挑战)。5 个种子,训练至 6M 步。
  • 标准基准(验证泛化而非稀疏奖励能力):Atari 55 个游戏(Bellemare et al. 2013);DeepMind Control Suite 视觉版 20 个任务(Tassa et al. 2018);Crafter(Hafner 2021);DMLab(Beattie et al. 2016)。这批标准基准实验统一不用 action repeat、每 16 个环境步训练一次,换来更快的 wall-clock 时间,但样本效率低于 Hafner et al. (2019) 报告的结果(论文原话,Figure J.1/K.1 caption)。

sim-vs-real:全部环境均为仿真(MuJoCo 四足/Atari 模拟器/DMLab/Crafter),无真实机器人部署。动作标注:无人工动作标签,动作由 agent 自身策略在线产生,world model 从图像+动作+奖励序列端到端学表征,无需额外的动作/目标标注。

训练方法

整体循环:世界模型从 replay buffer 训练;goal autoencoder 在世界模型表征上训练;manager/worker 从世界模型想象出的轨迹训练;四者按固定环境步间隔(train_every)交替做一次梯度更新,贯穿整个训练过程(Algorithm 1,附录 E 伪代码)。

多阶段但并发:不是「先训世界模型再训策略」的两段式,而是四个组件从训练一开始就同时更新——世界模型持续改进隐空间质量,goal autoencoder 持续追踪当前状态分布做离散化,manager/worker 在最新想象轨迹上持续更新。

目标函数拆分:worker 的 goal 奖励使用 max-cosine 相似度(Eq.8);manager 的探索奖励使用 goal-autoencoder 重建误差(Eq.6,随训练进程自动衰减——agent 越熟悉的状态其自编码器重建误差越低);两者都用 Dreamer 的 λ-return actor-critic(Eq.11/12)学习,critic 做基线方差缩减,policy entropy 项防止过早收敛。

关键设计验证(附录消融)

  • 去掉 goal autoencoder(manager 直接选 1024 维连续目标):在部分任务(Breakout、Acrobot、Crafter、Reacher、Walker)效果出人意料地好,但在稀疏奖励更极端的任务(Ant Maze L、DMLab Goals Small、Humanoid Walk)失败——作者认为是控制问题对 manager 而言变得太难。
  • 目标奖励函数对比(CosineMax vs Inner vs InnerNormed vs L2Norm):三种基于内积的奖励(含默认 CosineMax)表现相近且都不错;L2Norm 明显更差——作者假设内积类奖励允许目标把不相关维度置零、worker 可以忽略,而 L2 奖励即使目标维度为零也仍强迫 worker 关心该维度。
  • 探索奖励施加位置(仅 manager / 仅 worker / 两者都给 / 都不给):仅在 manager 层给探索奖励(即默认配置)对 Ant Maze 的成功是必需的;额外在 worker 层加探索奖励反而有害(导致腿部动作过于混乱、机器人容易翻倒);在短时程的标准基准上探索奖励则不是必须的。

worker 是否给任务奖励:标准变体 worker 只学 goal 奖励(1.0);对照变体额外加任务奖励(0.5 权重)。结果是后者在标准基准上完全追平甚至超过 DreamerV2 的表现,说明纯 goal-conditioned worker 已经能在大多数任务上把 manager 的意图执行到位,给任务奖励主要是查缺补漏。

Infra(训练 / 推理工程)

  • 训练硬件:单个训练 run 用 单张 V100 GPU,开启 XLA + 混合精度<24 小时完成。
  • 相对 DreamerV2 的额外开销:在 DreamerV2 代码库上实现 Director 约新增 250 行代码;计算时间比 DreamerV2 多 20%
  • 为压缩 wall-clock 时间做的取舍:把并行环境实例数从 DreamerV2 默认值增至 4、训练频率改为每 16 个 policy step 一次梯度更新,这大幅降低了实验的 wall-clock 时间,但代价是样本效率有轻微下降。
  • 环境控制频率:Ant Maze 基准为 50Hz
  • 推理 FPS / 部署延迟 / 边缘硬件:论文未披露(本工作是学术仿真基准评测,未涉及真实机器人或边缘部署)。

评测 benchmark

Egocentric Ant Maze(Figure 4,四种尺寸,5 seeds,~9M 步):flat Dreamer 仅在最小的 S 迷宫上成功;flat Plan2Explore(Sekar et al. 2020,ensemble disagreement 探索)在 S 迷宫上有一定初期进展但收敛不到最优,检查轨迹发现是因为它选择的探索动作过于混乱、导致机器人频繁翻倒;两个 baseline 在更大的 M/L/XL 迷宫上均完全学不出成功策略。Director 在全部四个难度上都学到可靠到达目标区域的策略,迷宫越大收敛越慢。

Visual Pin Pad(Figure 5,四种难度,5 seeds,训练至 6M 步):三 pad(最简单,只需决定顺时针/逆时针)flat Dreamer 有时能发现正确顺序;Plan2Explore 的探索奖励带来明显提升。四 pad 时 Plan2Explore 仍有一定效果,五 pad 时明显吃力,六 pad 时完全失败;flat Dreamer 在更难的环境里都学不到正确顺序。Director 在全部四个难度都学出正确顺序。

标准基准(Atari 55 + Control Suite 20 + Crafter + DMLab,Appendix A/J/K):worker 仅学 goal 奖励的标准 Director 变体已能在这些环境里广泛成功学习——论文强调这是首次在文献中展示纯 task-agnostic worker 能在这么多环境上可靠工作的层级方法;额外给 worker 任务奖励(1.0 goal + 0.5 task)后,性能完全追平 state-of-the-art 的 DreamerV2(flat baseline),并且在 55 个 Atari 游戏上的 human-normalized median score(gamer median)超过 DreamerV2(Figure K.1)。20 个 DeepMind Control 视觉任务上同样表现出与 DreamerV2 相当或更优(部分任务超出,Figure J.1;这批实验用无 action repeat + 每 16 步训练一次,因此 wall-clock 更快但样本效率低于 Hafner et al. 2019 报告的结果)。

目标可解释性(Section 3.3,定性):DMLab 中 manager 把目标定向到「拾取奖励物体后触发的传送动画」;Crafter 中 manager 先通过物品栏显示要求囤积木材/石头并合成镐/剑,再指向洞穴找石头,天黑后指向躲避怪物的洞穴/小岛;Walker Walk 中 manager 用「前倾姿态 + 移动地面纹理」这种抽象目标让 worker 自己填充关节细节(该任务本身时程短,worker 不需要细粒度子目标)。

创新点与影响

贡献:① 提出 Director——一套可在 DreamerV2 代码库上以约 250 行代码实现、无需任务专属超参调整的实用层级 RL 算法;② 识别出两个关键设计——**离散化目标空间(goal autoencoder)**与 max-cosine 目标奖励——并逐一消融验证其必要性;③ 引入两个从像素直接学、无特权信息(全局坐标/俯视图)的稀疏奖励基准(egocentric Ant Maze、Visual Pin Pad),比此前 HIRO/NORL 的设定更贴近真实部署约束;④ 证明 worker 即使完全不接触任务奖励,仅靠目标相似度奖励也能在 Atari/Control Suite/Crafter/DMLab 这类传统基准上广泛成功,且额外给任务奖励后能追平/超过同期最强 flat model-based agent(DreamerV2);⑤ 因为目标本身就是世界模型可解码的隐向量,manager 的决策可以直接可视化成图像,为层级 agent 提供了事后可审计的可解释性。

影响:是较早证明「在学到的世界模型隐空间里做层级规划」可以从纯像素、无特权信息端到端奏效的工作,把 feudal/goal-conditioned HRL 与 Dreamer 系列的隐空间想象范式直接接了起来;论文明确将其定位为对 dreamer-v2 代码库的增量扩展,后续世界模型 RL 工作在讨论「如何给 agent 引入时间抽象/子目标」时普遍以 Director 的 manager-worker 设计作为参照。

作者自述局限(Section 5):manager 把自己的动作空间当黑箱,不知道这些动作对应真实状态——可以考虑让 manager 偏好在其学到的 critic 下高价值的目标;目标切换固定为每 K 步一次,缺乏根据任务需要自适应切换时机的机制(如用分类器判断或目标已达成再切换);目标是隐空间里的一个点,而非带 mask 的分布式目标(无法只指定状态里当前相关的那部分维度);未学习时间抽象的动力学模型,导致要学两层以上的层级就需要指数级更长的想象 batch;除了附录里的消融,尚未系统性地解释 Director 为什么有效,留作未来工作。

原始链接

一手源存档(sources/)

  • director—project — 项目主页文本快照(含 abstract、逐环境策略解读、goal-autoencoder 消融视频说明)
  • director—github-readme — GitHub README 快照
  • arXiv 原文 PDF(2206.04114,arXiv 原文 PDF,不入 git)——见上方 arXiv 链接