# Peasant

Home * Engines * Peasant

Celebrating Peasants [1]

Peasant,
a pawn endgame chess program written by Monroe Newborn as research project started in 1973 at Technion, Haifa, Israel, where the author had a visiting appointment. The goal was to examine whether the poor endgame play of the chess programs of that time was due to a basic weakness of minimax as suggested by Larry Harris [2], or simply because of evaluation functions used were not intended for those endings.

# Description

Supported by Israel Gold at Technion, and later by International Master Leon Piasetski at McGill University, Peasant was implemented as conventional fixed depth alpha-beta searcher with evaluation and pruning heuristics tailored for pawn endings, using an 8x8 board array as internal representation. Moves were sorted so that captures and promotions came first - the killer heuristic was used to further improve the effectiveness of alpha-beta. The ONEPAWN algorithm by Newborn and Piasetski evaluated KPK positions, TWOPAWN by Piasetski, KPPK. Peasant employed forward pruning of many king moves near the tips, reaching a search depth of around 10 ply with 3 or 4 pawns. Written in Fortran IV for the IBM 360/370, it searched around 18,000 terminal positions per minute on a 370/158 [3].

In his 1978 B.Sc. thesis on co-ordinate squares in pawn endings, reprinted 1988 in David Levy's Computer Chess Compendium, Kenneth W. Church mentions the Lasker-Reichhelm Position (Fine #70) and Newborn's assessment solving it with Peasant would require 25,000 hours, and further gives a description of Peasant in a leading footnote [4]. Following list of terminal node conditions and static evaluation features are based on Church's note.

## Terminal Nodes

A position is defined to be a terminal node if one of the following conditions holds:

1. The maximum preset depth is met
2. One side has one or two pawns and the other has none (special static evaluator).
3. There is a queen on the board and the last move was not a promotion.
4. There is a passed pawn which cannot be caught by the enemy king and can outrace all enemy pawns with a move to spare.
5. The depth is equal to that of a node where a win can be guaranteed. (This appears to be a special case of alpha-beta.)
6. The same position has occurred previously at the same depth in the tree [5].
7. Stalemate
8. The position is equivalent to a parent position which occurs four plies higher in the tree.
9. The winning side allows draw by repetition

## Evaluator

The static Evaluator is:

10*MAT + 5*PP - PRO + K1 + K2 + R

with

• MAT ≡ the difference between the number of white pieces and the number of black pieces
• PP ≡ the difference between the number of white passed pawns and the number of black passed pawns
• PRO ≡ the number of moves the most advanced white pawn must take before promotion minus the number of moves for the most advanced black pawn
• K1 ≡ factor measuring king distance from the pawns: five points deducted for every space that separates the king from the "center of gravity" of the pawns
• K2 ≡ three points if the king has opposition
• R ≡ ten points times the rank of each pawn that is passed and cannot be stopped by the defending king

# Modified Rules

The rules of chess were modified in a way, that only promotions to a queen were possible, and to avoid later queen moves, the side to move had a win if one queen ahead and a draw if both sides had same number of queens (> 0), and no queening actually possible.