The MusES System

Overview

The MusES system is an environment designed for experimenting with various object-oriented knowledge representation techniques in the field of tonal music. The first layer of MusES is a repository of consensus knowledge about tonal harmony, including an explicit representation of enharmonic spelling, as well as representation of intervals, scales and chords that support standard computations.
Several systems are built on top of MusES: a system for the analysis of jazz chord sequences, a system for the automatic generation of harmonizations, and a system that generates real-time jazz improvisations. I did not yet write any application related to The Beatles).

Pitch-classes and Basic Tonal Harmony

One of the foundations of the MusES system is a representation of pitch-classes that conforms to enharmonic spelling (i.e. the difference between notes that spell differently but sound the same, such as Eb and D#). Enharmonic spelling is as vital to music analysis, as orthography is to grammar and semantics. MusES addresses the problem of providing a "good" representation of the algebra of pitch-classes, including the notion of enharmonic spelling, and a representation of intervals, scales and chords to serve as a foundation for implementing various types of harmonic analysis mechanisms. This representation is based on a number of classical patterns of Object-Oriented Programming. In particular, pitch-classes are represented as instances of classes, in the sense of OOP, and alterations as methods for these classes, using polymorphism to represent their algebra, and all the properties mentioned above. This approach not only yields a simple implementation, but also provides us with a clear understanding of the operations on pitch-classes.

Here are a number of things MusES can do, through Smalltalk expressions

Graphical Editors for melodies

MusES also contain graphical score editors written in Smalltalk. These editors are used to input melodies and Jazz chord sequences.

A Smalltalk editor on a melody:

A Smalltalk editor on a Jazz chord sequence:


Applications

MusES is used by several knowledge-based system built on top of it. We give an overview of four of them here. More details can be found in the references.
  1. Analysis of Chord Sequences

    The first project is the construction of a knowledge-based analyzer for jazz chord sequences. The sequences are standard be-bop tunes as found in the Real book/Fake book corpus. The aim of this system is to find underlying tonalities for each chord in a sequence, when possible. The reasoning is represented by rule bases expressed in NéOpus, a first-order forward-chaining inference engine integrated with Smalltalk-80). The model of the reasoning is described in depth in Pachet (1994b) and Pachet (1991), and uses a declarative architecture for representing control knowledge (Pachet & Perrot (1994)).

  2. Constraint satisfaction and automatic harmonization

    This system captures musical rules as found in treatises of harmony and counterpoint. These rules are most often stated as constraints, such as "the interval between two successive notes in a melody should be consonant". One of the major drawbacks of the previous attempts is the overuse of the constraint satisfaction mechanism, leading to inefficiencies and complex knowledge bases. The aim of the system is to explore the integration of constraint-satisfaction mechanisms (arc-consistency) and intelligent search (branch & bound), with our existing object structures. This work is still in progress and showed already very promising results in terms of efficiency. See Pierre Roy's page for more details.

  3. Simulation of real-time jazz improvisations

    This system is an attempt to build a musical memory that explains - at least partially - improvisation processes. A model of memory, based on case-based mechanisms (Cf. Ramalho & Ganascia (1994) has been developed, and is used in conjunction with a representation of musical actions or PACTs (Cf. Pachet (1991), Ramalho & Pachet (1994)). The idea is to model the complete sequence of processes involved in improvisation, from the beginning (parsing of the chord sequence, using the chord sequence analyzer mentioned above) up to the actual generation of notes. The generation of PACTs uses the case-based model of memory in conjunction with an algorithm that generates PACTs according to the musician's experience, as well as general knowledge about musical actions. See Geber Ramalho's page for more details.

  4. Automated Extraction of Patterns from Improvized Jazz Corpuses

    The Imprology system aims at automating the extraction of prominent patterns ("formulae", "licks",...) from corpuses of improvized jazz transcriptions (Rolland & Ganascia 1997). Imprology's results are evaluated through confrontation with those of musicologist T. Owens' pattern-based analysis of Charlie Parker's improvisation techniques based on 190 solos. Imprology's central component seeks local similarities in pairs of monophonic melodies, using dynamic programming (DP) algorithms. Experiments with Imprology evidenced limitations of current DP approaches, viz. lack of musical common sense. Operational representations have been proposed for all additional musical descriptions deemed neccessary: metrical aspects; intervallic and directional contours; local tonalities; harmonic " shapes " (II-V, VI-II-V-I);... Also, novel, systematic solutions were proposed for the crucial problem of setting algorithm parameters' values. See Pierre Yves Rolland's page for more details.

On-Going Research and Development

An implementation of Simon Holland bi-dimensional interface based on the "Harmony Space" concept in in progress (well I have to find students to finish that!). A first prototype was implemented, (see figure below).

Another project is the representation and formalization of the whole Real Book corpus, analysis of Gesualdo works, and other crazy things. People involved in the MusES system are: Francois Pachet, Geber Ramalho, Pierre Roy, Pierre-Yves Rolland, Jean Carrive.

You can have access to some publications about MusES. You can also be interested in a report I co-edited on Artificial Intelligence and Music in France, in the bulletin de l'AFIA.

You can go back to my main page or to the Main Page