Scénarisation des jeux sérieux

Transcription

Scénarisation des jeux sérieux
Ingénierie des Serious Games – A. Yessad
Scénarisation des jeux sérieux
Amel Yessad
Laboratoire d’Informatique de Paris 6
[email protected]
Ingénierie des Serious Games – A. Yessad
Système de décision
Competency-based Knowledge Space Theory
•
Competency-based Knowledge Space Theory (CbKST)
–
–
Extension du Knowledge Space Theory [Doignon et Falmagne 1999]
Knowledge structure:
•
Collection de “knowledge states” relative à un domaine de
compétences
•
Un ensemble fini de compétences et de relations de pré-requis
entre ces compétences
Diagramme de
Hasse
La relation de prérequis
réduit les chemins
d’apprentissage et les états
de connaissances pour un
apprenant
14
Ingénierie des Serious Games – A. Yessad
Exercice : construire la knowledge structure (diagramme de Hasse) du modèle du
domaine suivant f
d
e
b
c
a
15
Ingénierie des Serious Games – A. Yessad
Exercice : construire la knowledge structure (diagramme de Hasse) du modèle du
domaine suivant
{a, b, c, d, e, f}
f
{a, b, c, d, e}
d
e
b
c
a
{a, b, c, e}
{a, b, e}
{a, e}
{c, e}
{e}
{a, b, c, d}
{a, c, e}
{a, b}
{a}
{a, b, c}
{a, c}
{c}
Ф
16
Ingénierie des Serious Games – A. Yessad
Vérification de scénarios de jeux sérieux
•
•
•
Les scénarios de jeux sérieux sont :
–
Complexes (particulièrement les MPGL)
–
Dynamiques (des objets apparaissent et disparaissent dynamiquement )
–
Interactifs, multi-joueurs
Les erreurs de conception et d’implémentation sont
découvertes à la fin du développement (testeurs humains)
Problèmes / contraintes:
–
Les activités de test interviennent tardivement dans le processus de
développement
–
Les play tests ne sont pas exhaustifs (sinon coûtent chers)
–
Certaines propriétés peuvent être vérifiées dans la phase conception
17
Ingénierie des Serious Games – A. Yessad
Vérification de scénarios de jeux sérieux :
Approche formelle


Objectifs de l’approche formelle

Vérifier automatiquement des scénarios de jeux sérieux à la phase
conception

Diminuer le nombre d’erreurs dans les scénarios

Améliorer la fiabilité des scénarios
Étapes de la vérification formelle
1.
Modéliser formellement les scénarios du jeu sérieux (Petri Net)
2.
Définir et spécifier les propriétés du jeu sérieux
3.
Vérifier ces propriétés par model checking
18
Ingénierie des Serious Games – A. Yessad
Vérification de scénarios de jeux sérieux
Réseaux de Petri
•
2 joueurs en exclusion mutuelle sur 1 ressource
19
Ingénierie des Serious Games – A. Yessad
Vérification de scénarios de jeux sérieux
Réseaux de Petri
n1 joueurs en exclusion mutuelle sur n2 ressources
20
Ingénierie des Serious Games – A. Yessad
Vérification de scénarios de jeux sérieux
Réseaux de Petri
Problème
Les réseaux de Petri ordinaires
–
ne capturent pas les symétries d’un système
–
ne permettent pas d’associer des informations aux jetons
–
ne permettent pas de paramétrer la solution d’un problème
Solution
Utiliser une notation concise et paramétrée des réseaux de Petri :
Les réseaux de Petri colorés
21
Ingénierie des Serious Games – A. Yessad
Réseau de Petri coloré
X= { <P1, Φ , Φ> ,<P2, Φ, Φ> }
allSkills = { +, -, *, / }
A = { <a1, Φ, Φ, {+}, {key}> , <a2, Φ, Φ, {-}, Φ > , <a3, {+}, Φ, {*}, {star} > ,
<a4, {+, -}, Φ, {/}, {key} >}
22
Ingénierie des Serious Games – A. Yessad
Réseau de Petri coloré
Graphe d’états
•
•
Exploration et analyse du graphe d’états
Vérifier automatiquement des propriétés du scénario
A2
star
23
Ingénierie des Serious Games – A. Yessad
Modèle générique d'un scénario de jeu sérieux
RdP coloré
24
Ingénierie des Serious Games – A. Yessad
Classification de propriétés de jeux sérieux

Selon deux axes
–
Axe 1 :
●
●
–
Propriété liée au jeu (game-dependent property)
Propriété liée à l'apprentissage (learning-dependent property)
Axe 2 :
●
Propriété Invariante : vraie dans tous les états du jeu
●
Propriété d'accessibilité : vraie dans au moins un état du jeu
●
Propriété temporelle : concerne plusieurs états et exprime
souvent une relation de causalité entre les états du jeu
25
Ingénierie des Serious Games – A. Yessad
Classification de propriétés de jeux sérieux

Selon deux axes
–
Axe 1 :
●
●
–
Propriété liée au jeu (game-dependent property)
Propriété liée à l'apprentissage (learning-dependent property)
Axe 2 :
●
Propriété Invariante : vraie dans tous les états du jeu
●
Propriété d'accessibilité : vraie dans au moins un état du jeu
●
Propriété temporelle : concerne plusieurs états et exprime
souvent une relation de causalité entre les états du jeu
26
Ingénierie des Serious Games – A. Yessad
Classification de propriétés des jeux sérieux
27
Ingénierie des Serious Games – A. Yessad
Exemples de scénarios
•
•
Exemple 1 : Scénario de réalité mixte sur le câblage de
composants électroniques
Exemple 2 : Scénario d'un jeu sur le calcul arithmétique
28
Ingénierie des Serious Games – A. Yessad
Exemple 1 : Scénario de réalité mixte
Câblage de composants électroniques
Réseau de Petri coloré du scénario de réalité mixte
29
Ingénierie des Serious Games – A. Yessad
Exemple 1 : Scénario de réalité mixte
Câblage de composants électroniques
Réseau de Petri coloré de l'activité MR1
30
Ingénierie des Serious Games – A. Yessad
Exemple 2 : Scénario de Wonderland
Le calcul arithmétique
(1) Les spécifications de Wonderland sont analysées manuellement dans le but
d'identifier pour chaque activité les connaissances pré-requises et celles acquises
durant l'activité ainsi que les états d'entrée et de sortie
(2) Les concepteurs identifient les propriétés que le scénario du jeu doit vérifier.
Ces propriétés sont classées selon la classification présentée précédemment
(3) Les model checkers analysent automatiquement ces propriétés. Le model
checker fournit un contre-exemple si la propriété n'est pas vérifiée.
Exemple : le scénario de Wonderland contient des incohérences. Avez-vous trouvé
ces erreurs ?
31
Ingénierie des Serious Games – A. Yessad
Exemple 2 : Scénario de Wonderland
Incohérences et erreurs de spécifications
(1) Le Learning designer énonce que « Le joueur qui acquière toutes les
compétences gagne le jeu »
(2) Le Game designer énonce que « Seul un joueur peut gagner le jeu, tous les
autres échouent»
Winner (p) : a player p wins the game <=>
Ǝ (p, {S}, {V}) ϵ players card(S) = allSkills
(1) EndingGameProperty <=> Ǝ p ϵ Players winner (p)
(2) EndingGameProperty <=> Ǝ ! p ϵ Players winner (p)
32
Ingénierie des Serious Games – A. Yessad
Exemple 2 : Scénario de Wonderland
Incohérences et erreurs de spécifications
(1) Le Learning designer énonce que « Le joueur qui acquière toutes les
compétences gagne le jeu »
(2) Le Game designer énonce que « Seul un joueur peut gagner le jeu, tous les
autres échouent»
Winner (p) : a player p wins the game <=>
Ǝ (p, {S}, {V}) ϵ players card(S) = allSkills
(1) EndingGameProperty <=> Ǝ p ϵ Players winner (p) TRUE
(2) EndingGameProperty <=> Ǝ ! p ϵ Players winner (p) FALSE
33
Ingénierie des Serious Games – A. Yessad
Exemple 2 : Scénario de Wonderland
Incohérences et erreurs de spécifications
34
Ingénierie des Serious Games – A. Yessad
Exemple 2 : Scénario de Wonderland
Incohérences et erreurs de spécifications
Correction : un seul gagnant et les autres joueurs peuvent continuer à jouer sans
pouvoir gagner
in game
35
Ingénierie des Serious Games – A. Yessad
Exemple 2 : Scénario de Wonderland
Incohérences et erreurs de spécifications
(1) Aucun joueur ne peut libérer la princesse sans avoir acquis toutes les
compétences (Learning designer)
(2) Le joueur gagne s'il libère la princesse (Game designer)
En analysant la spécification des activités →
- Un joueur peut libérer la princesse sans acquérir les compétences
{sk6, sk7} en exécutant la séquence <a8, a15>
Correction : Ajouter comme prérequis pour l'activité a15 les
compétences {sk6, sk7}
- Un joueur peut acquérir toutes les compétences sans libérer la
princesse en exécutant la séquence <a8, a10, a13, a11, a14, a12,
a16 > (le joueur capture le dragon mais ne libère pas la princesse !)
Correction : Modifier la sortie s16 de l'activité a16 à « player captures
36
the dragon and liberates the princess » Ingénierie des Serious Games – A. Yessad
Exemple 2 : Scénario de Wonderland
Incohérences et erreurs de spécifications
“The player can not acquire the skill “complicated multiplication" (sk8)
as long as he does not have the skill “simple multiplication" (sk6)”
La séquence <a8, a15> permet au joueur d'acquérir la compétence sk8 sans acquérir
la compétence sk ᄇ 6
Correction : Ajouter comme prérequis pour l'activité a15 la compétence sk6
37