Author: Bas Hamstra
Date: 12:27:21 09/20/04
Go up one level in this thread
On September 20, 2004 at 15:20:31, Rick Bischoff wrote: >Hello, > >I had previously implemented a SEE routine, but today while the professor was >droning on about null hypothesis I revisited the subject and realized I had it >wrong all along. > >The previous iteration worked as follows: Add every piece that can attack >square X to a priority queue (sorted by piece value in ascending order) >depending on it's color. A piece can attack a square on a ray if there is >another piece on that same ray that can also attack X regardless of color. >Then, alternately take the top values of the queue, adjusting the material >score, until one of the queues is empty and then return. > >However, for positions like this: > >[D]7q/3n2b1/8/4p3/3P4/8/1B6/Q7 w - - 0 1 > >The capture d4e5 would result in the following happening: > >White queue: B, Q >Black queue: N, B, Q > >PxP +1 for white >NxP = >BxN +3 >BxB = >QxB +3 >QxQ -6 > >But white could have stopped capturing after black recaptured-- so that in fact, >PxP, in a SEE point of view only, is an even capture and not a -6 capture. > >How do you handle this? By allowing a "stand-pat". Just like int the qsearch. Bas.
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.