You are on page 1of 19

European Journal of Operational Research 140 (2002) 354–372

www.elsevier.com/locate/dsw

Optimality in musical melodies and harmonic


progressions: The travelling musician
Daniel Schell
Groenstraat 51, B-1750 Lennik, Belgium
Received 28 September 2000; accepted 25 April 2001

Abstract

A ‘chord’ is a collection of notes sounded simultaneously. A ‘melody’ is a path through a sequence of chords, and
can be represented as a graph. The paper describes an algorithmic approach to the generation of tiles that represent
chord sequences, and a method for evaluating remarkable paths through these sequences.
Traditional harmony is based on a set of rules such as variety, connectivity, tiling and enumeration that eventually
produces a ‘‘beautiful’’ and ‘‘interesting’’ melody/chord relationship. A set of rules and criteria are defined in this paper
to evaluate this melody/chord relationship.
The proposed compositional programme contains two algorithms: (1) The first generates a list of possible sets of
chords fulfilling the optimality criteria. (2) The second connects them and evaluates the criteria for each path. The
optimal connection is a case of minimal spanning tree.
A selection of the best tiles is then made with the help of the composer. A beautiful tile might show – or not show –
high symmetry, and remarkable connectivity. The best tiles given by the algorithms are compared to the ones in tra-
ditional use. Furthermore, a category of chord-sequences, which we shall call ‘karo’, shows interesting mathematical
properties.  2002 Published by Elsevier Science B.V.

Keywords: Combinatorial optimisation; OR applications in other domain; Musical composition

1. Introduction

Musical theory is based on tradition and a few physical facts. The tradition can be rewritten as a set of
rules. Building a melody and bringing it through a sequence of chords or, inversely, fitting chords to a
melody will sound almost like a problem of operational research.
In the course of history, composers writing for choirs or ensembles have always tried to connect their
chords as if they wanted to spare the energy of the singers and performers. They have also tried to generate
melodies and accompanying chords with a maximum of variety.

E-mail address: clic.music@skynet.be (D. Schell).


http://users.skynet.be/clic.music.

0377-2217/02/$ - see front matter  2002 Published by Elsevier Science B.V.


PII: S 0 3 7 7 - 2 2 1 7 ( 0 2 ) 0 0 0 7 4 - 7
D. Schell / European Journal of Operational Research 140 (2002) 354–372 355

In the first part we describe horizontal time series called melodies and some simple rules for evaluating
and generating them. In the second part we describe vertical sets of notes called chords. We then describe
sequences of chords and the optimal paths going through them. These paths can then be locally trans-
formed by the rules for generating melodies.
EURO has commissioned from this author two musical compositions called ‘The Travelling Musician’
(Schell, 2000a), a brass quintet, and ‘Ten optimal studies’ (Schell, 2000b), for various ensembles. Frequent
references are made to these pieces.
The present paper is basically divided into two parts: The first part (Section 2.1) is an introduction to
musical theory, its optimal aspects and tools for the operational researcher. The second (starting with
Section 4) is concerned with optimality methods used in order to solve the problem of the ‘beautiful
karos’.
The algorithms presented here were conceived of as tools – a calculette – for the composer, more than
complete algorithms, which would for instance produce Bach-like music without any human intervention.
If a method was chosen, then it was for the sake of simplicity, optimality, reduced algorithm size or search
engine, eventually small computer processor and memory.

2. First definitions

2.1. Musical theory

Composers of the XXth century such as Schoenberg, Webern (see for instance Brindle, 1966) and Hauer
(1926) started to use figures, patterns and formal methods which they considered valid sources of musical
inspiration.
With the progress of computers, these methods were codified and composers such as Hillier, Xenakis and
Barbaud (Barbaud, 1968) started to use them to generate music (see Roads, 1966).
Algorithms used to generate music were based on random methods such as fractals (Clarke and Voss,
1978), stochastic, Markov chains, chaotic systems (Bidlack, 1992) or cellular automata (for a general in-
troduction see ‘Making Music with Algorithms’ by Mc Alpine et al. (1999)).
Another important aspect is the formalised analysis and definition of music brought about by
Riemann and now modernised (Lewin, 1987; Cohn, 1998). The idea is to build a set of rules, with
which music can be analysed or even generated (see, for example, Lerdahl and Jackendorf, 1983). We
are closing in on operational research-type models with the Center of Effect Model for Tonality (Chew,
2001).
A posteriori, music can be evaluated based on AI rules (Longuet-Higgins and Steedman, 1971, ‘On
interpreting Bach’). The old dream of building the perfect Bach engine is still in the minds of many. Other
methods include time-series analysis of dynamic events (Boon and Decroly, 1995) or neural networks
(H€ornel and Menzel, 1998).
The 12-tone pitch class notation using sets and groups is now well known (Forte, 1973). Balzano (1980)
has proposed future developments in groups and micro-tonal research. Simultaneously harmony, the sci-
ence of chord building, has also been formalised. The study and knowledge of intervals (Lewin, 1987) has
enabled valid representations for harmonic models.
Optimisation techniques have also been used for harmonic analysis. Temperley and Sleator
(1999) used dynamic programming to find the best fit in metrical analysis of chord sequences.
Sayegh (1989) used a Viterbi–Dijkstra algorithm to optimise the finger movements on string instru-
ments.
Amongst the computer languages and systems used in implementing these models are the Common
Music project, built in LISP (Taube, 1997).
356 D. Schell / European Journal of Operational Research 140 (2002) 354–372

2.2. Chromatic set of notes on Z-12

12-Set notation. Traditional music partitions each octave into 12 notes. We assign an integer value to
each note. Let 12-set ¼ ð0; . . . ; 11Þ with (C ¼ 0; C# OR Db ¼ 1; D ¼ 2; D# or Eb ¼ 3; E ¼ 4; F ¼ 5; F# OR
Gb ¼ 6; G ¼ 7; G# OR Ab ¼ 8; A ¼ 9; A# OR Bb ¼ 10; B ¼ 11).
Enharmonic equivalence. We adopt the convention of enharmonic equivalence where C# and Db refer to
the same note, and both are represented by 1. We write C# ¼ Db ¼ 1.
Modulo 12. Because we are using 12-set notation, all representations and operations are in modulo 12.
For example, MOD 12 ðAÞ ensures that note A remains in the range 0 6 A 6 11. Examples: 12 ¼ 0 ¼ C;
25 ¼ 1 ¼ C#; )2 ¼ 10 ¼ Bb.
Octave equivalence. Unless specified, the notes are octave equivalent. C1 (C from octave 1) is equivalent
to C2 ¼ C3    The important factor is the pitch-class C (Forte, 1973, p. 2).
Chords. Chords are collections of notes stacked vertically in time. Triads are one type of chords, and
consist of collections of three notes. In the 12-set notation, TRIAD (C, E, G) ¼ (0, 4, 7); TRIAD
(Ab, C, Eb) ¼ (8, 12, 15) ¼ (8, 0, 3).
Intervals. The interval is the distance as measured by the number of half tones between two
notes.
INTERVAL: (‘unison’ ¼ 0; ‘minor second’ OR ‘half step’ ¼ 1; ‘major second’ ¼ 2; ‘minor third’ ¼ 3;
‘major third’ ¼ 4; ‘fourth’ ¼ 5; ‘augmented fourth’ OR ‘diminished fifth’ 6; ‘fifth’ ¼ 7; minor sixth’ ¼ 8;
‘major sixth’ ¼ 9; ‘minor seventh’ ¼ 10; ‘major seventh’ ¼ 11; ‘octave’ ¼ 12).

2.3. Optimality of an octave divided in 12

The idea of dividing the octave in 12 is old, but in the early stages, the intervals were not measurable and
therefore not equal. In the times of Bach came the idea of dividing the group into 12 equal intervals dis-
tributed as follows:

N ðiÞ ¼ 20=12 ; 21=12 ; 22=12 ; . . . ; 2i=12 ; . . . ; 211=12 :

The next idea is to represent every member – note or pitch-class (Forte, 1973, p. 3) assigns this to Milton
(Babitt) – with an element of Z-12. Of course, an octave could have been divided into any number of steps
such as Z-7, Z-16 or Z-19, so why Z-12? A good group will be the one whose members fit at best the
important acoustic ratios. These are the octave (2/1), the fifth (3/2), the fourth (4/3), a major or minor third
(5/4) and so on.
212=12 is of course a good approximation of the ratio 2, the octave. The intervals 25=12 and 27=12 are very
close to a perfect fourth and fifth, respectively. These conditions are necessary for building a coherent
musical system. The approximations to the values of the thirds, for instance, are not as good as the pure
acoustic values, however they are acceptable to the ear.
The next group that produces a good approximation is Z-19, but Z-12 wins under the MINIMUM
CARDINAL condition.
Z12 wins also for another reason. It is commonly believed that the artistic value of a group
depends on its ability to form subgroups. Z12 with its prime dividers 2 and 3 shows a maximal
ability to form subgroups (see Balzano (1980) for a discussion over the group aspects of the pitch
systems). These are well known by musicians: The divider 2 produces the whole tone scales as
ð0; 2; 4; 6; 8; 10Þ, the divider 3 produces diminished scales as ð0; 3; 6; 9Þ. Z-19 could not produce any of
these subgroups.
Z12 is a ‘good’ group and a best fit to the important acoustic values. There are already aspects of op-
timality.
D. Schell / European Journal of Operational Research 140 (2002) 354–372 357

2.4. Scales

Suppose that we start from a set of seven different notes (C, D, E, F, G, A, B), the so-called diatonic
major scale (see Fig. 1). As each of these notes has a different letter name, the scale is called a diatonic scale.
The eighth note shown above is the octave C0 of C which, in many instances, is considered to be
equivalent to C, forming what is called a pitch-class of C’s. These notes form a subset of seven out of the 12
chromatic notes, we refer to them using the numerals ð0; 2; 4; 5; 7; 9; 11Þ. The advantage of figuring by
numerals is that we can learn about how the scale decomposes into half tones and tones (equivalent to two
half tones). In this case, the successive intervals are ð2; 2; 1; 2; 2; 2; 1Þ.

2.5. Melodies

2.5.1. What is a melody?


A melody is a horizontal set of notes that can be perceived as being connected.
In the first part of the example given in Fig. 2, we see a smooth curve. We say that it is well connected
because there is typically one or two steps between each note. This connectivity is essential in the perception
of a horizontal entity. In the second part, the notes are so spread out that the mind cannot detect a rec-
ognisable pattern (or it can recognise simply a spreadout pattern).
The optimality of a melody is a matter of discussion. For the audience, a good melody has emotional
content and can be easily memorised.

2.5.2. Rules for an optimal melody


We shall consider only the following rules for an optimal melody:
1. It should be well connected.
2. It should show a degree of variety. The notes should not be repeated too often. There should be a variety
of intervals such as +1 (major/minor) second, )1 (major/minor) second, +1 (major/minor) third, )1 (ma-
jor/minor) third and so on.
3. Small intervals should occur more frequently than large.
4. It should explore a region. It should start from one note, explore other notes around this note, and then
eventually come back to a neighbour of this note.
There is another very important aspect: It is difficult to appreciate a melody outside a harmonic context
or without the presence of some other reference tones. In the Gregorian psalmody, unaccompanied mel-
odies can of course be appreciated in their purity. However, most of the time, a melody will be part of an
interaction with other reference tones such as bass lines, other melodies or harmonic voices.

Fig. 1. The diatonic major scale from the tradition, figured by letters, then by digits from Z-12.

Fig. 2. The first part will be clearly perceived as a melody. The second part will be perceived as a set of disconnected note.
358 D. Schell / European Journal of Operational Research 140 (2002) 354–372

2.5.3. The algorithmic generation of melodies


If we wish to generate new melodies, independent of a harmonic context, we may use two possibilities:
1. Use existing melodies. Then transform these melodies by elementary operations such as transposition,
inversion, retrograde or other types of transformation (see for instance Barbaud, 1983). These methods
have been widely used by composers of all times and in many types of music. However special emphasis
has been given to these transformation methods by the dodecaphonists of the XXth century (see, for in-
stance, Schillinger, 1976, p. 250). The author has used such methods to transform popular melodies in
his ‘Italian Trios’.
2. Generate melodies using a random or fractal generator, or any type of non-musical data. In this case,
one considers notes as some kind of statistical data. A melody then becomes a well-correlated time series.

2.5.3.1. Random fractal and Brownian melodies. Composers since Mozart and his dice generator have used
random processes in many different ways. In the 1970s, fractals were used to produce interesting artistic
results (consult Clarke and Voss, 1978). The entertaining paper of Gardner (1978) showed that 1=f noise
and fractal data, such as tide statistics, could be used to generate music. Compositions (including some
karo-s of the author) have also been analysed as dynamic processes by Boon and Decroly (1995).
We describe here some very simple processes that achieve good results with only a few lines of code.
We adopt the graph of a Brownian motion, a ‘continuous-time random walk’ (Hastings and Sugihara,
1993, p. 22).
yð0Þ ¼ 0; yðt þ DtÞ ¼ yðtÞ þ DyðtÞ; ð1Þ
where DyðtÞ ¼ ðDy with probability 1=2Þ OR (Dy with probability 1/2).
With Dy ¼ 1 half tone we produce the chromatic melody of Fig. 3. An easy way to produce the se-
quence is by simply tossing a coin several times, assigning +1 to heads and )1 to tail at each toss. Using the
results of the coin tosses, we can easily generate a melody with well-connected notes. However the step is
always j1j and this is against rule 2 in the optimal melody criteria. Furthermore such melodies can end up
far away from their starting point and this violates rule 4. In order to correct this, we shall have to use
bounding functions that limit the notes generated to the ambitus of the concerned instrument.
Suppose that we take Eq. (1) but we map the results to a diatonic scale ð5; 7; 9; 10; 0; 2; 3Þ. In this case we
choose Dy from the set f1; 2; 1; 2g. In Fig. 4, we see the resulting melody. This melody is nice but sort of
dull. Treated as a fugue, it has a nice ‘baroque’ flavour. The steps are all diatonic seconds and so it still
violates rule 2.

2.5.3.2. Random Gaussian melodies. In order to produce melodies that follow rule 2, we shall make use of a
kind of Gaussian normal distribution. Let us simulate tosses from the population distribution for intervals
(see Table 1).

Fig. 3. A Brownian or random fractal chromatic melody. The trombone solo in the first part of the ‘Travelling Musician’, bars 44 and
foll.

Fig. 4. A Brownian diatonic melody. The horn solo in the Travelling Musician, part 1, bars 71 and foll. The same melody is given to
the trumpet from bar 80 and treated as a fugue.
D. Schell / European Journal of Operational Research 140 (2002) 354–372 359

Table 1
The normal-1 distribution
Interval )7 )6 )5 )4 )3 )2 )1 +1 +2 +3 +4 +5 +6 +7
Frequency 1 1 2 3 6 8 10 10 8 6 3 2 1 1

Fig. 5. A Gaussian walk in a diatonic space. ‘fantasy of a happy driver’ is the title of the solo fluegelhorn (the Travelling Musician, part
1, bars 13 and foll).

Table 2
The normal-2 distribution with heavier weight for the small intervals
Interval )7 )6 )5 )4 )3 )2 )1 +1 +2 +3 +4 +5 +6 +7
Frequency 1 1 2 3 5 8 16 16 8 5 3 2 1 1

Fig. 6. A Gaussian chromatic walk. The tuba solo (the Travelling Musician, part 1, bars 95 and foll).

We start from a note, say 0, and at each step we add a sample interval from the distribution. If the
melody goes too far up or down we re-adjust with a bounding function that produces an octave step (see the
wavy arrow under the note 7 in the above example). The walk-melody now shows much more variety.
However large intervals are now perhaps too frequent. We may then wish to re-adjust the distribution by
adding more weight to the small intervals (see Fig. 5).
If we take the distribution as in Table 2, but apply it to the chromatic notes, we obtain the melody shown
in Fig. 6.

3. Analysis of some traditional chord sequences

3.1. Triads

3.1.1. Harmonic and name-triads


Suppose we group notes into vertical sets of three, called triads (see Fig. 7). Triadic and chordal analyses
have been extensively analysed in such seminal works as Forte (1973) and Gilber (1974).

Fig. 7. Three major triads, figured as harmonic triads – H-triads – then as relative triads – R-triads.
360 D. Schell / European Journal of Operational Research 140 (2002) 354–372

The first triad, based on note C, contains notes (C, E, G) ¼ (0, 4, 7). Notice that the lowest note of the
triad is the first element (in this case C or 0). Similarly, the second and third triads are (F, A, C) ¼ (5, 9, 0)
and (G, B, D) ¼ (7, 11, 2). We call these triads harmonic triads or H-triads.

Definition. A harmonic triad H-triad is an array of three different elements, whose values range between 0
and 11. H-triad ¼ ði; j; kÞ; i 6¼ j 6¼ k; 0 6 i; j, k 6 11.
A relative triad R-triad is written under the form m; nðrÞ:
m; nðrÞ ¼ ðr; m þ r; m þ n þ rÞ:
Example: The triad (C, E, G) can be written as H-triad ð0; 4; 7Þ or as R-triad 4; 3ð0Þ.

The advantage of the R-triad figuring is that it shows the successive intervals between the elements of the
triads. It gives information on the interval structure of the triad.
Open and closed forms of a triad: The six permutations of a triad can be put into two categories: open and
closed triads. A triad is closed if no note of the same name can be inserted between two notes of the triad,
otherwise it is open. In musical terms, a triad is closed if no two notes in the triad are spaced more than an
octave apart. For example, if we take form (4) in Fig. 8, ð0; 7; 4Þ, we see that we can insert another note in
the pitch class 4 between 0 and 7, forming ð0; 4; 7; 4Þ. This form is therefore open.
Definitions. Let us call ambitus, the interval difference in half tones, measured between the highest and the
lowest note of a triad. Then the triad is closed if its ambitus is <12, otherwise it is open.
Name-triad: Take a H-triad. Generate its six permutations. Choose the H-triad with the shortest
ambitus. Transform it in an R-triad. This is the name-triad.
Example: Take triad ð7; 4; 0Þ. Generate its six permutations represented in Fig. 8. Choose the one with the
shortest ambitus. It is ð0; 4; 7Þ with an ambitus of 7. Reference it as 4; 3ð0Þ. Then 4; 3ð0Þ is the name-triad of
the six triads of Fig. 8.
The reason for calling it name-triad comes from musical tradition. All the six triads of Fig. 8 are called C
major triads. Their name is derived from the r-element in the name-triad.

3.1.2. Existing name-triads


By some simple manipulation, it is easy to show that there are only 19 possible name-triads over the
chromatic set. They are listed in Table 3.

Fig. 8. The three closed and three open forms of the H-triad ð0; 4; 7Þ.

Table 3
The possible name-triads
1; 1 1; 2 1; 3 1; 4 1; 5
2; 1 2; 2 2; 3 2; 4 2; 5
3; 1 3; 2 3; 3 3; 4
4; 1 4; 2 4; 3 4; 4
5; 1
D. Schell / European Journal of Operational Research 140 (2002) 354–372 361

For instance suppose we have a triad 10; 3ð0Þ. It is then formed from the notes ð0; 10; 1Þ. If we re-arrange
to obtain the form with shortest ambitus, we get ð10; 0; 1Þ. The new name-triad is 2; 1ð10Þ, which is from the
class 2; 1 in Table 3.

3.2. Chords

The traditional harmony studies the art of building chords and assigning them to melodies. A chord is
visually a vertical set of notes that achieve a harmonic function. Aurally, it is a collection of notes that are
sounded simultaneously. Thus chords might be dyads, triads, and in general n-ads, provided that they have
some kind of a bass note or else a prominent note to which they can be related. Let us choose the following
restrictive definition:
A chord is a triad on a bass note: m; nðrÞ=b.
As a first step we may choose to adopt the bass note b as the root. In this case we have r ¼ b. Otherwise
we might choose a bass that depends on the structure of the chord. Here is a very simple method: In order
to find the bass for a given triad m; nðrÞ, add the number in the matrix, at position ðm; nÞ to the root r of the
triad.
For example, according to Table 4, the bass for triad 3; 2ð7Þ will be 7  4 ¼ 3. The bass for triad 1; 1ð8Þ
will be 1. Such a table or any other rules can be entirely designed according to the taste of the composer.

3.3. The 4,3 sequence from the musical tradition

Let us start with the basic 4-chord harmonic sequence as given in Fig. 9.
We represent this in Table 5. First of all, we observe that we have vertical columns corresponding to the
chords, and horizontal rows corresponding to the voices.

Definition. A voice is a horizontal set containing the notes of a given level in the chords. The voices are thus
represented on the rows of the table.

Table 4
An example of a bass table of the triad m; n
m; n 1 2 3 4 5
1 5 )4 1 )2 )4
2 )4 0 )2 2 )3
3 )3 )4 )3 0 0
4 )3 2 0 0 0
5 )4 )3 0 0 0

Fig. 9. The traditional 4-chords sequence built on degrees 0, 5, 7 and 0 of the major scale and known as (I IV V I) or (C Maj, F Maj,
G Maj, C Maj).
362 D. Schell / European Journal of Operational Research 140 (2002) 354–372

Table 5
Lists, in integer figures, the musical data of Fig. 9
Chord 1 Salto Chord 2 Salto Chord 3 Salto Chord 4 Total absolute
4; 3ð0Þ notes 4; 3ð5Þ notes 4; 3ð7Þ notes 4; 3ð0Þ notes melodic salto
Voice 1 (soprano) 0 0 0 )1 11 +1 0 2
Voice 2 (alto) 4 +1 5 )3 2 +2 4 6
Voice 3 (tenor) 7 +2 9 )2 7 0 7 4
Triad 12
Bass 0 +5 5 )10 )5 (or 7) +5 0

3.3.1. Rules for forming a good traditional 4-chord sequence


Traditional harmony teaches us why composers choose this particular sequence over other options.
Rule 1. Covering: All the notes of a given scale should be included in the four triads. As a consequence, there
are no notes in the given scale which cannot be harmonised by one of these chords.
Rule 2. Surprise: The triads contain different notes in order to produce an element of surprise and variety.
Rule 3. Connection: The voices in the triads are smoothly connected one to each other. Suppose chord 1 is
followed by chord 2; then the inversion of chord 2 that we choose is the one that minimises the number of
steps or absolute salto in transitioning from chord 1.
Rule 4. Structure: All the chords of the sequence have an equal or analogue interval structure (for instance,
they are all 4; 3).
Rule 5. Voice pattern: One of the voices, here the bass, does not need to follow the rule of connection. In our
case, the bass follows a kind of pattern and it is not connected as a melody.
Verification:
Rule 1: The set of three triads ðð7; 4; 0Þ; ð9; 5; 0Þ; ð7; 2; 11ÞÞ covers ð0; 2; 4; 5; 7; 9; 11Þ, all the notes in the C
major scale.
Rule 2: From ð7; 4; 0Þ to ð9; 5; 0Þ we have two notes changing. From ð9; 5; 0Þ to ð7; 2; 11Þ we have three.
Rule 3: In Table 5 we analyse the number of steps, or salto, in each voice. In voice 1, the soprano, we go
from note 0 to 0 with a salto value of 0. Then from note 0 to 11, with a salto of )1, then from 11 to 0, with a
salto of +1. The total absolute salto for voice 1 is two. For voices 2 and 3 we obtain 6 and 4, respectively.
The total absolute salto for the triad is therefore 12, which is a small number. We say that these triads are
optimally connected.
Rule 4: All four triads are of the structure 4; 3.
Rule 5: The bass follows a balanced pattern. It goes up +5 from 0 to 5, then again +5 from 7 to 0.
Notice that between chords 3 and 4, in voice 1, there is a salto of +1 between notes 11 and 0, combined
with a salto of +5 in the bass. This illustrates a fundamental rule in tonal music. Explained in musical terms:
the leading note B resolves to C, in a cadence from G to C.

3.4. Another 4,3 sequence

If we analyse the 4-chord sequence displayed in Fig. 10, we see closer adherence to the optimality rules.
This sequence is used in the author’s operetta ‘Swiss Chalet’ (1979).
D. Schell / European Journal of Operational Research 140 (2002) 354–372 363

Fig. 10. This sequence presents a soprano all connected in steps of )1.

If we compare it to the sequence in Fig. 9, we see that this 4-chord sequence:


• spans more notes. In this case 8: ð0; 2; 4; 5; 6; 7; 9; 10Þ; and
• has a total absolute salto (TAS) of 14.

4. Some beautiful tiles

4.1. The major–minor 4,3–3,4 sequence

Let us try to go a step further in studying optimal 4-chord sequences. The sequence shown in Fig. 11 is
quite remarkable. It is analysed in Table 6.
Let us verify the optimality rules:
Rule 1. Covering: These sequences are a partition of the chromatic scale (0; . . . ; 11) into four sets. Infor-
mation is maximised.
Rule 2. Surprise: The triads all contain different notes. There is maximum variety.
Rule 3. Connection: The triads are smoothly connected one to another. We have an absolute salto of 11, an
excellent result.
Rule 4. Structure: There are two 4; 3 and two 3; 4 chords.
Rule 5. Voice pattern: The bass line follows a balance pattern: +7, +7.

Fig. 11. The 2 ð4; 3Þ, 2 ð3; 4Þ remarkable ‘beau carreau’.

Table 6
The musical data of Fig. 11 listed in integer figures: The voices and connecting paths in 2 ð4; 3Þ, 2 ð3; 4Þ
4; 3ð0Þ Notes Salto 3; 4ð8Þ Notes Salto 4; 3ð10Þ Notes Salto 3; 4ð9Þ Notes Total absolute salto
Voice 1 0 )1 11 )1 10 )1 9 3
Voice 2 7 +1 8 )3 5 +1 6 5
Voice 3 4 )1 3 )1 2 )1 1 3
Triad 11
Bass 4 +7 11 )9 2 +7 9
364 D. Schell / European Journal of Operational Research 140 (2002) 354–372

Fig. 12. The four triads of Fig. 11 represented on a circle.

The division of 12 tones into four mutually exclusive triads, and particularly in two major ð4; 3Þ and two
minor ð3; 4Þ triads has been mentioned in Slonimsky (1947, p. 177). Numerous composers, in particular
Joseph-Mathias Hauer (1883–1959) in his ‘44 Tropes’ (Hauer, 1926), have used similar arrangement. We
shall call these arrangements ‘tilings’.
If we represent (see Fig. 12) these triads on a circle we have the impression of a decorated tile, with
regular geometric pattern. This is the reason why the author called it ‘beau carreau’ (the French for
‘beautiful tile’), or in short ‘karo’.
The author has used the chord sequence of Fig. 11 in his opera ‘Pasiones’ (1981). What is quite re-
markable about this 4-chord sequence is the smooth progression of the voices. They are so well connected
that one could accept them as ‘melodies’ going though the chords. Listen to the second part of Optimal
Study No. 3 (from bar 36) which is built entirely on this beautiful tiling.

4.2. Other beautiful tiles

Definition. ‘A beautiful tile’ is a partition of Z-12 into four mutually exclusive triads, having either (four
identical m; n) or (two m; n and two n; m) structures.
(1) 1; 2ð0Þ – 2; 1ð2Þ – 2; 1ð8Þ – 1; 2ð6Þ is a beautiful tile;
(2) 4; 2ð1Þ – 2; 4ð2Þ –2; 5ð3Þ – 3; 2ð6Þ is just a tile; and,
(3) 2; 5ð5Þ – 3; 4ð8Þ – 4; 3ð6Þ – 2; 5ð2Þ is also a tile although it shows more symmetry than (2).
In ‘Quelques beaux carreaux’ (Schell, 1983), the author has enumerated all the 18 beautiful tiles and built
small melodies around it.

4.2.1. Beautiful tile (2,4–4,2)


For this sequence we show only the four triads, not the bass (see Fig. 13). In Table 7, we see that the TAS
is 11, which is the smallest value we have encountered so far.

Fig. 13. A beautiful tile with high connection.


D. Schell / European Journal of Operational Research 140 (2002) 354–372 365

Table 7
The musical data of Fig. 13 listed in integer figures
2; 4ð8Þ Notes Salto 2; 4ð9Þ Notes Salto 4; 2ð0Þ Notes Salto 4; 2ð1Þ Notes Total absolute salto
Voice 1 2 1 3 1 4 1 5 3
Voice 2 10 1 11 1 0 1 1 3
Voice 3 8 1 9 )3 6 1 7 5
Triad 11

Table 8
The musical data of Fig. 14 listed in integer figures
1; 1ð0Þ Notes Salto 1; 1ð3Þ Notes Salto 1; 1ð6Þ Notes Salto 1; 1ð9Þ Notes Total absolute salto
Voice 1 2 2 4 4 8 2 10 8
Voice 2 1 2 3 3 6 3 9 8
Voice 3 0 )7 5 2 7 4 11 13
Triad 29

Fig. 14. The four triads 1; 1.

These highly connected chords can give a ‘flowing’ effect which the author has used in ‘The Travelling
Musician’ to simulate the flow of the traffic on a road. (For instance in bars 63–70). Listen also to the first
bars (1–2) of the Optimal study No. 3 ‘Choral’.

4.2.2. Beautiful tile 1,1


Here we have a rather obvious partition of the chromatic set into four 1; 1 triads (see Table 8 and Fig.
14). This beautiful tile, however, is difficult to connect and shows a minimum absolute salto of 29, the
highest we have encountered so far. The triads themselves are melodies. Given the bad connection, it will be
difficult to follow the various melodic voices. This tile is used in Optimal Study No. 1 ‘Giocoso leggiero’ for
tuba and trombone. It is felt that the triads themselves are melodies, as in the trombone bar 1 ð7; 8; 9; 8; 7Þ.

4.2.3. Beautiful tile 2,3–3,2


We see in Fig. 15 that the notes of the four triads presented in sequence already exhibit a melodic
character. Indeed the notes are
ð0; 2; 5; 7; 9; 4; 6; 8; 11; 1; 3; 10Þ: ð2Þ
If we put in a vector the successive differences between the elements of (2) we obtain
ð2; 3; 2; 2; 3; 2; 2; 3; 10; 2; 5Þ:
We find here the characters of a good melody, analogous to the analysis of the Gaussian melody of Fig. 6.
366 D. Schell / European Journal of Operational Research 140 (2002) 354–372

Fig. 15. Left: The tile 2,3–3,2 represented as a melody. Right: The same on a circle.

Fig. 16. The same tile connected, represented without the bass.

Table 9
The voicing of Fig. 16
2; 3ð0Þ Notes Salto 3; 2ð10Þ Notes Salto 3; 2ð4Þ Notes Salto 2; 3ð6Þ Notes Total absolute salto
Voice 1 5 )2 3 3 6 )2 4 7
Voice 2 2 )1 1 )2 11 )2 9 5
Voice 3 0 )2 10 )2 8 )1 7 5
Triad 17

Now let us represent the same tile, this time in connected block chords (see Fig. 16).
The connecting algorithm shows that this tile has a TAS of 17, which is a rather good result. If we
examine the voices that go through the triads (Table 9), we see that they are made of steps of 1, 2 or 3.
Again, we find a characteristic of a good melody.
This tile has been extensively used by the author because of this simultaneous character of good connection
and melodic interest. Optimal studies No. 2 and especially No. 9 are entirely based on the properties of this tile.

5. The algorithmic generation of tiles

5.1. Practical usage and implementation

The practical usage of these algorithms would be:


• to serve as a research tool to study the compositional and mathematical properties of the karos;
• to serve as a calculette for composers; and
• to serve as modules to be incorporated into larger composing programs.
These algorithms have been used in experiments such as:
• composing machines powered by solar energy;
• projects to send composing machines into space, or implement composing algorithms to run in space,
under severe power consumption constraints;
• instant composing on stage.
D. Schell / European Journal of Operational Research 140 (2002) 354–372 367

Implementation: The following algorithms have been conceived in order to fit in extremely small computer
memories. One of the first algorithms was actually implemented in 1K of memory. The reason for this was
again a common practice in operational research: save the resources!
There has been various implementations of ‘karo engines’ (IRCAM (1985); Markus Reuter, University
of Bielefeld (1995)). The objective is to generate lists of karos under various parameters and then to connect
them. The researcher then poses a question and searches through the list to find the karo which best
answers the question.
The answers from the karo engine could help demonstrate a few properties of the karos. A typical
question could be, ‘Which non-symmetrical karo has the best connection and what will be its TAS?’ (the
author guesses that this TAS would be not smaller than 11).
Ola Rinta-Koski of Finland is presently preparing an implementation of the karo engine in LISP.

5.2. A list of tiles in lexicographic order

5.2.1. Generation
Suppose that we want to generate a list of all existing tiles. This list will be useful either for composing
purposes or simply for checking the existence of a given tile. There is a total of 15,400 such partitions of Z-
12 into four triads (see Appendix A.1.3.1).
We can reduce this problem to a list of all co-sets of a given triad. Suppose that we choose to keep the
first triad fixed, say ð0; 4; 7Þ. We have to create the list of partitions of the remaining notes, given by
ð1; 2; 3; 5; 6; 8; 9; 10; 11Þ; ð3Þ

into three triads. Let us replace the list (3) by its mapping to (0; . . . ; 8). The problem then becomes
equivalent to one of creating a list of partitions starting with
ð0; 1; 2Þð3; 4; 5Þð6; 7; 8Þ: ð4Þ

We wish to choose the lexicographic order.


If we take the first triad of (4) and keep the 0 fixed, then we shall generate 8 choose 2, C½8; 2 ¼ 28
combinations of the first triad.
The order will be like this
ð0; 1; 2Þð0; 1; 3Þ . . . ð0; 1; 8Þ
ð0; 2; 3Þ . . . . . . ð0; 2; 8Þ
...
ð0; 7; 8Þ:

For each value of triad 1, we have 2 triads left, namely,


ð3; 4; 5Þð6; 7; 8Þ:

Again, if we keep the 3 fixed, we will generate C½5; 2 ¼ 10 combinations, which can be enumerated suc-
cessively as
ð3; 4; 5Þð3; 4; 6Þ . . . ð3; 4; 8Þð3; 5; 6Þ . . . ð3; 7; 8Þ:
The total number of co-sets of a given triad will be 10 28 ¼ 280.
The algorithm is designed in order to return a given line in the lexicographic list.
Example: Given a first set ð1; 2; 3Þ ð5; 6; 8Þ ð9; 10; 11Þ, the 116th lexicographic partition of this set would be
ð10; 1; 3Þð2; 6; 9Þð4; 3; 6Þ.
368 D. Schell / European Journal of Operational Research 140 (2002) 354–372

5.2.2. Analysis of a given tile in the list


We have produced a list of all partitions of the nine notes into three mutually exclusive triads. Each of
these triads is then analysed and notated in the form of a NAME triad m; nðrÞ. For instance the 116th
partition of ð0; 4; 7Þ namely ð10; 1; 3Þ ð2; 6; 9Þ ð4; 3; 6Þ would be analysed as: 4; 3ð0Þ, 3; 2ð10Þ, 4; 3ð2Þ, 1; 3ð4Þ.
A manual or algorithmic analysis may then follow in order to determine if this partition fulfils the
optimality criteria. In this particular case, the partition is not a ‘beautiful karo’.

5.3. The connection of tiles

The connection of triads one to another will produce smooth voice steps. Again, our goal is to save the
resources of the singer. Given a four-triad sequence, the algorithm will connect the triads two by two.
Suppose we have four triads A, B, C, D. We first search for the best connection between A and B. We
compute a TAS for each inversion of B and choose the one with the minimum TAS, MINTAS.
We then assume that
MINTASðABCDÞ ¼ MINTASðABÞ þ MINTASðBCÞ þ MINTASðCDÞ: ð5Þ
We should now compute the MINTAS for all the 4! ¼ 24 possible permutations of the path through
ABCD. However, we know that by symmetry
MINTASðABÞ ¼ MINTASðBAÞ:
Therefore (5) can be rewritten as
MINTAS ðABCDÞ ¼ MINTAS ðBAÞ þ MINTAS ðCBÞ þ MINTAS ðDCÞ ¼ MINTAS ðDCBAÞ:
As the function MINTAS is reflexive, we need only to compute 12 paths.
The algorithm will be further simplified by the fact that there are only C½4; 2 ¼ 6 two triad paths, namely
AB; AC; AD; BC; BD; CD: ð6Þ
The algorithm will then be
Compute MINTAS for the six triad pairs given in (6).
Compute the values of the TAS on the 12 paths (ABCD).
The best connected four triad sequence will have the minimum TAS, MINTAS.
This problem may also be solved using a ‘Travelling Salesman Problem’, TSP-type algorithm. We
represent the 4-chords of Section 4.1 on the graph shown in Fig. 17. The edges between any two vertices
carry ‘weights’ corresponding to the TAS calculated for each two triad pair in Table 6. We can see easily
that there are two optimal solutions, both with a TAS of 11.
Many types of algorithms can be used to solve this problem. For instance, the dynamic programming
type of algorithm given in Horowitz and Sahni (1978, pp. 232–233) gives the same results. Any minimum

Fig. 17. On the left, the graph of the connections of the karo 4,3–3,4. The solution is equivalent to the shortest path in a travelling
salesman problem. On the right are the two solutions.
D. Schell / European Journal of Operational Research 140 (2002) 354–372 369

spanning tree algorithm can also be adapted to this type of problem (for a discussion see Khuller and
Raghavachari, 1999, pp. 6-13 to 6-19).

5.4. The list of the beautiful karo-s

The author has published (Schell, 1983, ‘Quelques beaux carreaux’) a list of the ‘beautiful karo-s’, the 4-
chord tiling sequences showing 4– or 2–2 symmetry (see Table 10). This sub-list has been found by man-
ually analysing the complete list (as explained in Section 5.2.2), which was produced by a program that he
developed at the IRCAM in Paris. Then in 1987, the minimal connection was again calculated by a
computer algorithm (as explained in Section 5.3).
First column: The list of karo-s showing maximal symmetry. Second column: The number of optimal
paths. Third column: Total absolute salto including transposition. Fourth: TAS excluding transposition. The
transposition (see Appendix A.1.2) can sometimes be unwanted and considered trivial, therefore both
options are shown.
There exist many derivatives of these karo-s, which show other types of symmetries or no symmetry at
all. These were extensively used in ‘L’enfoui fuit’ (Schell, 1990, 1999).
On his work, the author wishes to present a conjecture: In this particular type of tiling, under optimal
constraints, there seems to be a relationship between the structure of the chords and their predisposition
toward being well connected. For instance karos made of 1; 1 are difficult to connect, but karos of the type
4; 4 or 4; 3–3; 4 are eminently connectable.

5.5. Tiles and melodies

We shall now relate the concepts of melody and voice. We can consider that the minimal path found
between four triads outlines a macro-melody consisting of only four notes. The melodies inserted in be-
tween the macro-melody notes can be generated by any algorithmic method and may contain as many notes
as we want. We may view them as micro-variations on the macro-melodies (see Fig. 18).

Table 10
List of the beautiful karo-s and their total absolute salto
Karo Number optimal solutions TAS (including transposition) TAS (excluding transposition)
1,1(0), 1,1(9), 1,1(6), 1,1(3) 4 27 33
2,1(2), 2,1(8), 1,2(0), 1,2(6) 2 23
2,2(0), 2,2(7), 2,2(1), 2,2(0) 2 15 17
3,1(5), 1,3(0), 3,1(1), 1,3(6) 2 15
3,1(7), 1,3(2), 3,1(5), 1,3(0) 2 19 23
2,3(0), 3,2(4), 2,3(6), 3,2(10) 2 17
4,1(8), 1,4(2), 1,4(4), 4,1(6) 1/2 17 20
4,1(3), 4,1(0), 4,1(9), 4,1(6) 4 21
1,4(11), 1,4(5), 1,4(2), 1,4(8) 4 21
4,1(9), 1,4(11), 4,1(3), 1,4(5) 2 18
2,4(8), 4,2(1), 4,2(0), 2,4(9) 1 11 17
4,2(0), 4,2(5), 2,4(8), 2,4(1) 3 13
2,4(11), 4,2(0), 2,4(8), 4,2(3) 3 13
4,3(0), 3,4(8), 4,3(10), 3,4(6) 2 11
4,3(0), 3,4(8), 4,3(6), 3,4(2) 2 11
4,4(0), 4,4(1), 4,4(2), 4,4(3) 4 9
5,1(4), 1,5(2), 5,1(1), 1,5(11) 2 16
2,5(10), 5,2(11), 2,5(7), 5,2(8) 4 15
370 D. Schell / European Journal of Operational Research 140 (2002) 354–372

Fig. 18. Melodies are built in between the chordal notes. The optimal paths between the chordal notes can be ornamented by micro-
variations generated by fractal methods.

6. Conclusion

Melodies can be generated under a series of optimal constraints by relatively simple algorithms such as
fractal, Brownian or Normal Gaussian methods.
Harmonic sequences can be chosen and generated using rules of variety, symmetry, enumeration, and
other criteria. These harmonies can be mapped to a set of vertices on a graph. The optimal voices are
identified by the edges of the minimal spanning trees in these graphs. The problem is related to the trav-
elling salesman problem (TSP) and can be solved using the usual methods for TSP problems.
From the 12 pitch-classes of Z-12, we derive 19 types of name-triads, and eventually 280 types of karos.
The author conjectures that there is a relationship between the structure of the karos and their proclivity to
being well connected. Finally, these optimal paths can be transformed by inserting fractal variations.
Until now, the algorithms have been developed for Z-12 and sequences of 4-chords. In the future, the
author wishes to extend their properties to the groups Z-19 and Z-24, as well as for longer sequences. A
‘karo engine’ is under construction and will be the subject of a future publication.

Acknowledgements

I wish to thank Philippe Van Asbroek and the whole EURO team for their commission and encour-
agement. Elaine Chew (pianist, music and OR specialist who has agreed to proofread and criticise), Jakob
Krarup and Ernst Arnspang of Copenhagen University who gave many valuable suggestions.

Appendix A

A.1. Algorithms

We give here a few basic algorithms necessary for the comprehension of the above text. A full description
of the algorithms will be part of a future publication.

A.1.1. Operation on notes


Modulo MOD 12(A);
WHILE A >¼ 12 DO A :¼ A-12; REPEAT
WHILE A < 0 DO A :¼ A + 12; REPEAT
END
Transposition is the musical equivalent of the addition.
TRANSPOSE (A, k, B) means transpose object A by k to obtain object B.
TRANSPOSE (2, 3, 5) // The transposition of D by 3 half-tones is F.
Inversion is the musical equivalent of the symmetry.
INVERSION OF INTERVAL (i) ¼ INTERVAL (12-i).
D. Schell / European Journal of Operational Research 140 (2002) 354–372 371

INVERT (N, 12-N) // The inversion of N is 12-N.


INVERT (1, 11) // The inversion of C# is B.

A.1.2. Operations on triads


TRANSPOSE ðð5; 9; 0Þ; 3; ð8; 0; 3ÞÞ // The transposition of F major triad (F, A, C) by 3 half tones is Ab
major (Ab, C, Eb).
INVERT ðð0; 4; 7Þ; ð0; 8; 5ÞÞ // The inversion of the triad (C, E, G) is (C, Ab, F).
Permute Cycle PCY ((a, b, c), (b, c, a)).
Example: PCY ðð0; 4; 7Þ; ð4; 7; 0ÞÞ // the cyclic permutation of ð0; 4; 7Þ is ð4; 7; 0Þ.
Permute Extreme PEX ((a, b, c), (c, b, a)).
PCY3 ¼ N where N stands for the neutral element.
Theorem: Starting from a permutation of a triad it is possible to produce any permutation by combining
N, PCY and PEX.
Reference an H-triad: A harmonic triad like ð4; 0; 7Þ does not give the exact situation of the elements in
their respective octaves. REF(Triada, Triadb).
Given a triad (a(i)), i ¼ (1..3); add 12 whenever a(i + 1) < ¼ a(i)
Example: REF ðð4; 0; 7Þ; ð4; 12; 19ÞÞ // Triad ð4; 0; 7Þ referenced is ð4; 12; 19Þ
Evaluate the ambitus of a triad
EVAL (triada, ambitus)
Triada :¼ (a, b, c)
REF(triada, triadb)
Ambitus:¼(b(3) – b(1))
Example: EVALðð4; 0; 7Þ; 15Þ // the ambitus of triad ð4; 0; 7Þ is 15.
Name a triad. The Name-triad is the closest form of all permutations. In order to find it we use the fol-
lowing properties:
A triad is open if its ambitus is >12, otherwise it is closed.
PCY ((open triad), (open triad)); // any cyclic permutation of an open triad is open. Same for a
closed.
PEX ((open triad), (closed triad)) // any Permute Extreme of an open triad produces a closest.
The inverse is also true.
Algorithm NAME (Triada, (m,n(r)))
VARIABLE Triada
EVAL(Triada(i), ambitus); If ambitus > 12 THEN PEX(Triada) ENDIF
LOOP DO
PCY (Triada); EVAL (Triada, ambitus); notambitus :¼ 12-ambitus;
firstdif :¼ Triada(2)-Triada(1); seconddif :¼ Triada(3)-Triada(2);
Closest :¼ (notambitus > ¼ firstdif AND notambitus > ¼ seconddif)
UNTIL Closest ¼ TRUE
m :¼ firstdif; n :¼ seconddif; r :¼ Triada(1)

A.1.3. Generation of tiles


A.1.3.1. Number of tiles. The number of permutation of the chromatic set (0,. . .,11) ¼ 12! There are four
triads and their order is irrelevant. Number of permutations of 4 triads ¼ 4! The order in the triads is ir-
relevant. Number of permutations of one triad: 3!
372 D. Schell / European Journal of Operational Research 140 (2002) 354–372

PARTð12; 4 triadsÞ ¼ Number of partitions of the chromatic set into 4 mutually exclusive triads
¼ 12!=ð4! ð3!ÞE4Þ ¼ 15:400
Another way to generate this result is the following:
To generate PART(6,2 triads), we shall have a list of the form (A. . .) (. . .) in which the first element A
can be fixed and positions 2 and 3 have to be filled with the C(5 choose 2) ¼ 10 remaining combinations.
Similarly
PARTð9; 3 triadsÞ ¼ Cð8 choose 2Þ Cð5 choose 2Þ ¼ 28 10
And
PARTð12; 4 triadsÞ ¼ Cð11 choose 2Þ Cð8 choose 2Þ Cð5 choose 2Þ ¼ 55 28 10 ¼ 15; 400:

References

Barbaud, P., 1968. La Musique, Discipline Scientifque. Dunod, Paris.


Barbaud, P., 1983. Vademecum de L’ingenieur en Musique. Springer, Berlin.
Balzano, G.J., 1980. The group-theoretic description of 12-fold and microtonal pitch systems. Computer Music Journal 4 (4), 66.
Bidlack, R., 1992. Chaotic system as simple (but complex) compositional algorithm. Computer Music Journal 16 (3), 33–47.
Boon, J.-P., Decroly, O., 1995. Dynamical systems theory for music dynamics. Chaos 5 (3), 501–508.
Brindle, R., 1966. Serial Composition. Oxford University Press, Oxford.
Chew, E., 2001. Modeling tonality: Applications to music cognition. In: Moore, J.D., Stennings, K. (Eds.), Proceedings of the 23rd
Annual Meeting of the Cognitive Science Society. Lawrence Erlbaum, Mahwah, NJ.
Clarke, J., Voss, R.F., 1978. 1=f noise in music: Music from 1=f noise. Journal of the Acoustical Society of America 63 (1), 258–263.
Cohn, R., 1998. Introduction to neo-Riemannian theory. Journal of Music Theory 42, 167–180.
Forte, A., 1973. The Structure of Atonal Music. Yale University Press, New Haven, CT.
Gardner, M., 1978. White and Brown music, fractal curves and 1=f fluctuations. Scientific American 238 (4), 16–31.
Gilber, S., 1974. Introduction to trichordal analysis. Journal of Musical Theory 18 (2).
Hastings, H.M., Sugihara, G., 1993. Fractals, A User’s Guide for the Natural Sciences. Oxford University Press, Oxford.
Hauer, M., 1926. ‘Zw€ olftontechnik’ die Lehre von den Tropen. Universal Edition, Wien.
H€ornel, D., Menzel, W., 1998. Learning musical structure and style with neural networks. Computer Music Journal 22 (4), 44–62.
Horowitz, E., Sahni, S., 1978. Fundamentals of Computer Algorithms. Computer Science Press, Rockville, MD.
Khuller, S., Raghavachari, B., 1999. Basic graph algorithms. In: Atallah, M. (Ed.), Algorithms and Theory of Computation
Handbook. CRC Press, Boca Raton.
Lerdahl, Jackendorf, 1983. A Generative Theory of Tonal Music. MIT Press, Cambridge, MA.
Lewin, D., 1987. Generalised Musical Intervals and Transformations. Yale University Press, New Haven, CT.
Longuet-Higgins, H.C., Steedman, M., 1971. On interpreting Bach. Machine Intelligence 6, 221–241.
Mc Alpine, Miranda, Hogar, 1999. Making music with algorithms. A case study system. Computer Music Journal 23 (2), 19–30.
Roads, C., 1966. The Computer Music Tutorial. MIT Press, Cambridge, MA.
Sayegh, S., 1989. Fingering for string instruments with the optimum path paradigm. Computer Music Journal 13 (3), 76–83.
Schell, D., 1983. Quelques Beaux Carreaux. Clic Music, Brussels.
Schell, D., 1990, 1999. L’enfoui Fuit. Clic Music.
Schell, D., 2000a. The Travelling Musician. Clic Music.
Schell, D., 2000b. Optimal Studies. Edition Simonffy, Budapest.
Schillinger, J., 1976. The Mathematical Basis of the Arts. Da Capo Press, New York.
Slonimsky, N., 1947. Thesaurus of Scales and Melodic Patterns. Duckworth, London (reprint 1975).
Taube, H., 1997. An introduction to common music. Computer Music Journal 21 (1), 29–34.
Temperley, D., Sleator, D., 1999. Modeling meter and harmony: A preference-rule approach. Computer Music Journal 23 (1), 10–27.

You might also like