HOW IT THINKS · TWO INTERACTIVE LESSONS
One neuron. Follow the ball.
Move the ball and paddle, then trace the decision. This programmed network shares one hidden neuron between left and right. Every weight has a job you can see.
Animate lets the model move the paddle. This is a position demo, not a match.
Loading Follow’s weights…
Live ONNX values. Lines show the stored weights; the highest action score wins. Four zero weights ignore four inputs.
Position scales run from −1 to +1: own end to opponent’s along the court, left to right across it. Velocity inputs are court units per tick ÷ 6: negative means toward the model’s paddle or left; positive means away or right.
Subtract two positions
+1 × ball − 1 × paddle gives the signed gap. Positive means the ball is to the right.
Share one signal
h = tanh(gap) keeps its sign and squeezes it between −1 and +1. Left and right reuse this signal; stay uses a constant bias.
Choose left, stay or right
The scores are −h, δ, +h. The small stay bias δ avoids jitter within about 1.5 game units of the ball.
A small program, written in weights.
Follow tracks the ball’s current position. It cannot anticipate bounces or aim a return. Sparks of Weight-Space Programming explores LLMs reading and writing weights directly. Here, the open question is practical: how far can programmed models go against independently trained ones?