But the funny part is that the way I prune is about 2x as aggressive as your counter-based method, since the trees are about 1/2 the size of those your LMP idea searches.
FYI Stockfish does both value based futility + move count pruning (this is from 1.71):
But the funny part is that the way I prune is about 2x as aggressive as your counter-based method, since the trees are about 1/2 the size of those your LMP idea searches.
FYI Stockfish does both value based futility + move count pruning (this is from 1.71):
The first line is the move count test (futility_move_count gets the count value to compare). The second line tests for some conditions like not matching the threat move returned from null pruning. But it does not check the score. The 3rd line just avoids moves that have mate scores.
The first line is the move count test (futility_move_count gets the count value to compare). The second line tests for some conditions like not matching the threat move returned from null pruning. But it does not check the score. The 3rd line just avoids moves that have mate scores.
Looks like you are correct. I had thought those were tied together when I glanced at it the first time when you posted it. There are a couple of restrictions, such as the !dangerous test which covers things from checks, to escaping checks, to pushing passed pawns to 7th, etc... so there are some restrictions as opposed to just dumping moves beyond N...