一句话定位

PlayGen(论文标题 Playable Game Generation,仓库名 PGG)是腾讯提出的轻量级神经游戏引擎:VAE + DiT 骨干的动作条件隐空间扩散模型,用”diffusion forcing”式 RNN-like 自回归结构维持长期记忆,在消费级 NVIDIA RTX 2060 上对 Super Mario Bros 与 Doom 均达到 20 FPS 实时可玩,并首次提出基于动作识别的可玩性量化评测方法(ActAcc / ProbDiff),证明模型在 1000 帧以上的长程游玩中交互机制准确率仅衰减极小(Mario ActAcc 从 0.803 降到 0.789,Doom 从 0.858 降到 0.822)。

背景与定位

PlayGen 属于神经游戏引擎 / 交互式世界模拟这一范式,紧随 2024 年下半年集中出现的一批工作:Genie(Bruce et al., 2024,图像转可玩视频但仅支持 32 帧、动作缺乏实际意义)、MarioVGG(Virtuals Protocol, 2024,预训练视频生成模型 + 文本动作模拟 Mario,RTX 4090 上生成 6 帧需 4 秒,无实时能力)、GameNGen(Valevski et al., 2024,单 TPU 20 FPS 模拟 Doom,但因数据探索/记忆有限,长程游玩会出现明显幻觉)、Oasis(Decart 2024,与本文同期,H100 上 20 FPS 模拟 Minecraft)。

论文的核心论点:这些前作要么不具备实时交互能力,要么无法准确模拟交互机制——都称不上真正”可玩”(playable)。PlayGen 把”可玩性”显式定义为三个维度:实时交互、足够的视觉质量、准确的交互机制模拟,并主张交互机制的准确模拟是三者中最难、最未被解决的一环。为此论文从数据视角(多样数据采集 + 均衡数据采样 + 自监督长尾迁移学习)为主、模型架构为辅去解决问题,同时首次提出可玩性的自动化量化评测方法,填补此前工作依赖人工评测的空白。骨干扩散结构复用了 Diffusion Forcing(Chen et al., 2024)的”next-token prediction 遇上 full-sequence diffusion”思路,把它套进 RNN-like 自回归隐空间扩散架构以获得理论上无限长的记忆。

模型架构

两阶段级联:VAE 做压缩,DiT-based 隐空间扩散模型(LDM)做动作条件的转移建模 P(x_{t+1}|x_t,a_t)。

VAE(表征压缩)

  • 编码器把游戏观测帧 o_t 压成隐向量 x_t;因游戏背景在一个 sample 内通常不变或变化很小,隐空间可以用更低维度、更紧凑地存储信息、忽略背景冗余。
  • 超参:参数量 55M,通道数 128,channel multiplier [1,2,4],ResNet block 数 2,latent shape 4×32×32,KL loss 权重 1e-6,感知损失权重 1,batch size 32,学习率 4.5e-6。
  • 训练目标:重建损失 + LPIPS 感知损失 + KL 惩罚 的加权和。

LDM / DiT backbone(自回归隐空间扩散)

  • 因很多游戏并非严格 MDP——下一隐向量 x_{t+1} 不仅依赖当前 x_t、a_t,还依赖全部历史 x_{1:t-1}、a_{1:t-1}(“memory”)——若直接拼接历史会导致记忆长度爆炸。
  • 解法:采用 RNN-like 自回归结构(借鉴 Diffusion Forcing),学一个隐藏状态 z_t 概括当前隐向量与全部过去记忆的影响;将 z_t 与加噪的下一帧隐向量 x_{t+1}^{k_{t+1}} 拼接作为 DiT 的输入,动作嵌入 a_t 与噪声等级嵌入 k_{t+1} 拼接后作为 cross-attention 条件,backbone 由 N 个 DiT block 组成,输出下一隐藏状态 z_{t+1} ~ p_θ(z_{t+1}|z_t, x_{t+1}^{k_{t+1}}, a_t, k_{t+1})。
  • 再用一个 CNN p_φ(x_{t+1}^0|z_{t+1}) 从隐藏状态解出去噪后的隐向量(即预测的 x_{t+1})。
  • LDM 超参:参数量 131M,z-shape 32×32×32,扩散步数 1000,噪声调度 sigmoid,序列长度 36,DiT depth 12 / hidden size 384 / patch size 2 / num heads 6,时间嵌入维度 192,动作嵌入维度 192,batch size 8,学习率 1e-4,训练目标为 velocity parameterization(Salimans & Ho, 2022)。
  • 推理:DDIM 采样,仅 4 步即可在 RTX 2060 上双游戏均达 20 FPS。

数据

两阶段数据流水线:多样数据采集 → 均衡数据采样,外加训练阶段的自监督长尾迁移学习来补齐稀有转移。

多样数据采集(Algorithm 1)

  • 随机智能体 A_r + 可选的其他智能体 A_o(游戏引擎自带或 RL 训练的智能体)混合交互:每个 episode 随机采样一个概率 p∈[0,1],每步以概率 p 走随机动作、以 1−p 走其他智能体的决策;随机动作会重复执行 1 次或多次以使数据更”像人类”。记录渲染帧 o_t、动作 a_t、及游戏内附加信息 e_t(如角色位置)。每 T=200 个时间步组成一个 sample。
  • Super Mario Bros:基于 Mario-AI-Framework 采集,共 236M 帧;每个 sample 开局角色随机出生在地图上任意位置、随机状态(small/large/fire)以提升覆盖率;死亡或过关后以小马里奥状态重生于关卡起点。
  • Doom:基于 ViZDoom 采集,共 900M 帧;每个 sample 开局角色随机出生位置;每个 episode(从开局到死亡/胜利)额外随机选一个”偏好动作”,该动作在本 episode 内被选中的概率更高。

均衡数据采样(Algorithm 2,聚类 + 非负最小二乘)

  • 覆盖面广但天然分布不均(如马里奥卡在高水管处会堆积大量重复数据)。做法:基于 e_t 算出转移特征向量,聚类为 k 个簇(簇中心 c_1..c_k),构造线性方程 b_1c_1+…+b_kc_k=y(y 为目标均衡特征),用非负最小二乘求近似非负整数解 {b_i},再从每个簇采 b_i 个样本,得到均衡数据集。
  • Super Mario Bros:从 236M 帧中采样出 50M 均衡转移用于训练;Doom:从 900M 帧中采样出 200M
  • VAM(评测用的 Valid Action Model)训练集同样使用这份均衡数据集,避免评测器本身有偏。

分辨率与上下文:训练/测试所有帧统一为 128×128;推理只把首帧和后续动作序列作为上下文条件输入。

sim-only:两款游戏数据均来自游戏引擎内智能体自玩(Mario-AI-Framework / ViZDoom),不含真实世界视频,无 sim-to-real 环节。

训练方法

  1. VAE 训练:冻结前先单独训练,损失 = 重建 + LPIPS 感知 + KL 惩罚加权和。
  2. LDM 训练:冻结 VAE,用 velocity parameterization 训练 DiT-based LDM 学 P(x_{t+1}|x_t,a_t)(实际以 z_t 为记忆载体)。
  3. 自监督长尾迁移学习(Algorithm 3):即便数据已多样采集+均衡采样,模型仍会在稀有转移上欠拟合(如吃到火花后马里奥不会变火焰形态,因为该转移占比极低、是长尾问题)。借鉴 RL 中的 Prioritized Experience Replay,用一个容量 N_q 的优先队列维护训练中 loss 最高的 top-N_q 样本;每步以概率 p_t(与最近 M 步滑动平均 loss 负相关)从队列采样、以 1−p_t 从均衡数据集采样进行训练,并按 loss 值动态更新队列内容。
  4. 推理:DDIM 采样,仅需 4 步去噪即可满足实时性(20 FPS),相比 20 步以上几乎不损失可玩性指标。

Infra(训练 / 推理工程)

  • 训练硬件(GPU 型号/数量、GPU-hours):论文正文与附录均未披露,只给出 VAE(batch 32)与 LDM(batch 8)的训练超参,无并行策略、无精度(FP16/BF16 等)说明。未披露。
  • 推理硬件:单卡 NVIDIA RTX 2060(消费级)。
  • 推理速度 vs. 去噪步数(Table 2,Mario 与 Doom 分列):4 步 → 20 FPS;8 步 → 10 FPS;16 步 → 5 FPS(两款游戏 FPS 数值相同)。摘要原话:“设置去噪采样步数为 4 可令交互速度近乎翻倍,视觉质量仅有 1.4%~1.8% 的小幅下降,交互机制准确率的下降幅度可忽略(0.2%)“。原始 Table 2 数值:Mario 4/8/16 步下 ActAcc 分别为 0.791/0.801/0.808,Doom 为 0.834/0.858/0.857;LPIPS Mario 为 0.064/0.062/0.060,Doom 为 0.289/0.285/0.282。

评测 benchmark

论文自建 600 条 ground-truth 轨迹(覆盖多数游戏场景)作为测试集,评测预测长度 1/16/32/64/128/1024 帧下的视觉质量与交互机制准确率;可玩性阈值定义为 LPIPS<0.2、PSNR>20、FID<85、FVD<300、ActAcc>0.75、ProbDiff<0.1

视觉质量(Table 1)

  • Super Mario Bros:预测长度 1 帧时 PSNR 33.81 / LPIPS 0.022 / FID 15.24;长度 128 帧时 PSNR 22.59 / LPIPS 0.122 / FID 12.85 / FVD 123.49;长度 1024 帧时 PSNR 18.19 / LPIPS 0.222 / FID 50.91 / FVD 173.06。
  • Doom:预测长度 1 帧 PSNR 23.81 / LPIPS 0.165 / FID 76.48;长度 1024 帧 PSNR 17.25 / LPIPS 0.472 / FID 136.40 / FVD 2176.94(Doom 的 LPIPS/FID 在长预测长度下已超出”足够质量”阈值,论文明确指出这一点)。
  • 预测长度小于 128 时,Mario 在 LPIPS/PSNR/FID/FVD 四项、Doom 在 PSNR/FID 两项达到”足够视觉质量”阈值。

交互机制准确率——ActAcc / ProbDiff(Table 1,VAM 只能评估 >17 帧的序列)

  • ActAcc 定义:训练一个 Valid Action Model(VAM,架构参考 VPT + 时空 Transformer)从相邻帧识别出的动作与真实执行动作的一致率;ProbDiff 定义:VAM 输出的预测动作概率与真值动作概率之差(用于修正”动作对后续帧无影响”场景下 ActAcc 会被误导的问题,如马里奥腾空时”左跳”与”左移”效果相同)。
  • Super Mario Bros:预测长度 32 帧时 ActAcc 0.803 / ProbDiff 0.056;1024 帧时 ActAcc 0.789 / ProbDiff 0.065(衰减 <0.014/0.009)。
  • Doom:32 帧时 ActAcc 0.858 / ProbDiff 0.019;1024 帧时 ActAcc 0.822 / ProbDiff 0.028(衰减 <0.036/0.009)。论文强调这一衰减幅度”极小”,证明长程游玩下交互机制仍保持准确。

均衡数据采样的量化增益(Table 3,对照原始数据 vs 均衡采样数据训练的模型)

  • Super Mario Bros:236M 原始 vs 50M 均衡——LPIPS 0.081→0.062,PSNR 23.89→26.18,FID 10.01→6.12,FVD 195.59→105.44,ActAcc 0.793→0.801,ProbDiff 0.062→0.059;论文汇总为”提升 1%~46.1%”。
  • Doom:900M 原始 vs 200M 均衡——LPIPS 0.457→0.285,PSNR 17.45→20.41,FID 107.53→58.75,FVD 1470.17→622.51,ActAcc 0.842→0.858,ProbDiff 0.024→0.019;论文汇总为”提升 1.9%~57.7%”。

基线对比:论文未与 GameNGen / Genie / Oasis 做同任务定量指标对比(这些前作均未提供交互机制准确率的量化评测方法),仅在相关工作部分做定性比较(数据覆盖/均衡性、实时性、硬件门槛)。

创新点与影响

核心贡献

  1. 可玩性工作流:从数据生成、模型训练到评测的完整 pipeline,实现同时满足实时交互、足够视觉质量、准确交互机制的”可玩”游戏生成,在比 GameNGen(TPU)、Oasis(H100)更弱的消费级 RTX 2060 上做到 20 FPS。
  2. 首个可玩性自动化评测方法:提出 ActAcc / ProbDiff 两个互补的动作感知指标,填补此前工作依赖人工评测交互机制准确性的空白。
  3. 数据侧三件套解决交互机制欠拟合:多样数据采集(保证转移覆盖)+ 聚类采样均衡分布(解决类别失衡)+ 自监督长尾迁移学习(借鉴 PER,解决均衡之后仍存在的稀有转移欠拟合),并用消融/案例逐步展示三者各自贡献(如吃蘑菇变大、向左跳跃距离等具体案例)。
  4. 1000+ 帧长程验证:交互机制准确率在 1024 帧后相比 32 帧仅衰减 ActAcc<0.036、ProbDiff<0.009,验证了 RNN-like 自回归架构对长程游玩的记忆能力。

论文自陈局限

  • RNN-like 结构理论上记忆无限,但实践中长记忆会变得不精确、导致幻觉:如 Doom 中两条相似路径分别通往不同房间,选择第一条路径有时会错误地进入第二个房间——区分相似历史信息本身很难。
  • 缺少量化消融:论文只用具体案例定性展示三个组件(多样采集/均衡采样/长尾学习)如何逐步提升可玩性,未给出对应的量化消融实验(列为 future work)。
  • 验证游戏偏简单:Super Mario Bros 与 Doom 视觉质量相对较低、交互机制相对简单,尚未验证在更复杂、更高分辨率(如 AAA 级)游戏上的效果。
  • 当前不支持 prompt 定制生成(作者计划扩展模型结构 + 构建 prompt 数据集以支持)。
  • 仓库当前(2026-07-16 抓取时)只开源了 Mario 的推理模块与权重、本地/在线 demo;Doom 权重与训练模块/数据集仍未发布(README TODO 未勾选)。

原始链接

一手源存档(sources/)