• Aucun résultat trouvé

Des agents pour le jeu Pacman

2.10 Le Pacman

2.10.2 Des agents pour le jeu Pacman

Le comportement aléatoire de certains personnages de jeu9 concède au Pacman

un niveau de complexité élevé qui semble attirer depuis quelques années une certaine communauté de chercheurs. Ces chercheurs voient en Pacman un banc d'essai idéal pour expérimenter certaines techniques d'intelligence articielle.

Nous présentons des travaux réalisés dans le but de développer des agents intelligents pour le Pacman. Pour chaque travail, nous donnons les éléments de l'environnement de jeu qui sont pris en compte par l'agent dans la prise de décision. Nous présentons ces attributs car ils ont inuencé les choix de modélisation que nous avons eectués dans le but de caractériser l'environnement de jeu.

Gallagher et Ryan [18] ont développé un agent en utilisant une machine à états (FSM) et un ensemble de règles pour contrôler les mouvements du Pacman. Deux états (Retreat, Explore) sont possibles et dépendent de la distance de Manhattan (sans considération des murs) qui sépare le Pacman et un fantôme. Il faut aussi rappeler que c'est une version simpliée du Pacman qui ne contient qu'un seul fantôme. Des poids sont associés aux règles et ces dernières sont évoluées à l'aide d'un algorithme évolutionnaire [3]. Un seul élément de l'environnement de jeu est considéré :

• La distance de Manhattan (sans considération des murs) entre le Pacman et un fantôme. Cette dernière est utilisée pour décider quand changer d'état.

Robles et Lucas [38] utilisent un arbre de recherche pour contrôler le Pacman. L'arbre de recherche (gure 2.11) contient tous les chemins possibles et ce dernier est utilisé

pour évaluer ces chemins. Les n÷uds de l'arbre correspondent à une position de la grille et chaque n÷ud contient un élément de jeu (rien, une pac-gommes, une super pac-gommes, Pacman ou un fantôme). L'évaluation des chemins consiste à déterminer les chemins les plus sûrs et les moins sûrs. Pour chaque chemin, sa valeur est calculée en fonction des éléments contenus dans les n÷uds. Pour ce faire, à chaque élément pouvant être contenu dans le n÷ud est associé un poids. Par exemple, nous pourrions associer un poids de 20 à une pac-gomme de base et 50 à une super pac-gomme. La valeur du chemin étant la somme des valeurs de tous les n÷uds. Le chemin le plus sûr sera celui avec la plus grande valeur. Cependant, même si cette approche semble être prometteuse, rien ne garantit que le chemin le plus sûr soit le meilleur. Les éléments de l'environnement de jeu qui sont considérés sont les suivants :

• Les positions des éléments de jeu sur la grille de jeu : les pac-gommes, les super pac-gommes, le Pacman et les fantômes.

• Le temps d'activité du super pac-gomme.

Lucas [25] quant à lui utilise les réseaux de neurones pour contrôler les mouvements du Pacman. Le réseau reçoit en entrée un vecteur contenant les observations de l'environ- nement de jeu. Les observations de l'environnement de jeu qui sont pris en compte sont les suivants :

• g1...g4 : distance vers chaque fantôme (prédateur). • e1..e4 : distance vers chaque fantôme (fuite). • x, y : Localisation de la cellule courante.

• pill : distance vers la pac-gomme la plus proche.

• powerP ill : distance vers la super pac-gomme la plus proche. • junction : distance vers le croisement le plus proche.

Précisons que la distance utilisée correspond au plus court chemin entre le Pacman et l'élément spécié.

Szita et Lorincz [53] quant à eux ont réalisé un agent utilisant des politiques à base de règles pour contrôler le Pacman. Les règles sont organisées pour créer des modules qui correspondent aux actions que le Pacman peut exécuter. Une priorité est accordé à chaque module et c'est sur la base de cette dernière que s'eectue le

Figure 2.11  La conguration du jeu et sa représentation en arbre (Source : [38]) choix du module à exécuter. Les politiques sont apprises à partir de ces modules et en utilisant un algorithme d'optimisation [40]. Les règles sont construites à partir de plusieurs observations dans l'environnement de jeu. Les observations de l'environnement de jeu considérées sont les suivantes :

• N earestDot : distance vers la pac-gomme la plus proche.

• N earestP owerDot : distance vers la super pac-gomme la plus proche. • N earestGhost : distance vers le fantôme le plus proche (prédateur). • N earestEdGhost : distance vers le fantôme le plus proche (fuite).

• GhostCenterDist : distance euclidienne vers des centres géométriques des fan- tômes.

• DotCenterDist: distance euclidienne vers le centre géométrique des pac-gommes encore disponibles.

La distance considérée se calcule toujours à partir de la position courante du Pacman. En plus de la distance euclidienne, nous notons l'utilisation du plus court chemin entre le Pacman et l'élément spécié.

Wirth et Gallagher [56] ont développé un agent basé sur l'analyse des régions de la grille de jeu pour décider dans quelle direction il faut aller. Le degré d'importance d'une

région est déni en fonction des éléments localisés dans cette région. Par exemple, une région dont les emplacements contient des pac-gommes et/ou des supers pac-gommes aura un degré d'importance plus élevé par rapport à une autre région dont les emplace- ments contiennent des fantômes. Ainsi, en essayant de trouver les régions importantes, ils s'assurent que le Pacman va toujours se diriger vers les zones les plus prometteuses. Pour analyser les régions de la grille, les éléments de l'environnement ci-dessous sont considérés :

• x, y : localisation de la cellule sur laquelle se trouve le Pacman. • pill : nombre de pac-gommes restant.

• powerP ill : nombre de super pac-gommes restant.

• dot : distance euclidienne entre la position courante et la pac-gomme la plus proche.

• eatenGhosts : nombre de fantômes déjà mangés.

Guan et al [54] ont développé un contrôleur pour le Pacman utilisant les réseaux de neurones avec l'algorithme Hill-Climbing. Les éléments de l'environnement de jeu qui sont pris en compte sont les suivants :

• pill : plus petite distance euclidienne entre le Pacman et la pac-gomme la plus proche.

• powerP ill : plus petite distance euclidienne entre le Pacman et la super pac- gomme la plus proche.

• normalGhost: plus petite distance euclidienne entre le Pacman le fantôme le plus proche (prédateur).

• edibleGhost : plus petite distance euclidienne entre le Pacman et le fantôme (fuite).

• f ruit : plus petite distance euclidienne entre le Pacman et un fruit.

Une analyse des éléments choisis par ces chercheurs pour caractériser l'environnement du jeu montre qu'il s'agit surtout des mesures de distances. Nous pouvons en distinguer trois : la distance de Manhattan, la distance euclidienne et le plus court chemin. Nous pensons que ces choix ont été inuencés par la conguration du plateau de jeu qui est en forme de labyrinthe.

Documents relatifs