Fly Self Driving
Drives a simulated street from a 64x32 windscreen using the MaleCNS connectome (165,122 neurons, 25,563,197 synapses). Complete retained graph: the wiring is frozen; only one gain per synapse and one leak per neuron are learned, with a random frozen pixel map and steering readout, and the network state is carried between decisions. Completes 58 of 60 across three held-out sets with no car collisions, against a randomly rewired graph (16/20), a linear map (12/20) and an MLP (18/20). One training seed per condition; it does not brake yet.
Neurons are simulated — leaky integrate-and-fire or better — with documented, tuned parameters.
Dispute this rating →The evidence
No evidence, no level.The model is a sparse recurrent rate network on immutable measured adjacency, with a trainable bounded gain per edge and a trainable leak per neuron, and no transmitter biology asserted.
https://github.com/suanmiao/fly-self-driving/blob/3516a094a6462e2a4ab7cc517286d5c3bc3ff63e/flyhard-patches/connectome.py#L1-L6The per-neuron dynamics are a bounded leaky tanh update over a persistent state carried between steps.
https://github.com/suanmiao/fly-self-driving/blob/3516a094a6462e2a4ab7cc517286d5c3bc3ff63e/flyhard-patches/connectome.py#L138-L145The edge gains are written by an Adam optimizer backpropagating an imitation loss in an offline training script.
https://github.com/suanmiao/fly-self-driving/blob/3516a094a6462e2a4ab7cc517286d5c3bc3ff63e/tasks/street/train_street.py#L224The authors describe exactly what learns - one gain per edge and one leak per neuron - and state that training never adds, removes or rewires a connection.
https://github.com/suanmiao/fly-self-driving/blob/3516a094a6462e2a4ab7cc517286d5c3bc3ff63e/docs/method.md#L5-L9
The measured MaleCNS adjacency is run as a leaky recurrent rate network: every neuron holds a persistent state updated as state <- (1 - leak) * state + leak * tanh(W @ state + drive), with a per-neuron leak bounded to 0.05-0.95, four graph updates per 50 ms decision, and - unlike the flyhard recipe it forks - the state deliberately carried across decisions because 'a real fly never resets'. That is a simplified leaky unit with stated dynamics, so L1. Not L2: the per-edge gains and per-neuron leaks are genuinely parameters on connectome edges, but the only thing that writes them is torch.optim.Adam through loss.backward() in an offline training script (behaviour cloning then three DAgger rounds, about 35 minutes on one H100), after which driving runs under policy.eval() and torch.no_grad(). No weight changes while the fly drives, and the update is an imitation-learning gradient, not a rule grounded in fly biology - the source disclaims the biology explicitly ('transmitter/receptor biology is not asserted by this model'). Worth crediting: the evaluation includes a randomly rewired graph control, and the README reports where the shuffled control nearly matches.
Record
Nearby
All projects →MaleCNS simulation connected to ViZDoom through modeled visual inputs and a fixed button readout. Includes plasticity experiments and negative validation results; learned survival has not been demonstrated.
Research framework comparing a MaleCNS-constrained sparse recurrent controller with rewired graphs, conventional neural networks, and other controls on simple VizDoom tasks.
Ratings on thelearningfly.com are proposals, not verdicts. Every one of them is arguable in public.