Versions précédentes
- Version 3.2.1 - 2 Février 2024
- corrige un problème d'initialisation du paramètre UCI
LimitStrengthMode
- corrige les limites des paramètres UCI pour les
tablebases
- améliore le code pour limiter les noeuds et la vitesse
- change la formule pour UCI_Elo
- simplifications dans la génération des coups et
l'évaluation
- Version 3.2 - 9 Décembre 2023
- utilise la librairie Fathom pour les tables de fin de
partie (support 7 pièces)
- réecrit le tuner, utilise l'algorithme de descente de
gradient
- corrige l'initialisation du splitpoint pour les noeuds
non PV dans le YBWC
- corrige un probleme de tri des coups avec la fenetre
d'aspiration
- corrige des plantages possibles avec de mauvais paramètres
en ligne de commande ou dans le fichier de configuration
- réduit l'utilisation de la pile et utilise
std::thread
- ajoute une option de personnalité pour charger tous les
paramètres d'évaluation à partir d'un fichier
- change les conditions du LMR et LMP
- nouveaux paramètres d'évaluation après tuning
- ajout de l'évaluation des avant postes des fous
- ajout d'un bonus par colonne pour les pions passés
- ajout de l'évaluation du pawn storm
- réecrit l'évaluation du bouclier de pions
- change le paramètre tempo
- Version 3.1.1 - 17 Décembre 2022
- corrige un problème de détection de nulle par matériel
depuis la version 3.1.0
- Version 3.1.0 - 10 Décembre 2022
- évaluation paramétrée avec la méthode Texel's tuning
- modifie la fonction d'évaluation pour pouvoir paramétrer
plus facilement
- corrige une data race dans YBWC
- change le tri des coups à la racine
- ajoute une option UCI pour choisir la méthode de
réduction ELO
- ajoute des variables pour le matériel en fin de partie
dans les personnalité
- continue à simplifier et moderniser le code
- ajout de nouveaux tests unitaires
- utilisation de l'intégration continue sur Gitlab
- Version 3.0.1 - 15 Janvier 2022
- corrige l'initialization du mode SMP pour plus de 64
threads
- corrige l'initialisation du roque FRC dans la lecture de
la position FEN
- corrige le choix de la thread pour le Lazy SMP
- corrige des variables non initialisées dans le benchmark
- Version 3.0 - 18 Décembre 2021
- ajoute "Lazy SMP"
- ajoute le support des Syzygy Tablebases (maximum 6 mens)
- utilise le format de livre d'ouverture Polyglot
- supporte l'instruction PEXT pour les magic bitboards
- ajoute les informations UCI hashfull et tbhits
- utilise la thread principale du programme pour les entrées
- change les tables PST
- change les valeurs du pawn shield
- réécrit l'évaluation des pions passés
- ne coupe plus de branches en cas de pions avancés
- change les paramètres du LMR
- corrige un problème pour le YBWC
- corrige un problème avec les fin de partie KPK
- corrige un problème avec l'évaluation des cavaliers piégés
- corrige un problème dans le SEE
- corrige un problème avec la valeur maximum des phases de
jeu
- modernise le code du C++03 vers le C++17
- réorganisation et simplification du code
- ajout de tests unitaires (avec GTest)
- met à disposition le code source (depuis la version 3.0)
- Version 2.2 - 5 Septembre 2020
- corrige des coups invalides avec le pondering
- corrige un problème dans makemoke pour le FRC introduit
dans la version 2.1
- corrige un problème avec UCI strength et le protocol UCI
- le paramètre randomness n'est plus utilisé que dans les
personnalités
- ne compte plus les noeuds supprimés par le pruning
- change la table PST pour le roi
- change les paramètres du LMP
- supprime la pénalité pour aucun pions en fin de partie
- ajoute les counter moves
- utilise futility pruning et razoring en fin de partie
- réduit la table history pour les coups qui n'améliorent
pas la position
- utilise un tableau pour le MVVLVA
- optimisations
- Version 2.1 - 8 Juillet 2019
- corrige l'initialisation de UCI Strength dans le fichier
.ini
- corrige un problème de roque en FRC avec les FEN
- corrige quelques problèmes avec les threads
- réécrit la prise en charge des protocoles UCI et XBoard
- quelques optimisations et simplifications
- corrige un problème avec le LMP
- augmente la réduction du LMR pour les noeuds non PV
- Version 2.0 - 15 Décembre 2018
- ajout du support multi processeurs (YBWC)
- nouveau format de livre d'ouverture
- ajout du contempt factor
- ajout d'une option benchmark
- ajout d'une options pour les personnalités
- ajout d'un paramètre pour réduire la vitesse du moteur
- ajout du late move pruning
- supprime le bonus pour la reine sur la 7éme rangée
- modification des paramètres pour la mobilité
- modification des bonus pour les pions et les tours
- Version 1.9.2 - 17 Fevrier 2018
- corrige un problème où le moteur ne repond pas en mode
pondering, present depuis la version 1.9
- corrige un problème de coups illegaux en pondering quand
la recherche se termine avant que l'interface envoie un
message
- corrige une erreur avec Arena/UCI quand le pondering est
actif, renvois toujours un coup au parametre ponder (si
possible)
- corrige un problème au lancement de la prochaine partie
d'un tournois avec Fritz GUI
- 3 Mars 2018 : ajout d'une version arm pour Raspberry Pi
- Version 1.9.1 - 16 Septembre 2017
- corrige un problème de coups illégaux assez rare quand on
utilise une position FEN au départ, à cause d'une mauvaise
initialisation des droits de roque
- corrige un plantage dans l'option testsuite quand 'am' ou
'bm' est rencontré 2 fois
- affiche un message d'erreur quand un coup illégal est
envoyé par l'interface
- ajoute des options pour désactiver le Null moves pruning
et LMR
- quelques optimisations du code
- 1er Octobre 2017 : mise à jour de la version Android
- Version 1.9 - 6 Mai 2017
- corrige un plantage possible : variable non initialisée
pour le roque
- corrige un plantage rare dans de très longues parties
- reduit la taille de la hashtable des pions
- change la structure de la hashtable
- supprime la pénalité pour le déplacement de la reine en
début de partie
- supprime la pénalité pour la perte du roque
- ajoute plus de réduction pour le LMR en fonction du
nombre de coups et de la profondeur
- ajoute plus de réduction pour le null moves pruning en
fonction de la profondeur
- utilise config.ini pour les valeurs par défaut en mode UCI
- ajoute une option pour activer le fichier log
- réécrit la génération des coups et la gestion de l'ordre
des coups
- réorganise le code pour la recherche
- sortie de la version armv8
- Version 1.8 - 19 Mars 2016
- corrige un problème dans la mise a jour de la phase de jeu
- corrige un plantage avec une hash table de 1Mo
- corrige l'affichage du nombre de noeuds
- corrige l'affichage de multipv
- ajout du support FRC
- utilise le LMR dans les noeuds PV
- ajout de la methode "reverse futility pruning"
- ajout des coups mettant en échec dans le premier coup de
quiescence
- supprime les promotions mineures dans quiescence
- supprime la condition de mate dans le null move pruning
- réécrit la prise en charge du format FEN
- réorganisation du code pour eval, movegen,endgame,
protocols
- optimisation du tri des coups
- Version 1.7 - 4 Avril 2015
- Corrige un problème avec l'évasion d'échecs dans
quiescence search
- Corrige des problèmes avec le multipv
- Corrige un problème avec l'iterative deepening
- Change les marges pour le futility pruning
- Ajout du razoring
- Utilise 4 entrées par position dans la hashtable
principale
- Utilise une table de fin de partie KPK
- Modification de l'ordre des coups à la racine
- Supprime l'extension mate threat
- Ajout d'une hashtable pour les pions (2 Mo)
- maintenant les PSQT sont non incrémentées
- Ajout de l'option UCI_Strength
- Augmente la marge Lazy evaluation
- Optimisations
- Sortie de la version Android (armv7)
- Version 1.6.1 - 31 Mai 2014
- Corrige un problème de pondering sous Linux / Mac OS X,
maintenant utilise stdin sans buffer
- Corrige un problème quand le pondering était annulé
- Corrige la commande "level" pour Xboard, maintenant
utilise des floats pour l'incrément
- Corrige : la commande UCI "info depth" était envoyée en
mode Xboard
- Version 1.6 - 10 Mai 2014
- Nouvelle fonction d'évaluation
- Amélioration de l'évaluation des pions
- Amélioration de l'évaluation de la protection du roi
- Utilisation de tables de mobilité
- Ajout de la détection de fins de parties
- Amélioration de la gestion du temps
- Changement de la méthode aspiration window
- Corrige un problème dans l'installtion du PV
- Corrige un problème avec la règle des 50 coups
- Corrige un problème de promotion dans l'affichage PV
UCI/Winboard
- Ajout de l'option UCI multi pv
- UCI : Envoi info depth avant la recherche
- Optimisations
- Version 1.5 - 6 Juillet 2013
- ajout de la génération de coups par étape
- corrige un problème dans la validation des coups
- corrige un problème dans l'évaluation des draw
- corrige un problème dans le mate distance pruning
- corrige un plantage possible dans les parties longues
- corrige un problème avec les null moves
- change la façon de compter les noeuds (+1 avant de faire
un coup légal)
- change la méthode pour le tableau history heuristic
(piece/to)
- désactive l'extension recapture
- utilise l'évasion d'échec dans le premier ply de
quiescence
- ajout d'un bonus de temps dans l'évaluation
- ajuste la valeur des scores des mates dans la hashtable
- quelques optimisations
- windows : remplace QueryPerformanceCounter() par
GetTickCount()
- utilise les paramètres UCI : seldepth, upperbound,
lowerbound
- perft renvois seulement le nombre de noeuds, l'ancien
perft s'appelle "perftd" maintenant
- Version 1.4 - 17 Mars 2012
- Correction d'un problème avec les killer moves
- Correction d'un problème avec l'history heuristic
- Augmente la taille du buffer pour les échanges avec
UCI/Winboard
- Optimisation de la génération des coups
- Optimisation des fonctions makemove/unmakemove
- Optimisation du futility pruning
- Optimisation de l'appel du SEE
- Supprime les killer moves ply - 2
- Supprime les mate killer moves
- Améliore la fonction d'évaluation
- Interpolation de l'évaluation pour les tables de position
des pièces
- Améliore la protection du roi
- Réduit le nombre d'appels à la fonction de vérification
du temps
- Affichage du temps et vitesse dans perft et divide
- Ajout de l'option UCI pour effacer la hash table
- Augmente la taille maximum de la hash table a 4096 Mo
- Version 1.3b - 14 Janvier 2012
- modifications pour pouvoir compiler la version 64 bits
- recompilation sous windows avec Visual Studio 2010 Express
- Version 1.3 - 1er Novembre 2008
- corrige un problème avec winboard : cheese continuait à
jouer apres avoir perdu
- corrige un problème dans le SEE
- corrige un problème avec les répétitions
- changement du test pour l'extension recapture
- ajout du pondering en UCI et Winboard
- ajout du mode analyse avec Winboard
- utilise les options UCI pour configurer le moteur
- ajout du mate distance pruning
- optimisations dans la generation des coups et evaluation
- utilise les tables de position incrementales
- change le tri des coups dans root
- changement de l'ordre de tri des coups
- changement du nombre de coups avant l'utilisation du LMR
- augmente la marge utilisé pour lazy evaluation
- Version 1.2 - 24 Mai 2008
- correction d'un problème de calcul du temps, les coups de
l'ouverture n'étaient pas toujours compté avec winboard
- utilise les magic bitboards pour les fous, tours, et
reines
- optimisation de la génération des coups et du SEE
- Version Linux disponible
- Version 1.1b - 22 Janvier 2008
- correction de problèmes de coups illégaux en cas de
promotions
- correction de problèmes qui povoquaient des coups
illégaux avec Winboard
- correction de l'affichage du score dans Winboard
- correction de problèmes de gestion du temps
- Version 1.1 - 2 Janvier 2008
- correction d'un problème dans la génération des coups
- correction de problèmes avec les protocols UCI et Winboard
- correction de problèmes avec les extensions
- corrections et optimisations du SEE
- correction de problèmes avec des table de hash d'une
taille non puissance de 2
- changement de la methode de communication avec l'interface
- change la façon de compter les noeuds
- amélioration de la gestion du temps
- ajout de recapture extension
- ajout d'un bonus pour les pions en fin de partie
- ajout des avant postes pour les cavaliers
- ajout d'un bonus pour les pions passés connectés
- Version 1.0c - 12 Novembre 2007
- correction de problèmes dans la gestion du temps
- correction de problèmes pour les protocoles UCI et
Winboard en mode tournois
- (les versions precedents ne fonctionnaient pas
correctement en tournois)
- ne reflechis pas s'il n'y a qu'un seul coup légal
- possibilité d'utiliser un livre d'ouverture
- correction de problèmes dans l'envoi d'informations a
l'interface pendant la recherche
- Version 1.0b - 4 Novembre 2007
- corrections concernant le protocol Winboard
- changement de la fonction pour la gestion du temps
- Version 1.0 - 19 Octobre 2007
(première sortie)
- nettoyage du code
- correction avec la notation FEN
- correction de la valeur du mat
- ajout d'autres modes de recherche (UCI)
- ajout safe mobility
- ajout futility, extended futility + razoring
- augmente la taille du buffer de commande UCI
- correction dans les pièces square table
- correction d'un problème avec safe mobility
- ajuste la valeur des mats dans la hash table
- correction avec les null moves en fin de partie
- correction avec Internal Iterative Deepening
- ajoute fractional ply
- ajoute mate threat extension
- ajoute pawn on 7th extension
- optimisation des fonctions de génération des coups
- Version 0.9 - 4 Mai 2007
- nettoyage du code
- ajout prise en compte des répétitions
- ajout règle des 50 coups
- correction dans move ordering
- donne une plus grande valeur aux pions passés
- ajout évaluation pour materiel insuffisant
- optimisation de la génération des coups
- correction dans l'évaluation du materiel incremental
- ajout bonus pour une paire de fou
- correction dans null moves
- correction dans late move reduction
- ajout mate killer, killers at depth-2
- ajout incremental gamephase
- correction dans quiescence search
- optimisation du tri des coups
- reduit le nombre d'appel à la fonction inCheck
- ajout adaptive Null Move pruning
- correction avec la notation FEN
- Version 0.8 - 2 Avril 2007
- correction dans null moves
- ajout Principal Variation Search
- ajout incremental material evaluation
- ajout gamephase dans la fonction d'évaluation
- ajout penalité pour un déplacement de la reine dans
l'ouverture
- ajout bonus et pénalités pour les pions
- ajout bonus pour les tours sur des colonnes
ouvertes/semi-ouvertes
- ajout Static Exchange Evaluation
- ajout check extension
- ajout bonus pour tours sur la 7eme rangée
- ajout king safety and tropism
- correction pour le protocol UCI
- ajout Late Move Reduction
- ajout Internal Iterative Deepening
- Version 0.7 - 21 Janvier 2007
- ajout moteur UCI / Winboard
- correction pour iterative deepening
- ajout aspiration window
- ajout quiescent search
- correction dans alpha-beta
- ajout null moves pruning
- correction pour history heuristic
- optimise la fonction d'évaluation
- correction dans les fonctions de génération des coups
- ajout aspiration window
- Version 0.6 - 19 Décembre 2006
- optimization de la recherche alpha-beta
- ajout iterative deepening
- optimisation des fonctions de génération des coups
- ajout du tri des coups, MVV/LVA et killer moves
- ajout de fonctions pour lancer des tests au format epd
- ajout history heuristic
- Version 0.5 - 22 Mars 2006
- ajout Zobrist hash key + Transposition Table
- ajout gestion de la notation FEN
- correction et optimisation dans les fonctions de
génération des coups
- ajout de la fonction Perft
- ajout de la fonction divide
- optimisation du calcul des hash key
- correction dans la recherche alpha-beta
- Version 0.2 - 26 Février 2006
- Rotated Bitboards
- Génération des coups
- fonction d'évasion d'échec
- Simple recherche alpha-beta
- Début - 6 Février 2006
- Simple interface avec SDL + OpenGL, aucunes règles