Evolving the process of a virtual composer

  • Csaba Sulyok
  • Andrew McPherson
  • Christopher Harte


In this paper we present a genetic programming system that evolves the music composition process rather than the musical product. We model the composition process using a Turing-complete virtual register machine, which renders musical pieces. These are evaluated using a series of fitness tests, which judge their statistical similarity against a corpus of Bach keyboard exercises. We explore the space of parameters for the system, looking specifically at population size, single-versus multi-track pieces and virtual machine instruction set design. Results demonstrate that the methodology succeeds in creating pieces of music that converge towards the properties of the chosen corpus. The output pieces exhibit certain musical qualities (repetition and variation) not specifically targeted by our fitness tests, emerging solely based on the statistical similarities.


Evolutionary algorithms Music generation Music evaluation Corpus-based similarity tests 


  1. Alfonseca M, Cebrian M, Ortega A (2007) A simple genetic algorithm for music generation by means of algorithmic information theory. In: IEEE congress on evolutionary computation, IEEE, pp 3035–3042Google Scholar
  2. Biles J (1994) GenJam: a genetic algorithm for generating jazz solos. In: Proceedings of the 1994 international computer music conference, ICMA, pp 131–137Google Scholar
  3. Brameier MF, Banzhaf W (2010) Linear genetic programming, 1st edn. Springer Publishing Company, Incorporated, BerlinMATHGoogle Scholar
  4. Chen CCJ, Miikkulainen R (2001) Creating melodies with evolving recurrent neural networks. In: Proceedings of the INNS-IEEE international joint conference on neural networks, IEEE, Piscataway, NJ, pp 2241–2246.
  5. Dahlstedt P (2007) Autonomous evolution of complete piano pieces and performances. In: 9th European conference on artificial lifeGoogle Scholar
  6. De Prisco R, Zaccagnino G, Zaccagnino R (2011) A multi-objective differential evolution algorithm for 4-voice compositions. In: 2011 IEEE symposium on differential evolution (SDE), pp 1–8. doi: 10.1109/SDE.2011.5952053
  7. Dolin B, Arenas MG, Guervós JJM (2002) Opposites attract: complementary phenotype selection for crossover in genetic programming. In: Proceedings of the 7th international conference on parallel problem solving from nature, PPSN VII. Springer, London, UK, pp 142–152.
  8. Donnelly P, Sheppard J (2011) Evolving four-part harmony using genetic algorithms. Applications of evolutionary computation, vol 6625. Springer, Berlin, pp 273–282CrossRefGoogle Scholar
  9. Dostál M (2012) Musically meaningful fitness and mutation for autonomous evolution of rhythm accompaniment. Soft Comput 16(12):2009–2026. doi: 10.1007/s00500-012-0875-8 CrossRefGoogle Scholar
  10. Eigenfeldt A (2009) The evolution of evolutionary software: intelligent rhythm generation in kinetic engine. In: EvoWorkshops, vol 5484. Springer, pp 498–507Google Scholar
  11. Eigenfeldt A (2012) Corpus-based recombinant composition using a genetic algorithm. Soft Comput 16:2049–2056CrossRefGoogle Scholar
  12. Fonseca CM, Fleming PJ (1993) Genetic algorithms for multiobjective optimization: formulation, discussion and generalization. In: Proceedings of the 5th international conference on genetic algorithms. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, pp 416–423.
  13. Ghosh A, Tsutsui S, Tanaka H (1996) Individual aging in genetic algorithms. In: Australian and New Zealand conference on intelligent information systems, 1996, IEEE, pp 276–279Google Scholar
  14. Gibson P, Byrne J (1991) Neurogen, musical composition using genetic algorithms and cooperating neural networks. In: Second international conference on artificial neural networks, 1991, pp 309–313Google Scholar
  15. Hartigan JA (1975) Clustering algorithms, 99th edn. Wiley, New YorkMATHGoogle Scholar
  16. Hartmann P (1990) Natural selection of musical identities. In: International computer music conferenceGoogle Scholar
  17. Horner A, Goldberg DE (1991) Genetic algorithms and computer-assisted music composition. In: Belew RK, Booker LB (eds) ICGA. Morgan Kaufmann, Los Altos, pp 437–441Google Scholar
  18. Horowitz D (1994) Generating rhythms with genetic algorithms. In: AAAI, vol 94, p 1459Google Scholar
  19. Jacob B (1995) Composing with genetic algorithms. In: International Computer Music Association, pp 452–455Google Scholar
  20. Loughran R, McDermott J, O’Neill M (2015) Grammatical evolution with Zipf’s law based fitness for melodic composition. In: Timoney J (ed) Proceedings of the 12th sound and music computing conference, Maynooth, IrelandGoogle Scholar
  21. MacCallum RM, Mauch M, Burt A, Leroi AM (2012) Evolution of music by public choice. Proc Nat Acad Sci 109(30):12081–12086CrossRefGoogle Scholar
  22. Mahfoud SW (1995) Niching methods for genetic algorithms. Technical reportsGoogle Scholar
  23. Martins JM, Miranda ER (2007) Emergent rhythmic phrases in an A-Life environment. In: Proceedings of ECAL 2007 workshop on music and artificial life (MusicAL 2007), pp 11–14Google Scholar
  24. McIntyre R (1994) Bach in a box: the evolution of four part baroque harmony using the genetic algorithm. In: Proceedings of the first IEEE conference on evolutionary computation, 1994. IEEE world congress on computational intelligence, vol 2, pp 852–857. doi: 10.1109/ICEC.1994.349943
  25. Miranda ER, Biles JA (2007) Evolutionary computer music. Springer-Verlag New York Inc., SecaucusCrossRefGoogle Scholar
  26. Nordin P, Banzhaf W (1995) Evolving Turing-complete programs for a register machine with self-modifying code. In: Proceedings of the 6th international conference on genetic algorithms. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, pp 318–327.
  27. Nuanáin CÓ, Herrera P, Jorda S (2015) Target-based rhythmic pattern generation and variation with genetic algorithms. In: Proceedings of the 12th sound and music computing conference, Maynooth, IrelandGoogle Scholar
  28. Phon-Amnuaisuk S, Tuson A, Wiggins G (1999) Evolving musical harmonisation. In: ICANNCAGoogle Scholar
  29. Reddin J, McDermott J, O’Neill M (2009) Elevated pitch: automated grammatical evolution of short compositions. In: Giacobini M, De Falco I, Ebner M (eds) Applications of evolutionary computing. Lecture notes in computer science, vol 5484. Springer, Berlin, pp 579–584Google Scholar
  30. Rodriguez JDF, Vico FJ (2013) AI methods in algorithmic composition: a comprehensive survey. J Artif Intell Res 48:513–582MathSciNetMATHGoogle Scholar
  31. Rummel RJ (1976) Understanding correlation. Department of Political Science, University of Hawaii, HonoluluGoogle Scholar
  32. Sarma J, De Jong K (1997) Selection: generation gap methods. In: Back T, Fogel DB, Michalewicz Z (eds) Handbook on evolutionary computation. Institute of Physics Publishing and Oxford University Press, Bristol and New York, pp C2.7:1–C2.7:5Google Scholar
  33. Stansifer R (2005) The MIDI file format.
  34. Sulyok C, McPherson A, Harte C (2015) Corpus-taught evolutionary music composition. In: Proceedings of the 13th European conference on artificial life, York, UK, pp 587–594Google Scholar
  35. Thywissen K (1999) GeNotator: an environment for exploring the application of evolutionary techniques in computer-assisted composition. Organ Sound 4(2):127–133. doi: 10.1017/S1355771899002095 CrossRefGoogle Scholar
  36. Tokui N, Iba H (2000) Music composition with interactive evolutionary computation. In: Proceedings of the 3rd international conference on generative art, vol 17, pp 215–226Google Scholar
  37. Towsey M, Brown A, Wright S, Diederich J (2001) Towards melodic extension using genetic algorithms. Educ Technol Soc 4(2):54–65Google Scholar
  38. Unemi T (2002) SBEAT3: a tool for multi-part music composition by simulated breeding. In: Proceedings of the 8th international conference on artificial life, pp 410–413Google Scholar
  39. Waschka RI (2007) Composing with genetic algorithms: GenDash. In: Miranda ER, Biles JA (eds) Evolutionary computer music. Springer, LondonGoogle Scholar
  40. Whorley RP, Rhodes C, Wiggins G, Pearce MT (2013) Harmonising melodies: Why do we add the bass line first? In: International conference on computational creativity, Sydney, pp 79–86.

Copyright information

© Springer Science+Business Media Dordrecht 2016

Authors and Affiliations

  • Csaba Sulyok
    • 1
  • Andrew McPherson
    • 1
  • Christopher Harte
    • 2
  1. 1.Queen Mary University of LondonLondonUK
  2. 2.Melodient Ltd.LeedsUK

Personalised recommendations