Sie sind auf Seite 1von 104

Realisierung eines Systems zur

automatischen Harmonisierung
Bachelorarbeit im Fach Informatik

vorgelegt von

Noam Yogev

geb. 11 November 1974 in Israel

angefertigt am

Institut für Informatik


AG Künstliche Intelligenz
Freie Universität Berlin
(Prof. Dr. Raúl Rojas)
bla
zplane.development
(Dipl. Ing. Alexander Lerch)

Beginn der Arbeit: 17 Juni 2008


Abgabe der Arbeit: 16 September 2008
Ich versichere, daÿ ich die Arbeit ohne fremde Hilfe und ohne Benutzung
anderer als der angegebenen Quellen angefertigt habe und daÿ die Arbeit in
gleicher oder ähnlicher Form noch keiner anderen Prüfungsbehörde vorgele-
gen hat und von dieser als Teil einer Prüfungsleistung angenommen wurde.
Alle Ausführungen, die wörtlich oder sinngemäÿ übernommen wurden, sind
als solche gekennzeichnet.

Berlin, den 16.IX.2008

Noam Yogev
Mein Dank gilt Alexander Lerch  für die Zielsetzung, das Herausfordern, die
Hilfe, und die Kritik , meinen Musiklehrern über drei Jahrzehnte, Michal
Levitin für viele n's und m's, Meriel, und meiner Familie  für das Studium
überhaupt.

!!‫ תודה‬Ê ‫לאילינוי לאמא ולאבא‬


bla

Composers combine notes, that's all. Igor Stravinsky


Inhaltsverzeichnis
1 Einleitung 1

2 Grundlagen 5
2.1 Musik und Harmonie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.1 Intervalle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.2 Tonleitern und Tonarten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.3 Akkorde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.4 Tonalität und harmonische Funktionen . . . . . . . . . . . . . . . . . 10
2.1.5 Harmonik, Harmonisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.6 Harmonielehre, Stimmführung, Akkordfolgen . . . . . . . . . . . 11
2.2 Melodiesegmentierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3 Dynamische Programmierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4 Hidden Markov Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4.1 Markov-Ketten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4.2 Hidden Markov Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4.3 Viterbi-Algorithmus erster Ordnung . . . . . . . . . . . . . . . . . . . . 23
2.4.4 Viterbi-Algorithmus zweiter Ordnung . . . . . . . . . . . . . . . . . . . 24
2.4.5 Weitere Problemstellungen für HMMs . . . . . . . . . . . . . . . . . . 26

3 Einblick in das Themengebiet 27


3.1 Literaturübersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.1.1 Allgemeingültige Erkenntnisse . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.1.2 MusES und BackTalk. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
3.1.3 COMPOzE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.1.4 CHORAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.1.5 Vergleich CSP  GA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1.6 GYMEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.1.7 AMOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.1.8 Einsatz von HMM2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

i
ii INHALTSVERZEICHNIS

3.1.9 CPUBach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.1.10xChoralanalyse mit HMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.1.11xEin alternatives stochastisches Modell . . . . . . . . . . . . . . . . . 37
3.1.12xHARMONET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.2 Kommerzielle Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.2.1 Anvil Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.2.2 tonica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2.3 vielklang v1.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4 Algorithmus 45
4.1 Herangehensweise und Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.2 Datenrepräsentation und Schnittstelle . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2.1 Datenrepräsentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2.2 Schnittstelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3 Detaillierte Beschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.3.1 Melodiesegmentierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.3.2 Funktionsbestimmung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.3.3 Stimmsatzerstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.4 Gewählte Strategien, Probleme und Lösungen . . . . . . . . . . . . . . . . 65
4.4.1 Harmonisierung in alternativen Stilrichtungen. . . . . . . . . . .65
4.4.2 Justierung des Hidden-Markov-Models . . . . . . . . . . . . . . . . . . 66
4.4.3 Auswahl und Gewichtung der Regeln . . . . . . . . . . . . . . . . . . . 67
4.4.4 Rechengenauigkeit und Rechenleistung. . . . . . . . . . . . . . . . . .68

5 Evaluierung 71

6 Schluÿwort 85
6.1 Eigenschaften des Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
6.2 Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Kapitel 1
Einleitung
Ein System zur automatischen Harmonisierung einstimmiger (monophoner)
Melodien wird vorgestellt. Harmonisierung  das Hinzufügen zusätzlicher
Stimmen zu einer Melodie  ist ein wichtiges Gestaltungselement im Kom-
positionsprozess. Die wahrgenommene Qualität eines Musikstücks hängt vom
Vorhandensein bestimmter strukturellen Elemente ab, wie z.B. ein ausge-
prägtes tonales Umfeld, die Beachtung tonaler Beziehungen, Repetitionen,
wahrnehmbare Unterteilungen in Phrasen und die Beachtung stildenieren-
der Merkmale. Um eine Melodie musikalisch qualitativ zu harmonisieren,
müssen solche Strukturen innerhalb einer Melodie analysiert und erkannt
werden, sodaÿ sie bei der Harmonisierung nicht vertuscht, sondern vielmehr
konstruktiv beachtet, und schlieÿlich mit den hinzugefügten neuen Stimmen
unterstrichen und ausgebaut werden.
Die Ergebnisse von Systemen zur automatischen Harmonisierung werden ent-
sprechend mit musikalischen Maÿstäben gemessen. Das Vorhandensein von
Information bezüglich struktureller Aspekte der Melodie und Eigenschaften
der Stilrichtung, bzw. die Fähigkeit diese Information intelligent aus einer
Eingabemelodie zu extrahieren, sind daher entscheidend für die Qualität au-
tomatisch erstellter Harmonisierungen.
Das hier vorgestellte System harmonisiert eine einstimmige Eingabemelodie,
und liefert einen vierstimmigen, homophonen1 Satz. Das System zielt dar-
auf ab, Ergebnisse zu liefern, die sowohl musiktheoretisch korrekt als auch
stilistisch-künstlerisch anspruchsvoll sind. Um dies zu ermöglichen werden
Strukturen der Eingabemelodie, deren Kenntnis für die Qualität der Ergeb-
nisse maÿgeblich sind, mit Techniken der Mustererkennung detektiert.
Im nächstem Schritt bildet das strukturelle und inhaltliche Wissen über die
Eingangsmelodie, zusammen mit dem im System explizit wie implizit vorhan-
1 Ein Satz, bei dem alle Stimmen im gleichen Rhythmus fortschreiten

1
2 KAPITEL 1. EINLEITUNG

denen musikalischen und stilistischen Wissen die Grundlage für die Entschei-
dungen im konstruktiven Prozess der Generierung zusätzlicher Stimmen.
Das vorgestellte System wird mit einer bereits existierenden Audio-
Umgebung integriert, welche zusammen mit einem vorhandenen Harmoni-
sierungssystem in der Version 1.2 des vielklang-Plugins der Firma zpla-
ne.development eingesetzt wird. Die Aufgabenstellung dieser Arbeit ist, un-
ter Beibehaltung der zentralen Eigenschaften der Schnittstelle zur Audio-
Umgebung, ein Harmonisierungssystem zu bauen, welches sowohl für die
aktuelle musikalische Zielsetzung des vielklang-Plugins (vierstimmige Har-
monisierung nach Art der klassischen Stimmführungsregeln und mit einem
beschränkten Vorrat möglicher Akkorde) anspruchsvollere Ergebnisse als die
der vorigen Version liefert, das aber auch erweiterungsfähig ist im Bezug auf
unterschiedliche musikalische Stilrichtungen.
Der Hauptansatz für die Neugestaltung des Harmonisierungssystems besteht
darin, es mit detaillierteren strukturellen Grunderkenntnissen über die Ein-
gabemelodie zu gestatten. Die Eingabemelodie wird nach Kriterien der musi-
kalischen Wahrnehmung in Segmenten unterteilt. Im Folgendem werden diese
Segmente als jeweils abgeschlossene Einheiten im tonalen und harmonischen
Sinn betrachtet. Die Melodienoten in jedem Segment werden als Manife-
station einer latenten, harmonischen Basisstruktur betrachtet, welche dem
harmonisch-tonalen Spannungsbogen des Segments zugrunde liegt. Diese har-
monische Basisstruktur wird unter Verwendung eines stochastischen Modells
geschätzt, und dient dann als Grundlage für das Aussuchen von Akkorden
und für die Erteilung von Tönen für die zusätzlichen Stimmen, die das End-
ergebnis des Harmonisierungssystems ausmachen.
Es wird angenommen, daÿ die detektierte harmonische Basisstruktur typisch
für die Melodie, und unabhängig von erwünschten musikalischen Stilrichtung
der Harmonisierung ist. Die Harmonisierung in unterschiedlichen Stilrichtun-
gen kann somit getrennt von der Analyse der Eingangsmelodie stattnden.
Um Flexibilität bei der Wahl der erwünschten Stilrichtung der Harmonisie-
rung zu gewährleisten, werden sowohl Akkordvorräte als auch stildenieren-
den Stimmführungsregeln in getrennten Code-Modulen ausgelagert. Zudem
werden interne sowie externe Schnittstellen ausgearbeitet, welche die stilab-
hängige Justierung von Regeln und Gewichten, die Erweiterung von Akkord-
vorräten oder Regelsätzen und den vollständigen Austausch stildenierender
Modulen ermöglichen.
Die Audio-Umgebung, in die das Harmonisierungssystem eingebettet wird,
realisiert die Interaktion mit dem Anwender über Audio Ein- und Ausga-
be2 . Sie unterteilt die Eingangsmelodie in diskrete Töne, und extrahiert aus
2 Abgesehen vom graphischen Interface
3

dieser Information ihre Tonart. Aufgrund der gefundenen Tonart und der
detektierten Kammertonfrequenz werden die einzelnen Töne auf diskrete,
chromatische Tonhöhen quantisiert. An das Harmonisierungssystem werden
die quantisierten Melodietöne in ihrer MIDI3 -Darstellung als ganze Zahlen
(siehe [3] und [26]) weitergeleitet. Start- und Endzeiten (Onset bzw. Oset-
Zeiten) der einzelnen Noten werden als relative Zeitangaben gehandhabt.
Die Tonartinformation wird dem Harmonisierungssystem unter Verwendung
eines internen Formats weitergeleitet.
Die Ergebnisse des Harmonisierungssystems  die zusätzlich hinzugefügten
Stimmen  werden ebenso als Tonhöhen in MIDI-Darstellung zurück an
die Audio-Umgebung geliefert. Diese generiert eine Audio-Ausgabe, beste-
hend aus der Originalstimme zusammen mit den aufgrund der Ergebnisse
des Harmonisierungssystems und mittels Synthese aus der Eingabemelodie
gewonnenen zusätzliche Stimmen. Die Ausgabe kann angehört, editiert und
als Audio-Datei gespeichert werden.

Aufbau und Gliederung der Arbeit

Im Kapitel 2 werden musikalische Grundlagen erklärt, welche für das Ver-


ständnis des hier vorgestellten Algorithmus, sowie der Arbeitsweise der an-
deren vorgestellten Systeme vonnöten sind. Zudem wird J. Tenneys und
L. Polanskys Technik zur wahrnehmungsorientierten Melodiesegmentierung
vorgestellt, auf der die präsentierte Melodieanalyse aufbaut. Des Weiteren
werden die Technik der dynamischen Programmierung sowie das Hidden-
Markov-Model erklärt. Beide Techniken werden als Werkzeuge beim weiteren
Analyseschritt bzw. beim konstruktiven Teil der Harmonisierung eingesetzt.
Im Kapitel 3 werden bekannte Lösungen zur automatischen Harmonisierung
präsentiert. Ähnlichkeiten bzw. Unterschiede in der konzeptuellen Sicht auf
die Problemstellung werden hervorgehoben: welche musikalisch-strukturellen
Merkmale werden als notwendig für die Harmonisierung angesehen, wie wer-
den sie detektiert, verarbeitet und interpretiert, und welchen Einuÿ haben
diese Entwurfsentscheidungen auf die Qualität der Ergebnisse. Zudem wird
die Arbeitsweise des Harmonisierungssystems in der vorigen Version des viel-
klang-Plugins erklärt, welches durch das hier vorgestellten System ersetzt
wird.
3 M
usical I nstruments D igital I nterface  Ein standardisiertes Protokol für die (vor
allem musikbezogene) Kommunikation zwischen Computern, Soft- und Hardwaresystemen.
MIDI erlaubt die Übertragung von Daten, sowie die gegenseitige Synchronisation und
Steuerung kommunizierender Systeme [3].
4 KAPITEL 1. EINLEITUNG

Der eigentliche Harmonisierungsalgorithmus wird im Kapitel 4 vorgestellt.


Die Herangehensweise wird schematisch umrissen, in weiteren Abschnitten
werden einzelne Arbeitsschritte detailliert erklärt. Konzeptuelle und pro-
grammiertechnische Fragen, die sich im Laufe der Entwickelung gestellt ha-
ben, werden hervorgehoben und die gewählten Lösungen sowie mögliche, zu-
künftige Auswege werden besprochen.
Eine Evaluierung der vorgestellten Lösung wird im Kapitel 5 präsentiert.
Im Schluÿwort wird ein Ausblick über das Erweiterungspotenzial des vorge-
stellten Systems sowie über wünschenswerte Weiterentwicklungen gegeben.
Kapitel 2
Grundlagen
Im Folgendem wird eine kurze Erklärung der musikalischen Begrie gegeben,
die bei der vorgestellten Implementierung eine Rolle spielen.
Ferner wird James Tenneys und Larry Polanskys Ansatz für die wahrneh-
mungsorientierte Segmentierung von Melodien dargestellt. Dieser Ansatz
dient als Grundlage für das bei dem vorgestellten System implementierte
Segmentierungsverfahren.
In zwei weiteren Abschnitten werden Hidden Markov Models sowie das Prin-
zip dynamischer Programmierung beschrieben, zwei Techniken die bei ver-
schiedenen Verarbeitungsschritten eingesetzt werden.

2.1 Musik und Harmonie

Eine knappe Beschreibung der Musik entnehmen wir dem entsprechenden


Beitrag aus der Deutschen Wikipedia: Musik ist die Gestaltung von akusti-
schen Ereignissen in ihrer Anordnung in der Zeit [6]. Im Folgendem werden
grundlegende Begrie erläutert, welche für eine systematische Beschreibung
musikalischer Zusammenhänge unerlässlich sind.

2.1.1 Intervalle
Sowohl Klänge als auch Geräusche spielen bei der Komposition und bei der
Wahrnehmung von Musik eine wichtige Rolle. Für unsere Diskussion sind
jedoch allein Klänge von Interesse: akustische Ereignisse die eine Grundfre-
quenz aufweisen. Die wahrgenommenen Grundfrequenz des Klangs wird als
seine Tonhöhe bezeichnet.
Der Unterschied zweier Klänge kann durch Angabe des Verhältnisses ihrer
Grundfrequenzen zueinander beschrieben werden. Die westeuropäische Musik

5
6 KAPITEL 2. GRUNDLAGEN

verwendet traditionell einen festen Satz solcher Verhältnisse1 , sodaÿ vorkom-


mende Klänge allein in Verhältnissen aus diesem Vorrat zueinander stehen
könnten2 . Die festen Frequenzverhältnisse heiÿen Intervalle und tragen ein-
deutige Namen, welche hier am Beispiel der natürlichen (reinen) und der
wohltemperierten Stimmung genannt werden [12]:

Frequenzverhältnis
Intervallname
Reine Stimmung Wohltemperierte
√ 0 Stimmung
Prime 1:1 12
√ ( 2) = 1 = 0 cent
Kleine Sekunde 16 : 15 ( 12 2)1 = 1.059 = 100 cent
(Halbton) √
Groÿe Sekunde 9:8 ( 12 2)2 = 1.122 = 200 cent
(Ganzton) √ 3
Kleine Terz 6:5 ( 12
√2)4 = 1.189 = 300 cent
Groÿe Terz 5:4 ( 12
√2)5 = 1.259 = 400 cent
Reine Quarte 4:3 12
( √2) = 1.334 = 500 cent
Tritonus 7:5 ( 12
√ 2)6 = 1.414 = 600 cent
Reine Quinte 3:2 ( 12
√ 2)7 = 1.498 = 700 cent
Kleine Sexte 8:5 ( 12 8
√2)9 = 1.587 = 800 cent
Groÿe Sexte 5:3 √
12
( 2) = 1.681 = 900 cent
Kleine Septime 7:4 ( √2)10 = 1.781 = 1000 cent
12

Groÿe Septime 15 : 80 ( 12 2)11


√ =121.887 = 1100 cent
Reine Oktave 2:1 12
( 2) = 2 = 1200 cent

Tabelle 2.1  Intervalle und ihre Frequenzverhältnisse in der reinen bzw.


wohltemperierten Stimmung

Während die reine Stimmung Frequenzverhältnisse wie sie in der natürli-


chen Teiltonreihe abbildet, werden die Intervalle in der wohltemperierten
Stimmung durch eine Unterteilung des Oktavverhältnisses in zwölf gleiche
logarithmische Stufen gewonnen. Gleichzeitig wird die Oktave in 1200 Cent
unterteilt. Jede Erhöhung eines Klangs um eine kleine Sekunde (Halbton)√
entspricht einer Multiplikation seiner Grundfrequenz mit dem Faktor 12 2,
oder einer Addition von 100 cent . Zu den Stimmungssystemen siehe auch [28,
S. 88-90].
1 Ausgenommen werden hier Entwicklungen des letzten Jahrhunderts in den Bereichen
der Mikrotonalität und alternativer Tonsystemen (s.a. [14] sowie [28, S. 89]).
2 Die Rede ist primär von der komponierten Musik. Während einer musikalischen Auf-
führung könnte eine (geringe, stilabhängige) Ausweichung von den Frequenzverhältinssen
unter Umständen eine gestalterische Möglichkeit darstellen.
2.1. MUSIK UND HARMONIE 7

2.1.2 Tonleitern und Tonarten


Tonarten werden innerhalb des Oktvaintervalls deniert: es werden die Inter-
vallschritte festgelegt, die sich zwischen den Tönen innerhalb einer Oktave
benden. Unabhängig von ihrer Lage und von dem die Oktave denierenden
Grundton hat eine Tonart (als solche gespielt, oder die Musik die unter ver-
wendeung der Töne dieser Tonart) einen eigenen, bestimmten musikalischen
Charakter. Die Tonarten, die maÿgeblich die Entwicklung der europäischen
Musik beeinuÿt haben, sind die Dur- und die Molltonart mit folgenden De-
nitionen (GS = groÿe Sekunde, KS = kleine Sekunde):

Tonartstufen
Tonartgattung
1-2 2-3 3-4 4-5 5-6 6-7 7-8
Dur GS GS KS GS GS GS KS
Moll GS KS GS GS KS GS GS
C Dur Tonleiter: a Moll Tonleiter:

Tabelle 2.2  Aufbau und Notenbild von Dur- und Molltonarten (Halbtöne
sind mit spitzen, Ganztöne mit runden Bögen gekennzeichnet)

Ein internationaler Standard legt den Ton mit der Frequenz von 440Hz als
Kammerton fest. Dieser Ton wird im deutschen Sprachraum mit a', im eng-
lischen mit A4 bezeichnet. Der Kammerton dient als Bezugspunkt für die
Stimmung von Musikinstrumenten3 [27].
Folgen wir der Intervallvorschrift einer Molltonart ab dem Ton a' aufwärts,
so erhalten wir eine a-moll Tonleiter. Die restlichen Tonnamen ergeben sich
durch Bezeichnung des jeweiligen aufwärtsfolgenden Tons mit dem entspre-
chend folgenden Buchstabe des lateinischen Alphabets4 . Musikabschnitte,
welche unter Verwendung dieses Tonvorrats (und unter Beachtung tonaler
Regeln, s.u.) geschrieben werden, werden als in der Tonart a-moll stehend
bezeichnet.
3 Mit willkürlichen und unwillkürlichen Abweichungen, siehe [27, S. 1]
4 Eine Ausnahme wird bei der Bezeichnung des Tons gemacht, der ein Ganztonschritt
höher ist als a: dieser wird auf Deutsch mit dem Buchstabe h gekennzeichnet. Der Buch-
stabe b ist für den Ton reserviert, welcher ein Halbtonschritt über den a liegt.
8 KAPITEL 2. GRUNDLAGEN

Nun können wir nach dem selben Schema auch anderen Tonleitern und Ton-
arten generieren. Eventuelle notwendige Verschiebungen eines Tons um eine
kleine Sekunde (oder Halbton) tiefer oder höher, um der jeweiligen Tonart-
vorschrift verfolgen zu können, werden auf Deutsch mit einem es bzw. is
Sux am Tonnamen, auf Englisch mit den Worten Flat bzw. Sharp oder im
Notentext mit den Versetzungszeichen [ bzw. ] gekennzeichnet. Zu Notierung
und Notennamen siehe auch [28, S. 67 bzw. 85].
Alle Töne, die zu einer bestimmten Tonart gehören, werden diatonisch in
dieser Tonart genannt. Der Begri [...] bezeichnet einen siebenstugen [...]
Tonvorrat, der als lückenlose Folge von sechs reinen Quintschritten in gleicher
Richtung darstellbar ist [7].

Abbildung 2.1  Zusammenhang zwischen einer Quintenfolge und diatoni-


schen Tonartstufen

Zu Dur- und Moll- sowie anderen Tonarten und zu deren diatonischen Aufbau
siehe auch [28, S. 84-89].

2.1.3 Akkorde
Akkorde entstehen aus dem gleichzeitigem Erklingen von drei oder mehr un-
terschiedlichen Tönen. Die meisten Akkorde können, durch Umordnung ih-
rer Töne in ihrer jeweiligen Oktavlage, auf eine Reihe aufeinander folgenden
Terzen zurückgeführt werden. In diesem Zustand werden die Akkorde nach
dem tiefstliegenden Ton  dem Akkordgrundton  benannt, und entspre-
chend der Zusammensetzung ihrer Terzen klassiziert. Zum Beispiel erhält
der aus den Tönen C-Es-G-B gebildete Akkord den Namen C-Mollseptakkord.
In Tabelle 2.3 sind wichtige Akkordbezeichnungen zusammen mit der jeweils
denierenden Terzenzusammensetzung aufgelistet (GT = Groÿe Terz, KT
= Kleine Terz), das Notenbeispiel zeigt die selben Akkorde in Notenschrift
in enger Lage5 . Je nach Anzahl der Töne in einem Akkord wird er als ein
Dreiklang, Vierklang usw. klassiziert.
In einem tonalen Kontext können bestimmte Akkorde zusätzlich eine Be-
zeichnung tragen, die ihre tonale (s.u.) Bedeutung hervorhebt oder erläutert.
5 S.u. Abschnitt 4.3.3.1, Seite 63.
2.1. MUSIK UND HARMONIE 9

Akkordbezeichnung Terzenzusammensetzung
Dur Dreiklang GT, KT
Moll Dreiklang KT, GT
Verminderter Dreiklang KT, KT
Übermäÿiger Dreiklang GT, GT
Dur Septakkord GT, KT, GT
Dominantseptakkord GT, KT, KT
Mollseptakkord KT, GT, KT
Mollseptakkord mit gr. Septime KT, GT, GT
Halbverminderter Septakkord KT, KT, GT
Verminderter Septakkord KT, KT ,KT
Übermäÿiger Septakkord GT, GT, KT

Tabelle 2.3  Gängige Akkorde mit Bezeichnung und Zusammensetzung der


Terzen sowie Notenbild mit C als Grundton

Im Folgendem wird grundsätzlich, und wenn nicht anderes vermerkt wird,


von vierstimmigen Satz und somit auch von vierstimmigen Akkorden (mit
eventuellen Verdoppelungen von Akkordtönen) die Rede sein. Die Stimmen
werden nach den menschlichen Stimmlagen benannt, vom der tiefsten bis zur
höchsten: Baÿ, Tenor, Alt, Sopran.
Liegt der Akkordgrundton bei einem Vorkommen eines Akkords nicht im Baÿ,
so liegt eine Umkehrung des Akkords vor, und zwar die erste Umkehrung
wenn der nächsttiefste Ton nach dem der Akkordgrundton im Baÿ liegt, die
zweite Umkehrung wenn der zweittiefste Ton im Baÿ liegt und so weiter.

Abbildung 2.2  C-Dur Dreiklang in Grundstellung, ertser und zweiter Um-


kehrung

Zu den unterschiedlichen Akkorden, deren Aufbau und Eigenschaften siehe


auch [28, S. 96-99].
10 KAPITEL 2. GRUNDLAGEN

2.1.4 Tonalität und harmonische Funktionen


Tonalität beschreibt die innerhalb Tonarten und über die Dauer von mu-
sikalischen Einheiten herrschenden Spannungsbeziehungen6 auf einer hier-
archischen Weise. Die Kunst der tonalen Musik besteht in der geschickten
Anordnung von Tonhöhen derart, daÿ die Bewegung auf tonalen Zentren
angedeutet, vorbereitet, durchgesetzt oder getäuscht wird [32, S.2]. Damit
werden musikalische Aekte realisiert und musikalische Formen untermau-
ert. Jedem Ton, oder Stufe, in einer Dur- oder Molltonart, jedem Akkord in
einem bestimmten tonalen Kontext, und damit jedem musikalischen Moment
während eines Musikabschnitts kann eine harmonischen Funktion zugeordnet
werden:
Tonika  ist das tonale Zentrum, welche sich aus der Gesamtheit der to-
nalen Spannungen manifestiert.
Die Tonika wird mit T gekennzeichnet. In einer Moll- oder Durtonart
werden der namensgebende Ton der ersten Stufe, der den Oktavrahmen
der Tonart deniert, sowie der diatonische Dreiklang mit dieser Stufe
als Grundton, als Tonika empfunden.
Dominante  ist die Funktion, die den stärksten tonalen Zug in Richtung
der Tonika aufweist.
Die Dominante wird mit D gekennzeichnet. In einer Moll- oder Durton-
art werden die fünfte Stufe, sowie der diatonische Dreiklang mit dieser
Stufe als Grundton als Dominante empfunden.
Subdominante  weist ebenso einen Zug in Richtung der Tonika auf, der
jedoch schwächer ist als der der Dominante. Gleichzeitig wird bei der
Subdominante auch ein Zug in Richtung der Dominante wahrgenom-
men. Aufgrund dessen wird sie im tonalen Kontext sowohl als Vorberei-
tung für die Dominante, als auch als ihr balancierender Gegenpol um
die Tonika eingesetzt [15].
Die Subdominante wird mit SD gekennzeichnet. In einer Moll- oder
Durtonart werden die vierte Stufe, sowie der diatonische Dreiklang mit
dieser Stufe als Grundton als Subdominante empfunden.
Die anderen Tonartstufen, sowie unterschiedlichen, in der jeweiligen Tonart
diatonische und nicht-diatonische Akkorde, werden nach ihrer Wirkung mehr
oder weniger eindeutig den Hauptfunktionen zugeordnet. In der folgenden
Abbildung werden die diatonischen, auf den sieben Tonartstufen gebildeten
Dreiklänge einer C-Dur Tonart mit den harmonischen Funktionen dargestellt,
denen sie zugeordnet sind:
6 Griechisch tonus = Spannung
2.1. MUSIK UND HARMONIE 11

Abbildung 2.3  Diatonische Akkorde und ihre harmonisch-funktionale Zu-


ordnung

2.1.5 Harmonik, Harmonisierung


Die Harmonik wird in der Musik als Überbegri für die qualitative Be-
schreibung von Zusammenklängen verwendet. Es werden neben den einzelnen
Akkorden auch ihre tonalen-funktionalen Verhältnisse zueinander innerhalb
musikalischer Abschnitte betrachtet und analysiert.
Die Harmonisierung eines einstimmigen (monophonen) Satzes  einer Me-
lodie  entsteht durch das Hinzufügen weiterer Töne und Akkorde, welcher
zeitgleich, wenn auch nicht zwingend synchron mit den Tönen der Melodie
erklingen. Bei einer gelungenen Harmonisierung entsprechen diese zusätzli-
chen Töne und Akkorde sowie ihre harmonischen Eigenschaften den in der
Melodie herrschenden tonalen und harmonischen Verhältnissen. Die tonalen
Verhältnisse der Melodie werden verstärkt oder umgedeutet werden. Damit
kann ein im Vergleich zur ursprünglichen Melodie veränderter und eventuell
gesteigerter musikalischer Aekt erreicht werden.

2.1.6 Harmonielehre, Stimmführung, Akkordfolgen


Für Entscheidungen, die bei der Harmonisierung getroen werden müssen 
welche Akkorde im Dur-Moll tonalen Kontext aus allen möglichen Kombina-
tionen gebildet werden dürfen, und welche Akkordübergänge zugelassen bzw.
sinnvoll sind  gibt es im Rahmen der Harmonielehre Regeln und Kon-
ventionen. Diese durch Schriften von Komponisten und Musikwissenschaft-
lern, wie auch durch die musikalische Praxis gebildete Tradition deniert im
Rückschluÿ, mittels Bevorzugung bestimmter Techniken oder Praktiken und
des Ablehnen anderer, Stilmerkmale die zu den wichtigsten der europäischen
Musik gehören.

2.1.6.1 Stimmführung
Huron [25] demonstrierte, daÿ manche Regeln der Harmonielehre eine dif-
ferenziertere psychoakustische Wahrnehmung von einzelnen Stimmen und
12 KAPITEL 2. GRUNDLAGEN

melodischen Linien im mehrstimmigen Satz unterstützen, und argumentier-


te damit, daÿ diese Regeln kein willkürliches System darstellen. Diese Ein-
sicht hebt den mehrstimmigen, melodischen Aspekt harmonisierter Musik
hervor. So betrachtet, besteht ein harmonisierter Satz aus unterschiedlichen,
eigenständigen melodischen Linien. Die Entstehung bzw. Wahrnehmung von
Akkorden ist somit ein Nebenprodukt gelungener Stimmführung.
Für die Stimmführung gibt es allgemeine, sowie stilspezische Regeln. Diese
schreiben unter Anderem vor, in welcher Weise Akkordtöne auf unterschied-
liche Stimmen zu verteilen sind, und wie Akkordübergänge zu gestalten sind.
Im Folgenden werden Regeln genannt, die zum wichtigsten Kern [25, S. 4-6]
der Stimmführungslehre gehören:

I. Vermeidung von Stimmverdoppelung  Jeder der Stimmen sollte


ein unterschiedlicher Ton des herrschenden Akkords zugewiesen werden.
Bei Ausnahmen, wie sie zum Beispiel zwangsläug bei Dreiklängen auf-
treten, versucht man die Tonwiederholung in unterschiedlichen Oktaven
zu verlagern.

II. Erhaltung der Dur-Moll-bestimmenden Terz  Soweit möglich


sollte von einem durch einer anderen Regel erzwungenen Weglassen ei-
nes Akkordtons nicht der Terzton des Akkords betroen werden. Dieser
ist nämlich für den wahrgenommenen Dur- bzw. Mollcharakter eines
Akkords verantwortlich.

III. Vermeidung von Stimmkreuzung  Die melodische Linie einer hö-


heren Stimme sollte sich nicht unter der einer tieferen Stimme bewegen.

IV. Vorziehen minimaler Bewegung  Soweit möglich sollen Töne, die


für zwei aufeinander folgenden Akkorde gemeinsam sind, von den glei-
chen Stimmen übernommen werden. Auch sonst soll jede Stimme den
kleinstmöglichen melodischen Schritt zwischen einem Akkord zum näch-
sten durchführen.

V. Verbot bestimmter Parallelbewegungen  Benden sich zwei


Stimmen innerhalb eines Akkords in einem Intervall von einer Prime,
einer Quinte oder einer Oktave zu einander, so darf dieses Intervall zwi-
schen diesen Stimmen im nächsten Akkord nicht wiederholt werden.

VI. Einschränkung des Stimmenabstands  Zwischen der Sopranstim-


me und der Altstimme, sowie zwischen der Altstimme und der Tenor-
stimme soll jeweils ein Intervall liegen, das kleiner als eine Oktave ist.
Für den Intervallabstand zwischen Tenor und Bass gilt eine solche Ein-
schränkung nicht.
2.1. MUSIK UND HARMONIE 13

2.1.6.2 Akkordfolgen
Ein weiterer wichtiger Teil der Harmonielehre besteht in der Erkennung und
Denition von Akkordfolgen. Auch hier werden sowohl positive Aussagen
über wirksame, stildenierende und daher willkomene, wie auch über uner-
wünschte, weil stilfremde oder für die tonale Wahrnehmung kontraprodukti-
ve Akkordfolgen gemacht. Unabhängig vom stilistischen Kontext sind diese
Regeln häug auf eine gelungene Unterstützung der durch die jeweiligen Ak-
korde beschriebenen tonalen Spannungsfelder ausgerichtet: durch Befolgung
dieser Regeln wird eine Verstärkung und Unterstützung der Spannungsver-
hältnisse realisiert.
Zu den wichtigsten Akkordfolgen gehören die Kadenzen. Der Begri stammt
aus dem Lateinischen cadere (fallen), und beschreibt damit den tonalen Span-
nugsabfall der für die meisten Kadenzen charakteristisch ist. In ihrer abstrak-
testen Form werden Kadenzen durch eine Abfolge von tonalen Funktionen
deniert, wie zum Beispiel T-D-T (Authentische Kadenz) oder T-SD-T (Pla-
gale Kadenz). Solche funktionalen Rahmen werden stilabhängig mit konkre-
ten Akkorden und zum Teil auch mit expliziten Stimmführungsvorschriften
ergänzt. Der damit erreichte Wiedererkennungseekt trägt wiederum zur ver-
stärkten tonalen Wahrnehmung bei.
Das folgende Beispiel zeigt einige wichtige Kadenzen (alle Beispiele in der
Tonart C-Dur):

I. Authentische Kadenz
Funktionsfolge T-D-T
Tonartstufenfolge I-V-I

bla

II. Plagale Kadenz


Funktionsfolge T-SD-T
Tonartstufenfolge I-IV-I

bla
14 KAPITEL 2. GRUNDLAGEN

III. Vollkadenz
Funktionsfolge T-SD-D-T
Tonartstufenfolge I-IV-V-I

bla

IV. Vollkadenz - Variante bla


Funktionsfolge T-SD-D-D-T bla
Tonartstufenfolge I-IV-I-V-I

Hier erhält die zweite Umkehrung


des Dreiklangs auf der ersten Ton-
artstufe eine Dominantsfunktion.
Der Akkord kommt in der klassi- bla
schen Harmonielehre nur selten als bla
Realisierung einer anderen harmo- bla
nischen Funktion bzw. im Kontext bla
einer anderen Akkordfolge als der
hier demonstrierten vor.

V. Vollkadenz - Variante
Funktionsfolge T-SD-D-T
Tonartstufenfolge I-II-V-I

bla

VI. Trugschluÿ mit wird eine harmonische Er-


Funktionsfolge T-SD-D-T (Tp ) wartung beim Zuhörer betrogen.
Tonartstufenfolge I-IV-V-VI
Im Trugschluÿ wird der sonst
in einer Vollkadenz erwartete
Tonika-Akkord auf der ersten Ton-
artstufe durch den Akkord der
sechsten Stufe  der Tonika-
parallele (Tp )  ersetzt. Da-
2.2. MELODIESEGMENTIERUNG 15

In den zwei letzten Beispielen können die Möglichkeiten beobachtet werden,


welche die Auswahl an diatonischen Akkorden, die derselben harmonischen
Funktion zugerechnet werden, anbietet: die gleiche Abfolge tonaler Funktio-
nen wird in jedem Fall mit unterschiedlichen Akkorden gedeutet. Der durch
die Funktionen beschriebenen Spannungsuÿ wird jedes Mal anders umge-
setzt und wahrgenommen.
Kadenzen sind oft an den Enden von Phrasen zu nden. Das Ende des durch
die Phrase beschriebenen tonalen Bogens kann durch eine Kadenz ausgeprägt
werden, was im Gegenzug den Abschluÿ der Phrase erst recht auszeichnet.
bla
bla
Es ist zu betonen, daÿ eine getreue Anwendung der hier aufgezählten oder
weiteren Regeln keine musikalische Qualität garantiert. Eine der wirksam-
sten Gestaltungsmöglichkeiten des Komponisten besteht gerade im bewus-
sten Nicht-Beachten oder Brechen einer oder mehrerer Regeln. Der dadurch
erhote Überraschungseekt ist  falls gelungen  willkommen.

2.2 Melodiesegmentierung

Musikalische Stücke werden in der Regel als ein hierarchisches Netzwerk aus
Klängen, Motiven, Phrasen, Abschnitten und Sätzen empfunden. Das sind
jeweils zeitliche Abschnitte, deren Grenzen hauptsächlich anhand von klang-
lichen, rhythmischen und tonalen Eigenschaften ihres Inhalts gezogen wer-
den. Die während des Erklingens eines Abschnitts wahrgenommenen musi-
kalischen Eindrücke weisen eine Zusammengehörigkeit auf, während sie sich
angrenzenden Abschnitten gegenüber gleichzeitig als Gruppe absondern[41,
S. 208].
In ihrer Arbeit Temporal Gestalt Perception in Music nennen J. Tenney und
L. Polansky einzelne musikalische Parameter, die eine Beschreibung einer mu-
sikalischen Einheit  angefangen mit einer einzelnen Note und hierarchisch
aufbauend für jeweils längere Abschnitte  und eine Prüfung auf Ähnlich-
keit zweier benachbarten Einheiten auf der selben hierarchischen Ebene er-
möglichen würden. Eine Analyse monophoner Musikstücke aufgrund dieser
Parameter sollte ihre wahrnehmungsorientierte, und damit auch musikalisch
gültige Segmentierung liefern. Der dadurch geäuÿerte Versuch, von den je-
weiligen, auf einer hierarchischen Ebene bendlichen Details abzuheben um
eine ganzheitliche Aussage zu treen, ist im Sinne der Gestaltstheorie [44
].
16 KAPITEL 2. GRUNDLAGEN

Im Folgenden wird eine kurze Beschreibung des analytischen Konzepts von


Tenney und Polansky gegeben, und somit die Grundlage für den von ihnen
vorgeschlagenen Algorithmus erläutert.
Die ersten drei hierarchisch geordneten Ebenen, die geprüft werden, sind die
des Elements (welches der einzelnen Note entspricht), des Clangs und der
Sequence.
Die Parameter, die von T. & P. als entscheidend bei der Wahrnehmung von
Abschnitten ausgezeichnet werden, sind die Dauer, die Tonhöhe und die In-
tensität (empfundene Lautstärke). Bei einer einzelnen Note entsprechen sie
den jeweiligen Werten dieser Note. Bei zusammengesetzten, und damit hier-
archisch höher gestellten Abschnitten sind es die Länge des Abschnitts, sowie
über diese Länge errechneten Mittelwerte der Tonhöhe und Intensität.
Demnach wird das Kriterium für das Ziehen einer Clang-Grenze deniert:

Bei einer monophonen Folge von Elementen wird ein Anfang


eines Clangs tendenziell bei einem Element wahrgenommen, wel-
ches sich von dem vorhergehenden Element mit einem Intervall
(in einem Parameter) unterscheidet, das gröÿer als die Interval-
le ist, die ihm direkt vorangehen und folgen, 'während andere
Faktoren gleichbleiben' [41, S. 209]7

Im folgenden Beispiel werden Clang-Grenzen zunächst anhand von Längen-


und dann anhand von Tonhöhenunterschieden gezogen [41, S. 209, die ersten
12 Takte aus L. v. Beethoven's fünfter Symphonie]:
bla

Abbildung 2.4  Clang-Grenzen werden aufgrund der Längen- bzw. Tonhö-


henunterschiede gesetzt

bla

7 Vom Autor aus dem Englischen übersetzt


2.2. MELODIESEGMENTIERUNG 17

Das oben genannte Kriterium ist insofern einschränkend, als es allein die
Betrachtung eines einzigen Parameters erlaubt. Benötigt wird ein Ähnlich-
keitsmaÿ, das die Dierenzen aller Parameter zu einer einzigen Aussage über
Ähnlichkeit bzw. Unterschiedlichkeit benachbarter Elemente kombiniert.
Betrachtet man ein durch die drei Parameter beschriebenes Element als einen
Punkt im dreidimensionalen Raum, so bieten sich unterschiedliche Methoden
an, um den Abstand, also die kombinierte Dierenz in allen Raumrichtun-
gen, zwischen zwei solchen Punkten anzugeben. T. & P. haben sich für eine
gewichtete City-Block Metrik entschieden: Die Distanz zwischen zwei durch
ihren Parameter beschriebenen Elementen x = (x1 , x2 , x3 ), y = (y1 , y2 , y3 )
wird mit der Summe der gewichteten Dierenzen der unterschiedlichen Pa-
rameterwerte angegeben:
n
X
d(x, y) = αi |xi − yi | (2.1)
i=1

Die Parametergewichtung αi wird empirisch festgelegt.


Mit dieser Denition einer Distanz kann das oben genannte Kriterium ver-
allgemeinert werden:
Ein neues Clang wird dann wahrgenommen, wenn ein Element
eine Distanz zu seinem Vorgänger aufweist, die gröÿer als die
nächste und die vorhergehende Distanz ist. [41, S. 212-214]8
Bei vier aufeinander folgenden Elementen x1 , x2 , x3 , x4 genau dann eine
Clang-Grenze zwischen x2 und x3 gezogen, wenn [45, S. 116, Regel 6.2.1]:

d(x1 , x2 ) < d(x2 , x3 ) > d(x3 , x4 ) (2.2)

Im folgenden Beispiel werden Clang-Grenzen nach dieser Denition der Di-


stanz gezogen[41, S. 215, die ersten 12 Takte aus L. v. Beethoven's fünfte
Symphonie]:
Bei zusamengesetzten Gestalten auf höheren hierarchischen Ebenen werden
statt der diskreten Werte Durchschnitte gebildet, zudem werden auch Grenz-
dierenzen gebildet:
Der mittlere Abstand zwischen zwei zeitlichen Gestalten auf ei-
ner beliebigen hierarchischen Ebene und in jedem Parameter au-
ÿer der Zeit ist die Dierenz zwischen den jeweiligen Mittelwerten
dieses Parameters; für die Zeit ist der mittlere Abstand der zwi-
schen den Anfangszeiten. Der Grenzabstand zwischen zwei zeitli-
chen Gestalten ist die Dierenz zwischen den Mittelwerten ihrer
8 Vom Autor aus dem Englischen übersetzt
18 KAPITEL 2. GRUNDLAGEN

Abbildung 2.5  Clang-Grenzen werden nach den Distanzen zwischen den


Elementen gesetzt

angrenzenden Komponenten (i.e. die letzte Komponente der er-


sten und die erste Komponente der zweiten) [41, S. 216]9

Folglich werden die mittlere Dierenz bzw. die Grenzdierenz zwischen zwei
zeitlichen Gestalten auf einer bestimmten Ebene als die gewichtete Summe
der mittleren Abstände bzw. der Grenzabstände zwischen ihnen deniert.
Schlieÿlich werden Grenz- und mittlere Dierenz zu einem einheitlichen Maÿ
kombiniert  von T. & P. Disjunktion genannt  das eine allgemeine Aus-
sage über die Unterschiedlichkeit zweier benachbarter zeitlichen Gestalten
ermöglicht:

Die Disjunktion zweier zeitlichen Gestalten, oder die Disjunktion


einer zeitlichen Gestalt bezogen auf die vorangehende (auf einer
bestimmten hierarchischen Ebene) ist die gewichtete Summe der
zwischen den beiden liegenden mittleren und der Grenzdieren-
zen auf allen niedrigeren Ebenen. [41, S. 216]10

Hierbei bezieht sich die Gewichtung auf die unterschiedlichen hierarchischen


Ebenen. T. & P. hatten sie mit jedem hierarchischen Ebenenaufstieg ver-
doppelt. So beinhaltet die Disjunktion zwischen zwei Sequenzen, neben ihrer
mittleren Dierenz, auch die Hälfte der mittleren Dierenz ihrer zwei angren-
zenden Clangs und ein Viertel der mittleren Dierenz der zwei angrenzenden
Elemente dieser Clangs.
Bei Kennzeichnung der mittleren Dierenz zweier auf der Ebene l angren-
zenden zeitlichen Gestalten x, y mit db(x, y), und der letzten bzw. ersten
Teilgestalt auf einer Ebene i mit li bzw. fi können wir für die Disjunktion D
schreiben:
9 Vom Autor aus dem Englischen übersetzt
10 Vom Autor aus dem Englischen übersetzt
2.3. DYNAMISCHE PROGRAMMIERUNG 19

l
X  
D(x, y) = db(x, y) + −i b
2 d li (x), fi (y) (2.3)
i=1

Auf diese Grundlage beruht T. & P. Hypothese über die Wahrnehmung zeitli-
cher, musikalischer Gestalten, welche sich auch algorithmisch umsetzen läÿt:

Eine neue zeitliche Gestalt auf einer nächsthöheren hierarchi-


schen Ebene wird dann wahrgenommen, wenn eine zeitliche Ge-
stalt vorkommt, deren Disjunktion (im Bezug auf die vorangehen-
de zeitliche Gestalt auf der selben hierarchischen Ebene) gröÿer
ist als derjenigen, die ihr direkt voran- und nachstehen [41, S.
217]11

2.3 Dynamische Programmierung

Dynamische Programmierung ist eine algorithmische Herangehensweise für


Such- und Optimierungsprobleme. Die Voraussetzungen für eine eziente
Implementierung dynamischer Programmierung sind [43, S. 4]:

• Das Optimierungsproblem kann in Teilprobleme des selben Typs zer-


stückelt werden .

• Die Teillösungen uberlappen sich  eine Teillösung bestimmt die Prä-


missen für die, die ihr folgen. Dadurch kann man eine Rechenzeiterspar-
nis erzielen, indem Zwischenlösungen in einer entsprechenden Tabelle
oder Matrix gespeichert werden.

• Für jedes Teilproblem wird eine optimale lokale Lösung berechnet, un-
abhängig vom restlichen Suchraum. Je nach Art des Problems muÿ für
diese Aufgabe eine passende Evaluationsfunktion gefunden werden.

• Die optimale Gesamtlösung besteht aus optimalen Teillösungen, und


kann durch Zurückverfolgung (Backtracking) der in der Tabelle gespei-
cherten Werte zusammengestellt werden.

Am konkreten Beispiel des hier vorgestellten Systems kann die Arbeitsweise


eines Entscheidungsprozess mit dynamischer Programmierung schematisch
demonstriert werden: Jede der T Noten der Eingangsmelodie wird als ein
Zeitpunkt 1 ≤ τ ≤ T betrachtet. Es werden für jeden Zeitpunkt τ alle #(τ )
11 Vom Autor aus dem Englischen übersetzt
20 KAPITEL 2. GRUNDLAGEN

Initialisierung - bei 1 ≤ τ ≤ T und jeweils 1 ≤ j ≤ #(τ ):


(2.4)
 
ω(a(τ,j) ) = fstat a(τ,j)

Rekursion - bei 2 ≤ τ ≤ T und jeweils 1 ≤ j ≤ #(τ ):


n o
max (2.5)

ω(a(τ,j) ) = fdyn a(τ,j) , a(τ −1,i) , ω(a(τ,j) ), ω(a(τ −1,i) )
1≤i≤#(τ −1)
n o
ψ(a(τ,j) ) = argmax fdyn a(τ,j) , a(τ −1,i) , ω(a(τ,j) ), ω(a(τ −1,i) ) (2.6)

1≤i≤#(τ −1)

Backtracking - für einen optimalen Pfad P , bei 1 ≤ i ≤ #(T ):


n o
AT = argmax ω(a(T,i) ) (2.7)
a(T,i)

AT −1 = ψ(AT ), AT −2 = ψ(AT −1 ), . . . (2.8)



P = A1 , . . . , AT (2.9)

Tabelle 2.4  Bsp. für dynamische Programmierung  Generierung der Har-


monisierung

in Frage kommenden Akkorde a(τ, j) , 1 ≤ j ≤ #(τ ) berechnet. Jedem dieser


Akkorde wird mittels der Initialisierungsfunktion fstat eine Initialgewichtung
ω(a(τ, j) ) berechnet, anschlieÿend werden alle in der τ -te Spalte einer Tabelle
gespeichert. Die optimale lokale Lösung für einen Akkord a(τ, j) ist ein Akkord
a(τ −1, i) im vorhergehenden Zeitpunkt, der den Wert der Evaluationsfunktion
fdyn maximiert. Die Gewichtung jedes Akkords wird mit dem Wert von fdyn
bei dem optimalen Vorgänger aktualisiert, und ein Zeiger auf diesen Vor-
gänger wird gespeichert. Am Ende angelangt, kann die beste Gesamtlösung
zusammengestellt werden, indem die Vorgänger des bestgewichteten Akkords
in Zeitpunkt τ = T bis zum Zeitpunkt τ = 1 zurückverfolgt werden.
Die Anzahl möglicher Akkorde variiert von Zeitpunkt zu Zeitpunkt. Deshalb
kann hier nicht von einer Matrix im strengen Sinn gesprochen werden. Das be-
deutet jedoch keine Verletzung der Arbeitsweise der dynamischen Program-
mierung, da die Evaluationsfunktion jeweils für eine Kombination (Akkord,
Vorgänger) operiert.
Die Menge der möglichen Akkorde bildet, bezogen auf die diskrete Zeitachse,
eine Halbordnung. Die Akkorde könnten als gewichtete Graphenknoten, alle
2.4. HIDDEN MARKOV MODELS 21

mögliche Übergänge (a(τ,i) , a(τ +1,j) ) als gerichtete Kanten dargestellt werden.
Ferner werden die Kanten mithilfe der Evaluationsfunktion gewichtet. Nach
pro-forma Einführung von jeweils einer Quelle in τ = 0 und einer Senke
in τ = T + 1, kann das Problem auch als eine Suche nach dem kürzesten
Pfad in einem gerichteten, gewichteten Netzwerk betrachtet werden, welches
ein allgemeines Beispiel für den Einsatz dynamischer Progrmmierung ist [43,
S.3].

2.4 Hidden Markov Models

2.4.1 Markov-Ketten
Betrachten wir folgendes System, bestehend aus [42, S. 175]:
• einer Menge von Zuständen T := τ1 , . . . , τn


• einer Menge von Emissionssymbolen V := v1 , . . . , vm




• Zustandsübergangswahrscheinlichkeiten A = aij - bezeichnen je-



1≤i, j≤n
weils die Wahrscheinlichkeit für einen Übergang vom Zustand i zum
Zustand j

• Emissionswahrscheinlichkeiten B = bj (vh ) - bezeichnen die Wahr-



1≤j≤n, 1≤h≤m
scheinlichkeit für die Emission des Symbols vh wenn das System sich
im Zustand j bendet.

• initialer Zustandsverteilung π = πi - gibt die jeweilige Wahrschei-



1≤i≤n
lichkeit für den Fall an, daÿ das System sich am Anfang unserer Beob-
achtung im Zustand i bendet.
Das System wechselt von einem Zustand zum nächsten in diskreten Zeit-
schritten, gemäÿ den in A angegebenen Zustandsübergangswahrscheinlich-
keiten. Dabei kann zu jedem Zeitpunkt der jeweils erreichte Zustand, und
das von ihm nach der Emissionswahrscheinlichkeiten ausgegebene Emissi-
onssymbol registriert werden.
Nach der Denition des Systems ist es oensichtlich, daÿ eine probabilisti-
sche Prognose über die Identität des als nächsten zu erreichenden Zustands
genausogut aufgrund der Kenntnis der gesamten Zustandsvorgeschichte wie
allein aufgrund der Kenntnis des letzten Zustands gemacht werden kann [13].
Das System weist somit die Markov-Eigenschaft auf, ihr Verhalten über
die Zeit wird Markov-Kette genannt.
22 KAPITEL 2. GRUNDLAGEN

Abbildung 2.6  Schematische Darstellung eines Systems mit der Markov-


Eigenschaft

Hängen die Zustandsübergangswahrscheinlichkeiten von einer Folge der Län-


ge l von Vorzuständen ab, so hat der Markov-Prozess die l-te Ordnung.

2.4.2 Hidden Markov Model

Wenn eine direkte Beobachtung des jeweils aktuellen Prozesszustands nicht


möglich ist, handelt es sich um ein Hidden Markov Model (HMM, Engl.
Hidden  versteckt, unsichtbar). In diesem Fall wird im Laufe des Prozesses
allein die Folge der Emissionssymbole registriert.
Wenn die Zustandsübergangswahrscheinlichkeiten und die zustandsspezi-
schen Emissionswahrscheinlichkeiten bekannt sind, kann man mithilfe des
Viterbi-Algorithmus die wahrscheinlichste Prozesszustandsreihenfolge ermit-
teln, die eine beobachtete Folge von Emissionssymbolen erzeugt hat.
2.4. HIDDEN MARKOV MODELS 23

2.4.3 Viterbi-Algorithmus12
Der Viterbi-Algorithmus realisiert bei einer gegebenen Emissionsfolge eine
Suche nach der wahrscheinlichsten Zustandsreihenfolge eines HMM. Die Su-
che wird mittels dynamischer Programmierung durchgeführt [17, S. 5]:

• Pro Prozesszustand und Zeitpunkt t innerhalb des von der Beob-


achtungsfolge beschriebenen diskreten Zeitintervalls [1 . . . T ] wird die
wahrscheinlichste partielle Vorgänger-Zustandssequenz berechnet.

• Dabei wird bei jedem Zustand ein Zeiger auf den jeweils wahrschein-
lichsten Vorgänger gespeichert.

• Durch Backtracking vom wahrscheinlichsten Endzustand wird die


wahrscheinlichste Zustandsreihenfolge τ1 , τ2 , . . . , τT rekonstruiert.

Es wird mit einer N × T groÿe Tabelle gearbeitet. In jeder Zelle mit Spal-
tenindex t und Zeilenindex i wird die berechnete Wahrscheinlichkeit δt (i) für
das Vorkommen des Zustands i zum Zeitpunkt t gespeichert, zusammen mit
einem Zeiger ψt (i) auf den besten Vorgänger im vorigen Zeitpunkt (Zeilen-
index).
bla
Prozedur :

t = 1 : bla


δ1 (i) = πi bi (v (1) ) 
v (1) ∈ {v1 , . . . , vm } ,
bla (2.10)
 1≤i≤N
ψ1 (i) = 0

2 ≤ t ≤ T : bla

  
max δt−1 (i) · aij · bj (v (t) )

δt (j) = 

1≤i≤N v (t) ∈ {v1 , . . . , vm } ,

bla
1 ≤ i, j ≤ N
ψt (j) = arg max δt−1 (i) · aij
  


1≤i≤N
(2.11)
12 Bezeichnungen sowie Beschreibung des Algorithmus in Anlehnung an [42]
24 KAPITEL 2. GRUNDLAGEN

Ermittlung des wahrscheinlichsten Endzustands: bla

τT = arg max δT (i)


 
1≤i≤N
(2.12)

Backtracking: bla

τt = ψt+1 (τt+1 ), t = T − 1, T − 2, . . . , 1 (2.13)

bla

Es muss zu jedem Zeitpunkt eine Auftretenswahrscheinlichkeit für jeden Zu-


stand berechnet, und dabei jeweils auf alle N möglichen Vorgänger zugegrif-
fen werden. Der Viterbi-Algorithmus für HMM der ersten Ordnung hat somit
eine Laufzeit ∈ O (T N 2 ).

2.4.4 HMM und Viterbi-Algorithmus zweiter


Ordnung
Wenn für die Zustandsübergangswahrscheinlichkeit nicht nur der gegenwär-
tige, sondern auch der vorhergehende Prozesszustand maÿgeblich ist, ist das
HMM zweiter Ordnung (HMM2).
Der Viterbi-Algorithmus kann auch im Kontext von HMM2 eingesetzt wer-
den. Die Zustandsübergangswahrscheinlichkeiten werden nicht zwischen je-
weils einzelnen Zuständen, sondern von einem Zustandspaar (i, j) zu einem
dritten Folgezustand k angegeben:
 
(2.14)

A = aijk , aijk = p τt = k τt−1 = j, τt−2 = i .

Entsprechend werden auch die Emissionswarscheinlichkeiten für ein Zu-


standspaar (i, j) deniert:
 
B = bjk (vh ) , bjk (vh ) = p Emission(t) = vh τt = k, τt−1 = j . (2.15)


Die Struktur des Viterbi-Algorithmus kann, abgesehen von den jeweils nöti-
gen Indexzugriserweiterungen, beibehalten werden. Es wird auf einer Tabel-
le der Gröÿe N 2 × T operiert. In jeder Zelle wird die berechnete Wahrschein-
lichkeit δt (j, k) für das Vorkommen des Zustandpaars j, k zum jeweiligen
2.4. HIDDEN MARKOV MODELS 25

Zeitpunkt t gespeichert, zusammen mit einem Zeiger ψt (j, k) auf das beste
Vorgängerpaar (i, j) im vorigen Zeitpunkt.
bla
Prozedur [42]:

t = 1 : bla


δ1 (i, j) = πi bij (v (1) ) 
v (1) ∈ {v1 , . . . , vm } ,
bla (2.16)
 1 ≤ i, j ≤ N
ψ1 (i, j) = 0

2 ≤ t ≤ T : bla

  
max δt−1 (i, j) · aijk · bjk (v (t) )

δt (j, k) = 

1≤i≤N v (t) ∈ {v1 , . . . , vm } ,

bla
1 ≤ i, j, k ≤ N
ψt (j, k) = arg max δt−1 (i, j) · aijk
  


1≤i≤N
(2.17)

Ermittlung des wahrscheinlichsten Endzustands: bla

τT = arg max δT (i, j)


 
1≤i,j≤N
(2.18)

Backtracking: bla

τt = ψt+1 (τt+1 ), t = T − 1, T − 2, . . . , 1 (2.19)

bla
Für den Viterbi-Algorithmus für HMM2 ergibt sich eine Laufzeit ∈ O (T N 3 )
und einen Speicherbedarf ∈ O (T N 2 ). Dies bedeutet einen Zuwachs von je-
weils einer Gröÿenordnung in der Mächtigkeit der Zustandsmenge gegenüber
dem HMM erster Ordnung. Es gibt jedoch keinen Speicherplatz- oder Lauf-
zeitzuwachs in der Länge der Eingabe (die beobachtete Emissionsfolge).
26 KAPITEL 2. GRUNDLAGEN

2.4.5 Weitere Problemstellungen für HMMs


Bezüglich des Verhältnis zwischen einem Markov Model und beobachteten
Emissionsfolgen können zwei weitere Problemstellungen formuliert werden:

• Was ist die Wahrscheinlichkeit dafür, daÿ eine Emissionsfolge von einem
bestimmten Modell (A, B, π) erzeugt wurde? Im weiteren Sinn  wie
geeignet ist ein HMM für die Beschreibung eines als eine Menge von
Beobachtungen denierten Ereignisraums?
Der Brute-Force Ansatz für die Lösung dieser Frage besteht in der
Berechnung aller möglichen Folgen von Zuständen und Emissionssym-
bolen mit anschlieÿender Evaluierung der Übereinstimmung zwischen
den erzeugten und den gegebenen Emissionsfolgen, und operiert mit
einer Laufzeit ∈ O T · N .
T


Der Forward-Algorithmus wendet die Technik der dynamischen Pro-


grammierung an, und liefert die Lösung bei einer Laufzeit ∈ O (T · N 2 )
(für Markov Modelle erster Ordnung). [35, S. 262-263] [10]

• Wie können die Parameter (A, B, π) eines Markov-Modells angepasst


werden, sodaÿ es die beste Erklärung für die Erzeugung einer gegebenen
Folge von Emissionssymbolen liefern würde? In anderen Worten  wie
kann ein Markov-Modell trainiert werden?
Der Baum-Welch Algorithmus verwendet die Estimation-
Maximization-Methode um die Anpassung eines Markov-Modells
zu einer gegebenen Beobachtung zu maximieren [17, S. 5-7] [35, S.
261, 264-266] [8].

Beide Algorithmen werden in der hier vorgestellten Implementierung nicht


direkt angewandt, stellen aber Perspektiven für die Erweiterbarkeit der Lö-
sung dar. Diese werden an einer späteren Stelle diskutiert.
Kapitel 3
Einblick in das Themengebiet
Es existieren, wie bereits angedeutet, verschiedene akademische sowie kom-
merzielle Lösungen zur automatischen Harmonisierung und Stimmführung.
Selten stimmen jedoch die genauen Zielsetzungen oder Einschränkungen
überein, denen die unterschiedlichen Systemen unterliegen. Manche Projekte
beschränken sich auf bestimmte musikalische Stilrichtungen, es wird jeweils
eine unterschiedliche Formatierung der Ein- und Ausgabe deniert, was die
systeminterne Repräsentation sowie die Verfügbarkeit und die Auösung der
zu verarbeitenden Daten beeinusst. Zudem unterscheiden sich die Model-
lierung verschiedener Elemente des Problemraums sowie die algorithmischen
Herangehensweisen, was oft mehr mit einer unterschiedlichen konzeptuellen
Sicht auf die Problemstellung als mit technischen, implementierungsnahen
Argumenten begründet wird. Auch stilistische Flexibilität wird unterschied-
lich gehandhabt: während manche Systeme Möglichkeiten für stilistische Viel-
falt vorsehen oder sogar implementieren, sind andere grundsätzlich nur für
die Realisierung eines einzigen Stils geplant.

3.1 Literaturübersicht

3.1.1 Allgemeingültige Erkenntnisse


Moorer faÿt in [30] grundlegende Elemente zusammen, die die wahrnehmbare
Form und Qualität eines Musikstücks ausmachen. Dazu werden hauptsäch-
lich Periodizität und die Wiederholung bekannter Bausteine und Strukturen
aus dem allgemein-stilistischen sowie aus dem Stück-internen musikalischen
Kontext gezählt (und vgl. hierzu auch [20, S. 1]).
In seiner Untersuchung unterschiedlicher Ansätze für die automatische Kom-
position von Musik deutet Moorer auf die Schwierigkeit hin, solche Systeme

27
28 KAPITEL 3. EINBLICK IN DAS THEMENGEBIET

zu gestalten, die erfolgreich die Balance zwischen stildenierenden Wieder-


holungen und innovativer Synthese aus bekanntem, vorliegendem Material
aufrecht erhalten. Aus der Beobachtung automatisch generierter Melodien
suggeriert er weiter, daÿ eine Herausforderung nicht primär in der mathema-
tischen Formulierung und algorithmischen Umsetzung von klar denierten
kompositorischen Praktiken und Regeln (wie z.B. die der Stimmführung)
liegt, vielmehr aber in der Erfassung und Implementierung stildenierender
musikalischer Merkmale. Diese sind für die Wahrnehmung und qualitative
Akzeptanz eines Musikstücks entscheidend, und haben mit strukturellen Ei-
genschaften des Eingangsmaterials und der zu generierenden Lösung zu tun,
welche nicht immer mit den klassischen analytischen und konstruktiven Re-
geln der Harmonielehre und Stimmführung zu erfassen und umzusetzen sind.
Die folgende Betrachtung einiger Lösungsarchitekturen und -strategien für
automatische Harmonisierung zeigt, daÿ diese Erkenntnisse zunächst auf ein
praktisches Trade-O reduziert werden: wie kann ein System gestaltet wer-
den, das mit einem möglichst simplen Algorithmus, einfacher Repräsenta-
tion der Daten und knappen Mechanismus zur Herstellung und/oder Siche-
rung der musikalischen Qualität Ergebnisse liefert, die musikalisch akzeptabel
sind? Die verschiedenen algorithmischen Werkzeuge, die in den jeweiligen Sy-
stemen verwendet werden, spiegeln unterschiedliche konzeptuelle Sichtweisen
auf die Problemstellung  die Systematisierung von musikalischer Analyse
und von kompositorischen Prozessen  wider .

3.1.2 MusES und BackTalk


Pachet und Roy (P. & R.) geben in [32] einen Überblick über Systeme, die au-
tomatische Harmonisierung als sogenanntes Constraint-Satisfaction-Problem
(CSP) angehen. Dabei wird eine Lösung, also eine gültige Harmonisierung,
durch Einhalten bestimmter Einschränkungen bezüglich möglicher Akkorde
und Akkordfolgen erreicht. Im Allgemeinen müssen alle Lösungsmöglichkei-
ten auf Einhaltung der Constraints getestet werden. Eine der Lösungen, wel-
che alle Constraints einhalten, bzw. die beste aus ihnen, falls die Einhaltung
eines Constraints nicht binär sondern mit einer stetigen Gewichtsfunktion
evaluiert wird, wird als Ergebnis geliefert.
Im Kontext einer Harmonisierung ist es naheliegend, Stimmführungsregeln
als Constraints zu denieren [31, S. 122]. Es ist aber verständlich, daÿ mit
der Anzahl der Regeln, die implementiert werden und auf deren Einhaltung
jede potenzielle Lösung getestet werden muÿ, auch die Komplexität der Ar-
chitektur und der tatsächlichen Berechnung steigt. Die Behandelung aller
Constraints auf der selben konzeptuellen und damit auch auf der selben al-
gorithmischen Ebene bringt eine Erhöhung der Komplexität herbei, gleich-
3.1. LITERATURÜBERSICHT 29

zeitig wird damit auch kein getreues und ezientes Modell der Wirklichkeit
 der traditionellen Herangehensweise eines menschlichen Arrangeurs an die
gleiche Aufgabe [31, S.123]  gestellt.
Um dies zu umgehen, arbeitet das von P. & R. implementierte System (eine
Kombination aus MusES für die Modellierung musikalischer Entitäten mit
BackTalk für die Lösung des CSP [31, S.124]) in zwei CSP-Phasen: Bei
Eingabe einer Melodie von n Noten werden zunächst die in Frage kommenden
Akkorde berechnet, und im zweiten Schritt die beste Akkordfolge unter ihnen
gefunden. Constraints, welche bei anderen Systemen explizit gelöst werden
müssen, werden hier durch die Eigenschaften der Objektrepräsentation von
Noten und Akkorden implizit erfüllt.

3.1.3 COMPOzE
Ein interessantes System wird von Henz, Lauer und Zimmermann in [23] vor-
gestellt, das zum Ziel hat, Hintergrundmusik (z.B. für Präsentationen) au-
tomatisch zu generieren. Als Eingabe erhält das System COMPOzE einen
detaillierten harmonischen Plan in Form von genauen Akkordbezeichnungen
(mit Angaben zur Umkehrung), zusammen mit einem Leitfaden aus musi-
kalischen Merkmalen, die verfolgt werden müssen. Ein musikalischer Umriss
für den Schluÿ einer Musik zur Begleitung einer Präsentation könnte, zum
Beispiel, so aussehen [23, S. 119]1 :

7
Akkordbezeichnungen: bT 9 S 6 D 4 D7 T s DT D7 T
7 3
Rhetorik: Schluÿ Melodie: Abwärts
Musikalischer Leitfaden: Tempo: Langsam Rhythmus: Ruhig
Metrum: Mit Metrum Harmonie: Sanft

Tabelle 3.1  Besipielseinstellung für COMPOzE

COMPOzE ist es nun überlassen, unter Einhaltung der harmonischen und


musikalischen Pläne einen vierstimmigen Satz zu generieren, der mit den
klassischen Stimmführungsregeln (s.o., 2.1.6.1) konform ist. Die Aufgabe wird
als CSP behandelt, wobei die Stimmführungsregeln Constraints darstellen.
Ein Anwender erhält die Kontrolle sowohl über die harmonischen und die
musikalischen Pläne für das zu generierende Musikstück, als auch über die
Gewichtung der unterschiedlichen Constraints.

1 Vom Autor aus dem Englischen übersetzt


30 KAPITEL 3. EINBLICK IN DAS THEMENGEBIET

3.1.4 CHORAL
Das von Ebcioğlu implementierte System CHORAL arbeitet ebenso mit
Constraints [21]. Das System erzeugt eine Choralharmonisierung bei gegebe-
ner Sopranmelodie. Wie bei Pachet und Roy besteht der Lösungsraum aus
Repräsentationen unterschiedlichen konzeptuellen und zum Teil gegenseitig
redundanten Sichtebenen des fertigen, durchharmonisierten Chorals [21, S.
47 et seq.]:

• Eine rudimentäre Darstellung von Akkordfolgen als Tonartstufen mit


Versetzungszeichen.

• Die Melodielinien der einzelnen Stimmen in Relation zueinander.


• Eine vertikale Sicht der entstehenden Akkorde.
• Die Melodielinien der einzelnen Stimmen unabhängig von den anderen,
mit und ohne Inbetrachtnahme von Tonwiederholungen.

• Funktionale Schenkersche2 Analyse der Bass- und Sopranlinien.

Anders als bei P. & R. werden die unterschiedlichen Ebenen abwechselnd


abgearbeitet. Es werden für die jeweilig sich in Bearbeitung bendliche Sich-
tebene alle Lösungen erzeugt, in Abhängigkeit von den vorangehenden Wer-
ten der selben Sichtebene, der bereits vorhandenen Lösungen in den anderen
Ebenen und der Eingabe. Diese werden dann mithilfe als Constraints aus-
gedruckter Heuristiken bewertet, und die bestgewichtete Lösung wird selek-
tiert. Alle Sichtebenen werden nach diesem Schema in einem Round-Robin-
Verfahren abgearbeitet, und die Gesamtlösung inkrementell erzeugt. Schei-
tert auf einer Sichtebene e in Zeitpunkt t die Suche nach einer passenden
Lösung vollständig, wird die Suche in der vorangehenden Ebene erneuert,
bis die nächste passende Lösung gefunden wird; beim Scheitern der Suche
auf allen Ebenen wird die Suche im vorangehenden Zeitpunkt weitergeführt.
Ebcioğlu verwendet eine groÿe Anzahl an gewichteten Constraints als Mo-
dell für einen musikalischen Stil: im konkreten Fall von CHORAL wird der
Stil J. S. Bachs. durch 350 Regeln modelliert. Diese Tatsache, zusammen
mit der komplexen Verechtung der Sichtebenen und der eventuellen Nicht-
Linearität des Berechnungsvorgang machen CHORAL relativ unübersichtlich
und unexibel. Die von dem System erzeugten Choralharmonisierungen (mit
eventuellen Wechsel- und Übergangsnoten in den Zusatzstimmen, die vom
Rhythmus der Eingabe abweichen) werden sowohl von Ebcioğlu als auch von
P. & R. als hochqualitativ bezeichnet [32, S. 12].
2 Nach Heinrich Schenkers Reduktionsanalyse, und siehe dazu u.a. [11] und [39]
3.1. LITERATURÜBERSICHT 31

3.1.5 Vergleich CSP  GA


Phon-Amnuaisuk und Wiggins (Ph. & W.) vergleichen in [34] Ebcioğlus
CHORAL mit einem System für automatische Harmonisierung, das mit ei-
nem genetischen Algorithmus (GA) arbeitet. Im Allgemeinen sieht die Ar-
beitsweise eines GA wie folgt aus [37, S. 157-160]:

1. Initialisierung mit einer Menge (Population) k zufällig erzeugter Lö-


sungen.

2. Evaluierung und Gewichtung der Lösungen aus der Population mit-


hilfe einer Fitness-Funktion.

3. Reproduktion neuer Lösungen aus den alten Lösungen: mit einer


Wahrscheinlichkeit entsprechend ihrer Gewichtung werden Lösungen
ausgesucht und zufällig miteinander gekreuzt.

4. Mutation der neu erzeugten Lösungen mit einer niedrigen, unabhän-


gigen Wahrscheinlichkeit

5. Iteration über die Schritte 2, 3, 4, bis eine Fitness- oder Zeitschwelle


erreicht wird, und Ausgabe der besten vorhandenen Lösung.

Wissen über den Problem- und Lösungsraum (domain knowledge 


Domain-Wissen) wird nicht in der Struktur und Arbeitsweise des GA's wi-
derspiegelt.
Im konkreten Fall des GA-Harmonisierungssystems ist dieses Domain-Wissen
in der Implementierung der Fitness-Funktion und in der rudimentären musi-
kalischen Information (Tonhöhen, Intervalle, Tonlängenangaben) zu nden,
welche die elementaren Bausteine (Chromosomen) der Lösungen ausmachen.
Es wird darauf hingewiesen, daÿ die Menge und der Auösungsgrad an ex-
pliziten Domain-Wissen in beiden Systemen, CHORAL und das GA-System,
gleich sind. Es wurden die gleichen Bach-Choralmelodien als Eingabe für bei-
de Systeme verwendet, die Ergebnissse wurden mit der Fitness-Funktion des
GA's bewertet. Dabei stellte sich heraus, daÿ das CSP-System CHORAL um
eine Gröÿenordnung besser abschneidet als das GA System.
Ph. & W. argumentieren, daÿ der Vorteil des Constraint-Systems mit dem im-
pliziten Domain-Wissen zu erklären ist, das durch die strukturierte Arbeits-
weise  die Reihenfolge der Abarbeitung der unterschiedlichen Sichtebenen,
s.o.  und die dank Querverbindungen informationsreiche Repräsentation
der musikalischen Daten charakterisiert ist. Schon das getestete GA-System
entspricht dem reinen GA-Modell insofern nicht, als die Reproduktionsregeln
32 KAPITEL 3. EINBLICK IN DAS THEMENGEBIET

auch Domain-Wissen in Betracht ziehen  es bendet sich mehr Domain-


Wissen im System als es das GA Prinzip vorsieht. Ph. & W. schätzen, daÿ
weitere Erweiterungen der Wissensbasis, über die das GA-System verfügt,
seine Leistung verbessern könnten. Beim Erreichen einer angemessenen Qua-
lität durch solchen Erweiterungen, wird das System jedoch nicht mehr als
GA-System zu bezeichnen sein. Ph. & W. Fazit ist, daÿ
...die Natur des Problems mit dem GA-Ansatz nicht kompatibel
ist. [34, S. 30]3
Ph. & W. schlieÿen mit der Behauptung, die Qualität der Ausgabe eines
Systems hänge grundsätzlich von der Menge an explizitem und implizitem
Wissen ab, über das das System verfügt. Demnach verdankt das CHORAL
System seine Überlegenheit der strukturierten Repräsentation der Daten,
sowie der Reihenfolge der Arbeitsschritte, welche wiederum eine Hierarchie
und damit weiteres Domain-Wissen ausdrückt.

3.1.6 GYMEL
Ein Versuch, Domain-Wissen in einer anderen Weise in ein System zur au-
tomatischen Harmonisierung zu integrieren wurde von Sabater, Arcos und
López de Mántaras präsentiert [38]. Ihr System GYMEL verfügt über eine
Prototypendatenbank  eine Case-Base  von Akkordfolgen und harmo-
nisierten Melodien, welche je nach Aufgabe stilabhängig zusammengesetzt
wird.
Eine Eingabemelodie wird, unter dem Einsatz von Heuristiken, die eine
rhythmische Takthierarchie und die rhythmischen Werte der einzelnen No-
ten berücksichtigen, auf eine sog. Hard-Group reduziert. Diese besteht aus
repräsentativen Noten aus jedem Takt. Im nächsten, konstruktiven Schritt
wird zunächst in der Case-Base nach Mustern gesucht, die mit der lokalen
Situation (eine noch zu harmonisierende Note und ihr evtl. schon harmo-
nisierter Vorgänger) übereinstimmen. Gefundene Muster werden, gewichtet
nach dem Grad ihrer Übereinstimmung mit der Eingabe, zur Lösung hinzu-
gefügt, sodaÿ ein Lösungsbaum entsteht. Wird kein Muster in der Case-Base
gefunden, wird die lokale Lösung mittels CSP erstellt. Nach Generierung
des kompletten Lösungsbaums wird die beste Lösung mittels Backtracking
erstellt. Abschlieÿend wird jede erfolgreich erstellte Lösung zur Case-Base
hinzugefügt.
GYMEL verwendet einen relativ einfachen Satz an Constraints [38, S. 150].
Das ist die praktische Umsetzung des Grundgedankens, mit wachsender Case-
Base immer öfter auf diese und seltener auf das CSP-Modul zurückgreifen
3 Vom Autor aus dem Englischen übersetzt
3.1. LITERATURÜBERSICHT 33

zu müssen. Der Nachteil dabei liegt in der Tatsache, daÿ es Fälle gibt, für
die es keine passenden Muster im Case-Base gibt, die aber gleichzeitig eine
Situation darstellen, für die auch das vereinfachte Constraint-Modul keine
Lösung liefern kann. In solchen Fällen liefert GYMEL kein Ergebnis. S. et
al. sehen in ihrem System einen erfolgversprechenden Ansatz für Domains
(i.e. musikalische Stilrichtungen), für die die Erstellung einer groÿen initialen
Case-Base nicht praktikabel ist, die aber auch nicht vollständig mit einem
Regelsatz zu erfassen sind [38, S. 151]. bla

3.1.7 AMOR
Eine weitere Möglichkeit, die für einen Musikstil charakteristischen Muster
zu repräsentieren und nachzuahmen, bieten Markov-Modelle. In unterschied-
lichen Systemen werden mit Markov-Modellen unterschiedliche strukturelle
Aspekte repräsentiert. Damit wird deutlich, welche von den vielen Prozessen,
die man in einem Musikstück identizieren kann, für die jeweiligen Entwickler
als maÿgebend für eine konstruktive Charakterisierung erscheinen.
Miura et al. stellen in [29] das AMOR System vor. Bei Eingabe einer Melo-
die kann das System die Tonart identizieren. Zudem kann auch ein Musikstil
speziziert werden. Takt und Rhythmus müssen eingegeben werden, sodaÿ
Vorschläge und aufgrund ihres kleinen rhythmischen Wertes vernachlässig-
bare, aber vor allem tonartfremde Töne aus der Betrachtung herausgenom-
men werden. Für jeden Ton des resultierenden melodischen Grundgerüstes
werden alle Akkorde aufgelistet, die im Repertoire des Systems vorhanden
sind und in denen der Ton vorkommt. Im folgenden Schritt wird unter dem
Einsatz einer Markov-Kette eine Akkordfolge bestimmt. Jeder Zustand des
Prozesses besteht aus mehreren Akkorden, die in gängigen Kadenzen jeweils
für eine harmonische Funktion stellvertretend vorkommen könnten. Auch die
Übergangswahrscheinlichkeiten werden nach diesem festen Satz an Kaden-
zen deniert [29, S. 197]. Nachdem die Akkordfolge für die gesamte Melodie
erstellt wurde, werden die Töne der zusätzlichen Stimmen in jedem Akkord
vergeben. Dafür wird eine Datenbank von Akkorden aus der Popularmusik
verwendet, aus der Auftrittswahrscheinlichkeit von Tönen und ihre Positio-
nierung in den unterschiedlichen Akkorden abzulesen ist. Abschlieÿend wird
die Lösung dem Benutzer präsentiert. Dieser kann vom System eine alterna-
tive Lösung fordern, die wegen der stochastischen Natur des Systems besser
oder schlechter sein könnte.
Da Akkordfolgen, die nicht erlaubt sind, im Markov-Modell von AMOR nicht
repräsentiert werden, liefert das System stets Lösungen, die im Sinne der Har-
monielehre Funktions- und Akkordnamenstechnisch korrekt sind. Da aber ei-
34 KAPITEL 3. EINBLICK IN DAS THEMENGEBIET

nerseits nur die Struktur von Schluÿkadenzen als Grundlage für die Zustände
und die Übergangswahrscheinlichkeiten des Markov-Modells dient, anderer-
seits die Auswahl der Töne für die zusätzlichen Stimmen stochastisch er-
folgt, sind die Ergebnisse des Systems manchmal musikalisch unbefriedigend.
Die Möglichkeit, alternative Lösungen vom System zu erhalten, sollte diese
Schwäche mildern, welche die Autoren auf die zuletzt doch informationsarme
Struktur zurückführen, die mit dem Markov-Modell ausgedruckt wird [29, S.
197].

3.1.8 Einsatz von HMM2


Eine ähnliche Herangehensweise wird von Biyikoglu in [19] beschrieben. Sein
System erhält als Eingabe eine Choralmelodie mit Angaben zum Takt, har-
monischem Rhythmus (speziziert, wie oft ein Harmoniewechsel stattnden
soll) und Unterteilung in Phrasen. Für jeden aus dem harmonischen Rhyth-
mus resultierenden harmonischen Segment werden aus den im System erlaub-
ten Akkordmöglichkeiten alle in Frage kommende Akkorde generiert. Das
sind die Akkorde, die mindestens einen Ton aus dem Segment beinhalten.
Jedes Segment wird zusätzlich mit Informationen über seine Position verse-
hen  am Anfang oder am Ende des Stückes, bzw. einer Phrase oder eines
Taktes. Eine wahrscheinliche Akkordfolge kann als eine Emissionsfolge eines
Markov-Prozesses generiert werden. Dabei fungieren die für jedes Segment er-
rechneten möglichen Akkorde mitsamt der zusätzlichen Segmentinformation
als Zustände, und die jeweils für die Harmonisierung ausgesuchten Akkorde
als Emissionswerte. Der beste Pfad kann mithilfe des Viterbi-Algorithmus
ermittelt werden.
Biyikoglu hat für die Entscheidung der Akkordfolgen ein HMM2 eingesetzt,
welches mit originalen Bach-Chorälen trainiert wurde. Nach der Erstellung
einer Akkordfolge werden die Töne der zusätzlichen Stimmen durch Pattern-
Matching von Eingabemelodie und Akkordnamen mit Stimmführungsmuster
aus den Bach-Chorälen entschieden. Es kann jedoch vorkommen, daÿ es we-
gen der stochastischen Natur der Entstehung der Akkordfolgen für bestimm-
ten Momenten des Stücks keine passende Muster gefunden werden. Solche
Fälle werden unter dem Einsatz von Stimmführungsregeln überbrückt.
Als Errungenschaft seines Entwurfs sieht Biyikoglu die Berücksichtigung der
Hierarchie der Phrasen, die sich in der Erweiterung des HMM-Alphabets um
die Angaben zur Position eines Segments manifestiert. Kritisiert wird die
Leistung des Stimmführungsmoduls.
3.1. LITERATURÜBERSICHT 35

3.1.9 CPUBach
Die gleiche strukturelle Sicht, nach der die Harmonisierung durch Entschei-
dung einer Akkordfolge und eine anschlieÿende Stimmenverteilung entsteht,
wird von Hanlon und Ledlie (H. & L.) in [22] geteilt, und in ihrem System
CPUBach umgesetzt, welche ebenso auf Harmonisierung im Stil von J. S.
Bach zielt. Phrasen müssen in der Eingabe deniert werden, und werden je-
de für sich gesondert behandelt. Für jede 3-er Gruppe aufeinanderfolgender
Melodienoten wird die Menge aller möglichen Akkordnamen erstellt. Die Ak-
kordnamen stammen aus einer reichen Datenbank, welche zusätzliche Anga-
ben zu jedem Akkord bereithält, wie z.B. zur Umkehrung oder zum Vorhan-
densein von Septimen. Akkorde, die zu den Noten der Phrasen-Schluÿkadenz
gehören, werden speziell gekennzeichnet. Die Übergangswahrscheinlichkeiten
zwischen den 3-er Akkordgruppen wurden von H. & L. nach allgemein vor-
handener Kenntnis von Akkordstrukturen in Bachs Musik manuell gesetzt.
Die Akkordfolge für ein Segment wird von der Emissionsfolge eines Markov-
Prozesses bestimmt, welcher von der Kadenz am Ende der Phrase in Richtung
ihres Anfang entlang der Akkordgruppen arbeitet. Anschlieÿend werden von
einem weiteren Modul die Töne für die zusätzlichen Stimmen generiert. Die-
ser erzeugt für jeden Akkord alle in Frage kommenden Töne, und sucht unter
ihnen die beste Kombination unter Berücksichtigung der Regeln der Stimm-
führung. Die Auswahl an Tönen, die für die Harmonisierung eines Akkords in
Frage kommen, hängt von der Stimmführung in den vorangegangenen Akkor-
den ab. Daher kann es vorkommen, daÿ es im Laufe der Berechnung für einen
Akkord keine Töne gefunden werden könnten, die ihn konform mit den Stim-
führungsregeln umsetzen würden. In solchen Fällen muÿ ein Backtracking
stattnden und ein neuer Pfad errechnet werden.
Einen Schwachpunkt identizieren H. & L. in der manuellen Eingabe der
Übergangswahscheinlichkeiten: diese wurde nicht vollständig für alle mögli-
che 3-er Akkordfolgen aus Bachs Musik durchgeführt, da dies praktisch nicht
möglich ist. Als Resultat scheitert die Implementierung bei der Vergabe von
Akkordnamen bei manch langer oder untypischer Melodie. Ein von H. &
L. vorgeschlagener Ausweg ist das unüberwachte Training des Modells mit
originalen Bach-Chorälen.

3.1.10 xChoralanalyse mit HMM


Ein weiteres System zur Analyse von Bach-Chorälen und zur Choralhar-
monisierung in deren Stil wurde von Allan und Williams (A. & W.) in [2]
vorgestellt. In einem Markov-Modell werden Melodienoten als Emissionen
dargestellt, in den versteckten Zustände werden mithilfe tonartunabhängi-
36 KAPITEL 3. EINBLICK IN DAS THEMENGEBIET

ger Intervallverhältnisse Akkorde repräsentiert. Es werden Übergangswahr-


scheinlichkeiten zwischen den Akkorden und Emissionswahrscheinlichkeiten
zwischen Akkorden und Melodienoten deniert, und durch Training mit ori-
ginalen Bach-Chorälen gesetzt. Da das Material in der Trainingsmenge har-
monisch analysiert ist, werden vom Modell auch Akkordbezeichnungen für
die sonst anonymen Akkord-repräsentierenden Intervallverhältnisse gelernt.
Mit einer Annahme über einen harmonischen Rhythmus kann die wahrschein-
lichste Akkordfolge unter Einsatz des Viterbi-Algorithmus berechnet werden.
Bei Festsetzung eines beliebigen Schluÿakkordes können mittels Backtracking
auch alternative Lösungen gesampelt werden [2, S. 27]. In einem weiteren
Schritt werden eventuelle Verzierungen in Form von Wechsel- und Übergangs-
noten zu den Stimmen hinzugefügt. Auch dieser Schritt wird mit einem HMM
realisiert. A. & W. argumentieren, daÿ diese Unterteilung in zwei Schritten
ihren ökonomischen Sinn hat, da die Erweiterung der Zustandsmenge des har-
monisierenden HMMs mit unterschiedlichen rhythmischen Werten mit groÿer
Steigerung der Anzahl der Zustände des ersten HMMs bei gleichzeitiger Ver-
dünnung der Informationsdichte einherginge. Zudem stellt sie eine Abbildung
der traditionellen Herangehensweise bei der Lösung einer Harmonisierungs-
aufgabe dar: demnach sind Verzierungen zwischen den zuvor festgelegten
Harmonien an den Hauptzeiten des harmonischen Rhythmus hinzuzufügen.

Eine Evaluierung der Ergebnisse erfolgte durch Ermittlung von logarithmi-


schen Distanzen zwischen Ausgaben des Systems und Exemplaren aus der
Trainingsmenge.

A. & W. betonen, daÿ ihre Implementierung ein reines Machine-Learning Sy-


stem ohne festcodiertem Domain-Wissen ist. Ein daraus resultierendes Pro-
blem wird bei der Behandlung von seltenen Fällen sichtbar, für die es kaum
oder gar keine Zeugen in der Trainingsmenge gibt. Zudem manifestiert sich
die nicht-explizite Beachtung der Stimmführungsregeln manchmal in einem
unnatürlichen, sprunghaften melodischen Verhalten der einzelnen Stimmen.
Des Weiteren ist das System auf einen festen harmonischen Rhythmus ange-
wiesen.

Unklar ist, wie die Gröÿe der Zustandsmenge des harmonisierenden HMMs
festgelegt wird, wenn man davon ausgeht, daÿ jeder Zustand eine spezische
Akkordinkarnation mit genauen Stimmenverteilung darstellt. Bereits das vor-
gestellte System sieht zwei unterschiedliche Markov-Modelle für Eingaben in
Dur bzw. in Moll vor, und die Beschreibung des Systems suggeriert, daÿ jede
Erweiterung des Akkordvorrats (welche bereits durch eine Erweiterung der
Trainingmenge um einen einzigen Choral herbeigeführt werden könnte) die
Neugestaltung des gesamten Markov-Modells erzwingen würde.
3.1. LITERATURÜBERSICHT 37

3.1.11 xEin alternatives stochastisches Modell


Eine tiefergehende strukturelle Modellierung harmonischer Prozesse wird von
Paiment, Eck und Bengio (P., E. & B.) in [33] umgesetzt. Sie identizieren
einen Schwachpunkt in der Unfähigkeit von Markov-Modellen globale Ab-
hängigkeiten zu repräsentieren, die über unmittelbare zeitliche Nachbarschaft
hinausgehen.
Als Ausweg schlagen sie eine Baumstruktur vor, in der Abhängigkeiten un-
terschiedlicher musikalischer Elemente der Eingabemelodie und der zu ent-
stehenden Harmonisierung beschrieben werden, darunter:

• Die Abhängigkeit zwischen Melodienoten (als Emissionswerte) und Ak-


kordtönen (als versteckte Zustände).

• Die Abhängigkeit benachbarter Akkordtöne.

• Die Abhängigkeit zwischen Akkordgrundtönen und Akkordbezeichnun-


gen (als weitere Zustände in unterschiedlichen Tiefen am gleichen Zeit-
punkt)

Alle Relationen werden unter Einbeziehung des metrischen Zusammenhangs,


also nach der Position der teilnehmenden musikalischen Elemente im Takt
betrachtet. Jedes aus benachbarten Vor- und Nachfolger bestehende Akkord-
paar teilt eine gemeinsame Wurzel, die wiederum mit ihrem Nachbar auf der
selben Ebene eine gemeinsame Wurzel teilt, usw. . Übergangs- und Emissi-
onswahrscheinlichkeiten werden mit einer Trainingsmenge an harmonisierten
Melodien und unter dem Einsatz des Expectation-Maximization (EM) Algo-
rithmus4 trainiert.
Im Vergleich mit einem HMM, das aus dem im System vorhandenen Mo-
dell durch Entfernung der Elternverbindungen in dem Baum erzeugt werden
konnte, schnitt das Baummodell bei der Ermittelung von Akkordgrundtönen
bei gegebener Melodie besser ab. Harmoniergänzung (nach Entfernung der
Harmonien an einzelnen Stellen aus sonst durchharmonisierten Abschnitten,
[33, S. 227]) bei Eingabe von Melodie sowie Akkordgrundtönen wurde jedoch
vom HMM mit gröÿerem Erfolg absolviert. Diese Testergebnisse führen P.,
E. & B. zu der Schluÿfolgerung, daÿ die Bekanntgabe einer Akkordgrundton-
folge sehr entscheidend für die Harmonisierung einer gegebenen Melodie ist,
und daÿ die meiste zeit- und rhythmusabhängige Information, die durch das
Training im Baummodell erfasst wird, bereits in einer Akkordgrundtonfolge
vorhanden ist.
4 Zum EM-Algorithmus siehe z.B. [37, S. 881-891].
38 KAPITEL 3. EINBLICK IN DAS THEMENGEBIET

3.1.12 xHARMONET
Hornel und Menzel (H. & M.) stellen mit HARMONET [24] ein System
vor, welches neuronale Netze (NN)5 einsetzt, um stildenierende Merkmale
während des Harmonisierungsprozesses zu entscheiden. Allgemeingültige Ge-
setze der Stimmführung werden weiterhin als Constraints behandelt und von
dafür vorgesehenen Prozeduren (Conventional Algorithms) umgesetzt.
Ein NN wird im ersten Schritt eingesetzt, um die Melodienoten mit harmoni-
schen Funktionen zu versehen. Dabei sieht HARMONET eine sehr detaillierte
Auösung von harmonischen Funktionen vor, in der jeder der diatonischen
Akkorde, die mit Tonartstufen als Grundtöne und Akkordtöne gebildet wer-
den, sowie weitere, bestimmte nicht-diatonische Akkorde, jeweils eine eindeu-
tige funktionale Beschreibung tragen. Die Kennzeichnung einer Melodienote
mit einer dieser Funktionen schränkt die Auswahl an möglichen Akkorden
für die Harmonisierung dieser Note stark ein.
Der folgende Schritt, in dem die Stufen- oder Akkordbezeichnungen zu den
Tönen der einzelnen, zusätzlichen Stimmen expandiert werden, wird von den
o.g. Conventional-Algorithms nach Regeln der Stimmführung absolviert. Ab-
schlieÿend wird der harmonisierte Satz mit Wechsel- und Übergangsnoten
versehen, in einem Schritt, der von einem weiteren NN übernommen wird.
Für eine Melodienote in Zeitpunkt t erhält beim Training das erste, harmoni-
sierende NN zusätzlich die Melodienoten in t − 1 und in t + 1, die Harmonien
zu den Zeitpunkten t − 1, t − 2 und t − 3, sowie Information über die Po-
sition von t innerhalb des Takts und innerhalb der Phrase. Damit lernt das
NN stilbedingte Merkmale bezüglich harmonischer Erwartungs- und Über-
raschungselemente. Netze, die mit unterschiedlichen, jeweils für einen Stil
repräsentativen Trainingsmengen trainiert werden, könnten anschlieÿend für
eine stilistische Klassizierung von harmonisierten Stücken eingesetzt wer-
den.
H & M präsentieren für HARMONET gute Ergebnisse, sowohl für die Erken-
nung der Stilrichtung durchharmonisierter Stücke, als auch für die Harmoni-
sierung einstimmiger Melodien. Gemessen wurde die Erfolgsrate bei Klassi-
zierung von Stücken aus der Trainingsmenge nach ihrer Stilrichtung, bzw. die
Akkord-Übereinstimmung zwischen originalen Bach-Chorälen und den Har-
monisierungen derer Melodien durch das System. Die Gröÿe und Qualität
einer stildenierender Trainingmenge bleibt jedoch entscheidend (wie z.B.
aus [24, S. 51, Tabelle 3.] zu entnehmen ist), des Weiteren müssen für das
Material in der Trainingmenge harmonische, rhythmische und strukturelle
Informationen vorliegen.

5 Zu neuronalen Netzen siehe z.B. [36], sowie [37, S. 896-910].


3.2. KOMMERZIELLE LÖSUNGEN 39

3.2 Beschreibung vorhandener kommerziel-

len Lösungen

Da im Folgenden kommerzielle Produkte beschrieben werden, ist es verständ-


lich, daÿ es zum Teil wenige bis gar keine Informationen über ihre Funktions-
weise vorliegen. Daher wird lediglich eine Beschreibung der Bedienung und
der Ergebnisse einzelner Produkte gegeben, und anhand dessen ihre mögliche
Funktionsweise kurz diskutiert.

3.2.1 Anvil Studio


Das Program Anvil Studio der Firma Willow Software ist ein MIDI Se-
quencer [40]. Eine der angebotenen Methoden, um MIDI-Events einzugeben
bzw. zu manipulieren ist in Notenschrift über einen virtuellen Bogen (Com-
poser View). Es können MIDI-Dateien erzeugt oder geönet werden, die
jeweiligen Noten erscheinen dann auf dem Bildschirm. Weiter bietet Anvil
Studio die Möglichkeit an, zur Zeit der manuellen Eingabe einer Note diese
zu harmonisieren. Das System arbeitet stets innerhalb des Kontexts eines
MIDI Songs. Damit liegen dem harmonisierenden Modul Takt- und Rhyth-
musinformationen immer vor.
Wie Anvil Studio die eingegebenen Noten harmonisiert, bleibt in der frei
herunterladbaren Version versteckt. Bei Betrachtung der simultanen Harmo-
nisierung bei einfachen Eingaben werden jedoch einige Merkmale sichtbar:

• Sowohl Quint- und Oktavparallelen als auch extreme Lagenwechsel in


den einzelnen Stimmen im Übergang von einer Note zur nächsten kom-
men vor.

• Die Option Limit voice ranges (begrenze Stimmumfänge) führt zur


forcierten Oktavierung eingegebener Noten, welche vom Stimmumfang
der Sopranstimme herausfallen.

• Das System erzeugt Akkorde nach einem konstruktiven Schema: bei


wiederholter Anforderung, für eine Note eine alternative Harmonisie-
rung zu erhalten, werden stets neue Akkorde bzw. Umkehrungen ge-
liefert, in unterschiedlichen Lagen der einzelnen Stimmen. Die Kon-
struktionsvorschrift sieht es oensichtlich jedoch vor, daÿ diatonische
Akkorde gegenüber nicht-diatonischen, bzw. zur harmonischen Umge-
bung der Tonart gehörende Akkorde gegenüber solchen, die harmonisch
entfernter sind, vorgezogen werden.
40 KAPITEL 3. EINBLICK IN DAS THEMENGEBIET

• Die gleichen melodischen Wendungen werden stets mit denselben Ak-


korden versehen. Wird die Default-Harmonisierung vom Anwender ver-
ändert, reagiert das System darauf, und die folgenden Noten erhalten
ggf. eine andere Harmonie, wie im folgenden Beispiel zu sehen ist:

Originales Output des Systems. Eingegeben Nach Änderung der Harmonie für die vierte

wurden die Noten, die im Sopran liegen. Note: bei diesem vom System vorgeschlage-

nen Akkord liegt die eingegebene Melodie-

note im Baÿ. Folglich wurde vom System

ein anderer Akkord für den nächsten Ton

vorgeschlagen. Ein zusätzlicher Ton wurde

eingegeben, um die Kadenz zu einem Schluÿ

auf der Tonika zu bringen.

Tabelle 3.2  Harmonisierungsverhalten von Anvil Studio nach Änderung


durch den Anwender

• Insbesondere wenn ein vom System vorgeschlagener Akkord vom An-


wender in einen anderen, diatonisch fremden Akkord verändert wird,
wird es deutlich, daÿ ein schnelles Erreichen eines Tonika-Akkords auch
dann forciert wird, wenn Gesetze der Stimmführung und harmonischen
Konventionen dabei verletzt werden.

• Der Anwender hat keinen Einuÿ darauf, in welche Stimme das System
eine von ihm eingegebene Note unterbringt.

Im Lichte dieser Eigenschaften könnte ein vom Anvil Studio geliefertes Ergeb-
nis im allgemeinen Fall nur schwer als echte Harmonisierung taugen. Das
System versieht vielmehr einzeln eingegebenen Tönen mit Akkorden, ohne
daÿ ein Bezug zur Struktur des Satzes oder zum harmonisch-funktionalen
Kontext hergestellt wird.
3.2. KOMMERZIELLE LÖSUNGEN 41

3.2.2 tonica
Die Firma capella software bietet mit ihrer Software tonica ein ausgereiftes
Produkt für das Harmonisieren eingegebener Melodien. Das System sollte
hilfestellend beim Komponieren oder Arrangieren eingesetzt werden.
Dem Anvil Studio ähnlich arbeitet auch tonica in einer MIDI-Umgebung,
wobei Tonart, Takt und MIDI-Noten vom Anwender eingegeben werden müs-
sen. Auf Wunsch des Anwenders kann dann die Melodie in einem aus fünf
unterschiedlichen Stilrichtungen (zwei Varianten nach J. S. Bachs, weitere
nach Max Reger, Samuel Scheidt und ein Jazzstil) vierstimmig harmoni-
siert werden. Die zusätzlichen Stimmen sind der Melodiestimme gegenüber
rhythmisch frei, eventuell werden Übergangs- und Wechselnoten hinzugefügt.
Zusätzlich kann der Anwender eine melodische Umspielung der eingegebenen
Stimme sowie einer oder mehrerer der hinzugefügten Stimmen fordern. Im
Jazzstil kann eine erneute Harmonisierungsauorderung ein neues, unter-
schiedliches Ergebnis liefern. Auf dem virtuellen Notenbogen erscheint nach
Absolvierung des Harmonisierungsschritts neben den notierten, neuen Stim-
men auch eine funktionale Kennzeichnung der Akkorde (diese kann auch
unabhängig von der Harmonisierung ausgegeben werden). In Jazzstil kommt
es gelegentlich zu Quint- oder Oktavparalellen  diese werden auf dem Bild-
schirm rot markiert.
Das System bietet an, über die gesamte Länge der Melodie möglichst bekann-
te Kadenzwendungen als Grundlage anzuwenden. In der Standardeinstellung
werden Kadenzwendungen nur an Phrasenenden explizit eingesetzt. Um die-
ses Merkmal optimal auszunutzen, muÿ das System jedoch über Information
bezüglich der Phrasengrenzen verfügen  diese kann vom Anwender in Form
von Fermaten6 eingegeben werden.
Rhythmus und Platzierung von Noten im Takt haben Einuÿ auf die Ergeb-
nisse.
Es ist nicht möglich, die Melodie in eine andere Stimme zu platzieren als in
den Sopran. Nach der automatischen Erstellung der Harmonie können die
einzelnen Stimmen vom Anwender editiert werden.
Nach eigener Angabe von capella software arbeitet tonica mit neuronalen
Netzen. Es liegt nahe, daÿ für jede der in der Demoversion angebotenen Stil-
richtungen ein eigens auf diesen Stil trainiertes Netz zum Einsatz kommt
(oder mehrere solche Netze, die für die unterschiedlichen Aufgaben  Funk-
tionsanalyse, Harmonisierung und Stimmenverzierung  zuständig sind, wie
es auch in dem unter 3.1.12 erwähnten System der Fall ist). tonica liefert
musikalisch gute Ergebnisse, und ist einfach zu bedienen: nach Eingabe der
6 Auch zur Zeit J. S. Bachs wurden Fermaten zur Kennzeichnung von Phrasenenden
angewandt, und siehe dazu auch [28, S. 74] sowie [9].
42 KAPITEL 3. EINBLICK IN DAS THEMENGEBIET

Melodie kann eine vollständige Harmonisierung mit einem Mausklick erledigt


werden.

3.2.3 vielklang v1.2


Die Firma zplane.development bietet seit 2007 das VST-Instrument viel-
klang an. Im Unterschied zu allen hier diskutierten Systemen aus dem aka-
demischen sowie aus dem kommerziellen Umfeld, arbeitet vielklang mit Au-
diodateien: eine einstimmige Audioeingabe wird analysiert und ihre Tonart
wird bestimmt, anschlieÿend wird eine vierstimmige Harmonisierung automa-
tisch erstellt. Dabei werden die Töne für die zusätzlichen Stimmen mittels
Pitchshifting vom originalen Audiomaterial der Eingabe generiert. Das Er-
gebnis lässt sich als Audiodatei speichern. Zusätzlich kann ein Anwender
die Töne der einzelnen Stimmen in ihrer Tonhöhe editieren oder sie stumm
schalten, sowie vom System statt des angebotenen einen anderen Akkord ver-
langen. Des Weiteren besteht die Möglichkeit, Akkorde zu einem beliebigen
Zeitpunkt während ihrer Dauer zu teilen. Damit können sowohl die Eingabe
als auch die vom System erstellte Harmonie weiter modiziert werden.
Da die zusätzlichen Stimmen aus dem Originalmaterial generiert werden,
besteht zumindest im aktuellen System keine Möglichkeit zur rhythmischen
Divergenz der hinzugefügten Stimmen gegenüber der Eingabe  die vom
System gelieferte Harmonisierung ist stets homophon, alle Stimmen bewegen
sich im gleichen Rhythmus.
Die Harmonisierung wird von vielklang in zwei Schritten erstellt:

1. Festlegung eines harmonischen Pfads

2. Realisierung der Stimmführung

Der im ersten Schritt erstellte harmonische Pfad besteht aus einem Akkord-
typ und einem Grundton für jede Note der Eingabemelodie. Um den Pfad
zu bestimmen, werden zunächst für jede Melodienote die drei diatonischen
Dreiklänge generiert, welche den Ton beinhalten, sowie der Septakkord mit
dieser Note als Grundton. Diese Akkorde werden nach der Stufe ihres Grund-
tons innerhalb der Tonart gewichtet: Akkorde, die zu den Hauptstufen der
Tonart  Tonika, Subdominante, Dominante und die Tonikaparallele (die
sechste Tonartstufe)  zugeschrieben werden, werden höher gewichtet, um
den tonalen Rahmen der Melodie zu unterstützen. Für Akkorde am Anfang
und am Ende der Melodie werden andere Gewichte verwendet, welche die
Tonalität noch stärker unterstreichen. Tonartfremde Melodienoten werden
3.2. KOMMERZIELLE LÖSUNGEN 43

in diesem Schritt übersprungen7 . Die gewichteten Akkorde werden in einer


Spalte einer Tabelle geschrieben, entsprechend der Position der Melodienote
innerhalb der Melodie. Abschlieÿend wird mittels dynamischer Programmie-
rung der best-gewichtete Pfad durch die Akkordtabelle ermittelt. Übergangs-
wahrscheinlichkeiten zwischen Akkordgrundtönen (als Tonartstufen) sind in
Tabellen jeweils für Dur- bzw. Molltonarten festgehalten.
Nun folgt die Realisierung des harmonischen Pfads als individuelle Noten
der zusätzlichen Stimmen: nach Vorlage des jeweiligen Akkords aus dem har-
monischen Pfad werden für jede Melodienote alle mögliche Töne im vorde-
nierten Umfang erzeugt, welche diesen Akkord realisieren können. Um die
beste Kombination für die Realisierung des jeweiligen Akkords  das be-
ste Voicing 8  zu nden, werden alle Permutationen der gefundenen Töne
getestet und gewichtet. Als Testkriterien werden Stimmführungsregeln und
tradierte Praktiken der Harmonielehre eingesetzt, jeweils für die unabhängi-
ge Betrachtung eines Voicings bzw. für die Prüfung des Fortschreitens vom
vorhergehenden Voicing. Das Gewicht des Voicings wird je nach Überein-
stimmung bzw. Verletzung einer Regel um einen für die Regel festgelegten
Faktor angehoben oder abgesetzt. Das Voicing, welches am Ende das maxi-
male Gewicht aufweist, wird an der entsprechenden Stelle des Ergebnisses
geschrieben.
Auf der Basis des harmonischen Pfads kann auch eine Harmonisierung mit
einer einzigen zusätzlichen Stimme stattnden. Zudem bietet vielklang meh-
rere Modi an, bei denen die Harmonisierung nach festen Einstellungen gene-
riert wird, wie zum Beispiel die Führung der zusätzlichen Stimmen in festen,
vom Anwender eingestellten Intervallen parallel zur eingegebenen Melodie-
stimme. Ob die Melodiestimme innerhalb des entstehenden mehrstimmigen
Satzes als Sopran, Alt, Tenor, oder Baÿ vorkommt kann vom Anwender frei
entschieden werden.
Die gesamte interne Harmonisierungslogik von vielklang arbeitet mit der
MIDI-Tonhöhenrepräsentierung der Noten als ganzen Zahlen. Weitere musi-
kalische Parameter, wie z.B. Tondauer, Takt oder Metrum der Eingabeme-
lodie werden nicht verwendet. Da vielklang als Werkzeug für Studio- und
Heimmusikproduktion konzipiert ist, und mehr auf direkte Einbindung sei-
7 In der Standardeinstellung des Plugins werden tonartfremde Töne auf den nächsten
diatonischen Ton quantisiert
8 Aus der englischsprachigen Version von Wikipedia:

...Voicing bezeichnet die Instrumentierung und den vertikalen Abstand und


Verteilung der Töne eines Akkords [...]. Der Ton im Baÿ bestimmt die
Umkehrung. [16, Vom Autor aus dem Englischen übersetzt]

Der Begri wird im Folgenden verwendet.


44 KAPITEL 3. EINBLICK IN DAS THEMENGEBIET

ner Ergebnisse in einer Audio-Mischung als auf eine traditionelle Arbeitsweise


mit Musik in Textform zielt, sind diese Einschränkungen zum Teil erzwungen,
zum Teil erleichtern sie aber die Arbeit, die mit vorhandenem Audiomaterial
intuitiv und ohne sonstige analytische Vorbereitung von statten gehen kann.
Kapitel 4
Algorithmus

4.1 Herangehensweise und Überblick

Das hier vorgestellte System soll im Vergleich zur aktuellen vielklang-Version


den folgenden zwei Hauptanforderungen genügen:

1. Es sollte anspruchsvollere Harmonisierungsergebnisse liefern. Dabei


sind die Vielfalt der verwendeten Akkorde, die Ranesse der Stimm-
führung sowie die erfolgreiche Abbildung der Melodiestruktur durch die
Harmonisierung wichtige Qualitätsmaÿstäbe.

2. Es sollte im Hinblick auf das Nachahmen unterschiedlicher musikali-


schen Stilrichtungen exibel bzw. erweiterungsfähig sein.

Als Eingabe erhält das Harmonisierungssystem weiterhin nur Tonhöhe und


Länge der Melodienoten sowie die Tonart der Eingabemelodie.
Um beide o.g. Anforderungen zu erfüllen wurde ein neuer konzeptueller An-
satz gewählt. Der Harmonisierungsprozess besteht aus zwei Verarbeitungs-
schritten: dem analytischen  in dem das notwendige Wissen über die Ein-
gangsmelodie gewonnen wird  und dem konstruktiven  in dem die zu-
sätzlichen Stimmen erzeugt werden. Der neue konzeptuelle Ansatz schreibt
eine stärkere Trennung zwischen dem analytischen und dem konstruktiven
Teil vor. Zudem werden die im analytischen Schritt gewonnenen Erkenntnisse
über die Eingangsmelodie vielfältiger. Unter der Grundannahme, eine (gelun-
gene, befriedigende) Harmonisierung einer monophonen Melodie beruhe stets
auf einer in der Melodie latent vorhandenen harmonischen Basisstruktur, ist
die Kenntnis dieser Struktur der Schlüssel für eine erfolgreiche Harmonisie-
rung der Melodie. Dies gilt unabhängig von der erwünschten musikalischen
Stilrichtung. Die stildenierenden Eigenschaften der Harmonisierung werden

45
46 KAPITEL 4. ALGORITHMUS

durch die Auswahl der Akkorde und der Stimmführungspraktiken realisiert,


die beim konstruktiven Schritt der Verarbeitung verwendet werden.
In Abbschnitt 2.1.6.2 wurde bereits demonstriert, wie Kadenzen, die auf der
gleichen Folge harmonischer Funktionen basieren, unterschiedlich gestaltet
werden können. In Abbildung 4.1 wird dieses Phänomen unter einem zusätz-
lichen Aspekt demonstriert  es werden vier Varianten zur Harmonisierung
der gleichen Kadenz vorgestellt, wobei sowohl die Sopranstimme als auch
die harmonische Funktionsfolge TSDDT unverändert bleiben. Allein die
Wechselwirkung zwischen der Wahl der Akkorde und der Stimmführung re-
sultiert in jeweils unterschiedlich harmonisierten Kadenzen:

1. Akkordfolge: C − D2 − G56 − C
2. Akkordfolge: C − D2 − G56 − A
D ◦
3. Akkordfolge: C −D 2−H 7−C
1+
4. Akkordfolge: C − H1− − E[Aug 34 − C

Abbildung 4.1  Unterschiedliche Akkordfolgen, Sopranlinie und funktiona-


ler Verlauf bleiben gleich.

Die Kenntnis des harmonisch-funktionalen Verlaufs (in dem Beispiel: TSD


DT) ist für die Harmonisierung von groÿer Bedeutung, da die Harmoni-
sierung die grundlegenden harmonischen Eigenschaften unterstreichen und
ausbauen soll. Gleichzeitig ermöglicht ein bekannter harmonisch-funktionaler
Verlauf eine Vereinfachung des konstruktiven Harmonisierungsschrittes: der
zu verwendende Akkordvorrat für die Harmonisierung einer Note kann 
aufgrund der Zugehörigkeit unterschiedlicher Akkorde zu unterschiedlichen
harmonischen Funktionen  ohne Qualitätsverlust reduziert werden. Zur
Bestimmung des latenten harmonisch-funktionalen Verlaufs einer gesamten
Melodie ist es hilfreich, zunächst musikalische Einheiten mit abgeschlosse-
nen tonalen Bögen entlang der Melodie zu nden (vgl. Abschnitte 2.1.4 und
2.1.6.2). Es ist natürlich möglich, eine Melodie in vorgegebenen (z.B. gleich-
langen) Abschnitte zu unterteilen. Eine solche Unterteilung ergäbe allerdings
musikalisch keinen Sinn.
4.1. HERANGEHENSWEISE UND ÜBERBLICK 47

Vielversprechend hingegen sind wahrnehmungsorientierte Ansätze wie der


von Tenney und Polansky (s.o. Abschnitt 2.2). Dabei wird eine Melodie nach
Kriterien segmentiert, welche die menschliche musikalische Wahrnehmung
nachzuahmen versuchen. Da die latente harmonische Basisstruktur von ei-
nem in der jeweiligen Stilrichtung erfahrenen Zuhörer zumindest teilweise
wahrgenommen werden kann1 , wird hier angenommen, daÿ die Wahrneh-
mung von Melodiesegmenten und von Phrasen mit abgeschlossenen tonalen
Spannungsbögen übereinstimmt.
Unter dieser Annahme sind nach der Unterteilung der Melodie in Segmente
die musikalischen Einheiten vorhanden, deren funktional-harmonischer Auf-
bau im Folgenden untersucht werden kann.
Im nächsten Schritt werden die harmonischen Funktionen für die jeweilige
Endnote jedes Segments entschieden. Die Segmente werden als musikalisch
gültige Phrasen gesehen, die als solche eine Kadenz an ihrem jeweiligen Ende
 dem Ort des erwarteten tonalen Spannungsabbaus  aufweisen. Der Me-
lodieabschnitt am Ende des Segments wird mit melodischen Wendungen in
unterschiedlichen Stimmlagen aus tradierten, durchharmonisierten Kaden-
zen verglichen. Bei Übereinstimmung wird die Melodienote am Ende des
Segments der harmonischen Funktion zugeschrieben, die sich am Ende der
übereinstimmenden Kadenz bendet.
Nach einer heuristischen Festlegung der harmonischen Funktion der aller-
ersten Note der Melodie ist ein Gerüst eines funktional-harmonischen Ver-
laufs vorhanden. Zwischen den gesetzten harmonischen Fixpunkten kann der
Rest des funktional-harmonischen Verlaufs geschätzt werden. Zusammenhän-
ge zwischen der funktional-harmonischen Ebene und der melodischen Ebe-
ne werden mit einem HMM 2. Ordnung ausgedrückt, und der wahrschein-
lichste funktional-harmonische Verlauf pro Segment kann mit dem Viterbi-
Algorithmus (s.o. Abschnitt 2.4.4) gefunden werden.
Mit dem auf diese Weise bestimmten funktional-harmonischen Verlauf, den
Melodienoten sowie einem zuvor eingestellten Stimmenumfang stehen not-
wendigen Parameter zur Verfügung, um alle möglichen Akkorde und aus
ihnen alle möglichen Voicings für die Harmonisierung jeder Melodienote zu
generieren. Eine Tabelle wird erstellt, bei der in jeder Spalte alle möglichen
Voicings für die an der korrespondierenden Stelle bendliche Melodienote ge-
speichert werden. Jedes Voicing wird mit einem Initialgewicht versehen, das
sich aus der Auftrittswahrscheinlichkeit des sich durch das Voicing manife-
stierenden Akkords sowie aus den Regeln und Traditionen der Harmonielehre

1 Auf der Übereinstimmung zwischen dem latenten harmonischen Verlauf der Melodie
und seiner Manifestation in der Harmonisierung beruht die Kritik einer schlechten bzw.
der Lob einer gelungenen Harmonisierung.
48 KAPITEL 4. ALGORITHMUS

bzgl. Lage, Umkehrung und anderen Eigenschaften des Voicings zusammen-


setzt.

Abbildung 4.2  Flussdiagramm der Funktionsweise des Systems


4.2. DATENREPRÄSENTATION UND SCHNITTSTELLE 49

Im letzten Schritt wird mithilfe dynamischer Programmierung der beste Pfad


durch die Tabelle gefunden. Die Evaluationsfunktion für den jeweiligen Über-
gang von einem Voicing zum nächsten setzt sich aus mehreren Stimmfüh-
rungsregeln zusammen, deren Einhaltung bzw. Verletzung sich durch eine
positive bzw. negative Gewichtsänderung ausdrückt. Nach Ermittlung al-
ler lokalen besten Voicings-Übergänge wird die globale Lösung  der beste
Voicing-Pfad entlang der Melodie  mittels Backtracking vom bestgewich-
teten Voicing der letzten Melodienote generiert. Die Voicings entlang dieses
Pfads stellen die fertige Harmonisierung dar, die als Ergebnis an den Anwen-
der geliefert wird.
Abbildung 4.2 gibt die Funktionsweise des Systems in einem Flussdiagram
wieder.

4.2 Datenrepräsentation und Schnittstelle

Die Datenrepräsentation wird im Folgenden kurz umrissen, in einem weiteren


Abschnitt werden die Schnittstellenfunktionen des Systems vorgestellt.

4.2.1 Datenrepräsentation
Es wurden mehrere Datentypen deniert, die die Abbildung musikalischer
Entitäten und ihrer hierarchischen Beziehungen ermöglichen. Den Grund-
baustein der musikalischen Hierarchie bilden Tonhöhen (Pitches) und In-
tervalle. Tonhöhen werden jeweils durch eine ganze Zahl entsprechend ihrer
MIDI-Nummer repräsentiert. Intervalle werden je nach Kontext unterschied-
lich gehandhabt: für diatonische Intervalle  der Abstand zweier Ton-
höhen in Tonartstufen  und für chromatische Intervalle  der Anzahl
zweier Tonhöhen in Halbtönen, vgl. Abschnitt 2.1.1  sind unterschiedliche
Datentypen deniert. Des Weiteren sind Repräsentationen für die Ausrich-
tung eines Intervalls (aufsteigend oder abfallend), für die Versetzungszei-
chen [, ] und \2 , sowie Bezeichnungen für die harmonischen Funktionen
Tonika, Subdominante, Dominante und Tonikaparallele vorhanden. Auch die
verwendeten Akkordtypen (Chord Types) und die relevanten Akkordum-
kehrungen für alle zwölf möglichen Grundtonnamen (Root Notes) und
Tonarten wurden deniert.
Für darauolgende hierarchische Ebenen werden zusammengesetzte Entitä-
ten modelliert: Eine Note besteht aus einem Pitch, aus On- und Osetzeiten,
2 Kennzeichnet eine unversetzte Note. In herkömmlicher Notenschrift wird das Zeichen
für die Auÿerkraftsetzung zuvor verwendeten Versetzungszeichen. Im vorliegenden System
werden alle nicht versetzten Noten mit dieser Bezeichnung versehen.
50 KAPITEL 4. ALGORITHMUS

aus Attributen zur Dynamik und zur Position im Takt3 sowie aus einer Aus-
sage darüber, ob die Note stummgeschaltet ist oder nicht4 ; eine Stimme
(Voice) besteht aus einem Array von Noten mit Angaben zur Taktart5  die
Eingangsmelodie wird als eine Stimme eingegeben, ein Array von vier Stim-
men bildet das zurückgelieferte, durchharmonisierte Ergebnis; der Akkord-
name (Chord) ist deniert durch seinen Grundton zusammen mit seinem
Akkordtypen, seiner Umkehrung (Inversion) und einer String-Repräsentation
des Namens; die lineare Repräsentation der fertigen Harmonisierung
(Harmony Track) besteht aus den entsprechenden Akkordnamen an den für
sie ausgesuchten Positionen.

Abbildung 4.3  Zusammengesetzte Datentypen

Relevante Hilfsfunktionen werden für notwendige Konvertierungs- und Gene-


rierungsmaÿnahmen angeboten, wie z.B. für die Übersetzung zwischen chro-
matischen und diatonischen Intervallen in einem tonalen Kontext, oder für
die Bestimmung der Umkehrung eines durch Tonhöhen und Grundton spe-
zizierten Akkords.
Ferner werden Datentypen und Hilfsfunktionen software-technischer Natur
deniert.

4.2.2 Schnittstelle
In der Schnittstelle werden folgende Funktionalitäten angeboten:

• Eingabe der Melodie (als Voice, s.o. Abschnitt 4.2.1).

• Setzen und Abfragen von Tonarten (für die Ein- und Ausgabe).

• Setzen und Abfragen einer gewünschten Harmonisierungskongurati-


on mit Angaben zur Anzahl der zusätzlichen Stimmen, zur relativen
3 Die Attribute zur Dynamik (Velocity ) und zur Position der Note im Takt nden in
der aktuellen Implementierung keine Verwendung
4 Dem Anwender wird die Möglichkeit angeboten, Noten  sowohl aus der Eingangs-
melodie als auch aus den zusätzlich hinzugefügten Stimmen  stummzuschalten.
5 Die Information zur Taktart ndet in der aktuellen Implementierung keine Verwen-
dung.
4.3. DETAILLIERTE BESCHREIBUNG 51

Position der Melodiestimme, und zum allgemein gewünschten Abstand


zwischen den Stimmen (enge bzw. weite Lage, s.u. Abschnitt 4.3.3.1).

• Laden einer alternativen Harmonisierungsstilrichtung von einer stilde-


nierenden Datei (s.u. Abschnitt 4.4.1).

• Durchführen des Harmonisierungsprozesses (Process).

• Ausgabe des Harmonisierungsergebnisses als Stimmen (Voices), oder


als eine Folge von Akkordnamen.

• Editiermöglichkeiten: Stummschalten oder Tonhöhenänderung einzel-


ner Noten, Setzen eines Akkords nach Wahl des Anwenders (s.u. Ab-
schnitt 4.3.3.3, sowie die Teilung jeweils einer Note in zwei kürzere.

• Initialisierungs- und Rücksetzfunktion (Reset) für die Ausgabevaria-


blen.

Die Abwärtskompatibilität wird durch Erweiterung der in der vorigen Ver-


sion vorhandenen Harmonisierungsmodi um einen zusätzlichen Modus ge-
währleistet: wird der neue Modus gewählt, wird die Harmonisierung unter
Verwendung des neuen Algorithmus erstellt; wird dagegen einer der alten
Modi gewählt, fungiert das aktuelle System als Wrapper, und delegiert die
Berechnung bei Aufruf der Process-Funktion an den Algorithmus der vorigen
Version.
In den nächsten Abschnitten werden die einzelnen Verarbeitungsschritte er-
klärt, die beim Aufruf der Process-Funktion im neuen Harmonisierungsmo-
dus erfolgen.

4.3 Detaillierte Beschreibung

In den folgenden Abschnitten werden die einzelnen Verarbeitungsschritte


 Melodiesegmentierung, Funktionsbestimmung, Stimmsatzerstellung  im
Detail beschrieben.

4.3.1 Melodiesegmentierung
Der erste Verarbeitungsschritt sieht die Unterteilung der Eingangsmelodie
in Segmente vor. Nach Vorbild der von Tenney und Polansky (T. & P.)
vorgeschlagenen Technik (s.o. Abschnitt 2.2) erfolgt die Segmentierung in
zwei Phasen, entsprechend zwei hierarchischer Ebenen.
52 KAPITEL 4. ALGORITHMUS

In der ersten, tieferen Ebene werden Clang-Grenzen gesetzt. Da das System


keine Lautstärkeninformation über die Eingangsmelodie erhält, können Me-
lodienoten nur anhand ihrer Tonhöhe und ihrer Dauer verglichen werden.
Eine weitere Abweichung von dem von T. & P. vorgeschlagenen Ansatz stellt
die Addition des doppelten Verhältnisses zwischen der Dauer der jeweiligen
Note (gemessen als Abstand zwischen den Onsetzeiten der aktuellen und der
darauolgenden Note  Onsetintervall) und dem durchschnittlichen Onset-
intervall in der gesamten Melodie dar.
 
2 (t) (t−1)
X (t)

(t−1) x 1 − x1
(4.1)
(t) (t−1)
  
d x ,x = xi − xi +2· m

 1
P (j) (j−1) 
i=1
m
x1 − x1
j=2

In Anlehnung an Formel 2.1 wird in Formel 4.1 die Gewichtung der Note
x(t) zum Zeitpunkt t in Abhängigkeit von ihren eigenen Parametern sowie
die der ihr vorangehenden Note in Zeitpunkt t − 1 beschrieben. Dabei wird
(t) (t−1)
die jeweilige Onsetzeit mit x1 , x1 und die Tonhöhe in der interner MIDI-
repräsentiert. Die Melodielänge6 wird mit
(t) (t−1)
Number-Darstellung mit x2 , x2
m angegeben. Die erste Note erhält die Gewichtung 0.
Nun werden nach Formel 2.2 diejenige Noten als Clang-Grenzen markiert,
deren Gewichtung ein lokales Maximum darstellt.
Vor der Berechnung der Disjunktion an den Clang-Grenzen, die zur Detekti-
on der Segmentgrenzen folgen muÿ, wird eine zusätzliche inhaltliche Analyse
der Eingangsmelodie bezüglich interner Ähnlichkeiten durchgeführt. Cam-
bouropoulos behauptet:

Musical similarity not only establishes relationships between dif-


ferent musical entities but enables  in the rst place  the
denition of such entities by directly contributing to the segmen-
tation of a musical surface into meaningful units [20, S. 1]

Ferner unterstreicht Cambouropoulos, daÿ diese Art der Segmentierung auf-


grund von Ähnlichkeitskriterien manche musikalisch gültigen Segmentgren-
zen erkennt, die von anderen Methoden, welche lokale Tendenzwechsel als
Segmentierungskriterien haben  wie es bei der Methode von T. & P. der
Fall ist  nicht oder falsch erkannt werden [20, S. 2].
6 Hier und in der folgenden Abschnitten wird mit Melodielänge die Gesamtanzahl von
Onsetzeiten in der Eingangsmelodie gemeint, und nicht die Dauer der Eingangsmelodie in
Zeiteinheiten
4.3. DETAILLIERTE BESCHREIBUNG 53

Die Feststellung von Ähnlichkeiten kann demnach zur musikalisch gültigen


Segmentierung hilfreich sein. Entscheidend ist dabei die gewählte Suchstra-
tegie. Aus praktischen  der Haupteinsatzbereich des hier vorgestellten Sy-
stems sollte die Harmonisierung kurzer Melodien7 , die oft ein einziges musika-
lisches Motiv vorweisen, welches sich eventuell wiederholt  und empirischen
Gründen wurde hier entschieden, nur nach Übereinstimmungen mit dem Kopf
der Eingangsmelodie zu suchen: Abschnitte mit zunehmender Länge ab An-
fang der Melodie  angefangen mit einer Länge von vier Noten, und bis zur
Hälfte der Melodielänge  werden als Muster genommen, und es wird ab
dem jeweiligen Ende des Musters nach übereinstimmenden Abschnitten ge-
sucht. Verglichen wird die Kontur der Tonhöhen- bzw. der Onsetintervallfolge
des Musters und des geprüften Abschnitts. Mit der Kontur wird die Abfolge
der lokalen gerichteten Dierenzen in den Werten des jeweiligen Parameters
beschrieben.

Abbildung 4.4  Die melodische Kontur der


Notenfolge lautet: gleichbleibend −I fallend
−I steigend, und kann mit der Zahlenfolge
[0, −1, 1] ausegdrückt werden.

Eine Übereinstimmung ist dann gegeben, wenn Muster und geprüfter Ab-
schnitt die gleiche Tonhöhen- und Onsetintervallkontur aufweisen. Eine Aus-
nahme kann beim letzten melodischen Schritt des Musters und des Abschnitts
(der Schritt von der vorletzten zur letzten Note) gemacht werden: stimmt
hier zusätzlich zur Tonhöhenkontur auch das tatsächliche diatonische Inter-
vall überein, wird selbst bei Abweichung in der Onsetintervallkontur an die-
ser Stelle eine Übereinstimmung von Muster und Abschnitt angenommen.
Diese Heuristik kann mit der musikalischen Tendenz begründet werden, an
den Grenzen zu bedeutend unterschiedlichen Abschnitten oder am Ende ei-
ner Melodie die Endnoten von Phrasen im Vergleich zu früheren, ähnlichen
Vorkommen der selben Phrase zu verlängern. Cambouropoulos erwähnt die-
ses Phänomen in [20, S. 2, Abs. 2]; Es lieÿ sich im Verlauf der Arbeit auch
empirisch belegen.
Als Ergebnis liefert die Suche die Anfangs- und Endpositionen des längsten
wiederkehrenden Musters und seiner Wiederholungen. Folgt auf die Endnote
eines Vorkommens des Musters die Anfangsnote eines weiteren Vorkommens,
so wird die Endnote des ersten Exemplars nicht markiert. Bei Exemplaren
eines Musters, deren Anfänge sich überlappen, wird nur der Anfang des als
erstes vorkommenden Exemplars markiert. Da sowohl der Anfang als auch
7 Vor allem einzelner Songteile aus der Popularmusik, wie z.B. ein Refrain oder eine
Bridge [5]
54 KAPITEL 4. ALGORITHMUS

das Ende eines Exemplars später als eventuelle Segmentierungsgrenzen die-


nen sollen, darf bei solchen Fällen nur ein Exemplar gewählt werden. Die
Wahl des ersten Exemplars hat sich bei Tests während der Entwicklung be-
währt. Zudem kann argumentiert werden, daÿ Exemplare, deren Anfänge sich
innerhalb eines anderen Exemplars benden, eigentlich das melodische und
rhythmische Material des ersten Exemplars ausmachen, und primär als Teile
dessen und nicht als eigenständige Wiederholungen wahrgenommen werden.
Die Anfangs- und Endpositionen des gefundenen, wiederkehrenden Musters
und seiner Wiederholungen werden mit den gefundenen Clang-Grenzen kom-
biniert  ein Onset-Zeitpunkt ist markiert, falls er einer Clang-Grenze, ei-
nem Anfangs- oder einem Endpunkt eines gefundenen Exemplars entspricht.
Wenn weder Clangs noch Musterwiederholungen gefunden wurden, wird die
Segmentierung abgebrochen  es können keine Segmente auf einer hohen
hierarchischen Ebene gefunden werden, wenn eine tiefere Ebene keine Seg-
menten aufweist. Im Folgenden werden die Stellen, an denen entweder Clang-
oder Mustergrenzen gesetzt wurden einheitlich Clang-Grenzen genannt.
Jetzt wird die Disjunktion an den Clang-Grenzen berechnet. Zunächst wird
die mittlere Tonhöhe pb(x) jedes Clangs berechnet. Die Tonhöhen werden mit
der absoluten Länge der jeweiligen Note (Onsetintervall) gewichtet
und auf-
(t) (t−1)
summiert, und die Summe wird durch die Gesamtlänge L(x) = x1 − x1
des Clangs dividiert:

n 
1 X 
(4.2)

pb(x) = · p x(i) · L x(i)
L(x) i=1

p(x(i)), L(x(i))  Tonhöhe bzw. Länge der i−ten Note im Clang,

L(x), pb(x)  Länge bzw. mittlere Tonhöhe des Clangs


Anschlieÿend wird das Gewicht für jedes Clang (mit Ausnahme des Ersten)
aus den folgenden Komponenten gebildet:

1. Der Betrag der Dierenz zwischen der mittleren Tonhöhen des Clangs
und der seines Vorgängers:
 
(t) (t) (t−1)
(4.3)

ω1 x = pb x − pb x

2. Der (absoluten, zeitlichen) Länge des Vorgängers:

ω2 x(t) = L x(t−1) (4.4)


 

Damit können Clang-Grenzen, die das Ende eines längeren Clangs mar-
kieren, bevorzugt werden.
4.3. DETAILLIERTE BESCHREIBUNG 55

3. Eine Gewichtsverdoppelung falls das Clang ein Anfangs- oder End-


punkt eines wiederkehrenden Musters ist:

2 Falls x(t) (1) einer Mustergrenze entspricht



(t)
(4.5)

ω3 x =
1 sonst

Damit kann den Grenzen sich wiederkehrender Muster eine gröÿere Be-
deutung verliehen werden. Solche Abschnitte weisen in der Regel eine
stärkere Wahrnehmbarkeit gegenüber den mittels der abstrakten Ge-
staltmethode ermittelten Clangs auf, und sind damit wahrscheinliche-
re Kandidaten für die Segmentierung auf einer höheren hierarchischen
Ebene.

4. Der Wert des diatonischen Intervalls zwischen der letzten Note des
vorhergehenden Clangs und der ersten Note des aktuellen Clangs. Dies
entspricht der Dierenz angrenzender Elemente auf einer niedrigeren
hierarchischen Ebene (vgl. Formel 2.3). Dabei erhält eine diatonische
Prime den Wert 1, eine diatonische Sekunde den Wert 2 usw. :

ω4 x(t) = DiaInterval x(t) (1), x(t−1) (last) (4.6)


 

5. Die normierte zeitliche Länge (nach dem mittleren Onsetintervall in der


gesamten Melodie) der letzten Note des vorhergehenden Clangs. Dies
entspricht wiederum einer Dierenz auf einer niedrigeren hierarchischen
Ebene, eine Multiplikation konnte sich gegenüber einer Addition empi-
risch bewähren:

L l(x(t−1) )
(t)
(4.7)

ω5 x =
\
Onsetinterval

Die Zusammensetzung der Gewichtkomponente ist:

(4.8)

W = (ω1 + ω2 ) · ω3 + ω4 · ω5

Abschlieÿend werden Segmentgrenzen Formel 2.2 entsprechend an denjenigen


Clang-Grenzen gesetzt, deren Gewichtung ein lokales Maximum darstellt.

4.3.2 Funktionsbestimmung
Im nächsten Verarbeitungsschritt wird die funktional-harmonische Grundla-
ge für die Harmonisierung gelegt. Als Untergerüst für die Bestimmung der
56 KAPITEL 4. ALGORITHMUS

harmonischen Funktionen dienen die im vorherigen Schritt gefundenen Seg-


mente. Zudem wird in einem Vorbereitungsschritt die Tonartstufe jeder Me-
lodienote ermittelt, zusammen mit einer Angabe zur eventuellen Abweichung
von einer diatonischen Stufe um einen Halbton nach oben oder nach unten.
Der Vorrat an harmonischen Funktionen, die vergeben werden könnten, be-
steht aus Tonika (T), Subdominante (SD), Dominante (D) und Tonikapar-
allele (Tp). Obwohl die Tonikaparallele auch als eine Ausprägung der Tonika
gesehen werden kann, wurde sie explizit in den Funktionsvorrat aufgenom-
men, um Trugschlüsse (s.o. Abschnitt 2.1.6.2) einfacher nachbilden zu kön-
nen.

4.3.2.1 Harmonische Funktion der ersten Note

Zunächst wird die harmonische Funktion der ersten Melodienote bestimmt.


Dafür wurde eine Look-Up-Table erstellt, in der sich folgende Heuristiken
widerspiegeln:

• Die Wahrscheinlichkeit des Auftritts bestimmter harmonischer Funk-


tionen am Kopf der Melodie.

• Die wahrscheinlichsten Akkorde, in denen jede Tonartstufe, jeweils dia-


tonisch bzw. um einen Halbton nach oben oder nach unten versetzt,
vorkommen kann, und deren funktional-harmonische Zugehörigkeit.

Als Look-Up-Indizes fungieren nun die Tonartstufe und die eventuelle


Halbton-Versetzung der ersten Note sowie die Gattung der Tonart. Die har-
monische Funktion kann dann direkt aus der Tabelle abgelesen werden.
Wie in Tabelle 4.1 (Seite 57) nachzusehen ist, sind die Werte für Dur- und
Molltonarten gleich. Die explizite Ausführung für beide Tonartgattungen
wurde trotzdem vorgenommen, um nachträgliche Erweiterung bzw. Modi-
zierung der Tabelle zu ermöglichen.
4.3. DETAILLIERTE BESCHREIBUNG 57

Versetzung Tonartstufen
Tonartgattung
der Stufe I II III IV V VI VII
[ D SD D T D SD T
Dur \ T D T SD T SD D
] SD D SD D SD T T
[ D SD D T D SD T
Moll \ T D T SD T SD D
] SD D SD D SD T T

Tabelle 4.1  Look-Up-Table für die Bestimmung der Funktion der ersten
Note in Abhängigkeit von der Tonartgattung (erste Spalte),
der Tonartstufe (Spalten 3 bis 9), und deren enventuellen Ver-
setzung (zweite Spalte).

4.3.2.2 Harmonische Funktionen an Phrasenenden


Die im vorhergehenden Analyseschritt ermittelten Segmente werden im Fol-
genden als musikalische Phrasen angesehen. Demnach wird angenommen,
daÿ jede von ihnen einen ausgeprägten tonalen Bogen beschreibt, der typi-
scherweise mit einer Kadenz endet (vgl. Abschnitt 2.1.6.2).
Die jeweils letzte Note in einer Phrase bendet sich an letzter Stelle vor der
nächsten Segmentgrenze, bzw. am Ende der Melodie. Diese Noten werden
nun in ihrem melodischen und harmonisch-funktionalen Kontext untersucht,
und ihre harmonische Funktion wird bestimmt. Die Bearbeitung erfolgt für
jedes Segment separat.
In einem Vorbereitungsschritt werden zwei entscheidende Parameter pro Seg-
ment ermittelt:

i. Die letzte Position in der Phrase mit einer diatonischen Stufe, die sich
von der der letzten Note der Phrase unterscheidet (wird nicht gesetzt,
falls eine solche Position nicht gefunden wird).

ii. Die Position der letzten Melodienote in der Phrase, deren Onsetintervall
(entspricht absoluter Länge) länger als der Median der Onsetinterval-
len in der gesamten Phrase ist (wird auf die erste Position im Segment
gesetzt, falls keine entsprechende Position gefunden wird).

Beide Parameter helfen bei der Lokalisierung von Tonwiederholungen (i.)


 selbst in unterschiedlichen Oktavlagen  sowie von Wechsel- sowie Über-
gangsnoten (ii.), welche oft kürzer als andere Melodienoten in ihrer Umge-
bung sind. In manchen Fällen sollten Tonwiederholungen und Wechsel- bzw.
Übergangsnoten bei der Untersuchung des harmonischen Fortschreitens nicht
58 KAPITEL 4. ALGORITHMUS

in Betracht gezogen werden: in diesen Fällen sollte ein melodischer Schritt,


der eine Tonwiederholung oder einen Wechsel- bzw. Übergangsschritt reali-
siert, sich nicht durch einen harmonischen Schritt manifestieren lassen. Die
Entscheidung, den Median als Schwellenwert festzulegen, wurde empirisch
gefällt.
Im Folgenden wird mithilfe einer mehrstugen Fallunterscheidung die har-
monische Funktion der letzten Melodienote der Phrase entschieden. Bei man-
chen Fällen, die sehr eindeutigen Ausprägungen bestimmter Kadenzen ent-
sprechen, wird auch die harmonische Funktion der vorletzten Note bestimmt.
Zudem gibt es optionale Abzweigungen, die beim Setzen eines Flags im Code
die Bestimmung der vorletzten Note auch bei weiteren Fällen erlaubt. Die-
ses Flag wird im Normalfall jedoch nicht gesetzt. Jede Funktionsbestimmung
entspricht somit einer bestimmten, eindeutigen Tonabfolge, die ihrerseits als
repräsentativ für eine gängige Kadenzwendung betrachtet wird.
Am Beispiel der Verarbeitung in dem Fall, wo die letzte Melodienote im
Segment der zweiten Tonartstufe entspricht, wird die Fallunterscheidnug
demonstriert. Das Beispiel folgt in Pseudo-Code:

..
.
IF (currentDegree == II) THEN
IF (currentAccidental == Natural) THEN
IF (previousDegree == I) THEN
IF (previousAccidental == Natural) THEN
IF ((position > 1) &&
((degree(position - 2) == VII) ||
(degree(position - 2) == III)) THEN
function(position) = Dominante;
IF (backwardsFlag) THEN
function(position - 1) = Dominante;
ELSE IF (position == EndOfMelody) THEN
function(position) = Dominante;
IF (backwardsFlag) THEN
function(position - 1) = Tonika;
ELSE
function(position) = Subdominante;
IF (backwardsFlag) THEN
function(position - 1) = Tonika;
ELSE IF (previousAccidental == Sharp) THEN
function(position) = Subdominante;
ELSE
4.3. DETAILLIERTE BESCHREIBUNG 59

function(position) = Dominante;
ELSE IF (previousDegree == II) THEN
IF ((position < EndOfMelody) && (degree(position + 1) == V)) THEN
function(position) = Subdominante;
IF (backwardsFlag) THEN
function(position - 1) = Dominante;
ELSE
function(position) = Dominante;
IF (backwardsFlag) THEN
function(position - 1) = Dominante;
ELSE IF (previousDegree == III) THEN
function(position) = Dominante;
ELSE IF (previousDegree == IV) THEN
function(position) = Dominante;
ELSE IF (previousDegree == V) THEN
function(position) = Dominante;
IF (backwardsFlag) THEN
function(position - 1) = Dominante;
ELSE IF (previousDegree == VI) THEN
function(position) = Subdominante;
IF (backwardsFlag) THEN
function(position - 1) = Subdominante;
ELSE IF (previousDegree == VII) THEN
function(position) = Dominante;
IF (backwardsFlag) THEN
function(position - 1) = Dominante;
ELSE IF (currentAccidental == Flat) THEN
function(position) = Subdominante;
IF ((backwardsFlag) && (degree(position - 1) == I)) THEN
function(position - 1) =Tonika
ELSE
function(position) = Dominante;
..
.

4.3.2.3 Funktionsbestimmung der übrigen Melodienoten


In den vorangegangenen Schritten wurden die harmonischen Funktionen der
ersten Melodienote sowie der abschlieÿenden Noten aller gefundenen Phra-
sen inklusive der letzten Melodienote bestimmt. Damit sind alle Eckpunkte
60 KAPITEL 4. ALGORITHMUS

vorhanden, zwischen denen die harmonisch-funktionalen Bögen der Phrasen


gespannt werden können.
Zur Funktionsbestimmung der verbleibenden Melodienoten werden in einem
Vorbereitungsschritt die Noten aus der Betrachtung ausgeschlossen, auf die
alle folgenden Kriterien zutreen:

• Ihre harmonische Funktion wurde in den vorangegangenen Schritten


noch nicht bestimmt.

• Ihre Dauer (Onsetintervall) ist kürzer als der Median der Onsetinter-
valle in der gesamten Melodie.

• Sie sind

 entweder tonartfremd, d.h. weichen um einen Halbton von einer


der sieben diatonischen Tonartstufen ab
 oder Wechselnoten, d.h. ihre beiden direkten Nachbarn haben die
gleiche Tonhöhe.

Auch hier wird mit dem Ausschluÿ die Stabilisierung des harmonischen Fort-
schreitens unterstützt: Töne, die relativ kurz sind, und dabei auch tonal
fremd oder unbedeutend (Wechselnoten) sind, sollen keinen Einuÿ auf den
harmonischen Verlauf haben. Diese Töne werden im Prozess der Funktions-
bestimmung übersprungen.
Es folgt die Abschätzung der harmonischen Funktionen in jeder Phrase. Die
tonalen Eigenschaften der Melodienoten innerhalb der Tonart und die tonale
Wechselwirkung benachbarter Noten im lokalen melodischen Kontext liefern
hierfür Hinweise auf den ihnen zugrunde liegenden funktionalen Verlauf.
Das dynamische System, welches die Beziehungen zwischen der sichtbaren
Information über Melodienoten und den versteckten, vermuteten harmoni-
schen Funktionen sowie die Übergänge unter ihnen beschreibt, wird mit ei-
nem HMM modelliert. Dabei bilden diatonische und versetzte Tonartstufen
die Emmisionsmenge und die harmonischen Funktionen (T, SD, D, Tp)die
Zustandsmenge. Eine Melodie kann mit einem Markov-Prozess dargestellt
werden, und bei Bekanntgabe der Melodienoten  einer Emmisionsfolge
entsprechend  sowie der Emmissions- und Übergangswahrscheinlichkei-
ten kann die wahrscheinlichste Folge harmonischer Funktionen mithilfe des
Viterbi-Algorithmus ermittelt werden.
Um das in den Emmissions- und Übergangswahrscheinlichkeiten im Markov-
Model vorhandene Wissen zu erweitern, sodaÿ gröÿere zeitliche Zusammen-
hänge erfasst werden könnten, wurde ein HMM2 implementiert. Diese Ent-
scheidung erforderte die Erstellung detaillierterer Tabellen für Emmissions-
4.3. DETAILLIERTE BESCHREIBUNG 61

und Übergangswahrscheinlichkeiten, hat aber keinen Einuÿ auf die Kom-


plexität der Berechnung (s.o. Abschnitt 2.4.4). Demzufolge repräsentieren
die versteckten Zustände Funktionspaare in zeitlicher Abfolge, die Emmi-
sionswahrscheinlichkeiten werden jeweils von einem Funktionspaar zu einer
(versetzten oder unversetzten) Tonartstufe deniert.
In manchen Aspekten weicht die Implementierung von der Beschreibung des
HMM2 und des Viterbi-Algorithmus in Abschnitt 2.4 ab:

1. Am Anfang der Berechnung liegt bereits eine harmonische Funktion


für die erste Note der Melodie vor. Die Berechnung der harmonischen
Funktionen der ersten Phrase fängt daher ab dem Zeitpunkt t0 = 1
an. In diesem Fall existiert keine harmonische Funktion zur Zeit t0 −
2 (der Zeitpunkt liegt vor Anfang der Melodie). Deshalb erfolgt die
Initialisierung mit einer speziellen initialen Zustandsverteilung, die für
den Zeitpunkt t0 − 2 eine künstliche, leere Funktion vorsieht.

2. Die Initialisierung der Berechnung aller weiteren Phrasen erfolgt mit


den bereits berechneten Funktionen an der letzten und vorletzten Stel-
len der jeweils vorangegangenen Phrase.

3. Das Backtracking erfolgt nicht vom allgemein best-gewichteten Endzu-


stand, sondern von dem Endzustand, bei dem die zweite Funktion im
Funktionspaar der entspricht, die bereits für das Ende der jeweiligen
Phrase berechnet wurde.

Die gelieferten Ergebnisse für jede Phrase werden gespeichert und stehen für
die Initialisierung der Berechnung der darauf folgenden Phrase bereit.
Am Ende des Prozesses sind alle Melodienoten, die von der harmonisch-
funktionalen Abschätzung nicht ausgeschlossen wurden, mit einer harmoni-
schen Funktion versehen.

4.3.3 Stimmsatzerstellung
Der vierstimmige Satz, der schlieÿlich als Ergebnis des Algorithmus geliefert
wird, wird mithlife dynamischer Programmierung generiert. Im Folgenden
wird die Initialisierung der notwendigen Voicings-Tabelle und die Durchfüh-
rung der dynamischen Programmierung mithilfe dieser Tabelle beschrieben.

4.3.3.1 Initialisierung der Voicings-Tabelle


Das System generiert sein Ergebnis, eine optimale Harmonisierung, durch
Ermittlung eines optimalen Pfads von Übergängen zwischen den Voicings, die
62 KAPITEL 4. ALGORITHMUS

für jede Melodienote in Frage kommen. Ein notwendiger Vorbereitungsschritt


besteht daher in der Generierung aller Voicings.
Die dafür notwendigen Parameter, die Melodie-abhängig sind  die Tonart,
die Melodienoten und deren harmonische Funktionen  liegen zu diesem
Zeitpunkt bereits vor. Unter diesen Voraussetzungen erfolgt die Erstellung
aller möglichen Voicings für eine Melodienote in zwei Schritten:

1. Zunächst werden alle Akkorde ermittelt, die als Ausprägung der jeweili-
gen harmonischen Funktion in der jeweiligen Tonartgattung (Dur oder
Moll) in Frage kommen, und in denen die jeweilige Melodienote ver-
treten ist. Dem System steht eine Datenbank mit Akkorden zur Verfü-
gung, welche entsprechend nach Tonartgattung und nach harmonischer
Funktion klassiziert sind. Ein Akkord ist in der Datenbank durch das
Intervall seines Grundtons vom Grundton der Tonart und durch die
Intervalle der Akkordtöne vom Akkordgrundton, wie auch durch einen
Index sowie eine String-Darstellung seines Namens deniert. Zudem
wird für jeden Akkord die Wahrscheinlichkeit seines Vorkommens im
Kontext der jeweiligen Funktion angegeben.
Aufgrund der Intervalle der Akkordtöne vom Akkordgrundton und der
Systemeinstellungen zum erlaubten Gesamtstimmumfang sowie zur Po-
sition der Melodiestimme innerhalb des vierstimmigen Satzes werden
alle Töne aufgelistet, die für die Realisierung des jeweiligen Akkords
in Betracht kommen. Eine solche Liste entsteht für jeden der Akkorde,
die als Ausprägung der harmonischen Funktion auftreten können und
die aktuelle Melodienote enthalten.
Melodienoten, die im vorangegangenen Schritt nicht mit einer harmo-
nischen Funktion gekennzeichnet wurden, werden speziell gekennzeich-
net. Für sie werden im folgenden Schritt keine Voicings erzeugt, und
sie werden während der dynamischen Programmierung übersprungen.

2. Nun werden pro Melodienote alle Voicings für jeden der im vorange-
gangenen Schritt ermittelten Akkorde mittels eines iterativen Verfah-
rens generiert. Die in Betracht kommenden Töne für die Realisierung
des Akkords werden permutiert, jede Permutation wird als Voicing be-
trachtet. Als Initialgewicht erhält das Voicing die Auftrittswahrschein-
lichkeit des Akkords, welchen es realisiert. Dann wird das Voicing auf
Einhaltung bzw. Verletzung einer Reihe von Regeln der Harmonielehre
untersucht. Die hier verwendeten Regeln sind:

(a) Ablehnung von Stimmkreuzung (s.o. Abscnitt 2.1.6.1, Seite 12,


III.).
4.3. DETAILLIERTE BESCHREIBUNG 63

(b) Ablehnung von Stimmverdoppelung  dabei werden Dreiklänge


und Vierklänge unterschiedlich behandelt (s.o. Abscnitt 2.1.6.1,
Seite 12, I.).
(c) Gewichtung des Voicings in Abhängigkeit davon, welcher Akkord-
ton im Baÿ liegt. Dabei werden sowohl allgemeingültige wie auch
explizite, für bestimmte Akkorde geltende Regeln umgesetzt.
(d) Gewichtung des Voicings in Abhängigkeit von der Entfernung der
Stimmen. Es werden sowohl allgemeingültige Regeln (s.o. Abscnitt
2.1.6.1, Seite 12, VI.) als auch die Systemeinstellung zur erwünsch-
ten Stimmlage, die in der gesamten Harmonisierung herrschen soll,
angewandt. Dabei kann der Anwender zwischen drei Modi wählen:
i. Enge Lage  zwischen zwei benachbarten Stimmen sollte mög-
lichst kein Platz für einen weiteren Akkordton vorhanden sein.
ii. Weite Lage  zwischen zwei benachbarten Stimmen sollte ein
Platz für einen weiteren Akkordton vorhanden sein.
iii. Safe-Modus  das Intervall zwischen zwei benachbarten Stim-
men sollte nicht gröÿer als eine Oktave sein.
(e) Gewichtung des Voicings in Abhängigkeit davon, ob es eine Rea-
lisierung eines Dreiklangs oder eines Vierklangs ist. Diese quali-
tative Entscheidung ist keine Umsetzung einer Regel der Harmo-
nielehre, vielmehr ist mit ihr ein Mechanismus zur stilrichtungs-
abhängigen Justierung des verwendeten Akkordvorrats gegeben.

Jede Verletzung bzw. Einhaltung einer Regel wird mit der Multipli-
kation eines denierten Gewichtsfaktors auf das Gewicht des Voicings
bestrat oder belohnt. Zudem kann der Anteil jeder Regel in der
Gesamtgewichtung eingestellt werden.

Alle nun gewichteten Voicings, die für die Harmonisierung einer Melodienote
in Betracht kommen, werden in einer Tabellenspalte gespeichert, entspre-
chend der Position der Melodienote im Melodieverlauf. Die Initialisierung
erfolgt auf diese Weise für alle mit einer harmonischen Funktion versehenen
Melodienoten (s.o. Abschnitt 4.3.2.3), anschlieÿend kann mittels dynamischer
Programmierung der beste Pfad durch die Tabelle gefunden werden.

4.3.3.2 Generierung der Harmonisierung


Um den besten Pfad durch die Voicings-Tabelle zu nden und damit die Har-
monisierung zu erstellen, müssen zuerst die besten lokalen Übergänge zwi-
schen den Voicings ermittelt werden. Die Ermittlung erfolgt in diesem Fall
64 KAPITEL 4. ALGORITHMUS

rückwärts  es wird für jedes Voicing der beste Vorgänger vom vorhergehen-
den Zetipunkt (bzw. von dem ersten Zeitpunkt vor ihm, für den mindestens
ein Voicing erzeugt wurde) gesucht. Der beste Vorgänger wird ermittelt, und
das Gewicht des aktuellen Voicing wird durch Multiplikation mit dem Ge-
wicht seines Vorgängers und dem Gewicht, das von der Evalustionsfunktion
für den Übergang zwischen den Voicings errechnet wurde, aktualisiert. Zu-
dem wird ein Zeiger auf den besten Vorgänger gespeichert (s.o. Tabelle 2.4).
Als Evaluationsfunktion dient die Prüfung auf Einhaltung bzw. Verletzung
bestimmter Regeln und Traditionen der Stimmführung. Die hier verwendeten
Regeln sind:

1. Ablehnung wiederholter Stimmenverdoppelung in benachbarten Voi-


cings (s.o. Abscnitt 2.1.6.1, Seite 12, I.).

2. Abwägung paralleler Bewegung. Dabei werden sowohl Prim- Quint- und


Oktavparalallen abgelehnt (s.o. Abscnitt 2.1.6.1, Seite 12, V.), andere
Parallelbewegungen, wie z.B. Terzen werden aus stilistischen Gründen
bevorzugt.

3. Begünstigung einer aktiven Baÿlinie. Diese stilistische Maÿnahme


trägt direkt zu einem interessanteren Charakter der Harmonisierung
bei, implizit werden dadurch auch häugere Akkordwechsel bevorzugt.

4. Begünstigung von Gegenbewegung der Sopran- und Baÿlinien  auch


diese ist eine stilistische Maÿnahme.

5. Begünstigung von kleinen Schritten in den melodischen Linien der zu-


sätzlichen Stimmen (s.o. Abscnitt 2.1.6.1, Seite 12, IV.).

6. Behandelung bestimmter Kadenzwendungen, deren stilistisch angemes-


sener Einsatz einer expliziten Stimmführung bedarf.

Der Übergang zwischen den Voicings wird mit einem Anfangsgewicht von 1
versehen. Wie bei der Initialisierung wird jede Verletzung bzw. Einhaltung
einer Regel mit der Multiplikation eines für den Fall denierten Gewichtsfak-
tors auf das Gewicht des Übergangs bestraft oder belohnt. Zudem kann
der Anteil jeder Regel in der Gesamtgewichtung eingestellt werden.
Um gröÿere Zusammenhänge zu erfassen, werden manche Regeln auf Folgen
von Voicings angewandt, die für mehr als zwei Melodienoten stehen. Beur-
teilt wird in solchen Fällen jedoch weiterhin nur der Übergang zwischen dem
aktuellen Voicing und dem geprüften Vorgänger  die Vorvorgänger werden
nicht mehr angetastet.
4.4. GEWÄHLTE STRATEGIEN, PROBLEME UND LÖSUNGEN 65

Nachdem die Vorgänger für die Voicings in der letzten Spalte der Tabelle
ermittelt wurden, kann mittels Backtracking der beste Pfad durch die Tabel-
le gefunden werden: Aus der letzten Spalte wird das erste Voicing mit dem
maximalen Gewicht ausgesucht, auf seinen besten Vorgänger in der voran-
gehenden Spalte kann mithilfe des gespeicherten Zeigers zugegrien werden,
usw. bis zum Anfang der Melodie.
Die Voicings entlang des Pfads werden in ein Objekt aus vier separaten Voices
(s.o. Abschnitt 4.2.1) geschrieben, die jeweilige Akkordinformation (Name,
Umkehrung, Grundton) werden in eine Harmoniespur geschrieben  beide
Objekte dienen abschlieÿend als Ausgabemedien für die fertige Harmonisie-
rung. Noten, für die aus unterschiedlichen Gründen kein Voicing erstellt wer-
den konnte, werden mit dem letzten vor ihnen errechneten Voicing versehen.

4.3.3.3 Setzen eines Akkord nach Wunsch


Nach Erstellung der Harmonisierung kann der Anwender einen Akkord seiner
Wahl an eine beliebige Stelle in der Melodie setzen. Dem Harmonisierungs-
system werden Name, Grundton und Umkehrung des gewünschten Akkords
mitgeteilt. Das System generiert unter Verwendung der internen Akkordda-
tenbank die dem Akkord zugehörigen Intervalle, und führt dann auf loka-
ler Basis ein der dynamischen Programmierung ähnliches Verfahren durch:
es werden alle möglichen Voicings für den eingegebenen Akkord generiert,
und aus ihnen wird das Voicing ausgesucht, welches stimmführungstechnisch
am besten zu seinen bereits feststehenden Nachbarn passt. Es werden so-
wohl die Übergänge vom vorangehenden Voicing als auch die Übergänge
zum Nachfolger-Voicing untersucht. Dabei werden die gleichen Regeln wie
bei dem automatischen konstruktiven Schritt angewandt.

4.4 Gewählte Strategien, Probleme und Lö-

sungen

4.4.1 Harmonisierung in alternativen Stilrichtungen


Einer der wichtigen Punkte in der Aufgabenstellung an das hier vorgestellte
System ist die musikalische Flexibilität  es sollte die Möglichkeit gegeben
werden, das System auf die Erstellung von Harmonisierungen in einer be-
stimmten musikalischen Stilrichtung einzustellen.
Es wird angenommen, daÿ die Ergebnisse der durchgeführten Struktur- und
funktionsharmonische Analyse melodietypisch und dabei unabhängig von der
Stilrichtung sind (s.o. Abschnitt 4.1). Eine musikalische Stilrichtung wird
66 KAPITEL 4. ALGORITHMUS

durch die Auswahl8 der Akkorde, die für die Realisierung der harmonischen
Funktionen zur Verfügung stehen, und den für die Evaluierung der Voicings
und der Voicings-Übergänge eingesetzte Regelsatz9 abgebildet.
Um eine stilrichtungsbezogene Umstellung bzw. Erweiterung des Harmonisie-
rungssystems zu ermöglichen, sollten Mechanismen für den Zugri auf den
Akkordvorrat, den Regelsatz und für die Einstellung derer Parameter ge-
schaen werden. Wie in Abschnitt 4.2.2 bereits erwähnt wurde, bietet die
Schnittstelle des Systems eine Funktion für die Einstellung einer alternati-
ven musikalischen Stilrichtung durch eine externe Datei an.
Die jeweiligen internen Funktionen, die auf den Akkordvorrat bzw. auf die
Harmonielehre- und Stimmführungsregeln zugreifen, sind allgemeiner Natur
und unabhängig vom Akkordvorrat und von den Regeln. Auf diese wird mit-
tels Zeiger auf Arrays (im Fall des Akkordvorrats) bzw. auf statische Funktio-
nen (welche die Regeln implementieren) zugegrien. In der Grundeinstellung
des Systems verweisen diese Zeiger auf festcodierten Arrays und Funktionen.
Eine Implementierung der Schnittstellenfunktion (und eine Spezikation ei-
nes passenden Dateiformats) würde es ermöglichen, die Zeiger auf Daten und
Funktionsdenitionen, mit denen in einer entsprechenden Datei eine musika-
lische Stilrichtung deniert wird, umzulenken.

4.4.2 Justierung des Hidden-Markov-Models


Wie auch bei dem im vorangehenden Kapitel vorgestellten System CPUBach
(s.o. Abschnitt 3.1.9), wurden auch die Parameter für das HMM2 in dem hier
vorgestellten System manuell eingegeben. Das HMM2 wurde jedoch für die
Modellierung der dynamischen Wechselwirkung zwischen Tonartstufen und
harmonischen Funktionen, und nicht wie bei CPUBach für die Beschreibung
von Übergängen zwischen expliziten Akkordfolgen eingesetzt. Somit war die
Gröÿe der zu erstellten Tabellen mit Emissions- und Übergangswahrschein-
lichkeiten  bei einer Emissionsmenge mit 12 Zeichen, entsprechend den
diatonischen und versetzten Tonartstufen, und einer Menge von 25 Zustän-
den, entsprechend der Anzahl an möglichen Paaren bei vier harmonischen
Funktionen und einer leeren Zusatzfunktion (s.o. Abschnitt 4.3.2.3)  über-
schaubar. Deshalb wurden auch keine möglichen Verbindungen ausgelassen,
sodaÿ kein Informationsverlust, wie im Fall von CPUBach [22, S. 4] auftre-
tend, in Kauf genommen werden muÿte.
Eine Alternative, wie sie auch bei anderen im Kapitel 3 vorgestellten Sy-
steme implementiert wurde, wäre das Training des HMM2. Mit einer hoch
8 Damit ist sowohl der Akkordvorrat wie auch die Auftrittswahrscheinlichkeit jedes Ak-
kords im Kontext der Stilrichtung gemeint.
9 Auch hier ist sowohl die Auswahl der Regeln als auch ihre Gewichtung maÿgebend.
4.4. GEWÄHLTE STRATEGIEN, PROBLEME UND LÖSUNGEN 67

qualitativen Trainingsmenge könnten durch Training vermutlich gute Ergeb-


nisse erzielt werden. Zwei Probleme stellen sich jedoch in Verbindung mit der
Zielsetzung des Systems bzw. des HMM2:

• Unähnlich vielen der in Kapitel 3 vorgestellten Lösungen soll das hier


vorgestellte System zunächst unabhängig von einer bestimmten musi-
kalischen Stilrichtung operieren, und daher auch in der Lage sein, Me-
lodien mit unterschiedlichen stilistischen Merkmalen auf ihre harmoni-
schen Funktionen zu analysieren. Eine Trainingsmenge sollte demnach
die gesamte Palette möglicher musikalischer Stilrichtungen mit optima-
ler Auösung abbilden. Dies zu realisieren ist relativ aufwendig, zudem
müssen strategische Entscheidungen getroen werden bezüglich der Zu-
sammenstellung und der Auösung der entstehenden Trainingsmenge.

• Die eventuellen Trainingsdaten müssen vorbereitet werden: sie müssen


entsprechend formatiert werden (entweder als MIDI-Daten zur direk-
ter Verarbeitung im System oder als Audio-Dateien zur Eingabe durch
die Audio-Umgebung), und vor allem müssen sie harmonisch-funktional
analysiert sein. Obwohl es Texte gibt, die zum Teil neben den reinen
musikalischen Daten auch reiche Information zur Harmonisierung auf
einer hohen Ebene enthalten  wie z.B. Choräle mit Generalbassno-
tation10 , oder vollständig analysierte Musikstücke  existieren nicht
viele Texte mit Angaben zu harmonischen Funktionen von Melodieno-
ten. Zudem müsste die Auösung der harmonischen Funktionen mit
der des Systems übereinstimmen. Eine sehr aufwendige Vorbereitungs-
arbeit wäre daher notwendig, auch nachdem eine Trainingsmenge von
Melodien erstellt worden wäre.

Nicht zuletzt wegen dieser Gründe wurde hier die manuelle Erstellung der
Wahrscheinlichkeitstabellen gewählt. Als Grundlage für die Auswahl der je-
weiligen Wahrscheinlichkeiten hat eigenes Wissen und eigene musikalische
Erfahrung, die Implementierung des Harmonisierungssystems in der vorigen
Version des vielklang-Plugins, sowie Tests während der Entwicklungsarbeit
gedient. Diese heuristische Herangehensweise hat sich durch Tests mit den
während und nach der Entwicklung verwendeten Testmelodien bewährt.

4.4.3 Auswahl und Gewichtung der Regeln


Die Auswahl der angewandten Regeln stützte sich zunächst an die Kerngrup-
pe solcher Regeln, die in der Literatur stets als Fundament der Harmonielehre
10 Zu Generalbaÿ siehe [28, S. 100-101]
68 KAPITEL 4. ALGORITHMUS

bzw. der Stimmführung erwähnt werden (vgl. [25, S. 5]), sowie auf die Regeln,
die in der vorigen Version des Harmonisierungssystem des vielklang-Plugins
implementiert wurden.
Der explizite Akkordvorrat des hier vorgestelltes Systems wurde gegenüber
den impliziten Möglichkeiten zur Generierung von Akkorden, welche die vo-
rige Version anbietet, um mehrere Akkorde erweitert. Dazu gehören auch
bestimmte Akkorde, deren traditionsgerechter Einsatz in einer Akkordfolge
einer speziellen, tradierten Behandlung der Stimmführung bedarf. Für solche
Akkorde wurden maÿgeschneiderte Regeln implementiert, die nur dann grei-
fen, wenn sich bei dem zu evaluierenden Voicing bzw. dem zu evaluierenden
Voicing-Übergang eine Ausprägung dieser Akkorde bendet. Eine der Tradi-
tion entsprechende Stimmenlage bzw. Stimmführung wird in solchen Fällen
mit einer Gewichtserhöhung bevorzugt, das Gegenteil entsprechend bestraft.
Die Gewichtung der Regeln stützte sich zunächst auf die vorherige Version.
Wegen des erweiterten Akkordvorrats und der daraus entstehenden mögli-
chen Voicings und Voicings-Übergänge, sowie wegen der o.g. Implementie-
rung weiterer Regeln, musste die Gewichtung erweitert bzw. angepasst und
gegenseitig justiert werden. Dies erfolgte durch Tests harmonisch-analytischer
sowie musikalisch-subjektiver Natur während der Entwicklung.

4.4.4 Rechengenauigkeit und Rechenleistung


Die Unterschiede in der Arbeitsweise und in der Menge an vorliegenden In-
formationen gegenüber der vorigen Version des Harmonisierungssystems er-
zwingen eine neue Handhabung software-technischer Aspekte der Implemen-
tierung. Auch in der vorherigen Version wird die Technik der dynamischen
Programmierung für die Entscheidung des besten Übergangs zwischen zwei
benachbarten Voicings eingesetzt. Dort erfolgt die Berechnung jedoch nur
lokal: für jeden Übergang wird eine Tabelle erstellt, deren Gröÿe von dem
erlaubten Stimmenumfang und der maximalen Anzahl an möglichen Akkor-
den für eine Tonhöhe abhängt. Ein eventueller arithmetischer Unterlauf bzw.
Überlauf, der durch sukzessive Verringerung oder Anhebung des Gewichts
eines Voicings zustande kommen könnte, und ein damit verbundener Daten-
verlust sind wegen der überschaubaren Gröÿe der Tabelle unwahrscheinlich.
Auch im aktuellen System sind der erlaubte Stimmenumfang und der vor-
handene Akkordvorrat maÿgebend für die Anzahl der Voicings, die für eine
Melodienote bei der Initialisierung der Tabelle für die dynamische Program-
mierung generiert werden (s.o. Abschnitt 4.3.3.1). Die Tabelle umfaÿt jedoch
die gesamte Melodielänge, und dient der Ermittelung des besten globalen
Pfads. Damit können stimmführungstechnische Zusammenhänge, die über
eine direkte Voicings-Nachbarschaft hinausgehen, erfaÿt und bewertet wer-
4.4. GEWÄHLTE STRATEGIEN, PROBLEME UND LÖSUNGEN 69

den. Da die Melodielänge ein zunächst unbekannter Parameter der Eingabe


ist, kann es vorkommen, daÿ bei einer herkömmlichen, multiplikativen Umset-
zung von Gewichtsveränderungen ein arithmetischer Unterlauf bzw. Überlauf
auftritt.
Um diesem Problem entgegen zu wirken, werden zunächst die Ergebnisse der
multiplikativen Umsetzungen der Regeln in logarithmische Gröÿen übersetzt.
Damit wird eine Verlangsamung von steigenden bzw. fallenden Tendenzen der
Gewichtsentwickelnug erreicht. Vor allem bei langen Melodien genügt diese
Maÿnahme jedoch nicht. Deshalb wurde ein weiterer Mechanismus eingesetzt,
welcher die Gewichte bei drohenden Unterlauf bzw. Überlauf neu skaliert.
Der Eingri ist lokal, die Relationen zwischen den Gewichten am gleichen
Zeitpunkt werden beibehalten. Da die Evaluierung der Gewichte im Laufe
der dynamischen Programmierung stets lokal erfolgt, birgt die Skalierung
keine Verfälschung der Berechnung.
Beim Vergleich der Rechenzeit beider Systeme11 schneidet das hier vorgestell-
te System schlechter als die vorherige Version ab: Am Beispiel der Harmoni-
sierung des Bach-Chorals Nun Danket Alle Gott  mit einer Melodielänge
von 37 Noten, ohne Wiederholungen  mit ähnlichen Parametern zum Stim-
mumfang dauerte die Berechnung im aktuelle System 2.29 Sekunden, in der
vorherige Version 0.03 Sekunden. Bei der Harmonisierung der selben Choral-
melodie mit einer Wiederholung  Gesamtlänge von 74 Noten, sonst mit den
gleichen Einstellungen  dauert die Berechnung im aktuellen System 3.84
Sekunden. Für die Berechnungszeit der vorherigen Version werden weiterhin
lediglich 0.03 Sekunden angegeben, woraus geschloÿen werden kann, daÿ die
tatsächliche Dauer der Berechnung unterhalb der Meÿgenauigkeit liegt.
Mögliche Gründe für die längere Verarbeitungszeit sind:
• Der gröÿere Akkordvorrat im aktuellen System, welcher gröÿere Tabel-
len und damit mehr Operationen herbeiführt.
• Die genannten Schutzmechanismen gegen arithmetischen Unterlauf
bzw. Überlauf, die mit vielen zeitaufwendigen Operationen (Logarith-
mieren und Delogarithmieren u.a.) einhergehen.
• Programmiertechnische Aspekte der Implementierung, wie z.B. die wie-
derholte Speicheralloziierung oder die Instanziierung von Objekten.
Das hier vorgestellte System stellt eine prototypische, vorläuge Umsetzung
des entwickelten Algorithmus dar. Software-technische Optimierungen des
Programcodes werden ein wichtiger Teil der Weiterentwicklung des System
ausmachen.
11 Durchgeführt mit einer Intel-Centrino CPU mit einer maximalen Taktfrequenz von
1500MHz und einem 512MB-groÿen Arbeitsspeicher
70 KAPITEL 4. ALGORITHMUS
Kapitel 5
Evaluierung

Die vom Harmonisierungssystem gelieferten Ergebnisse sollen sowohl


musikalisch-ästhetisch anspruchsvoll als auch korrekt im Sinne der Regeln
der Harmonielehre sein (s.o. Seite 2).
Es existiert kein automatisiertes Verfahren zur umfassenden Evaluierung der
Harmonisierung. Auch in den im Kapitel 3 vorgestellten Forschungsdoku-
mentationen wurden keine entsprechenden Testmechanismen erwähnt.
Die Ergebnisse des Systems können jedoch auf die Umsetzung der im System
implementierten Stimmführungsregeln überprüft werden. Da die betreenden
Regeln hauptsächlich aus Aussagen über objektive Eigenschaften des harmo-
nisierten Satzes bestehen, ist die manuelle Überprüfung der Ergebnisse eine
praktikable Lösung. Unter der Annahme, daÿ mit den im System implemen-
tierten Regeln eine vollständige Beschreibung der Regeln der Harmonielehre
gegeben ist, belegen solche Tests die korrekte Stimmführung in den durch
das hier vorgestellte System unter der aktuellen Einstellung der Regeln und
Gewichte gelieferten Ergebnisse.
Hingegen stellt eine Evaluierung der ästhetisch-musikalischen Qualität von
Harmonisierungen eine Herausforderung dar. Im Gegensatz zu der Überprü-
fung auf korrekte Stimmführung, erfordert sie die subjektive Bewertung eines
Zuhörers1 bzgl. der stilabhängigen und allgemeinen musikalischen Eigenschaf-
ten des harmonisierten Satzes.
Eine mögliche Testanordnung zur Evaluierung des ästhetisch-musikalischen
Aspekts der Harmonisierungen wäre ein vergleichender Hörtest. Die Realisie-
rung eines Hörtests ist jedoch mit einer Reihe konzeptueller und technischer
Herausforderungen verbunden:

1 Bzw. eines geschulten Lektors, der die Qualität solcher Eigenschaften direkt aus dem
Notentext einschätzen kann.

71
72 KAPITEL 5. EVALUIERUNG

• Ein geeignetes Verfahren muÿ gefunden werden. Dabei sind minde-


stens zwei unterschiedliche Varianten denkbar: Die Ergebnisse des Sy-
stems könnten entweder mit Referenzen  vorhandenen, von Menschen
komponierten Harmonisierungen der jeweils gleichen Melodien  oder
wiederum mit Ergebnissen alternativer Harmonisierungssysteme vergli-
chen werden.

• Es muÿ die Frage geklärt werden, ob musikalische Qualität ein durch


eine oder durch mehrere Dimensionen beschriebener Raum ist. Nach
Ermittlung der Dimensionen muÿ jeweils festgestellt werden, welche
Werte jede Dimension annehmen kann, und ob diese Werte relativer
oder absoluter Natur sind.

• Es muÿ entschieden werden, wie der Vergleich unterschiedlicher Har-


monisierungen anhand der Bewertungen entlang den o.g. Dimensionen
stattnden soll: ob zwischen den jeweils einzelnen Dimensionen oder
zwischen gewichteten Kombinationen aus ihnen. Für die Ergebnisse
des Vergleichs muÿ zudem festgelegt werden, ob sie Werte entlang einer
Skala oder aus einem binären Intervall  z.B. zwischen akzeptabel
und nicht-akzeptabel  annehmen könnten.

• Eine repräsentative Testmenge muÿ gebildet werden. Auf die in die-


sem konkreten Fall damit verbundenen Schwierigkeit, vor Allem im
Hinblick auf stilistische Vielfalt, wurde bereits an einer früheren Stelle
eingegangen (s.o. Abschnitt 4.4.2, Seite 67).

• Eine repräsentative Gruppe von Probanden muÿ gebildet werden. Ge-


gebenenfalls müÿte eine Anpassung der Bewertungsdimensionen und
-skalen stattnden, um sie für Probanden mit unterschiedlichem musi-
kalischem Hintergrund nachvollziehbar zu machen. Zudem müssen die
zeitlichen Einschränkungen auf menschlicher Bewertungsfähigkeiten so-
wie allgemeine organisatorische Fragen geklärt werden.

Es ist daher oensichtlich, daÿ die Durchführung eines adäquaten Hörtests


über den zeitlichen und thematischen Rahmen dieser Arbeit hinausginge: Al-
lein die Feststellung von adäquaten musikalischen Bewertungskriterien und
deren Vergleichbarkeit, die Entwicklung von Bewertungsskalen und Vergleich-
barkeitskriterien und die Bildung repräsentativer Testmengen könnten selbst
Themen für Hörtests sein.
Wie bereits erwähnt wurde (s.o. Abschnitt 4.1, Seite 46), sind die Möglich-
keiten, eine gegebene funktional-harmonische Folge zu harmonisieren, auch
im Rahmen einer einzigen musikalischen Stilrichtung vielfältig. Zudem sind
73

auch die vom System detektierten Melodieeigenschaften nicht eindeutig: oft


gibt es mehr als eine plausible funktional-harmonische Folge, die vom tonalen
Verlauf einer Melodie beschrieben werden könnte  die Anzahl der Möglich-
keiten steigt weiter, wenn die zugrundeliegende Einteilung in Phrasen unter-
schiedlich ist, bzw. wenn während des Melodieverlaufs eine Modulation2 in
eine andere Tonart angenommen wird.
Im Lichte dessen können analytische Vergleiche von Harmonisierungen nur
bedingt durchgeführt werden. Die Rahmenbedingungen für eine Harmonisie-
rung sind mit den Melodienoten und der Tonart noch lange nicht eindeutig
festgelegt, und bei gegebener korrekter Stimmführung existiert eine Vielzahl
von Lösungen, deren Bewertung nur auf persönlichen Vorlieben beruht.
Die Eigenschaften der vom vorgestellten System erstellten Harmonisierungen
können jedoch subjektiv bewertet werden und mit Ergebnissen anderer Sy-
steme verglichen werden. Darüberhinaus kann ein solcher Vergleich eventuel-
le Vorteile des vorgestellten Lösungskonzepts hervorheben. Als Testkriterien
dienen die subjektive Wahrnehmung der Harmonisierung für sich sowie im
Vergleich mit anderen Harmonisierungen der jeweils geprüften Melodie.
Die subjektive Bewertung hatte folgende Schwerpunkte3 :

Grundsätzliche Plausibilität  Die Harmonisierung sollte organisch


und natürlich klingen. Wichtig sind dabei die korrekte Behandlung
tradierter Kadenzen und Akkordfolgen sowie die melodischen Qualitä-
ten der entstehenden zusätzlichen Stimmen.

Eektivität und Vielfältigkeit  Die entdeckten Eigenschaften der Me-


lodie sollten durch die Harmonisierung auf musikalisch anspruchsvolle
Weise hervorgehoben und ausgebaut werden.

In [2] geben Allan und Williams (A. & W.) eine Harmonisierung der Me-
lodie aus J. S. Bachs Choral BWV 438 als Beispielergebnis des von ihnen
entwickelten Systems (s.o. Abschnitt 3.1.10). Da beide Systeme  das hier
vorgestellte System und das von A. & W.  nahezu die gleiche Informati-
on über die Eingangsmelodie erhalten müssen4 , wird dieses Beispiel für eine
vergleichende Bewertung der Ergebnisse des vorgestellten Systems herange-
2 Zu Modulation in der Musik siehe z.B. [28, S.98-99] und [1].
3 Eine ästhetisch-musikalische Bewertung mit ähnlichen Kriterien fand während der
Entwicklung statt und diente der Justierung des implementierten Regelwerks. Dabei wur-
den auch die Ergebnisse der Melodieanalyse  die vom System entdeckten Phrasen sowie
den aufgrund der Phrasen ermittelten funktional-harmonischen Verlauf  geprüft.
4 Das System von A. & W. erhält zusätzlich zu den Melodienoten (mit Onsetintervallen)
und der Tonart auch eine absolute Rhythmusangabe. Das ist notwendig, da dieses System
stets von einem festen harmonischen Rhythmus von Vierteln ausgeht.
74 KAPITEL 5. EVALUIERUNG

zogen. Um das vorgestellte System mit der vorherigen Version des vielklang-
Harmonisierungssystems auf der Basis der realisierten harmonischen Vielfalt
zu vergleichen, wurde für dieselbe Choralmelodie auch von diesem System
eine Harmonisierung erstellt. Die originale Choralkomposition J. S. Bachs,
die Ergebnisse der drei Harmonisierungssysteme zusammen mit einer Analy-
se der harmonischen Funktionen5 sowie der Akkorfolgen der jeweiligen Sätze
benden sich auf Seiten 78 bzw. 79. Die Choralmelodie ist in F-Dur.
Im Folgenden werden zwei kurze Abschnitte aus den harmonisierten Sätzen
verglichen.

Takt 2 Das aufgelöste h' auf dem zweiten Viertel dieses Takts stellt als
tonartfremder Ton in der Melodietonart F-Dur eine Herausforderung
für die Harmonisierung dar. Jedes der drei geprüften Systeme bietet
eine andere Lösung für diese Situation:

Das Harmonisierungsystem der vor-


herigen vielklang-Version quanti-
siert das tonartfremde h' auf die
vierte diatonische Stufe b'. Anschlie-
ÿend wird die Note mit dem entspre-
chenden Dreiklang der vierten Ton-
artstufe (B-Dur) harmonisiert. Der
Takt erhält die geschlossene Gestalt
Abbildung 5.1  Harmonisierung
einer authentischen Kadenz (F-Dur,
durch die vorherige vielklang -Version
B-Dur, C-Dur, F-Dur)  wenn-
gleich die Auösung dieser Kadenz auf die zweite Umkehrung des Akkords der
ersten Stufe (F-Dur) nicht der Tradition entspricht (s.o. Abschnitt. 2.1.6.2,
Seite 14).

5 Die gegebene harmonisch-funktionale Analyse wurde manuell anhand der vollständig


harmonisierten Sätze erstellt  unabhängig von der im hier vorgestellten System intern
durchgeführten Analyse  und verwendet dabei eine im Vergleich mit der im System
vorhandenen erweiterte Menge funktionaler Bezeichnungen.
75

In der Harmonisierung des Sy-


stems von A. & W. wird das h'
mit der ersten Umkehrung des
verminderten Dreiklangs auf der
erhöhten vierten Tonartstufe (H-
Vermindert) harmonisiert, der
gleichzeitig eine Dominantfunktion
im Bezug auf den darauolgenden
Abbildung 5.2  Harmonisierung
Dominante-Dreiklang auf der fünf-
ten Tonartstufe (C-Dur)  Eine durch das Systems von A. & W.
sog. Doppeldominante 6  darstellt. Die lokale Verlagerung des tonalen
Zentrums auf C-Dur stellt eine Bereicherung der Harmonisierung dar.

Eine weiterreichende Ausdehnung


des tonalen Raums wird durch
das hier vorgestellte System rea-
lisiert. Es wird eine Kette von
relativen Dominanten erzeugt: der
nicht-diatonischen Dur-Dreiklang
auf der dritten Stufe (D-Dur)
auf dem ersten Viertel wird als
Dominante zum darauolgenden Abbildung 5.3  Harmonisierung
nicht-diatonischen Dominantseptak- durch das hier vorgestellte System
kord (G-Dominantseptakkord) auf
der zweiten Stufe wahrgenommen, welcher wiederum die Doppeldominante
zum auf ihn folgenden tonarteigenen Dominantseptakkord in der ersten
Umkehrung (C-Dominantquintsextakkord) bildet. Die Kette schlieÿt mit
dem Tonikadreiklang der ersten Tonartstufe (F-Dur) auf dem letzten Viertel
des Takts.

Takt 6
Auf den beiden ersten Vierteln
im Takt ist die vierte Tonartstufe
b in der Melodie. Entsprechend
werden diese Töne vom Harmo-
nisierungsystem der vorherigen
vielklang-Version mit dem dia-
tonischen Dreiklang der vierten Abbildung 5.4  Harmonisierung
Tonartstufe als Grundton (B-Dur) durch die vorherige vielklang -Version
6 Zu Doppeldominante siehe z.B. [28, S. 98, Abbildung B] und [4].
76 KAPITEL 5. EVALUIERUNG

in zwei unterschiedlichen Umkehrungen harmonisiert. Auf den zwei rest-


lichen Vierteln folgen zwei Umkehrungen des Dreiklangs mit der ersten
Tonartstufe als Grundton (F-Dur). Die entstehende Wendung ist schwach
in ihrem plagalen (s.o. Abschnitt 2.1.6.2, Seite 13) Charakter, und wird
wegen der fehlenden traditionellen Auösung der zweiten Umkehrung des
Tonikadreiklangs nicht als authentische Kadenz wahrgenommen (s.o.).

Allans und Williams' System rea-


lisiert eine authentische Kadenz
auf den drei ersten Vierteln im
Takt (B-Dur Sekstakkord, C-
Dominantquintsextakkord, F-Dur),
mit einer traditionsgemäÿen Auf-
lösung der zweiten Umkehrung
des Dominantseptakkords in den
Abbildung 5.5  Harmonisierung
Dreiklang der ersten Stufe (Vierteln
durch das Systems von A. & W.
2 und 3). Die letzte Melodienote
wird mit dem Dreiklang der Tonikaparallele (d-Moll) harmonisiert. Es wird
eine Gegenbewegung der Baÿ- und Sopranstimme erzeugt (s.o. Abschnitt
4.3.3.2, Seite 64).

Das hier vorgestellte System harmo-


nisiert auch den Takt 6 mit Ak-
korden, die die Grenzen des to-
nalen Raums über die Grundton-
art ausdehnen: Der diatonische Sep-
takkord der zweiten Tonartstufe
(G-Mollseptakkord) auf dem ersten
Viertel wird als Doppeldominante
Abbildung 5.6  Harmonisierung
wahrgenommen und löst sich in die
zweite Umkehrung des Septakkords durch das hier vorgestellte System
auf der fünften Tonartstufe (C-Dominantquartsextakkord)  die tonartsei-
gene Dominante  auf. Diese wird wiederum in den nicht-diatonischen Dur-
Dreiklang auf der sechsten Tonartstufe (D-Dur) die Dur-Tonikaparallele
bzw. die Dur-Mediante  aufgelöst. Erst auf dem letzten Viertel im Takt
wird mit dem diatonischen Dreiklang auf der ersten Tonartstufe (F-Dur) die
Tonika erreicht.
An mehreren Stellen in der Harmonisierung des Systems von A. & W. ist
eine Gegenbewegung der Sopran- und Baÿstimme zu vermerken. Sowohl in
der Harmonisierung des Systems von A. & W. als auch in der Harmoni-
sierung durch die vorherigen Version des vielklang-Plugins bewegt sich die
77

Baÿstimme an vielen Stellen in kleineren Schritten als in der Harmonisierung


des vorgestellten System. Zudem demonstriert das Beispiel die Fähigkeit des
Systems von A. & W., Verzierungen in Form von Wechsel- und Übergangs-
noten in die Harmonisierung einzubauen. Auf die Gründe für das Fehlen
einer ähnlichen Funktionalität in den jeweiligen Harmonisierungssystemen
des vielklang-Plugins wurde an einer früheren Stelle eingegangen (s.o. Ab-
schnitt 3.2.3). Im Gegenzug werden bei dem hier vorgestellten System keine
allgemeinen Annahmen bezüglich des harmonischen Rhythmus' gemacht, die
eine weitere Einschränkung in Allans und Williams' System darstellen.
78 KAPITEL 5. EVALUIERUNG

Abbildung 5.7  J. S. Bach  Choral BWV 438, Wo Gott zum Haus nicht
gibt sein Gunst [18]
79

Abbildung 5.8  Harmonisierungen der Choralmelodie aus BWV 438, erstellt


durch (von oben nach unten) das System von Moray Allan and Christopher
K. I. Williams [2, S. 29], die vorherige Version des vielklang -Plugins und das
hier vorgestellte System.
80 KAPITEL 5. EVALUIERUNG

Das vorgestellte System scheint beide gestellten Aufgaben zu erfüllen: Kor-


rektheit des Satzes bei gleichzeitiger Bereicherung der harmonischen Vielfalt
im Vergleich mit der vorherigen Version, und kann sich bei einem ästhetisch-
musikalischen Vergleich mit einem auf die spezische Stilrichtung trainierten
System messen. Der Vorteil des hier implementierten konzeptuellen Ansat-
zes wird in Anbetracht der Komplexität, des Trainings-Aufwands und der
Inexibilität des stochastischen Modells, die Allans und Williams' System
aufweist (s.o. Abschnitt 3.1.10), deutlich.
Ein direkter Vergleich mit der originalen Choralkomposition J. S. Bachs wäre
an dieser Stelle von geringem Nutzen. Zunächst wird mit dem hier vorgestell-
ten System  unähnlich anderen Lösungen, darunter auch der von Allan und
Williams  nicht angestrebt, mittels Training eine einzige musikalische Stil-
richtung wie etwa die J. S. Bachs nachzubilden7 . Darüberhinaus wird sowohl
mit dem vorgestellten als auch mit dem System von A. & W., wie auch mit
den meisten in Kapitel 3 beschriebenen Systemen kein Anspruch auf maschi-
nelle Kreativität erhoben. Die Systeme sind, obgleich unter Einsatz unter-
schiedlicher Techniken, lediglich als Mechanismen für die optimierte Lösung
von Problemstellungen aus einem musikalischen Gebiet konzipiert.
J. S. Bachs eigene Harmonisierung des Chorals BWV. 438 ist zurückgehalten
in der Wahl der Akkorde  die Grenzen der Grundtonart werden nur an
einer einzigen Stelle (Takte 5-6) überschritten. Die Komposition zeichnet sich
vielmehr durch die melodische Qualität der Bewegung der harmonisierenden
Stimmen  wie z.B. in den Takten 1-4 im Tenor und 5-8 im Baÿ  und die
mittels verketteter Vorhalte  wie z.B. im Takt 1 im Tenor  durchgehaltene
harmonische Spannung.
Ein konträres Beispiel, das den Umfang der möglichen kompositorischen Frei-
heit demonstriert, ist mit dem Choral BWV. 48 in B-Dur gegeben (siehe Seite
82 für J. S. Bachs Choralkomposition bzw. 83 für die Ergebnisse der drei au-
tomatischen Systeme). Die Harmonisierung J. S. Bachs moduliert mehrmals
während des Satzes  Takt 2 inkl. den ersten Viertel des Takts 3 in g-Moll,
der Rest des Takts 3 bis zum dritten Viertel im Takt 4 is in F-Dur, zu-
dem gibt es eine Wendung in As-Dur im Takt 6  und bewegt sich dabei
unter Verwendung nicht diatonischer Töne und ausgeprägter chromatischer
Bewegung weit über die tonalen Grenzen der Grundtonart. Besonders stark
ausgeprägt sind diese Tendenzen in den letzten vier Takten.
Das System von A. & W. weist bei diesem Beispiel die Fähigkeit auf, über
einen längeren Abschnitt eine Verlagerung in eine andere tonale Umgebung
als die der Grundtonart zu realisieren: in den Takten 5-6 ist eine Modulati-
7 Für das manuelle Training des Systems wurden neben Choralmelodien auch Volkslie-
der und Melodien aus dem Bereich der Unterhaltungsmusik verwendet.
81

on in die Medianttonart G-Dur zu vermerken. Das hier vorgestellte System


macht an vier Stellen Gebrauch von der Doppeldominante. Im Allgemeinen
wirken die durch die automatischen Systeme in diesem Beispiel realisierten
lokalen tonalen Verschiebungen konservativ im Vergleich mit der Choralkom-
position J. S. Bachs.

Das erste Achtel in Takt 6 wurde in der Harmonisierung des hier vorgestellten
Systems nicht mit einem eigenen Voicing versehen  die Note wird als Wech-
selnote klassiziert und aus der Berechnung der Voicings ausgeschlossen, für
die Ausgabe erhält sie das Voicing der Vorgängernote. In diesem Beispiel ist
der Unterschied im Charakter der Baÿlinie zwischen der Harmonisierung des
System von A. & W. un der Harmonisierung des hier vorgestellten System
weniger ausgeprägt als im Fall der Choralmelodie BWV 438. bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
bla
82 KAPITEL 5. EVALUIERUNG

bla

Abbildung 5.9  J. S. Bach  Choral BWV 48, Ach Gott und Herr, wie groÿ
und schwer  Originale Version [18]
83

Abbildung 5.10  Harmonisierungen der Choralmelodie aus BWV 48, erstellt


durch (von oben nach unten) das System von Moray Allan and Christopher
K. I. Williams [2, S. 29], die vorherige Version des vielklang -Plugins und das
hier vorgestellte System.
84 KAPITEL 5. EVALUIERUNG
Kapitel 6
Schluÿwort

Der vorgestellte Prototyp des Harmonisierungssystems erfüllt die gestellten


Anforderungen. Im Folgenden werden die Fähigkeiten und Eigenschaften
der aktuellen Implementierung sowie geplante Optimierungsmaÿnahmen und
mögliche Ansätze für die Weiterentwicklung beschrieben.

6.1 Eigenschaften des Systems

Mit der vorgestellten Implementierung wurde ein weitgehend autonomes Har-


monisierungssystem realisiert: eine lediglich durch Tonart sowie Tonhöhen-
und Zeitangaben der Melodienoten beschriebene Melodie wird automatisch
mit drei weiteren Stimmen versehen, um einen mit korrekter Stimmführung
ästhetisch anspruchsvollen vierstimmigen Satz zu formen.
Die für die Erstellung der zusätzlichen Stimmen erforderliche Information
wird systemintern aus der Eingabemelodie gewonnen: Mit wahrnehmungs-
orientierten Techniken werden formale Eigenschaften der Melodie untersucht
und Phrasen detektiert; diese werden funktional analysiert um die harmoni-
sche Basisstruktur zu bilden, die der Harmonisierung als Fundament dient.
Dazu wird eine stochastische Beschreibung tonaler Zusammenhänge in Form
eines HMM2 verwendet.
Das System verfügt über einen Akkordvorrat, der die Harmonisierung dia-
tonischer sowie nicht-diatonischer Melodienoten entsprechend den jeweiligen
harmonischen Funktionen ermöglicht. Die Erzeugung der zusätzlichen Stim-
men erfolgt nach den traditionellen Regeln der Stimmführung sowie unter
Beachtung der tradierten Handhabung spezieller Akkordfolgen. Der vierstim-
mige Satz, der diese Anforderungen am besten erfüllt, wird dem Anwender
als Ergebnis geliefert.

85
86 KAPITEL 6. SCHLUßWORT

Der Anwender kann den Stimmumfang und die Akkordlage (s.o. Abschnitt
4.3.3.1, Seite 63) des Satzes festlegen. In den durchharmonisierten Satz kann
der Anwender Akkorde nach seiner Wahl an beliebigen Stellen setzen. Das
System integriert diese Akkorde in den erstellten Satz unter Beachtung der
für die Harmonisierung geltenden Regeln.
Der verwendete Regelsatz sowie der Akkordvorrat sind zudem erweiterungs-
fähig und modizierbar: Sie erlauben sowohl das Hinzufügen neuer Regeln
und Akkorde als auch die Veränderung einzelner Gewichte. Die mit der vorge-
stellten Implementierung realisierte elementare Harmonisierungsstilrichtung
kann somit sowohl erweitert als auch speziziert werden. Dadurch könnten
auf der Basis der vom System erstellten Analyse Harmonisierungen in unter-
schiedlichen Stilrichtungen realisiert werden.
Die stilistische Flexibilität wird durch den implementierten konzeptuellen
Ansatz möglich. Dieser sieht die Trennung der musikalischen Analyse von
der Erstellung der zusätzlichen Stimmen vor. Darin unterscheidet sich das
vorgestellte System von den in Kapitel 3 beschriebenen Lösungen und stellt
gleichzeitig eine Simulation des traditionellen Harmonisierungsprozesses dar.
Der Einsatz heuristischer Entscheidungen während der Entwicklung, vor al-
lem im Zusammenhang mit der Festlegung von Wahrscheinlichkeitswerten
und der Gewichtung von Parametern, bewährt sich durch die gelieferten
Harmonisierungsergebnisse. Darüberhinaus rechtfertigt die heuristische Na-
tur musikalischer Entscheidungsprozesse, die meistens auf Erfahrungswerte
und Traditionen zurückgreifen, den Gebrauch von Heuristiken auch bei ihrer
automatischen Nachahmung. In Problemräumen, deren Lösungen unter an-
derem auch subjektiven Qualitätsmaÿstäbe genügen müssen, ist es im Allge-
meinen schwer auf den Einsatz von Heuristiken zu verzichten. Selbst alterna-
tive Ansätze, welche maschinelles Lernen für die Justierung ihrer Parameter
einsetzen, machen Gebrauch von Heuristiken  implizit und an erster Stelle
bereits bei der Zusammensetzung der jeweiligen Trainingsmenge.

6.2 Ausblick

Wie bereits erwähnt wurde, stellt das vorgestellte System den Prototyp eines
konzeptuellen Ansatzes und eine Implementierung des entwickelten Algorith-
mus dar. Auf dem Weg zu einer einsatzfähigen Implementierung, welche in die
bestehende Audio-Umgebung des vielklang-Plugins integriert werden kann,
sollen manche Aspekte des Systems optimiert bzw. vervollständigt werden;
darüberhinaus sind bereits in der vorgestellten Implementierung Ansatzpunk-
te für eine Weiterentwicklung vorhanden:
6.2. AUSBLICK 87

Rechenzeit  In Abschnitt 4.4.4 wurde ein Beispiel für die vor allem im
Vergleich mit dem vorherigen vielklang-Harmonisierungssystem lange
Rechenzeit gegeben, die vom vorgestellten System für die Bearbeitung
einer Eingabe in Anspruch genommen wird. Wie bereits erwähnt (dort,
Seite 69) liegen die Ursachen dafür höchstwahrscheinlich in der Gröÿe
der zu verarbeitenden Datenmenge, den rechenintensiven Schutzmecha-
nismen und der Programmstruktur.
Eine Maÿnahme für die Reduzierung der zu verarbeitenden Datenmen-
ge wurde bereits getroen: Voicings, deren Gewichte im Laufe der dyna-
mischen Programmierung unter eine bestimmte Schwelle fallen, werden
mit dem Gewicht 0 versehen und von weiterer Betrachtung ausgeschlos-
sen. Der Annahme nach liegen solche Voicings auf Pfaden, die höchst-
wahrscheinlich suboptimal sind. Ihre Entfernung aus der Betrachtung
birgt damit keinen Datenverlust.
Die Optimierung der Schutzmechanismen sowie der programmtechni-
schen Abläufe wird einen wichtigen Teil der weiteren Arbeit am System
ausmachen.

Realisierung spezischer Stilrichtungen  Im Allgemeinen sind fol-


gende Parameter maÿgeblich für die stilistisch-ästhetischen Eigenschaf-
ten der Harmonisierung:

• Alle Parameter des HMM2  die Auösung der aus harmoni-


schen Funktionen bestehenden Emissionsmenge sowie die Werte
der Emissions- und Übergangswahrscheinlichkeiten.
• Die Denition der Akkorde im Akkordvorrat, sowie deren jeweili-
gen Zugehörigkeit zu einer harmonischen Funktion und ihre Auf-
trittswahrscheinlichkeit in deren Kontext.
• Die implementierten Stimmführungsregeln, die Werte der in ihnen
vorkommenden Gewichte sowie der Einuÿ jeder Regel auf die
Gesamtbewertung eines Voicings bzw. eines Übergangs.

Durch entsprechende Justierung bzw. Erweiterung dieser Parameter


könnten Denitionen unterschiedlicher, spezischer musikalischer Stil-
richtungen entwickelt und entweder als Einstellungspakete oder als ei-
genständige, auf eine Stilrichtung spezialisierte Systemimplementierung
angeboten werden.

Anwenderinteraktion  Die in der Schnittstelle angebotene Funktion für


die Einstellung einer musikalischen Stilrichtung mittels einer Congu-
rationsdatei muÿ implementiert werden. Es muÿ zunächst entschieden
88 KAPITEL 6. SCHLUßWORT

werden, welche der unter dem vorangegangenen Punkt erwähnten Pa-


rameter für eine externe Einstellung freigegeben werden soll. Dann muÿ
ein Datenformat deniert werden, und ggf. Grenzen für die Einstellung
der Werte festgelegt werden.

Polyphoner Satz  Unter Beachtung der damit verbundenen Herausfor-


derungen an die Audio-Umgebung (s.o. Abschnitt 3.2.3) kann die
Stimmsatzerzeugung um Mechanismen für das Einfügen von Wechsel-
und Übergangsnoten erweitert werden.

Modulationen  Entweder durch zusätzliche Analyseschritte oder mittels


Intervention des Anwenders könnten Bereiche in der Eingabemelodie
deniert werden, für die eine andere Tonart als für den Rest der Me-
lodie gelten sollte. Da die Bestimmung der harmonischen Funktionen
phrasenabhängig erfolgt, und die Denitionen der Akkorde in der Da-
tenbank sowie der Groÿteil der implementierten Stimmführungsregeln
tonartunabhängig sind, wäre der notwendige strukturelle Eingri in den
Quelltext nicht gravierend. Die Frage, ob im anvisierten Einsatzbereich
des Produkts ein Bedarf an einer solchen Funktionalität besteht, sei da-
hingestellt.

Training des HMM2  In den Abschnitten 4.4.2 und 6.1 wurde die ma-
nuelle Justierung des für die Bestimmung der harmonischen Funktionen
eingesetzten HMM2 begründet. Nichtsdestoweniger besteht weiterhin
die Möglichkeit, das Modell  zum Beispiel unter Einsatz des Baum-
Welch Algorithmus (s.o. Abschnitt 2.4.5, Seite 26)  zu trainieren.
Eventuelle stilrichtungsspezische funktional-harmonische Eigenschaf-
ten könnten auf dieser Weise entdeckt und im Modell gespeichert wer-
den. Einerseits könnte dadurch die Qualität der systemintern durch-
geführten Analyse erhöht werden, andererseits könnte dem Anwender
damit ein Werkzeug zur Erforschung stilrichtungsdenierender musika-
lischer Merkmale zur Verfügung gestellt werden.

Evaluierung durchharmonisierter Sätze  Der für die Initialisierung


der Voicings-Matrix und für die Durchführung der dynamischen Pro-
grammierung verwendete Regelsatz könnte für die Überprüfung und
Bewertung von durchharmonisierten Sätzen verwendet werden. Dabei
wird der Satz vertikal in Voicings unterteilt. Die einzelnen Voicings bzw.
die Übergänge zwischen den Voicings könnten dann überprüft und be-
wertet werden. Fehler könnten angezeigt werden, und der Satz könnte
eine Gesamtbewertung erhalten. In einem weiteren Schritt könnte ein
Mechanismus für die Korrektur solcher Fehler implementiert werden.
6.2. AUSBLICK 89

Ein solches Werkzeug könnte im Bereich der musikalischen Ausbildung


von Nutzen sein (siehe auch [29, S. 195]).

Das System kann in die unterschiedlichen Richtungen erweitert werden, und


stellt somit, neben ihrer Funktion im Haupteinsatzgebiet, auch eine Plattform
für Werkzeuge im Bereich der Ausbildung, der Forschung und der Entfaltung
der eigenen musikalischen Kreativität dar.
90 KAPITEL 6. SCHLUßWORT
Literaturverzeichnis
[1] Theory on the Web: Modulation. http://www.smu.edu/totw/modulate.htm,
Am 10.IX.2008.

[2] Moray Allan and Christopher K. I. Williams. Harmonising Chorals


by Probabilistic Inference. Advances in Neural Information Processing
Systems, 17:2532, 2005.

[3] MIDI Manufacturers Association. The Complete MIDI 1.0 Detailed


Specication. MIDI Manufacturers Association, version 96.1 edition,
1996.

[4] (Anonyme Autoren). Doppeldominante. Deutsche Ausgabe


der Wikipedia, http://de.wikipedia.org/wiki/Doppeldominante, Am
10.IX.200.

[5] (Anonyme Autoren). Bridge_(Music). Deutsche Ausgabe der


Wikipedia, http://de.wikipedia.org/wiki/Bridge_(Musik), Am
14.IX.2008.

[6] (Anonyme Autoren). Musik. Deutsche Ausgabe der Wikipedia,


http://de.wikipedia.org/wiki/Musik, Am 22.VIII.2008.

[7] (Anonyme Autoren). Diatonik. Deutsche Ausgabe der Wikipedia,


http://de.wikipedia.org/wiki/Diatonisch, Am 8.IX.2008.

[8] (Anonyme Autoren). EM-Algorithmus. Deutsche Ausgabe


der Wikipedia, http://de.wikipedia.org/wiki/EM-Algorithmus, Am
8.IX.2008.

[9] (Anonyme Autoren). Fermata. Englische Ausgabe der Wikipedia,


http://en.wikipedia.org/wiki/Fermata, Am 8.IX.2008.

[10] (Anonyme Autoren). Forward-Algorithmus. Deutsche Ausgabe


der Wikipedia, http://de.wikipedia.org/wiki/Forward-Algorithmus, Am
8.IX.2008.

91
92 LITERATURVERZEICHNIS

[11] (Anonyme Autoren). Heinrich Schenker. Deutsche Ausgabe


der Wikipedia, http://de.wikipedia.org/wiki/Heinrich_Schenker, Am
8.IX.2008.

[12] (Anonyme Autoren). Intervalle. Deutsche Ausgabe der Wikipedia,


http://de.wikipedia.org/wiki/Intervall_(Musik), Am 8.IX.2008.

[13] (Anonyme Autoren). Markow-Kette. Deutsche Ausgabe der Wikipedia,


http://de.wikipedia.org/wiki/Markow-Prozess, Am 8.IX.2008.

[14] (Anonyme Autoren). Mikrotonale Musik. Deutsche Ausgabe


der Wikipedia, http://de.wikipedia.org/wiki/Mikrotonale_Musik, Am
8.IX.2008.

[15] (Anonyme Autoren). Subdominant. Englische Ausgabe der Wikipedia,


http://en.wikipedia.org/wiki/Subdominant, Am 8.IX.2008.

[16] (Anonyme Autoren). Voicing (music). Englische Ausgabe der Wikipedia,


http://en.wikipedia.org/wiki/Voicing_(music), Am 8.IX.2008.

[17] Olivier Aycard, Jean-Fran cois Mari, and Richard Washington. Learning
to automatically detect features for mobile robots using second-order
Hidden Markov Models. International Journal of Advanced Robotic
Systems, December 4(1):231245, 2004.

[18] J. S. Bach. Kantate BWV 48 Ich elender Mensch, wer wird


mich erlösen , 3. Choral: Soll's ja so sein. http://www.tobis-
notenarchiv.de/bach/01-Kantaten/BWV_0041/index.htm, am
8.IX.2008, Komponiert 1723.

[19] Kaan M. Biyikoglu. A MARKOV MODEL FOR CHORALE HARMO-


NIZATION. Proceedings of the 5th Triennial ESCOM Conference, pages
8184, 2003.

[20] Emilios Cambouropoulos. Musical Pattern Extraction for Melodic Seg-


mentation. Proceedings of the Fifth Triennial ESCOM conference,
Hannover, http://users.auth.gr/emilios/papers/escom2003.pdf, 2003.

[21] Kemal Ebcioğlu. An Expert System for Harmonizing Four-Part Chora-


les. Computer Music Journal, 12(3):4351, 1988.

[22] Matt Hanlon and Tim Ledlie. CPU Bach: An Automatic Chorale Har-
monization System. http://www.timledlie.org/cs/CPUBach.pdf, 2002.
LITERATURVERZEICHNIS 93

[23] Martin Henz, Stefan Lauer, and Detlev Zimmermann. COMPOzE -


Intention-based Music Composition through Constraint Programming.
Proceedings of the Eighth IEEE International Conference on Tools with
Articial Intelligence, pages 118121, 1996.

[24] Dominik Hornel and Wolfram Menzel. Learning Musical Structure and
Style with Neural Networks. Computer Music Journal, The MIT Press,
22(4):4462, 1998.

[25] David Huron. Tone and Voice: A Derivation of the Rules of Voice-
Leading from Perceptual Principles. Music Perception, 19(1):164, 2001.

[26] Scott Lehman. Table 2: Summary of MIDI Note Numbers for Die-
rent Octaves. Englische Ausgabe der Wikipedia, http://www.harmony-
central.com/MIDI/Doc/table2.html, Am 8.IX.2008.

[27] Alexander Lerch. On the Requirement of Automa-


tic Tuning Frequency Estimation. Proceedings of 7th
International Conference on Music Information Retrieval, is-
mir2006.ismir.net/PAPERS/ISMIR06115_Paper.pdf, 2006.

[28] Ulrich Michels. dtv-Atlas Musik. Deutscher Taschenbuch Verlag GmbH


& Co. KG München, und Bärenreiter-Verlag Karl Vötterle GmbH & Co.
KG, 1998.

[29] Masanobu Miura, Seiji Kurokawa, Akihiro Aoi, Mitsuru Obana, and
Masuzo Yanagida. Improvement of Yielding Harmony to Given Melo-
dies. Proceedings of the International Symposium on Musical Acoustics,
2-S2-15:195198, 2004.

[30] James Anderson Moorer. Music and Computer Composition.


Communications of the ACM, 15(2):110113, 1972.

[31] Fran cois Pachet and Pierre Roy. Mixing Constraints and Objects:
a Case Study in Automatic Harmonization. Prentice-Hall, TOOLS
Europe:119126, 1995.

[32] Fran cois Pachet and Pierre Roy. Musical Harmonization with Cons-
traints: A Survey. Kluwer Publisher, 6(1):719, 2001.

[33] Jean-Fran cois Paiement, Douglas Eck, and Samy Bengio. Probabi-
listic Melodic Harmonization. Lecture Notes in Computer Science,
http://www.springerlink.com/content/95nx16v730344222/fulltext.pdf,
4013:218229, 2006.
94 LITERATURVERZEICHNIS

[34] Somnuk Phon-Amnuaisuk and Geraint A. Wiggins. The


Four-part Harmonisation Problem: A comparison bet-
ween Genetic Algorithms and a Rule-Based System.
Proceedings of the AISB '99 Symposium on Msuical Creativity, pages
2834, 1999.
[35] Lawrence R. Rabiner. A Tutorial on Hidden Markov Models and Se-
lected Applicaions in Speech Recognition. Proceedings of the IEEE, 77
issue 2:257286, 1989.
[36] Raúl Rojas. Theorie der neuronalen Netze. Eine systematische
Einführung. Springer Verlag, 1996.
[37] Stuart Russel and Peter Norvig. Künstliche Intelligenz, Ein moderater
Ansatz, 2. Auage. 2004.
[38] j. Sabater, J.L. Arcos, and R. López de Mántaras. Using Rules to
support Case-Based Reasoning for harmonizing melodies. Multimodal
Reasoning: Papers from the 1998 AAAI Spring Symposium (Technical
Report, WS-98-04). Menlo Park, CA, AAAI Press, pages 147151, 1998.
[39] Heinrich Schenker. Das Meisterwerk in der Musik. München, Wien,
Berlin: Drei Masken Verlag, 1925.
[40] Willow Software. Anvil Studio, Version 2008.05.02.
http://www.anvilstudio.com/, 2008.
[41] James Tenney and Larry Polansky. Temporal Gestalt Perception in
Music. Journal of Music Theory, 24(2):205241, 1980.
[42] Scott M. Thede and Mary P. Harper. A Second-Order Hidden Mar-
kov Model for Part-of-Speech Tagging. Proceedings of the 37th Annual
Meeting of the Association for Computational Linguistics, June 20-
26:175182, 1999.
[43] Michael A. Trick. A Tutorial on Dynamic Program-
ming. Computer Based Learning Unit, University of Leeds,
http://mat.gsia.cmu.edu/classes/dynamic/dynamic.html, 1998, aufge-
rufen am 8.IX.2008.
[44] Max Wertheimer. Über Gestalttheorie. Verlag der Philosophischen
Akademie, 1, 1925.
[45] Tillman Weyde. Lern- und wissensbasierte Analyse von Rhythmen.
Osnabrücker Beiträge zur Systematischen Musikwissenschaft, 5, 2003.