Composer's Underscoring Environment (CUE)

There are virtually hundreds of computer music programs currently available that are related to composition. Synthesis programs, for example, offer composers opportunities to create and modify timbres and sonic space (Loy 1989). Sequencer and notation programs provide visual and aural control over orders and playback of note sequences (Puckette 1991; Yavelow 1992). Analysis programs reveal harmonic functions, pitch set relationships, and so on (Castine, Brinkman, and Harris 1990). Composition programs generate random techniques, Markov chains, fractal and chaotic algorithms, and so on, to produce new ideas that can be used or discarded (Buxton 1978; Winsor 1987; Rowe 1993). Important as these are to composers, however, they do not offer all of the potential that computational means can provide. Many composers seek algorithmic composition in a style more akin to their own. Composing programs that offer style replication, however, are rare, and often their poor ratio of success to failure greatly diminishes their usefulness. My own EMI (Experiments in Musical Intelligence) is just such an example (Cope 1991). Even its best efforts often achieve less than satisfactory results. The majority of its works-which generally go unheard by anyone but myself--fall much further from acceptability. As well, EMI is not interactive, but rather creates works of whole cloth or fragments that cannot relate stylistically to surrounding human-composed passages. This results in large part because EMI models its compositions on rules and structures found in music located in its database. With the exception of manipulating variables associated with pattern matching for stylistic signatures, EMI users simply load databases and wait for EMI to produce new compositions. There is, then, a need for a program that offers composers the opportunity, within the same environment, to compose using all of the standard tools (notation, analysis, MIDI playback, etc.), while at the same time providing any amount of new music-a note, measure, phrase, and so on-within the current work's and the composer's overall style. This new music would be available at any point during composition, and would be logical and relevant to the user-created music surrounding it. Creating such a program, however, requires a composing algorithm as good as, if not better than, the current offerings. This program would need to keep a running tabulation of the melodic, harmonic, motivic, and structural content of a current work, as well as maintain an accurate sense of a composer's overall ongoing style. No mean feat, this; but an enviable goal, one that I, at least, feel would constitute a true composer's assistant. Users could then request algorithmically composed music to present possible solutions to certain compositional problems, indicate alternative routes at musical pivot points, extend passages experimentally, develop the potentials of composer-created germ ideas, offer new ideas when inspiration temporarily wanes, and so on. It is with these requirements in mind that I created CUE (Composer's Underscoring Environment). The main advantage of CUE is that it can compose as much relevant music as desired-from a single note to an entire piece-in a composer's general style as evident in the previously composed music in its database, and in the style of a work currently being composed. In addition, CUE has the notational, sequencer, and analytical tools that I and others have found useful while composing. This article, then, describes some of the principles on which CUE is based, presents a brief tour of the resources that CUE makes available, and ends with a few thoughts on how programs like CUE may serve composers in the 21st century. Computer Music Journal, 21:3, pp. 20-37, Fall 1997 ? 1997 Massachusetts Institute of Technology