-------------------------------------------------------------------------------
- Cheese version 1.4
-------------------------------------------------------------------------------

Auteur   : Patrice DUHAMEL (cheesechess@free.fr)

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


-------------------------------------------------------------------------------
Fichiers
-------------------------------------------------------------------------------

Cheese_14_32.exe   : version 32 bits
Cheese_14_64.exe   : version 64 bits utilisant une instruction cpu pour compter les bits
Cheese_14_64nh.exe : version 64 bits pour les cpu ne supportant pas l'instruction de comptage de bits


-------------------------------------------------------------------------------
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

  - Pour configurer Cheese, choisir l'option Configure dans le menu Engines


* 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

  - pour configurer cheese, modifiez le fichier cheese.ini


* Parametres

  Le fichier cheese.ini permet de choisir certains parametres en version Winboard :

  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


* Ligne de commande

  -help

    affichage des options disponibles 

  -testsuite nom_de_fichier

    lance l'analyze d'un fichier EPD 

  -perft profondeur

    lance le calcul du nombre de noeuds a partir de la position actuelle, jusqu'a la profondeur indique 

  -perft profondeur -fen "position"

    lance le calcul du nombre de noeuds a partir de la position FEN donne, jusqu'a la profondeur indique 

  -divide profondeur

    lance le calcul du nombre de noeuds pour chaques coups possibles, a partir de la position actuelle, 
    jusqu'a la profondeur indique 

  -divide profondeur -fen "position"

    lance le calcul du nombre de noeuds pour chaques coups possibles, a partir de la position FEN donne, 
    jusqu'a la profondeur indique 

  -buildbook fichier.pgn fichier.bin profondeur nombre

    cration d'un nouveau livre d'ouvertures a partir d'un fichier PGN
    la profondeur est le nombre de coups maximum de l'ouverture, nombre le nombre minimum de fois 
    que doit etre utilis cette ouverture pour etre prise en compte



* 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 magic 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
    * mate distance pruning
    * 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 
	  * Recapture
    * 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 + connects
          * Pions isol
          * Pions arrir
          * Pions bloqu 
          * Tours sur des colonnes ouvertes ou semi-ouvertes
          * Tours ou reine sur la 7eme range
          * King safety + tropism
          * Materiel insuffisant
	  * Avant poste pour les cavaliers
    * Move ordering
          * Hash table
          * Static Exchange Evaluation
          * Promotion
          * Killer moves
          * History heuristic 


-------------------------------------------------------------------------------
Changements dans la version 1.4
-------------------------------------------------------------------------------

    * Version 1.4 - 17 Mars 2012

	* Correction d'un problme avec les killer moves
	* Correction d'un problme avec l'history heuristic
	* Augmente la taille du buffer pour les changes avec UCI/Winboard
	* Optimisation de la gnration 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					
	* Amliore la fonction d'valuation
	* Interpolation de l'valuation pour les tables de position des pices
	* Amliore la protection du roi
	* Rduit le nombre d'appels  la fonction de vrification 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


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

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

Et merci a toutes les personnes qui testent ou qui ont signal certains problemes.


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

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