Author: Jeremiah Penery
Date: 05:09:35 11/06/99
Go up one level in this thread
On November 06, 1999 at 07:19:19, Dan Homan wrote: >Ok, your standard null-move code looks something like this.... > > search(position current, int alpha, int beta, int depth) { > > ..... > position next; > int score; > > /* null move */ > if( /* conditions to decide if null-move is appropriate */ ) { > next = makeNull(current); > if(depth >= R+1) { > score = -search(next, -beta, -beta+1, depth-R-1); > } else { > score = -Qsearch(next, -beta, -beta+1); > } > if(score >= beta) return(beta); > } > > ..... > > } > >I simply modified the null move code to look like > > /* null move */ > if( /* conditions to decide if null-move is appropriate */ ) { > next = makeNull(current); > if(depth >= R+1) { > score = -search(next, -beta, -beta+1, depth-R-1); > } else { > score = -Qsearch(next, -beta, -beta+1); > } > /* verification search */ > if(score >= beta && depth >= R+1) { > next = current; > set flag for no null move on next search; > score = search(next, beta-1, beta, depth-R-1); > } > if(score >= beta) return(beta); > } > >You can see that the verification search is just 3 or 4 lines of code. >All it does is search the current position to a reduced depth with >no null move.... this only happens when the null move is going to force >a fail high, and it should confirm that we are not in zug. The time spent >doing these verification searches is very small, so I think this might >be a good addition. I still have to do tests on those positions you >posted. I have done something also quite simple to solve this problem (in Crafty). I simply put "if (depth>6)" before the null-move section of the code, so that the first 6 plies of depth will not use null-move. I may try to vary this a bit. Your verification search probably is much better, though, so I will try to implement it. My approach does allow Crafty to solve this position, however. :) Jeremiah
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.