Master 2012 2013
Stages de la spécialité SAR
GENESIS, environnement de création musicale à l’aide du formalisme de modélisation physique CORDIS-ANIMA : Outils pour la modélisation de structures de très grande taille


Site :ACROE et ICA
Lieu :ACROE et ICA Grenoble INP, 46 av F. Viallet, 38000 Grenoble
Encadrant : Claude Cadoz, Nicolas Castagné
Dates :A préciser (adaptable)
Rémunération :Stage indemnisé
Mots-clés : Parcours ATIAM : Informatique musicale

Description

Organisme d’accueil : Laboratoire ICA Adresse : Grenoble INP, 46 avenue Félix Viallet 38031 Grenoble CEDEX 1 Site internet de l’organisme : http://acroe.imag.fr Responsable du stage : Claude Cadoz Tel : 04 76 57 46 61 Adresse électronique : Claude.Cadoz@imag.fr Equipe : Claude Cadoz, Nicolas Castagné


Description L’environnement GENESIS est un outil de création musicale qui s’appuie sur le formalisme de modélisation et de simulation des objets physiques CORDIS-ANIMA créé par le laboratoire ACROE-ICA. CORDIS-ANIMA permet la synthèse de son et la composition musicale en modélisant les composants de la chaîne qui va de la source d’énergie (typiquement, la simulation d’un geste instrumental) au phénomène sonore en passant par la mise en vibration de corps sonores virtuels de complexité quelconque. Les objets physiques sont modélisés sous la forme d’un réseau d’éléments matériels ponctuels et d’interactions (élasticités, frottements, interactions physiques linéaires et non linéaires, etc.), appelés modules physiques. Avec cette méthode, dite « masses-interactions », on peut créer des phénomènes sonores avec une richesse et un degré de contrôle très poussés, selon une approche innovante, radicalement différente des environnements basés sur le traitement du signal. En modélisant des structures dynamiques complexes, on peut, de plus, créer des ensembles orchestraux virtuels, dans lesquels des interactions subtiles entre les instruments peuvent produire des structures musicales d’une grande richesse expressive. Enfin, la modélisation de systèmes physiques complexes à constantes de temps étendues permet de créer des structures sonores à l’échelle temporelle de la composition musicale.

Objectifs du stage Les derniers développements de GENESIS et la puissance atteinte par les machines permettent aujourd’hui de concevoir puis simuler des modèles de très grande taille, constitués de plusieurs dizaines de milliers voire plusieurs centaines de milliers de modules, qui ouvrent de nouvelles perspectives musicales. De tels modèles peuvent soit résulter de l’assemblage de nombreux macro-composants très structurés (par exemple lors de la modélisation d’ensembles orchestraux), soit être constitués d’une macrostructure homogène (par exemple : un résonateur unique, assemblage de masses et d’interactions suivant une topologie régulière). Pour accompagner l’évolution des usages, une étape importante consiste à réaliser des outils dédiés à la modélisation de telles structures de très grande taille.

En partant d’une analyse du processus de modélisation, il s’agira d’imaginer un nouvel ensemble cohérent de fonctionnalités pour soutenir le travail avec ces types de modèles : engendrement de structures maillées à topologie complexe ; et modification de très grandes structures (e.g. tailler une forme dans une macro structure, affecter ses paramètres suivant divers critères, masquer temporairement les détails d’une macro-structure...). Pour ce faire, on pourra s’intéresser à la fois à des fonctionnalités de manipulation directe (à la souris) du réseau de modules et de manipulation par langage (langage PNSL de modélisation pour CORDIS-ANIMA, intégré à GENESIS).

Un certain nombre de fonctionnalités sont déjà identifiées comme prometteuses ; il s’agira d’affiner leur conception, puis de les implanter avec l’objectif qu’elles soient intégrées à la prochaine version du logiciel. D’autres fonctionnalités sont beaucoup moins avancées dans leur conception ou même à inventer intégralement ; pour celles-ci, en s’appuyant sur diverses études antérieures réalisées dans le cadre de travaux de thèse [Allaoui, Castagne, Incerti] et plus généralement dans le cadre du processus d’évolution constante du logiciel, il s’agira de franchir une étape dans la réflexion et de réaliser un prototype.

Type de travail Synthèse des travaux antérieurs et analyse du problème (types de très grandes structures ; processus de modélisation de ces types de structures ; génération et modification de structures existantes). Interaction personne-système : définition de fonctionnalités complémentaires par manipulation directe et/ou textuelles. Conception et développement logiciel, touchant en particulier les domaines suivants :
-  Interface graphique utilisateur (en C++/Qt)
-  Architecture logicielle : noyau fonctionnel objet (C++)...
-  Ecriture de scripts dans le langage de modélisation PNSL et/ou extension de ce langage. Une partie du travail aboutira à une nouvelle version finalisée du logiciel – et nécessitera un travail de conception et développement s’appuyant sur les principes du Génie Logiciel. Une autre partie, plus exploratoire, étudiera de possibles évolutions, la réalisation de prototypes, etc.

Profil et compétences Excellentes compétences générales en informatique, notamment en programmation objet. Connaissance de l’UML. Connaissance du langage C++ et de Qt. Expérience en développement d’interfaces graphiques. Autonomie, rigueur et créativité.

Autre Durée du stage : 5 à 6 mois. Stage indemnisé.