Author: Bas Hamstra
Date: 07:58:13 09/25/04
Go up one level in this thread
On September 25, 2004 at 10:30:52, Rick Bischoff wrote: >Hi, > >I am confused about the mate threat extension. I have the following code: > >search ( depth, alpha, beta ) > >->check extension >->else pawn extension > >->if depth <= 0 do the queiscent > >->if checkReps return draw >->if insufficnetMaterial return draw > >->Probe the hash table and return if good > >->if not in check and depth>3 and last move was not null and material is ok: >->-> do null move >->-> x = -search(depth - 3, -beta, -beta +1 ) >->-> undo null move >->-> if ( x >= beta ) return beta >->-> if ( x < (-MATE+MAXPLY) ) cout << "found mate" > >->normal alpha/beta stuff > >end search > >"found mate" never gets printed out in WAC141 unless I change the null move to a >full width search... Why? Well, I shouldn't say never, but I let it run to ply >9. Sigh. Do you do checks in quisce? No? If you do recursive R=2 with no checks in the qsearch, nullmove makes the search absolutely BLIND for mates in the last 3 plies. Think about it, set the position up with this in mind and analyze it. Further if you use a window <alpha, beta> then you miss a large portion of mate threats anyway. 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.