Graphic: Phiroze Parakh

THEME DEVELOPMENT IN ALGORITHMIC COMPOSITION

Bruce L Jacob
University of Michigan

The nebula system builds on the variations architecture by placing more intelligence in the composer module to recognize recurrent themes and develop and extend them. The goal is a composition system with the feel, subtlety, and intellectual appeal of a human composer. This project is currently in development (nice pun, eh?), so details are somewhat scarce.

The original composer builds up phrases one melody or motive at a time. The composer begins with a set of "seed" motives -- each a simple melody -- and creates variations on them, which are nothing more than simple transformations. The composer takes the transformed melodies and sequences them and layers them on top of each other in order to build larger polyphonic phrases. The types of transformations include:

  • Transposition
  • Inversion
  • Changing of rhythm
  • Scaling of pitches -- multiplying them by a fixed constant, so that a melody like C,D,E,F,D in the key of Cmaj becomes D,F,A,C,F if the constant is 2.0 (the melody is represented as 1,2,3,4,2 and becomes 2,4,6,8,4)
  • Substitution of a subset for the whole, i.e. C,D,E,F,D --> D,E,F
  • Repetition, i.e. D,E,F --> E,F,D,E,F,D
  • Any combination of the above
  • By focusing on individual motives, an impression of thematic development is almost inherent in the resultant material. Themes are repeated and varied often, and since all themes are derived from the same small set of seed motives they tend to resemble one another. The original composer module is relatively simplistic in its compositional algorithm, compared to a human composer.

    The difficulty is developing individual themes; the computer does not mind repeating a melody verbatim several times, but the human listener wants something more. Variations on the motives tend to result in new motives, not developments on the old ones. What is being attempted is the reduction of aesthetics to an algorithm, a non-trivial and perhaps hubris-laden endeavor.