Modélisation et contrôle de la dynamique du jeu pour une expérience utilisateur optimale. Mémoire de fin d’étude

48  Download (0)

Texte intégral

(1)

i

Modélisation et contrôle de la dynamique du jeu pour une expérience utilisateur

optimale.

Mémoire de fin d’étude

Master Sciences et Technologies, Mention Informatique,

Parcours AIGLE/IMAGINA

Auteur

Iago BONNICI

Superviseurs

Dr Abdelkader GOUAÏCH

Lieu de stage

LIRMM UM5506 - CNRS, Université de Montpellier

version 1 soutenu publiquement le 15 juin 2017

(2)
(3)

Résumé

Il est sans doute impossible de comprendre pleinement pourquoi un joueur, plongé dans l’expérience d’une partie de jeu, en retire un sentiment positif qui le poussera à continuer, rejouer, ou lui laissera du moins un souvenir agréable. Pourtant, s’approprier un peu mieux les phénomènes à l’œuvre durant cette expérience servirait précieusement l’activité natu- relle desconcepteursde jeux, qu’il s’agisse de garantir le fonctionnement d’une industrie du jeu ou le succès des jeux dits « sérieux », proposés avec des applications dans le domaine de l’instruction, de la santé, de la rééducation, de l’informationetc.

Aujourd’hui, même si l’on a pas accès finement à toutes les subtilités du phénomène, un solide arsenal théorique existe déjà dans les champs de la ludologie, de la psychologie positive et des mathématiques, qui permet d’assembler les concepts entre eux pour esquisser une première approche de la compréhension et du contrôle de l’expérience joueur. C’est l’objet de la démarche qu’on a suivie dans ce stage de master.

Ce rapport présente et rassemble tous les travaux qu’on a pu réaliser en quatre mois dans ce cadre. Après avoir exposé les notions bibliographiques fondamentales de ludo- psychologie qui nous permettent de définir la notion dejeu adaptatif et leur contrôleur d’expérience, on s’attache à en dégager les principaux concepts et à les articuler ensemble dans un premier modèle. Ce modèle est instancié sur un premier exemple de jeu élémentaire, puis, afin de représenter formellement tous les jeux adaptatifs et d’optimiser l’expérience des joueurs sans perte de généralité, on conçoit un système de typage générique dédié à la définitions d’heuristiques de recherche sur des espaces hybrides. Enfin, on verifie la cohé- rence de toute la démarche en utilisant ce système pour exprimer, simuler et optimiser le jeu élémentaire qu’on s’est donné en terme d’expérience utilisateur.

Abstract

It may not be possible to fully understand how a player, absorbed into the experience of a game, will get such a positive feeling. This feeling will drive her to keep on playing, to play again, or it will gift her at least with a pleasant memory. However, if we could under- stand better the bases of the phenomena occuring during such an experience, it would help the natural activity ofgame designa lot. For instance, it would help keeping up with a game industry. Or it could guarantee success for so-called "serious games", with applications in instruction, health care, rehabilitation, informationetc.

Nowadays, even though we cannot accurately grasp every subtle feature of the phe- nomenon, there exists a reliable theoretical corpus in the fields of ludology, positive psy- chology and mathematics, which provides a great opportunity for gathering all these con- cepts together and get a first glimpse into better understanding and controlling player expe- rience. This is what we have done during this master internship.

This report gathers and introduces every work we have done in four months in this context. After having exposed useful fundamental notions of ludo-psychology and defined the notion ofadaptive gameand their experience controller, we dig out their main concepts and connect them together to form a first model. This model is instanciated onto a first example of an elementary game, then, in order to formally represent every adaptive game and to optimize player experience without loss of generality, we design a generic typing system, dedicated to defining search heuristics among hybrid spaces. Finally, we check the overall consistency of the whole approach by using this system to express, simulate and optimize the elementary game we have built in terms of user experience.

iii

(4)
(5)

Table des matières

Table des matières v

1 Introduction 1

2 Prérequis 3

2.1 Vers une définition dujeu . . . 3 2.2 L’utilisateur et son expérience . . . 7 2.3 Les jeux adaptatifs . . . 9

3 Contribution 15

3.1 Modèle général du jeu adaptatif . . . 15 3.2 Un jeu élémentaire . . . 18 3.3 Généralisation et système de typage . . . 20

4 Résultats 33

4.1 Expressivité du système de typage . . . 33 4.2 Expressivité des opérations abstraites . . . 35 4.3 Expérimentation sur le jeu élémentaire . . . 37

5 Conclusions 39

Bibliographie 41

v

(6)
(7)

1

Introduction

Au delà du simple fait de “gagner” ou “perdre” la partie qu’il est en train de jouer, l’expérience d’un joueur en action (ou son « vécu ») est dépendante d’une grande variété de paramètres fins, élusifs et difficiles à décrire. Elle dépend à la fois de son implication dans le jeu, des raisons qui le poussent à poursuivre la partie, de l’adéquation entre ses capacités et les tâches à accomplir, de son goût pour le défi ou l’apprentissage, de son immersion dans l’univers fictif qu’on lui propose, de son état psycho-émotionnel, de sa bonne volonté à se laisser guider par les règles, etc.Autant d’informations à la fois subtiles, difficiles à formaliser et difficiles à mesurer car elles sont intimes et très proche de l’humain.

Pourtant, cette expérience est la seule susceptible de caractériser la relation du joueur au jeu : a-t-elle été bonne, le jeu lui plaît-il ? Elle déterminera aussi sa susceptibilité à revenir vers le jeu, ou à le recommander. Dans un contexte industriel (jeux de table, jeux vidéos..), il s’agit là de considérations capitales puisque la réussite du produit en dépend directement. Dans le contexte des « jeux sérieux » où les jeux sont détournés à des fins utilitaires (jeux d’apprentissage, jeux de sensibilisation, jeux de rééducation..), l’efficacité du jeu découlera aussi directement de l’ex- périence utilisateur associée. Aussi, pouvoir mieux décrire, caractériser, prédire voirecontrôler en partie l’expérience d’un joueur versé dans une partie quelconque, au delà de l’avancée scien- tifique que cela représenterait dans les champs de la ludologie, de la psychologie sociale et cognitive, aurait des répercussions conséquentes dans l’industrie du jeu et le développement des jeux sérieux. L’activité deconception de jeuxs’en trouverait considérablement enrichie.

Au cours de ce stage, on se propose de construire des solutions théoriques decontrôlede l’expérience utilisateur. Ou « comment faire en sorte, lors de la création d’un jeu, que l’ex- périence du joueur soit la meilleure possible ? ». Comme chaque joueur est unique et que son contexte psychologique, cognitif, moteur ou émotionnel peut varier très grandement d’une par- tie à l’autre, une approche très naturelle est de faire en sorte que la structure ou les paramètres du jeu puissent s’adapter au contexte lors de chaque partie, afin de garantir la meilleure expé- rience dans tous les cas. Autrement dit, le jeu changerait de forme (difficulté, univers, règles..) en fonction du joueur qui le joue, de son état et du déroulement de la partie.

Réussir un tel jeu adaptatif nécessite deux choses : premièrement, le concepteur du jeu doit pouvoir se donner un modèle d’évaluation de l’état du joueur et de son expérience. Il s’agit d’un thème de recherche à part entière qui s’inscrit dans les disciplines de la psychologie et de la modélisation utilisateur. Ces problématiques sont abordées par un stage de master réalisé en

1

(8)

parallèle de celui-ci et intitulé «Étude et proposition d’un modèle de joueur pour les jeux adap- tatifs». Dans un second temps, il s’agit de se donner un modèle du jeu en lui-même et du concept de partie, puis d’y intégrer ce modèle utilisateur pour l’analyser et y chercher la meilleure so- lution adaptative en termes d’expérience de jeu. C’est le sujet de ce stage de recherche. On est conscients que la qualité de la "meilleure partie proposée" restera de fait fondamentalement dé- pendante des hypothèses utilisées par le modèle utilisateur sous-jacent. Cependant, intégrer ce modèle à une procédure d’adaptation des jeux sans perte de généralité reste un travail non-trivial à accomplir, et encore inexploré à notre connaissance. Dans ce contexte, on pourra reformuler ainsi la problématique de ce stage :

Étant donnés un jeuadaptatif, un modèle associé des joueurs qui le jouent et un modèle associé de leurexpériencevécue au cours d’une partie, comment utiliser au mieux l’adaptabilité pour leur garantir la meilleure expérience de jeu ?

Dans ce rapport de stage, on s’attachera dans un premier temps à décrire plus en détail le contexte dans lequel ces questions sont posées : le jeu en tant qu’objet scientifique, l’expérience du joueur, les outils existants d’optimisation. Ensuite, on prendra le temps de détailler notre contribution vis-à-vis de cette problématique, et la direction de travail originale qu’on a choisi de conduire : réification des différents concepts, construction d’un modèle de jeu élémentaire, prototypage d’un système de typage dédié à l’optimisation de tout jeu adaptatif sans perte de généralité. Enfin, on tâchera de mettre en valeur les premiers résultats de ce travail : expressivité du système, optimisation du jeu élémentaire, en dégageant les ambitions à poursuivre et les directions futures de cette recherche.

(9)

2

Prérequis

Dans ce chapitre, on tâche d’exposer le contexte scientifique dans lequel la problématique est posée. On parlera d’abord du jeu en tant que sujet d’étude, puis de l’utilisateur (oujoueur) en tant que sujet psychologique et son expérience comme phénomène d’étude.

2.1 Vers une définition du jeu

Le jeu comme objet d’étude

Avec son livre fondateur de 1949, c’est Huizinga qui propose s’intéresser aujeu, non pas comme à un divertissement futile et indigne d’intérêt académique, mais comme un fort objet social et scientifique [23]. Sans en proposer de définition formelle, il prend la peine et l’honnêteté de reconnaître son importance dans le langage humain, dans les processus d’apprentissage tech- niques et sociaux, dans les différentes civilisations et dans tous les aspects culturels et sociétaux liés à l’Homme, passés et modernes, qu’il s’agisse du droit, de la guerre, de la connaissance, des arts, des mythes ou de la philosophie. Il ouvre légitimement la porte à l’étude rigoureuse de ce concept, connu et familier de tous depuis la nuit des temps.

Suivant cette invitation, Juul décrit par exemple en 2005 le jeu comme une entité constam- ment à mi-chemin entre le formalisme rigide des règles, d’un côté, et la liberté créative sans limites des mondes imaginaires dans lesquels les joueurs se projettent, de l’autre [24]. Là ou l’un est formel et peut se suivre rigoureusement pour le comparer d’une partie à l’autre, (on peut, par exemple, enregistrer sur papier le déroulement d’un affrontement aux échecs), l’autre est plus insaisissable et personnelle, fait entrer en scène des composantes émotionnelles difficiles à retranscrire rigoureusement (la façon dont deux joueurs vivent et ressentent l’excitation et le dépaysement lors d’une partie de bataille navale, par exemple, reste dépendante de nombreux paramètres liés à leurs personalités, au dispositif de jeu, à la contingence de la situation,etc.Les expériences de chacun sont par conséquent délicates à aligner). De cette façon, Juul met le doigt sur la complexité inhérente à l’objet "jeu", à ses multiples facettes et aux multiples éléments qui le composent. Il s’agit d’un système complexe intéressant à décrire, à comprendre, et non trivial à modéliser.

3

(10)

Le jeu comme système complexe

Dans la même optique dedescriptiondu jeu en tant qu’objet naturel, Caillois publiait plus tôt en 1961 [3] des travaux assez complets à la recherche defacteurs communsà l’ensemble des jeux joués par les êtres humains. Sa démarche est double en ce qu’il s’intéresse, d’un côté, à des critères permettant declassifierles jeux en les comparant les uns aux autres, et de l’autre à des propriétés fondamentales,partagéespar tous les jeux.

Diversité des jeux

Caillois distingue quatre composantes élémentaires, exprimées plus ou moins fortement par chaque jeu. Interprétées comme les archétypes fondamentaux qui captivent et retiennent l’at- tention du joueur, elles en constituent l’essence et, selon lui, la raison pour laquelle les jeux

"fonctionnent" :

• Agon : les jeux centrés sur l’Agon sont les jeux qui font appel au sens dudéfichez les joueurs, et à leur goût pour la compétition. Caillois y place les sports de concurrence (football, tennis), les défis intellectuels (go, poker), mais aussi les jeux qui incitent à se dépasser soi-même (saut en longueur, voire Tetris si le joueur est captivé par son score).

• Mimicry : les jeux centrés sur Mimicry sont les jeux qui font appel à l’imaginaire des joueurs et à leurrôlefictif au sein de la partie. On y place bien évidemment les jeux de rôle (Dongeon et Dragons, les Loups-Garous, la dinette), mais aussi tous les jeux dont l’univers prend une place importante dans la façon dont les joueurs l’apprécient (Zelda, Warcraft).

• Linx: les jeux centrés sur le Linx sont les jeux qui font appel au goût du vertige chez les joueurs, à la sensation de perte de contrôle. On y place facilement tous les jeux à sensations (balançoire, manèges), mais aussi les jeux qui cherchent à susciter l’inconfort émotionnel en jouant sur la peur (Doom), ou sur le poids des responsabilités (Fables).

• Alea: les jeuxs centrés sur l’Alea sont les jeux qui mettent le joueur à la merci duhasard.

On y place naturellement tous les jeux dans lesquels la non-predictibilité des évènements fait partie intégrante des règles (backgammon, roulette, loterie).

De façon orthogonale, Caillois ventile aussi les jeux entre les deux pôles suivants :

• Ludus: les joueurs s’intéressent à la conformité des règles, à l’effort et à la reflexion dans ce cadre, ils sont attentifs.

• Paidia: les joueurs sont versés dans le plaisir du jeu sans contraintes, dans l’imaginaire et dans leur liberté, ils sont lunatiques.

Ces deux dernières facettes du jeu ne sont pas sans rappeler les deux composantes décrites plus tard par Juul en 2005. L’ambition de Caillois est que l’ensemble de ces pôles archéty- paux décrivent un spectre large et souple dans lequel chaque jeu, considéré comme héritant d’un mélange unique de ces concepts de base, peut s’inscrire. Il constitue en cela un modèle de description des jeux, axé sur leur diversité.

(11)

2.1. VERS UNE DÉFINITION DU JEU 5

Dans ce travail de stage, on s’intéresse principalement auxjeux formels, décrits par le pôle Ludusde Caillois. Les jeux purementPaidia, improvisés, très libres, dépourvus de structure et de contraintes, centrés sur l’unique imaginaire (comme beaucoup de jeux d’enfants), difficiles à reproduire et par conséquent très difficiles à étudier rigoureusement, sont considérés comme le bouillon génétique des jeux formels et laissés respectueusement à l’écart.

Unité des jeux

Caillois met aussi au jour six propriétés fondamentales du jeu, différentes des précédentes en ce qu’elles ne sontpas discriminantesselon lui. Il s’agit d’invariants retrouvés dans tous les jeux joués par les êtres humains, qui constituent leur unité. Par conséquent, elles sont les plus proches de ce qui peut constituer une définitiondu jeu puisqu’elles en capturent les points communs.

Selon Caillois, tout jeu est :

1. libre: c’est-à-dire que le joueur choisi délibérément d’y jouer. En ce regard, un devoir de mathématiques ou une formalité administrative ne sont pas des jeux si l’on est obligé de s’en acquitter.

2. isolé: c’est-à-dire que le jeu est délimité dans l’espace et le temps selon des conventions explicitement définies à l’avance. On les appelle ici la "bulle" du jeu. En ce regard, recher- cher un trousseau de clés perdu n’est pas un jeu, car l’on ne sait ni où elles se trouvent, ni combien de temps l’on mettra pour les retrouver.

3. incertain: c’est-à-dire que l’issue du jeu, en termes de succès ou d’échec, n’est pas déter- minée à l’avance. En ce regard, une partie de poker n’est plus un jeu si, pour une raison ou une autre, les cartes en mains deviennent connues de tous. La pêche aux canards n’est pas un jeu, car on ne peut pas la perdre.

4. improductif: c’est-à-dire que le joueur ne retire aucune resource explicite du jeu qu’il a joué, que la partie n’est pas soumise à une téléologie particulière. Elle ne doit avoir aucune conséquence en dehors de la bulle décrite en 2. En ce regard, Warcraft cesse d’être un jeu dès lors que le joueur espère se constituer un revenu en le pratiquant, et la roulette russe n’est pas un jeu.

5. réglé: c’est-à-dire que le jeu est doté d’une logique interne décorrélée de la logique du monde extérieur à la bulle. Les lois ordinaires ne s’appliquent pas dans le jeu et les lois du jeu sont les seules valables durant la partie. En ce regard, le jeu cesse d’être un jeu dès lors qu’un joueur triche, ou que les règles sont changées en cours de partie. Construire un pont sur une autoroute en prenant garde aux contraintes de la physique classique n’est pas un jeu.

6. fictif: c’est-à-dire que le jeu véhicule l’image d’un univers imaginaire différent du nôtre, et invite les joueurs à se le représenter. En ce regard, prendre un repas en famille ou organiser une randonnée de vacances ne sont pas des jeux.

En adoptant la vision de Caillois, il est nécessaire que tous ces critères soient réunis pour se permettre d’appeler "jeu" une activité humaine. En faisant l’hypothèse qu’ils sont aussi suf- fisants, on se permettra de les utiliser comme notredéfinitiondu jeu. Le jeu est ainsi défini par

(12)

ses propriétés, et non par une formule essentielle ou un processus mécanistique. C’est le reflet de la grande variété de formes qu’il peut prendre, et de la grande variété d’origines qu’il peut revendiquer.

Les éléments du jeu

Une fois adoptée cette vision du jeu — une activité humaine complexe correspondant aux cri- tères de Caillois — il convient de s’intéresser plus en détail à sa structure et aux éléments inva- riants qui le composent. En 2017, Gouaïch décrit le jeu formel, du point de vueLudus, comme la composition invariante de ces six élements structurels [18] :

• unespace d’étatsconsensuel, qui décrit formellement l’état courant du jeu (pour un jeu de dames : la position, la classe et la couleur de chaque pion ; pour une course : la position de chaque coureur ; pour un pendu : les lettres découvertes et les points de chaque joueur).

Sans lui, on ne saurait dire où en est la partie, on ne saurait se mettre d’accord sur la situation du jeu.

• unestructure d’actionsformelle, qui décrit pour chaque état du jeu les différentschoix des joueurs, et les états suivants auxquels ils ont accès (avancer un pion, changer de direc- tion, donner une lettre). Sans elle, l’état de la partie ne pourrait pas évoluer.

• un ou plusieurs joueursconsidérés comme des agents rationels, responsable des choix proposés par la structure d’actions. Sans eux les parties seraient erratiques, inertes, ou les choix d’actions incohérents.

• un ensemble de règles qui constituent des contraintes appliquées sur la structure d’ac- tions (pas de déplacement en arrière, pas de sortie de piste, donner une lettre parmi les consonnes non-consommées seulement). Elles rendent le jeu plus complexe, plus sensé et plus intéressant à jouer.

• un ou plusieursbutsà atteindre, considérés comme des régions particulières de l’espace d’états. La partie se termine lorsqu’ils sont atteints (plus aucun pion adverse, ligne d’arri- vée franchie, mot révélé). Sans eux, les choix des joueurs ne seraient guidés par rien.

• un ou plusieursfacteurs d’échecsqui vont retarder les joueurs dans leur progression vers les buts (complexité stratégique, endurance, mémoire de la langue). Sans eux, les buts seraient toujours atteignables et le jeu serait un non-jeu selon Caillois, car non-incertain.

Le terme "jeu" est aussi utilisé à plusieurs échelles : les éléments précédents décrivent unjeu à son niveau le plus abstrait (par exemple : « le jeu du pendu »), comme une partition de musique décrit un morceau. Au niveau inférieur, le le terme "jeu" est utilisé pour décrire ledispositifdu jeu, c’est-à-dire l’instance matérielle qui permet de le jouer (par exemple : une boîte cartonnée étiquettée "pendu" contenant des cartes de mots, des feuilles, des crayons et un sablier), comme un orchestre peut jouer le morceau. Au niveau le plus basal, on appelle aussi "jeu" la partie effectivement réalisée par les joueurs (par exemple : deux amis ouvrent la boîte pour jouer au pendu un matin), comme le concert au cours duquel le morceau est joué .

Dans ce document, on utilisera "jeu" pour désigner le niveau le plus abstrait composés des six éléments de Gouaïch, "dispositif" pour désigner sa forme matérielle et "partie" pour en désigner l’instance la plus basale.

(13)

2.2. L’UTILISATEUR ET SON EXPÉRIENCE 7

En 2014, Francillette décrit aussi les jeux comme la composition récursive d’un concept appelé « boucle Objective-Challenge-Reward (OCR) » [14]. L’idée est de pouvoir aussi décrire les jeux comme une succession hierarchisée de mini-jeux au sein desquels la composante O représenterait lesbutsselon Gouaïch,Creprésenterait lesfacteurs d’échecetRla récompense à fournir immédiatement lorsqu’un but a été atteint. Chaque boucle peut être elle-même composée de plusieurs sous-boucles. Lorsqu’une boucle se termine, on en recommence une autre ou bien la partie est terminée.

2.2 L’utilisateur et son expérience

Le joueur

On appellejoueurouutilisateurl’être qui prend le rôle d’agent rationnel selon Gouaïch.

La compétence

Les compétencesou capacitésdu joueur sont les acquis développementaux (réflexion, endu- rance, mémoire, spatialisation, etc.) qui lui permettent d’atteindre lesbutsdans une partie en faisant fi desfacteurs d’échec. Les joueurs diffèrent les uns des autres par leurs compétences.

Les compétences peuvent aussi évoluer chez un même joueur qui peut les renforcer, les perdre ou en acquérir de nouvelles.

L’expérience

À la différence d’un simple agent rationnel (qui pourrait tout aussi bien être incarné par un programme), le joueur est empreint d’un arrière-plan psychique, et son état émotionnel peut être altéré durant la partie. De fait, elle pourra tour à tour être vécue comme excitante, ennuyeuse, dépaysante, terrifiante, drôle, agréable, dérangeante,etc.Les joueurs diffèrent les uns des autres par leurs propensions psychiques. Ces dernières peuvent aussi évoluer chez un même joueur.

Dans ce contexte, on appelle expériencela façon dont chaque partie est ressentie par un joueur, prenant en comptes tous les états psychiques qu’il traverse au cours du jeu. La qualité de l’expérience dépend donc des propriétés de chaque élément du jeu, des capacités du joueur, de son arrière-plan psycho-émotionel et de la contingence. Par exemple, l’effort fourni lors de la partie peut peser lourd dans l’expérience. La valorisation accordée au succès ou à l’échec d’une partie, qu’elle soit explicitée ou non par le dispositif, qu’elle concerne le joueur lui-même ou sa considération par les autres, sera aussi une composante importante de l’expérience de jeu.

On attend spontanément d’un jeu qu’il soitamusantà jouer, et que l’expérience en question soit positive. S’il s’agit là de l’attente fondamentale du joueur, sans laquelle le jeu n’aurait aucun sens, la notion associée de « fun » reste fugace et assez difficile à caractériser. On ne cherchera pas à la définir.

Leflow

En revanche, il existe un état psychique bien étudié caractérisant de nombreuses expériences positives de jeu. Il s’agit du « Flow », décrit pour la première fois par le psychologue hongrois Csíkszentmihályi en 1990 [6].

(14)

Le flow, universellement perçu comme une expérience très positive, est l’état dans lequel le sujet est plongé lorsqu’il est absorbé dans une tâche à sa hauteur. Il est atteint lorsqu’un bon équilibre est respecté entre ses compétences et les objectifs qu’on lui donne à atteindre. On le caractérise habituellement par huit propriétés :

1. La tâche à accomplir està la portée des compétencesdu sujet.

2. Le sujet est absolumentconcentrésur cette tâche.

3. L’objectif à atteindre est parfaitement clair.

4. Chaque acte réalisé procure un retour immédiat ; lefeedbackest instantané.

5. Le sujet est profondémentimpliqué dans l’activité, mais l’effortqu’il doit fournir en ce sens reste modéré.

6. Le sujet éprouve une forte sensation decontrôlesur le système qu’il manipule.

7. Le sujet n’accorde plus d’importance à lui-même, exempt de tout calcul rationnelégoïste.

8. Le sujet perçoit letempsde façon altérée.

Csíkszentmihályi décrit cet état dans un contexte de psychologie positive assez général et propose d’en faire une ambitieuse philosophie de vie. Quoi qu’il en soit, le concept s’applique tout à fait à l’état du joueur absorbé dans une partie dont il retirera une expérience très positive.

Compatible avec concept de « zone proximale » décrit par Vygotsky en psychologie du déve- loppement [4], c’est au cours du flow que les capacités d’apprentissage du joueur sont exploitées au maximum, et que ses compétences utiles pour la tâche sont les plus à même de progresser.

En conséquence, il est naturel pour un joueur de rechercher le flow dans un jeu [22, 5], et pour un concepteur de jeux de chercher à guider les joueurs vers cette zone proximale, d’autant plus qu’un jeu susceptible de produire de bonnes expérience constitue une juteuse ressource pour l’industrie du jeu et du jeu vidéo. En 2005, Sweetser et Wyeth suggèrent d’évaluer les jeu au travers d’un modèle fondé sur les huit critères de Csíkszentmihályi ("GameFlow"), afin d’en estimer la qualité en termes d’expérience [30].

Csíkszentmihályi remarque aussi que le flow se produit à des échelles différentes, imbriquées les unes dans les autres, de la même façon qu’une tâche appelle à réaliser des sous-tâches.

On propose de mettre cette structure récursive en relation avec la vision de Francillette selon laquelle jeu est un emboîtement de bouclesOCRdont chacune pourrait, si elle est bien réalisée, permettre au joueur d’atteindre l’état de flow.

La motivation

D’après Csíkszentmihályi, le flow est une expérience « tellement gratifiante que les sujets sont enclins à s’y adonner comme une fin en soi, se souciant assez peu de ce qu’ils en retireront, même si cela doit être difficile ou dangereux » [6]. On appelle justement icimotivationla force qui pousse le joueur à continuer de jouer, à commencer de jouer ou à recommencer de jouer.

En psychologie positive, on a coutume de distinguer deux catégories différentes de moti- vation [29] : la motivation extrinsèque, exprimée lorsque le sujet réalise la tâche pour obtenir un gain décorrélé (par exemple, cuisiner pour de l’argent, venir en aide à un handicapé pour une meilleure considération sociale, trier ses déchets pour rester cohérent avec ses principes

(15)

2.3. LES JEUX ADAPTATIFS 9

écologiques), et la motivationintrinsèque, exprimée lorsque le sujet réalise la tâche car elle est inhéremment agréable à réaliser pour lui, parce qu’il en retire un bénéfice direct (par exemple, cuisiner par amour de la cuisine, venir en aide à un handicapé par empathie, trier ses déchets par jeu). Il est avéré que les tâches réalisées sous l’effet d’une pulsion intrinsèques conduisent à de bien meilleurs résultats en termes d’apprentissage, de créativité et de confort psychique du sujet [29].

Dans notre contexte, le premier critère de Caillois stipule qu’une activité, pour être un jeu, doit être enduréelibrement, autrement dit qu’un joueur doit être nécéssairement mû par une mo- tivation de type intrinsèque ou bien le jeu ne sera pas joué. En concevant des jeux, on s’intéresse donc à stimuler et entretenir la motivation intrinsèque du joueur. Or, d’après Csíkszentmihályi, lui permettre d’atteindre la zone proximale est une excellente façon d’y parvenir car l’état de flow est agréable en lui-même indépendamment de ce que l’on en retire.

Rechercher l’accessibilité du flow dans un jeu est donc une clé pour garantir la qualité de l’expérience du joueur, l’efficacité du jeu en termes d’apprentissage et la qualité intrinsèque de sa motivation. C’est le sujet de ce projet de modélisation.

2.3 Les jeux adaptatifs

On cherche à améliorer le contrôle sur l’expérience du joueur en utilisant des jeux adaptatifs, dont les propriétés changent en fonction de la partie en cours ou de la population de joueurs ciblée. Pour ne pas perdre en généralité, on tâchera d’abstraire un maximum la notion de jeu formelet departie. L’idée est de ramener tous les types de jeu formels à un type de jeu particulier qu’on appelle le « jeu de pointage » (cf.section 3.2), puis de les adapter au joueur en utilisant les prodécures existantes d’optimisation. Dans cette section, on définit ce qu’on entend par ces termes.

La notion d’adaptation

On appele "adaptation" une modification apportée à un objet pour qu’il reste fonctionnel dans les nouvelles conditions qu’il endure, c’est une réaction à un changement. Pour établir formellement le concept, il faut donc d’abord se donner une définition de la "fonction" de l’objet, qui n’est pas nécessairement objective.

• Le concept d’adaptationest très utilisé en biologie, central dans les questions d’évolution.

Il est à la fois le phénomène qui incite à se poser des questions de recherche et l’objet de ces recherches. En effet, de très nombreux organismes vivants semblent particulièrement adaptés à leur environnement, et les raisons n’en sont pas toujours évidentes.

– Il convient de noter qu’on utilise le mot "adaptation" pour désigner, à la fois, le processus de modification et le résultat de la modification. (perdre ses feuilles à l’approche de l’hiver est unprocessusd’adaptation des arbres au froid, les plumes des oiseaux sont lerésultatdu processus d’adaptation des dinosaures au vol). Dobz- hansky propose de parler d’"adaptation" pour le processus [9], d’"adaptedness" pour le résultat du processus [10] et de "trait adaptatif" [8] pour l’objet de l’adaptation.

Dans notre cas, on parlera duprocessusd’adaptation.

(16)

– Il convient aussi de noter que l’échelle à laquelle l’adaptation se produit est ambigüe.

On adapte un "trait", mais ce trait peut changer à l’échelle de la vie d’un individu (comme un lagopède qui devient brun chaque hiver) : on parle alors deplasticité; ou à l’échelle de l’histoire d’une espèce (comme les fabacées américaines produisent de en plus de graines en réponse au changement climatique [12]) : on parle alors d’évolution. Bien sûr, la plasticité peut elle-même évoluer.

• dans l’industrie, on parle d’"adaptation" lorsqu’il est fait en sorte que le produit soit ajusté au besoin de l’utilisateur. On parle aussi de "personnalisation". C’est ce qui nous intéresse dans le cadre des jeux.

Ici, on retient donc une notion d’adaptation en tant queprocessusd’ajustementplastique d’un jeu à ses joueurs, unepersonnalisationqui a pour but de conserver sa fonction. Lafonction que l’on se donne sera l’expérience optimale du joueur en termes de flow.

L’optimisation

Une catégorie de problèmes extrèmement étendue peut se formaliser par une recherche d’incon- nueude la forme :

u=argmax

u∈U

Φ(u) (2.1)

h(u)60 (2.2)

g(u) =0 (2.3)

On appelleulasolution optimaledu problème. Par extension, tous les autresu∈U, l’espace des solutionsousupport, donné, sont appeléssolutions candidatesousolutions potentielles.

La fonctionΦ:U→Roufonction objectif, donnée, décrit la qualité des solutions en termes d’optimalité. Les fonctions h,g:U →R, données aussi, décrivent des contraintes à respecter dans l’espace des solutions.

Trouverudans un problème d’optimisation revient classiquement à dégager, parmi de nom- breuses possibilités, la meilleure façon de le résoudre. Par exemple, il peut s’agir de la moins coûteuse ou de la plus parcimonieuse, selon ce que le modélisateur à choisi de représenter par la fonction objectifΦ.

Dans notre cas, on représentera l’expérience du joueur en termes de flow par une fonction objectifΦ, là où son supportU représenterait l’espace constitué par tous les paramètres du jeu laissés libres au processus d’adaptation. Autrement dit, chaqueu∈U représente unjeu(ou une

“version” du jeu) etΦ(u), calculé par le modèle utilisateur sous-jacent, représente sa qualité en termes d’expérience pour un état donné des joueurs.

Dans deux prochaines sections, on tâchera de résumer les procédures classiquement utilisées pour résoudre les problèmes d’optimisation de la forme (2.1).

(17)

2.3. LES JEUX ADAPTATIFS 11

Approches fondées sur le gradient

Dans les approches fondées sur le gradient [28, 7], les equations (2.1), (2.2) et (2.3) sont étu- dieés analytiquement dans une démarche de calcul de variations pour en dériver des conditions de premier ordre, nécessaires pour que la solution retenue soit optimale (i.e. la dérivée première est nulle). Ces conditions sont exprimées à l’aide d’une fonction Lagrangienne dont il s’agit d’annuler la dérivée première :∇uL =0, c’est l’opérateur qui étend le principe de dérivée pre- mière. Elles deviennent l’expression d’un problème de recherche de racine, généralement résolu par desméthodes de Newtonoù l’on suit itérativement la dérivée locale de∇u L pour en trou- ver une valeur nulle. Une fois cette candidate trouvée, il reste à vérifier les conditions de second ordre pour vérifier qu’il ne s’agit ni d’un minimum, ni d’un point selle.

Ces méthodes fondées sur le calcul de variations nécessitent de lourdes hypothèses analy- tiques sur la structure du supportUet sur la dérivabilité de la fonction objectifΦ. De plus, elles nécessitent de pouvoir calculer le gradient du Lagrangien, ce qui implique de pouvoir estimer la dérivée deΦ. Quand c’est impossible analytiquement, on peut se rabattre sur des méthodes numériques comme laméthode des différences finiesou ses généralisations de plus hauts ordres.

Une méthode informatique très intéressante est connue sous le nom de différentiation algo- rithmique [20, 7], qui garantit une qualité machine de l’estimation. Impossible cependant de l’utiliser sans crainte si la fonctionΦ possède des ruptures de pentes ou des discontinuités, ce qui est fréquent lorsque l’on modélise des systèmes naturels compliqués comme les jeux. Enfin, ces méthodes viennent avec une garantie analytique de convergence locale, vers une solution meilleure que ses voisines, mais rien ne permet de s’assurer qu’il s’agit de la solution optimale.

Heuristiques

En réponse à ces écueils, et au détriment du raffinement analytique et de l’efficacité de calcul, on trouve toute la famille des approches heuristiques [16] : quand le modèle est trop délicat à prendre en charge formellement, on prend la décision de tester directement de nombreuses solutions candidatesu∈U pour en mesurer numériquement la qualitéΦ(u), puis de retenir la meilleure. Pour le faire intelligemment, de nombreuses méthodes s’appuient sur l’hypothèse selon laquelle les solutionsprochesde la solution optimale sont aussi de bonnes solutions, au- trement dit, que les valeurs deΦsont autocorrélées spatialement sur le supportU. En dotantU d’une mesure dedistanceet d’un concept delocalité(voisinage), on peut décliner ces heuris- tiques sous de nombreuses formes parmi lesquelles :

• lesalgorithmes génétiques[17] : dans cette approche bio-inspirée très populaire, chaque solution testéeu est considérée comme un individu Darwinien dont l’aptitude (ou « fit- ness ») est mesurée parΦ(u). On en teste simultanément une importante population, puis l’on choisit, pour la génération suivante, de tester prioritairement des solutions proches des meilleures obtenues. De fait, par un processus de sélection artificielle, la population de solutions évoluera spontanément vers des hautes régions du paysageΦau fil des itéra- tions.

• lerecuit simulé[1] : dans cette approche inspirée de la physique statistique, très populaire aussi, chaque solution testée est acceptée ou rejetée selon sa qualité relative par rapport à la solution courante. Si elle est meilleure, on l’accepte et on l’utilise pour remplacer

(18)

la solution courante. Si elle est moins bonne, on l’accepte seulement avec la probabilité e∆ΦT où T représente un paramètre de température virtuel, refroidi progressivement au fil des itérations. La suite des solutions finit par converger vers le plus haut point du pay- sageΦà condition que le refroidissement soit suffisamment progressif. Le recuit simulé est apprécié pour sa tendance à ne pas se laisser piéger par des optima locaux, même nombreux.

• dans la recherche tabou[15], on garde trace des meilleures solutions visitées depuis le début de l’heuristique, et l’on s’interdit de visiter de nouveau leur voisinage. On évite ainsi à l’algorithme de se laisser piéger par des boucles exploratoires sans fin.

• dans les optimisations paressaims particulaires[11], chaque solution testée est dotée d’un vecteur devitessedont la direction est influencée à la fois par la meilleure solution trouvée dans son voisinage et par la meilleure solution trouvée dans son propre historique. Le phénomène denuéerésultant est spontanément attiré vers les zones les plus prometteuses de l’espace de rechercheU.

• dans les méthodes bio-inspirées decolonies de fourmis[25], chaque bonne solution aug- mente l’espace de recherche d’une information nouvelle : sa concentration enphéromone virtuelle. Cette quantité s’accumule localement, s’évapore spontanément au fil des itéra- tions, et augmente les chances de voir une nouvelle solution testée dans le voisinage. Peu à peu, comme les solutions les meilleures sont renforcées par le phénomène, il ne restera plus qu’elles.

• de nombreuses autres méthodes reprennent les principes de bases de l’algorithme géné- tique en en raffinant certains aspects comme l’aptitude des individus à rechercher active- ment des maxima locaux par eux-mêmes (algorithmes memetiques[26]), les opérateurs de génération des solutions à partir des solutions existantes (mutation, reproduction dans lessystèmes immunitaires artificiels[13], recombinaison dans les algoritmes d’évolution différentielle[27]),etc.

Toutes ces heuristiques sont définies de façon assez lâche, de sorte qu’il est aisé des les com- biner, de les étendre, de les hybrider et de les adapter à des problèmes très spécifiques. Autrement dit, chaque implémentation de ces heuristiques estad hocpar construction. C’est pour cela qu’on en parle en tant que principes généraux d’optimisation ou de « méta-heuristiques » [16].

Contrairement aux méthodes fondées sur le gradient, les heuristiques garantissent souvent une convergence vers l’optimum général du problèmeu et pas un optimum local. Cependant, ces garanties doivent prendre pour hypothèse que le temps de convergence est suffisamment long. En pratique, il n’est donc pas impossible qu’un passage prolongé dans un optimum local soit considéré comme la fin de la procédure. Selon le problème en question, on se satisfera ou non d’une bonnesolutionu ainsi trouvée, même s’il ne s’agit peut-être pas de lameilleure solutionu.

Chaque problème nécessitant la mise en œuvre de méthodes heuristiques possède ses propres règles et structure. Dans notre cas, il s’agira de la forme deU et deΦ, selon la façon dont un jeu particulier a été modélisé par un problème de contrôle optimal. Comme il est impossible de prendre génériquement en compte tous les avantages et les inconvénients pouvant découler de cette structure, il convient d’adapter avec soin l’heuristique choisie une fois qu’elle sera connue.

(19)

2.3. LES JEUX ADAPTATIFS 13

C’est pour cette raison qu’il est précieux qu’elles soient si lâchement définies en tant que « méta- heuristiques ».

Comme on s’est donné pour objectif d’exprimer et d’optimiser tout jeu adaptatif sans perte de généralité dans le domaine des jeux formels, ces approches seront particulièrement privilé- giées parce qu’elle permettent justement de conserver la généricité. C’est ce qui motivera la conception de notre système de typage (voir section 3.3).

(20)
(21)

3

Contribution

Dans ce chapitre, on exposera toutes les productions originales réalisées au cours de ce stage, susceptibles d’être réutilisées plus tard dans cette direction de recherche.

3.1 Modèle général du jeu adaptatif

Avant de concevoir les procédures d’optimisation dédiées aux jeux adaptatifs, il convient d’abord de dégager plus précisément le contexte dans lequel on pose ce problème, et d’expliciter les relations entre les différents concepts impliqués avec les manières de le formaliser. À notre connaissance, ce travail n’a pas encore été réalisé dans le domaine de la ludologie. On se propose alors de rassembler les concepts et de les articuler comme sur la figure 3.1. Ils sont décrits comme suit :

Cadre général

D’un point de vue général, on s’intéresse à l’instance la plus basale du jeu, à savoir lapartie, lorsqu’elle est en train d’être jouée par unjoueursur undispositifde jeu. Il peut être une console vidéo, un jeu de plateau et de pions, un univers fictif conté par un narrateur, etc. (à gauche figure 3.1). On oppose l’univers (réel) du joueur et du dispositif à l’univers (fictif) du jeu : la bullede jeu, et de ses différents composants techniques (à droite sur la figure).

Entrée du dispositif et données utilisateur

La seule façon pour le joueur d’interagir avec la bulle de jeu est d’agir physiquement sur le dispositif. Du point de vue du jeu, l’activité explicite du joueur se manifeste par la réception d’une série d’evènement datés et quantifiés, que l’on peut formaliser comme une collection discrète d’informations et / ou une trajectoire continue dans un espace de contrôle.

Par exemple, sur la figure, l’évènement 2, long, pourrait encoder « la flèche du haut est enfoncée » ou « le joueur cache ses cartes », qui se produit une fois brièvement vers les 2 minutes, puis une autre fois plus longuement à 5 minutes 20. L’évènement3, instantané (sans durée), qui se produit trois fois d’affilée autour des 4 minutes de la partie, pourrait encoder «la touche de saut est frappée» ou bien «le joueur lance les dés».

15

(22)

entrée du dispositif

données utilisateur

(activité)

modèle utilisateur

joueur réel

contrôleur prédictions

de jeu actions retour

t

sortie du dispositif

estimateur d'expérience

moteur de jeu

univers de jeu

état d'action

de jeuétat

état de l'utilisateur

evènement 1, date, durée

evt 2, 5'20'', 4''03 evt 2, 1'56'', 2''16

evt 1, 3'15'', 0''49

evt 3, 4'05'', evt 3, 4'07'', evt 3, 4'12'',

t

evt 4, continu

contexte

FIGURE3.1 – Vue d’ensemble des concepts impliqués autour du jeu adaptatif

Parallèlement, des contrôles plus fins, comme un contrôle par joystick analogique ou la force déployée lors d’un tir à la corde, peuvent être encodés par des trajectoires continues dans le temps comme l’entrée4ici.

Toutes ces données constituent les seules et uniques informations dont dispose le jeu pour réagir au monde extérieur. Comme on le voit sur la figure 3, elles sont typiquementtemporelles et hybrides en termes de granularité (discrètes, continues, quantitatives, qualitatives etc.). On le permet pour laisser aux concepteurs des jeux adaptatifs la plus grande liberté en termes de modélisation.

État d’action

L’activité de l’utilisateur sur le dispositif permet de calculer ce qu’on appelle l’état d’actiondu joueur. Il s’agit d’une interprétation de ses choix de jeu, traduits dans les termes de la bulle de jeu et de ses règles propres.

Trivialement, l’activité d’enfoncer la flèche de droite sera interprétée comme l’état d’action :

«le joueur souhaite aller à droite», mais ce découplage des concepts est intéressant en termes de modélisation puisqu’il permet une plus grande liberté. Par exemple, on peut rendre l’interpré- tation dépendante du contexte de jeu (dicté par l’état de jeu) : la barre d’espace sera interprétée comme «le joueur souhaite sauter » à terre, mais comme «le joueur souhaite tirer» en vol, voire comme «le joueur s’est trompé» en mer.. une information importante dans un contexte où l’on cherche aussi à représenter l’état de l’utilisateur. De fait, on peut aussi choisir, selon ses compétences estimées, de rendre la sensibilité de l’état d’action à l’activité plus ou moins

(23)

3.1. MODÈLE GÉNÉRAL DU JEU ADAPTATIF 17

fine, en réglant par exemple la sensibilité du joystick, ou en nécessitant deux évènements "dé- goupiller" puis "lancer" au lieu d’un seul pour établir l’état d’action «le joueur souhaite jeter sa grenade».

Quoi qu’il en soit, l’état d’action est défini à tout moment comme un vecteur de souhaits va- lués, par exemple(direction: 153°06’, vitesse: rapide, tenir l’objet: vrai). Ce vecteur ne représentepasl’état réel du jeu, puisque les règles peuvent empêcher ces souhaits de se réaliser. En revanche, il détermine exactement quelles ‘actions’ de lastructure d’actions sont invoquées pour passer d’unétat de jeude l’espace d’étatsà l’autre. Une fois encore, ce vecteur est aussi typiquement hybride en granularité, pour un plus grand confort de représenta- tion.

État de jeu

Compatible avec la notion d’espace d’étatsde Gouaïch, l’état de jeuest une valeur complexe définie à tout moment, et contenant toute l’information nécessaire à la description du jeu.

On y trouve bien sûr toutes les informations formelles nécessaires à l’application desrègles et à la définition des objectifs, comme la position de chaque pièce sur un échiquier ou le nombre de vies restantes de Pacman. Mais aussi, on doit y intégrer les informations nécessaires auretour utilisateuren sortie du dispositif, comme la luminosité de la scène, la musique d’ambiance ou le contenu des dialogues. Enfin, il est nécessaire que l’information relative au ‘contexte’ dans lequel les données utilisateur sont interprétées comme un état d’action soit aussi contenue dans l’état de jeu (niveau de difficulté, sensibilité des contrôles,etc.).

Transparentes aux yeux du strict jeu formel selon Gouaïch, ces informations annexes sont très importantes dans un contexte où l’on s’intéresse aussi à modéliser l’expérience utilisateur et son contrôle.

L’état de jeu est mis à jour en permanence par le moteur de jeu, bien connu, responsable de la réalisation des actions souhaitées décrites par l’état d’action en résultats effectifs dans l’univers de jeu (ladirectionest déviée par le vent, l’objetpourtant tenu est lâché lors d’un cahot), et de l’évolution spontanée du jeu lui-même (progression des ennemis, germination des semis,etc.).

État de l’utilisateur

Au cœur de la réalisation d’un jeu adaptatif se trouve la notion demodèle utilisateur, responsable de la définition de l’état présumé du joueur réel, qu’il s’agisse de ses compétences, d’emotions, de son état de fatigue, etc. Le modèle utilisateur se nourrit de toutes les données disponibles dans le dispositif : l’activité de l’utilisateur, ses intentions selon l’état d’actionet tout l’état de jeu.

On attend du modèle utilisateur qu’il permette de définir à tout instant un nouveau vecteur hybride représentant l’état de l’utilisateur, par exemple :(réactivité: 175ms, maniement de la baguette: acquis, excitation: 2, strategie: 25% défensive). On attend aussi qu’il puisse fournir desprédictionsde jeu en termes de futures données utilisateurs, ainsi qu’une façon d’estimer l’expérience de jeu, en termes de flow ou d’excitation par exemple.

Étant donné une instance de jeu particulière et un objectif d’optimisation, construire un tel modèle utilisateur est un travail non-trivial à part entière, c’est celui qui fait l’objet du stage

(24)

réalisé en parallèle de celui-ci et intitulé «Étude et proposition d’un modèle de joueur pour les jeux adaptatifs».

Controleur adaptatif

L’élément qui nous intéresse dans ce stage est le contrôleur du jeu adaptatif. Il s’agit d’une procédure d’optimisation répondant au problème (2.1). Son support U est constitué des pa- ramètres de l’état de jeu laissés libres à l’adaptation, pour assurer la meilleure expérience utilisateur, par exemple : (niveau de difficulté: 1..5, ambiance sonore: {calme, énergique, angoissante}, réactivité des commandes : 0-99). Sa fonction objec- tif Φ est construite à partir de l’estimateur d’expérience fourni par le modèle utilisateur (par exemple, une mesure du flowcf.section 2.2), mais aussi des prédictions de jeu. Pour l’évaluer, il est probable qu’elle doive aussi faire appel au moteur de jeu lui-même puisqu’il s’agira, dans le pire des cas, de simuler les trajectoires de jeu les plus probables pour en retenir les meilleures en termes d’expérience.

Finalement, cette articulation des concepts telle qu’illustrée figure 3.1 nous permet :

• d’établir proprement ce qu’on entend par "jeu adaptatif" et les différents termes qu’on utilisera par la suite.

• de mieux définir notre problematique dans ce contexte et ce qu’on entend par "contrô- leur". Par exemple : construire un modèle utilisateur, interpréter des données d’activité ou optimiser un moteur de jeu ne sont pas des objectifs de ce stage.

• de se fournir une ébauche formelle d’un langage dans lequel décrire, exprimer et simuler n’importe quel jeu adaptatif.

Comme on a tâché de ne pas perdre en généricité en exprimant ce modèle, le supportU du contrôleur est un espace potentiellement hybride en granularité (une mixture de données dis- crètes, continue, quantitatives, qualitatives), qu’il n’est pas trivial d’explorer en utilisant les techniques classiques d’optimisation (voir section 2.3). Dans la section 3.3, on présentera notre ébauche de solution à ce problème.

3.2 Un jeu élémentaire

Pour exercer notre approche sur un exemple simple. On s’attache maintenant à concevoir un jeu élémentaire. Le jeu doit être le plus simple possible en répondant quand même aux critères de Caillois (voir section 2.1), et en exhibant tous les éléments structuraux de Gouaïch (section 2.1).

On choisit un jeu monodimensionel en temps continu (voir figure 3.2), constitué d’un simple ressort horizontal lesté (masselotte en bleu) et d’une cible mouvante (pointe en rouge). Lebut selon Gouaïch est de rapprocher la masselotte suffisamment près de la cible et de conserver cette proximité pendant suffisamment de temps. L’espace d’états est constitué de l’ensemble des positions possibles de la masselotte et de la cible (R2). Lastructure d’actions est constituée d’une simple force horizontale que le joueur peut exercer sur la masselotte d’un côté ou de l’autre (à chaque instant décrite par une valeur deR). Lesrèglessont décrites par le mouvement de la cible, les seuils de proximité et de durée à atteindre, ainsi que l’équation du ressort. Les

(25)

3.2. UN JEU ÉLÉMENTAIRE 19

facteurs d’échecsont constitués par la maladresse du joueur, la puissance du ressort, la vitesse de la cible,etc., tous susceptibles de le faire échouer.

Étant donné une équation du ressort (ici une force de rappel classique) et une équation de mouvement de la cible (ici une simple sinusoïde). Il est aisé d’implémenter le dispositif et de simuler des parties sur ordinateur (à droite figure 3.2).

M T F

FIGURE3.2 – Dispositif du jeu élémentaire et simulation d’une partie. Ici, le joueur gagne entre 10 et 11 secondes quand son score passe en dessous du seuil vert, et la partie se termine.

Considérant le modèle décrit section 3.1, on pourra encoder lesdonnées d’activitéde l’utili- sateur comme une fonction continue du tempsa:

R+→R

t7→F(t) (voir évènement 4 figure 3.1) : la force qu’il exerce sur le ressort. L’état d’actionest simplement constitué de la valeur de la forceF à chaque instant : l’« accélération souhaitée de la masse ». L’état de jeuest décrit par le vecteur des deux positions de la masselotte et de la cible(M,T)∈R×R. On peut aussi y ajouter trois variables intéressantes : la vitessev∈Rde la masse, la distanced∈R+ de la masse à la cible (deuxième graphe figure 3.2), et la distance moyenne au cours des 5 dernières secondes score∈R+(dernier graphe). C’est quand ce score passe sous le seuil gagnant (en vert figure 3.1) que la partie est remportée. En ce qui concerne l’état du joueur, on définit schématiquement son état d’excitation par sa proximité d’avec le but : c’est le temps passé dans la zone “presque gagnante”, qui compte d’autant plus que le seuil gagnant est proche et que la vitesse de la masse est grande. Par exemple, on le définit ici par

Φ= Z

P

abs(v)

d dt (3.1)

avecPl’ensemble des dates à laquelle le score passe sous ce “seuil d’excitation” (en jaune).

D’une façon plus générique, on définira plus tard — au delà de ce stage — toute une catégo- rie de jeux similaires comme desjeux de pointage: les jeux où il s’agit de rapprocher un objet d’une cible ou d’une zone gagnante, en utilisant les seuls contrôles à disposition et en faisant fi

(26)

des obstacles et des facteurs d’échec (jeux de fléchettes, golf,etc.). Notre intuition est que tout jeu formel, tant qu’il peut être formalisé selon Gouaïch comme une trajectoire sinueuse dans un espace d’état compliqué, peut se ramener à un simple jeu de pointage dont l’objet n’est autre que l’étatlui-même, et dont la cible est tout naturellement constituée par lesbutsà atteindre : les zones gagnantes de l’espace d’états (tous les pions adverses sont pris, la feuille l’emporte sur la pierre, on a deviné les cartes du joueur d’en face,etc.).

Ainsi, on peut espérer continuer de travailler sur le jeu du ressort (un jeu de pointage) sans perte de généralité conceptuelle. Ce jeu pourrait représenter l’élément unitaire des jeux plus complexes ou plus sophistiqués.

3.3 Généralisation et système de typage

Dans cette section, on expose la solution qui nous permettra d’avancer dans le processus d’im- plémentation du modèle 3.1 (et notamment l’implémentation du contrôleur) sans perte de géné- ralité. Il s’agit d’un système de typage dédié à l’expression des procédures d’optimisation sur un support hybride.

Le problème de la granularité

Comme on l’a vu section 3.1, le confort de représentation que l’on souhaite laisser aux concep- teurs de jeux adaptatifs vient au détriment d’un lourd écueil analytique. En effet, les différents vecteurs et évènements supposés décrire le système renferment typiquement des données de types mixtes : certaines vivent dans des espaces continus (comme la position d’une flèche), d’autres dans des espaces discrets (comme le nombre de cartes à piocher) ; certaines vivent dans des espaces bornés (comme le point d’arrivée d’une balle de pelote basque), d’autres dans des espaces sans limitesa priori(comme la vitesse d’un sprinter) ; certaines vivent dans des espaces métriques et ordonnés (comme le score de Tetris), d’autres sont strictement qualitatives (comme le choix de promotion du pion) ; certaines vivent dans des espaces libres (comme l’annonce d’une mise au poker), d’autres dans des espaces très contraints (comme la position de Pacman).

Cette hétérogénéité rend les procédures analytiques classiques quasiment inapplicables (calcul de gradient, mesure de distance, hypothèses de continuité).

Pourtant les systèmes naturels, et les jeux en particulier, se décrivent très facilement par ces combinaisons difficiles que l’on appelle ici "vecteurs hybrides". Par exemple, on peut rudimen- tairement décrire l’étatd’un jeu de tennis par un score (discret, libre) et la position de la balle (continue, contrainte dans le demi-espace positif) :

(s1,s2)∈N2, (x,y,z)∈R3/z>0 . Comme les systèmes formels en question sont, de toutes façons, typiquement trop complexes pour être étudiés analytiquement, les résultats qu’on espère en tirer reposent communément sur des approches heuristiques ou des simulations (voir section 2.3). Ce qu’on espère ici, c’est rendre la composition des heuristiques plus facile à appréhender en attaquant directement le problème de la granularité par une approche de typage.

Les opérations abstraites des heuristiques

Comme on l’a vu section 2.3, les heuristiques d’exploration pour l’optimisation sont chacune définie de façon très lâche, de sorte qu’on peut facilement les adapter à chaque situation parti-

(27)

3.3. GÉNÉRALISATION ET SYSTÈME DE TYPAGE 21

culière. En fait, si l’on s’intéresse autypedes données explorées et de la fonction objectif, on constate qu’elles font très peu d’hypothèses à leur sujet.

Au contraire, elles préjugent seulement des opérationssusceptibles d’être réalisées sur les données, et c’est sans doute ce qui leur vaut d’être qualifiées de “méta-heuristiques”. Parmi ces opérations, on trouve :

• tirer au sort une valeur dans un espace (pour initialiser une procédure ou explorer une nouvelle zone après convergence locale)

• tirer au sort une valeur proche d’une valeur déjà explorée (pour progresser localement dans la recherche)

• comparer deux valeurs en termes d’ordre (pour évaluer si la fonction objectif est plus intéressante en les nouveaux échantillons)

• mesurer la distance entre deux valeurs (pour estimer un taux de convergence)

De fait, indépendamment de la granularité du supportUet de la fonction objectifΦdans le problème (2.1), on peut implémenter une heuristique d’exploration (par exemple, un algorithme génétique ou une chaîne de Markov de Metropolis-Hastings [21]) dès que l’on s’est donné un moyen de réaliser successivement ces opérations. Or, de tous les types de données utilisés dans la représentation formelle des systèmes naturels, rares sont ceux sur lesquels on ne sait pas réaliser numériquement ces opérations, dussent-t-elles s’entâcher de certains choix arbitraires du modélisateur.

Par exemple, la loi uniforme se décline sur de nombreux supports bornés et permet déjà de tirer au sort dans un espace continu (comme un point sur un segment), discret (comme un barreau d’échelle), voire qualitatif (comme un bonus de MarioKart™). Sur les supports non- bornés commeZouR+, il existe des lois paramétriques usuelles (comme la loi de Skellam, la loi log-normale) permettant de réaliser ces tirages. Le choix de ces lois et de leurs paramètres est évidemment susceptible d’influencer le résultat de la recherche heuristique. Cependant, il est toujours nécessaire de le réaliser pour effectuer les recherchesin silico. Par souci de rigueur et de généralité, on ne fera pas ces choix lors de la conception du système de typage, mais on en laissera la responsabilité à l’utilisateur. Il s’agira simplement de les lui expliciter et de les lui faciliter.

Quoi qu’il en soit, en abstrayant le concept d’opérationsur les données hybrides. On peut espérer construire un outil formel de modélisation qui permettra d’utiliser ces heuristiques quelle que soit la mixture de granularitésUutilisée par les concepteurs pour représenter un jeu adapta- tif, ou un système naturel en général.

Un système de typage dédié

Pour permettre ce confort d’expressivité, on s’attèle à la conception d’un système de typage (et son modèle primitif de calcul) avec les objectifs suivants :

• faciliter l’expression des vecteurs hybrides décrivant numériquement les systèmes naturels

• découpler la définition des opérations de celle des heuristiques proprement dites.

• garantir la cohérence fonctionnelle des enchaînement d’opérations quels soient les types utilisés et l’heuristique implémentée

(28)

• donner à l’utilisateur la possibilité de définir ses propres types, contraintes et opérations

• fournir à l’utilisateur des types usuels de base et leurs opérations associées, en lui facilitant les choix de paramétrisation

Pour cela, on a besoin de réifier les trois concepts de valeur, de type et d’opération dans notre contexte :

Lavaleur est le porteur fondamental de l’information numérique. Elle est indifféremment celle qu’onécritpour représenter une instance du système de façon quantifiée, et celle qu’onlit pour interpréter le résultat d’un calcul numérique. C’est sur elle que s’effectuent lesopérations.

Chaque valeur est typée par un et un seultype.

Letypedéfinit l’ensemble de toutes les valeurs possibles qui sont typées par lui-même. En cela, il rejoint la notion d’espace. De fait, c’est à lui qu’on se réfère pour vérifier qu’une valeur est correctement définie ou pas. C’est aussi lui qui donne lasémantiquede la valeur (est-ce une

“distance”, une “position”, un “décalage”etc.). Les types sont susceptibles de dériver les uns des autres au sens de l’héritage, chaque type dérivé constituant unraffinementde sesparentspar l’ajout d’une ou plusieurscontraintes. Par exemple,Nest un raffinement deZpar une contrainte de positivité, lui même raffiné depuisRpar une contrainte d’intégrité. Par conséquent, le nombre de valeurs possibles pour un type donné ne peut que décroître au fur et à mesure que l’on des- cend l’arbre de raffinement des types. (On verra en quoi ce principe peut être intéressant pour généraliser les stratégies d’exploration par raffinements page 30.) Aussi, les types peuvent se combinerles uns aux autres en aggrégats pour constituer ce qu’on appelle les “vecteurs hybri- des”. Par exemple, en combinant le type “Vitesse” raffiné depuisR+aux types “Vaisseaux” (N) et “Stratégie” ({offensive,défensive,inerte}), on peut décrire l’étatd’un jeu de guerre par le type dédié Flotte=Vitesse×Vaisseaux×Stratégie dont les objets (52.,150,offensive) et (0.,93,défensive) sont des valeurs correctes, mais pas(- 5.,∞,pleine). Enfin, les types constituent la signature desopérations.

L’opérationdéfinit le processus élémentaire de calcul que l’on peut effectuer sur lesvaleurs.

Elle lit en entrée les valeurs (inputs) qu’on lui donne pour écrire une valeur de sortie (output) selon un algorithme invariant défini à l’avance. Elle est est aussi porteuse d’unesémantiquedont la cohérence est assurée en partie par sasignature: une contrainte sur ses types d’entrée et de sortie. De ce fait, avant même de le réaliser, on pourra établir formellement l’invalidité d’un cal- cul visant à calculer la “distance” (R+) entre deux “Billes” (R2) si l’on nourrit l’opération avec des valeurs incohérentes typées par “Temperature” (R+) et “Couleur” ([0,1]3). À la différence des ‘fonctions’ utilisées dans les langages usuels de programmation typés, où tous les arguments ont même valeur sémantique, on distingue une catégorie particulière d’entrées qu’on appelle les paramètresde l’opération. Comme les inputs, ils sont nécessaires à la production de la valeur de sortie. Mais à la différence des inputs, ils ne caractérisent pas le support de l’opération.

opération output inputs

paramètres

Par exemple, on peut définir une opération “proches”, signée en entrée par deux “Billes”

(R2) et en sortie par un “Booléen” ({vrai,faux}). Pour fonctionner, cette opération a besoin d’un paramètre “seuil” typé par “Distance” (R+) en deça duquel l’opération renverravrai. Ce paramètre est un objet dont l’existence et l’état ne changent en rien le support d’entrée de l’opé-

(29)

3.3.GÉNÉRALISATIONETSYSTÈMEDETYPAGE23

FIGURE3.3–IllustrationUMLduprototypedesystèmedetypagedédié.

Core classes Primitive types

ex: Instances

Operations

aggregate

refine

BasicType

AnythingType str:

# check(*) : bool CompoundType

ConstrainedType

# check(Value) : Boolean Value

held: BasicType + copy() : Value Operation

name: String expression: * + evaluate(*) : Value

Caster

Meter Checker

Drawer

Mutator

ValueChecker

Orderer

CompoundValue

no input 2 inputs same type Boolean output 1 input

always true typed by

`output`

TypeType name: String

# record(*) : *

# check(*) : bool

# supercheck(*) : bool + makeValue(*) : Value

parents

*

provided by

implementation language acceptedBasicTypes *

QualityType

int:

Integer: IntegerType + zero() : Value + one() : Value

1

float:

RealType + zero() : Value + one() : Value Real:

1 bool:

BooleanType Boolean:

1 type 1

1

output *

inputs

parameters * *

subtypes

1..*

outputs same type

returns

`checker` result

1 checker

bothcombined

true iif 1st < 2nd

enum:

Pixel:

Direction:

{red, green, blue}

{left, right}

1

Positive:

BoundedBelow

Bounded Value {subsets parameters}min

min max

One: Value held: 1

One: Value held: 1.

Natural:

Steps:

Segment:

Zero: Value held: 0

Zero: Value held: 0

Zero: Value

held: 0. type

type

min min min

min

max max checker.expression:

min < value

checker.expression:

min < value < max

ex: Value held: .87542

type helds*

{subsets held}

Zero: Value held: 0.

Figure

Updating...

Références

Sujets connexes :