All Classes and Interfaces

Class
Description
Classe utilitaire et point d'entrée pour le jeu de Bataille Navale.
Bot basique qui attaque des cases aléatoires jusqu'à trouver toutes les cibles.
Représentation d'une coordonnée sur la grille de Bataille Navale.
 
Gestion logique d'une grille de Bataille Navale.
Couche graphique au-dessus de la logique de la grille.
Interface heuristique simple pour sélectionner une coordonnée de tir.
Classe abstraite représentant un joueur.
Implémentation d'un joueur humain avec interface graphique.
Interface de lancement pour configurer la taille de la grille et choisir le mode de jeu (Humain vs Humain ou Humain vs Ordinateur) avant de démarrer une partie.
Heuristique "Markov" basée sur une heatmap de probabilités.
Conteneur pour le résultat d'un match : le joueur vainqueur, le nombre total de coups (attaques) joués dans la partie, et le nombre de coups effectués par le vainqueur.
Heuristique Monte Carlo pour la sélection d'un tir.
Représente un navire sur la grille.
Exécute des expériences en self-play : chaque bot joue contre lui-même N fois.
SmartBot : bot combinant deux approches principales : Hunt & Target : lorsqu'un hit est détecté, explorer Haut/Bas/Gauche/Droite pour confirmer l'axe, puis tirer le long de l'axe confirmé jusqu'à ce que le navire soit coulé ; en cas de miss, tester la direction opposée. Probabilités (heatmap) : quand il n'y a pas de cible active, estimer les placements restants et tirer sur la case la plus probable. La heuristique probabiliste exclut toute case déjà tirée (miss ou case faisant partie d'un navire coulé).
Petite batterie de tests unitaires rudimentaires pour vérifier que les fonctionnalités de base fonctionnent toujours après les améliorations.
Exécuteur de tournoi simple qui fait jouer tous les types de bots entre eux (y compris en self-play) N fois, écrit un résumé CSV et génère une table lisible des résultats avec le classement.
Heuristique uniforme : choisir au hasard uniformément parmi les cases non tirées.