Un modèle informatique pour l'analyse de la diversité et de la coordination dans l’orchestration 1
par Charles de Paiva Santana et Didier Guigue


Tant que nous continuerons à nous concentrer presque exclusivement sur le monde de la « note », loin de la réalité du « son », notre technologie analytique restera en deçà des besoins de la création et de la recherche contemporaines. Illustration: Rafael Diniz pour L’Éducation Musicale.

Introduction
Le timbre instrumental et la texture musicale sont deux aspects d'une importance fondamentale pour comprendre la musique, que ce soit dans sa dimension historique, créative ou technologique. Dans la musique occidentale, nombre de grandes percées stylistiques et esthétiques se caractérisent par un changement significatif dans le type de texture musicale et technique instrumentale dominante.
La trajectoire historique, vue à travers l'utilisation d'une certaine texture prédominante, implique nécessairement de nouvelles possibilités technologiques ou créatives liées à la technique et à la qualité du son vocal et instrumental. À partir de compositeurs comme Jean-Philippe Rameau (1683-1764), Hector Berlioz (1803-1869), Ludwig van Beethoven (1770-1827) et Richard Wagner (1813-1883), le timbre instrumental et la texture musicale sont devenus de plus en plus partie intégrante de l'articulation formelle au sein d'une œuvre musicale. Dans les périodes modernes et contemporaines, où les éléments mélodiques et rythmiques, ou même la progression harmonique, ne sont plus les vecteurs principaux de la forme musicale, diverses pratiques de composition sont surtout définies par le modèle spécifique de texture et de sonorité qu'elles emploient.
Bien que la texture pointilliste et la Klangfarbenmelodie de la deuxième école de Vienne, les « nuages » de la micropolyphonie e György Ligeti (1923-2006) et les objets sonores liminales de la musique spectrale de Gérard Grisey (1946-1998) soient des thèmes communs dans la littérature spécialisée, peu de propositions pour une théorie systématique de la couleur sonore et de la texture comme vecteur de la forme musicale ont été mises en avant. Même lorsque nous examinons des partitions musicales où le son et la texture sont les matières premières essentielles de la construction musicale, nous les abordons avec des outils de représentation et de quantification qui n'ont pas la sophistication et la précision qu'exige le travail analytique, surtout si nous comparons ces outils avec ce qui est normalement employé en termes de hauteur, d'harmonie et de rythme.
Si quelques outils pratiques d'orchestration assistée par ordinateur ont été proposés récemment, la plupart des systèmes d'analyse assistée (symbolique), y compris des outils sophistiqués tels que Music21 de Christopher Ariza ou Hundrum de David Huron, ne proposent pas de modèles spécifiques pour l'observation détaillée des configurations texturales. La question du timbre est généralement reléguée à ce que permettent les formats MIDIet MusicXML. Tant que nous continuerons à nous concentrer presque exclusivement sur le monde de la « note », loin de la réalité du « son », notre technologie analytique restera en deçà des besoins de la création et de la recherche contemporaines.
En réponse à ce que nous pourrions appeler une disparité entre le rôle prépondérant de la notion de sonorité dans la composition contemporaine et l'absence de modèles analytiques par les études musicologiques, nous avons développé une stratégie pour étudier concrètement le rôle du timbre et de la texture musicale en tant que véhicule de la forme musicale. Dans ce texte, nous souhaitons présenter le modèle global de notre approche, qui est un travail en cours, ainsi que la mise en œuvre de certains de ses aspects, notamment l'évaluation de l'hétérogénéité et de la diversité des configurations sonores.
Notre recherche s'appuie sur les considérations théoriques faites par Wallace Berry dans le classique Structural Functions in Music (1976) et sur la représentation numérique et la manipulation combinatoire subséquente, fondées sur la théorie mathématique des Integer Partitions, proposées par le compositeur brésilien Pauxy Gentil-Nunes (2009).
Notre stratégie propose :
Une représentation numérique générale qui permet l'abstraction et la manipulation informatique ultérieure de configurations texturales.
Une hiérarchie de « critères de dispersion », ou « situations texturales », qui permet de stratifier la surface musicale en différentes « composantes réelles ».
Une mesure qui permet de quantifier les relations d'hétérogénéité dans les configurations texturales: une mesure qui estime la diversité des ressources sonores utilisées pour la réalisation de configurations texturales.
Un modèle de « complexité relative des textures » basé sur la diversité de l'orchestration et la complexité de la répartition des composants réels dans une œuvre musicale donnée.
Les fonctions mettant en œuvre le modèle ont été programmées dans un progiciel (SOAL) pour OpenMusic, un environnement de composition assistée par ordinateur développé à l'Institut de Recherche et de Coordination Acoustique/Musique (IRCAM), et sous forme de Jupyter Notebook, utilisant le langage de programmation Python.

Principaux concepts et étude pré-analytique
Notre stratégie considère la texture musicale et spécialement l'instrumentation comme des aspects de l'expression musicale principalement abordés à travers deux perspectives complémentaires. La première perspective concerne ce que l'on pourrait appeler l'aspect normatif du code écrit, c'est-à-dire les questions liées aux instructions et aux décisions des compositeurs telles qu'elles apparaissent dans la partition musicale ou sont révélées dans une transcription. Elle est liée à ce que nous appelons dans le vocabulaire musicologique le niveau symbolique.
En général, les analyses basées sur la représentation symbolique peuvent traiter, grosso modo, des questions de grammaire compositionnelle et de notation musicale. L'analyse au niveau symbolique de l'orchestration et de la texture est la norme, car la partition nous permet d'accéder à des données qui seraient autrement difficiles à obtenir, notamment en ce qui concerne la composition précise de chaque voix ou partie instrumentale dans une configuration texturale ou orchestrale. Les informations facilement accessibles dans une partition musicale ou une transcription musicologique peuvent être très difficiles à obtenir par la simple écoute d'une performance ou par des moyens informatiques à partir d'enregistrements sonores réalisés par l’orchestre.
Le deuxième point de vue porte sur la réalité pratique et acoustique de la performance musicale. C'est-à-dire que la deuxième perspective, à caractère complémentaire, porte sur le résultat sonore ou la « sonorité » de ces prescriptions et instructions symboliques. Après tout, la façon dont une note ou une instruction instrumentale donnée sonne réellement fait également partie de ce qui stimule l'imagination des compositeurs pour les sélectionner et les structurer dans une conception formelle particulière. Les performances musicales peuvent être examinées, par exemple, au moyen des fichiers audio de leur enregistrement et des outils de traitement du signal.
En reconnaissant le poids et la complémentarité de ces deux facettes, nous espérons éviter les conclusions précipitées ou les surestimations lorsqu'une observation est faite en regardant principalement la partition ou principalement l'enregistrement d'une interprétation.
La discrétisation de la composition musicale en segments successifs et distincts sur le plan instrumental, tant dans le registre symbolique que dans le registre audio, joue un rôle central dans notre approche. Cela signifie que la partition musicale et les fichiers audio de l'enregistrement sont divisés en sous-sections pertinentes, qui, en fait, peuvent ou non correspondre à des hypothèses formelles plus traditionnelles. En d'autres termes, quand une composition est segmentée selon le timbre instrumental et la technique de jeu employés par le compositeur, elle peut coïncider avec la façon dont d'autres paramètres sont structurés, comme le contour mélodique et la progression harmonique, ou elle peut se révéler comme une dimension indépendante.
À titre d'exemple simple, on peut citer le Boléro de Maurice Ravel (1928), remarquable illustration de l'idée de placer l'orchestration au centre du développement musical alors que d'autres paramètres, tels que la hauteur, le rythme et le tempo, sont fixes. Dans la partition la plus reconnue du compositeur français, chaque fois que le thème en do majeur ou le contre-thème phrygien est repris, une nouvelle configuration orchestrale est déployée. Par conséquent, segmenter et isoler la forme orchestrale du Boléro de Ravel correspondrait à délimiter chaque succession mélodique, qui se produit toutes les 16 ou 18 mesures.
L'orchestration magistrale d'Anton Webern (1883-1945) du Ricercar a 6 (1935) de l'Offrande musicale de Jean Sébastien Bach divise son célèbre thème royal et ses contre-mélodies en plusieurs fragments, à chacun desquels une palette large et variée de couleurs orchestrales est mise en jeu. La présentation du thème de vingt-et-une notes, au tout début de la partition, est rendue par cinq configurations instrumentales uniques au cours de six fragments mélodiques (un cor solo avec sourdine, jouant doucement, est employé dans deux fragments différents) et, à partir de là, l'orchestration devient de plus en plus détaillée. Dans le cas de Ricercar, la segmentation et l'isolement de la forme orchestrale révèlent une relation beaucoup moins linéaire avec le matériau thématique et contrapuntique, bien que la manière particulière dont Webern les aborde soit fortement liée à son interprétation des caractéristiques structurelles internes de la composition originale.
La segmentation dans le domaine symbolique est réalisée en examinant d'abord la partition et en cataloguant chaque composante individuelle de la palette sonore de l'orchestre. Cela signifie que non seulement les instruments nécessaires pour jouer la composition sont identifiés, mais aussi chaque mode d'exécution indiqué dans la partition, y compris les techniques de jeu dites étendues, et les effets, tels que pizzicato, con sordina, harmoniques, flatterzunge, col legno, sul ponticello, etc. D'autres informations sont également collectées, comme le nombre de fois où la même ressource sonore peut être utilisée simultanément.
Nous appelons ce catalogue le Sonic Resource Index (SRI), et il prend généralement la forme d'une liste ou d'un tableau textuel (voir tableau 1). En suivant chaque changement dans l'orchestration, nous pouvons diviser la partition musicale en une séquence de blocs ou d'unités simples. Chacun de ces blocs est appelé Local Sonic Setup ou LSS en abrégé.

Tableau 1 : Indice de ressources sonores du De Natural Sonoris n°1 (1966) de Krzysztof Penderecki (1933). La partition précise 86 musiciens, y compris le nombre exact de cordes nécessaires pour chaque section. La partition indique un total de 60 effets sonores différents, dont 52 sons différents peuvent être joués simultanément.

instr. #musiciens #ressources max-sim.
4 fl. (2 picc.) 4 2 2
ob. 3 1 1
eh. 1 1 1
cl. 2 1 1
bcl. 1 1 1
sax. 2 1 1
bn. 3 1 1
cbn. 1 1 1
hn. 6 1 1
tpt. 4 1 1
tbn. 3 1 1
tba. 1 1 1
perc. 6 24 6
pf. 1 1 1
harm. 1 1 1
flexatone 1 1 1
vn. 24 8 8
vl. 8 8 8
vc. 8 8 8
db. 6 6 6
Total 86 60 52


Une fois que la LSS de la partition a été établie, les fichiers audio pertinents de ses représentations sont divisés de manière appropriée en sections. Chacun de ces segments de fichiers audio est appelé Local Audio Unit (LAU). La LSS et la LAU peuvent être étudiées à l'aide d'un certain nombre de descripteurs numériques. L'analyse des LAU peut être effectuée en utilisant plusieurs algorithmes pour extraire les caractéristiques audio, telles que le centroïde spectral, le zero-crossing rate, la spectral roll-off, le MFCC, etc.
Une LSS peut être abordée, par exemple, en comptant les ressources sonores qu'elle utilise. À cette fin, nous avons développé une mesure, que nous appelons le nombre pondéré de ressources sonores ou WNR (Weighted Number of Sonic Resources). Une LSS peut également être examinée à l'aide d'une fonction appelée Relative Voicing Complexity (RVC), que nous décrirons plus loin dans ce document. Un certain nombre de descripteurs numériques pour la LSS et la RVC sont combinés pour obtenir une mesure de la complexité relative de l'orchestration et de la texture musicale.

La représentation numérique et l'analyse partitionnelle
Dans notre approche, la texture musicale est représentée par une liste imbriquée contenant des nombres entiers. Considérons par exemple la liste simple suivante : [2,1,2]. Elle peut se référer à un segment musical, où : 2 voix sont coordonnées dans une première « partie texturale » ; une couche intermédiaire est composée d'une seule voix et, enfin, 2 autres voix sont également coordonnées dans une troisième couche séparée. Cette configuration texturale pourrait, par exemple, dans le cas d'un quintette à vent, être matérialisée par : 2 instruments, un piccolo et un hautbois, jouant, disons, des dyades rythmiques staccato ; une clarinette unique jouant une partie différente et indépendante ; les deux instruments restants, un cor et un basson, assurent le registre inférieur tout en étant renforcés par une sorte de doublage ou de transformation contrapuntique.
C'est le cas d'un petit extrait, le début de la coda du deuxième mouvement du Quintette à vent (1924) d'Arnold Schoenberg (1874-1951), op. 26, mesures 360-362, illustré dans la figure 1 ci-dessous.

 


Figure 1 : Mesures 360-362 du quintette à vent d'Arnold Schoenberg, op. 26. L'extrait peut être représenté par la liste [2,1,2].

Dans l'extrait dodécaphonique ci-dessus, nous pouvons observer que le piccolo et le hautbois peuvent être vus de manière analytique, et peut-être entendus, comme une strate homogène de la texture, car ils partagent les mêmes rythmes, articulations et expressions. Même s'ils jouent sur des hauteurs différentes, ils contribuent à la perception de l'homogénéité par le biais d'un mouvement contraire coordonné (formes sérielles inversées).
On pourrait dire exactement la même chose de la couche texturale constituée par le cor et le basson. Bien que différents de la première strate, ils partagent également le même rythme, la même articulation et la même expression, établissant ainsi une autre composante distincte de la surface musicale. La couche intermédiaire, menée par la clarinette, reçoit un caractère différent, avec des attributs soigneusement choisis pour en ressortir comme une autre composante de la texture musicale.
À ce titre, dans de telles configurations texturales, n observe des relations de coordination, d'homogénéité, se produisant en même temps que des relations d’hétérogénéité. .
Il va sans dire que la liste ordinaire de trois nombres entiers présentée ci-dessus pourrait représenter un nombre infini de situations texturales, et pas seulement celle de l'exemple de Schoenberg. En outre, il n'est pas toujours facile de déterminer de manière catégorique ce qui est coordonné ou non ; il existe des gradations de ce qui peut être considéré comme uniforme ou hétérogène.
Notez que la liste [2, 1, 2] est équivalente à la liste non ordonnée [2, 2, 1], les deux signifiant une configuration texturale de trois strates de deux paires et une seule ressource sonore. Ainsi, l'extrait ci-dessous du Pierrot Lunaire, Raub, mesures 16-17, a une configuration texturale analogue à celle de l'extrait du quintette à vent ci-dessus :


Figure 2 : Mesures 16-17 du Pierrot Lunaire d'Arnold Schoenberg, Raub. L'extrait fait référence à une autre instance de la configuration sonore [2,1,2] ou [2,2,1].

Dans cet extrait, la flûte et la clarinette, le violon et le violoncelle, et le récitant matérialisent les trois strates de la configuration texturale [2, 2, 1]. Si, dans l'extrait du quintette à vent, l'homogénéité des parties coordonnées était renforcée par un mouvement contraire, ici l'homogénéité des strates coordonnées (fl. et cl., vln. et vc.) est cimentée par leur timbre, car elles font partie des mêmes familles d'instruments (bois contre cordes contre voix). On pourrait dire que les composants réels sont formés par l'homorythmie et l'homochromie (c'est-à-dire ayant une couleur de son similaire ou identique).
Chaque strate, ou couche, d'une configuration texturale est appelée un composant réel. il peut se référer à une ou plusieurs ressources sonores coordonnées. (voir Berry, 1987).
En fait, il existe dix-huit façons de représenter le nombre 5 comme la somme d'autres nombres entiers. Cela signifie que si un compositeur veut employer jusqu'à cinq ressources sonores sur un passage musical donné, il peut choisir de les disposer dans l'une des dix-huit combinaisons de groupes et de parties individuelles. Ces combinaisons comprennent également toutes les partitions des sous-groupes, ainsi que les combinaisons de quatre, trois et deux ressources sonores simultanées plus une ressource seule. Les partitions d'un groupe de cinq ressources sonores maximum et leur représentation numérique sont indiquées dans le tableau ci-dessous :

[5] [4,1] [3,2] [3,1,1] [2,2,1] [2,1,1,1] [1,1,1,1,1]
[4] [3,1] [2,2] [2,1,1] [1,1,1,1]
[3] [2,1] [1,1,1]
[2] [1,1]
[1]


Maintenant, examinons la liste [1, 1, 1, 1, 1]. Elle est longue de cinq éléments et décrit une texture de cinq ressources sonores jouant des rôles indépendants. Cette configuration est plus complexe que, disons, la configuration représentée par la liste [2, 1, 1].
Le cas le plus simple pour une texture composée d'un nombre quelconque de ressources sonores est la liste simple [1] qui représente une texture composée d'un seul instrument solo. Ainsi, nous disons que la complexité de la texture est fonction de son degré de dispersion et de la valeur totale de ses composantes réelles.
Pour calculer les taux d'interdépendance et d'indépendance, désignés ci-dessous comme les degrés d'agglomération et de dispersion, respectivement, d'un Local Sonic Setup donné, nous devons d'abord compter chaque combinaison, ou plutôt chaque relation possible de deux éléments quelconques du LSS. Nous pouvons le faire en nous référant à la formule générale pour trouver le nombre de combinaisons de p objets à partir d'un ensemble de n objets, connue sous le nom de n choose p. Nous ferons référence au nombre total de paires uniques de toute ressource ou composant réel d'une configuration donnée comme 𝑇2 ou simplement 𝑇. En résolvant n pour p égal à 2, nous le définirons comme une fonction de la manière suivante :

 

Le nombre total de paires uniques, successives, T2(T) lorsque n est mis en correspondance avec les huit premiers entiers positifs, soit 1, 2 ... 8 est égal à 0,1,3,6,10,15,21,28 (cf. Gentil-Nunes, 2009).
Il s'ensuit que, pour calculer le taux d'interdépendance, ou d'agglomération, d'une LSS donnée, nous devons faire la somme de la valeur 𝑇2 de chacun de ses composants. Par exemple, le taux d'agglomération de la configuration représentée par la liste [2,1,1] est donné par (𝑇2 (2) + 𝑇2 (1) + 𝑇2 (1)), ce qui correspond à 1. Il est formellement défini par la fonction de somme suivante

où la liste [𝑎0 ... 𝑎𝑟-1] représente une LSS, 𝑎i chacun de ses éléments, c'est-à-dire ses composantes réelles, et r la longueur de la LSS. Nous désignons le taux de dispersion d'une LSS donnée comme étant la différence entre la valeur 𝑇2 e sa somme par son taux d'agglomération :

où 𝜌 est une somme, le nombre de ressources sonores de la LSS
La figure 3 montre les taux de dispersion et d'agglomération pour une section (mesures 56-73) des Variations pour orchestre d'Anton Webern, op. 30.

Les critères de dispersion
La détermination des relations d'hétérogénéité et d'homogénéité présentes dans une configuration texturale donnée, lorsqu'elle est effectuée de manière trop déterministe, peut être limitative et naïve. L'un des plus grands défis de la méthodologie présentée ici est de la rendre suffisamment flexible pour être applicable dans des situations réelles d'analyse musicale, sans qu'elle devienne totalement arbitraire ou applicable sur une base purement ad hoc.
Il faut trouver un moyen d'incorporer dans le modèle une gradation ou un degré de confiance dans la classification d'une configuration sonore donnée comme étant plus homogène. La représentation pourrait comprendre, par exemple, les critères pris en compte et leur poids respectif pour qualifier les configurations texturales.

 


Figure 3 : Valeurs d'agglomération et de dispersion pour les Local Sonic Setups successifs des mesures 56-73 d'après les Variations pour orchestre op. 30 d'Anton Webern.

C'est pourquoi nous avons mis en œuvre une stratégie provisoire et expérimentale pour traiter les situations où des aspects autres que la coordination rythmique s'avèrent plus importants pour l'analyse. Lors de l'analyse de telles situations, le musicologue organise, dans un ordre hiérarchique, les aspects, ou paramètres, de la surface musicale, qui étaient importants pour déterminer les différentes strates des configurations texturales. Pour chaque segment de la composition considérée, un critère approprié est attribué.
En nous inspirant de Wallace Berry (1987), nous proposons la liste suivante de critères de dispersion, classés par poids :
Hétérochromie dominante : lorsque la stratification des ressources sonores est soutenue par le timbre et la famille instrumentale.
Hétérorythmie dominante : lorsque les ressources sonores sont stratifiées en composantes réelles basées sur la coordination rythmique, mais non sur la couleur sonore. Elle peut être soutenue par d'autres aspects comme la dynamique et l'articulation.
Hétérocinésie mélodique : lorsque la coordination rythmique ne peut être déterminée et que les composantes réelles sont différenciées principalement par la directionalité des hauteurs.
Hétéroarthrie : lorsque la coordination rythmique ne peut être déterminée et que les composantes réelles partagent la même articulation (ex. : composante réelle legato contre composante réelle staccatto).
Hétérophonie : lorsque la texture est homocinétique et homorythmique, mais que les composantes réelles peuvent être distinguées sur la base des variations entre les intervalles mélodiques.
Chaque critère correspond à un nombre entier, le poids étant inversement proportionnel à la magnitude, c'est-à-dire que l'hétérochromie correspond à 1, l'hétérorythmie à 2, etc. Les trois derniers critères sont nettement moins courants. Dans la plupart des situations analytiques, seuls les deux premiers critères sont utilisés.
En tenant compte des critères ci-dessus, la représentation texturale des exemples précédents peut être adaptée de la manière suivante :
Le quintette à vent de Schoenberg, mesures 360-362 : [[2,1,2],2] signifiant [[Picc + Ob, Cl, Hn + Bn], “Hétérorythmie"].
Pierrot Lunaire, Raub, mesures 16-17 : [[2, 1, 2], 1] signifiant [[Fl + Cl, Vn + Vc, V], “Hétérochromie"].

Les fonctionnalités mises en œuvre
La Sonic Object Analysis Library (SOAL) est une bibliothèque externe OpenMusic que nous développons à l'Université de Campinas (UNICAMP, État de São Paolo, Brésil). Elle est conçue pour être utile à toute une série de fins analytiques et soutient une approche top-down.
La bibliothèque est modulaire et permet l'intégration de nouvelles fonctionnalités. SOAL facilite l'identification et l'analyse des structures musicales en comparant les qualités sonores relatives d'une séquence de configurations et en les représentant par un vecteur de complexité relative (de 0 à 1, du plus simple au plus complexe).
Dans cette section, nous décrivons une partie des outils que nous avons mis en œuvre dans le paquet SOAL dans le cadre du modèle d'analyse de l'orchestration et de la texture.

The Weighted Number of Sonic Ressources (Le nombre pondéré de ressources, WNR)
Un segment employant quatre ressources sonores coordonnées avec une autre jouant un rôle indépendant est représenté par la liste [4, 1] ; pour calculer combien de ressources jouent dans cette configuration, il suffit d'additionner la liste, ce qui donne 5. Le premier argument dont WNR a besoin est une séquence de ces sommes, ou le taux de ressources sonores par LSS.
La fonction WNR demande également un second argument. Il se réfère à la quantité de ressources pouvant être jouées à une configuration donnée (déterminé par le SRI). Dans l'exemple ci-dessus, la configuration [4, 1] employant 5 ressources pourrait faire partie d'une pièce nécessitant un effectif instrumental beaucoup plus important. Si cette configuration emploie 5 ressources sur un total de 20 possibles, cela signifie qu'elle ne désigne que 25 % de ce total. La fonction WNR calcule alors les rapports entre les ressources utilisées et le total des ressources.
La fonction met toutefois en œuvre un traitement supplémentaire : les logarithmes des termes sont utilisés pour pondérer les quotients. Cela permet d'atténuer les ratios des structures où seul un petit nombre de ressources est utilisé. Cet artifice permet de repérer les points les plus élevés des configurations denses sur un graphique [plot] WNR et modélise potentiellement la façon dont nous percevons réellement ces changements.
Notez que le taux de ressources par LSS (premier argument) ne doit pas être supérieur aux ressources totales (deuxième argument).

The Relative Voicing Complexity (Complexité relative de la conduite des voix, RVC)
La relative voicing complexity s'articule autour du calcul des taux d'agglomération et de dispersion. Un de ces rapports peut être choisi pour calculer une valeur pondérée en fonction du critère de dispersion et du nombre de critères considérés dans l'analyse. Le résultat de cette pondération est le principal résultat de la fonction. La figure 4 montre la fonction en cours d'exécution sur un patch OpenMusic.
Les dix valeurs de sortie fournies par la fonction sont :
(i) les agglomérations ;
(ii) les agglomérations négatives ;
(iii) les dispersions ;
(iv) une mesure expérimentale que nous appelons tendance texturale ;
(v) les rapports successifs d'agglomération sur le nombre de paires ;
(vi) les rapports successifs de dispersion sur les nombre de paires ;
(vii) les rapports successifs de l'évolution texturale sur le nombre de paires ;
(viii) l'agglomération, dispersion ou tendance texturale pondérée par le critère de dispersion et nombre de critères ;
(ix) l'agglomération normalisée, dispersion, ou tendance pondérée par le critère de dispersion choisi et le nombre de critères; et
(x) le nombre de paires uniques utilisé par l’analyse.


Figure 4 : Patch OpenMusic avec le prototype de fonction soal-texture-complexité utilisé pour analyser les mesures 56-82 des Variations pour orchestre d'Anton Webern, op. 30.

The relative setup complexity (La complexité relative du setup, RSC)
Le raisonnement à la base de la fonction Relative Setup Complexity repose sur le fait que le nombre de composants réels (et de combinaisons par paires) avec lesquels une configuration peut être structurée est déterminé par le nombre de ressources sonores disponibles. Par exemple, dans un extrait musical où seules deux ressources sonores sont utilisées, comme dans un duo, il y aura beaucoup plus de chances que leurs parties aient un degré d'indépendance plus élevé que dans un tutti de soixante instruments, ce qui n'empêchera pas la texture d'un tel duo de rester limitée malgré la plus grande indépendance.
Par conséquent, les estimations calculées avec la fonction Relative Voicing Complexity ne sont pertinentes que si elles sont faites en interaction avec celles obtenues par le nombre pondéré de ressources.
C'est pourquoi nous utilisons la sortie de la fonction WNR pour « moduler » les valeurs renvoyées par RVC, de la même manière que nous le faisons avec la technique sonore de « modulation de fréquence ». Elle peut être décrite par l’équation
SRC = WNR + (WNR × RVCw) × tw
w, est un poids, un pourcentage du modulateur RVC, et t est la durée.

SOAL partitional analysis
Les mesures précédentes sont combinées pour former la fonction SOAL partitional analysis, qui est la principale composante de notre mise en œuvre. Elle produit toutes les mesures significatives proposées par le modèle. Elle attend comme paramètres d'entrée la liste combinée des arguments utilisés pour les fonctions RVC, RSC et WNR.
Figure 4 : Patch OpenMusic avec le prototype de fonction soal-texture-complexité utilisé pour analyser les mesures 56-82 des Variations pour orchestre d'Anton Webern, op. 30.
La fonction, en conséquence, renvoie le nombre de sorties de la fonction RVC, ainsi que la sortie RSC triée et non triée (zippée avec des numéros de mesure). Le code de cette fonction est donné dans la listings 1 ci-dessous.

Conclusions
Notre modèle expérimental d'analyse assistée par ordinateur propose une stratégie pour évaluer le rôle de l'orchestration et de la texture musicale dans la structuration de la forme musicale. Il opère en examinant le niveau symbolique des prescriptions de la partition et le niveau acoustique de la musique interprétée. L'analyse que nous proposons fait appel à une application de la théorie des partitions. Nous avons décrit comment collecter et formater les données de la partition, son contexte mathématique, le fonctionnement de la fonction mise en œuvre et le type de résultats qu'elle peut produire.
Nous avons déjà appliqué ce modèle dans un certain nombre d'études de cas comme la Symphonie op. 21 d'Anton Webern, la Sinfonia em Quadrinhos d'Hermeto Pascoal et Les Boréades de Jean-Philippe Rameau.
La branche audio de notre méthode sera le principal point d'investigation dans les travaux futurs, ce qui implique le choix, l'importation, le développement et la mise en œuvre de descripteurs d'audio features appropriés. L'impact de la durée d'une LSS sur la perception musicale globale devrait également être traité de manière appropriée dans les prochaines étapes de notre travail. Sur la base de nos premiers résultats expérimentaux, nous espérons que notre outil aidera les musicologues à jeter un nouvel éclairage sur le rôle de l'orchestration dans la structuration de la forme musicale.

Remerciements
Cette recherche est soutenue par la Fondation de recherche de l’État de São Paulo (FAPESP) dans le cadre de la subvention 2018/04229-6 et par le Conseil national brésilien pour le développement scientifique et technologique (CNPq).

Références
Andrews, G. (1984) The theory of partitions. Cambridge University Press.
Berry, W. (1987) Structural functions in music. Dover, New York.
Gentil-Nunes, P. (2009) Análise particional: uma mediação entre composição musical e a teoria das partições. Ph.D. Thesis. Universidade Federal do Estado do Rio de Janeiro.

1. def soal_partitional_analysis (partitional_analysis,
2. total_resources,
3. number_of_criteria,
4. factor,
5. bar_labels,
6. mod_weight,
7. option):
8.
9. partitions = texture_dispersion(partitional_analysis)
10. resources_per_segment = resources_per_lss(partitions)
11. criteria_of_dispersion_per_segment = order_number(partitional_analysis)
12. voicing_complexity_multi_values = voicing_complexity(partitions,
13. resources_per_segment,
14. criteria_of_dispersion_per_segment,
15. number_of_criteria,
16. factor,
17. option)
18. wnr = weighted_number_of_resources(resources_per_segment, total_resources)
19.
20. # Outputs
21. layers_per_segment = number_of_real_components(partitions)
22. max_total_pairw_comb = voicing_complexity_multi_values['total_pairwise_combinations']
23. agglo_per_segment = voicing_complexity_multi_values['agglomerations']
24. neg_agglo_per_segment = voicing_complexity_multi_values['negative_agglomerations']
25. disp_per_segment = voicing_complexity_multi_values['dispersions']
26. tendency_per_segment = voicing_complexity_multi_values['tendency']
27. agglos_over_t_resources = voicing_complexity_multi_values['agglomerations_over_t_resourc es']
28. disps_over_t_resources = voicing_complexity_multi_values['dispersions_over_t_resources' ]
29. tends_over_t_resources = voicing_complexity_multi_values['tendency_over_t_resources']
30. weighted_option = voicing_complexity_multi_values['weighted_option']
31. norm_weighted_option = voicing_complexity_multi_values['norm_weighted_option']
32. rsc = relative_setup_complexity(wnr, weighted_option, mod_weight)
33. sorted_rsc_and_bar_labels = sort_rsc_output_descendingly(bar_labels, rsc)
34.
35. print(factor)
36.
37. return {'wnr' : wnr,
38. 'lay' : layers_per_segment,
39. 'max' : max_total_pairw_comb,
40. 'aggl': agglo_per_segment,
41. 'negg': neg_agglo_per_segment,
42. 'disp': disp_per_segment,
43. 'tend': tendency_per_segment,
44. 'aggt': agglos_over_t_resources,
45. 'dist': disps_over_t_resources,
46. 'tent': tends_over_t_resources,
47. 'weig': weighted_option,
48. 'neig': norm_weighted_option,
49. 'rsc' : rsc,
50. 'srsc': sorted_rsc_and_bar_labels}

Listings 1: Code Python implémentant la fonction SOAL Partitional Analysis, le principal composant de notre mise en oeuvre.

Charles de PAIVA SANTANA et Didier GUIGUE

 

© L'ÉDUCATION MUSICALE 2021

LISP dans Max:
Exploration de la Composition assistée par ordinateur en temps réel
Julien Vincenot

Julien Vincenot (https://julienvincenot.com/) est compositeur et chercheur, actuellement en doctorat de composition à l’université de Harvard sous la direction de Chaya Czernowin et Hans Tutschku. Spécialiste de la composition assistée par ordinateur (CAO, ou CAC: computer-aided composition), son introduction donne un bel aperçu de l’historique de la discipline et de ce qu’elle est devenue aujourd’hui. Nous avons conservé le deuxième chapitre qui s’adresse à un lecteur spécialisé. Le troisième chapitre présente la librairie MOZ-LIB, qui est au contraire destinée aux débutants en CAO, et qu’il présentera plus en détail dans le prochain numéro.
Ce texte est la traduction d'un article présenté lors de l'International Computer Music Conference organisée au Conservatoire de musique de Shanghai en Octobre 2017.

ABSTRACT L'auteur décrit une stratégie visant l’implémentation d’applications Common Lisp pour la composition assistée par ordinateur au sein de Max, pour enrichir les possibilités offertes par la bibliothèque bach. En parallèle, une discussion plus large est ouverte sur l'état actuel de la discipline, et certaines mises en application sont présentées.

1. INTRODUCTION Ce qu’on appelle aujourd’hui composition assistée par ordinateur (CAO) existe depuis des décennies. Après les pionniers de la musique algorithmique, l'émergence des premières interfaces graphiques a permis à la discipline de se développer dans plusieurs directions. La CAO existe aujourd'hui sous différentes formes, différents langages et différents outils mis à la disposition des compositeurs.
Cette tendance s'est cristallisée autour d’environnements de programmation visuelle tels que OpenMusic (OM) et PWGL, tous deux issus du programme PatchWork (ou PW) conçu par Mikael Laurson à la fin des années 1980 [5]. Une des spécificités de cette famille de programmes, mais aussi celle de nombreuses autres depuis lors1 , est que son intégralité est construite sur le même langage : Common Lisp2 .
Depuis les débuts de l'intelligence artificielle, Lisp a toujours été considéré comme un langage particulier, et il ne fait pas l’unanimité des développeurs professionnels. Cependant, l'intérêt des musiciens n'a jamais complètement décliné. Cela est probablement dû à la facilité inhérente à Lisp de représenter, par le biais de listes imbriquées (voir fig. 1), les structures hiérarchiques de la notation musicale, mais aussi tout type de code conceptuel. Lisp possède par ailleurs plusieurs atouts : sa syntaxe claire et élégante, son efficacité à travailler avec la récursion (un concept puissant qui a de nombreuses applications concrètes dans le domaine musical), et sa capacité à générer du code de manière dynamique par le biais de macros.

 


Figure 1. Un objet Score dans PWGL et sa représentation interne sous la forme d'une liste ou d'un arbre de liens Lisp.

On pourrait dire que les innovations les plus récentes en matière de systèmes interactifs et traitement du son en temps réel, ainsi que le développement de divers modes de représentation et de contrôle, ont poussé cet outil à l’arrière-plan de la musique par ordinateur. D'une certaine manière, cela est compréhensible, car les approches purement symboliques, principalement dédiées à la notation traditionnelle, concernent une minorité de musiciens.
Néanmoins, on peut observer aujourd'hui un réel intérêt pour le renouvellement de ces paradigmes. La CAO comme discipline traverse une phase de transition, avec l'émergence de nouveaux outils orientés vers le temps réel, l'interactivité et des performances telles que le "mode réactif" dans OpenMusic [4], et bien sûr la librairie bach pour Max, développée par Andrea Agostini et Daniele Ghisi [1].
Tous ces développements récents sont prometteurs et nous ne pouvons pas encore imaginer les applications qui en émergeront, en particulier pour la conception de partitions et formes ouvertes/génératives en composition, et pour les installations interactives en particulier. Mais surtout, ils redéfinissent profondément l'accès à ces outils pour le travail "hors temps" du compositeur, ainsi que la distance entre concept et réalisation.

2. CAO EN LISP TEMPS-RÉEL
2.1. Lisp vs librairie bach
Toute mon activité de compositeur, au cours de la dernière décennie, a évolué autour de PWGL. Je ne l'utilise pas seulement comme un moyen de générer et de transformer des précompositions mais aussi comme un espace de travail, favorisant une certaine lenteur, un éloignement du matériau, afin de m’aider à penser la musique en général [7]. Comme OM, PWGL peut être considéré comme un environnement visuel pour programmer en Lisp, donc j'ai fini par apprendre à programmer directement en code Common Lisp, et c’est devenu pour moi un moyen très naturel de manipuler des idées musicales.
Ma première approche de la librairie bach a été problématique, compte tenu de ma pratique en CAO jusqu'à présent. Bien qu'il emprunte une partie de ses références à l’univers Lispien, il a été clairement conçu par ses créateurs avec d'autres paradigmes à l'esprit, assez loin du Lisp. La proximité avec la famille PW n'était qu'une façade, et j'étais réticent à m’y plonger plus sérieusement. Cependant, alors que je concevais le prototype d'un ensemble d'outils pédagogiques qui allait devenir MOZ'Lib (voir ci-dessous), j'ai été de plus en plus séduit par les immenses possibilités de la librairie, en termes d'interactivité et de composition exploratoire.
Ce n'est donc que plus tard que j'ai réalisé son pouvoir caché en tant que langage. bach s'appuie fortement, comme principale structure de données, sur ses bien nommées "lisp-like linked lists" (ou lllls), qui empruntent la structure parenthésée de Lisp, Structure fondamentale, comme je l'ai déjà expliqué, pour représenter des données musicales de manière hiérarchique. Mais les lllls ont également une caractéristique inattendue : elles peuvent être "détournées" pour générer un code Lisp complet en temps réel.

2.2. Une langue de plus pour Max ?
A ce stade, on peut s'interroger sur l'intérêt d’introduire un langage en apparence désuet tel que le Lisp dans Max. En plus de la possibilité d'écrire de nouveaux objets en C avec le SDK dédié, les utilisateurs de Max ont déjà accès à plusieurs langues intégrées : Gen~, Lua, Javascript, Node.js et Java. Ce qui s'est avéré très utile lorsqu’on se heurte aux limites de la programmation visuelle, en particulier dans le cas des structures de contrôle telles que les boucles et la récursion.
Comme nous le verrons plus loin, offrir à Max un pont stable avec Common Lisp n'enrichit pas seulement les possibilités de la librairie bach -- lui donnant ainsi accès à 40 ans de formalisation et de techniques de composition, à partir de plusieurs paradigmes esthétiques et informatiques -- mais permet également de “ressusciter” une myriade de pratiques historiques qui étaient limitées aux environnements de travail en "temps différé” (donc non en temps réel).
En effet, Lisp a déjà été accessible dans Max grâce à une bibliothèque antérieure, MaxLISPj3 , développée par Brad Garton. Dans cette approche, l'interprète Lisp, ABCL (Armed Bear Common Lisp), une implémentation basée sur une machine virtuelle Java, a été encapsulée dans l’objet mxj et tournait directement dans Max. Il y avait donc un risque de ralentissement ou même de crash de Max en cas de mauvaise programmation. En outre, l'auteur a souligné que la stabilité de son implémentation n'était pas garantie en cas de calculs lourds. Enfin, la sortie de MaxLISPj ne pouvait pas dépasser 2 000 caractères en raison de la limite des messages Max, il était donc impossible d'évaluer des structures musicales complexes. Toutes ces raisons justifient la recherche d'une autre approche4.

2.3. Comment formater des expressions Lisp avec bach
Afin de générer facilement du code Lisp avec la librairie bach cet article propose une méthode assez simple. Le point de départ est l'objet bach.join (anciennement bach.append), qui est un équivalent de la vénérable fonction LIST en Lisp. Comme le montre la figure ci-dessous, l'objet a besoin de plusieurs arguments et attributs afin de formater correctement la notation Lisp, ou s-expressions. Premièrement, le nombre d'entrées doit tenir compte du nombre d'arguments en faveur de la s-expression, y compris le nom de la fonction elle-même. Donc (+ 1 2) nécessitera un bach.join avec 3 entrées.
L'attribut @set permet d'initialiser les arguments pour la liste : ici, nous définissons le nom de la fonction, bien sûr, mais aussi des constantes si nécessaire. Les deux attributs restants, @triggers 0 et @outwrap 1, permettent de s'assurer que chaque sortie est "hot" (c'est-à-dire qu'elle peut déclencher une évaluation), et que la liste qui en résulte est respectivement entre parenthèses. Il faut comprendre à ce stade que les objets bach, comme bach.join, n'émettent pas de messages Max standard, mais une sorte de pointeur appelé format "natif". Cela permet aux objets bach d’échanger lllls sans pratiquement aucune limitation de la taille ou la profondeur.


Figure 2. Formatter du code Lisp avec bach.join

Dans cet exemple, la liste est convertie au format "texte", avec l'objet bach.portal, uniquement à des fins d'illustration. Deux objets bach.join sont combinés pour produire un s-expression, prêt à être envoyé à un interprète Lisp. La modification des valeurs dans les cases numériques mettra immédiatement à jour l'expression-s, transformant les constantes en variables. De la même manière, on pourrait entrer un symbole ou une liste pré-formatée à l'aide de la fonction de citation, en évitant que l'interprète ne les confonde avec un nom de fonction incorrect.5

2.4. Évaluations à la volée
De toute évidence, la génération dynamique de code Lisp à la volée a peu d'intérêt s’il ne produit aucun résultat. Après plusieurs essais6 , une stratégie nécessitant l'utilisation de SBCL (Steel Bank Common Lisp)7 en parallèle avec Max a été conçu. L'interpréteur Lisp est appelé dans Max via une interface en ligne de commande, avec l'aide de l’external shell8 sur macOS (une approche similaire est envisagée pour Windows 10). À ce stade, l'objet bach.write est utilisé pour transcrire le code généré en un fichier texte temporaire, avec l’extension .lisp. Cette opération est assez immédiate et il n’y a pas de limite à la taille du script, grâce au format lllls. Le script est alors prêt à être évalué avec la commande shell suivante :
sbcl --script path-of-script.lisp
Pour recevoir le résultat dans Max, les choses se compliquent. En effet, l'objet shell renvoie une chaîne de caractères de taille limitée, que nous ne pouvons pas utiliser pour des résultats excédant quelques caractères. La solution à ce problème est d'écrire finalement le résultat de notre code dans un autre fichier temporaire, directement depuis SBCL. Pour ce faire, j’ai créé une simple abstraction Max, pw.eval-box, qui est au centre de la librairie MOZ (voir ci-dessous).
Son but est de compléter notre code Lisp juste avant qu'il ne soit envoyé au bach.write, en ajoutant quelques s-expressions. Ce supplément de code permet de s'en assurer :
- le paquet Lisp pour l'évaluation est défini par la fonction in-package, permettant de travailler avec une bibliothèque d’utilisateurs (voir ci-dessous) ;
- la variable globale *random-state* est initialisée à chaque évaluation, en empêchant que des processus aléatoires rendent toujours les mêmes valeurs;
- finalement, le résultat est inscrit dans un autre fichier temporaire à une place définie.
Chaque fois que l'évaluation est terminée, la deuxième sortie de l'objet en shell renvoie un bang. Ceci est utilisé pour déclencher un bach.read pour importer le contenu du fichier temporaire résultant. C'est maintenant à l'utilisateur de décider quoi faire avec ces nouvelles données : contrôle des processus en temps réel dans Max lui-même, ou affichage de résultat en notation standard avec bach.roll ou bach.score par exemple. Bien entendu, en cas de besoin, on peut interrompre toute évaluation sans fin en envoyant le message pkill à l'objet shell. De toute évidence, cette approche n'est pas en temps réel, en soi, puisqu'elle s'appuie sur des fichiers temporaires et doit attendre que la SBCL rende un résultat pour que Max le lise. La latence entre les deux étapes est minime selon notre expérience, même avec de lourds calculs, et reste assez proche de l'exécution en pur SBCL, ce qui permet l'implémentation du système à l'intérieur d’applications réactives. Toutefois, un certain retard peut être parfaitement acceptable -- en fonction du but de l'évaluation, de la complexité du scénario et de la durée du résultat -- si tant est qu’une telle complexité dans les algorithmes soit pertinente dans un contexte artistique donné.

2.5. Vocabulaire étendu
Comme mentionné précédemment, il est possible avec la pw.evalbox de spécifier un paquet de démarrage pour nos évaluations. Pour Common Lisp, les paquets sont un moyen de définir les espaces de noms lors du codage. Par exemple, cette fonction est fréquemment utilisé dans OM et PWGL pour éviter les conflits entre plusieurs bibliothèques d'utilisateurs, dans le cas où certaines fonctions ou variables porteraient le même nom. La richesse d'environnements comme ceux de la PWGL et de la OM réside précisément dans la multitude de bibliothèques qu'ils ont apportées au public au cours des dernières décennies, allant de techniques très personnelles de compositeurs tels que Tristan Murail (Esquisse) ou Brian Ferneyhough (Combine), à des systèmes plus généraux de génération ou d'analyse de la musique. Ce ne sont que quelques exemples d'une grande variété de recherche dont le champ d'application pourrait être considérablement élargi grâce aux interfaces en temps réel.
SBCL permet d'utiliser un environnement prédéfini à la place de celle prévue dans la distribution officielle. La fonction save-lisp-and-die (du paquet SBCL sb-ext) peut stocker n'importe quel ensemble de paquets, ou de fonctions et variables comme une image binaire, ou un fichier .core. Par conséquent, une image nouvellement générée comprendra toutes les fonctions standard de common lisp et LCCB, étendues par ces définitions d'utilisateurs. Par conséquent, l'évaluation d'un script ne nécessitera l'installation que de deux fichiers sur la machine : l'exécutable SBCL lui-même et le fichier .core. Afin de charger SBCL avec un environnement donné, il suffit d'exécuter la commande suivante :

sbcl --core path-of-image.core --script path-of-script.lisp
Comme ce système est opérationnel, un travail d'adaptation des bibliothèques existantes de PWGL a été effectué :
- Le PMC9 de Mikael Laurson, le solveur de contraintes original de PatchWork (également connu sous le nom de PWConstraints) ;
- le CMIde Jacopo Baboni Schilingi, Profil (avec Mikhail Malt) et Contraintes ;
- Morphologie de Frédéric Voisin, un ensemble d'outils pour l'analyse des séquences symboliques, en explorant divers paradigmes.
La plupart de ces bibliothèques s'appuyaient sur plusieurs fonctions iconiques commune à la fois à l'OM et au PWGL (et héritée de PatchWork), tels que flat-once, x-append ou posn-match, dont les définitions ont été extraites et adaptées des sources d'OpenMusic10 . Aujourd'hui, une partie importante de ce lexique partagé, ainsi que les bibliothèques susmentionnées peuvent être utilisées comme exemple de fichier binaire de base fourni avec MOZ'Lib. Les sources sont accessibles sur simple demande à l’heure actuelle et seront incluses dans le pack Max dans un futur proche.
Un autre développement à long terme est en cours, en collaboration avec les compositeurs Örjan Sandred et Torsten Anders, afin de mettre à disposition le Cluster-Engine à Max avec la même méthode. Ce nouveau solveur de contraintes11 , initialement développé par Sandred pour PWGL, permet de contrôler plusieurs voix musicales en parallèle en utilisant un réseau de moteurs de contraintes semi-indépendants --un pour chaque paramètre de chaque voix, y compris la structure métrique, les hauteurs et les rythmes. Les résultats de cette recherche, en termes de temps, de calcul et de flux de travail, sont déjà très prometteurs, et seront à terme l'objet d'une publication complète.

3. Applications
3.1. Une CAO intuitive pour enseigner la composition
Comme nous l'avons déjà mentionné, le besoin d'une interface Lisp appropriée dans Max est apparu lors du développement de MOZ'Lib12 , un ensemble expérimental d'outils pédagogiques, conçu pour explorer simultanément l'écriture musicale, la création et la programmation informatique.
La librairie comprend plusieurs modules sous la forme de bpatchers - inspirés des modules BEAP et Vizzie apparus avec Max 7 - et principalement basés sur la librairie bach pour son interface. Chacun de ces modules représente une idée ou technique de composition, permettant à l'utilisateur d'interagir par diverses interfaces intuitives. Bien entendu, tous les modules peuvent être combinés entre eux, souvent de manière inattendue, pour imaginer et réaliser de nouvelles idées musicales.
Parmi ces modules, plusieurs n'auraient pas pu être mis en œuvre sans l'implication de Lisp. Par exemple, plusieurs techniques ont été directement empruntées aux librairies de Jacopo Baboni Schilingi (cf. ci-dessus). D’autres parties utilisent Lisp comme raccourci pour écrire des fonctions qui semblaient trop complexes ou trop spécifiques pour être traitées uniquement avec les objets bach. C'était le cas du module de rotation (voir fig. 3), qui utilise le solveur PMC de Mikael Laurson pour produire facilement une permutation circulaire d'une mélodie qui maintient de manière heuristique la forme globale de l’entrée d’origine.


Figure 3. Un simple patch utilisant trois modules de MOZ’LIB: draw_notes, see_notes et rotations

3.2. Renouveler une pratique avec un code préexistant
L'intérêt principal de cette approche est, à mon avis, d’étendre l'utilisation même des techniques de composition qui ont été initialement conçues pour un travail en "temps différé".
C'est le cas, bien sûr, de la plupart des processus créés avec PWGL et OM, mais encore plus avant PatchWork, alors que l'interface principale était le code Lisp lui-même. Un exemple parfait est un projet réalisé en collaboration avec le compositeur Jean-Baptiste Barrière, fondé sur sa bibliothèque personnelle Chréode [3]. La première version du code a été écrite au début des années 1980 à l'IRCAM avec Le Lisp (implémentation française du langage, développée par l'INRIA) à l'intérieur des environnements CHANT et FORMES. Chréode a été conçu avec l'ambition de réaliser "une grammaire de processus formels, une morphogenèse" [2], qui pourrait déterminer le comportement global de la synthèse sonore complexe ainsi que des partitions instrumentales.
Ce travail est parti d'une adaptation faite par Kilian Sprotte comme bibliothèque pour OM et PWGL. Le code original sur Le Lisp était presque indéchiffrable en raison de sa syntaxe très spécifique, très éloignée du Common Lisp qu’on connaît aujourd’hui. De plus, Chréode était principalement basée sur l’idée de programmation orientée-objet, son interface a dû être complètement réécrite à l’aide de CLOS (Common Lisp Object System).
D'une manière très similaire à MOZ'Lib, Max-Chréode consiste en une palette de bpatchers. Chacun d'eux, tout comme notre exemple de la figure 2, vise à générer un morceau de Lisp de façon dynamique. L'utilisateur a simplement besoin de connecter les boîtes selon les “règles” acceptées par le système. Le code entier est ensuite envoyé à une variante de pw.eval-box (evalchreodes), et le résultat peut être observé sous forme de graphiques (plot~) ou les partitions en temps réel.


Figure 4. Un simple patch utilisant des objets Max-Chréode, sur deux paramètres, montrant la génération du code (et leur sortie en commentaire), et la représentation graphique en sortie avec plot~

Un dernier exemple d’application est lié au projet Pre-Tensio, par les compositeurs Colin Roche et Jacopo Baboni Schilingi. Ce projet, situé à la lisière entre installation et performance, vise à représenter la tension créative ressentie par les compositeurs au cours de leur processus de travail. Développé à l’initiative de Colin Roche, Le Livre des Nombres s'appuie fortement sur Max et Lisp pour son dispositif interactif. La performance, d'une durée de 24 heures, a déjà été présentée dans plusieurs galeries d'art à Paris. Le compositeur, équipé de capteurs de rythme cardiaque, écrit de la musique à la table, qui est elle-même équipée de microphones de contact. Le public peut écouter, au moyen d'un casque, une amplification du battement cardiaque du compositeur, ainsi que les différents sons produits par son stylo sur le papier.
En parallèle, un patch Max enregistre l'évolution du battement cardiaque du compositeur sur une longue période, et finit par déclencher une analyse sur SBCL, pour révéler son profil général. Ensuite, le scénario traduit cette morphologie en une série de tempi modulant dans le temps, et la longue liste qui en résulte est imprimée automatiquement à la réception comme une métaphore du coût en temps passé par le compositeur au travail. Des fragments de ces grandes partitions de silence sont finalement transcrits à la main, en notation standard, et offerts au public.

4. ÉVALUATION
Plusieurs améliorations de cette approche devront être apportées. Le manque de transparence du processus en cours, exacerbé par l'utilisation d'un fichier binaire .core comme système de mémoire exige de plonger dans les sources pour obtenir une meilleure compréhension. Pour l'utilisateur, cela implique, bien sûr, une familiarité avec Common Lisp lui-même, mais aussi avec les fonctions spécifiques qui pourraient être invoquées.


Figure 5. Example de “reçu” généré et manuscrit des transcriptions pour Le livre des Nombres (avec l’aimable autorisation du compositeur @ Colin Roche 2016)

Un effort important de documentation et de diffusion aiderait un public plus large à acquérir ces outils. Comme déjà mentionné, une distribution sous forme de package Max constituerait une nette amélioration pour en faciliter l'installation. Un moyen d’accéder directement dans Max à la chaîne de documentation de toute fonction Lisp concernée, mais aussi à une liste de toutes les bibliothèques dans son environnement serait également très utile afin de réduire au minimum le phénomène de "boîte noire".
De plus, il est encore relativement difficile de déboguer du code Lisp dans Max. Pour les petites erreurs, il est possible de récupérer le résultat de toute fonction d'impression de la première sortie du shell externe, qui n'est pas utilisée autrement. Cependant, le débogueur SBCL rend difficile l’accès aux erreurs imbriquées plus profondément. Il est donc nécessaire pour travailler en parallèle sur le terminal ou sur un IDE (éditeur de texte) tels qu'Emacs ou SublimeText, pour identifier où un problème se produit dans un fichier temporaire donné.
En tout cas, ma propre pratique jusqu'à présent a été de faire des prototypes directement dans PWGL, avant de commencer à les traduire dans Max avec des objets bach. C'est là que se trouve une limite de cette approche qui a été soulignée par Jean-Baptiste Barrière après son expérience avec Max-Chréode : le patching avec des générateurs de code peut apporter une confusion entre les aspects sémantiques et pragmatiques d'une abstraction. Bien que le patch dans PWGL semble très similaire à Lisp (puisque le lexique et les règles sont à peu près les mêmes), chaque boîte renvoie en fait son propre résultat après évaluation. En revanche, les générateurs de code ne renvoient rien d'autre que code Lisp imbriqué, ce qui rend le patching direct plus cryptique.
De plus, la dépendance à l'égard du shell externe est toujours problématique. Comme il n'y a pas de soutien officiel de la part de Cycling'74 pour l'interface de ligne de commande, l'avenir de ces technologies n'est pas garanti et repose, au moins pour l'instant, sur la bonne volonté de la communauté des utilisateurs.

5. CONCLUSION
J'ai présenté une méthode pour évaluer du code Lisp en temps réel dans un environnement comme Max, en montrant les différents avantages de cette syntaxe supplémentaire, non seulement pour les utilisateurs existants de la communauté CAC mais aussi pour développer des applications interactives nécessitant l'exécution d'algorithmes de haut niveau en arrière-plan. De nombreuses autres possibilités que celles couvertes dans cet article pourraient être imaginées, par exemple le contrôle des processus audio en temps réel, la transformation ou la synthèse, à l'aide d'un code Lisp sophistiqué.
J'appartiens à une petite communauté de compositeurs qui est vraiment attachée à la CAC en général, et à PWGL en en particulier, comme environnement de travail privilégié. Ce développement ne vise manifestement pas à remplacer OM ou PWGL, mais vise au contraire à rendre leur possibilités accessibles dans desÒ contextes différents.
Cependant, on ne peut pas nier que les environnements Lisp dédiés à la CAC sont aujourd'hui dans une situation délicate comparée au reste de la musique informatique, et qu'ils survivent difficilement dans des contextes socio-économiques qui ne comprennent pas pourquoi ils comptent. Dans le cas où ils viendraient à disparaître, une telle initiative pourrait être considérée comme une mesure de préservation de l'héritage de générations de compositeurs et de chercheurs. Tout comme les esquisses, les partitions et les enregistrements, les environnements logiciels, qu’ils prennent la forme de patchs Max ou code Lisp, ils sont un support pour les connaissances artisanales et l'expression artistique que nous nous efforçons ici de préserver.

6. REFERENCES
[1] Andrea Agostini & Daniele Ghisi, « Real-Time Computer-Aided Composition with bach », in Contemporary Music Review, 1(32), 2013.
[2] Jean-Baptiste Barrière, « L’informatique musicale comme approche cognitive: simulation, timbre et processus formels », in La musique et les sciences cognitives, Ed. S. McAdams & I. Deliège, Pierre Mardaga, Brussels, 1988.
[3] Jean-Baptiste Barrière, « “Chréode”: the pathway to new music with the computer », in Contemporary Music Review, 1(1), 1984
[4] Jean Bresson & Jean-Louis Giavitto, « A Reactive Extension of the OpenMusic Visual Programming Language », in Journal of Visual Languages and Computing, 4(25), 2014.
[5] Mikael Laurson, PatchWork: A Visual Programming Language and some Musical Applications, PhD thesis, Sibelius Academy, Helsinki, 1996.
[6] Örjan Sandred, « PWMC, a Constraint-Solving System for Generating Music Scores », in Computer Music Journal, 34(2), 8-24, 2010.
[7] Julien Vincenot, « On “slow” computer-aided composition », in The OM Composer’s Book Vol.3, Ed. J. Bresson, C. Agon & G. Assayag, Éditions Delatour / IRCAM- Centre Pompidou, Paris, 2016.

1 On peut citer par exemple Common Music ou plus récemment OpusModus, qui s'appuient tous deux sur une interface de programmation textuelle, cf. commonmusic.sourceforge.net | opusmodus.com
2 L'un des plus anciens langages de programmation, le LISP (pour "list processing") a été conçu à l'origine par John McCarthy en 1958. Le Common Lisp est l'un des nombreux dialectes Lisp dérivés de la langue originale, standardisé au début des années 1980, et l'un des plus populaires avec le LISP de Scheme, Clojure et Emacs.
3 cf. http://sites.music.columbia.edu/brad/maxlispj/
4 Lisper, une bibliothèque développée par Alex Graham entre 2011 et 2013, a poursuivi un objectif similaire. Cette approche, contrairement à MaxLISPj, s'appuyait sur le protocole OSC pour établir une communication entre Max 4 ou 5 et une implémentation Lisp telle que Clozure CL. Ce travail n'ayant été porté à la connaissance de l'auteur que récemment, aucune comparaison claire n'a pu être établie entre cette approche et celle décrite dans cet article. Cependant, l'utilisation d'un tel protocole de réseau sera soigneusement étudiée pour les développements futurs, ainsi que son impact possible, positif ou négatif, sur la facilité d'utilisation pour les utilisateurs moyens du système. Cf. https://github.com/thealexgraham/lisper
5 Une règle de Lisp est que toute s-expression doit commencer par un appel de fonction, sinon elle renvoie une erreur. (+ 1 2) est correct car le symbole + est compris comme une fonction. La liste plate (1 2 3), en revanche, retournera une erreur puisque son premier élément 1 n'est pas une fonction. La syntaxe correcte utiliserait la fonction de liste (liste 1 2 3) ou la notation de citation : '(1 2 3) ou (citation (1 2 3)). De même, un symbole unique comme foo doit être mis entre guillemets "foo ou (quote foo)", sinon il sera interprété comme une variable non liée. En d'autres termes, la citation permet de transformer un morceau de code en une donnée.
6 Cette approche a d'abord été discutée à l'IRCAM à l'occasion de la réunion internationale PRISMA 2015. Plusieurs membres avaient remarqué que, dans certaines conditions, les calculs lourds étaient vraiment difficiles à gérer par PWGL ou OM, mais seraient évalués sans problème en Lisp pur. Une première stratégie consistait à utiliser sprintf pour formater le code Lisp, mais elle est rapidement devenue problématique pour de multiples raisons (interface utilisateur confuse, stabilité compromise par la gestion de la mémoire des symboles dans Max, etc.) Cette méthode a été explorée pendant plusieurs mois en collaboration avec les compositeurs Örjan Sandred, Hans Tutschku, Johannes Kretz et Jacopo Baboni Schilingi, puis optimisée et standardisée par l'auteur.
7 Il est évident que toute implémentation de Common Lisp, accessible via une interface de ligne de commande, pourrait être utilisée à la place. La SBCL est l'une des implémentations les plus populaires aujourd'hui : elle est à code source ouvert, multiplateforme et offre de grandes performances. Clozure CL est une bonne alternative, et offre des avantages similaires. Cf. www.sbcl.org | ccl.clozure.com
8 Cet objet externe a été initialement développé par Bill Orcutt, puis mis à jour par Jeremy Bernstein en 2013. Cf. cycling74.com/toolbox/bernstein-shell/
9 Il faut noter ici que, puisque PWGL est gratuit mais non open-source, le code du PMC n'est accessible que sous la forme d'un portage partiel réalisé par Örjan Sandred pour OpenMusic, sous le nom de OMCS.
10 Je profite de l'occasion pour remercier l'équipe des Représentations musicales de l'IRCAM, pour avoir rendu ces sources accessibles au public.
11 Le Cluster-Engine est le successeur des bibliothèques de Sandred OMRC et PWMC [6], respectivement pour OM et PWGL.
12 MOZ'Lib est actuellement maintenu par l'auteur en collaboration avec le compositeur Dionysios Papanicolaou. Il a été initialement soutenu par Ariane# (financé par la région Franche-Comté dans l'est de la France), une initiative axée sur l'extension de la pédagogie à l'aide des outils numériques. Pour une introduction générale à MOZ'Lib, cf. bachproject.net/2016/10/15/mozlib/

Copyright : © 2017 article en libre accès distribué selon les termes de la licence Creative Commons Attribution License 3.0 Unported, qui autorise l'utilisation, la distribution et la reproduction sans restriction sur tout support, à condition que l'auteur original et la source soient mentionnés. Cet article est traduit des proceedings de ICMC 2017 - International Computer Music Conference. Lien vers la publication originale:
https://quod.lib.umich.edu/i/icmc/bbp2372.2017.012/--lisp-in-max-exploratory-computer-aided-composition-in-real?view=image

Julien Vincenot

 

© L'ÉDUCATION MUSICALE 2021

Compte rendu des Rencontres nationales sur les recherches en musique
Par J. Bell et S. Defromont

“Je pense que c’est plutôt bon signe”, résume Atau Tanaka, à la fois enseignant/chercheur et artiste/musicien , au sujet de l’organisation de ces journées intitulées “recherches en musique”, même s’il ne pourra s’empêcher de remarquer que, dans le monde anglo-saxon comme aux Pays-Bas, la recherche artistique en musique existe déjà depuis plus de dix ans...
La recherche française a, certes, depuis peu et dans certains domaines, des difficultés à rester dans la course effrénée de celle de l’ english-speaking world . Cependant, par son histoire, ses prestigieux conservatoires, sa tradition musicale et musicologique, ses nombreux festivals ou encore son régime d'intermittence, la France reste un modèle dans le domaine de la création artistique, et de la musique en particulier.
Le retard français évoqué ici et là dans ces journées ne concerne donc pas la production artistique, l’enseignement de la musique, ou encore les nombreux champs de connaissance appliqués à celle-ci (comme, pour ne citer que quelques exemples, l’organologie, l’acoustique ou l'ethnomusicologie), mais plutôt probablement la division historique entre musique et musicologie dont notre pays aurait du mal à se défaire: c’est la préposition “en” dans “recherche en musique” qui pose problème. L’étudiant de conservatoire supérieur considère encore aujourd’hui la recherche comme une matière facultative, et le musicologue, s’il a bien pour objet d’étude principal la musique, peut encore difficilement présenter sa pratique artistique comme aboutissement ou mise en évidence de son investigation scientifique. Kathleen Coessens , directrice du conservatoire de Bruxelles (Koninklijk Conservatorium) et auteure du texte fondateur The artistic Turn , ainsi que Peter Dejens , fondateur et directeur de l’Orpheus Instituut de Gand (dont nous transcrirons le grand témoignage au prochain numéro), nous livrent ici quelques clefs sur les méthodologies de recherche propres au domaine musical.


Les 15 et 16 octobre derniers, le conservatoire supérieur de musique et de danse de Paris (CNSMDP) et le campus Pierre et Marie Curie de l’université de la Sorbonne ont donc accueilli les Rencontres nationales sur les recherches en musique , rassemblant, sous l’égide du ministère de la Culture et de la Direction générale de la création artistique, de nombreux artistes et chercheurs venus présenter leurs travaux comme témoins de la multiplicité et de la convergence des réflexions. Les communications proposées portaient sur un choix de quatre thématiques :
     ● l’articulation entre recherche scientifique et pratique artistique, notamment le rôle des compétences de type musical (instrumentales, compositionnelles, etc.) au sein d’une démarche de recherche portant sur la musique ;
     ● les nouvelles formes de recherche des musiciens sur leurs pratiques (composition, interprétation, pédagogie), et les enjeux épistémologiques et technologiques de ces recherches expérimentales sur la musique ;
     ● les impacts et les applications de la recherche en musique dans le champ de la création musicale, de l’interprétation, de la pédagogie musicale, de la médiation, de l’industrie ;
     ● les enjeux et les modalités de la formation à la recherche des musiciens en France et à l’étranger, avec une attention portée aux doctorats de création en composition, interprétation, pédagogie, médiation, acoustique.
Ces grandes orientations - précisées par un ensemble de sous-thématiques - révèlent la volonté d’un dialogue entre spéculations universitaires et pratiques concrètes, où les interventions scientifiques répondent aux retours d’expériences ; un affichage de posters venait enrichir les prises de paroles, offrant une vitrine bienvenue aux grands centres de recherches français invités à communiquer les résultats ou l’avancé de leurs travaux.
Nos premières louanges vont à la réelle diversité des intervenants, praticiens comme spécialistes : les communications les plus variées témoignent d’une cohérence et d’un dynamisme dans la recherche musicale en France, soucieux d’intégrer les nouvelles technologies pour mieux traiter certaines problématiques contemporaines. Ainsi, la présentation d’Octavia Rioual interroge les liens entre la culture sourde et les possibilitées d’amplifications du sons par certaines technologies récentes, ou la générations de stimulis visuels à partir d’un matériau sonore, ouvrant dès lors la voie à tout un ensemble de perceptions inédites. https://recenmus.sciencesconf.org/335081/document
La recherche se met aussi au service de l’éducation : ses liens avec la pédagogie en milieu scolaire nous sont expliqués par Aurélia Domaradzka-Barbier, pour qui la connaissance des mécanismes et des modèles issus de la recherche exploratoire de terrain ont permis une meilleure appréhension des conditions d’enseignement propices à l’épanouissement des élèves. https://recenmus.sciencesconf.org/334964/document
L’ethnomusicologie n’était pas en reste, et ces deux journées de conférences ont ménagé la part belle aux interventions de François Picard ( Dans la tête du joueur de sheng , https://recenmus.sciencesconf.org/335247/document ) ou d’un collectif d’universitaires présentant la diversité stylistique et technique du Khöömii mongol. Pour prendre connaissance des très nombreuses autres communications, nous vous renvoyons aux ressources en ligne, déposées sur un site dépendant du ministère de la Culture : (https://recenmus.sciencesconf.org/ ), accessibles également depuis le programme ci-dessous.

PROGRAMME

Jeudi 15 octobre:
Mot d’accueil par Emilie Delorme , directrice du Conservatoire national de musique et de danse de Paris (CNSMDP)
Ouverture des Rencontres par Christian Lucien Martin , directrion générale de la création artistique Ministère de la culture - ministère de l’enseignement supérieur et de la recherche Recherche et formation
Communications présentées par Nicolas Bucher , directeur du Centre de musique baroque de Versailles
Formation à et par la recherche : développement de savoir-faire et de compétences réflexives à travers quelques exemples de travaux d’étudiants en formation à l’enseignement de la musique au Conservatoire national supérieur de musique et de danse de Lyon (CNSMDL)
par Karine Hahn et Anne-Cécile Nentwig , cheffe de département et cadre pédagogique de la Formation à l’Enseignement de la Musique, CNSMDL
Se former à l’enseignement instrumental/vocal en composant une pièce pédagogique située hors de son expertise disciplinaire : enjeux et objectifs didactiques

par Dominique Delahoche , trombone solo de l’Orchestre national de Metz et enseignant à l’Ecole Supérieure d’Art de Lorraine (ESAL), Gérald Guillot , enseignant-chercheur en ethnomusicologie, didactique de la musique et psychologie cognitive, associé aux laboratoires Diversité et Evolution Culturelles et Institut de Recherche en Musicologie (IReMus) et Stéphanie Houillon , professeure de musique, major de la promotion 2020 de l’ESAL
Appropriations du langage FAUST, de la pédagogie à la recherche et la création en musique mixte, de l’université au conservatoire, sur le territoire de la Seine Saint-Denis
par Alain Bonardi , maître de conférences en informatique et création musicale à l’Université Paris 8 et Céline Roulleau , pianiste et professeure de piano au Conservatoire de Saint-Denis De la formation à la recherche documentaire au concept de « Music information literacy » : quel est le rôle des bibliothécaires dans la formation à la recherche artistique ?
par Lise Combier , étudiante à l’École nationale supérieure des sciences de l’information et des bibliothèques et Morgane Milhat , cheffe du service de la médiathèque Nadia Boulanger du CNSMDL.
Présentation des posters par Aurélie Helmlinger , co-directrice du Centre de recherche en ethnomusicologie (CREM), équipe de recherche du Laboratoire d’ethnologie et de sociologie comparative (LESC), membre de la Société française d’éthnomusicologie.

Session posters 1
La recherche dans la formation des musiciens et des musicienne
Table ronde , animée par Sylvie Pébrier , inspectrice musique à la Direction générale de la création artistique, avec :
     • Yves Balmer , professeur de méthodologie de la recherche et d’analyse au CNSMDP
     • Carine Bonnefoy , pianiste, compositrice et professeure d’écriture jazz au Conservatoire à rayonnement régional de Paris et au Pôle Supérieur de Paris Boulogne-Billancourt
     • Kathleen Coessens , directrice du Conservatoire Royal de Bruxelles< (Koninklijk Conservatorium Brussel) 2/ Intervention Sur l’allocation du budget de recherche au conservatoirde de Bruxelles
     • Jacques Moreau , ancien directeur des études musicales du CNSMDL, directeur du Centre de formation des enseignants de la musique d’Auvergne Rhône-Alpes

Recherche et interprétation
Communications présentées par Theodora Psychoyou , enseignante-chercheuse en musicologie à Sorbonne Université, membre de l’IReMus, membre du conseil d’administration de la Société française de musicologie
Un office des vêpres pour la Saint-Vincent de Soignies par Pierre-Louis Pollio : retour sur une expérience scientifique, pédagogique et artistique unique
par Jean-Christophe Revel , organiste-concertiste, responsable pédagogique du département de musique ancienne du Conservatoire à rayonnement régional de Paris et Nathalie Berton-Blivet , ingénieure d’études à l’IReMus (CNRS)
Immersion musicale en acoustique patrimoniale immersive : reproduire les gestes d’interprétation des musiques patrimoniales dans un environnement numérique
par Julien Ferrando , maître de conférences en musique ancienne et nouvelles technologies à Aix Marseille Université et chercheur au laboratoire Perception, Représentations, Image, Son, Musique (PRISM-CNRS) et Julie Deramond , maître de conférences en sciences de l’information et de la communication à l’Université d’Avignon et membre du Centre Norbert Elias

Le Human Beatbox, un langage musical
par Nathalie Henrich-Bernardoni , directrice de recherche au Gipsa-Lab (CNRS-Université Grenoble Alpes), cheffe de choeur et chanteuse et Nicolas (Tiko) Giemza , musicien, beatboxer
L’interprétation de la musique acousmatique: enregistrement, analyse, transmission par Pierre Couprie , professeur de musicologie à l’université d’Évry/Paris-Saclay, chercheur, membre du laboratoire Centre d’histoire culturelle des sociétés, Olivier Lamarche , musicien interprète, ingénieur du son au sein de la compagnie musicale Motus et Nathanaëlle Raboisson , musicienne interprète, musicologue, responsable du MotusLab, laboratoire de recherche de la compagnie musicale Motus et chercheure associée à l’IReMus.

Grand témoignage par Peter Dejans , directeur de l’Institut Orpheus de Gand
18h30 Performance de la Classe d’Improvisation Générative du CNSMDP , sous la direction d’ Alexandros Markeas et Vincent Lê Quang

Vendredi 16 octobre:

Recherche-création et [nouvelles] lutheries
Communications présentées par Nathalie Hérold , ingénieure de recherche à l’Université de Strasbourg, membre du Groupe de recherche expérimental sur l’acte musical et du laboratoire Approches contemporaines de la création et de la réflexion artistiques de l’Université de Strasbourg, vice-présidente de la Société française d’analyse musicale.
Le bureau du compositeur du XXIème siècle, projet de l’Université Côte d’Azur
par François Paris , compositeur et Camille Giuglaris , musicien, ingénieur du son, directeur technique du Centre national de Création Musicale de Nice (CIRM)
Projet scientifique i-score et projet artistique Solo.K
par Myriam Desainte-Catherine , professeure d’informatique à Bordeaux INP, directrice du Studio de Création et de Recherches en Informatique et Musiques Expérimentales (SCRIME) du Laboratoire Bordelais de Recherche en Informatique (LaBRI) et Jean-Marie Colin , organiste, compositeur, coordinateur de l’activité artistique du SCRIME

Mieux comprendre les musiciens pour leur fabriquer de meilleurs instruments : la démarche de conception des becs de saxophone Syos
par Maxime Carron , pianiste, docteur en sciences cognitives et co-fondateur de l’entreprise Syos
Flûte baroque de Hotteterre – comparaison entre un fac-similé et une copie par prototypage rapide
par Claudia Fritz , chercheuse au sein de l’équipe Lutheries - Acoustique - Musique de l’Institut Jean le Rond d’Alembert, Mina Jang , flûtiste, membre de l’Ensemble Baroque Pas Sage, du duo MJMK et de l’Ensemble OMNĒS et Stéphane Vaiedelich , chercheur, responsable du laboratoire de conservation de recherche du Musée de la musique - Philharmonie de Paris

La pratique au coeur des démarches de recherche
Table ronde , animée par Christophe d’Alessandro , directeur de recherche au CNRS, chef de l’équipe Lutheries - Acoustique - Musique de l’Institut Jean le Rond d’Alembert, avec :
     ● Jérôme Cler , maître de conférences en ethnomusicologie à Sorbonne-Université, directeur de SAFAR, ensemble de musiques traditionnelles de Sorbonne Université
     ● Katarina Livljanić , professeure à la Schola Cantorum Basiliensis, musicologue, directrice artistique de l’ensemble Dialogos
     ● Lara Morciano , compositrice, pianiste et chercheuse, membre du laboratoire SACRe de l’Université Paris Sciences & Lettres
     ● Atau Tanaka , compositeur, performeur et professeur à la Goldsmiths University de Londres

Présentation des posters coordonnée par Yann Orlarey , directeur scientifique du GRAME-Centre national de création musicale de Lyon, membre du bureau de l’Association française d’informatique musicale.

Recherches en pratique, pratiques de recherche
Communications présentées par Peter Sinclair , chercheur, enseignant à l’Ecole supérieure d’art d’Aix en Provence, responsable du 3e cycle et du projet de recherche Locus Sonus rattaché à l’unité mixte de recherche PRISM
Sons et mondes virtuels, l’exemple du projet New Atlantis
par Ludmila Postel , doctorante en Pratique et théorie de la création littéraire et artistique à Aix Marseille Université, au sein du laboratoire PRISM
Towards a Practitioner Model of Mobile Music par Steve Jones , chercheur et musicien électronique.
Musique modale populaire occidentale en zone tempérée, une pratique réfléchie de la modalité et du tempérament inégal par Erik Marchand , artiste chanteur et directeur artistique de l’association Drom et Ariane Zevaco , responsable pédagogique de l’association Drom et ethnomusicologue.
Khöömii Mongol : diversité des styles et des techniques par Johanni Curtet , musicien, ethnomusicologue, directeur artistique de l’association Routes Nomades, Nathalie Henrich-Bernardoni , directrice de recherche au Gipsa-Lab (CNRS-Université Grenoble Alpes), cheffe de choeur et chanteuse, Michèle Castellengo , directrice de recherche émérite au CNRS, musicienne et acousticienne, Christophe Savariaux et Pascale Calabrèse Le partage de la recherche en musique
Table ronde animée par Christophe Pirenne , professeur à l’Université de Liège, avec :
     ● Julie Donatien , doctorante en ethnomusicologie au CREM-LESC et co-réalisatrice du web documentaire Inouï issu du projet Le patrimoine musical des Nanterriens
     ● Benoît Fabre , professeur d’acoustique à la faculté des sciences et d’ingénierie de Sorbonne Université et directeur de l’Institut Collegium Musicæ
     ● Catalina Vicens , musicienne, chercheuse, professeure au Conservatoire Royal de Bruxelles et directrice artistique de l’Ensemble Servir Antico
     ● Emmanuel Parent , maître de conférences en musiques actuelles et ethnomusicologie à l’université Rennes 2, directeur de publication de Volume! la revue des musiques populaires et président de l’IASPM-bfe (branche francophone de l’association internationale pour l’étude des musiques populaires)
Grand témoignage par Cécile Davy-Rigaux , directeur de recherche du CNRS à l’Institut de recherche en musicologie, présidente de la Société française de musicologie
Clôture des Rencontres par Christian-Lucien Martin , sous-directeur de l’enseignement supérieur et de la recherche à la Direction générale de la création artistique

POSTERS
Ces sons qui nous envahissent , par Caroline Boë , Aix Marseille Université, PRISM - UMR 7061 ( téléchargeable ici ).
Analyser les musiques improvisées collectives libres aujourd’hui , par Baptistine Marcel , Aix Marseille Université, PRISM - UMR 7061 ( téléchargeable ici ).
L’énigme Ganassi : un projet de recherche et pratique vers une familiarité avec l’esthétique de la Fontegara (1535) , par Tiago Simas Freire Haute école de musique de Genève et CNSMDL et William Dongois , Haute école de musique de Genève ( téléchargeable ici ).
“L’interprète, l’éditeur et le musicologue. Autour de l’édition critique des sonates pour violon et piano de Camille Saint-Saëns.” ,par Fanny Clamagirand , violoniste soliste, Vanya Cohen , Conservatoire à Rayonnement Régional d’Amiens Métropole et Fabien Guilloux , IreMus – UMR 8223, Sorbonne Université (téléchargeable ici). ( téléchargeable ici ).
Un nouveau bâtiment pour un nouveau type de conservatoire : exemple de la Cité de la Musique de Romans-sur-Isère , par Marie-Hortense Lacroix , Cité de la Musique de Romans-sur-Isère (téléchargeable ici).
Recherches en sciences de l’éducation musicale et pratiques de terrains : une lecture à partir du Journal de Recherche en Éducation Musicale , par Adrien Bourg , Institut Catholique de Paris (EA7403), IreMus - UMR 8223, Sorbonne Université et Centre de Recherche en Éducation de Nantes (EA2661), Sébastien Durand , Université de Tours, aboratoire ICD - Université de Tours (EA 6297 ICD), Gérald Guillot , Pôle Musique et Danse de l’ESAL, laboratoire DivEC et Odile Tripier-Mondancin , Institut National Supérieur du Professorat et de l’Education), Université Toulouse-Jean Jaurès, Laboratoire LLA, CREATIS (ÉA 4152) ( téléchargeable ici ).
“La volière Projet de recherche / création associant des classes de CP, collèges, université, conservatoires, avec la Biblothèque Nationale de France, l’Ensemble Intercontemporain.” , par Fabrice Guédy , Atelier des Feuillantines, Université Paris Sciences et Lettres, Mélanie Ory , Education nationale, enseignement lettres dans les classes UPE2A et Zouhir El-Amri , Education nationale, enseignement des mathématiques en ZEP Sensible Zone prévention violence REP + ( téléchargeable ici ).
“Le séminaire PEEP [Pratiques de l’écoute, Écoute des pratiques] un lieu d’expérimentation des pratiques de recherche et de création.” , par Elena Biserna , PRISM - UMR 7061, Jean Cristofol , PRISM - UMR 7061, Institut Méditerranéen de Recherches Avancées, Marseille, Christine Esclapez , Aix Marseille Université, PRISM - UMR 7061 et Peter Sinclair , Ecole Supérieure d’Art d’Aix en Provence, Locus Sonus - PRISM - UMR 7061 ( téléchargeable ici) .
Réconcilier théorie et pratique dans l’enseignement de la musique: les cours d’Ars musica au CNSMD de Lyon , par Barnabé Janin , CNSMDL ( téléchargeable ici ).
Pratiquer la musique en prison , par Michaël Andrieu , CFMI d’Orsay, Pôle Sup 93 ( téléchargeable ici ).
Membrane Computing et recherche artistique en composition musicale , par Alberto Carretero , Conservatoire Supérieur de Madrid et de Séville ( téléchargeable ici ).
AntesCollider, une approche pour l’écriture des musiques interactives , par José Miguel Fernández , STMS-IRCAM, Sorbonne Université ( téléchargeable ici ).
Nouvelles interfaces numériques expressives : quelles notations pour les gestes multidimensionnels ? , par Gaël Navard , Conservatoire de Nice et Jean-François Trubert , Université Côte d’Azur ( téléchargeable ici ).
“Compagnonnage Recherche-Création sur le temps long autour des concepts et technologies de l’ACROE” , par Claude Cadoz , ACROE – ICA, Annie Luciani , ACROE – ICA, Nicolas Castagné , ACROE – ICA, Giuseppe Gavazza , Conservatoire de musique de Cuneo, Hans Peter Stubbe , ACROE – ICA, Ludger Brümmer , Institut de recherche ZKM et Francisco Huguet , Université de San Salvador ( téléchargeable ici ).
OCEN - Orchestre et Choeur Electro-Numérique de Sorbonne Université , par Hugues Genevois , équipe de recherche LAM de l’Institut Jean le Rond d’Alembert – UMR 7190. ( téléchargeable ici ).
Prévention des fatigues musculaires en agissant sur les éléments de lutheries : cas du cordage de la harpe de concert , par Jean-Loïc Le Carrou , équipe de recherche LAM de l’Institut Jean le Rond d’Alembert – UMR 7190, Delphine Chadefaux , Université Sorbonne Paris Nord, rattachée à l’Institut de Biomécanique Humaine Georges Charpak (EA 4494) et Claude Pothrat , post-doctorante ( téléchargeable ici ).
Partitions et nouveaux médias : pour une approche sémiotique du codage des graphismes musicaux , par Marina Maluli-César , IreMus-UMR 8223
Une étude interdisciplinaire pour recréer une flûte conique de transition , par Benoît Fabre ,équipe de recherche LAM de l’Institut Jean le Rond d’Alembert– UMR 7190, Sorbonne Université, Jean-Yves Roosen , Roosen Flûtes, Cassandre Balosso-Bardin , Patricio de la Cuadra et Camille Vauthrin Le baryton du Musée de la musique, un exemple de recherche pluridisciplinaire en musique , par Jean-Philippe Echard , Musée de la musique-Philharmonie de Paris, CRC- USR 3224 – Sorbonne Université ( téléchargeable ici ).
“L’apparition des cordes sympathiques en Europe, instruments et répertoires associés : une recherche interdisciplinaire nourrie par des pratiques musicales” , par Louise Condi , IreMus - UMR 8223, équipe de recherche LAM de l’Institut d’Alembert - UMR 7190, Musée de la Musique - Philharmonie de Paris Le GSAM : rôle fédérateur dans la diffusion des recherches en acoustique musicale , par Jean Loïc Le Carrou
Analyse acoustique de l’interprétation historiquement informée (2015-2018) , par Jeanne Roudet , Sorbonne Université et Benoît Fabre
Recherches et Musiques au LMA , par Christophe Vergez , Laboratoire de Mécanique et Acoustique de Marseille – UMR 7031 ( téléchargeable ici)
La disposition des chanteurs : un outil au service du choeur , par Pierre-Louis de Laporte , CNSMDL ( téléchargeable ici)
Spécificités de la musique klezmer à Paris : interprétation, contextes et transmission , par Alice Mazen , Sorbonne Université ( téléchargeable ici )
Skini , par Bertrand Petit-Heidelein , équipe INDES - INRIA Sophia-Antipolis ( téléchargeable ici)
MotionKit La détection de mouvements dédié à l’apprentissage et à la découverte du geste musical , par Sébastien Béranger , La Muse en circuit ( téléchargeable ici )
“Quelle bibliothèque pour les oeuvres de musiques électroacoustiques ? Ou : mais qui doit sauvegarder les musiques mixtes ?” , par Serge Lemouton , IRCAM ( téléchargeable ici )
Le mixage binaural pour les musiques populaires enregistrées : réflexions et expériences autour de la scène rennaise , par Judikaël Levin , Université Rennes 2 ( téléchargeable ici)
Retour d’expérience en recherche-création autour de la nouvelle version interactive temps-réel de la pièce mixte Inharmonique (1977) de Jean-Claude Risset , par João Svidzinski , Maison des Sciences de l’Homme Paris Nord, Alain Bonardi , Université Paris 8, IRCAM, Antonio de Sousa Dias , Beaux-Arts - Université de Lisbonne et Hélène Fauchère , soprano soliste ( téléchargeable ici)
Micadôme: création, analyse et médiation thérapeutique de l’oeuvre de Jean Marc Duchenne “Les paradoxes d’une sphère tronquée” , par Michel Pascal , Conservatoire de Nice, Frédéric Vinot , Université Côte d’Azur et Karen Derveaux , Université Côte d’Azur ( téléchargeable ici )
NebuloRitmia : une expérience de Pédagogie-Recherche-Création à l’Université Jean Monnet (Lyon/Saint-Etienne) sur la composition musicale et les nouvelles lutheries , par Laurent Pottier , université Lyon-Saint-Etienne et Luis Quintana , compositeur ( téléchargeable ici)
Démarches collaboratives de recherche et de création au croisement des lutheries acoustique, augmentée et numérique: le projet ORBIS , par James Leonard , cellule de recherche ANIS du laboratoire GIPSA-Lab – UMR 5216 et Arnaud Petit, orchestre « les siècles » ( téléchargeable ici)
SmartVox , par Jonathan Bell , Casa de Velázquez, Académie de France à Madrid ( téléchargeable ici )
“Constellations” : une expérience de Recherche/Création à l’Université de Saint-Etienne , par Vincent-Raphaël Carinola , Ecole supérieure de musique Bourgogne Franche-Comté, laboratoire CIEREC de l’Université de l’Université de Saint-Etienne ( téléchargeable ici)

Textes:
Lenox School of Jazz : moment fondateur de l'enseignement du jazz Stéphane Audard UFR de Musique et de Musicologie - Faculté des Lettres de Sorbonne Université Sorbonne Université UPMC Paris VI
https://recenmus.sciencesconf.org/334945/document
La recherche en musique sur le terrain scolaire
Aurélia Barbier, Recherche indépendante -
https://recenmus.sciencesconf.org/334964/document

Recherches en musique et composition : diversité des compétences et fertilité des interactions , Amaury Duret, IReMUS UMR 8223 Institut de Recherche en Musicologie Paris
https://recenmus.sciencesconf.org/335029/document

Exemple de l'OEuvre pour violon de Karol Szymanowski et sa collaboration avec Paul Kochański. Anna Maria Barbara, Sorbonne Université - IReMUS UMR 8223 Institut de Recherche en Musicologie
https://recenmus.sciencesconf.org/335027/document

Créativité, analyse, émergence : systèmes d'interaction dans le dialogue compositeur-musicologue
Lissa Meridan, Atelier de Recherches Transdisciplinaires Esthétique et Sociétés (ARTES) CLARE, Gérard Pape
https://recenmus.sciencesconf.org/334946/document

Dans la tête du joueur de sheng
François Picard : Institut de Recherche en Musicologie (IReMus) -
https://recenmus.sciencesconf.org/335247/document

Trouver ma voie : dialogue entre chant et recherche
Waed Bouhassoun Laboratoire déthnologie et de sociologie comparative (LESC)
Université Paris Nanterre : UMR7186, Centre National de la Recherche Scientifique : UMR7186
https://recenmus.sciencesconf.org/333371/document

L'atelier intellectuel du compositeur : L'autoanalyse comme outil de recherche scientifique et de création musicale contemporaine.
Iván Adriano Zetina, Institut de Recherche en Musicologie (IReMus)
https://recenmus.sciencesconf.org/browse/author?authorid=836441

Von denen Bier = Fidlern. Pour une restitution de musique populaire ancienne Cyril Lacheze (1), Marion Weckerle (2)
1 : Institut d'histoire moderne et contemporaine (IHMC) - Site web
CNRS : UMR8066, École normale supérieure [ENS] - Paris, Université Paris 1 -
2 : Université Paris 1, Panthéon-Sorbonne - UFR Histoire (UP1 UFR09) - Site web
Université Paris I - Panthéon-Sorbonne, équipe d'Histoire des Techniques
Centre d'Histoire des Techniquehttps://recenmus.sciencesconf.org/335198/document

Femme en contre-jour, Ingrid Kuntzmann
https://recenmus.sciencesconf.org/335115/document

De la musique dans la culture sourde : impact des nouvelles technologies sur de nouvelles pratiques et de nouveaux modes de perception.
Octavia Rioual, Université Rennes 2 (UR2) Université Rennes 2 - Haute Bretagne
https://recenmus.sciencesconf.org/335081/document

L'enjeu de nouveaux systèmes d'écriture musicale : les pratiques de composition et les recherches en cours, technologiques et scientifiques, sur de nouvelles tablatures numérique
Anne VEITL https://recenmus.sciencesconf.org/335142/document

Folklore musical et interprétation pianistique. L'influence des danses argentines dans la Suite de Danzas criollas, op. 15 d'Alberto Ginastera
Salvatore Sclafani, Laboratoire de Musicologie (Université libre de Bruxelles) -
Conservatoire royal de Bruxelles (LaM (ULB) - CrB)
https://recenmus.sciencesconf.org/browse/author?authorid=836008

De la recherche à la pédagogie : en quête d'un timbre vocal original ou singulier
Corinne Frayssinet Savy, Institut de Recherche en Musicologie (IReMus)
https://recenmus.sciencesconf.org/335148/document

Logelloop, un looper spatialiseur multicanal pour la création sonore en temps réel.
Philippe Ollivier
https://recenmus.sciencesconf.org/335210/document


Fig. 1: Schéma tiré de la brochure de présentation:
Enseignement supérieur de la musique relevant du ministère de la culture

Texte tiré de la brochure de présentation:
Les rencontres nationales sur les recherches en musique s’inscrivent dans le cadre de la politique du ministère de la Culture qui vise à soutenir le développement de la recherche dans les champs de la création et à valoriser ses nombreux acteurs.
Elles ont pour objectifs de rendre compte de la multiplicité des recherches en musique qui se déploient dans le champ académique, dans les lieux de création et les établissements d’enseignement supérieur, et d’encourager leur dialogue, en portant une attention particulière aux recherches fondées sur la pratique.
Elles se proposent tout d’abord de discuter l’idée de formation à et par la recherche des musiciens. Elles entendent également considérer l’état actuel des recherches en musique en France et à l’international, en questionnant en particulier l’organisation et les pratiques de recherche centrées sur la musique dans leur diversité. Elles souhaitent envisager les diverses formes de relations possibles entre les recherches de type académique et d’autres types de recherches en musique, en particulier celles qui se trouvent étroitement articulées à une démarche de création artistique. Enfin, elles auront pour objet de questionner les impacts et les applications de la recherche en musique dans le champ de la création musicale, de l’interprétation, de la pédagogie musicale, de la médiation, de l’industrie.
Au cours de ces journées, autour de tables-rondes, de communications et de posters, des musiciens, des chercheurs, des enseignants et étudiants viendront présenter leurs recherches dans les domaines de la musicologie, des popular music studies, de la composition, de l’interprétation, de la lutherie, de la pédagogie, de la médiation, de l’acoustique et de l’informatique musicales.

Jonathan Bell et Simon DEFROMONT

 

© L'ÉDUCATION MUSICALE 2020

 

 

La synthèse concaténative et ses applications au machine learning/AI, le point de vue d’un compositeur
Davor Branimir VINCZE
traduction J. Bell - A. Bellugou - A. Craman

Le compositeur Davor Branimir Vincze termine actuellement son doctorat de composition musicale à la prestigieuse université de Stanford en Californie. Il nous livre ici une description/analyse minutieuse d’une technique de synthèse sonore et de composition particulièrement Ircamienne, connue sous le nom de “synthèse concaténative par corpus”. Sous cette terminologie complexe se cachent des outils de composition (CatarT, mubu, Bach, Dada...), des compositeurs (Vincze lui-même, mais aussi Einbond, Trapani, Ghisi, Hackbarth), et des questions préoccupantes sur la place du compositeur à l'ère de l’intelligence artificielle. En effet, dans une interview exclusive, il élabore sur les nombreux points parallèles que l’on peut tisser entre ces techniques et celles du machine learning et de l’intelligence artificielle, dont on connaît l’essor récent, en particulier dans la Silicon Valley… L’interview est aussi l’occasion de nous faire découvrir sa très récente pièce “ Dark Room”, d’une fraîcheur et d’une virtuosité impressionnantes, dont on remarquera l’hybridation entre monde instrumental et électronique. Il y discute également ses études avec Brian Ferneyhough, son cursus de composition à Stanford, son esthétique, l’incontournable - quoique controversée - Jennifer Walshe, ou encore l’outil audioguide, qu’il utilise sans GUI... Il ne semble donc plus si absurde aujourd'hui de composer en rentrant des lignes de commande directement dans le terminal.

Introduction
Au cours des vingt dernières années, la synthèse sonore concaténative, qui a vu le jour à la fin des années 1990 en tant qu'outil de conversion automatique du texte en parole, a lentement fait son chemin dans le domaine de la musique. Une fois ces outils musicaux développés, divers compositeurs ont manifesté un intérêt croissant pour l’intégration de cette technique de “synthèse concaténative basée sur corpus” dans leurs pratiques artistiques. Les dix dernières années ont vu un nombre croissant de pièces traitant des questions de mimétisme, de suivi de caractéristiques et de correspondance, le tout grâce aux progrès réalisés dans divers domaines de l'intelligence artificielle faible (par exemple Wekinator, Lyrebird AI, etc.), technologie sur laquelle repose également la synthèse concaténative (plus précisément les modèles de Markov cachés - HMM Hidden Markov Models1). Dans ce chapitre, j'aborderai deux sujets :
- Explication de la synthèse concaténative et de son application à la musique.
- Définition de la mosaïque musicale (ou audio), du collage et du montage, fournissant quelques aperçus sur des pièces que je considère comme précurseurs des idées esthétiques qui sous-tendent la mosaïque musicale.

1 Synthèse concaténative vocale
La synthèse sonore concaténative est issue de la recherche dans le domaine de la synthèse vocale (Schwarz, 2006). Il existe généralement trois types de synthèse de la parole, également appelés:
- la forme d'onde (ou articulatoire) - formant (ou filtre source) et
- la synthèse vocale concaténative.

Les deux premières ne feront pas l'objet de notre discussion, mais il est intéressant de noter qu'elles sont le résultat de recherches antérieures et qu'elles sont toutes deux synthétisées artificiellement ex nihilo selon un ensemble de paramètres, c'est pourquoi elles sont également qualifiées de synthèse paramétrique. Ces techniques donnaient un résultat plutôt robotique, même si elles étaient proches de l'imitation de la voix humaine, ce qui explique pourquoi la parole concaténée est devenue très populaire dès son apparition. Même si sa prosodie manque de relief lorsqu'elle est utilisée avec une petite base de données, elle a la chaleur de la voix humaine réelle qui fait défaut aux autres techniques. Cela était dû au fait que la technique de concaténation, plutôt que de synthétiser la parole à partir de la case départ, utilisait des unités préenregistrées de parole humaine réelle, stockées sous forme de phonèmes, de diphones, de mots et/ou de phrases dans sa base de données. L'inconvénient évident est que la qualité de la parole produite artificiellement dépend fortement de la taille de cette base de données, qui, étant principalement basée sur des enregistrements de locuteurs professionnels lisant des textes sur une feuille de papier, tend alors à manquer d'expressivité.


Figure 1 - Structure générale du système de synthèse vocale basé sur Schwarz, 2004, 15

Comment fonctionne donc la synthèse vocale concaténative? Comme le montre la figure 1, lors de la saisie d'une phrase de n'importe quel type de texte, qui est essentiellement un ensemble de codes ASCII, ces chiffres doivent être symbolisés et transformés en mots. L'étape suivante est l'analyse linguistique de ces mots, qui effectue "une analyse phonétique, phonologique, morphologique et syntaxique pour reconstruire l'arbre syntaxique de la phrase marquée avec les informations de la partie du discours (POS), c'est-à-dire la classe grammaticale, l'inflexion et la fonction de chaque mot". Le processus de génération des paramètres suit, dans lequel "les caractéristiques suprasegmentales de la phrase sont calculées, telles que la courbe de hauteur globale, les accents de hauteur, la courbe d'intensité" (Schwarz, 2004, 16). Cela complète la conversion d'un texte aléatoire en quelque chose que toute technique de synthèse de forme d'onde peut utiliser pour générer de la parole artificielle.

Dans le cas de la synthèse concaténative, l'étape suivante consiste à rechercher la meilleure unité à partir de la base de données de parole, suivi par un algorithme effectuant la concaténation, et enfin des outils de traitement de signal (DSP) pour faciliter la transition et éviter les clics entre unités adjacentes. Ensuite, je me concentrerai sur la façon dont cette technique a été mise en œuvre, (Schwarz 2004) ou un aperçu de (Khan 2016).


Figure 2 - Classes de méthodes de synthèse musicale basées sur Schwarz, 2004, 23

Par analogie avec la synthèse vocale, la synthèse sonore peut également être divisée en synthèse paramétrique et concaténative, la première contenant à la fois le signal et la modélisation physique. La modélisation physique, tout comme la synthèse articulatoire de la parole, utilise l'ordinateur pour imiter mathématiquement les lois et les conditions physiques dans lesquelles un instrument particulier émet son son. La modélisation du signal, en revanche, peut créer un son souhaité soit en ajoutant des ondes sinusoïdales les unes sur les autres, soit en soustrayant des parties de bruit blanc, ce qui est très similaire au principe de la synthèse source-filtre. Les techniques susmentionnées sont relativement anciennes, et ont été créées à des moments où il aurait été impossible de stocker et d'exploiter un grand ensemble de données, comme l'exige la synthèse concaténative du son. Dans la figure 2, nous pouvons voir que Schwarz considère l'échantillonnage2 et la synthèse granulaire3 comme faisant partie de la synthèse concaténative, uniquement limitée à l'inventaire fixe, ce qui permet de classer ces dernières comme une synthèse concaténative pouvant effectuer une sélection d'unités. Même si je suis en accord avec la classification de Schwarz, puisque l'échantillonnage et la synthèse granulaire partagent certaines qualités avec la technique concaténative basée sur un corpus, je ferai toujours référence à cette dernière simplement comme synthèse concaténative sonore (CSS) afin d'éviter toute confusion dans les paragraphes qui suivent.

Quelques années avant et pendant le début des années 2000, plusieurs tentatives intéressantes ont été réalisées pour mettre en œuvre le concept de systèmes pilotés par les données comme la synthèse vocale concaténative pour générer une voix chantée artificielle, un instrument solo ou de la musique en général. La plupart de ces tentatives ont été des expériences isolées qui ont été abandonnées ou qui n'ont pas abouti à des outils pleinement développés et qui, en tant que telles, présentent peu d'intérêt pour cette discussion. J'aimerais néanmoins signaler un projet de Zils et Pachet datant de 2001, car ils ont inventé le terme de mosaïque musicale4 (ou mosaicking) que j'utiliserai dans la dernière partie de cet article. Ils y ont créé un mécanisme de génération de séquences capable de récupérer des échantillons dans une grande base de données en respectant certaines propriétés (hauteur moyenne, percussion, volume sonore et timbre). Grâce à ce mécanisme, ils ont pu remixer automatiquement les chansons. Un article de Schwarz datant de 2015 donne un aperçu complet des autres premières applications du CSS.

2 Synthèse concaténative sonore
Je voudrais ici expliquer l'application du CSS à la musique par Diemo Schwarz, car son engagement au sein de l'IRCAM5 semble avoir été un terrain fertile pour le développement d'outils comme CataRT et MuBu, utilisés par trois des cinq compositeurs que je présenterai dans le prochain chapitre, ainsi que pour le mentorat de Benjamin Hackbarth, dont je vais également analyser la musique, dans la création de l'audioguide.

Avant d'entrer dans le vif du sujet, voici une liste de termes qui doivent être définis pour mieux comprendre le processus de synthèse concaténative des sons :
- Le corpus est généralement synonyme de la partie de la base de données présélectionnée pour une synthèse spécifique. - La cible (target) peut être soit symbolique (un fichier MIDI avec des paramètres supplémentaires), soit un fichier audio, qui servent de modèles pour la recherche d'unités.
- Les descripteurs, ainsi que les caractéristiques connues (si elles sont constantes) ou les vecteurs de caractéristiques (si elles évoluent dans le temps), sont des qualités d'unité sonore en fonction desquelles elles sont comparées lors de la recherche d'unités.

Le premier problème du transfert de CS de la parole au son est que les unités de parole (lettres, syllabes, mots) sont clairement définies avec la grammaire de la langue et peuvent être segmentées en conséquence. Ce n'est bien sûr pas le cas en musique, même si l'on peut utiliser la note comme unité unique (à condition d'avoir la partition qui l'accompagne), comment automatiser une segmentation de morceaux de musique polyphoniques ou lorsqu'il n'y a pas de partition, dans le cas de field recordings par exemple ? Pour résoudre ce problème, Schwarz a utilisé la méthode DTW (Dynamic Time Warping) dans le cas d'une musique avec une partition MIDI correspondante (où le système calcule la distance entre la partition et le cadre d'exécution dans une matrice à deux dimensions), ou la méthode HMM (Hidden Markov Models) qui permet d'analyser l'audio avec et sans partition d'accompagnement (dans ce cas, la partition est créée sous forme de fichier SDIF à partir de l'analyse audio). Pour plus d'informations sur le cadre mathématique de ces méthodes, voir les thèses de doctorat de Schwarz de 2004, notamment les chapitres 6 et 7. Le prochain grand problème à résoudre est la définition des descripteurs. Schwarz les classe en trois niveaux :
- Les descripteurs de bas niveau qui sont "extraits des sons sources par des méthodes d'analyse de signaux”,
- Les descripteurs de niveau intermédiaire qui sont "dérivés des mesures absolues des descripteurs de bas niveau, mais qui sont transformés pour correspondre à la perception humaine" et
- “Les descripteurs de haut niveau qui ont un sens musical, [et] sont généralement attribués à des unités par l'utilisateur, ou sont donnés par la partition". et trois types :
- Les descripteurs de catégorie "expriment l'appartenance d'une unité à une catégorie ou à une classe" ainsi que leurs sous-classes comme le hautbois, qui est une sous-classe des bois, étant une sous-classe de instruments,
- des descripteurs statiques qui ont des valeurs constantes comme c'est le cas pour la hauteur de son MIDI, et
- Descripteurs dynamiques dont la valeur évolue dans le temps au sein d'une unité. Contrairement aux catégories et aux statistiques, les descripteurs dynamiques varient dans le temps et doivent être mis en correspondance avec des valeurs dites caractéristiques avant de pouvoir être utilisés pour la requête et la sélection d'unités, mais tous les descripteurs sont finalement exprimés sous forme d'algèbre booléenne, d'entiers, de nombres réels ou de symboles (Schwarz, 2004, 85-99).

Une fois que les fichiers sonores sont segmentés en unités et analysés selon des descripteurs, qui concerne à la fois le corpus et les fichiers sonores cibles, ils sont stockés dans une base de données relationnelle6. Elles peuvent y être comparées en fonction d'une caractéristique donnée et la meilleure correspondance pour chaque unité cible peut être trouvée, principalement sur la base de la distance euclidienne dans l'espace des caractéristiques de la base de données relationnelle. L'étape suivante est la synthèse, qui concatène les meilleurs résultats de la recherche l'un après l'autre, en appliquant un court fondu enchaîné à chaque unité, afin que le fichier sonore résultant ait une transition douce entre les unités. Ensuite, nous ferons un bref aperçu de CataRT et MuBu, des outils qui traitent de la concaténation basée sur le corpus, et qui sont utilisés dans les pièces présentées dans le chapitre suivant. Des logiciels comme Dada et Audioguide seront brièvement expliqués dans des sous-chapitres sur leurs auteurs respectifs, Daniele Ghisi et Benjamin Hackbarth.

CataRT7 est à la fois une application autonome et un outil intégré dans le langage de programmation Max/MSP8. Il a été créé en 2006, "sur la base des développements précédents Caterpillar pour la synthèse sonore musicale concaténative pilotée par des données en temps non réel [...], et Talkapillar pour la synthèse artistique texte-parole, la concaténation hybride entre la musique et la parole, et les effets vocaux pilotés par des descripteurs ou sensibles au contexte" (Schwarz et al., 2006, 1). Les auteurs considèrent la synthèse granulaire comme une version rudimentaire de la synthèse basée sur un corpus, dont certains principes ont été conservés et développés, de sorte qu'au lieu de sélectionner des unités au hasard, CataRT sélectionne sur la base d'une pré-analyse effectuée sur une cible et une base de données. Le CataRT fait essentiellement ce qui a été décrit ci-dessus ; il crée un espace multidimensionnel de descripteurs et le peuple d'unités sonores. Pour introduire des données dans le corpus, soit toutes les données (audio, marqueurs de segments, descripteurs bruts) sont chargées à partir de fichiers pré-analysés, soit les descripteurs sont analysés dans CataRT et une étape supplémentaire de détection de début segmente les fichiers sonores" (Schwarz et al., 2006, 2). Par souci de simplicité, l'espace multidimensionnel est représenté comme un espace bidimensionnel dans l'interface de CataRT, dans lequel l'utilisateur peut attribuer n'importe quel descripteur aux axes x et y, et verra un groupe de points représentant les unités sonores (voir image 1). Le CataRT peut être utilisé de différentes manières :
Synthèse granulaire exploratoire : en déplaçant la souris sur l'affichage des unités sonores, celles-ci sont restituées sous forme de nuages sonores continus.

Synthèse contrôlée par les gestes - les paramètres des gestes peuvent être cartographiés et mis à l'échelle dans un espace descriptif multidimensionnel et un contrôle plus fin qu'avec la souris peut être obtenu. Synthèse contrôlée par l'audio - le fichier sonore ou l'audio en direct est analysé, segmenté et resynthétisé à partir des meilleures unités correspondantes trouvées dans la base de données.
Le résultat sonore peut être soit enregistré pour une utilisation et une manipulation ultérieures, soit produit en direct tel quel ; ces deux options ont été explorées dans les pièces présentées dans le chapitre suivant.

 


Image 1 - Interface du CataRT ; à gauche, les options de configuration et à droite, une représentation bidimensionnelle des unités sonores selon deux descripteurs.

MuBu9 (abréviation de Multi Buffer) est un type spécial de structure de données dans Max qui, outre le stockage de sons échantillonnés, stocke également toutes les données connexes telles que les marqueurs, les descripteurs, les partitions, etc. Le souhait des auteurs était de créer "un conteneur générique qui peut représenter et donner accès à tout type de données, mais qui permet également l’implémentation de méthodes d'accès et de traitement spécifiques pour les pistes de types de données particuliers" (Schnell, 2009, 1). L'interface graphique, comme on peut le voir sur l'image 2, crée un index pour chaque marqueur sonore et le présente sous forme de forme d'onde, mais elle peut afficher de nombreuses données supplémentaires (comme des marqueurs, des valeurs de descripteur, des moyennes, etc. Chacun de ces onglets est facilement accessible et modifiable. Comme il ressort clairement de cette description, MuBu est un outil complexe doté de multiples fonctionnalités, le CSS n'étant que l'une d'entre elles. Le cœur du CSS dans MuBu est le moteur ZsaZsa pour l'analyse et la synthèse audio basé sur la transformation de Gabor10. On peut l'utiliser comme un simple synthétiseur granulaire, en mélangeant en boucle ou au hasard par l'index des segments, mais on peut aussi rechercher le meilleur segment selon un ensemble de règles, un modèle statistique ou des similarités entre le signal entrant et les segments de la base de données. Un des atouts de MuBu consiste à pouvoir toujours ajouter des sons au multi buffer, ce qui enrichit la base de données. Il y a quelques années, un autre moteur appelé PiPo (Plugin Interface for Processing Objects) a été ajouté, permettant ainsi au CataRT de fonctionner dans MuBu. Pour plus d'informations sur PiPo, voir (Einbond, 2016).


Image 2 - Interface de MuBu ; est affiché le son utilisé comme corpus ; vous pouvez utiliser votre voix ou un autre fichier sonore pour contrôler la synthèse concaténative.

3 Références
Einbond, Aaron, Diemo Schwarz, Riccardo Borghesi, et al. “Introducing CatOracle: Corpus-Based Concatenative Improvisation with the Audio Oracle Algorithm.” International Computer Music Conference (ICMC), edited by Hans Timmermans, HKU University of the Arts Utrecht, HKU Music and Technology, 2016, pp. 141–147.
https://hal.archives-ouvertes.fr/hal-01427364.

Khan, Rubeena A. “Concatenative Speech Synthesis: A Review.” International Journal of Computer Applications, vol. 136, p. 6.

Schnell, Norbert, et al. MuBu & Friends - Assembling Tools for Content Based Real-Time Interactive Audio Processing in Max/MSP. 2009, p. 4.

Schwarz, Diemo. “Concatenative Sound Synthesis: The Early Years.” Journal of New Music Research, vol. 35, no. 1, Taylor & Francis (Routledge), 2006, pp. 3–22.
----------. Data-Driven Concatenative Sound Synthesis. 2004.

1 Pour plus de détails, voir Schwarz, 2004, chapitre 7
2 L'échantillonnage est un terme utilisé pour la technique de synthèse sonore dans laquelle un dispositif appelé échantillonneur peut "enregistrer numériquement des sons et les reproduire, en appliquant une transposition, des changements de volume et des filtres". En général, le son enregistré est une note d'un instrument acoustique, qui est ensuite associée au clavier de l'échantillonneur" (Schwarz, 2004, 26).
3 Granular synthesis is also a sound synthesis technique that uses small portions of sound called grains as building blocks for creation of sound objects. A pre-recorded sound gets segmented into grains, which can get modified in some way and subsequently reassembled according to a new time order (Roads 2001).
4 Dans leur article original, Zils et Pachet tapent mu- et mosaic[k]ing sans la lettre k qui est incorrecte selon le standard de la langue anglaise, je vais donc emprunter le terme, mais l'utiliser avec une orthographe correcte qui inclut la lettre k.
5 L'IRCAM (Institut de Recherche et de Coordination en Acoustique/Musique) est un institut de musique électronique basé à Paris, fondé en 1977 par Pierre Boulez et responsable de travaux pionniers dans le domaine du traitement audio, dont l'invention du langage de programmation Max.
6 La base de données relationnelle a été développée par Edgar "Ted" Code chez IBM en 1970, et au fil du temps, elle est devenue un standard, car elle était plus pratique que les bases de données hiérarchiques ou en réseau utilisées auparavant.
7 Vous trouverez ici un lien vers un court fichier audio, suivi d'un son créé avec celui-ci en CataRT. https://app.box.com/file/671509923167?s=q9ahz6viqh0km7qbiv14noznfxyk0vy8
8 Max/MSP, également connu sous le nom de Max, est un langage de programmation visuel basé sur des objets pour la musique et le multimédia, actuellement sous licence de la société de logiciels Cycling 74, basée sur la SF, initialement développé à l'IRCAM par Miller Puckette. Sur un canevas visuel appelé patcheur, un utilisateur peut créer et connecter des objets qui permettent le flux de données entre les entrées et les sorties de divers objets, qui sont, pour le dire simplement, soit des fonctions d'exploitation soit des classes de stockage des données.
9 Vous trouverez ici un lien vers un fichier sonore dans lequel vous entendrez d'abord le son cible, puis le son résultant, et enfin les deux sons joués simultanément. https://app.box.com/file/671510647072?s=y4ncrtfm6goo65vbzmyvjz28ajk5sq3h
10 Dennis Gabor était un physicien et ingénieur électrique hongro-britannique, connu pour son invention de l'holographie. Ses contributions ont également été vitales pour le développement de l'analyse temps-fréquence.

Davor Branimir VINCZE

 

© L'ÉDUCATION MUSICALE 2020

 

 

INScore - un environnement pour la conception de partitions augmentées, dynamiques, interactives,
par Dominique FOBER

 

La notation musicale fait face à de nombreux défis posés par la création contemporaine. Les musiques spatialisées, les nouveaux instruments, les partitions interactives et temps-réel sont parmi les nouveaux domaines couramment explorés par les artistes. La notation musicale conventionnelle ne couvre pas les besoins de ces nouvelles formes musicales et de nombreuses recherches et approches ont récemment émergé, témoignant d’une certaine maturité des outils informatiques pour la notation et la représentation de la musique. Les problèmes posés par la spatialisation de la musique [1], par l’écriture pour de nouveaux instruments [2] ou de nouvelles interfaces [3] (pour n’en citer que quelques - uns), sont maintenant le sujet de recherches actives et de propositions originales. Les musiques interactives et les partitions temps-réel représentent également un domaine en pleine expansion dans le champ de la création musicale. Les partitions numériques et la maturation des outils informatiques pour la notation et la représentation de la musique constituent les fondements du développement de ces formes musicales, souvent basées sur des représentations non traditionnelles de la musique [4, 5] sans toutefois occulter son usage [6, 7].

Le projet INScore
Le projet INScore, développé depuis plus d'une dizaine d'années par le laboratoire de recherche de GRAME-CNCM, a pour ambition d'adresser ces problématiques émergentes. INScore est un environnement pour la conception de partitions augmentées, dynamiques et interactives [8, 9], résultat de nombreux travaux de recherche qui traitent notamment de :

- l'extension de la notation musicale à des objets graphiques arbitraires,
- la synchronisation temporelle dans l'espace graphique,
- la notation dynamique et interactive,
- la représentation de l'interprétation,
- l'extension de la partition à des dimensions réseau

La conception d'une partition est basée sur un langage de script spécifique et, de ce fait, ces travaux adressent également le domaine des langages de programmation pour la description de la musique.

Des partitions *étendues*
L'environnement INScore est basé sur la notation symbolique et s'appuie sur le projet Guido (également développé à GRAME) : un moteur de rendu de partition en notation traditionnelle qui s'inscrit dans la lignée des outils de compilation de partition musicale. Ce moteur prend une description textuelle de la musique en entrée pour en produire une représentation graphique. Cette description textuelle est au format GMN (Guido Music Notation language), largement inspiré des langages de balisage et notamment de LaTex. Si l'approche textuelle de la notation musicale nécessite l'apprentissage de ce langage (un investissement pas nécessairement plus important que l'apprentissage d'un logiciel de gravure musicale), elle présente l'énorme avantage de pouvoir être calculée de manière algorithmique. De plus, l'efficacité du moteur Guido permet de calculer des partitions en temps-réel, concourant ainsi aux aspects dynamiques développés dans INScore. Ces capacités du moteur Guido peuvent être expérimentées avec son éditeur en ligne.
INScore permet d'étendre la notation symbolique, voire de la remplacer, avec des objets graphiques arbitraires : des images, du texte, du dessin vectoriel, de la vidéo. Tous ces objets, y compris la notation symbolique, ont le même statut d'objet musical et ont notamment une dimension temporelle identique (i.e. une date, une durée et un tempo). Cette absence de hiérarchie permet de synchroniser ces objets dans des combinaisons arbitraires.

Représenter le temps d'objets hétérogènes
Si le temps de la notation traditionnelle est explicite dans le symbolisme de la notation elle même, il n'en va pas de même pour les objets graphique qui étendent la représentation de la musique. INScore met à profit la dimension temporelle homogène des objets de la partition pour fournir un système de *synchronisation temporelle dans l'espace graphique*, qui permet de représenter les relations temporelles entre ces objets. Si l'on imagine que chaque pixel d'un objet est porteur d'une date - la date de l'objet + l'interpolation de la position de ce pixel sur sa durée - le système de synchronisation permet potentiellement d'aligner graphiquement tous les pixels de deux ou plusieurs objets, portant la même date. La conception d'un curseur se positionnant à la date courante d'une partition relève alors d'une simple commande de synchronisation. Mais avant tout, il devient alors possible de raisonner dans l'espace temporel et donc dans une métaphore proche de la pensée musicale, le moteur de rendu se chargeant automatiquement de *traduire* les dimensions temporelles dans l'espace graphique.

Des partitions dynamiques et interactives
La notion de **tempo** fait partie intégrante de la dimension temporelle des objets. Par défaut, ce tempo est à zéro : l'objet est immobile dans le temps. quand la valeur du tempo n'est pas nulle, l'objet se déplace alors dans le temps à la vitesse spécifié par son tempo. A noter que la valeur associée au tempo est signée : elle peut donc être négative, l'objet va alors *remonter* le temps. Associé au système de synchronisation, l'utilisation du tempo permet de créer des partitions dynamiques, dont la forme et le contenu peuvent évoluer dans le temps de manière autonome.
Un système d'interaction vient complémenter ces aspects dynamiques. Le temps d'une partition, conçu comme un temps musical, relatif à un tempo, peut également être *événementiel*, c'est-à-dire relatif à des événements non datés, qui peuvent être programmés de manière arbitraire. Parmi ces événements figurent ceux classiques des interfaces utilisateurs (comme les click de souris par exemple) mais également des événements *temporels*, dont l'occurence dépend du déroulement du temps. Chaque objet de la partition est donc capable de *surveiller* des événements arbitraires, y compris dans le domaine temporel : à chaque événement est associé un ensemble de messages qui seront émis à chaque occurence de l'événement. Ces messages, exprimés dans le langage de script d'INScore, permettent potentiellement de re-programmer tout ou partie de la partition.

Représenter l'interprétation musicale
Pouvoir associer une représentation de l'interprétation musicale à la partition correspondante ouvre des perspectives nouvelles, notamment dans le domaine de la pédagogie musicale [18]. Dans l'environnement d'INScore, l'interprétation musicale est vue comme un signal audio ou gestuel (i.e. provenant de capteurs gestuels). INScore fournit des objets *signaux* qui permettent de créer une grande variété de représentations de ces signaux en les combinant et en créant des *signaux graphiques* qui sont en fait l'assemblage de 6 signaux : le premier contrôlant la position en 'y', le second la hauteur du trait dessiné en 'y', les 4 autres déterminant la couleur selon le modèle HSBA.
La simple combinaison d'une analyse audio de la fréquence fondamentale et des valeurs RMS, permet de créer un courbe pouvant représenter à la fois la hauteur et les articulations du jeu du musicien. Un signal graphique étant un objet musical ayant le même statut que les autres, il possède donc une dimension temporelle qui permet par exemple de le synchroniser, et donc de le mettre en regard de la notation.

Les dimensions réseau de la partition
INScore a été initialement conçu pour être piloté par des messages Open Sound Control [OSC], dont le format est définit par un protocole de communication réseau adapté au temps réel et couramment utilisé par les applications musicales pour des besoins de contrôle et/ou d'échange de données. L'environnement INScore est de ce fait particulièrement adapté aux réseaux et l'échange de messages entre partitions INScore peut se faire de manière native. Cela permet d'utiliser par exemple et de manière simple (avec une commande de *réexpédition*), une partition pour piloter un ensemble de partitions réparties sur un réseau local, ou encore de construire un système musical distribué sur un modèle client/serveur [19].
Une partition peut également embarquer un serveur web, la rendant ainsi accessible depuis internet et permettant également son pilotage depuis un navigateur. A l'inverse, les objets d'une partition peuvent faire référence à des ressources distribuées sur Internet, de manière similaire à un navigateur qui peut agglomérer des contenus provenant de différents sites Web.
Enfin, une version en ligne de l'environnement INScore est désormais disponible, permettant de s'affranchir des particularités des systèmes d'exploitation et de le rendre disponible sur toutes les plates-formes, sans installation.

Le langage de script d'INScore
Une partition INScore est décrite dans un langage de script spécifique. Ce langage est constitué d'une forme textuelle des messages OSC, étendue avec des notions de variables, des primitives de contrôle, ainsi que des primitives de composition de partitions symboliques. Le script suivant permet de décrire la partition ci-dessous de manière très concise :

/ITL/scene/title set txt "This is my first score !";
/ITL/scene/title scale 3;
/ITL/scene/title y -0.6;
/ITL/scene/title fontFamily Zapfino;

/ITL/scene/frame set rect 1.5 0.5;
/ITL/scene/frame color 230 230 230;

/ITL/scene/score set gmn '[ \meter<"4/4"> \key<-1> a f g c c g a f ]';
/ITL/scene/score scale 0.6;


Dans les faits, ce script mélange deux langages : le langage INScore dont la forme générale est `/adresse paramètres...`, et le langage Guido qui est utilisé pour spécifier le contenu de l'élément `score`.

Futures directions
Le projet INScore est alimenté par un flot continu de problématiques qui concernent la notation et la représentation de la musique. Dans un contexte de rapides évolutions technologiques, de nouveaux usages apparaissent et soulèvent de nouvelles question pour la notation musicale. Le développement de systèmes distants et distribués, où la partition obtiendrai le statut d'outil collaboratif, fait partie de ces nouvelles perspectives. Toutefois des problématiques plus anciennes restent encore à explorer, telles que, par exemple, la représentation de l'espace pour les musiques spatialisées ou de manière plus cruciale, la préservation de la partition numérique.

Ressources
Le projet INScore : https://inscore.grame.fr
Le projet Guido : https://guido.grame.fr
Documentation INScore : https://inscoredoc.grame.fr
Documentation Guido : https://guidodoc.grame.fr
L'éditeur en ligne INScore : https://inscoreweb.grame.fr
L'éditeur en ligne Guido : https://guidoeditor.grame.fr
Publications relatives au projet INScore.

-----------

Références

~~~~~~~~~~~~~
[1] E. Ellberger, G. Toro-Perez, J. Schuett, L. Cavaliero, and G. Zoia,
“A paradigm for scoring spatialization notation.”
in Proceedings of the First International Conference on Technologies for Music Notation and Representation - TENOR2015 (Paris, France),
pp. 98–102, Institut de Recherche en Musicologie, 2015.
[2] T. Mays and F. Faber,
“A notation system for the karlax controller,”
in Proceedings of the International Conference on New Interfaces for Musical Expression, (London, United Kingdom),
pp. 553–556, Goldsmiths, University of London, June 2014.
[3] W. Enström, J. Dennis, B. Lynch, and K. Schlei,
“Musical notation for multi-touch interfaces,”
in Proceedings of the International Conference on New Interfaces for Musical Expression,
pp. 83–86, Louisiana State University, May 31 – June 3 2015.
[4] R.R.Smith,
“Anatomic approach to animated music notation,”
in Proceedings of the First International Conference on Technologies for Music Notation and Representation - TENOR2015 (Paris, France),
pp. 39–47, Institut de Recherche en Musicologie, 2015.
[5] C. Hope, L. Vickery, A. Wyatt, and S. James,
“The decibel scoreplayer - a digital tool for reading graphic notation,”
in Proceedings of the First International Conference on Technologies for Music Notation and Representation - TENOR2015 (Paris, France),
pp. 58–69, Institut de Recherche en Musicologie, 2015.
[6] R. Hoadley,
“Calder’s violin : Real-time notation and performance through musically expressive algorithms,”
in Proceedings of International Computer Music Conference (ICMA, ed.), pp. 188–193, 2012.
[7] R. Hoadley,
“December variation (on a theme by earle brown),”
in Proceedings of the ICMC/SMC 2014, pp. 115–120, 2014.
[8] D. Fober, Y. Orlarey, and S. Letz,
“Inscore – an environment for the design of live music scores,”
in Proceedings of the Linux Audio Conference – LAC 2012, pp. 47–54, 2012.
[9] D. Fober, Y. Orlarey, and S. Letz,
“Augmented interactive scores for music creation,”
in Proceedings of Korean Electro-Acoustic Music Society’s 2014 Annual Conference [KEAMSAC2014], pp. 85–91, 2014.
[10] D. Fober, S. Letz, Y. Orlarey, and F. Bevilacqua,
“Programming interactive music scores with INScore,”
in Proceedings of the Sound and Music Computing conference – SMC’13, pp. 185–190, 2013.
[11] D.Fober,Y.Orlarey,andS.Letz,
“Representation of musical computer processes,”
in Proceedings of the ICMC/SMC 2014, pp. 1604–1609, 2014.
[12] A. Agostini and D. Ghisi,
“Bach : An environment for computer-aided composition in max,”
in Proceedings of International Computer Music Conference (ICMA, ed.), pp. 373–378, 2012.
[13] N. Didkovsky and G. Hajdu,
“Maxscore : Music notation in max/msp,”
in Proceedings of International Computer Music Conference (ICMA, ed.), 2008.
[14] P. Hudak, T. Makucevich, S. Gadde, and B. Whong,
“Haskore music notation – an algebra of music,”
Journal of Functional Programming, vol. 6, pp. 465–483, May 1996.
[15] S. W. Lee and J. Freeman,
“Real-time music notation in mixed laptop-acoustic ensembles,”
Computer Music Journal, vol. 37, pp. 24–36, Dec. 2013.
[16] D. Fober, Y. Orlarey, and S. Letz,
“Scores level composition based on the guido music notation,”
in Proceedings of the International Computer Music Conference (ICMA, ed.), pp. 383–386, 2012.
[17] H. Hoos, K. Hamel, K. Renz, and J. Kilian,
“The GUIDO Music Notation Format - a Novel Approach for Adequately Representing Score-level Music.,”
in Proceedings of the International Computer Music Conference, pp. 451–454, ICMA, 1998.
[18] D. Fober, S. Letz, and Y. Orlarey.
"Vemus - feedback and groupware technologies for music instrument learning."
In Proceedings of the 4th Sound and Music Computing Conference SMC’07 - Lefkada, Greece, pages 117–123, 2007.
[19] S. Zagorac and P. Alessandrini.
"Zscore: A distributed system for integrated mixed music composition and performance."
In Proceedings of the International Conference on Technologies for Music Notation and Representation – TENOR’18, pages 62–70, Montreal, Canada, 2018. Concordia University.
~~~~~~~~~~~~~

 



 

Dominique FOBER

 

© L'ÉDUCATION MUSICALE 2020

 

 

Marek Choloniewski : Keynote @SMC : Sound and Music Computing Conference

Marek Chołoniewski est un compositeur, artiste sonore, conférencier et interprète de renommée mondiale. Il est directeur du Studio de musique électro-acoustique de l'Académie de musique de Cracovie depuis 2000 et écrit de la musique instrumentale et électroacoustique pour le théâtre, le cinéma et la radio. Il produit également des installations sonores et vidéo et des performances audiovisuelles, dans les mondes physique et virtuel et a été impliqué dans l'organisation du festival annuel audio-art de Cracovie depuis ses débuts.

Marek Chołoniewski était cette année keynote pour la conférence SMC, dans laquelle il développe le concept de "sound space kinetics", une reflexion aujourd'hui incontournable dans le domaine des NIMEs : New interfaces for Musical Expression, ou la relation du geste au son par l'usage des nouvelles technologies

 

 
 

© L'ÉDUCATION MUSICALE 2020

 

Strune, une installation sonore de Davor Branimir Vincze et Hrvoje Hirsl

«Strune» est une installation audiovisuelle interactive inspirée de la théorie des cordes de la physique des particules, présentée en janvier 2018 à Galerija SC à Zagreb, Croatie. "Strune" se compose d'un piano tendu de 15 mètres de long fil, soutenu par une boîte de contreplaqué résonnant, et est entraîné pour résonner par un boulon tout filetage attaché à un caisson de basses. Un patch Max / Msp est utilisé pour traiter les vibrations se propageant sur la chaîne selon un jeu de données simulant Collisions de particules du LHC 13TeV. En conséquence, le processus fait ressortir une série de fréquences apparentées aux familles de particules produites par les résonances du quantum cordes mécaniques. Les détails de conception et les expériences du public sont décrits.

Jonathan Bell

 

© L'ÉDUCATION MUSICALE 2020

 

 

Jeu non supervisé: Une Boîte à outils d'apprentissage automatique (machine learning) pour Max
Benjamin D. SMITH, Guy E. GARNETT

RÉSUMÉ: Les modèles d'apprentissage automatique sont des outils utiles et attrayants pour le musicien “interactif”, permettant un large éventail d'interfaces et d'instruments. Avec le matériel grand public actuel, il devient possible d'exécuter des algorithmes avancés d'apprentissage automatique dans des situations de performances exigeantes, mais l'expertise reste une barrière d'entrée contraignante pour la plupart des utilisateurs potentiels. Les implémentations actuellement disponibles utilisent principalement des techniques d'apprentissage automatique supervisé, tandis que les capacités adaptatives et d'auto-organisation des modèles non supervisés ne sont généralement pas disponibles. Nous présentons une nouvelle boîte à outils gratuite d'algorithmes d'apprentissage automatique non supervisés implémentés dans Max 5, pour traiter la musique et la vidéo interactives en temps réel, à l'intention de l'artiste informaticien non expert.

Mots-clés NIME, apprentissage automatique non supervisé, théorie de la résonance adaptative, cartes auto-organisatrices, Max 5

1. INTRODUCTION
Alors que les applications ML (machine learning) fournissent des développements et des avancées significatives dans les performances musicales interactives, les outils continuent d'exiger un haut niveau d'expertise. Les applications typiques d'aujourd'hui sont soit conçues par un seul technicien / artiste [10, 12] ou par une équipe de développeurs et de créateurs artistiques [9]. Cependant, les bibliothèques et les boîtes à outils ready made pour les environnements de développement deviennent de plus en plus répandues [3, 4], ouvrant la voie à une adoption plus large de ces techniques. Les techniques de ML à disposition de l'artiste interactif se composent aujourd'hui principalement de modèles et d'algorithmes supervisés. Cette approche permet à l'utilisateur de sélectionner soigneusement les données d'entraînement (training data) afin d'atteindre des degrés élevés de précision et de répétabilité dans le fonctionnement du système. De plus, des limitations communes, telles que des périodes d’entraînement extrêmement longues et des exigences de calcul élevées, sont surmontées dans les réalisations récentes [3], permettant un apprentissage interactif en direct et la construction de modèles.

Les techniques adaptatives ou non supervisées, qui sont largement absentes des packages disponibles, peuvent offrir un certain nombre d'avantages dans certaines situations [8]. Contrairement aux techniques supervisées, les modèles adaptatifs apprennent progressivement et l’entraînement est toujours additif, évitant d’avoir à cesser l'ensemble de l'entraînement à chaque itération ou époque. Ils apprennent également immédiatement, tandis que les techniques supervisées nécessitent souvent des milliers d'époques avant de converger vers une tolérance appropriée. Les algorithmes non supervisés correspondent sans doute bien aux modèles de perception humaine et sont auto-organisés, pouvant fonctionner sans aucune intervention extérieure.

Afin de mettre l’ensemble des modèles ML à la disposition du musicien et artiste interactif, nous avons développé et publié une petite bibliothèque de techniques non supervisées pour l'environnement Max1 . Les cartes auto-organisées (SOM - self organizing maps) [6], la théorie de la résonance adaptative (ART) [1], les réseaux de perceptrons multicouches (MLP Multi-layer Perceptron) et les techniques d'encodage spatial [2] sont tous disponibles sous forme précompilée et/ou d'objets java pour Max. La bibliothèque est distribuée gratuitement pour des applications non commerciales. Nous présentons une discussion sur les avantages et les limites de ces modèles en ce qui concerne la musique interactive pour servir de bref tutoriel à l'utilisateur non expert sur l'utilisation de techniques de ML non supervisées pour des performances en temps réel.

2. ML.SOM
La carte auto-organisée (SOM) [6] fournit un regroupement et une classification non supervisés, mappant les données d'entrée de haute dimension (à n-dimensions) sur un espace de sortie bidimensionnel, préservant les relations topologiques entre les éléments de données d'entrée aussi fidèlement que possible. La principale force du SOM est sa métaphore fondamentalement visuelle, traduisant des données en hautes dimensions en une carte facilement représentable. En d'autres termes, la SOM produit une projection de l'espace de données d'entrée sur une carte bidimensionnelle de telle sorte que la proximité sur la carte est parallèle à une sorte de similitude (ou proximité) dans l'espace de données source (à n-dimensions). La visualisation de la carte peut conduire à un aperçu rapide et intuitif de l'organisation des données sources, révélant des clusters d'importance et d'intérêt. Il s'agit d'un modèle peu coûteux en termes de calcul et qui imite sans doute les modèles cognitifs humains conduisant à des résultats qui mettent en parallèle la perception et les décisions humaines à un niveau de base. En son cœur, le SOM est un réseau de neurones connectés dans une configuration bidimensionnelle (bien que des dispositions dimensionnelles plus élevées soient possibles) dans lesquelles chaque nœud représente une catégorie possible dans l'entrée. Le SOM peut également être considéré comme une généralisation non linéaire de l'analyse en composantes principales (PPA) sur laquelle le SOM offre sans doute de nombreux avantages [7]. Lorsqu'une entrée est présentée au SOM, une recherche est effectuée pour localiser le nœud le plus similaire (c'est-à-dire le plus proche, en utilisant une mesure de distance conventionnelle) ou gagnant sur la carte. L'apprentissage est ensuite effectué, en adaptant le nœud gagnant et ses voisins pour représenter de manière plus appropriée cette nouvelle entrée. L'apprentissage est calculé comme une réduction progressive de la distance entre l'entrée et le nœud de carte correspondant (le processus peut être compris comme un simple filtre passe-bas), et ce taux d'adaptation est contrôlé par le taux d'apprentissage de la carte. L'apparence topographique caractéristique du SOM est le résultat de l'adaptation des nœuds dans un voisinage progressivement décroissant autour du gagnant. Cet effet est contrôlé par un paramètre de rayon de voisinage et l'adaptation déplace les nœuds adjacents au nœud gagnant avec une proportion décroissante vers le bord du voisinage (nous utilisons une gradation linéaire). Le SOM est généralement initialisé avec des valeurs aléatoires, mais cela peut produire des classifications nettement divergentes (également dépendant de l'ordre d'analyse d'entrée). D'autres alternatives consistent à initialiser la carte de manière uniforme ou à utiliser une certaine forme de prédiction (comme l'analyse des composants principaux ou un SOM plus ancien sur un ensemble de données - dataset - précédent et exemplaire).

Enfin, le SOM peut prendre en compte l'âge de la carte et devenir progressivement plus résistant au changement, s'installant éventuellement sur une représentation permanente des données. L'avantage et l'inconvénient de cela sont que les données jusqu'à un certain point sont conservées comme base pour la cartographie, en restant à l'abri (c'est-à-dire en ignorant) les nouvelles données divergentes (contrôlées avec la propriété de solidification du ml.som). Les résultats du regroupement SOM peuvent être vus sur la fig. 1, où la carte s'entraîne sur une sélection de couleurs. Celle de droite utilise trois couleurs (cyan, magenta et jaune) qui se déposent à trois extrémités de la carte, se chevauchant pour produire la gamme de couleurs entièrement saturées. L'autre - à gauche - utilise huit couleurs (les trois initiales plus le rouge, le vert, le bleu, le blanc et le noir). Le noir et le blanc sont poussés dans les coins (la sélection des coins supérieurs coïncide avec l'ensemencement aléatoire de la carte) et les six couleurs restantes s'organisent selon un motif de roue chromatique classique. Le SOM dépend fortement de l'état d'initialisation et l'ordre des données d'entrée et l'importance des relations perçues résultantes dans la carte peuvent varier en conséquence. Randomiser et recycler le SOM produit différentes orientations des couleurs (et différents coins pour le noir et le blanc), mais le motif dominant reste cohérent.


Figure 1: SOM avec 64x64 nœuds formés sur huit couleurs (à gauche) et trois couleurs (à droite).

2.1 Exemple
Comme exemple d'application, nous décrivons un système minimal pour regrouper des exemples de timbre à partir d'un flux audio live (voir fig. 2). L'objectif est de permettre à un artiste en direct de jouer une gamme de matériel et de demander au SOM de rassembler des échantillons de sons similaires (en timbre) sur la carte. Ceci est un exemple utile car les mesures de similitude de timbre restent un problème ouvert dans la théorie de la perception musicale. Ml.som vise à fournir une interface robuste et facile à utiliser, et les listes de paramètres reçues par l'objet sont traitées comme de nouvelles entrées résultant en une correspondance et un apprentissage immédiats.

Nous partons de l'hypothèse que l'audio numérique est traité dans Max et qu'il a été analysé selon ses caractéristiques saillantes (centroïde spectral, intensité, bruit, bandes d'écorce, etc.). Ces fonctionnalités, garantissant que chaque valeur est mise à l'échelle sur (0-1), sont ensuite transmises directement au SOM. Nous configurons le SOM avec les arguments suivants:

• 64 nœuds en largeur et en hauteur
• 24 éléments en entrée, vecteur d'entités (24 paramètres)
• taux d'apprentissage de 0,1 (ou 10%)
• taux de solidification de 0,01 (ou 1%)
• rayon de voisinage de 8 nœuds.


Figure 2: correctif SOM minimal pour classer les fonctionnalités d'entrée (à l'aide de l'objet som java ml).

Dans la figure 2 le message randomize initialise la carte dans un état aléatoire et doit être utilisé avant le début de l'opération. Une fois le jeu en cours, les emplacements 2D qui sont entraînés seront affichés dans les cases numériques descendant de la sortie la plus à gauche. Nous laissons à l'utilisateur final le soin de définir une fonction pour l'utilisation de ces données (peut-être: enregistrer les coordonnées à certains points pendant la performance, calculer une mesure de distance, reflétant un degré de similitude ou de différence de timbre, et utiliser ce résultat pour conduire un moteur de synthèse). La sortie droite du ml.som (sortie médiane de l'objet java) produit l'état modifié et entraîné du nœud correspondant (basé sur l'entrée la plus récente ou le message Get). Cela permet une analyse algorithmique et / ou l'affichage des données de la carte. Il est prévu que le jeu du musicien en direct trace des formes ou des motifs sur la surface de la carte, traversant des figures qui correspondent de manière fiable à des déclarations musicales données (telles que des articulations, des registres et des changements dynamiques). Ceux-ci pourraient facilement être rendus visuellement (en utilisant un objet lcd, par exemple), pour donner à l'utilisateur une idée de la nature du mapping. Une fois qu'une régularité est observée, elle peut être connectée à une autre couche d'apprentissage automatique (en utilisant un autre ml.som ou un ml.art) pour apprendre ces modèles de niveau supérieur et mapper vers des fonctions analogues dans le système de performance.

3. Les algorithmes ML.ART
Les algorithmes Adaptive Resonance Theory [1] ont été initialement proposés comme modèle de calcul de l'attention humaine, utilisant un réseau de neurones. Comme le SOM, ART compare les nouveaux vecteurs de caractéristiques d'entrée avec les nœuds de catégorie connus et forme le réseau de manière adaptative. Cependant, les nœuds ART ne s'influencent pas mutuellement pendant l'entraînement (ils ne sont pas connectés au sens où le SOM les emploie), et la métaphore spatiale n’est pas significative. Alors que les cartes SOM présentent l'espace de manière continue sur la carte (c'est-à-dire que les points intermédiaires entre les nœuds du réseau SOM peuvent être interpolés), l'ART code une zone continue d'espace de fonctionnalité dans chaque nœud (ml.art implémente la version ART floue ou “fuzzy”). Lorsqu'un nœud de catégorie gagnant est identifié lors de la présentation d'entrée, le nœud doit passer un test de vigilance avant que l'apprentissage ne puisse commencer. Le processus de vigilance vérifie la zone que représenterait la catégorie gagnante si l'entraînement devait se poursuivre et garantir que la catégorie ne dépasse pas une limite prédéfinie (définie avec le paramètre de vigilance). Si la catégorie reste dans la limite, il est permis de s'adapter et d'apprendre la nouvelle entrée, de la même manière que le SOM (en utilisant un paramètre de taux d'apprentissage). Cependant, si la catégorie s'étendait pour englober une trop grande partie de l'espace des fonctionnalités, le nœud est supprimé de la considération et la recherche d'un nœud gagnant est effectuée à nouveau.

Ainsi, l'ART est idéal pour localiser des catégories dans des flux de données continus et la granularité de l'analyse peut être facilement ajustée. Comme pour le SOM, la sélection des caractéristiques est importante mais dans l'ART, la dimensionnalité complète des relations de catégorie est préservée, permettant une analyse plus approfondie des résultats de l'ART à tout moment (voir [11], par exemple).

L'ART est efficace en termes de calcul et, parce que de nouveaux nœuds peuvent être ajoutés au besoin, capable de classer des ensembles de données étendus avec un large éventail de spécificités (limité uniquement par le hardware). C'est sans doute un modèle approprié de processus de mémoire à long terme humains [5, 10] et il est donc utile dans les modèlisations informatiques de perception. Alors que l'indice de nœud de l'ART n'a qu'une signification interne, il est trivial d'obtenir la résonance (c'est-à-dire la mesure de distance) de chaque catégorie avec chaque entrée. Cette résonance, ou ajustement, peut décrire de nombreux aspects utiles de l'entrée, tels que la clarté de l'ajustement (différence entre le pic et la résonance moyenne), la signification de l'entrée (somme de toutes les résonances) et la comparaison de cet ajustement aux ajustements précédents (indiquant le mouvement dans l'espace de classification). Cette dernière mesure peut potentiellement donner un fort sentiment de mouvement en coupe dans une pièce, indiquant des passages de transition ou des changements soudains.

Bien que l'ART ne soit pas sensible aux divergences d'initialisation (tous les nœuds non formés sont considérés comme nuls), il dépend fortement de l'ordre des données d'entrée. Les classifications, et en particulier les limites définies par les nœuds ART, peuvent être radicalement différentes si les entrées sont présentées dans une séquence différente. Cela peut être à la fois une force, dans le cas de l'analyse musicale où l'identité d'une pièce ou de l'improvisation exige une certaine séquence, et une faiblesse, semblant incohérente lorsque les modèles supervisés sont cohérents.

Ml.art a une entrée et deux sorties et accepte des listes qui sont traitées comme des vecteurs de caractéristiques d'entrée. Ici, la taille du vecteur d'entité en entrée n'a pas besoin d'être spécifiée à l'avance car les nœuds ne sont remplis que lorsque les données sont reçues et le réseau continuera de croître au besoin pour coder toutes les données reçues. Par défaut, l'ART fera toujours correspondre la meilleure catégorie de sous-ensemble à l'entrée reçue, bien que ce comportement puisse être annulé en définissant le paramètre de choix > 0, où des valeurs plus élevées imposent des correspondances plus restrictives. Tous les paramètres peuvent être définis dynamiquement avec les messages appropriés et le ml.art peut être effacé à tout moment. Lors de l'apprentissage réussi d'un nouveau noeud ml.art sort l'ID de catégorie gagnante ainsi que les résonances de toutes les catégories entraînées.

3.1 Exemple
Nous décrivons maintenant la construction d'un petit système pour analyser, apprendre et identifier des séquences de hauteur mélodique (sur le modèle de [5, 10], voir fig. 3). Outre ml.art, cela nécessitera une méthode pour produire une séquence de données de hauteur. Une fois qu'une séquence de pitch est disponible, elle est réduite à ses “pitch classes” (en prenant la hauteur modulo % 12).

Afin d'effectuer l'extraction et la mise en correspondance de motifs sur cette séquence de hauteurs, l'ART a besoin d'une représentation uniformément dimensionnée qui capture à la fois les classes de hauteurs et l'ordre des notes. Ceci est accompli en utilisant ml.spatial, décrit ci-dessous. Pour l'instant, nous plaçons un objet ml.spatial au bas de la courte chaîne de traitement (le vecteur caractéristique résultant pour une mélodie descendant chromatiquement est affiché dans le graphique au milieu à droite de la figure 3). Maintenant, nous ajoutons un objet ml.art avec les paramètres «0 0,5 0,85» (correspondant respectivement au choix, au taux d'apprentissage et à la vigilance). Celles-ci sont définies pour encourager la recherche d’ensemble de sous-ensembles profonds,


Figure 3: Max 5 patch utilisant ml.art et ml.spatial pour identifier les modèles mélodiques. recherche,

une vitesse d'apprentissage moyenne et une génération de catégories assez serrée, respectivement. Le ml.spatial se connecte directement au ml.art. Enfin, l'indice de catégorie pour une entrée donnée est affiché dans la zone numérique en bas à gauche. En jouant dans le système, l'ART extrait et apprend des motifs mélodiques. Par exemple, un musicien pourrait choisir plusieurs courts fragments mélodiques (5 à 7 notes de long) et noter les numéros d'index de catégorie produits pour chacun. Lors d'une performance improvisée, l'occurrence de ces indices pourrait alors être utilisée pour déclencher les actions souhaitées. Ce modèle d'interaction orienté événement peut être encore augmenté pour incorporer une variation continue en mesurant la résonance relative de chaque nœud cible pour n'importe quelle entrée donnée. La sortie droite de ml.art produit le vecteur de résonance résultant de chaque entrée tel qu'il est présenté à l'ART (illustré graphiquement dans le tableau en bas à droite de la figure 3). Le décompactage de cette liste et l'observation de la valeur à la position corrélée avec les indices cibles donneront une mesure de la mesure dans laquelle l'entrée actuelle correspond ou résonne avec les catégories de modèles entraînés (sur la figure 3, par exemple, l'entrée la plus récente correspond à la catégorie 8), indiqué dans la case numérique, résonne fortement avec les catégories 1 et 2, mais beaucoup moins avec les catégories 4, 5, 7 et 9). Ainsi, une mélodie ou une séquence de hauteur souhaitée, une fois apprise par l'ART, peut être utilisée comme référence lors d'une performance répondant continuellement "à quel point le matériau actuel est-il proche de ce que j'ai déjà appris?"

4. ML.SPATIAL
Comme cela a été mentionné, l'identification, la sélection et l'encodage des caractéristiques (features) est un élément clé des techniques de Machine Learning. De nombreux traits souhaitables peuvent simplement être mis à l'échelle dans une plage appropriée et introduits directement dans l'un des modèles décrits ci-dessus, mais ce n'est pas toujours le cas. Par exemple, le simple fait de traiter la hauteur comme une valeur de fréquence continue passe à côté des relations fonctionnelles inhérentes aux musiques tonales. La technique de codage spatial fournit une solution prête à l’emploi, permettant au modèle ML d'apprendre les relations entre les éléments dans une séquence ordonnée dans le temps.

Le codage spatial est apparu dans l'analyse en langage naturel où les lettres de mots sont codées en vecteurs et utilisées comme modèles de classification [2]. Le même principe peut être appliqué à la musique, en utilisant tous les jetons d'un ensemble (tels que les degrés d'échelle ou les classes de hauteur) [5]. Le codage est réalisé en utilisant un modèle de réseau neuronal à couche unique avec une composante de rétroaction d'atténuation. Chaque échantillon de l'ensemble de données (dataset) donné est attribué à un nœud du réseau (c'est-à-dire que douze nœuds seraient utilisés pour coder des classes de hauteur). Lorsqu'un échantillon est présenté au réseau, le nœud associé est entièrement alimenté (valeur définie sur 1) et un suppresseur est appliqué à tous les autres nœuds, modélisant l'attention du réseau en se concentrant sur l'entrée la plus récente (voir fig. 4). Ceci est généralement accompli en réduisant l'énergie de chaque nœud d'une petite quantité (de manière linéaire, par exemple de 0,15), ou en amortissant le réseau dans son ensemble (de façon exponentielle, en multipliant chaque nœud par, par exemple, 0,85). Le produit du codage est une représentation vectorielle de dimensions uniformes de l'ordre des échantillons les plus récents (généralement 7 ± 2 lors de la modélisation d'une mémoire humaine à court terme typique).

 


Figure 4: Codage spatial de courts fragments mélodiques.

Une fois l'encodage terminé, le vecteur peut être traité par un modèle ML. Une chaîne d’échantillons codée spatialement rend les comparaisons ensemble-sous-ensemble triviales et rend également possible l'identification des ensembles réorganisés (rétrograde, extension, contraction et ornementation deviennent ainsi transparents pour le classificateur). Chacun de ceux-ci se traduira par des vecteurs codés qui ont des éléments similaires, permettant une identification facile par un SOM ou ART, par exemple.

Cependant, des ambiguïtés peuvent se produire, par exemple lorsqu'un échantillon apparaît plusieurs fois dans une chaîne et que les apparitions antérieures sont remplacées par les suivantes. L'effet de cet échantillon précédent est toujours présent dans la désintégration des autres nœuds, mais en fonction de la précision requise du système, cela peut avoir un effet néfaste.

Un mode d'activation dynamique [11], incorporé dans ml.spatial, tente de réduire cet aspect négatif. Ce mode active un nœud d'une quantité proportionnelle au mérite d'attention calculé pour l’échantillon présenté (la valeur de mérite doit être entrée avec l’échantillon). Cette méthode masque l'ordre des échantillons, mais elle permet à un l’échantillon proéminent de recevoir une grande attention tandis que les échantillons insignifiants ne sont que peu représentés (ce mode est activé avec un message approprié à l'objet ml.spatial). Les paramètres de contrôle de ml.spatial sont: le nombre d’échantillons dans le jeu de données d'entrée (26 pour le texte anglais, 12 pour les classes de hauteur, etc.), le taux de décroissance (force d'atténuation) et le choix d'une décroissance linéaire ou exponentielle modèle. Le taux de décroissance contrôle la longueur de la mémoire du réseau et peut être calculé comme un sur la longueur souhaitée (pour conserver 7 échantillons, le taux de décroissance doit être réglé sur 1/7 ou 0,143). Le modèle linéaire soustrait cette quantité de chaque nœud à chaque pas de temps (nouvelle présentation d'entrée) tandis que le modèle exponentiel multiplie chaque nœud par un moins le taux de décroissance. L'opération dans Max consiste simplement à saisir un entier représentant l’échantillon considéré et à recevoir le vecteur d'entités en sortie (sous forme de liste de flottants). Cela peut ensuite être directement acheminé vers les objets ml.som ou ml.art. Les cas éprouvés pour le codage spatial comprennent les degrés d'échelle mélodique, les intervalles tonaux, les classes de hauteur et les classes d'intervalle [5, 10, 11]. L'espace timbral et la modélisation rythmique peuvent également être des zones prêtes pour l'encodage. De plus, il devient possible d'acheminer la sortie d'un ART (l'ID de catégorie gagnante) dans un codeur spatial et de créer un système ART multicouche [5, 12], qui sert à suivre la structure hiérarchique au sein de l'entrée.

5. CONCLUSION
Actuellement, aucun des objets ml.x ne prend explicitement en charge la conservation de l'état entre les sessions.2 Nous prévoyons de mettre en œuvre des capacités d'exportation de modèles pour permettre une sauvegarde et un chargement rapides des états pré-formés. De plus, nous avons l'intention d'étendre la bibliothèque pour inclure plus de techniques à mesure qu'elles sont identifiées ou demandées et une version PD de cette bibliothèque est également à l'étude. Nous avons décrit la fonctionnalité et la théorie derrière plusieurs techniques ML puissantes implémentées dans une nouveau package pour Max. Des exemples simples mais pertinents ont été décrits dans le but de fournir un accès à ces outils pour les utilisateurs non experts, sous la forme de programmes rapidement et facilement mis en œuvre. Nous espérons que ce travail contribuera et permettra d'explorer davantage les nouvelles possibilités esthétiques offertes par les techniques de machine learning en informatique musicale interactive.

6. REMERCIEMENTS Les auteurs remercient eDream et le National Center for Supercomputing Applications de l'Université de l'Illinois à Urbana-Champaign.

7. RÉFÉRENCES
[1] GA Carpenter, S. Grossberg et DB Rosen. ART flou: apprentissage stable rapide et catégorisation des motifs analogiques par un système de résonance adaptative. Neural Networks, 4: 759–771, 1991.

[2] CJ Davis et JS Bowers. Contrastant cinq théories différentes du codage de position des lettres: preuves des effets de similitude orthographique. Journal of Experimental Psychology: Human Perception and Performance, 32 (3): 535–557, 2006.

[3] R. Fiebrink, PR Cook et D. Trueman. Cartographie Play-along des contrôleurs musicaux. Dans Actes de la Conférence internationale sur la musique informatique, 2009.

[4] N. Gillian, R. Knapp et S. O'Modhrain. Une boîte à outils d'apprentissage automatique pour l'interaction ordinateur musicien. Actes de la Conférence internationale de 2011 sur les nouvelles interfaces pour l'expression musicale (NIME11), 2011.

[5] RO Gjerdingen. Catégorisation des modèles musicaux par des réseaux neuronaux auto-organisés. Perception musicale, 1990.

[6] T. Kohonen. La carte auto-organisée. Actes de l'IEEE, 78 (9): 1464–1480, 1990. [7] Y. Liu, R. Weisberg et C. Mooers. Évaluation des performances de la carte auto-organisée pour l'extraction d'entités. Journal of Geophysical Research-Oceans, 111 (C5), 2006.

[8] Page MPA. Modélisation de la perception des séquences musicales avec des réseaux de neurones auto-organisés. Connection Science, 6 (2 & 3): 223–246, 1994.

[9] M. Schedel et R. Fiebrink. Une démonstration de la reconnaissance de l'articulation de l'arc avec wekinator et k-bow. Dans Proc. Conférence internationale de musique informatique, 2011.

[10] B. Smith et G. Garnett. La machine auto-surveillée. Dans Proc. of New Interfaces for Musical Expression, 2011.

[11] B. Smith et G. Garnett. Écoute machine: Interface acoustique avec l'art. Dans Proc. of SIGCHI Intelligent User Interfaces, 2012.

[12] B. Smith et G. Garnett. Apprentissage par renforcement et improvisateur musical créatif et automatisé. Dans Proc. d'EVOMUSART, 2012.

------------------
1 http://cycling74.com
2 Note du traducteur : l’auteur décrit la version de 2012, celle de 2019 bénéficie de nombreuses améliorations, dont la sauvegarde de presets etc...

"Cet article est traduit des proceedings de la conférence NIME 2012 https://www.nime.org/proceedings/2012/nime2012_68.pdf"

Benjamin D. SMITH, Guy E. GARNETT (traduction Jonathan BELL)

 

© L'ÉDUCATION MUSICALE 2020

 

 

CAGE, UNE LIBRAIRIE DE HAUT NIVEAU DÉDIÉE À LACOMPOSITION ASSISTÉE PAR ORDINATEUR DANS MAX
Andrea Agostini, Éric Daubresse, Daniele Ghisi

RÉSUMÉ
Cet article est une introduction à cage, une librairie pour l’environnement Max1 composée d’un certain nombre de modules de haut niveau pouvant être utilisés principalement pour la composition assistée par ordinateur. La librairie, actuellement en version alpha, contient un ensemble d’outils dédiés à plusieurs catégories de problèmes typiquement abordés par cette discipline : génération de notes, génération et traitement de profils mélodiques, processus symboliques inspirés par le traitement du signal audio, interpolations harmoniques et rythmiques, automate set L-systèmes, rendu audio, outils pour la set theory, outils pour la gestion de partitions. Ce projet, soutenu par la Haute école de musique de Genève2, a principalementune vocation pédagogique : en effet, tous les modules dela librairie sont des abstractions, qui se prêtent très facilement à être analysées et modifiées.

1. INTRODUCTION

Dans cet article seront abordés certains des principaux concepts de la librairie cage3 pour Max ; elle contient plusieurs modules de haut niveau pour la composition assistée par ordinateur (CAO). Elle est entièrement basée surla librairie bach : automated composer’s helper, développée par deux des auteurs [1, 3]. Comme pour bach, cage est principalement centrée autour de la notation symbolique dans le domaine du temps réel. Les objets de cage communiquent entre eux avec le mécanisme des Lisp-likelinked lists(lllls) [2].
À la différence de bach, qui se compose d’un grandnombre d’objets et d’abstractions prenant en charge desopérations de bas niveau sur ces listes (p.e. : rotations,inversions, entrelacements...), ou bien des opérations très avancées mais cependant essentiellement basiques (p.e. :résolution de problèmes par contraintes, quantification rythmique...), les modules de cage accomplissent en généraldes taches de plus haut niveau, ayant une connotation plutôt compositionnelle que strictement technique (p.e. : génération de matériel mélodique ou calcul de modulations de fréquences symboliques).
Deux critères principaux ont motivé la conception et réalisation de la librairie.
Le premier est celui qui a été à la base de la création de cage: construire une librairie de modules prêts à l’utilisation pour créer des classes de processus assez universels dans la pratique de CAO. Une partie de cette librairie est donc directement inspirée par d’autres librairies déjà existantes dans quelques logiciels (notamment les librairies Profile[9] et Esquisse[6, 8] pour Patchwork,qui ont ensuite été portées dans OpenMusic[4]) ; parallèlement, un autre versant de la librairie trouve sa raison d’être dans des concepts issus du monde du temps réel (p.e. :cage.granulate, le moteur de granulation symbolique).
Le second critère est lié à la forte connotation pédagogique du projet : à la difference de bach, dont les fonctionnalités principales sont implémentées dans des objets compilés, tous les modules de la cage sont des abstractions, qui se prêtent très facilement à être analysées et modifiées. Il n’est donc pas compliqué, pour l’utilisateur qui souhaite apprendre à manipuler des données musicales, de copier, modifier ou ajuster des morceaux de patch pour ses propres besoins. Cette flexibilité des abstractions fait en sorte que, bien que les processus implémentés soient conçus pour fonctionner facilement avec une connaissancemoyenne de Max, l’utilisateur plus avancé pourra non seulement partir de ces abstractions et en modifier le comportement selon son projet, mais également les intégrer dans son propre environnement de travail, que ce soit au studio ou dans le cadre d’une performance. Cette vocation pédagogique est complétée par le fait que la librairie sera entièrement documentée, avec des fichiers d’aide, des feuilles de référence et une collection de tutoriaux.