Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Can somebody write a debugging function for the following task or ma

Author: Uri Blass

Date: 11:11:36 08/14/03

Go up one level in this thread


On August 14, 2003 at 12:27:02, Robert Hyatt wrote:

>On August 14, 2003 at 05:29:35, Uri Blass wrote:
>
>>There is already a free program that does it?
>>
>>The debugging function that I think about is writing the content of varaibles to
>>files
>>
>>I should have 2 functions:
>
>
>One thing you should do is write a "Validate()" procedure as I did for
>Crafty.  This procedure tests _all_ data structures.  IE it makes sure
>that the hash signature is correct for the current board position, that
>the pieces are on the board correctly, that no two pieces occupy the same
>square (possible with bitboards if you have a bug) and so forth.

The last thing is theoretically possible also without bitboard.

If bishops[i0][0]=rooks[i1][1] then it means that a white bishop and a black
rook occupy the same square.

I have an additional array that tells me for every square in the board what
piece it has so if bishops[i0][1]=32 and info[32]!=blackbishop it means that I
have a bug.

I may add a function to check things but the problem is also to decide what
things I need to check.

At this point I do not know about specific bug based on test suites but I need
to find the reason for the fact that the nodes are not the same before I
continue.

I already found a previous node that has a problem (node 213298536) when the
arrays are not the same and probably the moves are not the same.

I think at this point that the problem is something that should be expected and
not a bug.

The point is that if in case 1 king capture is in place 12 in the list of legal
moves and in case 2 it is in place 11 then after I replace it with move number 1
in the list the place of move number 1 is different and it will continue to be
different in case that the move is not a killer move and not one of the best
moves based on history tables.

different place for move number 1 means that the order of moves may be different
and if move number 1 is considered(in most cases it is not the case because the
good capture of the king generated a cutoff) then  the number of nodes may be
different.

Uri



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.