Author: Bruce Moreland
Date: 21:04:29 07/18/99
Go up one level in this thread
On July 18, 1999 at 17:27:12, William Bryant wrote: >I have created a SEE routine for my program (following the general plan of >Swap() >from Crafty) and now have a question about where it should be implemented. > >I initially implemented it in the move generator. When generating captures, if >the Captured_Piece - Capturing_Piece discard the move, never searching it. > >This created an overall speed up but leaves a number of questions. > >Some positions require a sacrifice to find the winning line. These positions >are never found because the sacrifice move is always discarded and never >searched. > >Is this the tradeoff of this heuristic? > >Is there a better way to apply the SEE rather than to all capture moves as they >are generated? > >Are there other heuristics that allow these discarded moves to be found in the >right positions? > >Here is an example position: >1rr3k1/4ppb1/2q1bnp1/1p2B1Q1/6P1/2p2P2/2P1B2R/2K4R w - - >It is from a list of mating positions posted by Dan > >I can find the winning mate in 0:32 without the SEE, >and never with the SEE. "Never" is kind of strange. You'd think that you'd see it eventually. I suggest that you keep this one around, and see if you find it in a version you do approximately next week. A SEE will sometimes prune out good moves, but you're way out at the tips when you use it, and a lot of mistakes will happen out there even if you don't use a SEE. bruce
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.