PeSTO: Piece Square Tables Only

Right now PeSTO is participating in the Qualification League of TCEC S17. PeSTO is an “experimental” chess engine in that it has only minimal chess knowledge in it’s evaluation and that it depends on the AB search as much as possible as opposed to the recent development of Neural Network engines which rely foremost on complex learned chess knowledge.

The most elementary chess knowledge is the relative value of the chess pieces. Playing with only that knowledge is (still?) not enough to let PeSTO play reasonably good chess, although it performs very good in tactical testsuites like WAC. It also needs some elementary positional knowledge to play reasonable chess. The simplest form of positional knowledge are Piece Square Tables (PST), in which a value is assigned to every square on the board for every piece. A higher value for the square means a general better position for that piece.

The values change during the course of the game. In the beginning of the game it’s better for the king to stay on his own border of the board, in the endgame the king should be away from it’s own border. That’s why there are 2 PST for each piece, one for the opening and one for the endgame. Depending on how many pieces are left on the board the values between opening and endgame are interpolated accordingly (so called tapered evaluation). In addition to the piece values and PST there is a tempo bonus for the side to move, and that’s it, no other chess knowledge is present in PeSTO.

PeSTO uses different tables than rofChade and also has some search tweaks (most important less aggressive LMR due to worse move ordering). The tables are tuned with the Texel tuning method.

If you want to use PeSTO, you can download it in the download section.