1 of 15

Towards Embodied AI with MuscleMimic: Unlocking full-body musculoskeletal motor learning at scale

Chengkun Li, Cheryl Wang, Bianca Ziliotto, Merkourios Simos, Jozsef Kovecses, Guillaume Durandau, Alexander Mathis

CVBW @ CVPR 2026 (Workshop Accepted Paper)

arXiv:2603.25544 (Mar. 2026)

MyoFullBody: 416 muscles · 123 joints · 17 mimic sites

2 of 15

1

BACKGROUND

Why simulate with muscles?

  • Physics-based character control defaults to joint-torque actuation — but humans move by coordinating hundreds of muscles
  • Muscle-level simulation unlocks: rehabilitation & assistive-device design, pre-surgical planning, motor-control neuroscience, human-like embodied AI
  • Muscular systems are fundamentally harder to control — overactuated (muscles ≫ joints), delayed activation, nonlinear force generation
  • Question: can muscle-based whole-body control enter the era of large data × large compute?

Fig 1. MyoBimanualArm (top) · MyoFullBody (bottom) — front/back/side

3 of 15

2

PROBLEM

Two bottlenecks in prior work

Bottleneck 1 — Validation gap

  • Most upper-body MSK models validated only in static postures / single joints
  • No systematic validation on dynamic whole-body motion (running, jumping)
  • Hill-type muscles carry many simplifications → unvalidated results can't be trusted

Bottleneck 2 — Compute cost

  • On-policy RL needs billions of steps — infeasible on CPU physics
  • KINESIS: ~10 days on 128 CPU envs + A100 for a 290-actuator model
  • Result: research confined to small datasets, narrow motion repertoires

10 days → 20 hours (1B steps, single H100)

4 of 15

3

OVERVIEW

MuscleMimic at a glance

1

Two validated bodies

MyoBimanualArm (126 muscles) ·

MyoFullBody (416), full collisions

2

Retargeting pipeline

SMPL mocap → MSK morphology

(GMR-Fit, constraint-preserving)

3

GPU-native training

MuJoCo Warp + JAX,

8,192 parallel environments

4

Algorithmic finding

Single-epoch PPO beats

multi-epoch for muscles

5

Biomech validation

Kinematics · kinetics · GRF · EMG

vs. human experimental data

13,598

sim steps/sec (8,192 envs, 1× H100)

92.6 / 99.5%

test success (full-body / bimanual)

r = 0.90

walking kinematics vs. human data

5 of 15

4

METHOD 1/4

Two embodiments — model specs

MyoBimanualArm

MyoFullBody

Base

Fixed thorax + both arms

Free-root full body (toes to fingertips)

Joints / DoF

76 / 54

123 / 72

Muscles

126 (64 w/o fingers)

416 (354 w/o fingers)

Mimic sites

6 + thorax reference

17 (full-body landmarks)

Mass

9.3 kg (both arms)

84.3 kg (adult human)

Collisions

arm–thorax, arm–arm

environment + full self-collision

  • Built on validated MyoSuite parts (MyoArm · MyoLegs · MyoBack), converted from OpenSim via MyoConverter
  • Enforced L/R symmetry (joint ranges, moment arms, FL curves); fixed irregular muscle jumps
  • Cross-validated against MRI / cadaver data — within 2 SD (Appendix B)

Fig 9. 17 mimic sites — shared anchors for retargeting, reward, termination

6 of 15

5

METHOD 1/4

Muscle actuators — activation dynamics

∂act/∂t = (ctrl − act) / τ(ctrl, act)

τ = τact · (0.5 + 1.5·act) (activation, ctrl > act)

τ = τdeact / (0.5 + 1.5·act) (deactivation, ctrl ≤ act)

  • ctrl (neural excitation) → act (activation) is first-order delayed: τact = 10 ms, τdeact = 40 ms — turning OFF is 4× slower
  • act interpreted as a proxy for the EMG envelope (links to the EMG validation later)
  • Hill-type force: F = Fmax [ act · FL(ℓ̃) · FV(ṽ) + FP(ℓ̃) ] — inelastic tendons, no pennation (stated limitation)
  • τact · Fmax tunable per upper/lower limbs — for impulsive motions (F′max = 5 Fmax used for vertical jumps)

Why this equation matters

The delay & nonlinearity between command and effect is the cause of the E = 1 finding coming up.

7 of 15

6

METHOD 2/4

Motion dataset & retargeting

  • Full body: KINESIS_TRAIN 972 / TEST 108 (curated AMASS·KIT — walking, turning, running)
  • Bimanual: 1,770 / 312 from five AMASS sources — keyword-filtered ("throw, pour, drink, punch, pick…")
  • Mocap-Body: MuJoCo mocap-body IK — fast (3×) but no joint-limit guarantee
  • GMR-Fit (adopted): GMR + SMPL shape fitting + equality constraints (shoulder, knee) → 100 Hz, artifact fixes

Fig 10. Pre-process (SMPL fit · scaling) → IK → post-process (interp · artifact fixes)

Retargeting quality (KINESIS 972, Tab. 4)

Joint-limit violations 12.26% → 0.27%

Tendon-jump rate 30.14% → 3.20%

RMSE 0.039 → 0.025 m

Speed (per frame) 0.076 → 0.251 s (Mocap-Body 3× faster)

8 of 15

7

METHOD 3/4

GPU-native training system

Fig 2. Parallel envs 16 → 8,192: throughput 174 → 13,598 SPS (~78×)

  • JAX + MuJoCo Warp (extends LocoMuJoCo) — simulation and learning on one GPU
  • Near-linear scaling to n = 128, sub-linear after — 13.6k SPS at 8,192 envs
  • With 416 muscles + full collisions on — comparable to ten torque-driven 27-DoF humanoids in parallel
  • 1B env steps ≈ 20 h on a single H100 — order-of-magnitude faster than KINESIS
  • Training & validation fully on-GPU; final policies cross-checked in CPU MuJoCo

9 of 15

8

METHOD 4/4

Observations · actions · reward

Fig 11. State history + current & future goals (0.2 s × 5) + previous action

  • Obs (4 parts): proprioception (joints) + muscle state (u, ℓ, ℓ̇, F) + goals (5-step lookahead, phase) + previous action a(t−1)
  • Action: per-muscle excitation (354-dim full body, in [−1, 1])
  • Reward: r = max{0, Σ w·exp(−β·err²) + P} — joint pos/vel · site relative pos/ori/vel (pelvis-referenced)
  • Penalty P = max{−1, −Σλ·C}: action-bound violation etc. — floors prevent 'suicide' strategies
  • Early termination on mean relative site error > δ — global drift tolerated, posture collapse punished

10 of 15

9

KEY FINDING

For muscles, re-use hurts — single-epoch PPO

Fig 3. (A) E=10 learns fastest early (B) E=1 wins asymptotically; E=3 collapses at ~2.7B (C) KL: E>1 explodes to 10¹⁰, E=1 stays below 10⁻¹

Cause: delayed, nonlinear activation dynamics (Eq. 1) amplify small policy changes → extreme off-policy sensitivity. High GPU throughput compensates for one-gradient-per-sample, making truly on-policy training feasible. (+ batch 128 more stable than 32, Fig 4)

11 of 15

10

ARCHITECTURE

Gated residual policy — depth, gradually

Fig 12. Normalize → [Dense–LN–SiLU ×2 + gated residual] × N blocks → action

  • Separate actor–critic MLPs (16 hidden layers), SiLU + LayerNorm, orthogonal init, Welford online obs normalization
  • Output: diagonal Gaussian π(a|o) = N(μ(o), diag(σ²)) — learnable σ (init 3.0 for wide exploration)
  • Gated residual: x(l+1) = act( skip(x) + w·block(x) ), w = sigmoid(g), g₀ = −2 → w ≈ 0.12
  • + near-zero orthogonal init (gain 0.01) on each block's 2nd layer → network ≈ identity at start → depth phased in
  • Optimizer: Muon for 2D weights + Adam for 1D (wd 10⁻³) — faster & better than AdamW

12 of 15

11

RESULTS 1/3

Imitation — one policy, hundreds of motions

92.62%

MyoFullBody test success (108 unseen motions)

99.46%

MyoBimanualArm test success (312)

6.63°

joint angle error (full-body test)

2.28 cm

relative site position error

  • Small train→test gap → generalization, not overfitting
  • Natural walking, running, turning, dancing, jumps, kick-twists (Fig 6)
  • Fine-tuning: gentle motions < 100M steps; vertical jump · 360° kick ~1B
  • Trained with Mocap-Body: 10.67° joint error vs. GMR-Fit 7.97° (> 5σ)

Fig 6. walk / run / turn / dance / jump / kick-twist

Fig 5. bimanual

13 of 15

12

RESULTS 2/3

Biomechanical validation — does it walk like us?

Fig 7a. Walking 1.2 m/s: left-leg joint angles, moments, GRF vs. two human datasets (9 subjects each)

  • Walking: mean kinematics r = 0.90, joint kinetics r = 0.79 (knee 0.96 · hip 0.97)
  • Textbook patterns — knee shock absorption in stance, ankle push-off propulsion
  • Characteristic double-peaked GRF (loading + push-off) reproduced
  • Running 1.8 m/s: mean r = 0.81, single-peak GRF — same generalist policy

14 of 15

13

RESULTS 3/3

EMG comparison — an honest limitation

Fig 8. Per-muscle activation patterns vs. human EMG — correlations 0.2–0.6, on par with static-optimization baseline

Why not a perfect match?

MSK redundancy: many muscle combinations produce the same joint trajectory → a policy imitating kinematics may find a valid but non-human strategy

  • 8 right-leg muscles vs. two datasets, gait-cycle averaged — r = 0.2–0.6 (KINESIS reports ~0–0.45)
  • Lesson: kinematic imitation success ≠ physiological accuracy — energy / synergy priors are the next step

15 of 15

14

DISCUSSION

Limitations & takeaways

Limitations (stated by authors)

  • EMG fidelity — redundancy-driven strategy mismatch
  • Hill-model simplifications — inelastic tendons, no pennation, parameter sensitivity
  • Mocap capture artifacts leak into training data
  • Small train→test generalization gap remains

Takeaways for our lab

  • Infrastructure turning point — muscle control moves from CPU-days to GPU-hours; large-scale experiments become routine
  • Exactly complementary to GaitNet / MAGNET-style synergy & activation work — the EMG gap is our opportunity
  • Recipes (E=1, gated residual) portable to other overactuated systems: hands, quadrupeds, exoskeletons
  • Full release (checkpoints, data) minimizes entry cost for follow-ups