Algorithmic composition

As algorithmic composition (AK ) is called those composition processes in which the score is generated by an automatic, mathematically describable process or algorithm.

In principle, each piece of music can be represented as a sequence of numbers: Is it possible for an instrument to vary the pitch as well as the velocity and duration of a note, then each note is represented with three numbers.

AK is somewhat simplifies the development of rules that generate such musically interpretable sequences. In today's practice, this is usually the development of a computer program; However, computers are not necessarily required as part of the AK.

Many AK- systems work on the principle of iterative feedback, the program generated depending on an input, an output, which is used in the next step as a new entry.

The boundaries between " traditional composition" and AK are fluid. Any use of a rule in the composition - it was the Blue scheme, or counterpoint - one could, strictly speaking, already described as algorithmic.

Concepts and Designs

In addition to music theoretical knowledge, many other areas of knowledge are used:

  • Artificial intelligence (neural networks)

Neural networks and analyze acoustic musical data.

Symbolic AI, originally developed more for the analysis and synthesis of linguistic and mathematical expressions is applied to musical structures.

  • Artificial Life, ( cellular automata, L- Systems, genetic algorithms )

Simple algorithms generate complex structures.

Manual or automatic selection processes control an artificial evolution.

  • Linguistics

Finite automata produced by means of concepts of generative grammar music from an alphabet and rules of inference.

Compositions by example JS Bach are statistically analyzed to produce "Bach -like" music by Markov chains.

  • Number Theory

The information presented in the sequence of natural numbers structures are made ​​" audible ".

  • Information Theory and Theory of Complex Systems
  • Chaos and Fractals
  • Cognitive Science
  • Psychoacoustics

Criteria for classification of concepts:

  • Top-down or bottom-up ( mixed forms available)
  • Determined or controlled by random numbers ( mixed forms available)
  • Discrete or Continuous
  • Real-time or model time
  • For real-time: intervention in the composition process possible or not?


The AK can be useful in three or four steps are divided, even if they take place usually within a computer, and even within a program or programming environment:


Programming languages ​​and programming environments

  • Sound Helix - Free Java framework for random -based algorithmic composition, MIDI - based
  • Common Music - Lisp - based
  • Open Music - Lisp - based
  • PWGL - Lisp -based - a visual programming language for algorithmic composition and sound synthesis
  • Symbolic Composer - Lisp - based
  • Csound
  • Max / MSP - real-time graphical programming environment for MIDI and Sound
  • Pure Data - Open Source - derivative of Max / MSP
  • Mathematica - a computer algebra - system whose results are also sonifizierbar
  • Super Collider - ajar Smalltalk object-oriented language
  • FractMus - Fractal Music Composition Software
  • CAMUS Cellular Automata MUSic generator
  • Music Laboratories - Algorithmic Composition - Midi- based automatic composition

Contemporary composers