Home / Papers / Interactive Genetically Generated Music Composing with a Genetic Algorithm

Interactive Genetically Generated Music Composing with a Genetic Algorithm

1 Citations2001
Karyn Moffatt, S. Fels
journal unavailable

Improvements to the use of genetic algorithms to compose music are examined, including adding a mechanism for generating files from the composition, expanding the complexity of a melody to include multiple simultaneous notes, and expanding the evolutionary processes used for the melody composition.

Abstract

This report investigates the use of genetic algorithms to compose music and examines various additions to an existing system in order to improve the richness and expression of the system’s compositions. The core system uses a genetic algorithm to generate unique melodies. Genetic algorithms are an application of the biological evolutionary process to computing; new elements are introduced to the population by the recombination of existing ones. This project examined the following improvements to the system: adding a mechanism for generating files from the composition, expanding the complexity of a melody to include multiple simultaneous notes, and expanding the evolutionary processes used for the melody composition. File saving functionality was added to the system to generate text files from the melodies. These text files can be easily transformed into midi files using a preexisting application. Melodies in the core system were limited to monophonic melodies meaning that only a single note could be played at a time. In order to be able to generate truly opulent melodies the system was adapted to support polyphonic melodies. The crossover operator was modified to examine the effect of varying the algorithm on the compositions produced. Further improvements to the system remain to be examined, including: adding a visual representation of the compositions, adding an controller to allow the hidden melody to be modified at run time, and experimenting with further variations on the genetic algorithm.