top of page

IA Jeu d'échecs

Réalisé en 2 semaines par 2 programmeurs
Réaliser une IA de jeu d'échec la plus convaincante possible et rechercher de possibles optimisations et améliorations de celle-ci.

Le projet a été réalisé à 2 développeurs sur Unreal Engine 4.10
Nous disposions déjà d'un projet Unreal de base dans lequel nous pouvions effectuer les déplacements VALIDES des pièces blanches. L'IA, jouait un coup aléatoire.

 

Les demandes majeures du projet ont été:

  • De réaliser dans un premier temps une IA suffisamment convaincante

  • De pratiquer des améliorations du temps de calculs via des algorithmes d'évaluations du plateau de jeu différents

  • Pour plus d'approfondissement, transformer le plateau de base d'Unreal en BitBoard afin d'accélerer les décisions de l'IA (manière optimisée de considérer le plateau d'échec comme un entier de 64 nombres correpondants aux 64 cases du plateau)

  • Optionnellement corriger certaines fonctionnalitées manquantes ou mal gérées dans le projet de base (les pions ne pouvant pas avancer de 2 cases au départ, la promotion de pion, la gestion de l'échec, le roque, ...)

Les plus grandes difficultés ont été, notre découverte que très récente d'Unreal Engine et la transformation du plateau de base en Bitboard. Unreal est un moteur très performant mais dont l'apprentissage se veut très fastidieux il est difficile de prendre en main de manière intuitive ce moteur de jeu contrairement à Unity qui se veut beaucoup plus facile d'accès.


En ce qui concerne le Bitboard, nous avons décidés de l'implémenter afin de comprendre le fonctionnement de ce dernier car il s'agissait d'une notion encore inconnue avant ce projet. Il nous a fallu un temps d'adaptation pour comprendre le fonctionnement de ce système et une bonne partie de notre projet pour remplacer ce que nous avions déjà implémentés afin que le Bitboard s'intègre parfaitement dans le programme (retranscrire les coups valides de chaque pièces, la gestion de l'échec, ...).

bottom of page