Java 17 · Maven · JavaFX

DEEP BLACK

Moteur d'échecs

|
Documentation Fonctionnalités GitHub

Sous le capot

Une IA construite pour gagner

Minimax Alpha-Bêta
Algorithme de recherche récursif avec élagage alpha-bêta réduisant l'espace d'états de 99%. Approfondissement itératif (IDS) et fenêtres d'aspiration pour des coups de qualité à chaque instant.
Table de transposition Zobrist
4 millions d'entrées indexées par hachage Zobrist 64 bits. Les positions déjà analysées sont retrouvées en O(1), évitant des millions de recalculs pendant la recherche.
Représentation bitboard
12 entiers long Java (64 bits) encodent la position complète. Les opérations bit à bit permettent d'analyser 64 cases simultanément. Millions de positions par seconde.
Parallélisation multi-thread
Chaque coup racine est évalué dans un thread indépendant via ExecutorService. Le moteur exploite tous les cœurs du processeur pour doubler la vitesse de recherche.
Livre d'ouvertures
Base de milliers d'ouvertures construite depuis des PGN de référence, indexée en binaire pour un accès O(1). Sécurité intégrée : tout coup dangereux est rejeté avant d'être joué.
3 niveaux structurellement distincts
FACILE, MOYEN, DIFFICILE ne diffèrent pas que par la profondeur. Chaque niveau a sa propre fonction d'évaluation, ses optimisations et son comportement algorithmique distinct.

Vue d'ensemble

Architecture du projet

Prêt à explorer le code ?

58 classes, 8 packages, des centaines de décisions algorithmiques documentées.

Ouvrir la documentation