-------------------------------------------------------------------------------
- Cheese version 1.0c 
-------------------------------------------------------------------------------

Auteur   : Patrice DUHAMEL (cheesechess@free.fr)

Site web : cheesechess.free.fr/index.html


-------------------------------------------------------------------------------
Installation
-------------------------------------------------------------------------------

* Arena Chess :

  - Dzipper tous les fichiers dans un mme rpertoire
    
  - Lancer Arena Chess

  - dans le menu Engines choisir "Install New Engine"

  - Choisir UCI ou Winboard (le moteur fonctionne dans les 2 modes)

  - Choisir l'executable de Cheese dans le rpertoire o il a t copi


* Winboard

  - Dzipper tous les fichiers dans un meme rpertoire

  - pour pouvoir choisir Cheese a partir de "Winboard startup dialog" :
 
  - Editer le fichier winboard.ini qui se trouve dans le rpertoire
    d'installation de Winboard.

  - reprer les lignes : /firstChessProgramNames=
                    et : /sedondChessProgramNames=

  - ajouter le nom de l'executable entre guillemets (sans le .exe)
    dans la liste des noms


* Parametres

  Le fichier cheese.ini permet de choisir certains parametres :

  Hash = taille de la hash table en Mo (ex: 8, 16, 32 ,64, 128, 256)

  Book = 1 ou 0 , 1 = utilisation d'un livre d'ouverture compatible avec Cheese (cheese utilise son propre format)
			
  BookFile = chemin du livre d'ouverture


* Livre d'ouvertures

  Cheese peut utiliser un livre d'ouverture dans son propre format.

  le livre cheeseopenbook.bin a t cr a partir de gm2600.pgn, avec une profondeur de 
  10 demi coups, et pour des ouvertures utilises au minimum 5 fois.
  


-------------------------------------------------------------------------------
Caractristiques 
-------------------------------------------------------------------------------

    * Moteur compatible UCI / Windboard
    * Bitboards and rotated bitboards
    * Recherche alpha-beta (negamax)
    * Iterative deepening
    * Aspiration window
    * Quiescence search
    * Livre d'ouvertures (propre format de fichier)
    * Principal Variation Search
    * Internal iterative deepening
    * Adaptive null moves pruning
    * Late move reduction
    * Futility pruning + extended + razoring
    * Transposition table + Zobrist hash key
          * Utilise Mersenne Twister pour les nombres alatoires
          * Remplacement : toujours 
    * Livre d'ouverture
    * Extensions de recherche
          * Fractional ply
          * Check extension
          * Mate threats
          * Pawn on 7th 
    * fonction d'valuation
          * Phase de jeu (incremental)
          * Materiel (incremental)
          * Mobility + safe mobility
          * Piece tables
          * Penalit pour un dplacement de la reine pendant l'ouverture
          * Pions doubl
          * Pions pass
          * Pions isol
          * Pions arrir
          * Tours sur des colonnes ouvertes ou semi-ouvertes
          * Tours ou reine sur la 7eme range
          * King safety + tropism
          * Materiel insuffisant
          * Pions bloqu 
    * Move ordering
          * Hash table
          * Static Exchange Evaluation
          * Promotion
          * Killer moves (depth and depth-2)
          * Mate killer move
          * History heuristic 


-------------------------------------------------------------------------------
Versions prcdentes
-------------------------------------------------------------------------------

    * Version 1.0c - 12 Novembre 2007

          * correction de problemes dans la gestion du temps
          * correction de problemes 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 lgal
          * possibilit d'utiliser un livre d'ouverture 
	  * correction de problemes 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 (premire 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 pieces square table
          * correction d'un probleme 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 gnration des coups 


    * Version 0.9 - 4 Mai 2007

          * nettoyage du code
          * ajout prise en compte des repetitions
          * ajout regle des 50 coups
          * correction dans move ordering
          * donne une plus grande valeur aux pions pass
          * ajout evaluation pour materiel insuffisant
          * optimisation de la gnration des coups
          * correction dans l'evaluation 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 a la foncion 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 dplacement de la reine dans l'ouverture
          * ajout bonus et pnalits 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 range
          * 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 fonciont d'valuation
          * correction dans les fonctions de gnration des coups
          * ajout aspiration window 


    * Version 0.6 - 19 Dcembre 2006

          * optimization de la recherche alpha-beta
          * ajout iterative deepening
          * optimisation des fonctions de gnration 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 gnration 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 Fvrier 2006

          * Rotated Bitboards
          * Gnration des coups
          * fonction d'vasion d'chec
          * Simple recherche alpha-beta 


    * Dbut - 6 Fvrier 2006

          * Simple interface avec SDL + OpenGL, aucunes rgles 

-------------------------------------------------------------------------------
Remerciements
-------------------------------------------------------------------------------

Je remercie Grant Osborne, Robert M. Hyatt, Bruce Morland, Jonatan Peterson,
Et tout les participants aux forums Winboard et TalkChess.



-------------------------------------------------------------------------------
License
-------------------------------------------------------------------------------

Copyright 2007 DUHAMEL Patrice.
Ce programme est distribu gratuitement, et ne doit pas etre vendu ou distribu
sans l'autorisation de l'auteur.
