Different players have different personalities and different playing styles. Mikhail Tal's style is different from Tigran Petrosian, just as Kasparov is different from Karpov. I am wondering if there is a chess engine that can play "like" a real famous chess player, both in the sense of playing strength and style. After all, playing against a "resurrected" Capablanca or Botvinnik will be an exciting idea.
4 Answers
This idea was very popular back in the days, some programmers used their best to create such engines, and they did achieve that (to a certain extend)
Some engines that you might want to check out are:
Rebel
ProDeo
ShashChess
Szint
Szint has more of 100 personalities classified in 3 forms. Szint Training with personalities from 0 to 2600 of elo. Szint GM with personalities of world champions and grandmasters. Szint Settings with strong personalities done by other users.
-
Can you provide some details? How did they try to imitate famous players? I'm not aware that Rebel made any effort to do this and ShashChess almost certainly didn't (and it wasn't an engine 'back in the days') Commented May 25, 2021 at 21:02
-
yes indeed, the chess engines that I mentioned above are relatively new. I'm sorry friend but I have very little understanding about their algorithms and code if that is what you are asking. However I can assure you that you'd be as pleasantly surprised as I was when I analysed some of Tal's games using ShashChess (to me it seemed like the engine understood 80% of his sacrifices) Commented May 26, 2021 at 11:49
-
"Understanding" his moves isn't the same thing as predicting or imitating them, however. Commented May 26, 2021 at 17:03
Chess.com semi recently added bots that play like different people in real life. There aren’t a ton of people but it does have a few.
A wider range of different players is supported by the engine used in the unfortunately discontinued Chessmaster games by Ubisoft. https://en.wikipedia.org/wiki/Chessmaster I’m not the biggest expert in famous players and their playstyle but on a basic level I have found their representation of the few players I have looked into and played against it seems like they did a pretty good job.
-
2
-
Agreed with @David, it is debatable how much these bots reflect the playing style of real people besides the tuning of the engine strength. Commented May 10, 2021 at 9:07
This is a very interesting question. Yes I think are people that have tried to implement a "style" of a player, but most engines use a minimax algorithm also know as alpha-beta pruning. However, if you take a look at machine learning models, like Alpha Go, they first emulate/learn for a training set from the masters (called prior) and then train themselves by going against themselves. If we did this with a grandmaster, we could get an engine that is similar to that person, however the longer we train, the better it gets and the less it'll be like the grandmaster. There are other machine learning models that imitate the information feed beforehand, but I'm not an expert at it.
I think this type of thing can be achieved using chess engines to certain degree. I am afraid this is not possible with machine learning because of the nature of reinforced learning (Andrew's idea is creative; but I don't think it will work that way).
Some aspects of a player's style can be mimicked by forcing a usual chess engine to choose certain types of moves when there are multiple top moves to choose from (whose score differ only slightly). To give a rough idea, an engine mimicking Tal would go for more sacrifices, and one mimicking Petrosian would choose a move that grab more space. Anyway, there should be a threshold for opting the 'player style move' over the objective best move the engine could find (e.g., for most players, the engine should choose the best move unless the difference is less than 0.5). If the threshold for the difference is high (say, 2) and the engine favour attack, it would be an aggressive (not necessarily sound) chess engine.
Note: Making a solid criteria for 'engine favoring attack' is difficult, but necessary for a project of this type (esp. considering the fact that many nice attacks often involve 'silent' positional moves at some point in the sequence).
-
To clarify, a similar idea is also possible with machine learning. But, with machine learning, If we try to mimick Alekhine, after sufficient leaning, the engine may be playing like a more modern player, say Shirov. This is not a bad thing; but not exactly what we want. :) Commented May 10, 2021 at 7:11
famous-players
instead ofworld-championship
.