The Knight That Learned to Leap in Solfège

Knight's Tour Choral Canons
🎮 Play: Knight's Canon Chase

Dear version of me who hasn’t tried this yet,

You’re going to write sixty lines of Python and then spend two hours wondering if you’ve made a mistake.

Not the code—the code is trivial. Warnsdorff’s rule, same algorithm you used for the starfield mosaic back in January, when you stood in a frozen field at midnight and let a knight’s path guide a camera across the sky. That worked. The tiles stitched. The stars cooperated. You came home with frozen hands and a Hamiltonian path made of photons.

This time the output isn’t an image. It’s a melody. And you’re going to have to sing it.

Here’s what the mapping looks like: files A through H become scale degrees one through eight—do, re, mi, fa, sol, la, ti, do—and ranks become octave registers. Square a1 is bass do; h8 is soprano do two octaves higher. Simple enough on paper. But the knight moves in L-shapes, which means you never step by seconds. Every interval is a leap. Thirds, sixths, sevenths. The tour I’m holding right now starts d4→e6→g5→f3, which translates to fa (octave 4) → la (octave 6) → sol (octave 5) → mi (octave 3). Try singing that cold.

The term for what you’re building is a dux-comes structure—leader and follower. You learned these words in choir twenty years ago, forgot them, found them again when you built the Morse Canon Choir Loops and needed vocabulary for what the loop pedal was doing. Same vocabulary here, different source material. The soprano enters first, the alto four moves behind, the tenor four behind that, the bass bringing up the rear. Staggered entrances, same melody, layered into harmony.

Except the harmony is brutal.

A knight’s tour doesn’t know it’s a melody. The algorithm optimizes for coverage, not consonance. You’re going to generate paths full of tritones and major sevenths—intervals that would have sent a Renaissance theorist reaching for holy water. The first three tours I ran were essentially unsingable. Not difficult; antagonistic. Like the chessboard was testing whether I actually wanted this.

So you filter. Run the generator a hundred times, score each path for consonance (count the thirds and sixths, penalize the augmented fourths), and keep only the survivors. There are 26.5 trillion possible knight’s tours on an 8×8 board—you’re not going to exhaust the search space. You’re panning for gold in a river of dissonance.

What I didn’t expect is how much the staggered entries change the problem. A melody that sounds harsh in unison becomes tolerable when it’s chasing itself. The soprano sings a minor seventh; by the time the alto arrives at that same interval, the soprano has moved on to a fourth. The clash becomes texture. The tour isn’t a single line anymore—it’s a braid.

Closed tours are the ones that end one knight’s move from where they started. Open tours end elsewhere. In musical terms: closed tours resolve to the tonic; open tours leave you hanging on a leading tone with nowhere to go. Choose deliberately.

I’ve been sitting at the piano for an hour, picking out the path one square at a time. My sight-reading was never strong—thirty-thousand-odd chess games didn’t exactly train my treble clef—but the solfège helps. Sol-ti-la-do-re-fa-mi-sol. The melody wants to leap. The voice wants to step. You negotiate.

Tomorrow I’m going to try recording it as a round. Four tracks, four entrances, one path through sixty-four squares. Whether it sounds like music or like a tactical puzzle that learned to scream, I genuinely don’t know yet.

Euler analysed knight’s tours in 1759. He was also a music theorist who wrote about consonance theory. Maybe he heard this, too. Maybe he had the same question I have now: is the path the composition, or is the path just the constraint that makes composition possible?

I don’t have an answer. But I have a melody, and it visits every square exactly once, and in the morning I’m going to try singing it.

Good luck.