FIRM-WM: State-factorized factual-interventional recurrent modeling for reward-free visual planning
Organizations: Saint Petersburg State University, Saint Petersburg, Russia · Shenzhen Kaihong Digital Industry Development Co., Ltd., Shenzhen, China · Chinese Academy of Sciences (CAS) – Shenzhen Institute of Advanced Technology · Harbin Institute of Technology, Harbin, China ·
Abstract
Reward-free latent world models can learn from offline videos and solve new image--goal tasks by optimizing actions through predicted latent futures. This setting places two demands on the planning state: its coordinates must be comparable with a goal image. Moreover, its dynamics must retain velocity, motion trend, contact, and other history--dependent information beyond those goal coordinates. Offline training creates a second mismatch: each recorded trajectory reveals one factual future, whereas a sampling--based planner compares many actions that were not taken from the same state. We introduce FIRM-WM (Factual--Interventional Recurrent World Model), a compact pixel world model designed around these two gaps. Its recurrent state separates a typed, goal--comparable configuration from a 128-dimensional dynamic fiber used for prediction but excluded from the terminal goal cost. Broad factual trajectories provide state coverage, while common--reset intervention branches provide observed outcomes for alternative action sequences. Before executing each branch, we reset the environment and restore the same recorded values exposed by the environment's state--setting interface. Under matched CEM planning and three independent full-pipeline seeds, FIRM-WM reaches 99.01.0% on TwoRoom, 92.72.1% on Reacher, and 88.03.0% on OGBench-Cube, compared with 89.0%, 88.0%, and 70.0% for LeWM. The deployed model uses 2.98--3.42M parameters and records 2.13--11.60 lower planning time on these tasks.
Figures & tables
| Method | Pixel deployment | Reward-free WM | Common-reset branches | Planning | Active parameters |
|---|---|---|---|---|---|
| RC-aux ( Li et al., 2026 ) | ✓ | ✓ | – | reachability-aware CEM | 15.7 M † |
| SAGE ( Cheng et al., 2026 ) | ✓ | ✓ | – | subgoal prior + CEM | 49.3 M † |
| LeWM ( Maes et al., 2026 ) | ✓ | ✓ | – | CEM | 15 M |
| Fast-LeWM ( Gao and Xu, 2026 ) | ✓ | ✓ | – | CEM | 18 M |
| PSG-JEPA ( Yan et al., 2026 ) | ✓ | ✓ | – | CEM / policy | NR |
| PhyLatent ( Zeng et al., 2026 ) | ✓ | ✓ | – | CEM | LeWM backbone |
| Method | TwoRoom | Reacher | Push-T | OGBench-Cube |
|---|---|---|---|---|
| PLDM ( Sobal et al., 2025 ) | 97.00 | 78.00 | 78.00 | 65.00 |
| DINO-WM ( Zhou et al., 2025 ) | 100.00 | 79.00 | 74.00 | 86.00 |
| LeWM ( Maes et al., 2026 ) | ||||
| Sub-JEPA ( Zhao et al., 2026 ) | ||||
| FIRM-WM (ours) | 99.0 1.0 | 92.7 2.1 | 75.7 4.7 | 88.0 3.0 |
| Environment | FIRM active | FIRM sec./ep. | LeWM sec./ep. | Speedup | Matched CEM budget |
| TwoRoom | 3.41M | 3.224 | 7.83 | 300 / 30 it. / top-30 / | |
| Reacher | 3.16M | 5.550 | 11.60 | 300 / 30 it. / top-30 / | |
| Push-T | 2.98M | 3.926 | 2.13 | 300 / 30 it. / top-30 / | |
| OGBench-Cube | 3.42M | 2.389 | 3.84 | 300 / 10 it. / top-30 / | |
| LeWM reported model size | 15M active parameters; time normalized above within each task | identical per row | |||
| Training condition | Reacher | Cube |
|---|---|---|
| Factual only | 89.3 1.5 | 79.7 1.5 |
| Intervention only | 71.7 4.6 | 82.0 1.7 |
| Factual + intervention (FIRM) | 92.7 2.1 | 88.0 3.0 |
| No history fiber † | 68.0 | – |
| Mismatched outcomes † | 16.0 | – |
| LeWM (fixed paired baseline) | 88.0 | 70.0 |
Appendix figures & tables12 assets
Supplementary material from the paper’s appendix.
Appendix
| Group | Symbol | Meaning |
| Environment | Raw environment time index. | |
| Pixel observation at raw time . | ||
| Raw control applied at time . | ||
| Causal observation–action history available at time . | ||
| Goal image. | ||
| Macro rollout | Number of raw controls in one macro action. |
| Environment | Goal-comparable configuration | Periodic pairs | History frames | |||
|---|---|---|---|---|---|---|
| TwoRoom | 2 | agent position | 0 | 2 | 3 | 10 |
| Reacher | 4 | sine/cosine of two joint angles | 2 | 2 | 3 | 10 |
| Push-T | 6 | block orientation and agent/block positions | 1 | 5 | 3 | 10 |
| OGBench-Cube | 3 | fixed affine-normalized block position in 3-D | 0 | 25 | 3 | 25 |
| Environment | Configuration | Terminal cost | |
|---|---|---|---|
| TwoRoom | 0 | ||
| Reacher | 2 | ||
| Push-T | 1 | , where and (task-normalized) | |
| OGBench-Cube | fixed affine-normalized 3-D block position | 0 |
| Environment | Candidates | Iterations | Elites | Macro horizon | Raw steps / macro | Goal offset |
|---|---|---|---|---|---|---|
| TwoRoom | 300 | 30 | 30 | 5 | 5 | 25 |
| Reacher | 300 | 30 | 30 | 5 | 5 | 25 |
| Push-T | 300 | 30 | 30 | 5 | 5 | 25 |
| OGBench-Cube | 300 | 10 | 30 | 5 | 5 | 25 |
| Environment | Pixel + history frontend | Configuration grounder | Recurrent transition | Active total |
|---|---|---|---|---|
| TwoRoom | 0.374M | 1.613M | 1.424M | 3.411M |
| Reacher | 0.992M | 0.828M | 1.343M | 3.162M |
| Push-T | 0.449M | 0.157M | 2.371M | 2.977M |
| Cube | 0.376M | 1.613M | 1.434M | 3.424M |
| Environment | Anchors | H5 mean | H5 P95 | Max | Gate |
|---|---|---|---|---|---|
| TwoRoom | 128 | 0 | 0 | 0 | Pass |
| Reacher | 442 | Pass | |||
| Push-T | 512 | 0.0613 | 0.1424 | 0.9548 | Pass |
| OGBench-Cube | 128 | 0.00352 | 0.01035 | 0.06111 | Pass |
| Module | Initialization | Objective | Updates | LR ( ) | Status |
|---|---|---|---|---|---|
| TwoRoom | |||||
| Tokenizer | random | RGB reconstruction + change support | 100 | frozen | |
| Grounder | random head | configuration + finite-difference regression | 1,000 | frozen | |
| History module | random | causal token-dynamics NLL | 500 | frozen | |
| Unified transition | random carried | recursive rollout | active | ||
| Reacher | |||||
| Environment | Active sources by stage | Updates by stage | |
|---|---|---|---|
| TwoRoom | |||
| Reacher | |||
| Push-T | |||
| OGBench-Cube |
| Task | Source | Error multiset for | component weights | |
|---|---|---|---|---|
| TwoRoom | factual | terminal configuration MSE | ||
| TwoRoom | intervention | terminal configuration MSE | ||
| Reacher | factual | all-horizon maximum joint chord error | ||
| Reacher | intervention | all-horizon maximum joint chord error | ||
| Push-T | factual | terminal configuration MSE | ||
| Push-T | intervention | terminal configuration MSE |
| Environment | Seed | FIRM | LeWM | [95% CI] | Rescue / harm | FIRM sec. | LeWM sec. |
|---|---|---|---|---|---|---|---|
| TwoRoom | 1 | 99 | 89 | [5,16] | 10 / 0 | 0.480 | 3.224 |
| 2 | 100 | 89 | [5,18] | 11 / 0 | 0.378 | 3.224 | |
| 3 | 98 | 89 | [3,16] | 10 / 1 | 0.391 | 3.224 | |
| Reacher | 1 | 95 | 88 | [0,15] | 11 / 4 | 0.675 | 5.550 |
| 2 | 92 | 88 | [ ,12] | 10 / 6 | 0.407 | 5.550 | |
| 3 | 91 | 88 | [ ,11] | 10 / 7 | 0.429 | 5.550 |
| Environment | Training episodes | Validation episodes | Factual rollout segments | Intervention states | Action branches per state | Branch rollouts | Evaluation trials |
|---|---|---|---|---|---|---|---|
| TwoRoom | 9,000 | 1,000 | 16,384 | 128 | 32 | 4,096 | 100 paired trials |
| Reacher | 9,000 | 1,000 | 16,384 | 512 | 16 | 8,192 | 100 paired trials |
| OGBench-Cube | 9,000 | 1,000 | 4,096 | 128 | 16 | 2,048 | 100 paired trials |
| Push-T | 16,685 | 2,000 | 16,384 | 512 | 16 | 8,192 | 100 paired trials |
World Models for Robotics
World models for robotics predict how scenes and robot states change under actions to support planning, control, and learning.
See all 384 papers