Author: Larry Griffiths
Date: 18:57:18 07/31/00
I want to thank Robert Hyatt again for his article on bitboards. This enabled
me to finally do Diagonal Bitboards. Also thanks for your perft function in
Crafty. I hated playing hundreds of games on my previous version only to find a
bug in my program. This took lots of time.
I also want to thank those of you who have answered my questions and given me
food for thought. You also got me through my "Duh" moments when I was so
programmed out that I probably thought 2 plus 2 was 5. LOL
I finally have a chess engine that generates Moves using mostly bitboards.
It uses MMX instructions so it will probably only run on Pentium II or Pentium
III processors. I does en-passant, castleing, and pawn promotion to Knights,
Bishops, Rooks and Queens. I currently only have a bruteforce function written
so that I could validate my move generation.
Pawn promotion was the last piece of coding that I needed to do. I compared my
results with Crafty's perft command. Here are the results :)
##############################################################################
Crafty...
White(1): display
+---+---+---+---+---+---+---+---+
8 | *K| | | | | | | |
+---+---+---+---+---+---+---+---+
7 | | | | | | | | P |
+---+---+---+---+---+---+---+---+
6 | | | | | | | | |
+---+---+---+---+---+---+---+---+
5 | | | | | | | | |
+---+---+---+---+---+---+---+---+
4 | | | | | | | | |
+---+---+---+---+---+---+---+---+
3 | | | | | | | | |
+---+---+---+---+---+---+---+---+
2 | | | | | | | | |
+---+---+---+---+---+---+---+---+
1 | | | | | | | | K |
+---+---+---+---+---+---+---+---+
a b c d e f g h
White(1): perft 1
total moves=7 time=0.00
White(1): perft 2
total moves=19 time=0.00
White(1): perft 3
total moves=213 time=0.00
White(1): perft 4
total moves=1103 time=0.00
White(1): perft 5
total moves=16047 time=0.00
White(1): perft 6
total moves=80164 time=0.06
White(1): perft 7
total moves=1391187 time=0.94
White(1): perft 8
total moves=7307253 time=6.81
White(1): perft 9
total moves=142502703 time=95.30
White(1): perft 10
total moves=729507306 time=699.74
White(1):
##############################################################################
My Program...
Elapsed Time= 627.39 seconds
Ply ---CAPTURES-- -----MOVES----- -----TOTAL----- ---Invalid---
1 0 7 7 0
2 0 19 19 2
3 0 213 213 0
4 10 1,093 1,103 214
5 0 16,047 16,047 0
6 628 79,536 80,164 17,131
7 0 1,391,187 1,391,187 66
8 77,111 7,230,142 7,307,253 1,977,743
9 0 142,502,703 142,502,703 40,365
10 8,943,693 720,563,613 729,507,306 229,201,913
_____________ _______________ _______________ _____________
9,021,442 871,784,560 880,806,002 231,237,434
Captures/Moves Per Second= 1,403,919
##############################################################################
I plan on hooking up my old graphical chess interface from my old program into
my new version during the month of August.
Cheers!
Larry.
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.