Recherche > Contributions
Nicolas Mollet
Accueil | Recherche | Enseignements | Publications | Coordonnées
Nos contributions ont porté sur trois éléments majeurs: un modèle d'interaction et d'objet comportemental (STORM), un langage de scénarisation (LORA), et un outil auteur permettant la saisie de scénarios directement par leur démonstration dans l'environnement virtuel.
La modélisation STORM (Simulation and Training Object-Relation Model) comporte deux parties:
L'objet comportemental et réactif STORM
Dans un premier temps il correspond à un modèle d'objet comportemental doté de capacités d'interactions cumulables et réutilisables. L'intérêt principal ici réside justement dans ces capacités: nous les définissons comme des comportements et des points d'entrées pour des interactions. Un exemple simple est la définition de la capacité vis femelle, que l'on va associer par exemple à un simple modèle 3D d'écrou. Cette capacité d'interaction confère à l'objet 3D un ensemble de propriétés (une taille, un pas de vis, le fait qu'il soit femelle, mais aussi le rajout de la capacité bougeable, etc.) qui va permettre à cet objet d'être l'acteur d'une animation de visserie entre une vis qui lui correspond et lui-même. A partir du moment où un objet (généralement 3D, mais pas uniquement) est augmenté de telles capacités, il devient un objet comportemental interactif. Ces capacités sont réutilisable sur d'autres objets, et sont surtout cumulables simplement. Nous utilisons en effet dans ces capacités un modèle de description de comportement nommé HPTS++, qui permet la combinaison automatique d'automates complexes, éventuellement concurrentiels, ainsi que la gestion automatique de leurs ressources.
L'entité médiatrice réalisant l'interaction: la Relation STORM
Dans un second temps, le modèle STORM correspond au traitement générique des interactions portées par les objets STORM, à partir de la notion de relation. Une relation est une entité désincarnée (non-visible dans l'environnement 3D), dont le rôle est de réaliser les interactions possibles entre plusieurs objets comportementaux en utilisant leurs capacités d'interactions. Dans notre modèle, l'environnement est informé: les objets apportent des informations sur les interactions qu'ils peuvent offrir. Notre moteur d'interaction va donc chercher à combiner les capacités affichées par les objets, et en fonction de l'état de ces derniers et des relations déjà en place, le moteur va proposer un ensemble d'interactions possibles entre les objets. Quand l'une d'elle est demandée, une relation va alors entrer en jeu pour la réaliser. A titre d'exemple, une relation de visserie va être capable d'utiliser la capacité vis femelle d'un objet3D et la capacité vis mâle d'un autre objet3D, afin de réaliser une interaction de visserie entre ces objets: l'animation 3D, mais aussi la notion d'état vissé entre ces deux objets. Une relation est aussi un objet comportemental STORM: une relation peut manipuler hiérarchiquement d'autres relations.
En résumé...
Grâce à ce modèle, nous sommes capables de définir rapidement un nouvel environnement 3D informé, dans lequel nous pouvons réutiliser simplement des objets comportementaux déjà utilisés dans d'autres environnements, ou uniquement leurs capacités d'interaction afin de les attribuer à de nouveaux objets qui ont ces mêmes propriétés. La spécifications de nouveaux comportements d'interaction passent par la spécifications de nouvelles capacités, qui pourront se combiner directement aux autres capacités existantes. Ce modèle a conduit au dépôt de deux brevets: un premier qui est Français, et un second qui est Européen.
Basé sur notre modèle d'interaction STORM, nous avons ensuite proposé un langage de scénarisation pour la définition de procédures de maintenance: le langage LORA (Language for Objet-Relation Application). Ce langage, à la fois graphique et textuel, dont la philosophie est de décrire ce qui peut être fait, permet à des non-informaticiens de définir des enchaînements variés et complexes d'actions dans une scène virtuelle. Ce langage est un descendant du langage GRAFCET, qui a été utilisé comme première réponse à nos problèmes de spécifications de procédures. Nous avions un besoin de description stricte de procédures, au sein desquelles les formés humains allaient être amenés à faire des choix. Nous nous sommes orientés vers des langages graphiques pour faciliter l'accès au langage à des auteurs non-informaticiens et répondre aux attentes de Nexter (Giat-Industries). L'utilisation du Grafcet dans ce contexte, qui n'est pas son champs d'application initial, nous a permis d'identifier certains besoins spécifiques inhérents à la description de scénarios, dont en particulier le choix. Le langage LORA répond complètement à nos attentes, et permet de définir par des automates des procédures comportant du choix, des conditionnelles, du parallélisme, des variables, des paramètres d'actions (pour la réutilisation de séquences identiques dans plusieurs contextes), de la hiérarchie, etc.
La mise en oeuvre de ce langage d'automates paramétrables hiérarchiques parallèles est réalisé sur une machine virtuelle d'interprétation. Nous définissons une procédure nominale, la procédure à réaliser. Celle-ci est chargée dans la machine virtuelle, qui est un moteur multi-agents. Depuis ce scénario, le moteur de scénarios va ainsi instancier différents agents représentant les états courants de la procédure. Ces agents ont des rôles particuliers au sein du moteur, et vont permettre de faire évoluer la procédure dynamiquement. Nous noterons que dans cette machine virtuelle, le modèle de scénario est éditable en dynamique, ce qui permet de modifier le scénario alors que la session de formation est en cours d'execution. Le langage LORA a conduit au dépôt d'un brevet Français.
Basé sur ces STORM et LORA, nous avons défini un outil-auteur interactif, permettant la saisie rapide de procédures par leur démonstration dans la scène virtuelle. Cet outil innovant permet à des non-informaticiens de spécifier très simplement leurs procédures de maintenance dans l'environnement virtuel: il suffit de les réaliser. Grâce à la machine virtuelle d'interprétation du scénarios et à l'édition possible du scénario en mémoire, nous traçons les actions réalisées dans l'environnement interactif. Ces actions s'expriment grâce au modèle STORM (les objets et les relations utilisés dans l'interaction), ce qui nous permet de générer directement des étapes-actions dans le langage LORA puisque ce dernier est bâti sur le modèle STORM. Au fur et à mesure que les actions sont effectuées dans l'environnement, le scénario se construit et se visualise dans l'outil-auteur par la représentation graphique du langage qui évolue et qui est éditable manuellement. Cet outil a conduit au dépôt d'un brevet Français.
Pour m'écrire: nicolas.mollet@gmail.com