Search found 238 matches

by mathmoi
Wed Feb 27, 2008 1:08 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Repetition detection structure.
Replies: 194
Views: 204636

Re: Repetition detection structure.

A hash table is doable, but there is an efficiency issue. When you start a node, you have to enter the position, then when you leave the node, you have to remove the position. There are other sticky issues dealing with SMP search, in the repetition hash table has to be a reasonable size to prevent ...
by mathmoi
Wed Feb 27, 2008 1:05 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Repetition detection structure.
Replies: 194
Views: 204636

Re: Repetition detection structure.

Yes, it's certainly possible to use a hashtable for doing rep-draw detection. I'm not certain whether it would be faster or slower than just checking until the last non-reversible move, but my suspicion is that it doesn't matter too much, even in the endgame. Hi Gary, Thanks for the infos and the c...
by mathmoi
Sat Feb 23, 2008 12:33 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Repetition detection structure.
Replies: 194
Views: 204636

Repetition detection structure.

Hi, I examined Crafty and Fruit code and found that they both use a simple array (accessed like a stack) to store the hash keys for the repetition detection code. I understand that most of the time only a couple of positions needs to be verified (up to the last irreversible move), but in the case wh...
by mathmoi
Tue Feb 19, 2008 7:32 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: crafty-22.0
Replies: 15
Views: 4282

Re: crafty-22.0

There are a few places left with duplicated black/white code, but they are in places that are not used to actually play chess (initialization, for example). Hi M. Hyatt, May I ask what did motivate you to remove the black/white duplicated code from your engine? I know it is less bug prone to mainta...
by mathmoi
Wed Jun 06, 2007 3:51 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Data Structure for a PGN Object?
Replies: 8
Views: 4348

Re: Data Structure for a PGN Object?

Hi Steve, I have also designed my own PGN parser in C++. I used polymorphism to handle this problem. I have a base class that I called CToken and derived class for the tokens types : CMove, CComment, CNAG, CVariation. A CVariation is basically a vector of CToken (and is also a CToken). In my CGame c...
by mathmoi
Tue Apr 03, 2007 11:28 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Fantacising about a testing cluster!
Replies: 21
Views: 26838

Re: Fantacising about a testing cluster!

I like to test at 60/60 time controls. 60 minutes on the clock, 60 seconds per move added. That turns into 4-6 hours per game. or 6-8 games per day. 30 days isn't enough games to determine if version X is better than version X-1 at that speed. It takes more than a hundred games or two with two oppo...
by mathmoi
Tue Apr 03, 2007 3:01 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Fantacising about a testing cluster!
Replies: 21
Views: 26838

Re: Fantacising about a testing cluster!

I like to test at 60/60 time controls. 60 minutes on the clock, 60 seconds per move added. That turns into 4-6 hours per game. or 6-8 games per day. 30 days isn't enough games to determine if version X is better than version X-1 at that speed. It takes more than a hundred games or two with two oppo...