|
Creating your music within
the digital domain requires it to be
described by musical recipes, or algorithms.
This section looks at how to create these algorithms,
and at some common algorithmic techniques used by musicians.
|
|
|
|
Musical Algorithms - By Paul Doornbusch
An algorithm is a precise step-by-step procedure to solve a problem,
often of a mathematical or computational nature. A recipe is like an algorithm.
Musical algorithms specify ways to generate musical parameters. Typically
these parameters are the large-scale specification of musical events,
such as frequency, intensity, duration, density and so on. Broadly, musical
algorithms can be classified into two groups; those that attempt to implement
some part of music theory and those that take a more general approach
towards composition. The music theory approach has attracted the most
attention, but the musical results have been less than aesthetically compelling.
In the 1950s and 60s two composers took the other approach and were successful
in creating compelling musical works, they were Iannis Xenakis and Gottfried
Michael Koenig. Xenakis used probabilities and probability theory to compose
free stochastic music by controlling shapes, densities, contours, areas
and so on. The force of Xenakis’ vision and music established these
ideas as compositionally useful abstractions. Koenig took a different
approach where he generalised from his current composition practice into
simple abstractions and building tools (Project 1 and Project 2) to implement
the ideas.
As musical algorithms are ways to generate musical data, there is little
point in distinguishing between signal processing algorithms and musical
algorithms designed for a higher level of organisation, as the two are
very closely linked. Musical signal processing algorithms may be considered
musical algorithms for the micro-form or micro-scale, and the ideas and
abstractions of both the micro and macro forms often overlap.
There are many types of musical algorithm and these may be classified
by the type of abstraction they represent. There are many which generate
random numbers using statistical theory, such as linear, gauchy and beta
distributions of random numbers. Others may filter their input to impose
a “shape” on the (unstructured) data, such as tendency masks.
Other examples of abstractions useful for musical algorithms are; genetic
recombinatorial algorithms which generate musical data with processes
based on genetic models, cellular automata algorithms may generate musically
useful data and chaotic functions may be musically interesting. Other
musically useful algorithms exist and there will undoubtably be many more
developed. It is worth noting that using data generated or structured
through and algorithm usually provides the data with some structure and
composers and performers seek to use this to provide new structural possibilities
to their music.
|