In the 1950s, Cybernetician Ross Ashby built an electro-mechanical machine called the homeostat. By all accounts the thing itself was an engaging machine, but its notoriety in certain circles is due to the theoretical ideas that it incarnated. One of the conundrums that preoccupied Ashby, was how a system (biological or mechanical) could be at once state determined, and yet adapt to a changing environment and learn. Ashby (1952) proposed that one of the key mechanisms underlying adaptive behaviour is homeostasis, and like all good cyberneticians, provided a concrete, physical device to demonstrate his theoretical notion of ultrastability.

Adaptive behaviour is a major research topic in contemporary cognitive science, and indeed the importance of homeostatic adaptation is re-emerging in philosophical circles as a key aspect for understanding of life, mind, autonomy etc. (e.g. Di Paolo (2005)). Basic homeostatic adaptation is the starting point for the current exploration of adaptive systems for interactive and generative music. Iconically and practically then, Ashby's homeostat provides inspiration for one of the central conceptual and algorithmic devices used throughout many of the audio projects presented here.

homeostat diagram

Ashby's machine consisted of four units with a pivoted magnet on top of each. The angular deviation of each magnet's position representing the essential variables which were to be maintained within a certain angle. Each magnet had a wire hanging off it that trailed in a trough of liquid, creating a direct relation between the angle of deviation and the current running through it. These electrical connections model the primary feedback, where any one unit can be conceptualised (arbitrarily) as representing either the environment, or the sensorimotor system of an agent in that environment. Each unit also had a recurrent connection. The current on each was modified by passing it through a commutator and potentiometer which determined the polarity and proportion of each input which is passed. These act as parameters to the system, implementing a secondary feedback which was controlled by a uniselector on each unit. If the angle of deviation exceeds 45 degrees, new values are assigned to the commutator and potentiomenter at each unit.

''When these parameters are given a definite set of values, the magnets show some definite pattern of behaviour; for the parameters determine the field, and thus the lines of behaviour. If the field is stable, the four magnets move to the central position, where they actively resist any attempt to displace them. If displaced, co-ordinated activity brings them back to the centre. Other parameter-settings may, however, give instability; in which case, a 'runaway' occurs and the magnets diverge from the central positions with increasing velocity - till they hit the ends of the trough'' - Ashby (1952), pp.102-103

By a process of trial and error, the machine is able to maintain its essential variables within specified limits. Ashby also demonstrated that the machine could exhibit basic re- inforcement learning, adapting to alternate environments and presented it as an example of basic self-organisation.


I simulated key aspects of Ashby's machine in a neural-network style model. The machine is conceived as a network of I units, each connected to J other units (shown schematically on the right) where the output of each unit is updated according to the weighted sum of the output of all other nodes (these weights modelling the potentiometers and commutators described by Ashby). In this simulation if the output of any node exceeds a pre-specified value, weights connecting units in the network are re-randomised, simulating the role of the uniselectors in assigning the system parameters. As in Ashby's machine, the recurrent connection is held constant.

homeostat schematic
Behaviour homeostat response to perturbation

The model recreates the basic properties of Ashby's machine. The figure on the left shows the outputs of a four unit homeostat demonstrating stability to a minor perturbation (a) and re-stability (this time in an oscillatory state) after a critical perturbation.

In very simple terms, the homeostat provides a responsive pattern generator for generative music. For a given parameter set, it produces qualitatively similar behaviour to an input whilst creating constant variation.

Various different mapping schemes were used to explore the potential of this model for generating both rhythmic and harmonic material. Examples are given below.

Audio examples

listen Simple oscillator example.
The outputs of a ten unit homeostat control the frequency of ten sine wave oscillators, offset by a small amount to increase clarity. The initially unstable network settles with each input entering a limit cycle of a different length. This produces a minimal poly-rhythmic loop.

listen Microtonal variation with melodic line.
A similar mapping made using MIDI. Here the outputs of a four unit network are mapped to pitch bend, producing microtones of 1/32th tone. The effect of applying a small input to a stable network can be heard: at around 10", the regular pattern deviates for a few cycles and is then reinstated. This track also illustrates the effect of employing multiple mappings. As well as mapping outputs to a continuous pitch variation, a melodic line is created by using the output of each unit to specify the pitch of a percussion instrument. The timing for each unit is determined by selecting random number N for each unit in the range (2,10) and voicing its pitch every ni beats. This creates a strange harmonised melody line.

listen Sample splicing and re-mixing.
As well as determining low level musical attributes, the homeostat works well as a method of re-mixing existing audio material. In this example, the output range of the homeostat is scaled to the length of an audio track. The original piece is Planting trees, creating beauty by Norweigan trumpeter Arve Henriksen. At each update, a short sample from the source material is triggered by each unit, the position being determined according to the value of each output. Rather than each output playing its selection on every beat, the sound is thinned out by specifying that some outputs only play when negative, some positive. This creates changes in density as well as changes in content. A similar mapping process was used in the Self-karaoke system where the source material is sampled live from an improvising instrumentalist.

In this example you can hear transitions through various stable (oscillatory) states. The viscosity is altered, causing the system to be more and less 'stiff'. Sonically this creates periods of stasis and exploration.

listen Filter automation.
In the examples above, the oscillatory behaviour of the homeostat were used to generate musical material directly. When the homeostat settles quickly to a point attractor its dynamic response can be put to good effect as an automated effects device. The change in the outputs of the four units are scaled, and used to control the amplitude of the first 30 bins of a spectral filter, the remaining set at zero. The filter works by performing a Fast Fourier Transform (FFT) on an incoming audio signal and splitting the signal into a number of bins. The amplitude of each can be individually controlled. In this example, the audio input is Morton Feldman's Piano Piece for Three Hands, which is provided dry in the example along with the filtered output. Rather than applying an input by hand as in the case of the examples above, the amplitude of each attack in the piano part is analysed and used as the input to unit one of the homeostat.

listen Homeostat and Cellular Automata used in conjunction.
This example uses a self-regulating homeostat in conjunction with a Cellular Automata to create harmonic and rhythmic parts. The homeostat outputs are used to define the frequencies of micro-tonal drones chords, and the CA models determines the rhythmic content. The system is described in chapter vi of my thesis. This model was used in the Self-Karaoke Machines project for installation and live performance.

Experiments, installations and performances made with various versions of the homeostat model are described in the following papers:

A.Eldridge (2002) Adaptive Systems Music: Algorithmic Process as Musical Form. Proceedings of Generative Art Milan, 2002.

A.Eldridge (2005) Cyborg dancing: generative systems for man machine musical improvisation Proceedings of third Iteration Melbourne, Australia 2005. pp 129 - 141

A.Eldridge (2005) Fond Punctions: Generative Processes in Live improvised performance Proceedings of Generative Arts Practice Sydney, Australia 2005. pp 41 - 51

For a discussion of the relevance of Artificial Life models to composers see chapter iv of my thesis.

Made at Creative Systems Lab and CCNR, Sussex University.

© ecila. 2010