Existe-t-il un programme informatique qui génère des problèmes d'échecs de qualité?


8

Existe-t-il un moteur d'échecs qui génère automatiquement des problèmes d'échecs de qualité. Par exemple, j'entrerai 3 - cela produit un problème de compagnon en 3. Mais le problème ne devrait pas être si évident qu'on peut le résoudre en quelques microsecondes.


Une implémentation de ce type devrait être possible. Pourtant, je l'appellerais un "générateur de problèmes d'échecs" plutôt qu'un "moteur d'échecs". Bien sûr, ce générateur de problèmes pourrait être construit comme un "wrapper" autour d'un moteur d'échecs existant.
Rauan Sagit

Pas tout à fait la même chose que votre question, mais je me demande si les puzzles quotidiens sur la première page de chessvibes.com sont générés par ordinateur?
Dag Oskar Madsen,

Peut-être qu'une idée pourrait être de parcourir les bases de données Master Game (de préférence les jeux Blitz?) Pour extraire de telles positions. Blitz pour éliminer plus de jeux de type «se termine par un partenaire» et de niveau Master pour s'assurer que les coups tactiques qui y mènent sont suffisamment difficiles pour ne pas être évidents.
shivsky

@shivsky Extraire automatiquement les problèmes d'échecs des vrais jeux d'échecs est une bonne idée.
Rauan Sagit

1
@DagOskarMadsen: ces puzzles quotidiens sont de Chesstempo, qui extrait en effet des puzzles de vrais jeux d'échecs.
RemcoGerlich

Réponses:


5

Je ne sais pas si un tel moteur existe, mais il n'y en a probablement pas encore et voici pourquoi-

Il est difficile d'expliquer aux moteurs ce qui est "évident". Ce qui pourrait être évident pour vous pourrait même ne pas être évident pour moi. Cependant, il existe des recherches récentes dans le domaine de la beauté des problèmes d'échecs. Même si l'on prend des facteurs tels que "l'attrait de la profondeur", "l'attrait visuel", etc., comme indiqué dans cette recherche, il reste le problème fondamental de générer des positions d'échecs.

Compte tenu du fait qu'il existe au moins 10 ^ 43 positions d'échecs, il n'est pas encore possible de calculer des positions et de leur appliquer une analyse de "beauté" pour voir lesquelles sont des problèmes de "qualité".

Cependant, nous avons des bases de table de fin de partie . Il pourrait être possible d'utiliser les bases de table 6 pièces déjà générées et d'appliquer les algorithmes de la recherche sur celles-ci et de générer des problèmes de qualité. Cependant, je ne sais pas si quelqu'un l'a déjà fait.


4

ChessTempo utilise un moteur d'échecs pour analyser les positions à partir d'une grande base de données de jeux maîtres. Il recherche des positions intéressantes qui peuvent être présentées comme des problèmes d'échecs. Plus précisément, il recherche des positions dans lesquelles un côté a un moyen de gagner du matériel en quelques mouvements, mais pas dans les mouvements alternatifs. Ces postes sont ensuite proposés aux utilisateurs du site qui tentent de trouver le meilleur coup sélectionné de l'ordinateur. Les utilisateurs peuvent également commenter les problèmes, les étiqueter et évaluer comment ils ont aimé le problème. Chaque problème reçoit également une note de type ELO en fonction des utilisateurs qui ont résolu ou échoué à résoudre le problème.

Beaucoup de problèmes s'avèrent sans intérêt (par exemple, de simples captures sans stratégie impliquée) ou imparfaits d'une manière ou d'une autre (du fait que le moteur d'échecs ne voit pas certains détails de la position). Les problèmes faciles se voient rapidement attribuer un faible niveau de difficulté et ne sont pas présentés aux joueurs les mieux notés. Les problèmes défectueux sont identifiés dans les commentaires et désactivés par l'administrateur du site.

Le résultat est un grand nombre de problèmes d'échecs intéressants découverts par un ordinateur, modérés par les humains et classés par niveau difficile.



2

Azlan Iqbal (PhD) a programmé un générateur de problèmes d'échecs. Les problèmes sont entièrement synthétisés à partir de quelques entrées approximatives, de la manière dont la plupart des problèmes sont composés par des maîtres de composition.

Dans l' article ChessBase annonçant le travail, il dit:

"Chesthetica ne prend pas ces constructions à partir de jeux réels ni les extrapole à partir de bases de table de fin de jeu (qui sont actuellement limitées à sept pièces, je crois). Il les compose par lui-même. Il n'est pas programmé ni dit quel type de compositions créer (au-delà d'être de la variété # 3, à ce stade). Il n'y a eu aucune répétition détectée des compositions générées à ce jour. "

À la date de l'article, Iqbal n'a exploré qu'en utilisant le programme Chesthetica pour composer des copains en 3. Il déclare également:

"On pourrait se demander où Chesthetica" tire ses idées "? Je ne sais pas. Comment ou pourquoi un ordinateur devrait-il être capable de composer des problèmes d'échecs comme ceux-ci? Les ordinateurs peuvent-ils faire ce genre de choses de manière autonome? Ce sont aussi de bonnes questions et Je crois que la réponse réside dans la technologie DSNS *. Encore une fois, pourquoi cela fonctionne est toujours une question ouverte mais clairement, cela fonctionne. "

Si vous souhaitez en savoir plus sur la façon dont le système a été construit, un bref récapitulatif de la façon dont les fonctions DSNS sont décrites dans les diapositives disponibles ici .

Cependant, à part la description de l'algorithme et quelques commentaires sur les entrées qu'il utilise, Iqbal ne fournit pas suffisamment de matériel pour que vous puissiez le faire vous-même. Le logiciel n'est pas sorti et aucun projet de sortie n'a été annoncé. De plus, la méthode de choix, de capture et d'entrée des entrées n'a pas été divulguée. Vous êtes invités à rechercher d'autres publications sur le sujet, disponibles ici .

* DSNS: Substrat neuronal synaptique numérique.


1

Je ne sais pas s'il en existe, mais le problème ne devrait pas être trop difficile à utiliser avec un moteur décent. Tant que le temps n'était pas un problème trop important, ils pouvaient être générés en faisant jouer le moteur lui-même à différentes recherches de couches de profondeur.

Par exemple, si l'un des moteurs n'a vu que deux mouvements en avant, une position se posera éventuellement où l'autre moteur (qui peut voir plus loin) peut manœuvrer son adversaire en un compagnon forcé en trois. Cette position pourrait alors être enregistrée comme un problème. La difficulté du problème serait basée sur la force des deux "joueurs". Le réglage de la force du joueur pourrait être utilisé pour générer des problèmes de difficulté variable.

Je ne pense pas que le temps devrait être une préoccupation trop importante. Les ordinateurs peuvent généralement faire des mouvements décents très rapidement.


0

Le Chess.com a une fonctionnalité appelée l'entraîneur tactique. Il donne aux utilisateurs une position d'échecs et quant au meilleur mouvement. Je pense que c'est ce que vous essayez de créer / demander.

Ils ont une petite FAQ sur la façon dont ils ont trouvé ces questions ici: https://support.chess.com/customer/portal/articles/1444815

Fondamentalement, ils recherchent des erreurs dans les vrais jeux et ont un moteur pour analyser les positions pour s'assurer qu'il n'y a qu'une seule ligne gagnante (c'est ainsi qu'ils mettent en place un entraîneur tactique, un seul bon mouvement possible, pour une mise en œuvre plus facile de l'entraîneur. Dans la plupart des problèmes, il est possible d'avoir plusieurs meilleurs coups tout aussi bons)

Cependant, ils ont aussi des humains pour traverser les problèmes avant de les publier.


Une raison pour le downvote?
vincentleest

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.