世界模型:从“预测下一个状态”到“可交互世界模拟器”

世界模型:从"预测下一个状态"到"可交互世界模拟器"

0. 一句话结论

世界模型(World Model)是智能体内部学习出来的环境模拟器。

它不是单纯的"图像生成模型",也不是普通的"大语言模型",而是一个用于回答下面问题的系统:

当前世界是什么状态?

如果我执行某个动作,世界接下来会怎么变化?

哪些结果有风险?

哪条未来路径更值得选择?

抽象成公式就是:

text 复制代码
state_t + action_t -> state_{t+1}, reward_t, risk_t, future_observation_t

更工程化地说:

text 复制代码
观察输入 observation
  -> 编码成内部状态 latent state
  -> 结合动作 action
  -> 预测未来状态 / 奖励 / 代价 / 画面 / 事件
  -> 支持规划器选择动作

1. 为什么需要世界模型?

1.1 只会"反应"的系统不够

没有世界模型的 AI 更像条件反射:

text 复制代码
看到红灯 -> 停
看到障碍物 -> 绕
看到测试失败 -> 改代码

它可以在当前输入上做判断,但不一定知道:

text 复制代码
如果我现在这么做,三步以后会发生什么?
这个动作是否会产生连锁影响?
有没有更安全的替代路径?

人类很多智能行为并不是简单反应,而是内部推演。

比如你端起一杯水时,脑子里会隐式知道:

text 复制代码
杯子倾斜太多 -> 水会洒
手松开 -> 杯子会掉
杯子撞到桌边 -> 可能破

这不是语言知识,而是对世界动力学的预测。

1.2 世界模型解决的是"后果预测"

世界模型的核心价值是:

text 复制代码
让智能体在行动前先模拟行动后果

所以它特别适合以下场景:

场景 为什么需要世界模型
机器人 预测动作导致的物体移动、碰撞、失败
自动驾驶 预测车辆、行人、道路环境的演化
游戏 AI 预测多个动作后的局面变化
强化学习 用内部模拟减少真实环境试错成本
视频生成 生成时间连续、物理一致的动态场景
Coding Agent 预测代码修改对调用链、构建、测试的影响
复杂 Agent 规划多步任务,避免工具副作用失控

2. 世界模型到底"模型"的是什么?

世界模型不是一定要完整建模整个宇宙。它只需要建模与任务相关的世界结构。

2.1 对机器人来说

世界包括:

text 复制代码
物体位置
物体形状
接触关系
摩擦
重力
关节状态
相机视角
动作导致的物理变化

机器人要知道:

text 复制代码
夹爪往下 -> 接近杯子
夹爪闭合 -> 可能抓住杯子
手臂移动太快 -> 可能碰倒旁边物体

2.2 对自动驾驶来说

世界包括:

text 复制代码
道路拓扑
车道线
交通灯
行人
车辆
速度
意图
遮挡区域
未来轨迹

自动驾驶要知道:

text 复制代码
前车刹车 -> 我车需要减速
行人靠近斑马线 -> 可能横穿
旁车变道 -> 当前车道风险上升

2.3 对代码智能体来说

"世界"不是物理世界,而是工程世界:

text 复制代码
代码仓库
调用链
依赖图
构建系统
测试系统
运行状态
配置文件
历史变更
工具执行副作用

Coding Agent 的世界模型应该能预测:

text 复制代码
修改接口 -> 哪些调用方会编译失败
改配置 -> 哪些服务启动失败
删除字段 -> 哪些序列化逻辑出问题
修一个 warning -> 是否引入更大行为变化

所以世界模型的本质不是"3D 世界",而是:

text 复制代码
任务相关环境的状态表示 + 动态变化规律 + 行动后果预测

3. 世界模型的基本架构

一个典型世界模型系统通常包含五个部分:

text 复制代码
感知编码器 -> 状态表示 -> 动力学模型 -> 价值/奖励模型 -> 规划器/策略

3.1 感知编码器:把复杂输入压缩成状态

真实输入可能很大:

text 复制代码
图像像素
视频帧
传感器点云
文本
代码文件
日志

模型通常先把它们压缩成 latent state:

text 复制代码
observation_t -> z_t

其中 z_t 是紧凑的内部状态表示。

早期 World Models 使用 VAE 把画面压缩成低维 latent vector;后续 PlaNet、Dreamer 使用 latent dynamics;近年的 V-JEPA、Genie、Cosmos 更强调视频、空间、动作、多模态表示。S1S2S3S6S7

3.2 状态表示:不是记录所有细节,而是记录有用结构

世界模型不需要预测每片树叶怎么晃。

好的状态表示应该保留:

text 复制代码
对象
位置
速度
关系
可行动作
任务相关变量
不确定性

丢掉:

text 复制代码
无关纹理
随机噪声
不可预测细节
对任务无意义的像素变化

这也是 JEPA 路线强调"在抽象表示空间预测,而不是逐像素重建"的原因。S6

3.3 动力学模型:预测状态如何变化

动力学模型是世界模型的核心:

text 复制代码
z_t, a_t -> z_{t+1}

意思是:

text 复制代码
当前内部状态 + 当前动作 -> 下一步内部状态

如果环境有随机性,模型还要输出分布,而不是单一结果:

text 复制代码
P(z_{t+1} | z_t, a_t)

这表示:

text 复制代码
在当前状态下执行动作 a,未来可能有多个结果,每个结果有不同概率

例如:

text 复制代码
机器人推杯子
  -> 杯子滑动
  -> 杯子倾倒
  -> 杯子没动

这些都可能发生,取决于摩擦、角度、力度、接触点。

3.4 奖励/价值模型:判断未来好不好

只预测未来还不够,还要判断未来是否符合目标:

text 复制代码
state -> value
state, action -> reward / cost

比如:

text 复制代码
机器人成功抓起杯子 -> 高奖励
撞倒水杯 -> 高代价
自动驾驶接近碰撞 -> 高风险
代码修改后测试通过 -> 正收益
代码修改导致接口破坏 -> 高风险

MuZero 的关键点就是:它不一定重建完整画面,而是学习对规划最有用的量:reward、policy、value。S4

3.5 规划器:在内部世界里"试走几步"

有了世界模型,就可以做内部 rollout:

text 复制代码
假设动作 A
  -> 预测未来 1
  -> 预测未来 2
  -> 评估收益

假设动作 B
  -> 预测未来 1
  -> 预测未来 2
  -> 评估收益

选择更好的动作

这就是"想象中的试错"。

对应到强化学习中:

text 复制代码
真实环境试错成本高
内部世界模型试错成本低

4. 经典论文路线

4.1 World Models:VAE + MDN-RNN + Controller

2018 年 Ha 和 Schmidhuber 的《World Models》是这个方向的标志性工作。S1

它把 agent 分成三部分:

text 复制代码
V: Vision Model
M: Memory Model
C: Controller

数据流是:

text 复制代码
环境图像 obs_t
  -> VAE 压缩成 z_t
  -> MDN-RNN 根据 z_t 和 action_t 预测未来
  -> Controller 根据 z_t 和 RNN hidden state 输出动作

结构可以简化成:

text 复制代码
obs_t -> VAE -> z_t
z_t, action_t, h_t -> RNN -> h_{t+1}, P(z_{t+1})
z_t, h_t -> Controller -> action_t

这个工作的关键思想:

text 复制代码
大模型负责理解和预测世界
小控制器负责决策

它甚至可以让 agent 在自己生成的"梦境环境"里训练,再迁移到真实环境。

这很重要,因为它提出了一个后续反复出现的范式:

text 复制代码
先学世界,再学控制

4.2 PlaNet:在 latent space 里规划

PlaNet 的全名是:

text 复制代码
Learning Latent Dynamics for Planning from Pixels

它解决的问题是:

text 复制代码
直接在像素空间预测未来太难
能不能先把像素压缩成 latent state,然后在 latent space 里规划?

PlaNet 的数据流:

text 复制代码
图像 obs_t
  -> 编码成 latent state
  -> 学习 latent dynamics
  -> 在 latent space 中进行多步 action search
  -> 选择最优动作

它强调:

text 复制代码
模型不一定要生成完美图像
只要 latent dynamics 对决策有用即可

这对后来的 Dreamer 系列影响很大。S2


4.3 Dreamer:在想象轨迹中训练策略

Dreamer 的关键思想是:

text 复制代码
不在真实环境里反复试错
而是在 learned world model 里生成 imagined trajectories
然后用这些 imagined trajectories 训练 actor-critic

流程:

text 复制代码
真实交互数据 -> 学 world model
world model -> 生成想象轨迹
想象轨迹 -> 训练 actor / critic
actor -> 回真实环境采样新数据
循环

简化伪代码:

text 复制代码
while training:
    collect real experience
    train world_model on real experience
    imagine future trajectories in latent space
    update actor and critic using imagined trajectories

Dreamer 的意义:

text 复制代码
把"世界模型"从辅助预测模块,变成策略学习的核心训练环境

DreamerV3 进一步展示了一个通用配置在大量任务上的稳定性,说明世界模型不仅是概念上优雅,也可以成为实际强化学习算法的基础。S3


4.4 MuZero:不预测画面,只预测对规划有用的量

MuZero 的厉害之处在于:

text 复制代码
它不需要知道游戏规则
也不需要重建完整环境
它只学习规划需要的核心信息

它学习三个东西:

text 复制代码
reward: 走这一步的即时收益
value: 当前状态长期价值
policy: 当前状态下动作先验

MuZero 结合了:

text 复制代码
learned model + tree search

数据流:

text 复制代码
真实观察 -> representation function -> hidden state
hidden state + action -> dynamics function -> next hidden state + reward
hidden state -> prediction function -> policy + value
MCTS 在 hidden state 上搜索

关键点:

text 复制代码
世界模型不一定要"像素级真实"
只要它能支持正确规划,就是有价值的世界模型

这给了一个重要判断标准:

世界模型的质量,不只看视频像不像真,而要看它能否提升决策质量。S4


4.5 Genie:从视频学习可交互环境

Genie 系列把世界模型推向"可交互世界生成"。

Genie 1 的特点:

text 复制代码
从无标签互联网视频中训练
不需要真实动作标签
学习 latent action
生成 action-controllable virtual worlds

它的组成:

text 复制代码
spatiotemporal video tokenizer
autoregressive dynamics model
latent action model

这很关键,因为传统强化学习世界模型通常需要:

text 复制代码
观察 obs
动作 action
奖励 reward

但互联网视频多数只有画面,没有动作标签。Genie 通过 latent action model 试图从视频中推断"动作空间"。S5

Genie 2/3 进一步强调:

text 复制代码
文本 prompt -> 生成可探索环境
用户动作 -> 环境实时响应
长期一致性 -> 场景不会立刻崩坏

Genie 3 官方描述里,世界模型被定义为可以模拟环境演化、预测环境如何变化以及动作如何影响环境的 AI 系统。S5


4.6 V-JEPA / V-JEPA 2:不生成像素,而是在表示空间预测

JEPA 的核心观点:

text 复制代码
像素级预测太浪费
高层语义预测更重要

比如一段树叶晃动的视频:

text 复制代码
逐像素预测每片叶子的运动 -> 难、噪声大、对任务帮助有限
预测"树在风中摇动"这种抽象表示 -> 更稳定、更有用

V-JEPA 使用视频自监督学习:

text 复制代码
遮住视频中的一大片时空区域
让模型根据上下文预测被遮住区域的抽象表示

不是预测 RGB 像素,而是预测 latent representation。

V-JEPA 2 进一步把大规模互联网视频和少量机器人轨迹结合起来,探索理解、预测和物理规划能力。S6

这一路线和生成式世界模型不同:

路线 目标
生成式世界模型 生成未来画面或可交互世界
JEPA 式世界模型 学到用于理解和规划的抽象表示
MuZero 式世界模型 学到直接服务规划的 reward/value/policy
Dreamer 式世界模型 在 latent imagination 中训练策略

4.7 Cosmos / Foundation World Model:物理 AI 的世界基础模型

NVIDIA Cosmos 把世界模型放在 Physical AI 语境下理解:

text 复制代码
Physical AI 需要先在数字世界训练
需要数字化的自己:policy model
也需要数字化的世界:world model

Cosmos 的目标是提供可以微调到机器人、自动驾驶等场景的 world foundation model。S7

这说明世界模型正在从"单任务强化学习模型"走向"基础模型平台":

text 复制代码
过去:为某个游戏或控制任务训练一个小 world model
现在:训练大规模视频/多模态 foundation world model,再适配具体物理任务

5. 世界模型的几种技术路线

5.1 按输出形式分类

类型 输出 优点 问题
像素生成式 未来图像/视频 直观,可视化强 成本高,容易关注无关细节
Latent dynamics latent state 高效,适合规划 可解释性较弱
Reward/value/policy 模型 规划相关变量 决策效率高 不一定能生成可视世界
3D/空间世界模型 3D 场景、可探索环境 适合机器人/AR/游戏 数据和一致性难
多模态世界模型 文本、图像、视频、动作、音频 接近通用 agent 训练和评估复杂

5.2 按训练数据分类

数据类型 代表方向 说明
交互数据 RL / robotics 有 obs-action-reward,适合学动力学
视频数据 Genie / V-JEPA / Cosmos 大规模、便宜,但动作标签缺失
模拟器数据 自动驾驶/机器人 可控、可标注,但 sim-to-real 难
文本数据 LLM world knowledge 有抽象知识,但缺少物理 grounding
多模态数据 foundation world model 趋势方向,但系统复杂

5.3 按是否服务决策分类

类别 目标 例子
Decision-coupled world model 直接服务动作选择 Dreamer、MuZero
General-purpose world model 生成或理解通用环境 Genie、Cosmos、World Labs、Runway GWM
Representation world model 学抽象表示供下游任务使用 V-JEPA
Simulation world model 提供虚拟环境训练 agent Genie、Cosmos、自动驾驶仿真

6. 世界模型和 LLM 的区别

6.1 LLM 主要预测 token

LLM 的基本训练目标是:

text 复制代码
前文 token -> 下一个 token

它擅长:

text 复制代码
语言理解
知识问答
代码生成
文本推理
工具调用规划

但它天然不擅长:

text 复制代码
连续物理状态建模
动作导致的真实环境变化
空间一致性
长期交互反馈
物理约束

当然,LLM 可以学到大量"世界知识",但这些知识多数是文本统计意义上的。

6.2 世界模型主要预测状态变化

世界模型的训练目标更接近:

text 复制代码
当前状态 + 动作 -> 未来状态

它擅长:

text 复制代码
物理预测
空间推理
动作后果模拟
多步规划
交互环境生成

6.3 两者不是互斥,而是互补

未来 agent 很可能是:

text 复制代码
LLM 负责语言、任务分解、工具选择、抽象推理
World Model 负责环境状态、后果预测、空间/物理/工程约束
Planner 负责搜索和决策
Memory 负责长期状态
Tool Runtime 负责真实执行

对于 Coding Agent,可以类比成:

text 复制代码
LLM:理解需求、写 patch、解释代码
世界模型:维护仓库状态、调用图、构建链路、测试影响面
规划器:决定先读哪些文件、改哪里、跑哪些测试
执行器:调用 grep/read/edit/build/test

7. 世界模型的核心难点

7.1 长期预测误差累积

一步预测可能准:

text 复制代码
s_t -> s_{t+1}

但连续滚动 100 步以后:

text 复制代码
s_t -> s_{t+1} -> ... -> s_{t+100}

小误差会不断放大。

这叫:

text 复制代码
compounding error

解决方向包括:

text 复制代码
更强的 latent state
不确定性建模
短视窗规划 + 实时校正
模型预测控制 MPC
训练时做 multi-step objective
引入真实反馈闭环

7.2 真实世界太复杂,无法完整预测

很多东西不可预测或没必要预测:

text 复制代码
树叶怎么抖
水面细小波纹
路人下一秒微动作
代码仓库里所有无关文件变化

所以好的世界模型不是"预测一切",而是:

text 复制代码
预测对任务有用的因果结构和约束

这也是为什么 latent space / abstract representation 很重要。


7.3 动作空间难学

如果训练数据包含动作标签:

text 复制代码
obs_t, action_t, obs_{t+1}

学习比较直接。

但互联网视频通常只有:

text 复制代码
frame_t, frame_{t+1}

没有告诉模型"谁做了什么动作"。

Genie 的 latent action model 就是在尝试解决这个问题:

text 复制代码
从视频变化中反推出潜在动作

这是从被动观察走向可交互世界模型的关键。


7.4 评估标准不统一

视频生成模型可以看:

text 复制代码
清晰度
帧率
美观
prompt adherence

但世界模型更应该看:

text 复制代码
物理一致性
动作可控性
长期记忆
因果一致性
任务成功率
对规划是否有帮助
sim-to-real 是否有效

如果只看画面好不好看,会误判世界模型能力。

一个视频很逼真,不代表它真的理解物理;一个 latent model 不能生成高清画面,也可能很适合决策。


7.5 Sim-to-Real 问题

机器人或自动驾驶在模拟世界训练后,回到真实世界可能失败。

原因:

text 复制代码
模拟器摩擦参数不准
光照不一样
传感器噪声不一样
真实物体形变复杂
长尾场景没有覆盖

解决方向:

text 复制代码
domain randomization
real-to-sim / sim-to-real transfer
真实数据微调
在线校正
安全约束
人类反馈

8. 世界模型与 Agent 的关系

一个强 agent 至少需要四个东西:

text 复制代码
1. 感知:知道当前发生了什么
2. 世界模型:知道如果行动会发生什么
3. 规划:选择行动路径
4. 执行:调用工具或控制身体

没有世界模型的 agent 会变成:

text 复制代码
计划看起来合理,但执行后果不可控

比如 coding agent 可能:

text 复制代码
为了修一个 bug 改了公共接口
没有预测到 20 个调用方会失败
没有预测到测试 fixture 会失效
没有预测到构建脚本依赖旧路径

引入工程世界模型后,agent 应该维护:

text 复制代码
文件依赖图
函数调用图
类型关系
构建目标
测试覆盖范围
历史 patch
工具执行结果
风险列表

然后在改代码前做内部推演:

text 复制代码
改 A 函数 -> 影响 B/C/D
改配置 X -> 影响部署 Y
跑测试 T -> 覆盖模块 M
如果失败 -> 最可能原因 R

这就是世界模型思想在软件工程 agent 中的落地。


9. 一个通用世界模型 Agent 架构

text 复制代码
┌──────────────────────────────┐
│          User Goal            │
└──────────────┬───────────────┘
               ↓
┌──────────────────────────────┐
│ LLM / Task Planner            │
│ - 解析目标                    │
│ - 分解任务                    │
│ - 选择工具                    │
└──────────────┬───────────────┘
               ↓
┌──────────────────────────────┐
│ World State Encoder           │
│ - 图像/文本/代码/日志编码      │
│ - 形成 latent state           │
└──────────────┬───────────────┘
               ↓
┌──────────────────────────────┐
│ World Dynamics Model          │
│ - state + action -> next state│
│ - 预测风险、变化、结果         │
└──────────────┬───────────────┘
               ↓
┌──────────────────────────────┐
│ Planner / Search              │
│ - rollout                     │
│ - tree search                 │
│ - MPC                         │
│ - uncertainty-aware planning  │
└──────────────┬───────────────┘
               ↓
┌──────────────────────────────┐
│ Executor                      │
│ - 真实执行动作                │
│ - 调用工具/机器人控制/改代码   │
└──────────────┬───────────────┘
               ↓
┌──────────────────────────────┐
│ Feedback                      │
│ - 更新世界状态                │
│ - 校正模型                    │
└──────────────────────────────┘

10. 世界模型的研究趋势

10.1 从小任务到 foundation world model

早期:

text 复制代码
一个游戏 / 一个控制任务 / 一个小环境

现在:

text 复制代码
大规模视频
多模态输入
通用物理场景
机器人/自动驾驶/创作平台复用

代表方向:

text 复制代码
Genie
Cosmos
V-JEPA
World Labs spatial intelligence
Runway General World Models

10.2 从像素预测到抽象预测

过去很多方法想预测未来画面。

现在越来越多研究认为:

text 复制代码
预测像素不是最终目的
预测对行动有用的抽象状态更重要

所以未来可能是混合结构:

text 复制代码
底层:生成可视世界
中层:对象、空间、动力学表示
高层:任务、因果、计划、价值

10.3 从被动视频学习到主动交互学习

只看视频能学到很多,但缺少关键东西:

text 复制代码
动作
意图
因果干预
失败反馈

真正的世界模型需要:

text 复制代码
看世界
动手试
观察后果
更新模型
继续规划

这也是机器人和 embodied AI 的关键。


10.4 从"好看"到"可控、可靠、安全"

未来世界模型的评估重点会从:

text 复制代码
视频是否逼真

转向:

text 复制代码
动作是否可控
物理是否一致
长期是否稳定
规划是否有效
失败是否可解释
部署是否安全

尤其在自动驾驶、机器人、医疗、工业控制里,世界模型不能只是"生成看起来合理的视频",而要满足安全约束。


11. 如何判断一个模型是不是世界模型?

不要看它名字里有没有 World Model,而看它是否具备这些能力:

判断项 问题
状态表示 是否维护环境状态?
动力学预测 是否能预测状态随时间变化?
动作条件 是否能回答"如果我做 A 会怎样"?
多步推演 是否能 rollout 多步未来?
不确定性 是否表达多个可能结果?
规划支持 是否能提升决策或控制质量?
交互闭环 是否能根据真实反馈更新?

如果一个模型只能生成漂亮视频,但不能稳定响应动作,不一定是强世界模型。

如果一个模型不能生成视频,但能显著提升规划和控制,也可能是优秀世界模型。


12. 给大学生的直觉总结

你可以把世界模型理解成三层:

第一层:脑内地图

text 复制代码
我知道当前世界是什么样

第二层:因果预测

text 复制代码
我知道如果做某件事,世界大概率会怎么变

第三层:行动规划

text 复制代码
我能在脑子里试几种方案,然后选一个更好的

所以:

text 复制代码
LLM 像一个会说话、会查资料、会写代码的大脑皮层
World Model 像一个能预测物理和环境后果的内部模拟器
Planner 像负责做选择的执行控制系统

真正强的 AI agent 需要三者结合。


13. 推荐阅读路线

入门路线

  1. 先看 Ha & Schmidhuber 的 World Models 交互式文章
  2. 再看 PlaNet,理解 latent dynamics
  3. 再看 Dreamer,理解 latent imagination 如何训练策略
  4. 再看 MuZero,理解"不重建世界也能服务规划"
  5. 再看 Genie,理解 foundation world model 和可交互环境
  6. 再看 V-JEPA,理解"抽象表示预测"路线
  7. 最后看 Cosmos / embodied AI survey,理解行业趋势

技术关键词

text 复制代码
model-based reinforcement learning
latent dynamics
state-space model
world model
imagination rollout
planning
MPC
tree search
self-supervised learning
video prediction
joint embedding predictive architecture
embodied AI
physical AI
sim-to-real
foundation world model

14. 最终总结

世界模型的核心不是"生成一个世界",而是:

text 复制代码
学习世界如何变化,并用这种预测能力指导行动

它的发展路径大概是:

text 复制代码
早期认知科学/强化学习思想
  -> RNN 世界模型
  -> VAE + MDN-RNN
  -> latent dynamics planning
  -> Dreamer imagination learning
  -> MuZero planning with learned model
  -> Genie/Cosmos/V-JEPA foundation world models
  -> embodied agent / robotics / autonomous driving / coding agent

一句最准确的理解:

世界模型是智能体内部的可学习环境动力学系统,它把观察压缩成状态,预测动作导致的未来变化,并把这种预测交给规划器和策略网络使用,从而让 AI 从"看到什么反应什么"升级为"先模拟后行动"。

相关推荐
叫我:松哥1 小时前
基于神经网络的汽车与自行车的分类算法设计与实现,采用ResNet50和迁移学习,准确率达到99%
人工智能·python·神经网络·机器学习·分类·汽车·迁移学习
五度易链-区域产业数字化管理平台1 小时前
从编制规范到落地应用,新版可研报告撰写全流程指南
大数据·人工智能
Yingjun Mo1 小时前
(一) 1. 大模型与智能体的区别
人工智能·chatgpt
Terrence Shen1 小时前
advice
人工智能·机器学习
우리帅杰1 小时前
【AI测试】Python AI大模型介绍
开发语言·人工智能·python·ai编程
碳基硅坊1 小时前
Obsidian:把 Markdown 笔记做成一套可维护的本地知识库
人工智能·obsidian
暗夜猎手-大魔王1 小时前
hermes源码学习6--工具运行时
人工智能
chengzi_beibei1 小时前
Anthropic 开源 Skills:Agent 工程化,开始从 Prompt 走向能力封装
人工智能
lauo1 小时前
ibbot手机青春版:AI时代真正的生产力革命——从联想小新Air 13看智能设备的分水岭
大数据·人工智能·智能手机