Proceedings

Towards a Practical Tool for Music Composition: Using Constraint Programming to Model Chord Progressions and Modulations

Download BibTeX Cite

Proceedings of the Thirty-Fourth International Joint Conference on Artificial Intelligence. AI, Arts & Creativity. Pages 10171-10179.

https://doi.org/10.24963/ijcai.2025/1130

Abstract

The Harmoniser project aims to provide a practical tool to aid music composers in creating complete musical works. In this paper, we present a formal model of its second layer, tonal chord progressions and modulations to neighbouring tonalities, and a practical implementation using the Gecode constraint solver. Since music composition is too complex to formalize in its entirety, the Harmoniser project makes two assumptions for tractability: first, it focuses on tonal music (the basis of Western classical and popular music); second, it defines a simplified four-layer composition process that is relevant for a significant number of composers. Previous work on using constraint programming for music composition was limited to exploring the formalisation of different musical aspects and did not address the overall problem of building a practical composer tool. Harmoniser's four layers are global structure (tonal development of the whole piece), chord progressions (diatonic and chromatic) and modulations, voicing (four-voice chord layout), and ornaments (e.g., passing notes, appoggiaturas), all allowing iterative refinement by the composer. This paper builds on prior work for voicing layer 3, Diatony, and presents a model for layer 2, chord progressions and modulations. The results of the present paper can be used as input to Diatony to generate voicing. Future work will define models for the remaining layers, and combine all layers together with a graphical user interface as a plug-in for a DAW.

  1. [Anders and Miranda, 2009] Torsten Anders and Eduardo R Miranda. A Computational Model that Generalises Schoenberg's Guidelines for Favourable Chord Progres- sions. In proceedings of the Sound and Music Computing Conference, pages 48-52, 2009.
  2. [Anders et al., 2005] Torsten Anders, Christina Anagnos- topoulou, and Michael Alcorn. Strasheela: Design and Us- age of a Music Composition Environment Based on the Oz Programming Model. In Multiparadigm Programming in Mozart/Oz: Second International Conference, MOZ 2004, Charleroi, Belgium, October 7-8, 2004, Revised Selected and Invited Papers 2, pages 277-291. Springer, 2005.
  3. [Anders, 2008] Torsten Anders. Composing Music by Com- posing Rules: Design and Usage of a Generic Music Con- straint System. PhD thesis, Queen's University Belfast, 2008.
  4. [Bonlarron and Régin, 2024] Alexandre Bonlarron and Jean- Charles Régin. Intertwining CP and NLP: The Generation of Unreasonably Constrained Sentences. In Thirty-Third International Joint Conference on Artificial Intelligence {IJCAI-24}, pages 7600-7608. International Joint Confer- ences on Artificial Intelligence Organization, 2024. IJCAI
  5. [Carpentier et al., 2010] Grégoire Carpentier, Gérard As- sayag, and Emmanuel Saint-James. Solving the Mu- sical Orchestration Problem using Multiobjective Con- strained Optimization with a Genetic Local Search Ap- proach. Journal of Heuristics, 16:681-714, 2010.
  6. [Davismoon and Eccles, 2010] Stephen Davismoon and John Eccles. Combining Musical Constraints with Markov Transition Probabilities to Improve the Gen- eration of Creative Musical Structures. In European Conference on the Applications of Evolutionary Compu- tation, pages 361-370. Springer, 2010.
  7. [Duha, 2016] Isabelle Duha. L'Harmonie en Liberté: de la Mémoire à l'Improvisation. Gérard Billaudot, Armiane Imp., 2016.
  8. [Ebcioglu, 1990] Kemal Ebcioglu. An Expert System for Harmonizing Chorales in the Style of JS Bach. The Jour- nal of Logic Programming, 8(1-2):145-185, 1990.
  9. [Eppe et al., 2015] Manfred Eppe, Roberto Confalonieri, Ewen Maclean, Maximos Kaliakatsos, Emilios Cam- bouropoulos, Marco Schorlemmer, Mihai Codescu, and K Kühnberger. Computational Invention of Cadences and Chord Progressions by Conceptual Chord-Blending. In Proceedings of the Twenty-Fourth International Joint Con- ference on Artificial Intelligence, pages 2445-2451. AAAI Press; International Joint Conferences on Artificial Intelli- gence, 2015. IJCAI
  10. [Gauldin, 2004] Robert Gauldin. Harmonic Practice in Tonal Music. Second Edition. W. W. Norton and Com- pany, Inc, 2004. [Gecode Team, 2019] Gecode Team. Gecode: Generic Con- straint Development Environment, 2019.
  11. [Giuliani et al., 2023] Luca Giuliani, Francesco Ballerini, Allegra De Filippo, and Andrea Borghesi. MusiComb: a Sample-based Approach to Music Generation Through Constraints. In 2023 IEEE 35th International Conference on Tools with Artificial Intelligence (ICTAI), pages 194- 198, 2023.
  12. [Herremans and Sörensen, 2013] Dorien Herremans and Kenneth Sörensen. Composing Fifth Species Counterpoint Music with a Variable Neighborhood Search Algorithm. Expert systems with applications, 40(16):6427-6437, 2013.
  13. [Huang and Chew, 2005] Cheng Zhi Anna Huang and Elaine Chew. Palestrina Pal: a Grammar Checker for Music Com- positions in the Style of Palestrina. In Proceedings of the 5th Conference on Understanding and Creating Mu- sic, 2005.
  14. [Ingmar et al., 2020] Linnea Ingmar, Maria Garcia de la Banda, Peter J Stuckey, and Guido Tack. Modelling Diver- sity of Solutions. In Proceedings of the AAAI Conference on Artificial Intelligence, volume 34, pages 1528-1535, 2020.
  15. [Lattner et al., 2018] Stefan Lattner, Maarten Grachten, and Gerhard Widmer. Imposing Higher-level Structure in Polyphonic Music Generation using Convolutional Re- stricted Boltzmann Machines and Constraints. Journal of Creative Music Systems, 2:[1]-31, 2018.
  16. [Laurson and Kuuskankare, 2005] Mikael Laurson and Mika Kuuskankare. Extensible Constraint Syntax through Score Accessors. In Journées d'Informatique Musicale, 2005.
  17. [Pachet and Roy, 2001] Franc ¸ois Pachet and Pierre Roy. Mu- sical Harmonization with Constraints: A Survey. Con- straints, 6:7-19, 2001.
  18. [Pachet and Roy, 2011] Franc ¸ois Pachet and Pierre Roy. Markov Constraints: Steerable Generation of Markov Se- quences. Constraints, 16(2):148-172, 2011.
  19. [Papadopoulos et al., 2015] Alexandre Papadopoulos, Pierre Roy, Jean-Charles Régin, and Franc ¸ois Pachet. Generating all Possible Palindromes from n-gram Corpora. In IJCAI 2015, 2015.
  20. [Pesant et al., 2022] Gilles Pesant, Claude-Guy Quimper, and Hélène Verhaeghe. Practically Uniform Solution Sam- pling in Constraint Programming. In International Con- ference on Integration of Constraint Programming, Arti- ficial Intelligence, and Operations Research, pages 335- 344. Springer, 2022.
  21. [Pesant, 2004] Gilles Pesant. A Regular Language Member- ship Constraint for Finite Sequences of Variables. In In- ternational conference on principles and practice of con- straint programming, pages 482-495. Springer, 2004.
  22. [Rohrmeier, 2011] Martin Rohrmeier. Towards a Generative Syntax of Tonal Harmony. Journal of Mathematics and Music, 5(1):35-53, 2011.
  23. [Sandred, 2010] Örjan Sandred. PWMC, a Constraint- solving System for Generating Music Scores. Computer Music Journal, 34(2):8-24, 2010.
  24. [Sprockeels and Van Roy, 2024] Damien Sprockeels and Pe- ter Van Roy. Expressing Musical Ideas with Constraint Programming Using a Model of Tonal Harmony. In Inter- national Joint Conference on Artificial Intelligence, 2024.
  25. [Truchet et al., 2003] Charlotte Truchet, Gérard Assayag, and Philippe Codognet. OMClouds, Petits Nuages de Con- trainte dans OpenMusic. In Journées d'Informatique Mu- sicale, 2003.

References were extracted automatically from the PDF and may contain errors.

Welcome Future Conferences AI Journal Division IJCAI Proceedings About IJCAI IJCAI Awards