Please turn on javascript in your browser to play chess.

Move Ordering

Chess Programming

Move Ordering

To improve the number of cut-offs made by the alpha-beta algorithm, the program attempts to order moves so that better moves are considered first. Moves are awarded bonuses as shown in figure 3. The moves are sorted so that those with higher scores are considered first. The bonuses given are the result of trial and error and are almost certainly open to improvement.

Move Description

Bonus

Same move at same depth in best variation of previous iteration.

+30000-depth. No additional bonuses are given.

Piece capture

+Captured Piece Value (Pawn=100)

- Capturing Piece Value (Pawn=10)

Capture of last moved piece

+1001

Transposition/Refutation table move

+1000

Primary Killer Move

+50

Secondary Killer Move

+45

Figure 3 Bonuses for the ordering of moves