Introduction
Au début de l'année 2008, Robin Meier et moi-même avons créé un système musical capable d'apprendre un répertoire constitué d'un millier de fragments musicaux de diverses origines, depuis le Requiem de Fauré au genre "techno hardcore", afin de générer de manière autonome "le tube le plus obscur de tous les temps".
Ce système musical est constitué d'une groupe - un orchestre - constituée de 300 microprocesseurs, et autant d'agents, émulant des comportements naturels : doté d'un réseau de neurones artificiels chaque agent est capable d'interagir avec les agents voisins, d'apprendre depuis une base de données musicale et de générer, par incidence et de manière immédiate, un matériau musical original : sans intervention humaine, cette communauté d'agents évolue continument dans un style de musique pop-rock "gothique", en contrôlant différents synthétiseurs audio-numériques.
Le réalisation de ce système original relève de différents domaines de recherche, concernant notamment l'étude des structures temporelles a court-terme et l'analyse musicale (représentations, analyse harmonique, analyse stylistique...). Ici, ces aspects analytiques ont été automatisés et intégrés au sein d'un système informatique autonome fonctionnant, en public, pendant plusieurs mois.

Adaptés à nos besoins, de tels réseaux neuronaux artificiels étaient capables de générer des variations continues inspirées des thèmes musicaux préalablement choisis. Ces variations pouvaient être influencées par l'ajout de nouveaux fragments musicaux qui étendaient ainsi la "connaissance" et, par conséquent, l'activité musicale du système, et la richesse des séquences ainsi générées.
D'autres paramètres tels que, notamment, l'activité et le choix des agents voisins, leurs taux d'apprentissage, leur sensibilité aux aspects cycliques où mélodiques, étaient à même d'influencer la production musicale du système.


Analyse harmonic et rythmic
Pour LMD, nous avons choisi de répartir les agents générateurs en six groupes - pupitres - correspondants au fonctions des musiciens dans une formation traditionnelle "pop-rock" : soliste ("lead", généralement chant), basse, 1er accompagnement (en général : guitare), 2nd accompagnement (deuxième guitare, clavier ou cuivres), ambiance (synthés) et percussions. Chacun de ces groupes pouvaient apprendre et générer à la volée les structires musicales propres à leur fonction. Il était alors stratégique - tel était notre pari pour la bonne conduite de cette expérience - que chacune des parties ainsi réalisées par les différents agents soient cohérentes tant rythmiquement qu'harmoniquement.
Pour ce faire, nous avons fait appel, là encore, aux propriétés d'une vaste carte auto-organisatrice SOM qui nous a permis d'organiser et de catégoriser de manière automatique les centaines de fragments préalablement encodés sur un espace à deux dimensions (correspondant au plan constitué par les neurones formels).
Une fois cette carte établie, nous pouvions choisir au hasard et de manière automatique un fragment quelconque, une partie de basse par exemple, et trouver dans le voisinage sur cette carte des fragments musicaux "similaires" en quelque aspect dû à la catégorisation automatique, correspondant aux autres parties (chant, guitares, claviers, percussions...).
Par ailleurs, en élargissant le rayon du voisinage dans lequel les nouveaux fragments pouvaient être choisis pour l'apprentissage et le jeu des agents, nous pouvions graduellement ajuster le degré de liberté "tonale" ou rythmique de l'ensemble rendu par les différents agents, allant ainsi d'un style plutôt homophone à un style dodécaphonique ou complètement libre...

Vocabulaire de l'obscur
Si le style musical généré et sa variété est principalement déterminé par le répertoire choisi pour l'apprentissage du système génératif, les sonorités rendues par les synthétiseurs et les effets sonores jouent aussi un rôle prépondérant. En collaboration avec des musiciens de la scène électronique française, Franck Rivoire - DANGER (Ekleroshock records) et Klement (Contre Coeur records), nous avons cherché et réalisé des sonorités électroniques "sataniques", sombres et saturées tout en essayant de formaliser leurs techniques personnelles et intuitives de mixage (effets de filtres, compresseurs, réverbérations, etc.) lors de séances de travail spécialement dédiées à ces aspects musicaux particuliers au rendu sonore.
Durant ces sessions, nous enregistrions non seulement le mixage sonore réalisé par ces musiciens, mais aussi et surtout l'ensemble des paramètres de contrôle des synthétiseurs et des effets mis à disposition. De plus, les valeurs de paramètres enregistrés étaient accompagnés de leurs propres commentaires stylistiques et de leurs évaluations quantifiées quant à la noirceur du rendu effectué.
Bien que l'aboutissement de cette recherche sur les techniques de mixage dépassait le temps imparti pour la réalisation de LMD, nous avons pu intégrer au système une sélection des techniques utilisées pour le control du rendu sonore de la production des agents neuronaux.
Ainsi, pour LMD, nous avons choisi la forme d'un "mix" évoluant selon une période pouvant s'étendre à quarante minutes, commençant dans un style "ambient" dominé par de longues et lentes phrases de basse et de percussions intermittentes plongées dans différents effets de réverbération. Ce mix allait ensuite en se densifiant avec des lignes mélodiques émergent progressivement sur des motifs variés pour atteindre progressivement une alternance de type couplet-refrain où les périodes, de plus en plus courtes aboutissaient à des sons de plus en plus saturés qui pouvaient donner place, enfin, à une nouvelle texture annonçant le cycle suivant.
Principe général
Les segments musicaux et les données de mixage constituant le corpus d'apprentissage ont été selectionnés, segmentés et formatés à l'aide de scripts shell (UNIX) et de programmes common-lisp. La grappe de processeurs est constituée de 300 ordinateurs embarqués (Calao Systems), processeur ARM (Atmel) et une mémoire (RAM) de 256Mb chacun. Chaque unité fonctionne à l'aide d'un système GNU-Linux (Uclibc) qui exécute des scripts shell instanciant un agent neuronal écrit en langage C (Java pour les tests). Des scripts en langage Python assurent
la communication entre les agents et l'ensemble du système au moyen du protocole TCP/IP, en UDP. Par ailleurs, un serveur GNU-Linux (Debian) contrôle, au moyen du logiciel PureData, l'ensemble des agents et le routage de leus activations neuronales vers la synthèse audio, celle-ci étant réalisée dans MaxMSP (Cycling'74) au moyen d'un greffon (plug-in) VST Reaktor
(Native Instrument) sur un ordinateur Apple Max OS X (Intel DualCore), avec une diffusion sur 6 canaux (Meyer Sound).
Des enregistrements témoins ont été réalisés sur un serveur GNU-Linux dédié à l'aide de PureData et la maintenance locale ou distante à travers un troisième serveur GNU-Linux.
L'ensemble du code original a été écrit par Frédéric Voisin and Robin Meier en Lisp, Python, Korn-shell, PureData, MaxMSP. Des adaptations en C en Java pour les plateformes Uclibc
et MaxMSP réalisées par John Mac Callum. L'ensemble du code développé est destiné à être dans le domaine public et explicité au cours des futures publications des auteurs.
Extrait de la liste des artistes constituant le répertoire d'apprentissage
Alisée,
Alphaville,
Bauhaus,
Beastie Boys,
Black Sabbath,
Blondie,
Carpenter,
The Cure,
Daftpunk,
David Bowie,
Depeche Mode,
The Doors,
Eurythmics,
Indochine,
Ironmaiden,
Jean-Michel Jarre,
Kraftwerk,
Linkin Park,
Madonna,
Metallica,
Nine Inch Nails,
Pink Floyd,
PJ Harvey,
Tangerinedream, ...
Mentions
Musique, conception et réalisation du système "IA" :
Robin Meier (http://robin.meier.free.fr)
Frédéric Voisin ()
Last Manœuvres in the Dark
Fabien Giraud
Raphael Siboni (http://raphaelsiboni.com)
Développement
John Mac Callum
Synthesiseurs
Olivier Pasquet (http://opasquet.net)
Mixers
DANGER (Ekleroshock) (http://www.myspace.com/2emedanger)
Klement (Contre Coeur) (http://www.myspace.com/klement666)
Music for Last Manœuvres in the Dark
---- A proposOn Analytical vs. Schizophrenic Procedures for Computing Music