8

Is there a chess engine that automatically generates quality chess problems. For example I will input 3 - it produces a mate in 3 problem. But the problem shouldn't be so obvious that one can solve in microseconds.

  • An implementation of this kind should be possible. Yet, I would call it a "chess problem generator" rather than a "chess engine". Of course, this problem generator could be built as a "wrapper" around an existing chess engine. – Rauan Sagit Feb 13 '14 at 20:33
  • Not quite the same as your question, but I wonder if the daily puzzles on the front page of chessvibes.com are computer generated? – Dag Oskar Madsen Feb 14 '14 at 8:41
  • Perhaps one idea could be to comb through Master Game databases (preferably Blitz games?) to mine for such positions. Blitz to weed out more "ends by mate" type of games and Master-level to ensure that the tactical shots leading to it are challenging enough to not be obvious. – shivsky Feb 14 '14 at 20:42
  • @shivsky Automatically extracting chess problems from real chess games is a good idea. – Rauan Sagit Feb 17 '14 at 9:09
  • 1
    @DagOskarMadsen: those daily puzzles are from Chesstempo, which does indeed extract puzzles from real chess games. – RemcoGerlich Feb 18 '14 at 13:32
5

I don't know if such an engine exists, but there probably might not be one yet and here's why-

It's hard to explain to engines what is "obvious". What might be obvious to you might not even be obvious to me. However, there is some recent research in the area of beauty in chess problems. Even if one takes such factors as "depth appeal", "visual appeal", etc. as outlined in this research, there still remains the fundamental problem of generating chess positions.

Considering the fact that there are at least 10^43 chess positions, it is not yet computationally feasible to generate positions and apply "beauty" analysis to them to see which ones are "quality" problems.

However, we do have endgame tablebases. It could be possible that one could use the already generated 6 piece tablebases and apply the algorithms of the research on them and generate quality problems. However, I do not know if anyone has done that yet.

|improve this answer|||||
4

ChessTempo uses a chess engine to analyze positions from a large database of master games. It looks for interesting positions that can be presented as chess problems. Specifically it looks for positions in which one side has a way to win material within a few moves, but where alternative moves do not. These positions are then offered to users of the site who try to find the computer's selected best move. The users can also comment on the problems, tag them and rate how they liked the problem. Each problem is also given an ELO-like rating based on which users solved or failed to solve the problem.

Many of the problems turn out to be uninteresting (e.g. simple captures with no strategy involved) or flawed in some way (due to the chess engine not seeing some detail of the position). The easy problems are quickly given a low difficulty rating and are not shown to high rated players. Flawed problems are identified in comments and are disabled by the site administrator.

The result is a large body of interesting chess problems found by a computer, moderated by humans, and arranged by difficult level.

|improve this answer|||||
2

This program has a generator chess problems but the quality of these tasks is low... http://chessexplorer.republika.pl/

|improve this answer|||||
2

Azlan Iqbal (PhD) has programmed a chess problem generator. The problems are completely synthesized from only some rough inputs, the way most problems are composed by composition masters.

In the ChessBase article announcing the work, he says:

"Chesthetica neither takes these constructs from actual games nor extrapolates them from endgame tablebases (which are currently limited to seven pieces, I believe). It is composing them by itself. It is not programmed or told what sort of compositions to create (beyond being of the #3 variety, at this point). There have been no detected repetitions of the compositions generated to date."

To the date of the article, Iqbal has only explored using the program, Chesthetica, to compose mates in 3. He also states:

"One might ask where does Chesthetica “get its ideas”? I do not know. How or why should a computer be able to compose chess problems like these at all? Can computers autonomously do this sort of thing? These are also good questions and I believe the answer lies with the DSNS* technology. Again, why it works is still an open question but clearly, it does work."

If you're interested in knowing more about how the system was constructed, a brief recap of how DSNS functions is described in slides available here.

However, other than describing the algorithm and a few comments about the inputs he is using, Iqbal doesn't provide enough material for you to do this by yourself. The software isn't released, and no plans to release it have been announced. In addition, the method for choosing, capturing and inputting the inputs has not been divulged. You're welcome to search for more publications on the topic, available here.

*DSNS: Digital Synaptic Neural Substrate.

|improve this answer|||||
1

I'm not sure if any exist but the problem shouldn't be too difficult using a decent engine. As long as time wasn't too big an issue they could be generated by having the engine play itself at different depth ply searches.

For example, if one of the engines only saw two moves ahead a position will eventually arise where the other engine (which can see further) can manoeuvre his opponent into a forced mate in three. This position could then be saved as a problem. The difficulty of the problem would be based on the strength of the two "players". Tweaking of player strength could be used to generate problems of varying difficulty.

I don't think time would even have to be too big a concern. Computers can generally make decent moves very quickly.

|improve this answer|||||
0

The Chess.com has a feature called the tactics trainer. It gives users a chess position and as for best move. Which i believe is what you are trying to create/ asking about.

They have a small FAQ about how they came up with these questions here: https://support.chess.com/customer/portal/articles/1444815

Basically, they look for blunders in real games, and have an engine to analyze the positions to make sure there is only one winning line (that's the way they set up tactics trainer, only 1 possible good move, for easier implementation of the trainer. In most problems, it is possible to have multiple equally good best moves)

They however, they also have humans to go through the problems before they post it.

|improve this answer|||||
  • Any reason for the downvote? – vincentleest May 11 '15 at 14:16
-1

yes! check out this chessbase article http://en.chessbase.com/post/computer-generated-chess-problems-for-everyone

|improve this answer|||||
  • Hi magd, can you elaborate on what the link says? Links don't work forever, and I'm not sure where to download the program or the problems it creates. – Andrew May 1 '15 at 20:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.