Henk wrote:And what about these SEE in qSearch, removing bad captures. That's rubbish too for we don't know if it is really a bad capture. But everybody seems to use it for it gives some ELO points.
Nearly everything is a tradeoff. SEE < 0 pruning ignores things like sacrifices in exchange for ignoring queen takes protected pawn, which is obviously pretty stupid.
There are only two pruning methods which are tradeoff free - alpha-beta and mate distance pruning. Even transposition tables have a memory tradeoff.
Henk wrote:And what about these SEE in qSearch, removing bad captures. That's rubbish too for we don't know if it is really a bad capture. But everybody seems to use it for it gives some ELO points.
Nearly everything is a tradeoff. SEE < 0 pruning ignores things like sacrifices in exchange for ignoring queen takes protected pawn, which is obviously pretty stupid.
There are only two pruning methods which are tradeoff free - alpha-beta and mate distance pruning. Even transposition tables have a memory tradeoff.
Matthew:out
If a bad capture captures a piece that defends a promotion field it is not a bad capture for the next move will be a promotion. SEE doesn't see that.
Henk wrote:And what about these SEE in qSearch, removing bad captures. That's rubbish too for we don't know if it is really a bad capture. But everybody seems to use it for it gives some ELO points.
Nearly everything is a tradeoff. SEE < 0 pruning ignores things like sacrifices in exchange for ignoring queen takes protected pawn, which is obviously pretty stupid.
There are only two pruning methods which are tradeoff free - alpha-beta and mate distance pruning. Even transposition tables have a memory tradeoff.
Matthew:out
If a bad capture captures a piece that defends a promotion field it is not a bad capture for the next move will be a promotion. SEE doesn't see that.
You continue to miss the point. SEE is not perfect. As Matthew says, almost nothing is perfect. However, SEE is clearly shown to increase play strength when implemented properly. What more do you need to know?
Henk wrote:And what about these SEE in qSearch, removing bad captures. That's rubbish too for we don't know if it is really a bad capture. But everybody seems to use it for it gives some ELO points.
Nearly everything is a tradeoff. SEE < 0 pruning ignores things like sacrifices in exchange for ignoring queen takes protected pawn, which is obviously pretty stupid.
There are only two pruning methods which are tradeoff free - alpha-beta and mate distance pruning. Even transposition tables have a memory tradeoff.
Matthew:out
If a bad capture captures a piece that defends a promotion field it is not a bad capture for the next move will be a promotion. SEE doesn't see that.
There will always be situations like this as long as we are not searching the whole game tree. The idea is that these situations are rare enough that spending the time to search another node is more often worthwhile.
For example, by skipping bad captures, you may be missing 1 good move every 1000 times you do that.
But by not skipping those bad captures, you'll be searching 1 less ply a lot of times, and the chance that you'll see something more important if you searched 1 ply deeper is much higher.
That's how extensions and pruning work. You take risk and prune moves that are probably bad, so you can spend more time on moves that are probably good, and end up playing a better game in general.
Disclosure: I work for DeepMind on the AlphaZero project, but everything I say here is personal opinion and does not reflect the views of DeepMind / Alphabet.
Henk wrote:Nothing I thought he was defending that bad capture pruning was not a crude approximation.
And in previous posts in this thread I defended pruning promotion moves in the first part of the game which is quite crude too.
Not only is pruning promotions, at ANY time, "crude", it is actually indefensibly bad. Generating promotions is very quick, and essentially pretending that they don't exist until you clear some magical hurdle in material makes no sense at all.
JVMerlino wrote:Not only is pruning promotions, at ANY time, "crude", it is actually indefensibly bad. Generating promotions is very quick, and essentially pretending that they don't exist until you clear some magical hurdle in material makes no sense at all.
jm
Absolutely. But it makes sense to not generate underpromotions in qsearch (which is what I do).
If there's a promotion available it's probably a good idea to check it whatever the phase of the game as a) it's a forcing move and b) it has a high potential for gain. In most early positions there'll be no promotions to generate but that doesn't mean where there are promotions you should skip them.
By contrast in most positions there'll be many bad captures available, and most of those bad captures will in fact be pointless. Furthermore the bad captures will be properly checked in later iterations when they're not occurring in qsearch/selective search.
Henk wrote:Nothing I thought he was defending that bad capture pruning was not a crude approximation.
And in previous posts in this thread I defended pruning promotion moves in the first part of the game which is quite crude too.
Not only is pruning promotions, at ANY time, "crude", it is actually indefensibly bad. Generating promotions is very quick, and essentially pretending that they don't exist until you clear some magical hurdle in material makes no sense at all.
jm
I can imagine that an extra queen on the board generate many moves to be searched through. But if the queen is captured in the next move there is no problem but then you might as well not allow these promotion moves for they always loose a pawn.