GAME Data & Artificial Intelligence

Projets de recherche

r&d lab

AXE 1 : GAME Data & Artificial Intelligence

L’IA est historiquement liée au jeu vidéo, étant présente à toutes les étapes de création, de la conception jusqu’à la production, en passant par le développement.  Dans cet axe, les enseignants-chercheurs s’intéressent notamment à trois thèmes. 

1 - IA pour le contenu de jeu :

  • Génération procédurale de contenus de jeu (niveaux, terrains, décors, personnages, etc.),
  • Automatisation des tests des jeux,
  • Moteurs d’IA génératives,

2 - IA pour le Gameplay :

  • Algorithmes de prises de décision temps-réel et de planification d’actions de Personnages Non-Joueurs (PNJ),
  • Algorithmes de perceptions
  • Moteurs d’IA génératives pour le Gameplay et les nouveaux concepts de jeu.

3 - Données de jeu :

  • Récolte des données In-game
  • Analyse des données, 
  • Modélisation de comportements de joueurs, 
  • etc.

Cet axe est membre du Groupe de Travail Jeux & IA du CNRS et naturellement lié à la formation Game Programming au cours de laquelle les étudiants proposent, développent et investiguent des sujets originaux appliqués à des cas d’étude concrets. 

Mots-clés : Prise de décision, planification d’actions, données de jeu, génération procédurale de contenu, IA générative. 

projets

projets & publications

1 - Génération procédurale de Puzzle-Game de Rush Hour

Contexte 

 

La génération procédurale des jeux de puzzle permet d’obtenir des niveaux plus variés et plus diversifiés, ce qui offre une meilleure expérience de jeu. Cependant, la génération basée sur le Deep Learning est très difficile à mettre en œuvre pour ce genre de jeux en raison de leur complexité inhérente à des règles de conception.

 

Sujet 

 

Dans ce travail, nous proposons un modèle composé de trois modules principaux : un solveur et deux classificateurs. Les composants de Rush Hour sont générés aléatoirement et le solveur a pour but d’évaluer la jouabilité des niveaux générés en classant les niveaux solvables/insolvables et en évaluant la difficulté des niveaux solvables.

 

Deux réseaux neuronaux sont utilisés pour améliorer la génération. L’un d’entre eux est entraîné à différencier les niveaux solvables des niveaux insolvables et l’autre est entraîné à classer la difficulté des niveaux. La robustesse de l’approche proposée est examinée sur des grilles de dimensions 6×6 et 7×7. Les résultats obtenus ont montré l’efficacité de nos modules à générer des niveaux intéressants et variés avec quatre degrés de difficulté pour le Puzzle-Game Rush Hour où le classificateur a été capable d’identifier rapidement les niveaux insolubles.

 

Notre approche pourrait être facilement adapté et étendu pour générer de manière procédurale d’autres genres de jeux, tels que les jeux de plates-formes ou les jeux RogueLike.

 

Ci-dessous 3 exemples des niveaux de Rush hour générés par notre modèle (les blocs bleus représentent les voitures à déplacer pour débloquer la voiture rouge et les blocs noirs sont fixes)

puzzle game_rush hour

Mots clés : génération procédurale, deep learning, Puzzle games

Partenaire : Ce projet a été réalisé dans le cadre de partenariat avec le laboratoire LAMSADE de l’université Paris Dauphine.  

Année 2021-2022 (projet terminé)

Contexte 

 

Les IA génératives telles que ChatGPT, Mid-Journey et DALL-E, ne cessent de se développer dans différents domaines technologiques. Même si l’industrie du jeu vidéo est plutôt réticente à son utilisation pour le moment, ces outils pourraient intervenir in-fine dans la production d’un jeu vidéo, depuis la conception en passant par son développement et jusqu’au gameplay final. La question principale que l’on cherche à répondre ici est la suivante : ces IA peuvent-elles intégrer les outils de conception de jeu vidéo (moteur de jeu vidéo) et offrir ainsi une expérience nouvelle aux joueurs en termes de gameplay ?

 

Sujet 

 

L’objectif de ce projet est de proposer aux joueurs une expérience intéractive en incorporant un modèle de langage large (LLM) tel que ChatGPT dans le moteur de jeu Unity3D. Cette intégration permet aux joueurs d’interagir avec les contenus 3D de manière intuitive via un langage naturel, où ils rédigent et envoient leurs prompts à ChaGPT. Ensuite, l’IA générative transmet ces instructions à Unity3D pour les exécuter. Ceci permet ainsi aux joueurs d’effectuer des actions telles que changer les couleurs, les formes ou les fonctions d’éléments 3D du jeu. Le temps de latence chatGPT-Unity3D a été optimisé pour garantir une expérience de jeu fluide. Une vidéo montrant une séquence du jeu est disponible ci-dessous. Ce démonstrateur a montré la faisabilité d’envisager ChatGPT comme une nouvelle expérience de jeu, avec un gameplay intuitif et simple. D’autres outils d’IA génératives pourraient être explorés ultérieurement pour développer de nouveaux concepts de jeu et de gameplay.

Partenaire : Studio OHBIBI

Année 2022-2023(projet terminé)

Contexte 

 

Les comportements des PNJ représentent un élément crucial des jeux de type « rogue-like » : plus les comportements sont imprévisibles, meilleure est l’immersion du joueur. Les algorithmes de planification d’action peuvent générer de tels comportements. Cependant, la qualité du jeu et l’immersion ne dépendent pas uniquement de ces comportements.

 

Plusieurs autres éléments peuvent avoir un impact majeur sur cette immersion, tels que les niveaux, le terrain, la musique, l’éclairage, le rendu et les textures, etc.  Dans ce projet, nous investiguons l’utilisation de Game AI Planning pour la génération procédurale de niveaux en ligne.

 

Sujet 

 

Nous étudions la capacité d’un planificateur d’action basé sur le Goal Oriented Action Planning (GOAP) à réaliser un double objectif :

  1. contrôler le comportement des PNJ;
  2. générer automatiquement des niveaux de donjon. 
 

Pour évaluer cette approche, nous avons développé sous Unity un jeu de plateforme 2D personnalisé nommé Khaldun et inspiré de Dead Cells. Le jeu peut être téléchargé ici.  Les résultats ont montré la capacité du GOAP à générer automatiquement des donjons solvables. À chaque nouvelle session, le niveau généré est unique, ce qui permet une immersion agréable et divertissante (voir ci-dessous).

 

De plus, notre algorithme produit des actions imprévisibles des ennemis, évitant ainsi des comportements redondants comme dans le cas des systèmes de prise de décision conventionnels (machine à états ou arbre de comportement).

Bien que la génération simultanée, le temps d’exécution de la planification reste négligé permettant une expérience fluide, agréable et divertissante.

Mots clés : jeu de plateforme, Planification d’action, génération procédurale de niveaux, GOAP

Partenaire : Ecole Militaire de Saint-Cyr Coëtquidan

Année 2020-2021(projet terminé)

Contexte 

 

Les jeux de combat représentent des environnements de simulation stimulants pour de nombreux problèmes de prise de décision qui modélisent le comportement des personnages non joueurs (PNJ).

Les méthodes les plus utilisées sont basées sur des scripts, des machines d’état ou des arbres de comportement et ont été intégrées dans les moteurs de jeu  tels que Unreal Engine ou Unity.

Cependant, ces méthodes peuvent souffrir d’actions redondantes et prévisibles réduisant ainsi l’immersion du joueur. L’approche de planification d’actions permet de surmonter ces limitations. Cependant, cette dernière est connue qu’elle soit coûteuse en temps et ressources mémoire. Il s’agit donc d’un défi pour les jeux de type « brawler » en temps réel.

 

Sujet 

 

Dans cette étude, nous présentons une approche de planification hybride qui associe et combine les avantages de ces deux méthodes:

  • la planification d’action orientée vers les objectifs (GOAP) et
  • le réseau de tâches hiérarchiques (HTN).
 

L’approche proposée est évaluée par le biais d’un jeu de “combat” dynamique en arène 3D offrant un univers riche où le joueur contrôle un personnage qui contrôle une matière fluide pour attaquer des ennemis (araignées ou crabes). Le jeu peut être téléchargé ici. Les performances de notre architecture ont été analysées avec 2 situations: 

 
  1. le joueur a un statut de vie élevé et il combat une seule araignée (figure 1);
  2. le joueur est endommagé et devrait combattre 3-4 araignées (figure 2). 
 

Le temps d’exécution pour la première conguration est négligé alors qu’il n’est que de 0,01ms pour la seconde situation malgré son scénario défavorable (plusieurs PNJ).  Par conséquent, l’approche hybride proposée est efficace et n’affecte pas la fluidité du jeu bien qu’il s’exécute sur la console PS4.

kahiora_figure 1
kahiora_figure 2

Figure 1 : situation 1

Figure 2 : situation 2

Mots clés : Jeu de Combat 3D, Planification d’actions, GOAP, HTN

Partenaire : Ecole Militaire de Saint-Cyr Coëtquidan

Année 2020-2021(projet terminé)

Ces projets sont développés dans le cadre pédagogique des étudiants durant leur formation du Game Programming. Ils sont régulièrement présentés lors de communications orales à l’échelle nationale, à l’occasion principalement des événements organisés par le groupe de travail CNRS Jeux & IA ou autres.  

This site is registered on wpml.org as a development site. Switch to a production site key to remove this banner.