Neulich wollte ich das längste, aus den Endspieldatenbanken bekannte Matt in 526 Zügen mit Engine-Unterstützung nachspielen. (Das kann man übrigens hier finden, allerdings müssen da noch die letzten Züge bis zum Matt ergänzt werden.) Ich musste aber nicht nur feststellen, dass die Anzahl der Züge für manche Oberflächen schon zu viel war, nein, bei allen mir bekannten GUIs machte mir die 50-Züge-Regel einen Strich durch die Rechnung.
Diese Regel ist eine reine Wettkampfregel, was man auch daran erkennen kann, dass ein Spieler extra zum Schiedrichter laufen muss, um eine Verletzung der Regel zu reklamieren, und die Partie erst dann remis ist. Ferner gilt diese Regel für Studien nicht, bei welchem Schiedsrichter sollte sich da jemand auch beschweren?
Ich schlage deshalb eine neue Option für Schachoberflächen vor:
50-Züge-Regel ist wirksam
Der Schalter wird automatisch aktiviert, wenn eine Variante mit der normalen Partieausgangsstellung beginnt.
50-Züge-Regel ist wirksam
Der Schalter ist automatisch deaktiviert, wenn eine Variante mit einer beliebigen Stellung beginnt, also wenn es im PGN-Kopf dieser Variante das Feld
[SetUp "1"]
gibt. Falls dann ein Nutzer doch unter dieser Variante die 50-Züge-Regel wirksam machen will, kann er ja den Schalter wieder aktivieren.
Sicher wäre es nett, wenn die GUI sich so steuern ließe. (Im Moment kannst du wohl nur nach fast 50 Zügen in "Stellung aufbauen" gehen, die bereits erspielte Stellung neuübernehmen und weitermachen.)
Aber machen dir die Engines im Moment nicht auch einen Strich durch die Rechnung bei der 'Engine-Unterstützung'. Erkennen die in der Analyse nicht auch, dass nach einigen Plys die 50-Zügeregel greift, und werten die Stellung als Remisstellung?
Eine Engine kann die 50-Züge-Regel nur dann anwenden, wenn die Variante mit ihr schon mindestens 49 Züge lang gespielt wurde, was aber ist, wenn zwischendurch die Engine gewechselt wurde? Nein, der Normalfall ist der, dass eine Engine eine Stellung vorgesetzt bekommt und sie nicht oder wenigstens nicht genug über die Vorgeschichte weiß, also ist es Aufgabe der GUI, zu entscheiden, wann es Zeit ist, der Engine mitzuteilen, dass die 50-Züge-Grenze bald erreicht wird. Das beeinflusst nämlich nicht in unerheblichen Masse die Berechnungen der Engine, auf einmal geht es darum, ein Remis zu erreichen oder zu vermeiden.
Übrigens, da wir schon Fritz erwähnt haben, da wird in der GUI nur einfach ein Zähler hochgesetzt, das kann man daran erkennen, dass auch eine Rückwärtsanalyse nach 50 Zügen dazu führt, dass die Engine ein Remis sieht, obwohl das ja nicht gerade sinnvoll ist.
Mit der Fritz 11 GUI geht das, da gibt es unter Extra / Optionen / Partie die Funktion, - Aufgeben niemals - Remis niemals, wenn du das aktivierst dann kannst du so lange Partien nachspielen und sogar automatisch analysieren lassen ohne daß die 50-Züge Regel greift.
Ich sehe gerade du sprichst von 526 Zügen, ich hab's an einer Partie mit 269 Zügen probiert. Ob eine GUI 526 Züge überhaupt verwalten kann weiß ich nicht.
sorry, du hast Recht! Alles Zurück, auch die Fritz-GUI meldet Remis wegen der 50- Züge-Regel, ich hab eine Partie mit 269 Zügen erwischt, die erst im 270. Zug Remis ist!
Ja, es wäre schon, wenn der Schalter "Remis niemals" das hielte, was er verspricht, aber leider ist das nicht der Fall. Und eine Option, die die 50-Züge-Regel direkt anspricht, wäre mir schon lieber.
Übrigens hast Du recht mit Deiner Vermutung, dass Fritz 11 nicht mit der 526 Züge langen Variante zurecht kommt, nach 301 Zügen ist da alles nur noch Kommentar.
Trotzdem kann man das überlange Matt mit Fritz 11 nachspielen, man muß es in 2 Teile aufteilen, und immer dann, wenn man sieht, dass die Bewertung auf 0.00 geht, was ja offensichtlich falsch ist, kann man den internen Zähler, der die 50-Züge-Regel überwacht, zurücksetzen, indem man "lösche vorherige Züge" benutzt. Das ist aber nur ein Behelf.
Grüße, Thomas
By Michael Scheidl
Date 2010-08-19 15:11
Gibt es nicht genau diese Option (noch) in der Shredder-GUI? Bei den neueren Versionen bin ich momentan nicht sicher bzw. kann jetzt nicht nachschauen, aber von einer älteren ist mir das definitiv in Erinnerung. IIRC konnte man da sogar eine andere Zügezahl als 50 einstellen.
Es ist richtig, daß ein 50er-Remis eigentlich die Reklamation eines Spielers benötigt. Doch Schachsoftware hat, sofern sie die Regel überhaupt beherrscht, seit jeher so ein Remis quasi zwangsweise "verhängt" sobald die Bedingungen gegeben waren. Detto nach der zweiten (= drittes Vorkommen) Stellungswiederholung; eigentlich müßte das vorher reklamiert werden um FIDE-konform zu sein, also wenn man bzw. das Programm am Zug ist.
Ein kompletter FEN-String enthält den 50er-Remiszähler. Das ist eine der Zahlen am Ende der FEN-Zeile (findet man i.d. Praxis meist auf Null lautend obwohl das sicher oft fehlerhaft ist). D.h. eine Schachsoftware könnte theoretisch auch ohne die kompletten vorangegangenen Züge auskommen, sofern sie diesen Zähler in der FEN interpretieren kann. Mir ist jedoch momentan keine Software verläßlich bewußt, die das macht (möglicherweise wiederum die Shredder-GUI?).
Eine zwingende automatische Deaktivierung der Regel bei Setups geht wohl etwas zu weit. Man kann ja m.E. nicht davon ausgehen, daß das meistens Studien sind wo diese außer Kraft gesetzt werden soll. Man denke etwa an "normales" Endspieltraining. Allerdings wäre es als eine Zusatzoption sinnvoll, sodaß Studienfreunde einerseits sich das so konfigurieren könnten und die Partieschachspieler usw. andererseits es nicht haben müßten.
Du hast recht, der Zähler im FEN-String gibt Auskunft über den Status der 50-Züge-Regel, allerdings muss der ja von außen gesetzt werden, die Engine selbst kann das nicht machen, also ist entweder die Oberfläche oder der Mensch, der die zugehörige Stellung untersuchen will, dafür verantwortlich.
Was das Setzen der Option für die 50-Züge-Regel angeht, da bin ich nicht dogmatisch, die kann von mir aus auch standardmäßig aktiviert sein, es kommt nur darauf an, dass überhaupt so eine Option existiert.
Arena 2.0.1 bietet die Lösung für das Problem der 50-Züge Regel! Im Analyse Modus wird zwar angezeigt daß jetzt die 50 Züge erreicht sind, man kann aber trotzdem weiter spielen, wie weit habe ich nicht probiert.
Danke für Deine Bemühungen, mir bei diesem Problem zu helfen, aber Arena hatte ich schon ausprobiert, bevor ich mich zu dem Vorschlag einer neuen Oberflächenoption entschlossen hatte.
Klar, man kann in Arena weiterspielen, aber hast Du Dir einmal die Bewertung der mitlaufenden Engine im Analysemodus angesehen? Die Ausgabe 0.00 nach 50 Zügen ist da nicht wirklich befriedigend, weil doch falsch. Übrigens weiß der Arena-Autor schon über meinen Vorschlag Bescheid, mal sehen, was daraus wird...
Ich hoffe, dass vielleicht auch andere Oberflächenprogrammierer durch diese Diskussion auf dieses Problem aufmerksam werden, weil es doch von genereller Natur ist. Die 50-Züge-Regel gilt halt nicht immer, und dem sollte Rechnung getragen werden.
[quote="Thomas Hall"]Die Ausgabe 0.00 nach 50 Zügen ist da nicht wirklich befriedigend, weil doch falsch.[/quote]Sind das nicht die Ausgaben der Engines. Denen müsstest du dann beibringen lassen, nicht die 50-Züge-Regel anzuwenden. Ein GUI-Entwickler kann da vermutlich nicht weiterhelfen. Benno
Wie schon von Michael Scheidl in dieser Diskussion richtig bemerkt, gibt es bei der FEN einen Zähler, der den Status der 50-Züge-Regel angibt, und die Engine bekommt diese FEN natürlich als Eingabe. Denn natürlicherweise muß eine Engine schon vor dem Ablauf der 50 Züge wissen, dass da ein Remis droht, wenn kein Bauer gezogen oder kein Stein geschlagen wird, denn nur dann kann sie sich darauf einstellen, ein Mensch würde das ja auch sehen. Also nehme ich an, dass es entweder schon die Engine ist, die da nach Ablauf der 50-Züge die Bewertung 0.00 ausgibt, aber nur, weil sie von der Oberfläche einen entsprechenden Hinweis durch den Zähler bekommen hat, oder halt die Oberfläche selbst, was aber in diesem Fall keinen Unterschied macht. Fehlt der Hinweis der Oberfläche, fährt die Engine in ihren ganz normalen Berechnungen fort.
Also ist es sehr wohl die Oberfläche, die hier entscheidend eingreifen kann, denn der Zähler braucht ja nicht gesetzt zu werden.