Robert Bauer schrieb:
Ich möchte hier fragen, was die Engine macht, wenn Syzygy50MoveRule aktiviert ist. In den Syzygy ist meines Wissens keine 50-Züge-Regel hinterlegt. Daher muss wohl dann der Prozessor die Arbeit übernehmen und entsprechend die Bäume durcharbeiten und dabei selbst die 50-Züge-Regel beachten.
Doch, genau das liefern die Syzygy TB: Eine differenzierte Aussage, ob ein Gewinn innerhalb oder außerhalb der 50-Züge-Regel erzielt werden kann:
https://github.com/syzygy1/tb/blob/fcac7a0b9d32a53ac11eb015837dae03347998e8/interface/tbprobe.cpp#L386Und Engines, die die Syzygy50MoveRule Option implementieren, nutzen eben genau diese Information, um Positionen, bei denen die TB "1 : win, but draw under 50-move rule" liefert, entweder als Sieg, sofern der Benutzer Syzygy50MoveRule auf false gesetzt hat oder aber als unentschieden (falls Syzygy50MoveRule=true) zu bewerten.
Hi Robert,
die Beeinflussung durch syzygy oder Fischer oder der verwendeten Zeitkontrolle hat schon Auswirkungen.
Genau das ist wichtig, wenn mit längerer Bedenkzeit getestet wird.
Nehme ich z. B. die Engines alle raus die einen hohen Züge Durchschnitt produzieren kann ich mehr Partien produzieren und habe auch bei statistischen Auswertungen mehr klare Resultate.
Durch syzygy verringert sich grundsätzlich der Züge Durchschnitt, weil Remis früher erkannt wird.
Das kann dann wieder beeinflusst werden durch so eine Art Schwindel-Modus.
So nach dem Motto, vermeide dennoch Remis, denn der Gegner könnte ja einen Fehler machen.
Was durchaus nicht unlogisch ist, denn einige Engine verwenden die syzygy Daten nicht.
Auch stimmt oft die Mattführung nicht durch den wahrscheinlich zur Verfügung stehenden Code bei der Einbindung der syzygy Datenbanken.
Das ist wieder schlecht, um anhand Züge Durchschnitt der Gewinnpartien Vergleiche anzustellen. Denn wenn Engines mithilfe der syzygy Daten spielen, kommt es oft zu Konstellationen das Bauern umgewandelt werden, die Figur dann gegeben wird, der nächste Bauer umgewandelt wird, wieder gegeben wird, um bei immer weniger Figuren auf dem Brett dann offenbar schneller Matt zu setzen (letztendlich dauert es deutlich länger).
Ohne syzygy kommt es bei einigen Engines nicht zu diesem Problem, meine Engine die syzygy zwar können, aber wenn die Endspiel-Datenbanken dennoch nicht eingebunden werden, legen die betroffenen Engines dann eine völlig normale Mattführung aufs Parkett.
Bei der Bedenkzeit ist es so, dass z. B. bei der Zeitkontrolle, die ich derzeit verwende, 66 Minuten + 6 Züge, es dazu kommt, dass im Endspiel geblitzt wird. Offenbar scheint in diesem Fall der Schwindel-Modus gar zu greifen und klare Endspiele werden wirklich noch verloren. Passiert zwar auch selten aber erklärt letztendlich, warum Programme dann einen so hohen Züge Durchschnitt produzieren, weil so eine Art Swindle-Modus implementiert, ist der sich aber mittels einer UCI-Option nicht ein- oder ausschalten lässt. Ferner reduziert Contempt = 0 den Züge Durchschnitt.
Alles unter einen Hut zu bekommen, geht nicht.
Also, z. B. optimaler Züge Durchschnitt aller Partien, liegt ohne Aufgabefaktor bei ca. 86-88 Zügen oder im im Detail geschaut optimaler Züge Durchschnitt der Remis Partien oder der Gewinnpartien.
Zu Deinen Anmerkungen:
Früher gab es die schnellen SSD nicht. Erhöhten wir von 4-Steiner (machten bei einzelnen Engines ca. +15 Elo aus) auf 5-Steiner wurden aus +15 Elo dann +-0 Elo. Das lag daran, weil durch den Zugriff auf die TBs die Engines deutlich langsamer wurden und dann der Vorteil weg war. Bei dem Einsatz von SSD steigerte sich dann bei einzelnen Engines der Zuwachs von +15 Elo auf bis zu +20 Elo. Diese Aussagen sind mit Vorsicht zu genießen, hatte das bei verschiedenen Ratingliste testweise nur mit insgesamt 4 Engines getestet.
Hatte vor mehr als 10 Jahren Hinweise zu den ganzen Beeinflussungsfaktoren zusammengetragen.
Ein langes Dokument, wenn Du magst, lade ich das noch mal hoch.
Die Fragen, die ich mir stelle, sind:
1. Bei Verwendung von Fischer Zeitkontrollen ist es im Grunde fast egal wie hoch der Züge Durchschnitt ist. Die Partien laufen nicht großartig länger (von der Zeit her gesehen, nicht vom Züge Durchschnitt) und offenbar greifen dann auch hier und da Ideen noch Punkte bei Remis Stellungen einzufahren. Nur Schönheitspreise werden mit langen Partien auch nicht gewonnen und viele erarbeiteten Statistiken greifen nicht weil viele mit Züge Durchschnitt zu tun haben. Statistiken sind aber wieder wichtig, um mehr über Stärken und Schwächen herauszufinden.
2. Bei Verwendung von x Züge in X Minuten sehe ich nicht, dass durch Schwindel-Mode oder Contempt Punkte bei Remis Stellungen noch eingefahren werden. Es ist zu viel Zeit im Endspiel vorhanden und offenbar produzieren dann die aktuellen TOP-50 selten bis gar nicht Fehler.
Bedeutet:
- es macht Sinn, dass die Programmierer UCI Optionen anbieten die Swindle-Mode einschalten oder ausschalten oder wenn versteckter Contempt (wie z. B. bei Revenge Release) dieser sich dann einschalten oder ausschalten lässt.
- es macht Sinn den offiziellen Code der syzygy mal zu überarbeiten. Wahrscheinlich haben das Problem aber schon viele Programmierer erkannt und selbst Hand angelegt.
Ansonsten gibt es keine perfekten Lösungen, um den Züge Durchschnitt zu drücken.
Einzig was geht auf die Engines, die einen hohen Züge Durchschnitt produzieren, zu verzichten (wenn keine Optionen vorhanden sind diesen zu drücken).
---
Wobei meine Frage noch nicht beantwortet, ist:
Wird sich ein Ausschalten der syzygy (wenn Support vorhanden ist) heute negativ auf das Zeitmanagement auswirken?
Ich habe ja oben ein Beispiel genannt, warum ich frage!
Viele Grüße
Frank
Und zum Spaß Faktor:
- Fischer zu beobachten, macht mehr Spaß als x Züge in x Minuten.
- aussagekräftigere Ergebnisse erzeugt allerdings x Züge in x Minuten, weil es im Endspiel zu weniger Fehlern kommt.
Und wie immer ... in beiden Fällen gibt es Engines bei denen das Zeitmanagement zu Variante 1 oder 2 nicht optimal erscheint. Berserk hat bei dem vorherigen Turnier 5 Partien verloren, weil kurz vor der Zeitkontrolle keine Zeit mehr vorhanden war. Dem Programmierer scheint es egal zu sein, wenn ich seine Aussagen in TalkChess richtig verstehe. Ich könnte jetzt mal hingehen und aufzeigen, wo überall bei Fischer Zeit das Zeitmanagement nicht OK ist bzw. oft unglücklich ausschaut. Aber die ganzen Probleme gab es immer schon, wenn wirklich viele Programme in einem Turnier sind. Niemand kann erwarten, dass alle Programme immer alles richtig machen. Ich kann mich bei den vielen Ratinglisten nicht daran erinnern und zu bemängeln gibt bzw. gab es immer schon einiges.