10.2 Architecture T AILOR
10.2.1 Le diagnostic
The Bad Beginning, Lemony Snicket
Sommaire
10.1 Modèle et gestion de l’état du monde . . . 180
10.1.1 Le moteur WORLDMANAGER . . . 180
10.1.2 Utilisation de WORLD-DL pour la production d’environnements virtuels . . . . 180
10.2 Architecture T
AILOR. . . 181
10.2.1 Le diagnostic . . . 181
ZPD-Space . . . 181
Sélection pédagogique . . . 182
10.2.2 Instanciation . . . 182
10.2.3 Diégétisation . . . 182
10.2.4 Interface utilisateur . . . 183
Interface de pilotage de TAILOR. . . 183
Interface Formateur . . . 183
10.2.5 Intégration à Humans . . . 184
10.3 Cas d’application . . . 185
10.3.1 NIKITA- Formation des monteurs-assembleur dans le domaine aéronautique . 185
Modèles de domaine . . . 185
Mise en place d’un démonstrateur . . . 186
Modèle du connaissance pour la détection d’intention . . . 187
10.3.2 SIMADVF - La formation des assistantes de vie . . . 188
Nos propositions sur la scénarisation personnalisée dans les environnements virtuels pous la
for-mation ont été implémentées et appliquées sur différents scénarios. Dans une première partie nous
décrirons l’opérationnalisation du modèle du monde au sein du WORLDMANAGERet son intégration
dans la production d’un environnement virtuel. Dans une seconde partie nous décrions
l’architec-ture TAILOR. La dernière partie de ce chapitre évoquera deux cas d’applications de nos travaux.
10.1. MODÈLE ET GESTION DE L’ÉTAT DU MONDE CHAPITRE 10. IMPLÉMENTATION
10.1 Modèle et gestion de l’état du monde
Les modèles décrits dans le formalisme WORLD-DL sont opérationnalisés grâce au WORLDMA
-NAGERqui permet de maintenir et mettre à jour la base de connaissances sur le monde. Nous avons
par ailleurs proposé des outils pour faciliter la production d’un environnement virtuel par
l’utilisa-tion d’un modèle de connaissance.
10.1.1 Le moteur WORLDMANAGER
Le moteur WORLDMANAGER a été développé en JAVA en utilisant le framework JENA. Le
dia-gramme de classes de ce moteur est proposé dans l’annexe E.3. Le moteur offre a la fois un accès
au modèle du monde, c’est-à-dire à l’ontologie, mais également à la base de faits correspondant à
l’état du monde courant. Il est associé à un agent JADEpour l’intégrer au sein de la plateforme
multi-agents HUMANS.
Ainsi, les différents modules peuvent accéder à l’état du monde pour disposer d’informations ou pour
déclencher des actions et événements. L’annexe F résume l’ensemble du protocole de
communica-tion entre le WORLDMANAGERet les autres modules.
FIGURE10.1 – Interface de visualisation de la base de connaissances
Le WorldManagerGUI offre une interface de visualisation des changements opérés sur le monde
et permet en outre de simuler des actions, événements et commitments pour voir leurs effets.
10.1.2 Utilisation de WORLD-DL pour la production d’environnements virtuels
Un générateur de classe C# destinée au moteur de jeu UNITYa été développé en JAVAen utilisant
la librairie JENA.
Pour chaqueComponentdécrit dans le métamodèle WORLD-DL, une classe est créée. Les relations
que peut nouer un composant sont décrites par des attributs de la classe du type adéquat. La
cardi-nalité de ces relations (décrites via des relations du langage de description d’ontologie OWL) définit
CHAPITRE 10. IMPLÉMENTATION 10.2. ARCHITECTURETAILOR
si l’attribut de la classe est une liste d’élément ou un élément simple. Des membres sont égalements
créés pour tous les attributs des états auquel le composant peut être lié.
Pour chaqueObjectdécrit dans le métamodèle WORLD-DL, une classe est créée. La classe définit les
composants dont elle hérite avec la primiteRequireComponent. Ainsi, l’ajout de la classePortesur
la géométrie d’un objet de la scène confère automatiquement à cet objet les composantsOuvrableet
Verouillage. L’annexe I présente des exemples de classes générées à partir d’un modèle du monde.
Le framework DOUG[Degiovanni et al., 2014] développé par des étudiants de l’Université de
Techno-logie de Compiègne permet de synchroniser les éléments de la simulation avec la base de
connais-sances en communiquant avec le WORLDMANAGER. Il convient aux concepteurs d’enrichir les classes
générées pour créer les comportements liés à la scène 3D.
Le métamodèle WORLD-DL est également utilisé pour la génération de comportement pour des
per-sonnages virtuels autonomes. Le moteur REPLICANTSse sert du modèle du monde pour générer de
nouveaux plans pour atteindre un but lorsqu’aucune solution ne peut être trouvée dans le modèle
d’activité [Lhommet, 2012].
10.2 Architecture TAILOR
Les différentes fonctionnalités du moteur TAILORont été développées independemment afin de
bénéficer des technologies les plus adaptées à chaque problème. Notamment, nous avons utilisé JAVA
et la librairie JENApour la gestion des connaissances sémantiques, tandis que le C++ était très adapté
aux besoins en performances nécessaires dans la manipulation de l’espace-zpd. Nous décrivons ici
les différents éléments de cette architecture illustrée dans la figure 10.2.
FIGURE10.2 – Architecture logicielle du moteur TAILOR
10.2.1 Le diagnostic
ZPD-Space
L’espace de classes de situations associé aux distributions de masses de croyance et les différents
opérateurs que nous avons proposés pour la manipulation de l’espace-zpd ont été implémentés dans
la librairie C++zpdspace. Le diagramme UML de la librairie est proposé dans l’annexe E.1
Nous avons implémenté deux versions de l’algorithme d’inférence :
— une versioninductivequi propage les croyances puis les fusionne avec l’opérateur de fusion
avec conflit. Cette version permet desaturerle profil de l’apprenant en inférant toutes les
cro-yances possibles. C’est donc la méthode privilégiée pour pouvoir mettre en œuvre une prise
de décision pour la prescription d’une nouvelle situation ;
10.2. ARCHITECTURE TAILOR CHAPITRE 10. IMPLÉMENTATION
— une versiondéductivequi calcule la valeur d’une croyance en un point donné à partir de son
voisinage. Il y a recherche des voisins, propagation de leurs sources de croyances et fusion avec
conflit au point donné. Cette méthode est utilisée pour déterminer la croyance du système
dans la capacité de l’apprenant à gérer une situaton particulière, et notamment, celle en cours.
L’espace-zpd est alimenté en parcourant les traces d’activités générées par le module de suivi de
l’ap-prenant, MONITOR, de la plateforme HUMANS[Amokrane, 2010].
Un profil d’apprenant, constitué d’un espace-zpd, peut être sauvegardé dans un formatXMLdont un
exemple est fourni en annexe G. Un profil contient les informations suivantes :
— la structure de l’espace(noms des descripteurs, ensembles de définition des descripteurs) ;
— les sources d’informationqui résultent de l’observation de l’apprenant, elles contiennent les
informations suivantes :
— origine: traces d’activité, demandes d’assistances, etc.,
— distribution de masse de croyance(a, d, i c),
— vecteur de propagation: dans notre implémentation, nous avons prévu le cas où les
cro-yances se propagent différement selon certains descripteurs,
— position: un entier naturel permettant de retrouver le vecteur position dans l’espace ;
— les points de croyancerésultent de la propagation des sources croyances dans l’espace-zpd,
ils contiennent les informations suivantes :
— distribution de masse de croyance(a, d, i c),
— position: un entier naturel permettant de retrouver le vecteur position dans l’espace ;
Sélection pédagogique
La métaheuristique proposée dans le chapitre 7 a été implémentée en utilisant le langage C++ et
la librairie STL. A l’heure actuelle, les contraintes suivantes ont été implémentées pour la sélection
d’une classe de situationS:
— la distribution des masses de croyance deStend vers une distribution déterminée ;
— l’une des masses de croyance deSest au delà d’un certains seuil déterminé dans un fichier ;
— l’une des masses de croyance deSest en deça d’un certain seuil ;
— certains descripteurs de deSont des valeurs particulières.
Un diagramme de classe du module de sélection pédagogique est proposé en annexe E.2.
Dans le document
Scénarisation personnalisée dynamique dans les environnements virtuels pour la formation
(Page 180-183)