Each region is a different real fly circuit with its own trained
weights. Switching keeps your game: the new brain reads the moves so far, one timestep per move.
Game
Fly move choice:
No moves yet.
Candidate moves
Make a move — the fly's move distribution appears
here.
Probabilities are the readout restricted to legal moves
(chess.js decides legality, so the fly always plays a legal move).
What you are playing
Every move is computed by a spiking network wired from the real MaleCNS mushroom-body
connectome — 4,510 measured neurons, 1,027,152 neuron-to-neuron connections, excitatory/inhibitory signs from
neurotransmitter annotations. On the right, those neurons are drawn at their real measured soma
positions and light up as the circuit runs. The network's state is never reset: it carries
forward from move to move, so what you see at move 40 descends from move 1. The whole network runs in your browser (a Web Worker) — no server computes anything.
In a real Drosophila this circuit learns odour→reward associations. Here the identical
wiring is fed chess: 789 board features (occupancy, castling rights, en-passant file, 50-move
clock, canonicalised to the side to move) plus the move history as tokens, projected onto the
Kenyon cells. The circuit takes one timestep per move; the readout of that timestep is the
move. Because the state is carried and never reset, the lateral signal keeps propagating across the
whole game.
Move legality and SAN: chess.js by Jeff Hlywa
(BSD-2-Clause), vendored locally with its copyright notice. The spiking
network runs in this page as plain JavaScript in a Web Worker and is checked numerically against the reference
implementation. The board, the chess piece artwork, the fly cartoon and the brain atlas renderer are original
work for this project — no third-party board library and no third-party piece set.
Choose the fly brain you play against
Nothing is downloaded until you pick. Each brain is a real circuit from the MaleCNS connectome with its
own trained synaptic weights, and it runs entirely in this tab. You can change brain at any time.
Loading the fly's brain…
Downloading the trained connectome weights. Everything runs locally in this tab.