glav wrote: ↑Mon Mar 08, 2021 10:14 am Great thread. Our community would be today well served not from another engine that pushes the Elo limit another 100 points or so (though would be nice). What is really missing today is an engine that can explain in more or less human understable terms what is going on in a given position. Even a 2600 engine that does that would preferable to me to the latest lc0 running on the best hardware. Some GUIs have taken this job by explaining things in a more structured way, as the latest video by Charles Bicknell shows very well ( Another interesting project in this sense is Decode chess, but still I find their technology a little rudimentary (https://decodechess.com/). I know that this is a very hard project to accomplish, but it is what the community of players need most.
I agree that AI to explain difficult concepts would be wonderfully satisfying: Agadmator's chess channel (link) has over a million subscribers (who knew that this was possible for a channel that examines chess positions???), he's obviously a very strong player, and he explains everything both quickly and with a crystal clear clarity.
I am going to introduce a "but" here. I believe strongly in positive thinking (introduced at a slow, manageable rate), so apologies for the negative sentiment that follows.
In the lead up to the "reveal" in his videos, he will often quickly show you some alternative ideas: he's good at picking out the important themes. However, I can't help but feel that it's "just" entertainment: IMO, if you don't know everything, you don't know enough. If a GM spent two minutes showing novices some themes from difficult positions and then tested them on a similar position, I don't think many would pick the best move.
When you have chess engines with big nets and deep searching, they will uncover a large number of important themes in a position. Which ones are you going to pick to show the user?
Anyway - maybe I'm underestimating the value of good entertainment: for one thing, shared culture is a remarkably powerful tool for starting the process of overcoming apparent differences. The motto of FIDE is "gens una sumus" - we are one family.
With regards to "how" to build a chess position explainer: I would use case-based reasoning (CBR - link). In short:
1. build a database of positions with an explanation of the important themes in these positions
2. when a user provides a position, find the closest match in the database and offer the associated explanations
3. if the position found isn't quite right, allow the user to amend the search parameters to find a better match
4. if none of the positions in the database are useful, generate a new record for this new position
One thing we know about CBR - it usually takes a lot fewer cases to make a good system than you'd expect. Here's my estimate of what you'd need:
Good system: 1000 cases
Excellent system: 50000 cases
So VERY achievable!