Conference on Robot Learning · CoRL 2026
Mohamad H. Danesh1,2   Chenhao Li3   Amin Abyaneh1,2   Anas Houssaini1,2
Kirsty Ellis2,4   Glen Berseth2,4   Marco Hutter3   Hsiu-Chin Lin1,2
Abstract
World models promise a paradigm shift in robotics, where an agent learns the physics of its environment once and then acquires behaviors efficiently. Yet the learned dynamics models at their core are typically morphology locked. In legged locomotion, a dynamics model trained on an ANYmal-D quadruped fails on a Unitree Go1 because it overfits to one robot's embodiment rather than capturing the locomotion dynamics shared across robots, so even a small change in actuator dynamics or limb length forces retraining from scratch. However, if we formalize a robot's unique physical traits into a morphology specification, a controller for a family of robots can utilize this blueprint in two ways. It can feed the specification to a model-free policy, or it can feed the specification to a learned dynamics model and extract the policy in imagination. We argue for the second route and introduce the Quadrupedal World Model (QWM), which conditions a single generative dynamics model on scale-invariant physical features and trains policies entirely inside it, through a physical morphology encoder, an adaptive reward normalizer, and morphology conditioning in the latent dynamics. Holding the morphology information identical, a model-free policy matches QWM on the training cohort but degrades on unseen morphologies, while QWM transfers zero-shot with no fine-tuning, adaptation, or warm-up. To our knowledge, this is the first world model to demonstrate zero-shot cross-embodiment transfer within the quadrupedal family.

A robot's morphology should be routed through learned dynamics, not fed straight to a policy. Dynamics within a morphological family change smoothly: stretch a limb or add some mass and the equations of motion shift continuously. But the best gait for that robot can change abruptly. A world model conditioned on $\mu$ can synthesize a coherent simulator for a robot it has never seen by interpolating in physical-feature space, and a policy trained against that simulator inherits the generalization for free. A policy that maps $\mu$ straight to actions has to learn a much rougher function instead, and it breaks.

8morphologies, one world model
0 fallsacross 20 hardware trials on held-out robots
zero-shotno fine-tuning, adaptation, or warm-up
~2×sample efficiency vs. a model-free policy with the same μ

Two ways to use a morphology spec

Take a robot's physical traits (limb lengths, mass distribution, actuator limits) and pack them into a morphology vector $\mu$. A controller for a whole family of robots can use that blueprint in two different ways.

Model-free

μ → policy

μ, oₜ  →  π  →  aₜ

Feed μ straight to the policy and learn control directly. The policy has to approximate a function that can change sharply between nearby morphologies, which is a hard ask. It matches QWM on the training cohort, but degrades on unseen robots and collapses on the ones that are truly out of distribution.

QWM · model-based

μ → world model → policy in imagination

μ, oₜ  →  world model  →  π  (in imagination)

Feed μ to a learned dynamics model instead, then recover the policy by training against it in imagination. The model only has to interpolate smooth physics, and the policy inherits that generalization for free, transferring zero-shot to robots that were never in the training set.

Our experiments hold $\mu$ identical between the two routes. On the training cohort they are indistinguishable, so any later gap is a generalization gap, not a capability gap. Only the model-based route crosses it.

The eight-robot heterogeneous quadruped cohort
The heterogeneous cohort: ANYmal-B/C/D, Unitree A1/Go1/Go2/B2, and Boston Dynamics Spot. The robots span an order of magnitude in mass, both knee topologies (inward "X" vs. outward "dog-like"), and non-linear variation in limb ratios and hip offsets.

How QWM works

QWM builds on DreamerV3 and changes three things so that a single model can serve a whole kinematic family.

QWM training and deployment pipeline
During training, PME turns a robot's data into $\mu$, which QWM combines with Isaac Lab observations to learn dynamics, act, and critique, while ARN keeps the reward signal on a common scale. At deployment, the same PME reads $\mu$ from an unseen robot, and the frozen QWM maps it straight to an action, closing the loop with the real world.

Physical Morphology Encoder

robot description → μ ∈ [−1,1]¹⁰

It reads four feature groups from the robot's description: kinematics & topology (limb lengths, knee configuration), geometry (stance footprint), dynamics (log-scaled mass, trunk fraction), and actuation (weight-normalized torque). Those get min-max normalized into $\mu \in [-1,1]^{10}$. A shallow tower keeps this static signal from getting washed out by the much noisier proprioception.

Morphology-conditioned dynamics

hₜ = f(hₜ₋₁, zₜ₋₁, aₜ₋₁, μ)
zₜ ~ q(zₜ ∣ hₜ, eₜ)

$\mu$ goes into the recurrent state at every step, so the GRU is free to track dynamic state (velocity, contact timing) while the explicit conditioning carries the static physics (limb length, mass). The stochastic latent $z_t$ is then free to encode only the morphology-independent part of the dynamics.

Adaptive Reward Normalizer

σ_R ← EMA(P₉₅ − P₀₅)

Spot earns ≈350 reward per episode; ANYmal-D ≈25. Without rescaling, big-reward robots dominate the world-model loss and it collapses to a mean-dynamics solution. A per-robot EMA of the 5–95 percentile return range equalizes the learning signal.

Training QWM means running eight different robot morphologies inside one simulator at once, each with its own collision geometry, kinematic tree, actuator gains, and reward definition. Isaac Lab doesn't support that out of the box, so we built Hetero-Isaac, an Isaac Lab extension that runs a heterogeneous batch indexed per environment. We cover the full infrastructure (joint-order unification, index mapping, padded reward functions) in the companion post: Heterogeneous Environments in Isaac Lab.
Eight quadrupeds training in parallel in Hetero-Isaac.

Results

Multi-morphology mastery & dynamics fidelity

Learning curves on the heterogeneous cohort and long-horizon dynamics prediction
Left: one QWM trained on the full 8-robot cohort against model-free baselines (Vanilla PPO, PME-PPO, BoT-PPO) and world-model baselines (DreamerV3, PWM, TWISTER). Methods that get $\mu$ explicitly master the cohort, while methods that have to infer morphology from history settle for a mushy, averaged solution. Right: starting from a 5-step context, we let QWM imagine 85 steps forward with no feedback. Its rollout (blue) stays locked to the ground truth (green) across every scale, and the error grows slowly instead of blowing up.

Given the same $\mu$, PME-PPO eventually catches up to QWM's reward. But QWM gets there in about half the environment steps, and it leaves behind a reusable dynamics model as a bonus. On the training cohort, the two routes are basically tied on capability, which is exactly what makes the generalization comparison below a fair one.

Open-loop imagination vs. ground-truth simulation for three robots. QWM predicts gait-level dynamics for all of them from one set of weights.

Zero-shot transfer to unseen morphologies

To test a target robot, we train from scratch on the other seven, then run the frozen model and policy on the target using only its $\mu$. Go1 and ANYmal-D both sit inside the cohort's normal range. B2 doesn't: it's heavier, stronger, and has a longer stance, all at the same time. Each of those traits is mild on its own, but no training robot combines all three, which makes B2 a genuine combinatorial gap.

MethodANYmal-D (in-range)Unitree Go1 (in-range)Unitree B2 (combinatorial gap)
RewardEp. lengthRewardEp. lengthRewardEp. length
PME-PPO (same $\mu$, model-free)10.153023.1602−0.2337
QWM (zero-shot)18.294935.597412.1925
Specialist PPO (oracle, trained on target)21.898139.799613.6961

PME-PPO reads the exact same $\mu$ but still trails by 350–600 steps of episode length, and it collapses completely on B2. QWM stays within about 4% of specialist episode length and recovers 80–90% of specialist reward on the in-range robots, and it still walks B2 zero-shot at close to specialist episode length.

Per-feature morphology deviation: why B2 is the hard case
Per-feature leave-one-out z-scores for the robot cohort
Leave-one-out $z$-scores per physical feature (raw value on top, signed deviation below). Go1 never crosses $1.5\sigma$ on any axis. B2 crosses $2\sigma$ on torque capacity and $1.9\sigma$ on log-mass, and every elevated feature points the same way: bigger, heavier, stronger. No single training robot combines all of that.

Real-world deployment

The frozen zero-shot ANYmal-D and Go1 policies run straight on hardware: the exact simulation weights, 50 Hz inference on each robot's own onboard computer, and no real-world fine-tuning at all. QWM settles into a quick trot on the agile Go1 and a slower, more grounded gait on the heavier ANYmal-D.

ANYmal-D: zero-shot, held out during training
Unitree Go1: zero-shot, held out during training
PlatformMethod$e_{xy}$ (m/s) ↓$e_{yaw}$ (rad/s) ↓
ANYmal-DQWM (zero-shot)0.300.29
ANYmal-DSpecialist PPO0.280.26
Unitree Go1QWM (zero-shot)0.340.34
Unitree Go1Specialist PPO0.310.30

Zero falls across all 20 trials (10 per platform × 60 s), with velocity-tracking error within ~10–13% of a specialist controller trained only on that robot.

Why the model-based route wins

Because $\mu$ is handed straight to the recurrent state $h_t$, the stochastic latent $z_t$ never has to re-infer the robot's physical identity. It only has to encode dynamic state. Probing backs this up: $h_t$ splits cleanly into per-robot clusters, while $z_t$ collapses into one shared, morphology-agnostic cloud (silhouette score 0.033).

PCA of the recurrent state h_t and stochastic state z_t, colored by robot
PCA of the $\mu$-conditioned recurrent state $h_t$ (left) and the stochastic state $z_t$ (right), colored by robot. $h_t$ carries morphological identity; $z_t$ does not.

That decoupling gives QWM a correction channel that a spec-sheet policy simply doesn't have. Corrupt $\mu$ by 20% and QWM still keeps about 80% of its episode length, while PME-PPO drops to roughly 33%, because $z_t$ keeps reading the true dynamics from observations. Now flip it around: keep $\mu$ correct but degrade the real robot with 20% torque loss or an added payload. Even a near-exact analytical rigid-body predictor diverges here, while QWM stays within 75 to 84% of its normal episode length.

Ablations

Ablation learning curves on the heterogeneous cohort
Each component fails in its own way. No ARN: flatlines near zero, since mismatched reward scales alone stop the world model from forming at all. No encoder conditioning: learns fine at first, then collapses later. No RSSM conditioning: slow, and settles for a worse asymptote. No explicit $\mu$: stays upright, but never reaches the more refined gaits.

Limitations

$\mu$ encodes a fixed quadrupedal template: three-segment legs, a 12-DoF action space, and a hip-rooted stance. So generalization is parametric within that template, not across structural variants like a different number of joints per leg or a non-quadrupedal body. Evaluation is also limited to blind, flat-ground velocity tracking, without exteroception or contact-rich terrain.

BibTeX

@inproceedings{danesh2026qwm,
  title     = {Morphology-Conditioned World Model for Cross-Embodiment Quadrupedal Locomotion},
  author    = {Danesh, Mohamad H. and Li, Chenhao and Abyaneh, Amin and Houssaini, Anas
               and Ellis, Kirsty and Berseth, Glen and Hutter, Marco and Lin, Hsiu-Chin},
  booktitle = {Conference on Robot Learning (CoRL)},
  year      = {2026},
  url       = {https://arxiv.org/abs/2604.08780}
}
arXiv  ·  Code  ·  Hetero-Isaac blog