Author: Sune Fischer
Date: 15:02:43 01/05/04
Go up one level in this thread
On January 05, 2004 at 17:47:51, Uri Blass wrote: >>IMO no. >>It is better to be safe than sorry, such a bounds check can easily be avoided by >>making the array a tad bigger. >>In a non-smp program you can make the array static, if you like. > >I think that even if the price is that in one of 1000 games you get wrong see >when the numbers of attackers is 16 or more than it then you will not be sorry. > >remember that usually one wrong evaluation is not enough to change the move. Most of the time, I'm pretty sure it is 99% of the time, there will be less than 16 captures to the same square. In that respect it's true the array is too big, but these rare cases still force you to do a bounds check every time you add a capturer. By making the array large enough for even the biggest theoretical capture sequence you _save_ these checks and that is what is important here. Remember the check is going to be made several times per SEE which could be done several times per node, so it's kind of speed critical. >>The problem is that Crafty prunes the losing captures. >>By using piece square values BxN might be a losing capture by a fraction of a >>pawn and not get searched. > >This is no problem and you can decide that losing capture is a capture that lose >at least a pawn and losing 0.2 pawns is not enough. As I also suggested in the two lines you snipped :) -S. >Uri
This page took 0.02 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.