Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: A problem with my move generation, ideas requested

Author: Roman Hartmann

Date: 06:20:56 08/04/05

Go up one level in this thread


Hello,
I had about the same problems you have now some time ago. In fact I had these
kind of problems several times as I changed my move generator several times. One
of the worst bugs I had showed only up when I ran perft 6 or perft 7 (a nasty
castling bug). Was trying to fix that problem for days.
Therefore I added the divide # command (I took that idea from the chess engine
Sharper) to my engine and also the ability to test the move generation process
automatically to figure out if a change in the code somewhere results in a bug.
From time to time I just type 'testmovegen' now and my engine does this test
automatically and writes a log if something went wrong and the calculated
numbers differ from the precalculated ones in the *.epd file.

You might dl my engine from my site. There is a *.epd file included which
consists of perft-testsuite which was created by Andrew Wagner
(http://chessprogramming.org/cccsearch/ccc.php?art_id=366718). But I suggest you
implement also a divide command as looking for bugs gets much easier when you
see which moves leads to the problem.

Roman

output of 'divide 5' from the startposition in Roce:
roce: divide 6

g1h3 4877234
g1f3 5723523
b1c3 5708064
b1a3 4856835
h2h3 4463070
h2h4 5385554
g2g3 5346260
g2g4 5239875
f2f3 4404141
f2f4 4890429
e2e3 9726018
e2e4 9771632
d2d3 8073082
d2d4 8879566
c2c3 5417640
c2c4 5866666
b2b3 5310358
b2b4 5293555
a2a3 4463267
a2a4 5363555

Moves: 20
Nodes: 119060324
roce:



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.