Stockfish: Important weakness of Stockfish

Created on 23 Jan 2019  ·  13Comments  ·  Source: official-stockfish/Stockfish

Hello everybody, after 3 years playing and analyzing using stockfish I have seen how devs have been improving the engine's strength. Despite of that it still has an important weakness and It's that many times It misses killer pawn pushes on the king flank after castling and specially during the middlegame.

  1. On the game against Alphazero were the "Dutch Defense: Leningrad, Main Line (A88)" was played:

    1. (e3 g5) 20. (Nd2 Qh5) Stockfish doesn't realize that by playing g5 A0 releases the queen in order to attack the weak pawn on h2 and then Stockfish even takes the knight out from the king flank "like helping alphazero!😂" after that SF plays 21. Bf3 it evaluates the game as a as a 3-fold draw by repetition....but A0 replyes g4. THE ENGINE IS COMPLETELY BLIND TO THIS PAWN PUSH and then the bishop goes back to e2, A0 moves the king and SF realizes it's fried...Just Shocking!
  2. On the game 2 that was played the last year on the move 28 the engine again IS BLIND TO THE g5 pawn push and it alwaysevaluates the position as a 3-fold draw by repetition.

The are many other blunders the engine does against A0 and I know many of you know about them...I want to quote this comment that vizvedenec made on 4th march 2018: "Is there any point in "solving issues" of an engine that is almost 1,5 years old?" The problem is that the today's SF still makes the same blunders...furthermore evidence comes when on an article published in many chess forums Demis Hassabis said that a test against a recent version of stockfish showed the same results of the last year.

In my opinion some patches made on the last months were not a step ahead!

some patches are accepted just because they argue a rickety gain of elo for moving a lot of code around. I would rather consider those tests a product of odds. The purpose is not to simplify but to improve the strength...

If this can matter my CPU is a ryzen 5 2400g with 8 gb of ram running at 3200Mhz. According to benchmarks that CPU is equal to an i7 4770k

Thanks.

Most helpful comment

Dear Octavio1994,

First of all, thanks a lot for your messages, they are very moving and pass a lot of emotion to us, a fact that we, as a community of developers and hobbyists, cherish a lot since it just shows how important Stockfish can be for the chess lovers.

I think the most valuable sentence of the discussion is the first one you have written: "[...] many times It misses killer pawn pushes on the king flank after castling and specially during the middlegame".

The best way forward for you, now that you have made public your opinion and we are all aware of it, will be to start coding and write a patch which improves Stockfish play in the area you have discovered. If you succeed (and I do hope so), then you can open a pull request and I will gladly merge your patch in master :-)

Some advices to write your patch: https://github.com/glinscott/fishtest/wiki/Creating-my-first-test

Sincerely yours,
Stéphane

All 13 comments

Which patches do you think should be changed?

What is the FEN for the position sf plays badly?

Which patches do you think should be changed?

Hello! I'm about to write a lot. First of all let's talk about this patch:

http://tests.stockfishchess.org/tests/view/5be4ec340ebc595e0ae30938

Devs know very well that adding pawns to the evaluation demands much more resources (specially hash). Why this is called a "simplification" if it's just creating a heavier evaluation to the engine. Beyond than that this is a perfect example of bad resources usage since it's giving only a riquety gain of 0.04 elo.

Removing and reintroducing tropism...

http://tests.stockfishchess.org/tests/view/5befcca70ebc595e0ae3a343

That was really weird stuff, one day devs simply desired to erase tropism in order to simplify and lose strength and the next day tropism gets back. That makes you think devs are not very sure about what to do with the valuable stockfish code...

Simplify evaluation of blockers_for_king

http://tests.stockfishchess.org/tests/view/5ba398830ebc592cf2767563

Again if something is not broke don't fix it! The old evaluation before this patch was doing OK...A bug that arises with this patch is that when going to a deeper analysis the engine delays much more time to display (or show) a evaluation line than before.

According to: http://computerchess.org.uk/ccrl/4040/rating_list_all.html

from the 270918 version to offical Stockfish 10 there was only a 10 elo gain; And Of course That doesn't match with the elo gainings showed in the dev's page...Something says that tests performed by someone are not completely right!

Maybe this is very ambitious now but previously users suggested wisely to compare Stockfish against other engines. There are many very-strong and FREE engines around the web (I know more than a half are based on stockfish code😂 but there are still many)...Not necessarily Komodo or Houdini but including these two would be very nice! As a community We could donate a small amount and together purchase them!

Another patch is this:

Replace the PassedDanger array by an equation

http://tests.stockfishchess.org/tests/view/5bdca8420ebc595e0ae281a9

You can rather further tune arrays or make them more efficent than a single equation...Handcraft tune by human knowledge is the best resource to make an engine stronger!

Change default contempt from 21 to 24 centipawns

http://tests.stockfishchess.org/tests/view/5bdb1b680ebc595e0ae2620d

It's harder now for the engine to realize when it's losing and it's evaluations decreases suddenly instead of gradually when they get refuted...

Thanks for hearing me!

What is the FEN for the position sf plays badly?

Hello!

Please analyse the full games so you can see the mistakes stockfish does in many positions:

https://www.youtube.com/watch?v=dY3VimPpngI&t=180s

In this I'm sending to you the exact moment when Stockfish is completely blind to a pawn push. TODAY'S MASTER is unable to see it yet.

Now in this game: https://www.youtube.com/watch?v=ygfe-G8g1i4&t=350s

Again Stockfish plays awful by taking out the knight from the king flank and leaving alone the h2 pawn. So the queen goes for it endorsed by a pawn push! Stockfish is unable to see that a king move in this moment:

https://www.youtube.com/watch?v=ygfe-G8g1i4&t=408s

Dear Octavio1994,

First of all, thanks a lot for your messages, they are very moving and pass a lot of emotion to us, a fact that we, as a community of developers and hobbyists, cherish a lot since it just shows how important Stockfish can be for the chess lovers.

I think the most valuable sentence of the discussion is the first one you have written: "[...] many times It misses killer pawn pushes on the king flank after castling and specially during the middlegame".

The best way forward for you, now that you have made public your opinion and we are all aware of it, will be to start coding and write a patch which improves Stockfish play in the area you have discovered. If you succeed (and I do hope so), then you can open a pull request and I will gladly merge your patch in master :-)

Some advices to write your patch: https://github.com/glinscott/fishtest/wiki/Creating-my-first-test

Sincerely yours,
Stéphane

Stéphane, Thank you so much for hearing my opinion! and Despite Stockfish still has some weakness; We must remember that still it's the strongest engine in the world 🏆!

So Devs can feel proud of themselves because that fact is thanks to you!

I agree with this one: [...] many times It misses killer pawn pushes on the king flank after castling and specially during the middlegame"

I guess this should happen in the pawn storm, but the values in the UnblockedStorm array do not appreciably change until RANK_5.

I don't think sf differentiates between pawn storming with pawns on the king flank and pawns not on the king flank. Perhaps, if we've castled, be more aggressive in storming pawns that are NOT on the king flank?

I agree with this one: [...] many times It misses killer pawn pushes on the king flank after castling and specially during the middlegame"

I guess this should happen in the pawn storm, but the values in the UnblockedStorm array do not appreciably change until RANK_5.

I don't think sf differentiates between pawn storming with pawns on the king flank and pawns not on the king flank. Perhaps, if we've castled, be more aggressive in storming pawns that are NOT on the king flank?

Hello! Thanks for hearing me! I believe it's not about tell SF to encourage more pawn pushes on the king flank because most of times these pawn attacks are relatively easy to stop! due you're uncovering your own king.

But be more aware when enemy pawns on the king flank reach rank_5 or even rank_4 AND THERE ARE STILL MANY PIECES ON THE BOARD!!!!!!!!!!!!!!!!!!

In most of games pawn storms on the king flank are relatively easy to stop with many different ideas!

the problem is that SF doesn't realize when to take an action!!! IN THE CASES WHERE THERE ARE STILL MANY PIECES ON THE BOARD! PLEASE LOOK AT THESE TWO GAMES!!!

https://www.youtube.com/watch?v=dY3VimPpngI

https://www.youtube.com/watch?v=ygfe-G8g1i4

Both of them show perfectly what I'm trying to explain. WHEN IT'S ALREADY THE MIDDLE GAME THERE ARE STILL MANY PIECES ON THE BOARD AND THE WEAKNESS ARISES!!!

Please tell me what you think!

Devs please take this on mind. I believe if this weakness can be fixed Stockfish would be technically unbeatable

I think less ALL CAPS and less !!!! Would make your posts easier to read.
We are right here so you don't need to shout.

On Sat, Jan 26, 2019, 10:53 AM Octavio1994 <[email protected] wrote:

I agree with this one: [...] many times It misses killer pawn pushes on
the king flank after castling and specially during the middlegame"

I guess this should happen in the pawn storm, but the values in the
UnblockedStorm array do not appreciably change until RANK_5.

I don't think sf differentiates between pawn storming with pawns on the
king flank and pawns not on the king flank. Perhaps, if we've castled, be
more aggressive in storming pawns that are NOT on the king flank?

Hello! Thanks for hearing me! I believe it's not about tell SF to
encourage more pawn pushes on the king flank because most of times these
pawn attacks are relatively easy to stop! due you're uncovering your own
king.

But be more aware when enemy pawns on the king flank reach rank_5 or even
rank_4 AND THERE ARE STILL MANY PIECES ON THE BOARD!!!!!!!!!!!!!!!!!!

In most of games pawn storms on the king flank are relatively easy to stop
with many different ideas!

the problem is that SF doesn't realize when to take an action!!! IN THE
CASES WHERE THERE ARE STILL MANY PIECES ON THE BOARD! PLEASE LOOK AT THESE
TWO GAMES!!!

https://www.youtube.com/watch?v=dY3VimPpngI

https://www.youtube.com/watch?v=ygfe-G8g1i4

Both of them show perfectly what I'm trying to explain. WHEN IT'S ALREADY
THE MIDDLE GAME THERE ARE STILL MANY PIECES ON THE BOARD AND THE WEAKNESS
ARISES!!!

Please tell me what you think!


You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/official-stockfish/Stockfish/issues/1962#issuecomment-457851181,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AcVnSF5ccbkOx_TefeqiCVkwqRwmUMTEks5vHJYngaJpZM4aNvCH
.

I think less ALL CAPS and less !!!! Would make your posts easier to read. We are right here so you don't need to shout.

On Sat, Jan 26, 2019, 10:53 AM Octavio1994 @.* wrote: I agree with this one: [...] many times It misses killer pawn pushes on the king flank after castling and specially during the middlegame" I guess this should happen in the pawn storm, but the values in the UnblockedStorm array do not appreciably change until RANK_5. I don't think sf differentiates between pawn storming with pawns on the king flank and pawns not on the king flank. Perhaps, if we've castled, be more aggressive in storming pawns that are NOT on the king flank? Hello! Thanks for hearing me! I believe it's not about tell SF to encourage more pawn pushes on the king flank because most of times these pawn attacks are relatively easy to stop! due you're uncovering your own king. But be more aware when enemy pawns on the king flank reach rank_5 or even rank_4 AND THERE ARE STILL MANY PIECES ON THE BOARD!!!!!!!!!!!!!!!!!! In most of games pawn storms on the king flank are relatively easy to stop with many different ideas! the problem is that SF doesn't realize when to take an action!!! IN THE CASES WHERE THERE ARE STILL MANY PIECES ON THE BOARD! PLEASE LOOK AT THESE TWO GAMES!!! https://www.youtube.com/watch?v=dY3VimPpngI https://www.youtube.com/watch?v=ygfe-G8g1i4 Both of them show perfectly what I'm trying to explain. WHEN IT'S ALREADY THE MIDDLE GAME THERE ARE STILL MANY PIECES ON THE BOARD AND THE WEAKNESS ARISES!!! Please tell me what you think! — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#1962 (comment)>, or mute the thread https://github.com/notifications/unsubscribe-auth/AcVnSF5ccbkOx_TefeqiCVkwqRwmUMTEks5vHJYngaJpZM4aNvCH .

Sorry! I just wanted to highlight the main points!

Good points and we appreciate your help. It is just much easier to read
shorter posts on the main points VS longer posts with the main points in
ALL CAPS.

On Sat, Jan 26, 2019, 10:58 AM Octavio1994 <[email protected] wrote:

I think less ALL CAPS and less !!!! Would make your posts easier to read.
We are right here so you don't need to shout.
… <#m_-5396103671919696293_>
On Sat, Jan 26, 2019, 10:53 AM Octavio1994 @.* wrote: I agree with
this one: [...] many times It misses killer pawn pushes on the king flank
after castling and specially during the middlegame" I guess this should
happen in the pawn storm, but the values in the UnblockedStorm array do not
appreciably change until RANK_5. I don't think sf differentiates between
pawn storming with pawns on the king flank and pawns not on the king flank.
Perhaps, if we've castled, be more aggressive in storming pawns that are
NOT on the king flank? Hello! Thanks for hearing me! I believe it's not
about tell SF to encourage more pawn pushes on the king flank because most
of times these pawn attacks are relatively easy to stop! due you're
uncovering your own king. But be more aware when enemy pawns on the king
flank reach rank_5 or even rank_4 AND THERE ARE STILL MANY PIECES ON THE
BOARD!!!!!!!!!!!!!!!!!! In most of games pawn storms on the king flank are
relatively easy to stop with many different ideas! the problem is that SF
doesn't realize when to take an action!!! IN THE CASES WHERE THERE ARE
STILL MANY PIECES ON THE BOARD! PLEASE LOOK AT THESE TWO GAMES!!!
https://www.youtube.com/watch?v=dY3VimPpngI
https://www.youtube.com/watch?v=ygfe-G8g1i4 Both of them show perfectly
what I'm trying to explain. WHEN IT'S ALREADY THE MIDDLE GAME THERE ARE
STILL MANY PIECES ON THE BOARD AND THE WEAKNESS ARISES!!! Please tell me
what you think! — You are receiving this because you commented. Reply to
this email directly, view it on GitHub <#1962 (comment)
https://github.com/official-stockfish/Stockfish/issues/1962#issuecomment-457851181>,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AcVnSF5ccbkOx_TefeqiCVkwqRwmUMTEks5vHJYngaJpZM4aNvCH
.

Sorry! I just wanted to highlight the main points!


You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/official-stockfish/Stockfish/issues/1962#issuecomment-457851517,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AcVnSAulEFwJdP46hlygrqT9eYZjdxENks5vHJcrgaJpZM4aNvCH
.

It is indeed observed that SF is extremely vulnerable to long term strategic pawn-push advantages.

@protonspring I think you have located the source of the issue, pawnstorm should definitely not be the same, but vary, taking into regard all 4 King-pair situations regarding castling side:
K vs no K, no K vs K, K vs K, no K vs no K
Because, strategically, they are vastly different from each other

@Rocky640 This is reminiscent of your idea for 4 4x8 psqt, I think huge strategic potential is here, if we can come up with an extended structure for pawnstorm to have specialized values.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

NKONSTANTAKIS picture NKONSTANTAKIS  ·  6Comments

BKSpurgeon picture BKSpurgeon  ·  6Comments

NightlyKing picture NightlyKing  ·  7Comments

ghost picture ghost  ·  5Comments

d3vv picture d3vv  ·  4Comments