Generalizing learned locomotion policies across quadrupedal robots with different morphologies remains a challenge. Policies trained on a single robot often fail when deployed on embodiments with different mass distributions, kinematics, joint limits, or actuation constraints, forcing per-robot retraining. Prior works have approached this primarily either by scaling via training across real or generated embodiments or using large architectures producing transferable policies which are both storage and compute heavy. We argue that both of these approaches circumvent a key failure mode in actor-critic learning: a shared value function tends to average incompatible value targets across embodiments, yielding miscalibrated advantages and fixing that helps transfer and reduce the compute cost. We present MorFiC, a reinforcement learning approach for zero-shot cross-morphology locomotion which fixes this issue using multiplicative critic conditioning on a morphology latent. Trained with a single source robot with morphology randomization in simulation, MorFiC achieves zero-shot transfer to total seven robots and reaching forward velocity competitive or surpassing scaling-based and morphology-conditioned PPO baselines for examples 1.98 m/s on AlienGo, where as additive PPO baselines remain below 0.65 m/s. MorFiC achieves this using single training robot within 2 hours of training time compared to tens or hundreds of hours required for scaling baselines training on multiple embodiments. We diagnose critic calibration via three metric: Explained variance, advantage sign-flip rate and policy gradient cosine, confirming our critic conditioning as determinant for policy update direction. Finally, we demonstrate zero-shot deployment on Unitree Go1 and Go2 robots without fine-tuning.
Figures & tables
Figure 2: MorFiC Architecture. A morphology descriptor m∼p(m) is sampled, encoded via a morphology latent z=f(m) ; and used to modulate the crtic via multiplicative conditioning; actor is also conditioned via same z .
Figure 3: Critic calibration under morphology shift. Left: EV for internal PPO variants. Right: external baselines. Higher EV or closer to 1 is better.
Figure 4: Left: Compute cost (in hours) and total training timesteps used. Right: Performance w.r.t. normalized morphology distance. MorFiC performs better than both external and PPO baselines.
Target
PPO vˉx±σ/S
Actor-only vˉx±σ/S
Actor+Critic vˉx±σ/S
MorFiC-F vˉx±σ/S
Go2
1.79±0.31/0.984
0.88±0.23/0.265
1.70±0.30/0.891
2.04±0.37/0.984
Go1
1.93±0.27/0.906
1.49±0.36/0.594
1.82±0.32/0.859
2.06±0.46/0.547
A1
1.41±0.42/0.406
0.01±0.06/0.000
1.52±0.27/0.422
2.14±0.36/0.516
AlienGo
0.27±0.07/0.000
0.64±0.26/1.000
0.40±0.18/0.156
1.98±0.51/1.000
B1
0.21±0.06/1.000
0.04±0.07/1.000
0.12±0.07/1.000
0.22±0.08/1.000
Cheetah
0.68±0.51/0.282
0.32±0.49/1.000
1.28±0.58/0.382
1.39±0.69/0.422
Table 2: Zero-shot cross-morphology transfer. Training is on Go2. Each cell reports vˉx±σ/S , where vˉx is forward speed in m/s and S is survival rate. Bold denotes the best speed and survival rate. We run all the PPO variants with vxcmd=2.0 m/s for all 7 robots. All the experiments run for 500 time-steps on total 64 environments.
Target
URMA vˉx±σ/S
BodyTrans. vˉx±σ/S
GenLoco vˉx±σ/S
Embod. vˉx±σ/S
MorFiC-F vˉx±σ/S
Go2
1.84±0.26/1.000
0.30±0.21/0.656
0.59±0.05/0.922
1.23±0.06/0.906
2.04±0.37/0.984
Go1
1.93±0.28/1.000
0.21±0.13/1.000
0.98±0.01/1.000
1.94±0.09/0.953
2.06±0.46/0.547
A1
1.79±0.25/1.000
0.39±0.15/0.421
0.92±0.01/1.000
1.86±0.08/0.906
2.14±0.36/0.516
AlienGo
−/−
0.30±0.28/0.234
0.96±0.03/1.000
0.41±0.08/0.000
1.98±0.51/1.000
B1
−/−
0.04±0.11/0.796
0.00/0.000
2.86±0.11/0.969
0.21±0.08/1.000
Cheetah
−/−
−/1.000
0.73±0.06/0.969
0.06±0.09/0.000
1.39±0.69/0.422
Table 3: External baselines vs. MorFiC. vˉx±σ/S (m/s; survival). – = no forward motion. vxcmd=2.0 m/s (GenLoco: no vxcmd input). Bold = best.
Target
MorFiC-F vˉx±σ/S
MorFiC-F(Scaled) vˉx±σ/S
MorFiC-H vˉx±σ/S
MorFiC-A vˉx±σ/S
Go2
2.04±0.37/0.984
2.03±0.26/0.875
2.10±0.28/0.953
2.03±0.19/1.000
Go1
2.06±0.46/0.647
1.98±0.34/0.823
1.99±0.31/0.766
1.99±0.35/0.853
A1
2.14±0.36/0.516
2.04±0.24/0.531
2.02±0.26/0.766
1.76±0.26/0.609
AlienGo
1.98±0.51/1.000
1.78±0.45/1.000
1.75±0.46/1.000
1.79±0.52/1.000
B1
0.21±0.08/1.000
0.18±0.08/1.000
0.20±0.03/1.000
0.18±0.06/1.000
Cheetah
1.39±0.69/0.422
1.97±0.62/0.359
1.61±0.45/0.344
1.57±0.56/0.703
Table 4: Ablation Table. Each cell reports vˉx±σ/S , where vˉx is forward speed in m/s and S is survival rate. Alive time is omitted. Bold denotes the best speed per target robot.
Appendix figures & tables12 assets
Supplementary material from the paper’s appendix.
Appendix
Target
Expanded range vxmax±σ/S
FiLM vxmax±σ/S
Go2
1.9013±0.3510/0.8531
2.0415±0.3670/0.9844
Go1
1.9208±0.3087/0.7656
2.0649±0.4552/0.5469
A1
1.8241±0.2322/0.7596
2.1404±0.3608/0.5156
AlienGo
1.5499±0.5078/1.0000
1.9812±0.5146/1.0000
B1
0.2001±0.0215/1.0000
0.2109±0.0768/1.0000
Cheetah
1.2362±0.4805/0.3348
1.3922±0.6902/0.4219
Appendix
Table 6: Effect of expanded morphology ranges and FiLM conditioning. Each entry reports vxmax±σ/S , where S denotes survival rate. Bold indicates the higher value for each metric independently; ties are bolded for both methods.
Stream
Signals
Dim
ot
[v,ω,gproj,c,q−q0,q˙,at−1]
48
ht
{ot−k}k=115
15×48
pt
[μfric,e,mbase,Δc,μjoint]
18
zm
morphology encoder output
d=11
Appendix
Table 7: Observation streams used for policy and value learning.
Module
Specification
Actor MLP
[obs history,z^priv,zm]→[512,256,128]→a , ELU
Critic trunk
[obs history,zpriv]→[512,256,128]→V , ELU
Critic trunk (FiLM scaled)
[obs history,zpriv]→[1024,512,256]→V , ELU
Initial action std.
σ0=1.0
Adaptation module
obs history→[256,128]→z^priv , ELU
Student latent dropout
p=0.2 during training
Appendix
Table 8: Policy, critic, and morphology-conditioning architecture used in MorFiC. The PPO optimizer and rollout hyperparameters are shared across all methods and reported separately in Table 10 .
Variant
Critic conditioning
Key detail
Vanilla PPO
None
Critic does not receive morphology information
Concat- z
Direct concatenation
zm is appended to the critic input
FiLM
Feature-wise modulation
h←h(1+γ)+β
Scaled FiLM
Residual FiLM with scale
FiLM outputs multiplied by 0.1
AdaLN
LayerNorm + FiLM
h←LN(h) before FiLM modulation
HyperNet
Low-rank residual adapter
h←Wh+BzAzh , rank 16 , scale 0.1
Appendix
Table 9: Morphology-conditioning variants evaluated in the ablation study. All variants use the same PPO settings and base actor–critic widths as Table 8 .
PPO setting
Value
Discount γ
0.99
GAE λ
0.95
Clip ϵ
0.2
Entropy coeff.
0.01
Value loss coeff.
1.0
Clipped value loss
True
Appendix
Table 10: PPO hyperparameters used in all baseline and MorFiC experiments.
Term
Definition
Weight
rlin
4exp(−σlin∥vxycmd−vxy∥2)
wlin
ryaw
exp(−σyaw(ωzcmd−ωz)2)
wyaw
pvz
(vz)2
wvz
pωxy
∥ωxy∥2
wω
pori
∥g^xy∥2
wori
pτ
∥τ∥2
wτ
Appendix
Table 11: Reward terms used in our MorFiC locomotion objective. wk are set in the reward configuration; fixed scalings appearing in code (e.g., the factor 4 in rlin ) are shown explicitly.
Target
URMA vxmax±σ/S
BodyTrans. vxmax±σ/S
GenLoco vxmax±σ/S
Embod. vxmax±σ/S
MorFiC-F vxmax±σ/S
Go2
2.389±0.405/1.000
0.313±0.232/0.625
0.592±0.047/0.922
1.072±0.092/0.859
2.405±0.405/0.859
Go1
2.514±0.430/1.000
0.206±0.151/1.000
0.985±0.007/1.000
2.343±0.131/0.797
1.972±0.442/0.516
A1
2.230±0.336/1.000
0.374±0.183/0.515
0.919±0.011/1.000
2.143±0.116/0.719
1.595±0.467/0.156
AlienGo
−/0.000
0.358±0.315/0.203
0.964±0.032/1.000
0.452±0.085/0.000
0.832±0.542/1.000
B1
−/0.000
0.080±0.140/0.640
0.00/0.000
3.062±0.214/0.797
0.121±0.060/0.000
Cheetah
−/0.000
−/1.000
0.729±0.061/0.969
−0.118±0.091/0.000
1.128±0.986/0.234
Appendix
Table 12: External baselines vs. MorFiC at higher commanded speed. Each entry reports vxmax±σ/S (m/s; survival). All methods are evaluated at vxcmd=2.5 m/s, except GenLoco, which does not take a commanded forward velocity as input. Bold indicates the best value for each metric independently.
Target
Vanilla PPO ∣NVB∣ /NVE/ASA
Concat- z Actor only
Concat- z Actor+Critic
FiLM ∣NVB∣ /NVE/ASA
Go2
1.944/1.981/0.610
0.177/1.168/0.689
0.535/0.960/0.670
1.768/1.943/0.771
Go1
1.591/1.817/0.612
0.068/1.096/0.662
1.623/1.834/0.674
1.375/1.653/0.681
A1
2.027/2.203/0.603
2.033/16.463/0.754
0.199/0.936/0.701
1.482/1.813/0.675
AlienGo
0.070/1.454/0.612
0.468/1.209/0.569
0.153/1.117/0.607
0.048/0.835/0.706
B1
0.182/1.231/0.618
0.358/1.187/0.570
0.040/1.134/0.624
0.645/1.279/0.618
Cheetah
0.362/1.869/0.428
0.220/1.086/0.638
1.085/1.344/0.730
0.464/0.947/0.768
Appendix
Table 13: Extended critic calibration diagnostics across PPO variants. Each entry reports ∣NVB∣ /NVE/ASA, where NVB is the normalized value bias, NVE is the normalized value error, and ASA is the advantage-sign agreement. Lower ∣NVB∣ and NVE are better, while higher ASA is better. Best value for each metric within a target row is bolded.
Target
Embod. Scale ∣NVB∣ /NVE/ASA
URMA ∣NVB∣ /NVE/ASA
BodyTrans. ∣NVB∣ /NVE/ASA
GenLoco ∣NVB∣ /NVE/ASA
MorFiC-F ∣NVB∣ /NVE/ASA
Go2
3.437/3.646/0.657
3.005/3.178/0.702
3.319/3.492/0.652
5.458/5.674/0.561
1.768/1.943/0.671
Go1
2.569/2.772/0.607
3.170/3.333/0.692
4.771/4.983/0.724
3.402/3.594/0.623
1.375/1.653/0.681
A1
2.368/2.585/0.599
3.390/3.551/0.686
3.853/4.032/0.686
2.956/3.128/0.612
1.482/1.813/0.675
AlienGo
–
–
3.104/3.476/0.661
1.170/1.522/0.709
0.098/0.835/0.706
B1
3.330/3.590/0.657
–
3.571/3.781/0.694
7.428/7.729/0.667
0.645/1.279/0.618
Cheetah
–
–
–
5.294/5.511/0.594
0.464/0.947/0.768
Appendix
Table 14: Extended critic calibration diagnostics for external baselines. Each entry reports ∣NVB∣ /NVE/ASA, where NVB is normalized value bias, NVE is normalized value error, and ASA is advantage-sign agreement. Lower ∣NVB∣ and NVE are better, while higher ASA is better. Best value for each metric within a target row is bolded.
Src.
Go2
Go1
A1
AlienGo
B1
Cheetah
ANYmal-C
Flip
Cos.
Flip
Cos.
Flip
Cos.
Flip
Cos.
Flip
Cos.
Flip
Cos.
Flip
Cos.
MC
0.000
1.000
0.000
1.000
0.000
1.000
0.000
1.000
0.000
1.000
0.000
1.000
0.000
1.000
MorFiC
0.227
0.880
0.187
0.972
0.239
0.785
0.255
0.366
0.272
-0.182
0.209
0.679
0.402
-0.149
Concat
0.307
0.720
0.151
0.830
0.344
0.427
0.329
0.004
0.269
0.106
0.236
0.575
0.479
-0.419
Act-only
0.524
0.890
0.502
0.924
0.511
0.717
0.318
0.342
0.565
0.647
0.265
0.644
0.470
-0.044
Vanilla PPO
0.235
0.865
0.229
0.684
0.260
0.653
0.322
-0.113
0.176
0.601
0.253
0.264
0.461
-0.074
Appendix
Table 15: Fixed-rollout critic diagnostic across target morphologies. Each entry reports Flip/Cos., where Flip is the sign-flip rate against the MC reference advantage (lower is better) and Cos. is the actor-gradient cosine with the MC-reference gradient (higher is better). Bold indicates the best learned method for each metric independently; the MC row is the reference and is not considered for bolding.
Method
Transitions
Iters.
Sec/iter
GPU-h
GPU-h @400M
Notes
MorFiC
400M
4,000
1.98–2.70
2.2–3.0
2.2–3.0
Single generalist policy; local run
BodyTransformer
400M
8,000
17.25
38.3
39.0
Reproduced model_8000
URMA
1.600B
3,064
366–392
311–333
77.8–83.3
Original training budget
GenLoco
200M
1,526
125.8
53.3
106.6
200M setting
GenLoco
800M
6,104
125.8
213.5
106.8
800M setting
Expert-pool / selected-expert methods
Appendix
Table 16: Training compute comparison. We report total transitions, approximate PPO iterations, wall-clock seconds per iteration, total single-GPU-equivalent training hours, and GPU-hours normalized to a 400M-transition budget. Lower GPU-hours@400M indicates lower compute cost per transition. Expert-pool methods are separated because they train many specialized policies rather than one generalist policy.
Figure 5: Above figure shows representative reward and value trajectories during deployment on the Go1 robot. The MorFiC produces smooth value estimates (orange) (second row) that track the expected discounted returns from noisy instantaneous rewards (green). While non-MorFic value estimates are noisy (first row), MorFiC’s morphology-conditioned critic maintains stable value predictions even on unseen morphologies.