Gibt es ein Computerprogramm, das Qualitätsschachprobleme erzeugt?

8

Gibt es eine Schachengine, die automatisch Qualitätsschachprobleme erzeugt? Zum Beispiel werde ich 3 eingeben - es erzeugt einen Partner in 3 Problem. Das Problem sollte jedoch nicht so offensichtlich sein, dass man es in Mikrosekunden lösen kann.

Fercis
quelle
Eine solche Implementierung sollte möglich sein. Ich würde es jedoch eher als "Schachproblemgenerator" als als "Schachmaschine" bezeichnen. Natürlich könnte dieser Problemgenerator als "Wrapper" um eine vorhandene Schachmaschine gebaut werden.
Rauan Sagit
Nicht ganz das Gleiche wie Ihre Frage, aber ich frage mich, ob die täglichen Rätsel auf der Titelseite von chessvibes.com computergeneriert sind.
Dag Oskar Madsen
Vielleicht könnte eine Idee darin bestehen, Master-Game-Datenbanken (vorzugsweise Blitz-Spiele?) Zu durchsuchen, um nach solchen Positionen zu suchen. Blitz, um mehr "Ends by Mate" -Spiele und Master-Level auszusortieren, um sicherzustellen, dass die dazu führenden taktischen Schüsse herausfordernd genug sind, um nicht offensichtlich zu sein.
Shivsky
@shivsky Das automatische Extrahieren von Schachproblemen aus echten Schachspielen ist eine gute Idee.
Rauan Sagit
1
@DagOskarMadsen: Diese täglichen Rätsel stammen von Chesstempo, das tatsächlich Rätsel aus echten Schachspielen extrahiert.
RemcoGerlich

Antworten:

5

Ich weiß nicht, ob es einen solchen Motor gibt, aber es gibt wahrscheinlich noch keinen und hier ist der Grund:

Es ist schwer, Motoren zu erklären, was "offensichtlich" ist. Was für Sie offensichtlich sein könnte, ist für mich vielleicht nicht einmal offensichtlich. Es gibt jedoch einige neuere Forschungen auf dem Gebiet der Schönheit bei Schachproblemen. Selbst wenn man Faktoren wie "Tiefenattraktivität", "visuelle Anziehungskraft" usw. berücksichtigt, wie in dieser Untersuchung dargelegt, bleibt das grundlegende Problem der Erzeugung von Schachpositionen bestehen.

In Anbetracht der Tatsache, dass es mindestens 10 ^ 43 Schachpositionen gibt, ist es noch nicht rechnerisch möglich, Positionen zu generieren und eine "Schönheits" -Analyse auf sie anzuwenden, um festzustellen, welche "Qualitäts" -Probleme sind.

Wir haben jedoch Endgame-Tabellen . Es könnte möglich sein, dass man die bereits generierten 6-teiligen Tabellenbasen verwendet und die Algorithmen der Forschung auf sie anwendet und Qualitätsprobleme erzeugt. Ich weiß jedoch noch nicht, ob das jemand getan hat.

Wir s
quelle
4

ChessTempo verwendet eine Schach-Engine, um Positionen aus einer großen Datenbank von Master-Spielen zu analysieren. Es sucht nach interessanten Positionen, die als Schachprobleme dargestellt werden können. Insbesondere wird nach Positionen gesucht, bei denen eine Seite innerhalb weniger Züge Material gewinnen kann, bei alternativen Zügen jedoch nicht. Diese Positionen werden dann Benutzern der Site angeboten, die versuchen, den ausgewählten besten Zug des Computers zu finden. Die Benutzer können die Probleme auch kommentieren, mit Tags versehen und bewerten, wie ihnen das Problem gefallen hat. Jedes Problem erhält außerdem eine ELO-ähnliche Bewertung, basierend darauf, welche Benutzer das Problem gelöst haben oder nicht gelöst haben.

Viele der Probleme erweisen sich als uninteressant (z. B. einfache Erfassungen ohne Strategie) oder in irgendeiner Weise fehlerhaft (da die Schachengine keine Details der Position sieht). Die einfachen Probleme erhalten schnell einen niedrigen Schwierigkeitsgrad und werden hoch bewerteten Spielern nicht angezeigt. Fehlerhafte Probleme werden in Kommentaren identifiziert und vom Site-Administrator deaktiviert.

Das Ergebnis ist eine große Anzahl interessanter Schachprobleme, die von einem Computer gefunden, von Menschen moderiert und nach Schwierigkeitsgraden geordnet werden.

Mark Byers
quelle
2

Azlan Iqbal (PhD) hat einen Schachproblemgenerator programmiert. Die Probleme werden vollständig aus nur einigen groben Eingaben synthetisiert, so wie die meisten Probleme von Kompositionsmeistern zusammengesetzt werden.

In dem ChessBase-Artikel , in dem die Arbeit angekündigt wird, sagt er:

"Chesthetica nimmt diese Konstrukte weder aus tatsächlichen Spielen noch extrapoliert sie sie aus Endgame-Tabellen (die derzeit auf sieben Teile beschränkt sind, glaube ich). Es komponiert sie selbst. Es wird nicht programmiert oder gesagt, welche Art von Kompositionen erstellt werden sollen (über das Sein hinaus) zu diesem Zeitpunkt) wurden keine Wiederholungen der bisher erzeugten Zusammensetzungen festgestellt. "

Bis zum Datum des Artikels hat Iqbal nur das Programm Chesthetica verwendet , um Partner in 3 zu komponieren. Er gibt auch an:

"Man könnte fragen, woher Chesthetica" seine Ideen "hat? Ich weiß es nicht. Wie oder warum sollte ein Computer überhaupt in der Lage sein, solche Schachprobleme zu komponieren? Können Computer so etwas autonom tun? Das sind auch gute Fragen und Ich glaube, die Antwort liegt in der DSNS * -Technologie. Warum dies funktioniert, ist noch offen, aber es funktioniert eindeutig. "

Wenn Sie mehr über den Aufbau des Systems erfahren möchten, finden Sie in den hier verfügbaren Folien eine kurze Zusammenfassung der Funktionsweise von DSNS .

Abgesehen von der Beschreibung des Algorithmus und einigen Kommentaren zu den von ihm verwendeten Eingaben bietet Iqbal jedoch nicht genügend Material, um dies selbst zu tun. Die Software wird nicht veröffentlicht, und es wurden keine Pläne zur Veröffentlichung angekündigt. Darüber hinaus wurde die Methode zum Auswählen, Erfassen und Eingeben der Eingaben nicht bekannt gegeben. Sie können gerne nach weiteren Veröffentlichungen zum Thema suchen, die hier verfügbar sind .

* DSNS: Digitales synaptisches neuronales Substrat.

Jaxter
quelle
1

Ich bin mir nicht sicher, ob es welche gibt, aber das Problem sollte mit einem anständigen Motor nicht allzu schwierig sein. Solange die Zeit kein zu großes Problem war, konnten sie generiert werden, indem die Engine selbst bei verschiedenen Tiefensuchvorgängen gespielt wurde.

Wenn zum Beispiel einer der Motoren nur zwei Bewegungen voraus sah, entsteht schließlich eine Position, an der der andere Motor (der weiter sehen kann) seinen Gegner in drei in einen erzwungenen Partner manövrieren kann. Diese Position könnte dann als Problem gespeichert werden. Die Schwierigkeit des Problems würde auf der Stärke der beiden "Spieler" beruhen. Eine Optimierung der Spielerstärke könnte verwendet werden, um Probleme mit unterschiedlichen Schwierigkeitsgraden zu erzeugen.

Ich denke nicht, dass die Zeit ein zu großes Problem sein müsste. Computer können im Allgemeinen sehr schnell anständige Bewegungen ausführen.

OnABauer
quelle
0

Auf Chess.com gibt es eine Funktion namens Taktiktrainer. Es gibt Benutzern eine Schachposition und den besten Zug. Was ich glaube, ist das, worüber du versuchst zu kreieren / zu fragen.

Sie haben hier eine kleine FAQ darüber, wie sie auf diese Fragen gekommen sind: https://support.chess.com/customer/portal/articles/1444815

Grundsätzlich suchen sie in echten Spielen nach Fehlern und haben eine Engine, um die Positionen zu analysieren, um sicherzustellen, dass es nur eine Gewinnlinie gibt (auf diese Weise richten sie einen Taktiktrainer ein, nur einen möglichen guten Zug, um die Implementierung des Trainers zu vereinfachen. Bei den meisten Problemen ist es möglich, mehrere gleich gute Best Moves zu haben.

Sie haben jedoch auch Menschen, die die Probleme durchgehen müssen, bevor sie sie veröffentlichen.

vincentleest
quelle
Gibt es einen Grund für die Ablehnung?
vincentleest