2.4. Tahar
2.4.3. Tahar Planı Çeşitleri
2.4.4.1. El Taharı
Dans cette section, nous présentons la modélisation en ICO des différents types de moteurs de fusion présentés dans la première section de ce chapitre.
5.3.2.1 Fenêtre temporelle
Le principe de la fenêtre temporelle est d‟autoriser la fusion entre plusieurs événements si ces événements ont eu lieu pendant une fenêtre temporelle donnée. La fenêtre temporelle proposée dans [Nigay95] est modélisée en ICO dans la Figure 5.8.
Cette modélisation est possible grâce à la modélisation du temps rendue possible grâce aux transitions temporisées des réseaux de Petri.
Figure 5.8 Modèlisation en ICO de la fusion basée sur les fenêtres temporelles
Sur la Figure 5.8, lorsqu‟une commande vocale est reçue, un jeton est déposé dans la place
recognized word et lorsqu‟une commande de la souris est reçue, un jeton est déposé dans la place object. Si ces deux places possèdent un jeton avant le timeout (modélisé par la valeur du jeton dans
la place Timeframe), la transition fusion est tirée réalisant la fusion. Par contre, si un jeton se trouve dans la place object (resp. recognized word) lorsqu‟aucun jeton ne se trouve dans la place
recognized word (resp. object) pendant le timeout, la transition temporisée MouseTime_Up (resp. SpeechTime_Up) enlève le jeton de la place object (resp. recognized word) et le dépose dans la
place Fail_No_Speech (resp. in the Fail_No_Click).
5.3.2.2 Unification basée sur un ensemble de règles
Une autre politique courante pour les moteurs de fusion est l‟unification selon un ensemble de règles [Cohen97]. La Figure 5.9 illustre la modélisation de cette unification en utilisant les mêmes sources d‟événements que pour la section précédente.
Figure 5.9 Modèlisation en ICO de la fusion basée sur l’unification
Lorsqu‟une commande vocale est reçue, un jeton est déposé dans la place recognized word et lorsqu‟un événement souris est reçu, un jeton est déposé dans la place object. Si les deux places
contiennent un jeton, la transition fusion peut être éventuellement franchie. Le franchissement de la transition dépend de la valeur des jetons. Si la paire composée par le mot reconnu (représenté par la variable word sur l‟arc allant de la place recognized_word à la transition fusion) et l‟objet lié à l‟événement souris (représenté par la variable object sur l‟arc allant de la place object à la transition fusion) peut être unifiée avec un jeton se trouvant dans la place rules, alors le franchissement de la transition a lieu. Dans ce cas, la fusion correspondante peut être réalisée selon la valeur de l‟objet et la valeur du mot reconnu en appliquant la commande contenue dans la place
rules, identifiée par l‟unification. Dans ce type de modèle, les labels des arcs du réseau sont
utilisés comme moyen pour changer le comportement du modèle non seulement en se basant sur la présence de jetons mais également sur les valeurs se trouvant dans ces jetons.
5.3.2.3 Mécanisme de fusion hybrides
Les exemples précédents illustrent les politiques couramment utilisées pour les moteurs de fusion. Pour modéliser des comportements plus complexes, il est donc nécessaire de pouvoir tirer parti des différents avantages de ces politiques. Nous pouvons par exemple ajouter à l‟exemple Figure 5.9, la notion de fenêtre temporelle se trouvant dans la Figure 5.8 permettant la description de l‟unification avec un aspect temporel quantitatif. Ce type de moteur de fusion est présenté dans la Figure 5.10.
Figure 5.10 Modèlisation en ICO de la fusion hybride
Nous pouvons voir ici un avantage de la notation ICO qui permet de facilement modéliser de nouveaux moteurs de fusion en combinant les deux politiques précédemment décrites.
5.3.2.4 Fusion procédurale
Enfin, nous pouvons représenter les moteurs de fusion procéduraux. La Figure 5.11 présente ce type de moteur de fusion. Ce modèle permet la fusion entre deux modalités : la souris et la reconnaissance vocale. Ce modèle est divisé en deux parties.
La partie de gauche représente la réception d‟un clic souris (mouseClick_t1) suivi d‟une commande vocale (speechCommand_t2).
La partie de droite représente la réception d‟une commande vocale (speechCommand_t1) suivie d‟un clic souris (mouseClick_t2).
A ces quatre transitions, nous avons ajouté différentes transitions permettant de tester si le clic a eu lieu sur une icône ou non (Icon, Icon_1 , NotanIcon et NotanIcon_1) et si la commande vocale reconnue correspondait à celle attendue pour la fusion (Delete, Delete_1, not_Delete et
Figure 5.11 Modèlisation en ICO d’un moteur de fusion procédural
Ce type de fusion permet de facilement se représenter les séquences possibles pour la fusion et comme le montre cet exemple, permet de représenter l‟état courant du moteur de fusion à un moment donné à la manière d‟un automate.
5.4 Synthèse
Dans ce chapitre, nous avons abordé la prise en compte des aspects multimodaux dans notre processus de développement.
Nous avons tout d‟abord défini les termes de modalité, de multimodalité et les différents types de multimodalité et les propriétés CARE.
A la suite de ces définitions, nous nous sommes intéressés à l‟élément essentiel de l‟interaction multimodale qu‟est le moteur de fusion. Nous avons présenté les différents types de moteurs de fusion et catégorisé les différentes notations permettant de décrire ces moteurs de fusion.
Nous avons ensuite présenté les deux phases où la prise en compte de la multimodalité était la plus importante. Nous avons montré dans la phase de conception de l‟architecture où pouvait avoir lieu la fusion (au niveau dialogue ou à un bas niveau) et nous avons présenté la modélisation des différents types de moteurs de fusion afin de présenter le pouvoir d‟expression de notre notation. Ce chapitre a permis de montrer que lors de la prise en compte de la multimodalité, si certaines phases demandent plus de soins, notre processus est tout à fait adapté à la réalisation de systèmes interactifs critiques multimodaux.