This book describes a range of interactive computer music systems, developing a framework for their discussion and evaluation in the process. Interactive systems exhibit changing behavior in response to human input. I consider the impact of three related fields (music theory, music cognition, and artificial intelligence) on the design of such systems, particularly as this impact affects their ability to function in ensembles including human performers. A companion CD-ROM of audio and program examples documents a variety of extant systems and the music they were used to produce. A series of examples illustrating the fundamentals and some advanced issues in interactive systems are written in Max, a graphic MIDI programming environment.
The most thoroughly reviewed program is my own Cypher. Cypher is an interactive music system with two major components: a listener and a player. The listener analyzes streams of MIDI data. The player uses various algorithmic techniques to produce new musical output. Both components are made up of many small, interconnected agents operating on several hierarchical levels. The listener classifies features in the input and their behavior over time, sending messages that communicate this analysis to the player. A user of Cypher can configure the player component to react to such messages, where a reaction is the execution of compositional methods producing new music in response. Features characterized include speed, density, dynamic, harmony, and rhythm. Collections of relations can be saved and recalled during performance by a score orientation section, which tracks human performance and executes state changes at predetermined points in the score.
Interactive Music Systems is not an exhaustive account of the relationship between computer music and artificial intelligence, computer music and cognitive science, or computer music and music theory. Rather, it proposes a consideration of building artificial performers and improvisers that quickly recognizes the relevance and potential contribution of those other fields. Other texts will detail those relationships; this one points out why interactive music systems are unworkable without them.