Author: Geoff
Date: 07:23:17 04/27/03
Go up one level in this thread
Hi
I had a study of this problem and came to a different conclusion. That test
position is interesting as in the solution there is an actual board repeat at
ply 5. It is then black to move and a mate for white in 2. Note if the test
position had of been black to move first it is mate for white in 2 instead of a
mate in 5 (A kind of a zugwang position I guess)
I decided the fault in 1.73 was due to the lines in the actual search function
/* if this isn't the root of the search tree (where we have to pick a move and
can't simply return 0) then check to see if the position is a repeat. if so, we
can assume that this line is a draw and return 0. */
if (ply && reps())
return 0;
To me this seems unsound as it will cause it to miss the mate in this test
position. I could be wrong but I dont think the problem was in the reps ()
function at all.
But because version 1.83 has those same 2 lines in but still finds the mate
correctly, to me this then implies that the new hash version of the reps()
function is flawed ? I.e it doesnt see the repeat at Ply 5 ?
If anyone is still following me ;-) I would be interested in you agree or
disagree?
Regards Geoff
On April 26, 2003 at 17:10:32, Geoff wrote:
>Hello Tom
>
>Thanks for putting me out of my misery, I still hadn't spotted the problem ;-)
>
>You are correct that was what was causing the problem, I commented out the lines
> if (ply && reps())
> return 0;
>
>just to prove the point and it then finds the correct solution
>
>10: 9991 4034 30732760 g5c5 h5g5 c5f5 g5h5 f5g5 h5g5 a5g5 a6a5 g5a5
>
>it makes sense that this test position showed up the problem as black has a move
>sequence g5h5 h5g5 and white has a sequence a5g5 g5a5 even though there isn't an
>actual board repeat.
>
>Looks like that clever algorithm for reps detection was to too smart for its own
>good. Pity as it looked speedy, guess I will have to put the hash code in now
>instead, or maybe spot the flaw in the original algorithm
>
>Thanks for the help.
>
> Geoff
>
>
>On April 26, 2003 at 15:02:47, Tom Kerrigan wrote:
>
>>I wrote you an e-mail about this, but might as well post as well.
>>
>>The change between 1.7 and 1.8 in the search code is the repetition detection
>>method. I know the 1.7 rep detector was buggy, so it must have thought there was
>>some sort of repetition in the mating line.
>>
>>-Tom
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.