Page 1 of 1

Making null move better?

Posted: Thu Jan 25, 2018 2:41 pm
by Michael Sherwin
The player makes a move that secures an advantage >= beta. However the player does not suspect that until it is his move again at which time the player makes a null move search. Let's say that there is a remaining depth of 20 ply and the null move search is 16 ply. That is still a lot of work. And you must do that work for as many replies the opponent makes to the players move that secured the advantage. That could mean an average of 40 or so 16 ply searches to prove that the player's move that secured the advantage really did secure the advantage.

I propose that when making a null move, score = NullSearch(), is called instead of score = -Search(). In NullSearch() all the opponents moves are tried and if the score is immediately brought above the opponents alpha a normal full depth null move search is done on that opponents move. However if an opponents move does not immediately bring the score to above alpha then the player passes again and a very shallow normal null move search is done. So basically if any opponent move after the original null move does not change the situation even though the player made a second null move then the very shallow null move search should prove to be sufficient.

:?:

Re: Making null move better?

Posted: Tue Dec 27, 2022 8:03 pm
by Mike Sherwin
Bump