STEERABLE GENERATIVE MUSIC ALGORITHMS

Keys, scales, modes, and chords are useful handles for musical pitches, but there are fewer handles like that for rhythms (perhaps because piano-style keyboards existed centuries before sequencers, DAWs, etc.)

Coord defines rhythmic building blocks that map how rhythmic patterns emerge from repetition and anticipation. Each building block is generated by applying simple transformations to a more basic building block. The allowed transformations consist of a tiny set of strictly defined anticipation and elaboration operations.

Coord uses a connection between number theory and music theory to define and enumerate those building blocks of rhythmic coherence. These building blocks are used to both generate rhythmic structure and fine-grained muting patterns.

Papers providing details are here.

melodyAddresses.png

Coord is generative because a tiny set of rules governing note relationships is recursively applied to create note patterns in bottom-up fashion. It is therefore not tied to specific compositional rules and strategies.

Coord is adaptive because its generative approach can be biased to regenerate desired rhythms and melodies. The results are human-sounding variations that can be steered in real time between human-composed inputs. 

figure2 2.png

Single notes branch into groups of notes, and continue branching and pruning at different metrical levels to produce musical rhythms. The leaves of this branching form the notes that are actually heard, and there can be different generative pathways to the same result.

Rhythmic structure is inherently circular. Repetition gives rise to anticipation and anticipation drives further repetition, generating expectation of musical arrival points (downbeats, drops). Rhythms are formed by combinations of these anticipations and outcomes.  It all happens on nested levels of evenly subdivided beats, giving rhythms more affinity to counting than to time series data.