Closed tildedave closed 4 years ago
testWac002:
Engine should see that sacrificing the rook gives two connected passed pawns on the sixth rank. Either should be able to compute that two connected passed pawns on the sixth rank is winning (I've heard grandmasters say that this is worth at least a rook) or it should be able to compute using quiescent search to the end where it queens.
testWcsac002
Engine should be able to recognize that the knight is pinned and so it can't defend the king. This forces the queen off the defense of the knight (overworked).
testWac247
This is a straight-up tactical combination. Rook takes bishop, pawn takes rook, pawn to a6. Can't take the pawn because Qc6 Kb8 Bd6 checkmate.
Apep doesn't actually solve Wac002 so I might want a different target.
Looks like the issue with testWcsac002 is that the checkmate is 'delayed' after Queen takes Knight, in that the black queen has some spite checks. Null move might help detect this but also fixing the quiescent search so it runs through checks might be good too. Still have a few parity items to implement from the Apep search and Apep finds it at depth 6.
Yeah the ghetto quiescent search I added prevents it from analyzing the lines appropriately. I think it's spending way too much time in lines that aren't actually quiescent and I need to just redo this to actually do the extension at the right points.
Wac002 is interesting. I imagine the issue is that having a queen in the endgame isn't that much more of a material plus than two pawns, especially if the pawns are on the 6th rank and get the extra plus. Gonna see about tuning this.
Passes 15/16 of the tests at 7s (sometimes 14/16, testWac247 is right at the edge of the search horizon - needs to finish depth 9 search) so I think this is addressed.
Okay, engine needs to get better at tactics. Various things I can do (brainstorm):
I'll start with the basic suite in the repo. Failing positions are: