Recombinant Poetry was a filing cabinet full of nonsense rhyming couplets, algorithmically generated from the deconstructed remains of one million scanned books, that I took to Burning Man in 2011.

Here are the fist two pages (of 235 total):

One dear dead child
Running wild.

She heard herself thus to use their heads
Technicalities of the stream beds.

I rose on all sides
The would-be guides.

I cannot decide
Inside and outside.

I have tales of this Vicar of St
Speedily to be good friends in Leadenhall street.

An image formed
He was armed.

From you that it afflicted him as an adjuster
To the invasion of the English minister.

No more to bring over to the 3151 December
To the Collector is to remember.

Is it fair weather with the Algonquins on their kinetic
Iron from aluminum-iron magnetic.

An eagle or two Christians; but bestowing
Medical problems and outlined the following.


Recombinant Poetry was placed at 1:30 and 1500 ft from the Man.

The Algorithm

My friend Thane and I had been playing around with Google’s Ngram data, using Markov chains to generate random text and word puzzles, when we got the idea to mix in the CMUDict Pronouncing Dictionary and generate rhyming couplets.

The algorithm used the 3-gram data (all sequences of three words, including punctuation, found in one million scanned books) and went something like this:

  • Begin constructing the first line with a randomly chosen two-word start, from a curated list.
  • Complete the first line by appending words one at a time, randomly chosen according to the probability of following the previous two words in the 3-gram data, stopping at terminal puncuation or when a maximum number of syllables is reached (syllables counted using the CMUDict data).
  • Take the last word of the first line and make a list of other words from the 3-gram data that rhyme with it (using the CMUDict data to match trailing phonemes).
  • Begin constructing the second line with one of these rhyming words and terminal punctuation.
  • Working backwards, complete the second line by prepending words one at a time, randomly chosen according to the probability of preceding the previous two words in the 3-gram data, stopping when the number of syllables (roughly) matches the first line

More rhyming couplets, generated using this algorithm, can be found here