Work log · Experiment · Muscles · MyoSuite · RunPod

Work log for Muscles instead of motors

Muscles, stage 2: real leg muscles

By Tony Yum · 27–28 October 2026

Training cost about $9.69RunPod RTX 5090 and RTX PRO 6000 pods, $1.19–2.49 an hour · 15 training runs, 16 machines, about 6.1 machine-hours

Stage 1’s muscles act straight on a joint, with a fixed lever. Real leg muscles run along paths over the bones, their levers change with the angle, and some cross two joints. Stage 2 takes the leg muscles of MyoSuite (open source, Apache-2.0), scaled onto the fighter’s legs: first MyoLeg26 (13 muscles a leg on 26 tendon paths, stage 2a), then the full MyoLeg (40 a leg, wrapping round the bones, stage 2b). Everything above the hips keeps stage 1’s joint pairs. Each muscle’s lever arm was checked against MyoSuite’s own model at every joint it crosses: within 2.2 cm everywhere.

The runs

runwhatresult
muscle2a, muscle2a22a as first built, two seedslearnt not to fall, but not the stance: stood tall, straight-legged, arms out (pose 0.01)
muscle2n, muscle2n22a with a torque-neutral zero action (each muscle’s resting excitation set so the stance holds)passed the trainer’s test at 46.2 M / 76.9 M steps, but with the rear leg straight and swung back (pose 0.21–0.24)
muscle2c15, muscle2c20the hip abductor ×1.5 and ×2 (my first guess at the cause)exactly the same posture: not the cause. The rear leg was resting on its hip and knee joint limits with its muscles idle
mbaseLthe servo body with a cost for resting near a joint limit, two seeds (control)solved as before, 12.3 M / 12.1 M steps
muscle2L, muscle2L22a with the joint-limit costthe rear leg takes the stance (knee 33–35°, pose 0.84), but falls stayed at 7–8 % to the 0.75 h cap; a 30-minute continuation collapsed
muscle2G, muscle2G2from muscle2L, a third of the learning rate (1e-4 and 5e-5) and half the PPO epochs, with a collapse guardsolved within 6.6 M more steps; falls 3 %, pose 0.90
muscle2S, muscle2S22a from scratch on those settingssolved at 33.1 M / 49.6 M steps: 2.6× / 3.9× the servo
muscle2b, muscle2b22b, the full MyoLeg (142 muscles), the same settingssolved at 63.3 M / 73.5 M steps: 4.9× / 5.8× the servo, first time

What it showed

Three things a muscle body needed that the servo body doesn’t:

  1. A torque-neutral zero action. On stage 1’s symmetric pairs, every muscle at half excitation turns no joint. On real leg muscles it is up to about 180 N m off, and the policy never found the stance from there.
  2. A cost for resting on joint limits. A straight leg pressed against its limits is held up for free, by the simulated bone, with no muscle working. The policy found that and kept it. The cost changes no physics and the servo body doesn’t notice it.
  3. Smaller policy updates. In the stance posture the balance plateaued at 7–15 % falls and then collapsed at the default PPO settings; a third of the learning rate and half the epochs solved it in a few million steps.

Kept: muscle2S-33.1M (2a) and muscle2b-63.3M (2b). Videos of both went to me for checking. Next: a skill on the muscle body (stage 3).

Every run

From the run records in kakuto-ml: each run's machines, their billed hours and cost (EC2 runs are estimates from the run logs).

RunOutcomeMachinesHoursCost
muscle2b-2026102828 October · kept muscle2b-63.3MKept10.6$0.73
muscle2b2-2026102828 OctoberNot kept10.7$0.84
muscle2S-2026102828 October · kept muscle2S-33.1MKept10.3$0.32
muscle2S2-2026102828 OctoberNot kept10.4$0.52
muscle2G-2026102827 October · kept muscle2G-101.1MKept10.1$0.12
muscle2G2-2026102827 OctoberNot kept10.1$0.12
muscle2L2-2026102727 OctoberNot kept10.8$1.96
mbaseL-2026102727 OctoberNot kept10.3$0.68
muscle2L-2026102727 October · kept muscle2L-94.5MKept20.9$2.08
muscle2c15-2026102727 OctoberStopped10.2$0.25
muscle2c20-2026102727 OctoberStopped10.2$0.24
muscle2n-2026102727 October · kept muscle2n-46.2MKept10.5$0.55
muscle2n2-2026102727 OctoberNot kept10.6$0.74
muscle2a-2026102727 OctoberStopped10.3$0.37
muscle2a2-2026102727 OctoberStopped10.1$0.16
15 training runs166.1$9.69

← All the work logs for “Muscles instead of motors”