# Creative Chord Sequence Generation for Electronic Dance Music
## 1 Introduction  
Harmony is a central part of music and an important consideration for music information retrieval systems. Generative statistical models for chord sequences are widely used for tasks such as automatic chord estimation [1], chord prediction [2; 3] melody harmonization [4; 5; 6; 7], music analysis [8], and classification [9; 10]. Representations of pitch space such as the Tonnetz have provided a basis for reasoning about triadic transformations using mathematical group theory [11; 12; 13]. Harmony and chord sequences play a fundamental role in the understanding of electronic dance music, particularly classically tonal sub-genres of _trance_ coming under different labels such as _uplifting trance_, _epic trance_, _progressive trance_, and _euboric trance_. Relying mainly on simple major and minor triadic forms, the chord sequences within trance music repeat on several levels, and a pivotal issue for trance generation is therefore the generation of idiomatic chord loops. For chord sequence generation, somewhat surprisingly, a trained statistical generative model does not imply a method for direct generation of sequences: this must be implemented as a meta-procedure which involves certain design choices on the space of sequences desired. Single random samples from a model are likely to fall within the mean of the overall sequence distribution, and if only a limited number of sequences is to be presented, it is better to perform some optimization and focus on a subset of high probability sequences. This implies that the model is not overfit to a training corpus, otherwise high probability sequences may be excessively \"normative\" or contain excessive copying of corpus sequences. The approach taken here is to deliberately underfit the corpus, by using a low-order statistical model. In this way, surprising sequences can be generated, and the pattern and diatonicity functionality of the plug-in can be used to restrict the sequences manually if desired. In recent years, many tools have emerged that integrate the process of chord sequence exploration into Digital Audio Workstations (DAWs). They allow a composer to explore chord progressions by selecting from compatible chords substitutions, and some can suggest single chord continuations. These tools typically contain a catalogue of template sequences from which to start an exploration session. Absent from the panorama are generative tools that work with _coherent_ chord sequences: those where important intra-sequence repetition is explicitly defined and manipulated. As discussed in this Introduction, this is a difficult goal to achieve due to weaknesses in the generative capacity of standard statistical models. The pervasive type of statistical model class for music is the \(n\)-gram model [14; 15]. An \(n\)-gram model defines the probability of the next event in a sequence based on the proximal history of \(n-1\) events. Training and inference from such models is computationally efficient and they perform well in music where local dependencies are the dominant carrier of information. The problem with \(n\)-gram models is that they cannot cope efficiently with long range dependencies, because capturing these requires an exponentially increasing amount of training data in the distance between dependent events. This has led some researchers to consider the more powerful model class of _context free grammars_[16; 17; 18; 19] which can encode arbitrarily distant dependencies, but severe training and inference complexities come with their additional generative capacity. Somewhat surprisingly, neither \(n\)-gram nor context-free grammars can deal explicitly with the phenomenon of repetition, for example, neither can express the language of all sequences of the form \(WW\) where \(W\) is an arbitrary sequence. These forms are ubiquitous in music and especially in repetition-oriented music such as electronic dance music loops. [PERSON] [20] provided a partial solution to this problem, by overlaying a structural pattern on an underlying \(n\)-gram model.