2 points par GN⁺ 2026-02-16 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • Un moteur d’échecs léger fonctionnant dans environ 2 KB, capable de jouer une partie complète dans un ensemble de règles limité
  • Il intègre des algorithmes clés comme un plateau mailbox de 120 cases, la recherche Negamax et l’élagage alpha-bêta
  • Il utilise une évaluation basée uniquement sur la valeur des pièces (material-only eval) et un ordre des coups privilégiant les captures (move ordering)
  • Le roque, la prise en passant, la promotion, la répétition et la règle des 50 coups sont non implémentés
  • Il atteint un niveau d’environ 1170 à 1200 Elo et se distingue comme un exemple de moteur d’échecs implémenté en moins de 2 KB de code

Aperçu du projet

  • Sameshi est un moteur d’échecs minimaliste prenant en charge un ensemble de règles limité, dont la taille totale du code n’est que d’environ 1,95 KB
    • Le fichier principal est sameshi.h, et une version plus lisible est incluse dans readable/sameshi.h
    • Le dépôt GitHub fournit également main.c, Makefile, .gitignore, etc.
  • Une vidéo de démonstration est disponible sur YouTube, ce qui permet de voir le moteur en fonctionnement réel

Structure principale (core)

  • Le moteur se compose des six éléments principaux suivants
    1. Structure de plateau mailbox de 120 cases
    2. Algorithme de recherche Negamax
    3. Élagage alpha-bêta
    4. Évaluation basée uniquement sur la valeur des pièces (material-only evaluation)
    5. Ordre des coups privilégiant les captures (move ordering)
    6. Validation complète des coups légaux, incluant échec, mat et pat
  • Les fonctionnalités non implémentées indiquées explicitement sont le roque, la prise en passant, la promotion, la répétition et la règle des 50 coups

Performances (strength)

  • Son niveau est estimé à environ 1170 Elo, avec un intervalle de confiance à 95 % de 1110 à 1225 Elo
  • La mesure est basée sur les résultats de 240 parties contre Stockfish (niveau 1320 à 1600)
  • Les tests ont été réalisés avec une profondeur fixe de 5, un maximum de 60 demi-coups et des règles limitées

Caractéristiques techniques

  • La taille totale du code est inférieure à 2 KB, avec 98,6 % en C et 1,4 % en Makefile
  • Le projet pousse au maximum la compacité et l’efficacité algorithmique pour implémenter la logique des échecs avec un minimum de code
  • Il est classé dans les thèmes chess-engine, chess et demoscene

État du dépôt

  • Le dépôt GitHub compte 143 étoiles et 5 forks
  • Les sections Issues, Pull requests, Projects et Security sont toutes vides
  • La description du dépôt est résumée ainsi : « a ~1200 Elo chess engine that fits within 2KB »

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.