Skip to main content

Advertisement

Log in

Evolving the process of a virtual composer

  • Published:
Natural Computing Aims and scope Submit manuscript

Abstract

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17

Similar content being viewed by others

Notes

  1. It should be noted that the corpus information is only used to inform our fitness evaluation. If desired, tests based on alternative criteria could be readily substituted without requiring changes to any other part of the system.

  2. Musical Instrument Digital Interface.

  3. Works BWV 772-801, MIDI files for which were downloaded from www.midiworld.com/bach.htm.

  4. http://csabasulyok.bitbucket.org/emc.

References

  • 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–3042

  • Biles J (1994) GenJam: a genetic algorithm for generating jazz solos. In: Proceedings of the 1994 international computer music conference, ICMA, pp 131–137

  • Brameier MF, Banzhaf W (2010) Linear genetic programming, 1st edn. Springer Publishing Company, Incorporated, Berlin

    MATH  Google Scholar 

  • 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. http://nn.cs.utexas.edu/?chen:ijcnn01

  • Dahlstedt P (2007) Autonomous evolution of complete piano pieces and performances. In: 9th European conference on artificial life

  • 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

  • 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. http://dl.acm.org/citation.cfm?id=645826.669282

  • Donnelly P, Sheppard J (2011) Evolving four-part harmony using genetic algorithms. Applications of evolutionary computation, vol 6625. Springer, Berlin, pp 273–282

    Chapter  Google Scholar 

  • 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

    Article  Google Scholar 

  • Eigenfeldt A (2009) The evolution of evolutionary software: intelligent rhythm generation in kinetic engine. In: EvoWorkshops, vol 5484. Springer, pp 498–507

  • Eigenfeldt A (2012) Corpus-based recombinant composition using a genetic algorithm. Soft Comput 16:2049–2056

    Article  Google Scholar 

  • 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. http://dl.acm.org/citation.cfm?id=645513.657757

  • 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–279

  • 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–313

  • Hartigan JA (1975) Clustering algorithms, 99th edn. Wiley, New York

    MATH  Google Scholar 

  • Hartmann P (1990) Natural selection of musical identities. In: International computer music conference

  • 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–441

    Google Scholar 

  • Horowitz D (1994) Generating rhythms with genetic algorithms. In: AAAI, vol 94, p 1459

  • Jacob B (1995) Composing with genetic algorithms. In: International Computer Music Association, pp 452–455

  • 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, Ireland

  • MacCallum RM, Mauch M, Burt A, Leroi AM (2012) Evolution of music by public choice. Proc Nat Acad Sci 109(30):12081–12086

    Article  Google Scholar 

  • Mahfoud SW (1995) Niching methods for genetic algorithms. Technical reports

  • 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–14

  • 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

  • Miranda ER, Biles JA (2007) Evolutionary computer music. Springer-Verlag New York Inc., Secaucus

    Book  Google Scholar 

  • 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. http://dl.acm.org/citation.cfm?id=645514.657920

  • 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, Ireland

  • Phon-Amnuaisuk S, Tuson A, Wiggins G (1999) Evolving musical harmonisation. In: ICANNCA

  • 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–584

  • Rodriguez JDF, Vico FJ (2013) AI methods in algorithmic composition: a comprehensive survey. J Artif Intell Res 48:513–582

    Article  MathSciNet  Google Scholar 

  • Rummel RJ (1976) Understanding correlation. Department of Political Science, University of Hawaii, Honolulu

    Google Scholar 

  • 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:5

  • Stansifer R (2005) The MIDI file format. http://cs.fit.edu/~ryan/cse4051/projects/midi/midi.html

  • 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–594

  • 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

    Article  Google Scholar 

  • 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–226

  • Towsey M, Brown A, Wright S, Diederich J (2001) Towards melodic extension using genetic algorithms. Educ Technol Soc 4(2):54–65

    Google Scholar 

  • 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–413

  • Waschka RI (2007) Composing with genetic algorithms: GenDash. In: Miranda ER, Biles JA (eds) Evolutionary computer music. Springer, London

  • 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. http://research.gold.ac.uk/9795/

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Csaba Sulyok.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Sulyok, C., McPherson, A. & Harte, C. Evolving the process of a virtual composer. Nat Comput 18, 47–60 (2019). https://doi.org/10.1007/s11047-016-9561-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11047-016-9561-6

Keywords

Navigation