La spécification du scénario temporel d'un document multimédia occupe une place majeure lors de l'édition d'un tel document, de part son caractère novateur (cette notion de scénario n'existe pas dans les documents usuels) et sa complexité.
Différentes approches ont été proposées pour mener à bien cette tâche qui vont de l'utilisation d'un langage de script à l'utilisation d'un langage déclaratif à base de contraintes, en passant par l'utilisation de structures graphiques comme les arbres ou les réseaux de Pétri. Au cours de ce stage, notre intérêt s'est porté sur les approches fondées sur l'utilisation de contraintes et plus précisément sur celle proposée par Madeus l'environnement d'édition/présentation de documents multimédia développé au sein du projet Opéra.
Remarquons que le travail effectué au cours de ce stage bien qu'il ait été fait dans le cadre de l'environnement Madeus, s'adapterait aisément aux autres environnements d'édition fondés sur les contraintes d'intervalles : Isis et HPAS .
Dans ce contexte, un premier travail a été réalisé dans le cadre du DEA visant à définir les bases d'une vue graphique du scénario temporel qui soit une véritable aide pour l'auteur. Nous avons souhaité aller plus loin que la définition d'un équivalent graphique à chaque contrainte, comme cela est proposé dans les autres environnements d'édition de documents multimédia à base de contraintes. Cette représentation graphique se veut être utile et efficace en offrant une réponse visuelle aux questions que se pose l'auteur sur le plan de la compréhension et de l'analyse du scénario temporel du document multimédia.
Dans le cadre de ce magistère nous avons étendu cette représentation de manière à ce quelle intègre la flexibilité des objets et les opérateurs d'interruption. Ces deux aspects sont particulièrement importants pour la conception d'un scénario puisqu'ils introduisent respectivement :
Ces deux aspects avaient, dans un premier temps, été mis de coté afin de réduire la complexité du problème à traiter. Pour effectuer cette intégration nous avons été amenés à identifier les besoins liés à l'introduction de ces deux aspects dans le système de visualisation et d'autre part à analyser comment le domaine de la résolution de systèmes de contraintes pouvait offrir une réponse satisfaisante à ces besoins. Il faut savoir que ce domaine d'étude recouvre des problèmes très différents (contraintes sur des domaines finis, contraintes sur des domaines infinis, satisfaction et maintien de cohérence, techniques de filtrage, contraintes temporelles, ...). Ce domaine est aussi très riche en algorithmes et fait toujours l'objet de nombreuses recherches. Par conséquent, une des réelles difficultés du stage a été de se frayer un chemin dans ce labyrinthe.
Nous avons à présent les connaissances pour mieux positionner notre problématique et les problèmes qu'elle soulève face aux travaux de la communauté "résolution de contraintes".
En parallèle avec cette analyse des besoins et des solutions potentielles nous avons défini et implémenté deux algorithmes ( un algorithme de maintien de solution, un algorithme qui permet d'anticiper les déformations locales) qui doivent être considérés comme des solutions ad'hoc à un problème particulier de maintien de solution dans un système de contraintes. Ces algorithmes et leurs limites ont été analysées dans le chapitre IV.
La réalisation de ces deux algorithmes nous a permis d'intégrer dans notre prototype plusieurs nouveaux concepts, notamment :
Le travail effectué au cours de ce stage doit être vu comme une première étape dans le développement d'une interface d'édition d'un document multimédia par manipulation directe. La problématique concernant le maintien de solution d'un système de contraintes va se retrouver tout au long de ce développement. En effet, dès que l'auteur va vouloir enlever ou ajouter une contrainte, apparaîtra le besoin de perturber le moins possible la solution courante en un temps réduit. Le travail réalisé au cours de ce stage pourra donc être largement réutilisé. A plus court terme la suite logique de ce travail est d'approfondir les pistes qu'il a ouvert: