The Perception of Harmony and Tonality: An Algorithmic Perspective
An algorithm is proposed for performing harmonic analysis of tonal music. The algorithm begins with a representation of a piece as pitches and durations; it then generates a representation showing chords and keys. This is a project of psychological interest, since there is much evidence that harmonic analysis is performed by trained and untrained listeners during listening; however, the perspective of the current project is computational rather than psychological, simply examining what has to be done computationally to produce "correct" analyses for pieces. The algorithm has three stages: the tonal-pitch-class stage, the harmonic stage, and the key stage. At each stage, the algorithm uses preference rules to evaluate different possible interpretations; it selects the interpretation that most satisfies the preference rules.


