lichess.org
Donate

Extended Ease Metric

To get to this kind of stuff, I used a cheat: the Lichess Explorer db. From the actual Win/Draw/Loss stats, one can derive a cp value (using LiChess' own theory). The intuitiveness of a move is directly proportional to the correlation between the computer evaluation of the position (taking from Lichess DB, Chess DB or server/local analysis) and the statistical cp value calculated above.

The caveat, of course, is that it only works for the first 25 moves of games and only what's in the Lichess DB. But it doesn't have to rely on Leela/Maia probabilities since it uses real human games and it adapts nicely to the filters the player chooses in the Explorer settings. A statistical value that very different from the computer eval means there are possible traps for one side or another.

To get to this kind of stuff, I used a cheat: the Lichess Explorer db. From the actual Win/Draw/Loss stats, one can derive a cp value (using LiChess' own theory). The intuitiveness of a move is directly proportional to the correlation between the computer evaluation of the position (taking from Lichess DB, Chess DB or server/local analysis) and the statistical cp value calculated above. The caveat, of course, is that it only works for the first 25 moves of games and only what's in the Lichess DB. But it doesn't have to rely on Leela/Maia probabilities since it uses real human games and it adapts nicely to the filters the player chooses in the Explorer settings. A statistical value that very different from the computer eval means there are possible traps for one side or another.

This is super interesting, I did not know about the original blog, but definitely food for thought, thanks for sharing

This is super interesting, I did not know about the original blog, but definitely food for thought, thanks for sharing

Would you like a practical application for a complexity metric?

99.99% of players have a huge blind spot when analyzing games: looking at an evaluation graph, players assume that if they're still winning and the evaluation doesn't change, it doesn't matter that they keep making the win or draw more complex to find, until the moment when they fail to find the win or draw.

Here is a practical example of a player making their task more complex with millions of spectators watching:
https://youtu.be/FSRBVRHo5To?t=866

Ba8? doesn't by itself lose anything, but it does make White's task more complex.

Would you like a practical application for a complexity metric? 99.99% of players have a huge blind spot when analyzing games: looking at an evaluation graph, players assume that if they're still winning and the evaluation doesn't change, it doesn't matter that they keep making the win or draw more complex to find, until the moment when they fail to find the win or draw. Here is a practical example of a player making their task more complex with millions of spectators watching: https://youtu.be/FSRBVRHo5To?t=866 Ba8? doesn't by itself lose anything, but it does make White's task more complex.

This got me thinking about something similar but slightly different.

From Stockfish, given a position, an evaluation, and the continuation, we know the best move, but I have been thinking about evaluating the entire line for each candidate move, to see how complicated the line is, is it a series of only moves to maintain equality for example (more difficult) or leads into more open games where there are more options to maintain the balance, I wonder about this now, yes, it means running stockfish a lot, but that could be very interesting to know the results.

I might write an article about this, as I think it is worth exploring.

This got me thinking about something similar but slightly different. From Stockfish, given a position, an evaluation, and the continuation, we know the best move, but I have been thinking about evaluating the entire line for each candidate move, to see how complicated the line is, is it a series of only moves to maintain equality for example (more difficult) or leads into more open games where there are more options to maintain the balance, I wonder about this now, yes, it means running stockfish a lot, but that could be very interesting to know the results. I might write an article about this, as I think it is worth exploring.

@TotalNoob69 said:

To get to this kind of stuff, I used a cheat: the Lichess Explorer db. From the actual Win/Draw/Loss stats, one can derive a cp value (using LiChess' own theory). The intuitiveness of a move is directly proportional to the correlation between the computer evaluation of the position (taking from Lichess DB, Chess DB or server/local analysis) and the statistical cp value calculated above.

The caveat, of course, is that it only works for the first 25 moves of games and only what's in the Lichess DB. But it doesn't have to rely on Leela/Maia probabilities since it uses real human games and it adapts nicely to the filters the player chooses in the Explorer settings. A statistical value that very different from the computer eval means there are possible traps for one side or another.

Thanks for the idea, I will look into implementing this as a cache for the N extended ease metric this will work well with opening book and after the book doesn't have I can resort back to my algo

@TotalNoob69 said: > To get to this kind of stuff, I used a cheat: the Lichess Explorer db. From the actual Win/Draw/Loss stats, one can derive a cp value (using LiChess' own theory). The intuitiveness of a move is directly proportional to the correlation between the computer evaluation of the position (taking from Lichess DB, Chess DB or server/local analysis) and the statistical cp value calculated above. > > The caveat, of course, is that it only works for the first 25 moves of games and only what's in the Lichess DB. But it doesn't have to rely on Leela/Maia probabilities since it uses real human games and it adapts nicely to the filters the player chooses in the Explorer settings. A statistical value that very different from the computer eval means there are possible traps for one side or another. Thanks for the idea, I will look into implementing this as a cache for the N extended ease metric this will work well with opening book and after the book doesn't have I can resort back to my algo

@Toadofsky said:

Would you like a practical application for a complexity metric?

99.99% of players have a huge blind spot when analyzing games: looking at an evaluation graph, players assume that if they're still winning and the evaluation doesn't change, it doesn't matter that they keep making the win or draw more complex to find, until the moment when they fail to find the win or draw.

Here is a practical example of a player making their task more complex with millions of spectators watching:
https://youtu.be/FSRBVRHo5To?t=866

Ba8? doesn't by itself lose anything, but it does make White's task more complex.

I agree this is something I can take a look at, and see how the blind spots can be detected, thanks for the insight

@Toadofsky said: > Would you like a practical application for a complexity metric? > > 99.99% of players have a huge blind spot when analyzing games: looking at an evaluation graph, players assume that if they're still winning and the evaluation doesn't change, it doesn't matter that they keep making the win or draw more complex to find, until the moment when they fail to find the win or draw. > > Here is a practical example of a player making their task more complex with millions of spectators watching: > https://youtu.be/FSRBVRHo5To?t=866 > > Ba8? doesn't by itself lose anything, but it does make White's task more complex. I agree this is something I can take a look at, and see how the blind spots can be detected, thanks for the insight

@HollowLeaf said:

This got me thinking about something similar but slightly different.

From Stockfish, given a position, an evaluation, and the continuation, we know the best move, but I have been thinking about evaluating the entire line for each candidate move, to see how complicated the line is, is it a series of only moves to maintain equality for example (more difficult) or leads into more open games where there are more options to maintain the balance, I wonder about this now, yes, it means running stockfish a lot, but that could be very interesting to know the results.

I might write an article about this, as I think it is worth exploring.

indeed, I plan to optimize the original ease metric function that looks at variations, it is something I have been looking into from code and math side, I think the calculator class can be easily extended to implement the logic above

@HollowLeaf said: > This got me thinking about something similar but slightly different. > > From Stockfish, given a position, an evaluation, and the continuation, we know the best move, but I have been thinking about evaluating the entire line for each candidate move, to see how complicated the line is, is it a series of only moves to maintain equality for example (more difficult) or leads into more open games where there are more options to maintain the balance, I wonder about this now, yes, it means running stockfish a lot, but that could be very interesting to know the results. > > I might write an article about this, as I think it is worth exploring. indeed, I plan to optimize the original ease metric function that looks at variations, it is something I have been looking into from code and math side, I think the calculator class can be easily extended to implement the logic above

@Noobmasterplayer123 said:

@HollowLeaf said:

This got me thinking about something similar but slightly different.

From Stockfish, given a position, an evaluation, and the continuation, we know the best move, but I have been thinking about evaluating the entire line for each candidate move, to see how complicated the line is, is it a series of only moves to maintain equality for example (more difficult) or leads into more open games where there are more options to maintain the balance, I wonder about this now, yes, it means running stockfish a lot, but that could be very interesting to know the results.

I might write an article about this, as I think it is worth exploring.

indeed, I plan to optimize the original ease metric function that looks at variations, it is something I have been looking into from code and math side, I think the calculator class can be easily extended to implement the logic above

I published the new analysis on ease for variations here https://lichess.org/@/Noobmasterplayer123/blog/extended-ease-metric-2-variation-ease/KD2z3pTa

@Noobmasterplayer123 said: > @HollowLeaf said: > > This got me thinking about something similar but slightly different. > > > > From Stockfish, given a position, an evaluation, and the continuation, we know the best move, but I have been thinking about evaluating the entire line for each candidate move, to see how complicated the line is, is it a series of only moves to maintain equality for example (more difficult) or leads into more open games where there are more options to maintain the balance, I wonder about this now, yes, it means running stockfish a lot, but that could be very interesting to know the results. > > > > I might write an article about this, as I think it is worth exploring. > > indeed, I plan to optimize the original ease metric function that looks at variations, it is something I have been looking into from code and math side, I think the calculator class can be easily extended to implement the logic above I published the new analysis on ease for variations here https://lichess.org/@/Noobmasterplayer123/blog/extended-ease-metric-2-variation-ease/KD2z3pTa

Makes sense to me! Using Stockfish instead of Leela for objective evaluations is a good way to really speed up the number crunching.

Makes sense to me! Using Stockfish instead of Leela for objective evaluations is a good way to really speed up the number crunching.