Cheese user manual

version 3.2.0

1. Introduction

Cheese is a chess engine written in C++.

This program must be used with a graphical interface compatible with UCI or CECP protocols.

Executable for the latest version are available here :

Source code is available here :

Exemples of compatible and free interfaces :

2. Parameters and configuration

Parameters are in cheese.ini file that must be in the same folder as binary.

For parameters also available with UCI protocol, the values in cheese.ini are default values.

This file is loaded once at program launch.

3. Command line

4. UCI Parameters

5. Personalities parameters

By default personalities are disabled, evaluation parameters were calculated automatiquement from millions of positions in games between different versions of the engine

To choose a personality you must edit cheese.ini and change UsePersonality=1 to use it, then choose the personality file, for example by default : PersonalityFile=personality/default.txt

The parameters of personality/default.txt are the same as default values without using personalities

If a parameter is not defined in the personality file, the default value is used.

Values of the following parameters are based on pawn material value, a pawn value is usually equal to 100, so if a parameter is equal 25 this means 1/4 of the value of a pawn

A positive value is an advantage and negative value a penality.

Parameters names ended by Mid are begining and middle game values, and paremeters names ended by End end game values.

Following parameters are percentages (0..100) but can be bigger than 100.

Following parameters are ended by Own for the engine point of view, and Opp for the opponent point of view.

This is used to have asymetric values for evaluation, for the King protection it can be used to have a more or less aggressive personality, and for mobility it can give more importance to pieces developement.

Notes on previous versions :

Since version 3.1 material can be defined in middle and end game

Since version 3.2 isolated, doubled and backward pawns parameters are negatives.

Parameters OutpostKnight, PawnShield, PassedPawns are new since version 3.2