§ THE MATH
Everything we hand-set or evolved, written out. Each rule is one equation and one plain-language line saying what it means. Nothing here is a magic number — every constant comes straight from the source.
1 · The update rule (evolved)
For every cell p and its 3×3 Moore neighborhood (zero-padded at the grid border), the same tiny two-layer network runs everywhere. gis the gain — the playground's knob, normally 1.
In words: gather a cell and its eight neighbors (conv1: 4 → 16 channels, 3×3, pad 1), squash through tanh, then mix back down to the new cell state (conv2: 16 → 4, 1×1) and clamp to . The whole rule is numbers — the vector CMA-ES evolves.
2 · Motor mapping (hand-set)
Channel 0 of the top-left 7×6 sub-grid, read row by row, gives 42 numbers. Each becomes a joint target for one of FlyGym's 42 position actuators (kp = 50). Control runs at 250 Hz (dt = 0.004 s), with 40 physics steps at 10 kHz per control step and one CA tick per control step — so a 3-second rollout is 750 steps.
3 · Fitness (hand-set objective)
Reward forward distance walked; subtract a small penalty for every control step the thorax sags below half its standing height ( = number of such steps). Distance is measured after a short warm-up so it reflects control, not the initial settle.
4 · Evolution (CMA-ES)
Because the score comes from a contact-rich physics simulator it is not differentiable, so we cannot take gradients. CMA-ES only needs to score candidates: population 32, initial step size , 50 generations. Best v1 reached .
5 · The criticality instruments (this analysis)
These were added to probe the controller — they are not part of evolving or running it. g is the gain from rule 1.
State-change rate: how far the whole grid moves in one tick (root mean square per cell). This is the number that stays pinned across the sweep.
Poor-man's Lyapunov exponent: start a twin a hair away, watch the gap each tick, average the log growth — then rescale the twin back to length every tick so the gap stays in the linear regime (and discard the first ~12 ticks). ordered, edge, chaotic.
§ SYSTEM DESIGN
The walking and training system at a glance — two coupled loops. The runtime control loop (green, every 250 Hz step) runs the NCA controller through the motor mapping into the MuJoCo fly body; the proprioceptive feedback arc is now closed — it runs across the perturbation, chemotaxis, and escape behaviors (the v1 walking shown across the other tabs stays open-loop). The training loop (amber, every 3-second rollout) scores the body with the fitness function, hands it to CMA-ES, and feeds the evolved parameters θ back into the controller. This diagram is the walking system; the embodied brain↔body loop — the real FlyWire connectome run as a spiking brain driving the body — is a separate system, walked out on the Embodied tab. Hover, tap, or focus any block to see the real model behind it.