BeatTheFly

A Smart Fruit Fly is playing Pong against you
Wiring: real fruit fly brain (MaleCNS connectome, CC-BY-4.0) · Synaptic weights: trained with PHCSSM parallel-scan mode, deployment in sequential RSNN mode
The anatomical connectome gives you wiring, not synaptic strengths. Ours are trained.
made by Po-Han Chiang @ NYCU

Court

FLY 0 first to 11 0 YOU
Play chess →
This fly learned by copying a scripted Pong player: it gets no reward and does not plan ahead.
You are the right paddle. Keys: / or W/S; on a touch screen, drag on the court. Space pauses.

Opponent fly

The fly's paddle command

Each frame the command is read from the membrane voltage of the readout neurons only. Squares are those neurons: blue pushes the paddle up, pink pushes it down (trained readout weights), a white outline means it spiked this frame. They are drawn in gold on the atlas.

What you are playing

The fly's paddle is moved by a spiking network wired from a real fruit fly brain circuit in the MaleCNS connectome, with trained synaptic weights. It sees six numbers each frame (the ball's position and velocity and both paddles) and answers stay, up or down. The network takes one timestep per frame, 60 frames per second, and its state is never reset during a game. It learned by copying the actions of a scripted Pong player. The whole network runs in your browser (a Web Worker) — no server computes anything.

Loading the fly's brain…

Downloading the trained connectome weights. Everything runs locally in this tab.
starting…