100% found this document useful (1 vote)
147 views13 pages

The Analysis of Generative Music Programs PDF

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
147 views13 pages

The Analysis of Generative Music Programs PDF

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

OrganisedSound

http://journals.cambridge.org/OSO

AdditionalservicesforOrganisedSound:

Emailalerts:Clickhere
Subscriptions:Clickhere
Commercialreprints:Clickhere
Termsofuse:Clickhere

TheAnalysisofGenerativeMusicPrograms
NickCollins

OrganisedSound/Volume13/Issue03/December2008,pp237248
DOI:10.1017/S1355771808000332,Publishedonline:03November2008

Linktothisarticle:http://journals.cambridge.org/abstract_S1355771808000332

Howtocitethisarticle:
NickCollins(2008).TheAnalysisofGenerativeMusicPrograms.OrganisedSound,13,pp237248doi:10.1017/
S1355771808000332

RequestPermissions:Clickhere

Downloadedfromhttp://journals.cambridge.org/OSO,IPaddress:139.184.30.132on14May2013
The Analysis of Generative Music Programs

NICK COLLINS
Department of Informatics, University of Sussex, Falmer, Brighton, BN1 9QJ, UK
E-mail: [email protected]

Composers have spent more than fifty years devising trigger might cause the seeding of a random number
computer programs for the semi-automated production of generator with the current time, allowing the program
music. This article shall focus in particular on the case of to progress on a new path with associated musical
minimal run-time human intervention, where a program output revealed in realtime.
allows the creation of a musical variation, typically
It is hoped that this article will promote under-
unravelling in realtime, on demand. These systems have the
capacity to vary their output with each run, often from no
standing of contemporary art practice in algorithmic
more input information than the seeding of a random number music. There is also some potential that tackling the
generator with the start time. Such artworks are limiting case of non-interactive algorithmic systems
accumulating, released online as downloads, or exhibited (which shall themselves present many rich problems)
through streaming radio sites such as rand()%. Listener/users can contribute to an understanding of more general
and composer/designers may wish for deeper insight into these interactive music systems. This research may assist
programs ontological status, mechanisms and creative composers employing such mechanisms who yearn for
potential. These works are challenging to dissect; this article greater insight into the relation of process and product.
makes a tentative start at confronting the unique problems Some care must be taken with any claim for the
and rich behaviours of computer-program-based generative existence of an independent discipline of analysis; yet
music, from the social and historical context to the
analysis, even in the most practical senses, is necessitated
backwards engineering of programs in relation to their sound
so that greater control of musical outcomes can be
world. After a discussion of exemplars and definitions of
generative art, strategies for analysis are outlined. To provide exhibited in algorithmic systems. Such analysis also
practical examples, analyses are provided of two small scale points to the assumptions of current systems and
works by James McCartney. potential of future systems, and satisfies innate human
curiosity regarding such artefacts.
With these aims in mind, it is fruitful to spend a while
1. INTRODUCTION unpicking the various strands of debate and terminol-
Algorithmic composition is a familiar territory in ogy, for the existing literature is not always consistent,
computer music, explored since the early mainframe as detailed below. The reader has probably already
era of Push Button Bertha (1956) and the Illiac Suite picked up on a tension between the terms algorithmic
(195559) (Ames 1987), where programs to produce a and generative, and the mention of process and
few musically relevant symbols would run overnight. product may raise questions concerning the composi-
Taking the example of Gottfried Michael Koenig, tional responsibility, social context and analogies to,
Project I (1964) would output a list of discrete note say, improvisation of such work. Ultimately, the issue of
and instrumentation instructions, derived from prob- where the music itself resides implicit in an executable
abilistic serialist procedures, which had to be hand- program, explicit in a given play forms an over-
transcribed into a musical score for performance arching theme of discourse on such musical objects.
(Koenig 1989; Laske 1989). With the backdrop of such After treating terminology, examples of particular
labour-intensive work and the technological benefits of generative music systems will be given that help to
the oft-quoted Moores Law, it is not surprising that clarify the objects under discussion. With an awareness
most contemporary explorations favour realtime sys- of the human prevalence to categorisation (Lakoff 1987)
tems for speed of feedback, a development that also it is helpful to consider central exemplars, and avoid
supports complex interactive possibilities (Chadabe delimiting hard boundaries around categories; overly
1997; Rowe 1993). Yet systems have also been prescriptive taxonomies deny the continuums of real
deliberately devised for the limiting case of minimal practice, though they can form helpful tools as long as
intervention in performance. In the asymptote, a human we bear their claims to full description as approximate.
designer makes all decisions pertaining to the potential The article then proceeds to introduce some particular
of the musical device in advance. A single starting analytical methodologies that may prove useful in
Organised Sound 13(3): 237248 2008 Cambridge University Press. Printed in the United Kingdom. doi: 10.1017/S1355771808000332
238 Nick Collins

discussing and learning from algorithmic systems. These and in online communities such as generative.net, may
are applied in the final stages of the paper in treating two actually often refer to computer-generated algorithmic
necessarily smallscale examples; there is enough to music which happens to be realtime in production, a
discuss even in these cases to demonstrate the scope and subcase of both generative music and algorithmic music
challenges of such work. as more widely defined in art theory and computer
music. Analytic work described in this article can
profitably engage with any algorithmic music generator.
2. DEFINING GENERATIVE AND
In Pearce, Meredith and Wigginss (2002) terminology
ALGORITHMIC MUSIC
of automated composition research, all works would
In a recent seminar, Margaret Boden outlined a primarily fall under the remit of algorithmic composi-
taxonomy of electronic and interactive art devised with tion for the sake of art.
Ernest Edmonds (Boden 2007). In their terms, G-art Thus, although we have seen that definitions of
(generative art) is composed of works that are generative art would not restrict themselves to computer
generated, at least in part, by some process that is not programs alone, programs provide a standard exem-
under the artists direct control. A further sub-category plar, where the operation of the artwork is free of
of CG-art refers to specifically computer-generated complicated human intervention during execution. This
work, produced by leaving a computer program to pure computer-generated music (CG-music) will be
run by itself, with minimal or zero interference from a tackled in the remainder of the article, and we shall
human being. Phil Galanter (2006) is also inclusive of refer to generative music programs or algorithmic music
non-computer-based work in his discussion of genera- where the connection to computation is clear. Thus,
tive art. The rich artistic heritage underwriting this human computation (von Arn 2006) is barred, so that we
stance in the specific case of music might pay tribute to also exclude instances of algorithmic art such as live
more than forty years (perhaps counting from Rileys In coding, interactive genetic algorithms or text music for
C of 1964) or fifty years upwards (perhaps counting human interpretation as outside the remit of the current
from Earle Browns December 1952) of process, system investigation. The hope, however, is that any insight
and indeterminate music. These musical movements into the relation of algorithm to musical production will
themselves parallel conceptual and new media art be helpful once live human beings are reintroduced.
historically, and homage must be given to Sol Human work has not been entirely sidestepped; we
LeWitts famous assertion that the idea becomes a must always accept the precursor of human design. In
machine that makes the art (LeWitt 1967). Conceptual philosophical terms, generative computer programs are
arts currency of often illogical and unmechanisable examples of the derivative intentionality of writing
concepts, instantiated by human beings, is replaced in (Searle 2004: 20), where the code is predetermined by
much digital generative art by well-defined (computa- a human author who then yields moment to moment
ble) concepts enacted via machine; yet the human autonomy of execution to the machine. Human
originator is ever present, even if acting by proxy. intervention is thus reduced to initial conditions alone;
Any definitional complexity in this debate is essen- control is usually choosing when to start the program,
tially due to the rise, ubiquity and indeed indispensa- providing the seed for the random number generator.
bility of computers in contemporary (digital) art Programs are in principle well-defined; it certainly
practice. Computers simply require formalisms, and complicates matters to have human beings sitting inside
must be programmed with exact instructions, that is, deciding on moves, as within the famous chess-playing
algorithms (taking the spirit of the computer science Turk, and there will be enough difficulties already even
definition of an algorithm rather than admit any less when composers have specified each action in iron-clad
rigorous art critics notion in using such a term). code.
However, in seeking to differentiate their art (often for The final hurdle before we progress to consider real
publicity) some artists have adopted generative music examples is to mention the process versus product
(Eno 1996) as a more rigid description of algorithmic debate. Art itself is replete with examples of the claims of
music that happens to produce output in realtime. Good a human being for an objects artistic status leading to
Old Fashioned Algorithmic Composition might there- the grant of that status and a transformation of the
fore be distinguished as an offline tool (Ames 1987; Loy bounds of art. Some might see this cultural negotiation
2006; Pearce, Meredith and Wiggins 2002), providing as having gone to breaking point in the 20th century. A
suggestions as a composers assistant, following rules cogent and passionate defence of the status of a
for the production of musical scores or recordings and generative program rather than an individual produc-
otherwise not making so central the algorithmic process tion as an artwork has already been presented by Ward
itself in the final product. and Cox (1999) in discussing Adrian Wards Autoshop
It must be admitted then that generative music as application.
discussed in recent academic literature (Collins 2003; In a very practical sense, that musicians are choosing
Cox and Warner 2004; Eacott 2000, 2006; Eno 1996), to create programs which create music is a noteworthy
The Analysis of Generative Music Programs 239

development that can be profitably engaged with by focus of generative processes. Music for demos is
musicologists and artists alike. The analysis undertaken typically fixed sequence playback, though early demos
in this article will attempt to relate the program itself to exploited the sound synthesis quirks of 8-bit audio
its possible productions, giving insight into the human cards, rendering live from hard-coded tracker files (for
effort (designing the process), but always with a view to example, Charles Deenens circa 1985 Game Music 19
the outcomes (the products which are each individual for the Commodore 64, or the work of other 1980s game
run of the program). There is no absolute division; music composers such as Jeroen Kimmel and Rob
anyone who has created CG-art knows the intimate Hubbard).
negotiation between design of a program and feedback In contemporary computer-based generative art
from program output. In this sense, during the design work, whole communities have grown up, such as
cycle CG-music is highly interactive. Yet development generative.net and the associated eugene mailing list,
of a program must be frozen at some point and the with many artists exploring generative visuals in web
generative object released (and sidestepping additional software, but many also exploring realtime algorithmic
machine learning carried out during operation). To cite composition and rendering of music. To ignore such
Gregory Chaitin, computer programs are frozen scenes is to ignore a rich endeavour in current
thought (Chaitin 2007); they stand as beautiful experimental music. It is also important to note that
(human), artistic, creative, intellectual objects. the scene is astylistic; whilst much of Enos work might
Algorithmic music is compositional design at a meta- be described (in his own words) as ambient, diverse
level, human creativity in musical representations, manifestations are exhibited by those in The Algorithmic
examination of particular rule sets in a space of multiple Stream or rand()% streaming algorithmic radio sta-
music theories, with the composerdesignermusician tions, Karlheinz Essls Lexicon Sonate (even in its non-
becoming a composer-pilot (Xenakis 1992) through interactive version), or my own Infinite-Length Pieces.
musical modelling space. Composers model composi- Indeed, algorithmic artworks in the form of programs
tion itself, and such systems give us valuable insight into produced for various computer music systems from Pd
the relations of music theory, musical design and aural to CM to the SuperCollider demo examples are further
instantiation. examples, devised within the realtime feedback of
contemporary computer-music programming lan-
guages.
3. EXAMPLES OF REALTIME COMPUTER-
In case it is still unclear, any algorithmic method
GENERATED MUSIC
might be applied, and this potentially includes all
Brian Enos 1996 Generative Music 1 installation, which artificial intelligence techniques. The extent to which
utilised the proprietary Koan software to provide a such algorithms have yet to be harvested makes this an
continuous ambient installation environment in a open research area; there are favourite techniques,
church, helped to provoke interest in generative music controlled probabilistic expert systems being a typical
in the last decade; we have already discussed how the route. Jem Finers LongPlayer can be characterised as
name of his installation stuck as a definition of realtime utilising deterministic isorhythmic layers, but whilst this
CG-music. may reveal one strategy, algorithmic music systems do
As always in human endeavour, the currents are not stop there. Some authors have not appreciated this
much broader than a simple reading might appear. full scope, favouring a particular technique to the
Aside from algorithmic and interactive music (Chadabe exclusion of others. For example, the phenotype/
1997), tribute should be made to the demo scene genotype distinction for programs and outputs drawn
fostered since the 1980s (http://www.scene.org). This by McCormack and Dorin (2001) is not pursued further
movement grew at first around the programmed tags in this article as being too closely locked to evolutionary
(calling cards) of game hackers, who provided new computation, only one strand of AI techniques
introduction sequences to the games they hacked, as employed in computer-generated music.
advertisements and boasts of prowess (pioneer crews I shall describe one particular generative artwork in
include rival Dutch outfits The Judges on the more detail, Thor Magnusson and Runar Magnussons
Commodore 64 and The Lords on the ZX Spectrum, SameSameButDifferent v.02 (Magnusson and
though the earliest crack intros were for Apple II Magnusson 2007). This system is activated from a
computers). Algorithmic techniques were used by simple control panel containing a start/stop button. The
necessity in the production of more elaborate animated source material for the work is a large set (262 MB) of
demos, as 1980s home computers lacked the memory to sound recordings from Iceland, which are layered and
load large pre-rendered movie sequences. This heritage processed live with each run of the work, though
is evident in current screen savers, which still use such processing is relatively restrained in keeping with sounds-
realtime algorithmic generation to great compressive cape recomposition. Three to seven distinct soundfile
benefit, to procedural audio and animation for games. layers will appear in a given 57 minute production,
Yet, in the demo scene, graphics have been the main sometimes leading to impossible environmental pileups:
240 Nick Collins

cavern, bird, boat and bubbling rocks in one observed Fortunately, for the purposes of analysis, the
instance. Sufficiently long soundfiles are prepared to psychological space of outputs is typically much more
avoid the sensation of looping for example, some constrained than the mathematical space of a programs
birdsong segments are up to two minutes in length and runtime avenues. Analysis must confront the relation of
are further processed in playback to maintain essential the internal space of a program (initial state and
variety. There is a facility to store and recall particular algorithms) to the psychological space of potential
random number seeds, represented as character strings outputs. Indeed, the essential problem of musical
for easy composition, and users can record favourite analysis is never sidestepped, in that there are a number
passages as soundfiles for their own linear listening away of relevant levels and viewpoints from which to consider
from the generative system itself. The authors char- the cognitive affect of a piece of music; different listeners
acterise this as playing with the conventions of use of may more quickly or slowly discount the variability of a
digital media, for their program is not restricted to a given generative artwork depending on cultural expo-
single output, but its productions can be judged as sure to music of that nature and choices of attending.
particular instances of music when favourites are A fundamental aim in analysing a computer-
selected for archiving. generated musical work therefore is to explore the
relation between source and production. Rather than
misleading or incomplete analogies to object-oriented
4. VARIATIONS ON ANALYSIS programming and the aforementioned genotype/phe-
Rather than storing a fixed recording of finite length, an notype distinction, the clearest expression of this task is
algorithm can embody the potential exploration of to explain a given output (a production) in terms of the
massive parameter spaces, allowing infinite (or effec- originating program (a source). Knowledge about such
tively infinite, see Collins 2002) play times. Yet this very mechanisms allows one to predict the space of future
compression means giving up the idea of a single outputs, and thus truly delimit the scope of a given
product and exploring a potential panoply of outcomes. compositional model/music theory/program with
respect to both craft (emic) and aesthetic (etic) outcome
The game in generative music is for the composer to
that is, poeisis and esthesis. The next sections relate
enable a suite of possible products; integrity demands
tools to approach this aim. Mathematical parameter
that each production be of sufficient merit to honour the
space analysis founded in software analysis techniques
system that produced it. The extent of variation of the
drawn from software testing can break down the
system on multiple levels is claimed to be of aesthetic
program, and are combined with psychological analysis
worth by generative artists, and becomes the very factor
of associated musical resultants.
that challenges analysis.
A key question then is the extent to which any system
can truly claim a varied output, and how to measure and 4.1. Black box and white box testing
analyse the extent and content of productions; in short,
Investigation of the relation of source to productions
how many runs are representative? Musics innate can be informed by a consideration of the difference
combinatoriality of material lies in wait for us here between black box and white box testing in software
(Prokofiev 1978: 469). As Sergei Sergeyevich noted engineering (Lano and Haughton 1993; Myers 2004). In
even in the case of a classical melody, the explosion of black box testing, the program is left unopened, perhaps
the parameter space size with each new choice of note because it is only available as a binary executable that
pitch guarantees a world of useful productions. Most cannot easily be cracked and returned to human
parameter spaces for programs are bigger than the readable code (many comments and clues would be
number of atoms in the observable universe (Collins lost forever even if this could be achieved). In white box
2002). If linked to a single random seed, this scope is testing, access is granted to the original code itself, from
reduced to a number of paths (possible productions) which a more detailed analysis of possible productions
controlled by the number of distinct values of the seed. should be possible. In practice, software testing is a hard
To give an example, in SuperCollider the seed is given by pursuit; Myers (2004) claims it to require more ingenuity
three 32 bit numbers, or of the order of 1028 options, so than devising the actual program.
that it would take more than 1023 years to listen Testing within a framework of software engineering
continuously to all possible three-minute productions; may rest upon knowledge of the task specification, from
the universe is estimated to be 14 billion, or of the order which unit tests can be devised; yet in the worst case we
of 1010 years old. In an infinite play situation, just may have a sealed executable program with little or no
running from one seed, the pseudo-random number information from the author as to its intended out-
generation draws an infinite number of times with a comes. Anti-archivists might imagine a future civilisa-
period of 288 and the full combinatorics in interaction tion somehow desiring to reverse engineer the
with the mathematical parameter space is frighteningly generative musical works of a lost digital media scene.
large. It is always more helpful to have access to the original
The Analysis of Generative Music Programs 241

representational source rather than indirect evidence of will follow a normal distribution within the parameter
that source. In some cases, reasonable assumptions space. Random sampling (running the program over
may lead one to reverse engineer the contents of a black and over) must provide good representatives so that
box. This process is perhaps already familiar from tests on the sample are indicative of true population
technical analysis of electronic music works released behaviour using standard statistical procedures
without their studio sources (for example, the actual (Spiegel, Schiller and Srinivasan 2000). Nevertheless, a
sequencer data which gave rise to a piece). pragmatic approach is reasonable; most statistical tests
A note of caution: assumptions of reasonable are relatively robust, and there is little else that can be
behaviour are essential. Marsdens Maxim might be done than take a sampling of outputs.
borne in mind: It should be noted, however, that the choice of how
many to take may be influenced by the decision on how
To establish a system for representing any aspect of music
is almost a challenge to a composer to invent music which to analyse and compare the productions themselves; for
the system is incapable of representing. (Marsden 2000: what may seem a reasonable cross-section of represen-
168) tatives with respect to one musical facet may not be
exhaustive of productions for the generative program
Composers can always devise generative music pro- with respect to another. This may form the key basis for
grams that are difficult to analyse. Imagine a program criticism of any individual analysis of a given work, and
that is set to generate bland clicks on its first hundred at the least, if publishing work, one must take care to
runs, but fires into a wondrous world of sound on the make assumptions explicit over sampling procedure.
hundred and first. Deliberate statistical perversity For the white box testing case, given the relation of code
like this has to be discounted in keeping analysis to outputs, in certain situations it may be possible to
tractable. make an argument that coverage of program avenues is
In some cases, the exact details of the generative sufficiently complete to provide an accurate sample.
program may not be recoverable, or necessarily To sample more productions, it would be convenient
essential. Indeed, dissimilar program code can still if we could run an automated critic/analyser; this is a
achieve a sufficiently similar or identical musical output, further computer program that embodies a particular
as judged from psychoacoustical and cognitive con- analytical model, just as the generative music program
siderations (determining similar categorical boundaries) may represent a compositional model. Yet we must
or from multiple software representations leading to the collate the database of output versions first. This
same answer. Listening tests (Pearce and Wiggins collation may not be possible at anything less than
2001) or further automated analysis on a sample of realtime speed, given the performance character of those
recordings may be preferred approaches, focused more generative works we have been considering (and there
strongly on the production side. But, wherever possible, are algorithmic composition programs that are slower
white box testing is preferred as giving additional than realtime too). In certain cases, with access to the
insight. source, the code may be adaptable to a faster than
realtime rendering mode to assist this. Nevertheless, it
4.2. Representatives must still be argued that the database so formed is
indicative of productions, which itself may require
We could always run a generative music program once realtime playback of representatives (an argument from
only, harvest a single production of five minutes, and code would be necessary to circumvent this, proving yet
claim this to be representative of the work. Any again the intimate relation of source and productions in
conventional aural and musicological analysis can then this analytical dialogue).
be applied to the fixed product so obtained. Once created, a database is amenable to automated
Unfortunately, this would be a gross abuse of the analysis methods, essentially music transcription meth-
reality of generative music systems, which are designed ods from current disciplines such as music information
to create multiple productions; we would have learnt retrieval. The usual issues of computational auditory
nothing of the mechanisms by which such programs analysis are inevitably raised, for we are depending on
operate, of the musical model underlying them, and of signal processing routines instead of the human ear, and
the scope of future productions from that program. The computational methods have not exhibited anything
paradigm shift from composing single works to creating like the acuity of the human auditory system. A
machines that embody a compositional theory creates a caricature of current research might acknowledge
more difficult analytical problem. Multiple representa- certain gross timbral measures and transcriptions with
tive productions must be drawn from the artefact; the success rates from 40 to 80% or so as currently available
question then becomes, how many are actually repre- (Klapuri 2004, or see the results of recent MIREX
sentative? algorithm evaluation contests); yet transcription is
This question can be posed as a statistical problem. sometimes ill-defined and most auditory mechanisms
Unfortunately, there is no guarantee that productions remain beyond the state of the art. However, there is
242 Nick Collins

some hope that mechanisms may be found that (verified a computer-music system designer; these demo exam-
through independent psychological tests) can be ples provide a small-scale test commensurate with the
employed with some reasonable trustworthiness. space available. Future articles may confront in depth
Indeed, the domain of computer-generated work is the cases of particular larger-scale generative music
challenging enough that investigation of such technol- programs.
ogy may be enforced. To place one last proviso, effective All code is open source under the GNU GPL licence
auditory models are not necessarily going to calculate at for SuperCollider and this allows white box testing and
any rate much faster than the human brain itself, and easy modification for assessment. I have preserved
may be orders of magnitude slower. Since the human James McCartneys original comments, added a few
mind is the arbiter of musical appreciation and social additional comments, and tried to make the code
musical discourse, and the automatic transcription generally presentable so that even a reader with little
technology will always fall somewhat short of being a SuperCollider knowledge can at least have a chance of
real human being, it would be unsurprising that the seeing what is going on. To assist understanding,
human mind remain the best judge. natural language pseudocode of each program is also
The reader may be wondering if reductionism might provided, though the provisos about reductionism must
help us? Where we have access, can we simplify the be borne in mind; these reductions should be taken as
procedural code (if not the psychological space model)? aides for the reader, and cannot encapsulate every detail
We surely risk losing increasingly obvious nuances of of the full programs. Full understanding of the code
the composition; in fact, we may irrevocably damage the itself necessarily rests on studying the programming
composition with any such step, particularly for language in question, an essential skill for generative
emergent non-modular behaviour. An example will be music analysis which employs white box testing. Certain
given below where two characters added to a program lines are marked in the comments with a /*x*/ number,
substantially alter its audible output. Spotting such which allows them to be further discussed in the main
situations requires some heavy duty software engineer- body of the text, and the pseudocode also maintains
ing, and justifying substitutions may require exactly the these markings at the critical place as carefully as
same analysis that we were seeking to make in the first possible given the reductionism.
place.
For those who may have reservations on the
5.1. Synthetic Piano by James McCartney
programme I have outlined here, I note that I make
no rigid stipulation of the exact musicological assump- To accompany the analysis here, figure 1 gives the
tions that must be applied. I favour myself a full original SC code, figure 2 pseudocode, and figure 3
grounding in psychophysics and the psychology of compares spectrograms for two 30-second productions
music; others might consider the timbral and spatial created with the Synthetic Piano program. In order to
concerns of spectromorphology primary, and these are keep the visuals uncluttered, figure 3 was created using a
not irreconcilable. But I hope I have provided some mono version of the program with only three voices
justification for treating both program and productions, rather than six. These spectrograms may be useful for
and indicated a need to bridge between process and the reader to visualise the exact repetition of each note at
product if we are to truly analyse and explore a particular phase and period; since the top and bottom
algorithmic music programs. spectrograms are from consecutive runs, they provide a
limited view into the variation of the program, but we
must be very careful not to read too perfect an aural
5. EXAMPLE ANALYSES
analysis into the spectrograms, nor take two runs as
Having raised many potential problems within the necessarily representative.
analysis of computer-generated music, it is still I believe The example code (originally for SC2, 1998) is
feasible to tackle such analysis, taking care to be explicit devised entirely as a specification for a sound synthesis
about our sampling and musical assumptions. This patch, defining a particular unit generator (UGen)
section will include two analyses of short works by graph to run on the SuperCollider synthesis server.
James McCartney, the original author of the However, each time the patch is run, it generates a graph
SuperCollider audio programming language differing in certain properties sufficient to give varied
(McCartney 2002), which illustrate the points made in aural output. The sound synthesis method is a simple
the preceding sections of this article. The pieces are but effective source plus filter physical model, using an
demo examples available in the (open source) excitation pulse (a smoothed impulse train) passed
SuperCollider distribution, and were chosen in part through a tuned comb filter, thus approximating a
for their easy availability and in part because the terse Karplus-Strong model. The patch has n voices, n being
but dynamic work of McCartney rewards study. the sole input parameter specifiable by a user, defaulting
McCartney is not an official establishment composer to n56 notes as set initially at /*1*/. There is also a
(which may be for the better!) and is known far more as hidden parameter, the seed for the random number
The Analysis of Generative Music Programs 243

Figure 1. Original SuperCollider code for Synthetic Piano with added comments.

Figure 2. Pseudocode reduction of figure 1.

generator, which is controlling the rolls of the dice for 24794911296 for n56. This number might be limited
/*2*/ and /*3*/. A separate random number generator is further by considering transpositional equivalence,
implicated in the LFNoise2 UGen on line /*4*/, but it though there is a further timbral implication; but the
runs during the live synthesis rather than in the mathematical combinatoriality is evident.
initialisation of the UGen graph. /*3*/ introduces a further proliferation of options, by
Listening to the patch a number of times will quickly determining the strike rate of each string in terms of
convince a listener that the process is relatively period and phase. Whilst floating point ranges are used,
constrained; indeed, the shortness of the code example psychological considerations of temporal perception
here is sufficient to convince oneself of the limits of the might limit the options. The range of possible periods is
psychological parameter space. Since the program from 2 to 10 seconds (frequencies of 0.1 to 0.5 Hz), and
effectively determines the base (MIDI note) pitch of phase can take any value within the cycle; since human
the strings at each run, from a range of 54 options temporal perception is unreliable for periods greater
(54.rand at /*2*/), there are 54n possibilities, thus only than 2 seconds (London 2004), we might substantially
244 Nick Collins

Figure 3. Comparing spectrograms of two (mono) productions from the Synthetic Piano code, each 30 seconds long.

drop the number of options; the temporal result is directives of structure and exhibiting a flat hierarchy,
somewhat like a slow mobile set in motion, where the form is coincidental, not planned, a consequence of
recurrence of certain voices and the tracking of phase linear probability distributions over initialisation para-
relationships is inherently difficult. A coarse analysis meters primarily at /*2*/ and /*3*/.
might claim that the temporal information is of no Given the amount that might be said concerning this
significance in accounting for inter-run variation at this patch in relation to its size (and whose perceptual effect
point. There is one quirk however; an Impulse UGen might be the subject of further listening tests with
should usually have a starting phase from 0 to 1.0, as a multiple subjects) the compressive benefit of generative
proportion of a cycle. Those in the synthetic piano patch systems is evident. As one final observation, consider
are initialised from 0 to 2pi; due to an interaction with the addition of two characters to /*2*/, namely 54.rand
the low-level specification of the Impulse itself (obtain- becoming 54.0.rand. The switch to a floating point
able only because SC is open source), any phase value range now brings in microtones; at an estimate of
greater than 1 will cause an initial strike on starting the microtonal sensitivity at 24th tones, the parameter space
patch, such that a near aggregate chord across the keys grows by a further 12n and twelve tone equal tempera-
of the piano is heard commencing each run. This ment is immediately lost! This is pointed out as evidence
behaviour could be corrected by 1.0.rand instead of of the heady consequences of even small changes to
2pi.rand in line /*3*/. It is hard to say whether this is source code.
deliberate or a mistake in converting the code from SC2
to SC3 in 2002; one is reminded of the errors in
5.2. From a workshop given by James McCartney in
Xenakiss GENDYN code (Xenakis 1992), which are
Santa Cruz on 6 June 2003
certainly part of its character.
Some elements of the patch are deterministic; in other The second realtime algorithmic music program was
words, the pan positions depend on the pitch of each key originally conceived as an example for a workshop
(/*5*/). Various constants scattered through the patch (McCartney 2003), and is in two parts, the first
can be modified, perhaps departing from the authors comprising a generation of particular recipes for the
original intent, but providing clues to the empirical sound synthesis of metallic percussion sounds, and the
construction of the patch; for example, McCartneys second specifying the realtime scheduling of those
original comment admits choosing 3000 Hz by ear at sounds. In this manner, since either part may be
/*4*/. Summarising the generative system, it may be renewed when desired, the work has a certain generative
viewed as a soundscape generator; lacking longer term ambiguity; there are issues here of the reusability of code
The Analysis of Generative Music Programs 245

and the potential of different code substituting either 0.2 to 1.0 seconds (/*2*/) passed through a filterbank
part. In the original (http://lists.create.ucsb.edu/ represented by the Klank UGen (/*3*/). Parameters
pipermail/sc-users/2003-June/004129.html), there is also of this filterbank are all drawn from appropriate
a further separate effects unit with mouse control, which ranges, exponentially for filter centre frequencies and
is added once the process is underway, but this optional ring times, and linearly for amplitude gains (though
extra is kept from this example for reasons of space, and this might also have been made exponential through
to sidestep further issues of interaction. the use of decibels, for instance). The number of
Again, the analysis is accompanied by original source filters in the filterbank is defined by n512 at /*1*/,
code (figure 4), a pseudocode reduction (figure 5) and a though again this constant might be modified by the
visual aide. The spectrogram in figure 6 was created user; tests show that for low n, the spectral recipe is
from 20 seconds worth of one mono production, for a too simple, producing singular ring components that
limited demonstration of density and timbral properties fail to simulate the body responses of real world
only, as discussed below. objects, but instead sound like 1950s studio experi-
Treating the definitions of the metallic sounds first ments. Higher n (i.e. n530) are not particularly
(the first block of code in figure 4 in outer parentheses, different to n512, but increase the sense of a
with the SynthDef construct), aural comparison con- blacksmiths forge (more violently struck metals).
firms the use of metallic plate sounds with varying All sounds are panned randomly within a flat plane
resonances. The sound synthesis method revealed by square four-speaker set-up by the PanAz UGen (/
the source code is that of a white noise excitation *4*/); McCartneys entire workshop was carried out
shaped by a decaying impulse linearly drawn from with such a spatialisation.

Figure 4. Original SuperCollider code for Santa Cruz workshop piece with added comments.
246 Nick Collins

Figure 5. Pseudocode reduction of Figure 4.

Figure 6. Spectrogram of 20 seconds of sample (mono) output from the Santa Cruz program, demonstrating the rhythmic
densities and spectral recipes in play.

It should be noted with respect to earlier comments example piece is to point to the beauty of the code at
on automated analysis that we could analyse the /*8*/. The infinite scheduling loop (within the Task) is
spectral variety of sounds in this instance by, say, designed to wait for a certain duration, the current value
generating 400 and comparing their spectral recipes. Yet of the dur variable initialised at /*5*/, between triggering
the SynthDef itself already gives us the spectral sounds. The duration is expressed (by default) in
properties of the filter, and this is a case where the seconds, but in /*8*/ is itself used to form the probability
human ear is trusted, in alliance with an understanding of taking on a new value; in effect, long durations give a
of the sound synthesis method employed. There is no high chance of change, for isolated slow pauses, and low
doubt that representatives of the sounds in this case are values give a low chance of change that cause flurries of
well covered by reasonable sampling of this nature. fast events. Durations over 1 (1.6 being the only option)
Moving onto the scheduling portion of the work, one are guaranteed to only happen once before a new choice
of the chief motivations in analysing this particular of duration. However, the durations are chosen from an
The Analysis of Generative Music Programs 247

array with a linear distribution, so there is a one in ten approach have been given for short generative works by
chance of two 1.6-second gaps in a row, a one in a James McCartney. But no claim is made that this article
hundred chance of three, and so on. At the other end of somehow embodies a complete set of tools and
the scale, the 0.05 gap might on average correspond to approaches for analysis, even if there could ever be a
twenty repetitions before a change of the duration value. final solution to the problems of analysis. Inevitably,
In rhythmic terms, ten events per second is the human there is a great deal more to learn as we tackle this music.
motor limit for repetitive actions without chunking There are no doubt other profitable avenues that might
(London 2004), so 20Hz action is inhuman; there is no be transplanted to the domain of generative music
jitter or other expressive timing built in, so that the program analysis, from musicological insights on
machine quality is evident. This all adds up to an corpuses and style, to generative linguistics and
arresting rhythmic sequence that is definitely inhuman; creativity in musical improvisation. It is also hoped
our categorical perception of rhythmic values in relation that computer-generated-music analysis may be related
to metrical structure tends to make it difficult for us to to and also give some entry to issues in the analysis of
deal with ten distinct time values as accurately as the interactive music systems, where responses are founded
computer. on generative techniques.
Timbral variation is achieved by exploiting the forty Indeed, the difficulty of treating complex algorithmic
stored sounds and their control parameters through music systems has only been touched on; how could a
/*7*/, which scales the spectra of filter frequencies. A meta-system be approached, created to itself create
new instrument and amplitude is selected on average generative music programs? How can investigation be
every 3.33 strikes due to /*6*/. Yet the overall effect is scaled up to deliberately massive algorithmic works?
one of subtle timbral variation, due to the uniform These are questions that could keep analysis busy for an
sound synthesis method underlying the instruments; infinite length of time; it is tempting to build a generative
the listener is within a manic metallic machine that has program for the analysis of computer-generated
the capacity to pause in dramatic fashion. The patch music
has the character of a demonstration, but could be a
stepping-off point for something much richer; yet, it
still provides plenty of food for thought for the ACKNOWLEDGEMENTS
algorithmic music analyst, belying its size as a morsel The author wishes to thank Andrew Brown and four
of code. anonymous reviewers, who did much to improve the
Neither of the two example programs tackled above articles accessibility and remit.
shows longer-term form or significant variation of
output in the way being designed into some current
algorithmic music systems. They are simply entry-level REFERENCES
works to enable the grasping of the problems of analysis
Ames, C. 1987. Automated Composition in Retrospect 1956
in this domain, and were picked as much as anything for
1986. Leonardo 20(2): 16986.
their terseness, which allows the whole program to be
Boden, M. 2007. What is Generative Art? COGS seminar,
examined here. Future analyses may take an entire University of Sussex, 2 October 2007.
article to tackle one single work, and only be able to Chadabe, J. 1997. Electric Sound: The Past and Promise of
quote salient extracts of code. It remains an open Electronic Music. New Jersey: Prentice Hall.
question to consider how the ploys discussed in this Chaitin, G. 2007. Meta Maths: The Quest for Omega. London:
article might scale up to creative systems built to engage Atlantic Books.
in much more challenging and varied behaviour. Collins, N. 2002. Infinite Length Pieces: A Users Guide.
Proceedings of MAXIS, Sheffield, April.
Collins, N. 2003. Generative Music and Laptop Performance.
6. CONCLUSIONS Contemporary Music Review 22(4): 6779.
Artists are drawn to the medium of generative music for Cox, C. and Warner, D. (eds.) 2004. Audio Culture: Readings
many reasons, from compressive benefits through love in Modern Music. New York: Continuum.
of system to love of the infinite. An analytical Eacott, J. 2000. Form and Transience Generative Music
Composition in Practice. In Proceedings of Generative Art,
engagement with these works is productive and healthy
Milan.
to much contemporary artistic endeavour, for the artists
Eacott, J. 2006. Contents May Vary: the Play and Behaviour of
as much as the musicologists. This article has sought to Generative Music Artefacts. PhD thesis, University of
clear up some of the history and terminology surround- Westminster, submitted June 2006.
ing generative music, focusing in on generative music Eno, B. 1996. Generative Music. In Motion Magazine.
computer programs in particular. Available online at http://www.inmotionmagazine.com/
The methodology outlined in this article is grounded eno1.html.
in software testing techniques and in literature on sound Galanter, P. 2006. Generative Art and Rules-Based Art.
synthesis and music cognition. Two examples of this vagueterrain03. http://vagueterrain.net June 2006.
248 Nick Collins

Klapuri, A. P. 2004. Automatic Music Transcription as we McCormack, J., and Dorin, A. 2001. Art, Emergence and the
Know it Today. Journal of New Music Research 33(3): Computational Sublime. In A. Dorin (ed.) Proceedings of
26982. Second Iteration: A Conference on Generative Systems in the
Koenig, G. M. 1989. Aesthetic Integration of Computer- Electronic Arts. Melbourne: CEMA, pp. 6781.
Composed Scores. In C. Roads (ed.) The Music Machine. Myers, G. J. 2004. The Art of Software Testing. Revised and
Cambridge, MA: MIT Press. updated by T. Badgett, T. M. Thomas and C. Sandler,
Lakoff, G. 1987. Women, Fire, and Dangerous Things. Hoboken, NJ: John Wiley and Sons.
Chicago: University of Chicago Press. Pearce, M. T., and Wiggins, G. A. 2001. Towards a
Lano, K., and Haughton, H. 1993. Reverse Engineering and Framework for the Evaluation of Machine Compo-
Software Maintenance: A Practical Approach. Maidenhead: sitions. In Proceedings of the AISB01 Symposium on
McGraw-Hill Book Company. Artificial Intelligence and Creativity in the Arts and
Laske, O. 1989. Compositional Theory in Koenigs Project Sciences. Brighton: SSAISB, pp. 2232.
One and Project Two. In C. Roads (ed.) The Music Pearce, M., Meredith, D., and Wiggins, G. A. 2002.
Machine. Cambridge, MA: MIT Press. Motivations and Methodologies for Automation of the
LeWitt, S. 1967. Paragraphs on Conceptual Art. Artforum Compositional Process. Musicae Scientiae 6(2): 11947.
5(10) (June): 7983. Prokofiev, S. 1978. Sergei Prokofiev: Material, Articles and
London, J. 2004. Hearing in Time: Psychological Aspects of Interviews. Compiled by Blok, USSR: V. Progress
Musical Meter. New York: Oxford University Press. Publishers.
Loy, G. 2006. Musimathics (Vol. 1). Cambridge, MA: MIT Rowe, R. 1993. Interactive Music Systems. Cambridge, MA:
Press. MIT Press.
Magnusson, T., and Magnusson, R. 2007. SameSame- Searle, J. R. 2004. Mind: A Brief Introduction. New York:
ButDifferent v.02 Iceland. YLEM Journal: Artists Oxford University Press.
Using Science and Technology 27 (Summer). Spiegel, M. R., Schiller, J., and Srinivasan, R. A. 2000.
Marsden, A. 2000. Representing Musical Time: A Temporal- Probability and Statistics. New York: McGraw-Hill.
Logic Approach. Lisse: Swets and Zeitlinger. von Arn, L. Human Computation. Google TechTalks, 26
McCartney, J. 2002. Rethinking the Computer Music July 2006. http://video.google.com/videoplay?docid5
Language: SuperCollider. Computer Music Journal 26(4): 8246463980976635143.
618. Ward, A., and Cox, G. 1999. How I Drew One of My Pictures:
McCartney, J. 2003. SuperCollider workshop at the Felix or, The Authorship of Generative Art. Available at http://
Kulpa Gallery, Santa Cruz, California, USA, 6 June 2003. www.generative.net/papers/authorship/index.html.
http://lists.create.ucsb.edu/pipermail/sc-users/2003-June/ Xenakis, I. 1992. Formalized Music. Stuyvesant, NY:
004114.html. Pendragon Press.

You might also like