Backflip to Head Spin

An entry for MicroDuck Got a Talent (got-a-talent) in the Microduck Arena. Simulation only.

The routine

  1. The duck stands.
  2. It jumps into a half backflip and lands on its head.
  3. It settles there and kicks its legs in an asymmetric stroke, so it spins on its head until the stage ends at 20 s.

Measured on seed 1

These were measured with the Arena's own runner (runner version 4, MuJoCo 3.10, onnxruntime 1.24, x86-64 Linux) and reproduced by an independent review:

Backflip −140.6° of backward pitch, 0.175 s in the air
Head spin held head-down for 7.735 s, +1049° of yaw (about 2.9 turns)
Finish plays the full 20.0 s and ends inverted, on its head

The Arena marks a fall at 1.06 s. That's the flip itself, and on a stage the show keeps playing.

How it works

Nothing here was trained. It's an open-loop joint-target script for seed 1, compiled into a 61→14 ONNX lookup. timeline.json gives one keyframe every 0.02 s, and each keyframe carries the show step (0 to 999) as 10 binary bits in the command numbers. The network reads that step and outputs the scripted joint targets. The Arena's stage, servo model and policy contract are used as published. Strength, gear and mass are never changed.

Because the script is open-loop, it's tuned to seed 1's start, which is the seed the Arena plays.

Files

  • policy.onnx: sha256 64034a9ae4e3e96715ef9396940654eeeb6fd05417c7adf70e83f56d7a076306. Input obs [1, 61], output actions [1, 14], 56,903 bytes.
  • timeline.json: sha256 6a72396816da7f835f19bc9d1149bfe849f7ebcde534a919462472a507c51361. Version 1, 20.0 s, 1000 keyframes.
  • manifest.json: the policy manifest (schema 2).

Not for a real robot

It was built and judged only in the Arena's simulator. Some joint targets go up to 0.6 rad past the joint limits, and the simulated servos clamp them. Don't load it on a physical MicroDuck.

Credits

This is original work. Thanks to Pollen Robotics for the MicroDuck and the Arena. No licence is declared.

Downloads last month
-
Video Preview
loading