AutoGen1 by Avneesh Sarwate published on 2017-01-06T07:48:57Z This track was algorithmically generated, with the only "human input" for a particular instance of a song being four different eight-bar rhythms. The core organizing principle of the algorithm that created this song is that of a “transformation tree,” which is a tree where the root node holds an instance of some object (for example, a melody), and every child node holds a variation of the value of its parent. The hope is that a properly weighted random walk through such a tree would produce a “theme and variation” sequence of objects. Melodies were parametrized by four values - the starting note, the melodic contour, the “base” rhythm, and the permutation of the base rhythm. The algorithm for this song used transformation trees to create variations on melodic contours, rhythmic permutations. and the “arrangements” of which melodic parameters were assigned to which instrument voices. Melodic “Themes” were creating by randomly assigning values to the melodic parameters, and random walks through the previously mentioned trees were used to produce variations.