tons locaux et contexte tonal : récap.
Problème détecté : pour choisir les meilleures tonalités locales , extract_bests aujourd’hui ne se concentre que sur le nombre d’altérations sans se préoccuper du contexte tonal, c’est seulement lors du départage par estimateLocal() que les distances tonales sont utilisées, mais dans un cadre lexicographique, ainsi si une tonalité locale est trouvée par extract_bests, permettant de réduire au maximum le nombre d’altérations dans une mesure, celle-ci sera choisie quelle que soit sa distance tonale aux précédentes!
—> Il faudrait un moyen de prendre en compte les distances tonales par rapport à la globale et à la locale précédente dès le shortlisting des tons locaux et pas seulement dans le processus de tie break. Exemple de cas problématique : Mib M ton global , mesure constituée de : do# la fa# mib puis mesure suivante ré ronde (c’est une modulation au relatif sol mineur, avec un do# de fonction V/V) . Alors la fonction extract_bests va décider à l’aveugle (c’est à dire sans savoir qu’on est en Mib M et donc qu’on a 3 bémols à l’armure) de la meilleure tonalité locale pour cette mesure et choisir celle qui minimise le nombre d’accidents, à savoir MI M par exemple (le chemin do# la fa# ré# vaut alors 0). Comme c’est le meilleur nombre d’accidents possibles, aucune vérification de distances tonales ne sera accomplie par la fonction estimateLocal et ainsi l’algorithme épellera le mib avec un ré#, ce qui est faux.
|-> Une démarche possible pour éviter ces erreurs consiste à, une fois la tonalité globale trouvée, s’intéresser seulement aux chemins de meilleur coût. On les départage ensuite en induisant depuis leurs états associés une tonalité locale pour chacun d’eux. Après induction des tonalités locales, on peut tout simplement choisir le chemin donnant lieu à la tonalité locale la plus proche de la précédente et de la globale. |-> Une autre serait de laisser tomber extract_bests et de tout effectuer au sein de estimateLocals à l'aide de coûts combinant à la fois accidents et distances tonales