Author: Roberto Waldteufel
Date: 10:03:08 07/12/98
Go up one level in this thread
On July 11, 1998 at 21:03:15, Bruce Moreland wrote:
>
>On July 11, 1998 at 18:49:39, Roberto Waldteufel wrote:
>
>>I never reduce the depth when the side to move is in check, but I find that if I
>>do the same for moves that administer check it sometimes blows my search sky
>>high, hanging the machine for an inordinate amount of time. It's a pity, because
>>I also found many times that this method discovered long mates as you describe.
>>How do you overcome the problem of situations where the number of checks becomes
>>excessive, eg a king being chased around the board by a queen that lacks
>>supporting pawns or pieces to deliver a mate?
>
>I'll tell you what I discovered when I messed with this some time ago. I'll
>start at the beginning in the off chance that someone else is listening as well.
>
>The dawn of man extension is to extend when you check. This seems to help
>programs along certain tactical lines where the king is in trouble. I do this,
>I've always done it, and everything below here assumes that giving check is an
>unqualified one-ply extension, that's a constant.
>
>If you try to be super-aggressive and extend both when giving check, and when
>getting out of check, you'll simply blow sky high.
>
>So if the goal is to try to extend checks more, there needs to be some
>constraint to the extensions. An attempt at constraint involves only extending
>when you are in check, and have exactly *one* legal way out. This will appear
>to work fine in most middlegame situations, and it will completely destroy some
>of these long mate test problems.
>
>It is my opinion that there needs to be some further constraint on this
>extension. You'll see some positions bog, sometimes really badly. I'm not sure
>exactly why this happens, but your reasons for why it might happen seem good.
>
>I've done experiments with two ways to constrain this extension. One is when
>you only allow it to happen a couple of times along one line, and another is
>when you somehow choose to only do this extension perhaps 75% of the time that
>the conditions are met for it.
>
>Either of these seems to stop the bogging enough that your thing can still play
>chess while using this extension.
>
>bruce
Hi Bruce,
Thanks for your excellent explanation. My mistake was that I had not thought of
the 75% factor. This way makes a lot of sense, and I will definitely implement
this. I don't think it makes a difference whether the actual extensions occur on
the checking ply or the check evasion ply, as long as replies to checks are
allways examined full width, so perhaps it would be simpler to do it all at the
same node, like this:
if side to move in check then
if only one legal reply then
newdepth=depth+0.75
else
newdepth=depth
end if
else
newdepth=depth-1
end if
Do you extend any replies to checks that have more than one choice? I can think
of one or two interesting cases, like double check, or Bxh7+ when the Black king
is on g8 and White has Nf3 and Qd1 (or Qe2). Maybe the 75% figure would need to
be different for each case. Have you tried anything like this?
Roberto
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.