lichess.org
Donate

Change in evaluation of blunders and mistakes

Edit: The point raised by @AdmiralA that reflecting the human psychology only really would be functional in games that last a considerable amount of time is a fair point.
I think some of the issue here is that maybe you don't understand what the terms even mean. An inaccuracy is just that, deviation from accurate play. Accurate play from both sides should effectively end in a draw, because it retains the balance throughout the game. Missing shorter mating sequence is an inaccuracy because it allows your opponent time to respond with more accurate moves, which forces you to therefore play more accurate moves to force the mate. If you miss the mating sequence entirely and give your opponent a chance to equalize again, that is generally a "mistake" because you have gone from won to a potential draw. Mistakes change the balance of the game, and give your opponent a significant material and/or positional advantage (such as making an unjustified sacrifice...this is often a "mistake" in a game that you won due to the sacrifice, but had your opponent played accurately, you'd have never recovered...justified sacrifice, on the other hand, will not return a "mistake" because you gain compensation from it). A "blunder" is any move that is "losing," i.e., if your opponent plays accurately, you will now very likely lose the game; this is due to a substantial loss in material (i.e. a heavy piece rather than just a minor piece) that will not be regained with accurate play from the opponent, or opening yourself to forced mating sequences.

The computer does not know the psychology of a human. It knows only the algorithms it crunches, and as such, if it finds a way to beat you after a move you make, then you have blundered. If it finds an advantage, but it can't beat you, then it's a "mistake" and if you fail to maintain the balance of the game, but without enough material loss to warrant a "mistake" then it is an inaccuracy. No matter the engine, it will report in such a way, generally given thresholds of something along the lines of 1-2 pawns worth of material advantage = inaccuracy, 3-4 pawns is a "mistake" and anything more than 5 pawns is a "blunder." However, that threshold represents a much deeper layer of play, as I have described above, and can be highly beneficial for analysis of one's games. If you are not confident in using such layers of analysis, then you should ask for help rather than suggesting somehow the engine is in error in how it reports.

If you don't see how the move is a mistake or a blunder, then the engine provides a sequence of moves to demonstrate why it believes you have made an error. Following these lines, often leads to an understanding of why the move was unsound (though other times it simply reinforces that the move may have been ok because not even many GM level players would not play find such a strange line). Also, analyzing the missed mates, even if you still got a longer mate, is useful in that it helps understand forcing patterns that can be used not just in mating sequences, but to provide tactical advantages in the middle game as well, that while maybe not leading to mate can win a great deal of material.

I hope this was helpful.
@static_shadow and others,

I think there is some confusion here about which is the party responsible for interpreting the engine evaluation output.

It is NOT stockfish, it is Lichess.

1. The engine (as UCI engines generally do) reports in numerical terms (centipawns) its approximation of the evaluation of a position, unless it finds a forced mate, when it reports a "mate-in-X" value.

2. When you analyze a game on Lichess, the website scans the pgn move for move, delegates a node on its servers which runs an instance of stockfish, one position at a time to analyze the fen position.

3. Stockfish then returns a numerical evaluation score for each searched position, and this data is then inserted into the pgn file, and then depending on the delta of evaluation (change in evaluation) from move to move, Lichess appends each move with an "inaccuracy" or "mistake" or "blunder".

Thus, to do what I pointed out in my argument, it would be as trivial as modifying the piece of code which appends these 3 stickers onto moves after the analysis. No need to tweak stockfish for it.

@Casimir, I agree that blitz and bullet are the main genres of chess that are played on Lichess, but that has nothing to do with making the interpretation of evaluation more human-like. Whether it is bullet of classical time controls, a 10.2 -> 12.8 is not a mistake, it is an inaccuracy at best! Blitz or rapid or chess960, a mate-in-4 -> mate-in-6 is not a mistake, it is an inaccuracy. Therefore, my point stands.

Also, if it matters, I play classical/rapid chess on Lichess mostly, and I analyze all my games, so this matters a lot to me.
Let me clarify. Most programs that append annotation to engine analysis use something similar to what Lichess uses. If the evaluation changes from winning (+5) to a drawn position, then it's going to register as a "blunder" no matter what software you are using. The difference is that when you use outside software, you can change how long the engine analysis runs, to what depth, and which engine even. Thus these evaluations are going to be different. Maybe you can just download your PGNs and throw them into Chessbase reader and run whatever engine and analysis depth you'd like and that would achieve what you are looking for...but I imagine that will just return even MORE mistakes and blunders that Lichess didn't catch, not less as you'd like. I still don't see what the point of adjusting the returned values later in the game accomplishes. A blunder is still a blunder, whether it loses you the game or not.

This topic has been archived and can no longer be replied to.