Algorithmic Composition in Shoals

Symbolic Composer environment and code.

Please note: some links on this page are in maintenance.

One feature of this collection of six pieces for student ensembles is that three of the pieces were composed directly using algorithmic techniques. As such the music exists in computer code as well as music notation. One of the advantages of the former is that code can reveal how the music was composed. The code is a trace of the composer’s thoughts and decisions presented in a way that a notated score can never achieve. As part of the educational emphasis of the Shoals project it seems entirely appropriate to publish the code of these three pieces in these annotated versions by Phil Legard.

The three algorithmically-generated pieces were composed in the computer language Common Lisp via an application called Symbolic Composer.

Common Lisp has become a favoured language of the international centres for computer music research, at IRCAM in France, CCRMA in California and the ICCMR in the UK. Nigel Morgan has used Lisp for over 20 years and many of his most ambitious scores are written in this language.

Blaze – code and score.

All the Shoals scores have some connection to a poem by Robert Francis. Deep Sea Diver is not only a fine poem to set to music for voice, but also fascinating to explore as the basis for instrumental work. In 2010 Nigel Morgan began to explore the direct conversion of a written text, a long prose poem, into an instrumental music score.

Quintet for piano and winds was created by devising a computer programme capable of analysing the syntax of such a text and applying different transformations to nouns, verbs, articles, connectives and so on. Theresult was intriguing and powerful enough to convince the composer it might be used, albeit in quite different ways, with the Robert Francis poem. Both Blaze and Into the Green Inverted Dawn use the poem’s text directly to generate pitch and rhythm.

Hopalong algorithm and opening of To the Dark Unseen.

To the Dark Unseen employs a quite different approach. This piece is like a mini double concerto in three sections for two violins accompanied by two string quartets. The quartets play only open strings and harmonics and the second quartet is tuned a whole tone lower than normal. The solo violins play from music generated by a hopalong algorithm, a kind of ‘strange attractor’. The ensemble parts come out of a graphic score (showing when players are busy or silent) whose orchestration and activity is derived from a magic square algorithm.

All three pieces were modelled in MIDI simulations created directly from the scorefiles. In examining the code it might be valuable to use these simulations as a guide rather than the live performances, particularly that of Blaze.


Blaze annotated code [pdf][mp3s(zip)]

To the Dark Unseen annotated code [pdf][mp3]

Into the Green Inverted Dawn annotated code [pdf] [mp3]