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