-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pawn attack span improvement #2332
Conversation
Observation : I submit the patch as it was tested. But it is better I think to correct backward formulation
to remove phalanx from backward pawns. |
I agree with the s + Up change this would give the nicer
However, your backward pawn still controls 2 squares, |
I try this option here : Edit : not successful |
Thanks for trying. So I respin your last attempt, with a slightly faster version (same bench) and got a yellow. And now trying a LTC EDIT: it failed. Draw your own conclusions. |
Perhaps it is because "opposed" is heavier in Bitboard formulation. Or simply bad luck ... By the way, I don't know why checks failed. Perhaps because of the rebase ? |
Yet another similar test, including the missing 2 squares controlled by each backward, is looking neutral http://tests.stockfishchess.org/tests/view/5d8f86490ebc59085c6be853 One must consider that due to some recent change, we also require outposts to be pawn protected, It must also be pointed out that the PR did not pass STC. Finally, just to illustrate the missing squares impact that I tried to fix. If he puts a minor on b5 or f6, he gets full outpost bonus. However, white gets 3 reachable outpost bonus for the square f6 Note also that a6 is a member of the backward bitboard, but this is ok. |
If the simplification fails, perhaps this is the reason why: the g7-pawn can only capture one of those pieces, and for the remaining pieces this would be an outpost. Doing search of forcing moves isn't necessarily a bad thing, and in endgames a runaway pawn duo can be worth a piece. |
Reachable outpost are a long term feature and it cannot be good to give that bonus |
It seems that some days to let the discussion flow is a good idea here. |
Just to be sure that we have the best patch in the PR, I run a variation with keeping opposed variable as boolean : Edit : not passed. |
On chess-related analysis of "incorrect" outposts, I have to say that its probably good to give the bonus nonetheless in order to promote the search towards such creative moves. There are numerous positions that SF is blind or takes a lot of time to find out piece sacrifices, like putting a knight on f6 when we have a pawn on e5. It will be great if SF spots them earlier, soas to be able to enter the proper variations beforehand. IMO it would be sad to skip such a patch, I would merge it as is, but at the very least try a VLTC of the original (which had the best LTC result) to verify scaling. |
I'm not against creative bonus for "reachable en prise squares" for our minor pieces on advanced ranks. for example, we can look for opportunities to create some advanced passers this way, or some important file openings, but it could be done in a simpler and more exact way. In my view, this would be separate idea, and should accordingly be tested separately. Evaluation does not need to be accurate, but should help to track small improvements in the position. In my view, this PR was interesting, but neutral and not solid enough. |
I think that this PR can be merged : it passes LTC test and yellow STC. We can try simplifications after it has been merged. |
Tweak the pawn attack span for backward pawns and the zone behind opponent opposing pawns. This is important in positional play and one of weaknesses of the engine in recent high level games. STC LLR: -2.95 (-2.94,2.94) [0.50,4.50] Total: 66843 W: 14884 L: 14717 D: 37242 http://tests.stockfishchess.org/tests/view/5d8dcb1b0ebc590f3beb2956 LTC LLR: 2.96 (-2.94,2.94) [0.00,3.50] Total: 77699 W: 12993 L: 12602 D: 52104 http://tests.stockfishchess.org/tests/view/5d8de9bc0ebc590f3beb3d00 See discussion in #2332 Bench: 4012371
Merged via e6f4b5f, thanks! I have committed because of the apparent Elo gain, but I agree with Alain that the code seems a little bit convoluted now, and I would certainly welcome simplifications. In fact I always prefer when pawns.cpp exports "pure geometrical" features (ie atomic features which are direct consequences of the chess rules), and we do the smart/evaluation part in evaluate.cpp |
There could be a regression with the last 3 patches, and it may be this patch. Can anyone run a current regression test with and without this patch at LTC ? I hope I'm wrong. Thanks. |
@MichaelB7 Why do you suspect a regression? Anyway you can safely exclude this, it doesn't change much and results are robust. If you are testing multicore I would look at vdv's patch which prunes more with more threads. Our LTC is 20", and this doesn't apply much to real time controls, so we have to trust @vondele intuition. If you test position solving, its natural that with more pruning it will take more time. On the plus side, deeper searches should improve positional play. |
If we suspect a regression with this patch, the easiest way is to try simplifying it with [-3..1] ? |
I am closing this, as Alain simplification has been merged now: |
ok thanks. |
Tweak the pawn attack span for backward pawns and the zone behind opponent opposing pawns. This is important in positional play and one of weaknesses of the engine in recent high level games. STC LLR: -2.95 (-2.94,2.94) [0.50,4.50] Total: 66843 W: 14884 L: 14717 D: 37242 http://tests.stockfishchess.org/tests/view/5d8dcb1b0ebc590f3beb2956 LTC LLR: 2.96 (-2.94,2.94) [0.00,3.50] Total: 77699 W: 12993 L: 12602 D: 52104 http://tests.stockfishchess.org/tests/view/5d8de9bc0ebc590f3beb3d00 See discussion in official-stockfish#2332 Bench: 4012371
Remove pawn attack span for backward pawns and behind opposed pawns. This is a typical scheme in positional play and one of weaknesses of SF in multiple high level games.
STC
LLR: -2.95 (-2.94,2.94) [0.50,4.50]
Total: 66843 W: 14884 L: 14717 D: 37242
http://tests.stockfishchess.org/tests/view/5d8dcb1b0ebc590f3beb2956
LTC
LLR: 2.96 (-2.94,2.94) [0.00,3.50]
Total: 77699 W: 12993 L: 12602 D: 52104
http://tests.stockfishchess.org/tests/view/5d8de9bc0ebc590f3beb3d00
Bench : 3965294