MCLD's music · Oddmusic

MCLD is a computer programmer and experimental musician living in Finchley (London).

In 2004 he released an album of experimental beatbox music, only minutes before both Tom Waits and Björk did exactly the same thing.

MCLD's latest work is his Evolutionary Sound System - created by Darwinian natural selection on individual units of sound. The tracks are produced entirely using a music programming language called SuperCollider, creating an evolutionary sound environment, with which the artist can interact in a live setting.

An individual sound is a "creature" with a set of digital "genes", and each creature's "phenome" (the way it sounds) is a product of its genetic inheritance from its parents. The composer has no way of predicting the sound, but defines a procedure for turning genome into phenome, just like the machinery in our cells which knows how to turn any given pattern of the four symbols A, C, T, and G into a sequence of amino acids.

The music is like a delicately-balanced ecosystem. The whole is more than the sum of its parts, and each audio "creature"'s fate depends on the actions of others.

The automatically-generated algorithms which produce the sound go far beyond what a human could program, certainly when you consider that the music is generated entirely in real- time - there are no samples, and no predefined sound settings. The music starts from random initial conditions and changes according to algorithms and to the performer's input. It's essentially a computer and a human improvising together, with nothing predefined except a recipe for making things change.


These MP3s are all recorded live - no added effects, no post-processing:

From the tis evolution EP:
  1. 2005-09-24 (7.2MB, 21:06)
  2. 2005-09-30 (1.8MB, 5:10)
  3. 2005-09-29 (2.4MB, 7:01)
From the scwork EP:
  1. OwnDrone v20050812 (5.1MB, 3:43)

More information

Darwinian evolution, and how to make it happen inside a computer

Darwinian natural selection is basically a simple concept, but incredibly powerful.

The ideas behind natural selection are so straightforward that they can be applied to almost anything. In recent years computer scientists and designers have realised that natural selection can be implemented within a computer, evolving virtual "creatures" to grow and change, driven by criteria indicating what the designers want from the process.

All that is needed is that the basic principles of Darwinian evolution are in operation:

  1. The virtual creatures can have offspring which inherit their characteristics (the TRANSMISSION condition)
  2. The inherited characteristics can vary (the VARIABILITY condition)
  3. The interaction between the virtual creatures' characteristics and their environment exerts "selection pressure" - it causes some creatures to be more likely to reproduce than others (the SELECTION condition)

Anything in computer-aided design can be a virtual creature - for example, a design for a table, or an anti-HIV drug (real-life examples, those). So, basically, anything can evolve.

Within a computer, you need to create a structure which represents an "individual", and a structure which represents an evolutionary "ecosystem" within which the individuals can live, mate, and die. This kind of thing is probably easiest in an object-oriented language since these conceptual structures are themselves like objects.

If you're interested in learning about the ins and outs of how to actually go about making this happen, I recommend this book:

Peter J Bentley (ed.) 1999, "Evolutionary design by computers", ISBN 155860605X

Source code

For those who are interested in programming or know SuperCollider, you might like to peruse the source code for a part of my system.

A historical note

Some years ago I tried to implement evolutionary music algorithms in Java. That wasn't very successful at all. The results were broadcast on the internet briefly, but no particularly musical sound really resulted. SuperCollider is much better for music...