Version originale en anglais au format PDF ou HTML Traduit en mai 2002 par Joël Eymard pour http://la.trompette.free.fr
Optimisation informatique des cuivres par Wilfried Kausel (suite)
Représentation de la géométrie de l'instrument
Une représentation correcte de la géométrie
de l'instrument est déjà un point critique. La représentation
de l''instrument utilisée dans l'optimiseur assigne des structures de
données appelées segments aux parties physiques de l'instrument
comme l'embouchure, les coulisses, le pavillon, et cetera. Ces segments contiennent
des suites d'éléments coniques élémentaires décrits
par des paires de coordonnées représentant le diamètre
d et sa position x le long de l'axe du segment ou
en option l'incrément de diamètre et sa position relative. Chaque
variable de coordonnée (x ou d) est liée
à une instruction qui détermine si et comment (resp. de combien)
on permet à cette valeur d'être modifiée pendant l'optimisation.
En mélangeant des coordonnées absolues et relatives, on peut librement
spécifier l'insertion à un endroit donné de manchons cylindriques
ou coniques d'une certaine longueur. La position, la longueur et le diamètre
du manchon peuvent être laissés libres pour l'optimisation. En
laissant libre la dernière valeur de x d'un segment, on
permet l'optimisation de sa longueur. Cela peut être essentiel quand on
doit modéliser la coulisse d'accord d'un instrument. Un autre paramètre
d'optimisation qui affecte l'accord global est la température de l'air.
Elle peut être laissée libre entre des limites indiquées
comme les autres variables.
Faire des coordonnées géométriques d'un instrument des
variables d'optimisation est une façon très simple et souple de
donner à l'optimiseur assez de liberté pour trouver n'importe
quelle forme permettant d'atteindre un optimum. L'algorithme d'optimisation
de Rosenbrock est en effet capable de fonctionner avec ce haut degré
de liberté et, comme on le montrera ci-dessous, a donné de bons
résultats même avec 100 coordonnées variables ou plus. Les
méthodes d'optimisation génétiques n'ont pas bien fonctionné
avec autant de paramètres. Il s'avère que ni l'initialisation
standard, ni les méthodes de croisement et de mutation, ni la configuration
de paramètres standard des génomes à suite binaires ne
conviennent pour cette sorte d'optimisation des coordonnées.
A un niveau supérieur, les segments sont maintenant arrangés en
structures plus grandes comme dans la construction réelle des instruments.
Une configuration d'instrument, qui correspond à un certain doigté
des pistons est représentée par une structure de données
appelée "configuration".
La plupart des instruments permettent de modifier leurs longueurs acoustiques
au moyen de valves (pistons ou valves rotatives, NdT). Quand le musicien
actionne une valve, un segment de tube correspondant est inséré
à un certain endroit augmentant la longueur acoustique totale et faisant
baisser les fréquences de résonance de l'instrument. De cette
façon les gammes chromatiques peuvent être jouées même
dans le grave.
L'optimisation d'un instrument doit en tenir compte. Certaines parties comme
l'embouchure, la branche d'embouchure, la coulisse d'accord ou le pavillon contribuent
toujours à la longueur acoustique de l'instrument. Toute modification
de ces parties influencera également toutes les notes jouées quelle
que soit la position des valves. D'autres segments, les coulisses des valves,
sont seulement actifs quand la valve correspondante est actionnée.
Traiter les différentes combinaisons de valves d'un instrument comme
autant d'nstruments différents n'est pas une solution à moins
que les modifications des parties communes de l'instrument ne soient synchronisées
correctement. Si différentes combinaisons de valves ont été
optimisées séparément, il peut être impossible d'appliquer
les résultats ensemble à un instrument physique parce qu'ils pourraient
contenir des propositions de modifications contradictoires de la même
partie commune. Il est donc essentiel de traiter toutes les combinaisons de
valves en une seule fois.
Les configurations contiennent donc une liste ordonnée de références
de segments reflétant l'ordre des parties tubulaires de l'instrument
alignées le long de la longueur acoustique totale de l'instrument. Un
instrument à trois valves est représenté par huit configurations
différentes des segments. Souvent ces configurations sont notées
V0 (aucune valve actionnée - coulisses inactives), V1, V2, V3, V12, V13,
V23 et V123 (toutes les valves actionnées - toutes les coulisses insérées).
Calcul de l'impédance d'entrée
A chaque configuration est associée une table d'impédances
d'entrée qui est continuellement recalculée pendant l'optimisation
à chaque fois qu'un des segments impliqués est modifié.
L'impédance d'entrée en fonction de la fréquence est la courbe
qui décrit les caractéristiques importantes d'un instrument comme
la justesse, la réponse et même le son. Elle est calculée
en utilisant le modèle de ligne de transmission décrit ci-dessus.
Il faut noter que le rapport de phase entre la pression et le débit acoustiques
dans l'embouchure, qui est l'argument de l'impédance d'entrée complexe,
n'est pas pris en compte dans l'optimisation. C'est acceptable parce que l'information
de phase de la fonction complexe d'impédance n'est pas indépendante de
son amplitude. Dans un système de phase minimale elle peut être
déduite de l'amplitude par une transforamtion de Hilbert, en utilisant
la condition que la réponse impulsionnelle d'un instrument réel
doit être causale, ce qui signifie qu'il ne doit pas y avoir de réflexion
précédant l'impulsion d'excitation.
A la question de savoir si un système réel est vraiment un système
de phase minimale - du moins à la précision exigée par
l'application - on peut seulement répondre en comparant les phases mesurées
aux valeurs théoriques. Des résultats de mesure récents
ont de nouveau renforcé notre conviction que la différence entre
les phases réelles et les phases obtenues pour des systèmes de
phase minimale est en tous cas plus petite que l'incertitude sur les mesures.
Il a été déjà noté que la gamme de fréquence
du calcul est limitée par le modèle, parce qu'il inclut seulement
le mode fondamental d'une cavité ou d'un conduit. Quand les diamètres
augmentent cette condition est satisfaite seulement pour des fréquences
inférieures. Cela signifie en particulier que la région du pavillon
d'un instrument présentera des erreurs de modélisation aux fréquences
hautes. La limite supérieure de fréquence pour une trompette typique
est proche de 1500 Hz, ce qui est heureusement au-delà de l'étendue
des notes jouées.
Fonction objectif d'optimisation
Pour faire d'un programme d'optimisation plus qu'un hobby pour
son programmeur et peut-être pour quelques enthousiastes, il était
non seulement nécessaire de choisir des stratégies d'optimisation
efficaces et appropriées mais faciles à utiliser, mais aussi d'y
incorporer le maximum d'expertise exigée pour créer une fonction
objectif d'optimisation dans le programme. On a prévu une interface utilisateur
facile à comprendre et aussi simple que la fonctionnalité exigée
le permet.
Ce but a été réalisé au moyen "d'assistants"
qui délivrent l'utilisateur du besoin d'acquérir une connaissance
spéciale de la fonction objectif, tant qu'il demande au programme de
travailler sur que l'on considère comme une tâche "standard".
Si plus tard un utilisateur décide de s'y investir, le programme offre
la possibilité d'utiliser toute sa flexibilité.
Dans la fonction objectif d'optimisation toutes les spécifications pour
optimiser l'instrument sont pondérées et combinées. Un
cas simple est l'ajustement des pics d'impédance. Par la ligne de commande ou
en utilisant un éditeur de texte, l'utilisateur crée une table
des fréquences qui seront attachées à une certaine comfiguration.
Il faut fournir les valeurs-cible d'amplitude correspondantes. L'utilisateur
peut charger un fichier de résultats de mesure fournis par BIAS
[12]
, ou prendre une simulation précédente d'un instrument de référence.
Il peut bien sûr voir et éditer toutes les valeurs. Il choisit
toutes les entrées et assigne des pondérations et des attributs
"relatif" ou "absolu". Cela signifie que la fonction objectif
prend en compte soit les différences absolues normalisées entre
impédance réelle et impédance cible, soit les valeurs en pourcentage
normalisées de ces déviations.
Un autre cas est l'application d'objectifs de justesse. Un utilisateur expérimenté
peut assigner l'attribut "centré" à certaines fréquences
et spécifier quel pic d'impédance doit être "centré"
à telle fréquence. Il peut combiner de tels objectifs avec des
objectifs d'impédance ou avec un objectif de facteur de qualité
des pics de résonance associés. D'autres utilisateurs préféreront
lancer l'assistant "justesse" qui leur montrera les écarts
de justesse en "cents" de toutes les notes qui peuvent être
jouées en utilisant une combinaison de valves donnée. L'accord
global peut être ajusté et les objectifs de justesse peuvent alors
être spécifiés en cents ou en Hz pour certaines ou toutes
les notes. Alors l'optimisation peut démarrer.
Toutes les contributions à la fonction objectif (déviations normalisées
de la valeur assignée) sont élevées à une puissance
donnée appelée "progression" - plus cette puissance
est élevée, plus la pondération sera affectée aux
plus grandes déviations ; moins elle est élevée, plus les
pondérations seront réparties uniformément -, puis multipliées
par un coefficient de pondération spécifié par l'utilisateur
et additionnées pour obtenir le résultat final. Dans le cas idéal
ce résultat deviendra très petit pendant l'optimisation, le zéro
étant atteint quand tous les objectifs ont été parfaitement
atteints.
Introduction
Modélisation des cuivres
Modèle de ligne de transmission
pour l'optimisation
Les différents algorithmes d'optimisation
L'algorithme de Rosenbrock
Représentation de la géométrie
de l'instrument
Calcul de l'impédance d'entrée
Objectif de la fonction d'optimisation
Résultats d'optimisations
Références