Application of genetic algorithm and JFugue in an evolutionary music generator - Tang, Jia Rou (2025)
This project explores the application of Genetic Algorithms (GA) with JFugue, which is a Java-based music programming library to develop an Evolutionary Music Generator. The challenges with automating the music composition lies in capturing the complexity, creativity and emotional expressiveness of music which requires a deep understanding of musical theory. This project will resolve this problem by applying GAs to evolve musical compositions and offer a fresh view on computational music generation. It is relevant because it generalizes this process of music creation and provides instruments to musicians and non-musicians for diving into new, unique forms of musical expression. Genetic Algorithms will be chosen because they constantly improve solution, hence appropriate for the development of compositions consistent with the creative and harmonic principles. In addition, JFugue is an open-source, Java- based music programming toolkit that has been integrated to efficiently represent and manipulate the music, hence implementing the evolutionary process. This method proves to be effective by systematically exploring and generating a variety of musical ideas through iterative applications of selection, crossover, and mutation genetic operations. The appliance of harmonic principles, rhythmic patterns, and user feedback provides the basic for fitness assessment in ensuring that the generated music meets pre-set requirements. Music that has been generated using JFugue involves real-time generation and user-driven evolution. This will involve the explanation of the use of evolution algorithms combined with the music programming to be able to create creative digital music.