Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Neuronale Netze und Rochade
- - By Florian Wieting Date 2020-04-12 00:23 Edited 2020-04-12 00:26
Ausgehend von einigen Beiträgen im Thema "Chess 960 run gestartet" stelle ich mal eine sehr steile These zur Diskussion.

Würden neuronale Netze überhaupt so häufig die Rochaden "berechnen", wenn sie ohne Eröffnungsbücher spielen würden?

Ich habe mal auf die Schnelle versucht, mit Scid  entsprechende Partien von Lc0 herauszusuchen, fand im ersten Durchgang aber nur Partien, in denen die Rochade bereits aus dem Buch gespielt wurde.

PS. Ich habe mit GTX 1050 und GTX 950M auch nicht die Hardware, um diesbezüglich eigene Tests durchzuführen.
Parent - By Robert Bauer Date 2020-04-12 16:38
Wir haben zwar schon eine interessante Diskussion im Thread Lc0 0.25 RC1 veröffentlicht, aber das ist nochmal eine spezielle Frage.

Ich würde behaupten, dass Engines - neben Lc0 auch die Stockfische - nicht so häufig wie wir Menschen zur Rochade greifen.
Dazu fallen mir zwei Argumente ein:

1. wir haben einfach die Erfahrung, wenn wir in den König in der Mitte lassen, dann kommt er früher oder später unter Beschuss und das viel leichter als nach der Rochade.
2. wir sind einfach keine so guten Verteidiger wie die Maschinen. Maschinen finden den einzigen Ausweg, auch wenn dieser ohne Rochade in Gefahr gerät.

Was mir bei Engine-Partien aufgefallen ist:

1. Sie greifen gerne mal zu h4, um auf den Gegner loszugehen. Egal ob dieser kurz rochiert hat oder nicht. Es dient nicht unbedingt zum Angriff auf den König, sondern zur Lockerung der gegnerischen
Bauernstellung. Wahrscheinlich sind die Supergroßmeister dabei, davon zu lernen und wir sehen immer häufiger g4 oder h4 in der Eröffnung.
2. Der König wird gerne auch mal auf f1(f8) gestellt, um mit dem h- und g-Bauern vorzugehen. Der f-Bauer reicht, wenn man ein guter Verteidiger wie die Engine ist.

Wahrscheinlich ist die Rochade einfach ein statistisch seltener Zug im Vergleich zum Beispiel einem beliebigen Läuferzug. Daher kann der Wert der Rochade erst mir viel Erfahrung d.h. vielen Partien korrekt eingeschätzt werden. Und bei den Tests werden ja keine menschlichen Faustformeln dem NN vorgegeben wie "rochiere, um den König zu sichern". Da muss das NN schon selbst draufkommen.
Parent - - By Benno Hartwig Date 2020-04-13 11:30
Die Rochade ist ein Zug, der im Rahmen der ersten Züge einer Partie häufig möglich ist. Folglich wird dieser Zug genauso häufig analysiert.
Es wäre Unsinn die Rochade mit "Springerzügen an sich" zu vergleichen. Davon sind viele denkbar.
Es gibt je Seite nur 2 mögliche Rochaden. Und es gibt nur sehr wenige ganz konkrete Springerzüge, die dermaßen häufig möglich sind.
Darum werden die Rochaden Züge sein, über die besonders häufig nachgedacht wird.

Auch sind die Kräfteveränderungen durch die Rochade besonders deutlich (Turmaktivierung, Schutz des Königs), sodass der Vorteil sehr oft besonders klar erkannt wird. Andere Züge bewirken zunächst weitaus geringere Änderungen.

Ich vermute sogar (mit meinem Schmalspur-Schachverstand), die bereitwillige Öffnung des Zentrums durch Engines jetzt nur deshalb erfolgt, weil sie immer ihre Möglichkeiten sehen, den König etwas später noch wieder verstecken zu können.
Meine These: Müsste er König in der Mitte stehen bleiben, wären die Engines auch viel mehr Bedacht darauf, hier einen anständigen Schutz durch Bauern zu realisieren.

Es wäre schon interessant:
Würde man den Engines Erönnungsvorgaben bieten, die auf die Grundstellung hinauslaufen, aber ohne sämtliche Rochaderechte (Sprnger vor, Turm hin- und herbewegen, Springer zurück), würden sie die Eröffnung dann ggf. doch deutlich anders behandeln?
Parent - - By Florian Wieting Date 2020-04-13 18:02
Hallo, Benno,

du gehst in deiner Argumentation von der Voraussetzung aus, dass die Rochaden grundsätzlich von Vorteil seien. Für menschliche Spieler psychologisch verständlich, weil der König vorläufig in Sicherheit ist.
Meine These stellt aber die Frage, ob die neuronalen Netze uns vielleicht belehren könnten, dass dieser Schutz des Königs, speziell im Eröffnungsabschnitt einer Partie, von menschlichen Spielern  überschätzt wird, zumal es einem Anfänger mit als erste Regel eingehämmert wird, er möge doch bitte rechtzeitig rochieren.
Extrem ausgedrückt: Ist die Ausführung einer Rochade in der Eröffnung ein verlorenes Tempo?

Viele Grüße
Florian
Parent - - By Benno Hartwig Date 2020-04-13 18:48

> du gehst in deiner Argumentation von der Voraussetzung aus, dass die Rochaden grundsätzlich von Vorteil seien.


Tue ich das?
Zunächst mal gehe ich davon aus, dass Engines vergleichsweise sehr häufig über genau den Rochadezug nachdenken müssen, sehr viel häufiger als die allermeisten Springer, Turm und Läuferzüge, die im Spiel vorkommen!
Einfach weil genau dieser Zug vergleichsweise häufig auf dem Brett angeboten ist.
_Das_ soll bitte gern mein Argument sein.

Darüber hinaus bin aber auch überzeugt davon, da hast du Recht, dass es wertvoll ist, dann, wenn der König noch in der Mitte steht, diese Rochademöglichkeiten noch zu haben. Sie bietet die Chance, mit einem Zug die Situation auf dem Brett doch sehr grundsätzlich zu ändern. Und sie erweist sich mit recht großer Wahrscheinlichkeit noch als ein sehr guter Zug.

Zu deiner Frage "Wert der Rochade überschätzt?":
Man könnte ja mal einen Satz Eröffnungen basteln, bei dem eine Seite keine Roche hat, die andere aber schon. Mal sehen was dabei herauskäme.
Basis wäre dann die Zugfolge unten.
Ich erwarte da schon einen sehr deutliche Vorteil für die Seite mit Rochaderecht.
(Welche GUI kann damit gut umgehen? Arena hat, so war mal mein Eindruck, damit tatsächlich Probleme. Richtig?)

Event:
Ort:
Datum:

Weiss:
Schwarz:

Ergebnis
Board
Parent - By Florian Wieting Date 2020-04-13 19:14
Bitte nichts basteln, sondern den neuronalen Netzen einfach ausreichend Zeit lassen, ihre eigenen Strategien zu entwickeln.
Leider habe ich mit GTX 1050 und GTX 950M keine Chance, eigene Tests in akzeptabler Zeitspanne durchzuführen.
Aber mein Scherflein trage ich bei lczero.org bei, indem ich den Client für Lc0 starte. Mehr als ca. 400 Partien pro Tag kann ich aber nicht beisteuern.
Parent - - By Michael Scheidl Date 2020-04-14 09:58
Zitat:
Basis wäre dann die Zugfolge unten.

Ich probiers jetzt nicht überall aus, aber die FEN

rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w kq - 0 1

als Vorgabe- bzw. Startstellung müßte genügen. Nur "kq" anstatt "KQkq" bedeutet daß Weiß keine Rochaderechte mehr hat.
Parent - By Benno Hartwig Date 2020-04-14 11:12 Edited 2020-04-14 11:15
Nach meiner Erinnerung spinnt Arena bei Vorgaben mit PGN-Dateien.
Wenn eine Seite ein Rochaderecht aufgrund der Zugfolge nicht mehr hat, so wird dies der Engine nicht mitgeteilt. In der Folge will die Engine oft die Rochade ausführen und die GUI wertet dann "illegaler Zug: Partie verloren!"


Aber bei EPD-Dateien (da drin steckt ja jeweils eine Liste von FEN-Zeilen, also Positionen, die auch die Rochaderechte beschreiben. So wie du es ja auch beschriebst) gibt es solch ein Problem nicht, soweit ich weiß zumindest.

Ich habe da gerade mal einen Testlauf gestartet...
Parent - - By Walter Knobloch Date 2020-04-14 13:33 Edited 2020-04-14 13:48
Insgesamt ist während des bisherigen Training zu beobachten, daß Leela die menschliche Eröffnungstheorie ziemlich gut nachbildet.
Manche Eröffnungen gefallen ihr zwar nicht so gut, aber dennoch ist es erstaunlich wie tief viele Hauptvarianten im Training bestätigt werden.
Dabei ist bisher nicht aufgefallen, daß sie weniger gern rochiert als die menschliche Eröffnungstheorie.

Es ist lediglich zu beobachten, daß sie GANZ am Anfang des Trainings ein bisserl braucht, um den Wert der Rochade schätzen zu lernen.
Aber natürlich wird man auch Eröffnungsvarianten finden, in denen Menschen bisher "automatisch" rochiert haben, obwohl es gute oder bessere Alternativen gab.
Aktuell ist ein interaktives Visualisierungstool in Arbeit, das die Suche und damit vielleicht auch die Vorliebe für bestimmte Stellungen veranschaulichen soll.
Das könnt ihr dann aus der Anfangsstellung oder aus Stellungen in denen der Wert der Rochade zur Diskussion steht, laufen lassen und vielleicht Erkenntnisse sammeln.

Preview: https://gifyu.com/image/lkXC
Parent - - By Florian Wieting Date 2020-04-14 15:10
Walter Knobloch schrieb:

[...]
Aber natürlich wird man auch Eröffnungsvarianten finden, in denen Menschen bisher "automatisch" rochiert haben, obwohl es gute oder bessere Alternativen gab.
[...]


Genau diese Fälle meine ich! Gezogen wird, weil es halt schon immer in der Eröffnungstheorie so steht.
Die Frage ist eben, wie häufig tritt das auf.
Parent - - By Walter Knobloch Date 2020-04-14 20:15
Das einzige was man tun könnte, wäre eine Partiendatenbank nach Stellungen zu filtern, in denen in der Mehrzahl der Partien rochiert wurde.
Wüßte zwar nicht, was man statistisch damit dann konkret anfangen könnte, aber man könnte sicher einen netten Artikel drüber schreiben, indem man einige schöne Beispiele präsentiert, in denen Leela eben klar einen anderen Zug präferiert.
Das würde allerdings nicht heißen, daß Leela grundsätzlich weniger rochiert. Wäre aber sicher unterhaltsam. Würde auch sicher im Leela-Blog veröffentlicht, wenn der Autor das möchte .
Parent - - By Florian Wieting Date 2020-04-14 20:47
Ich will mir nach Abschluss des TCEC-Finales mal die 100 Langpartien ein bisschen diesbezüglich filtern, zu welchem Zeitpunkt die Engines schwerpunktmäßig rochiert haben, wenn es keine Eröffnungsvorgabe war.
Leider habe ich nur Scid zur Verfügung und dort ist die Suche nach Rochaden durch "wKg1, wKc1, sKg8 und sKc8" definiert, das sind aber Königszüge, die auch außerhalb der Rochaden immer mal wieder auftreten. Ich habe es gestern Abend mal ausprobiert.
Und die ChessBase besitze ich nicht.
Aber in der Ruhe liegt die Kraft.
Parent - - By Michael Scheidl Date 2020-04-15 03:18
Nebenbemerkung, was die lange Rochade betrifft glaube ich seit jeher bei AB-Engines einen Widerwillen dagegen zu orten. Kann es aber nicht statistisch belegen.
Parent - - By Benno Hartwig Date 2020-04-15 07:04
Ich fand die große Rochade auch immer etwas weniger attraktiv und dabei auch schwerfälliger.
Denn der König bleibt etwas mehr in der Mitte und es muss auch noch die Dame Platz gemacht haben.
Mich wundert es da nicht, dass die große Rochade seltener gespielt wird.

Interessant wäre natürlich ein Vergleich der Häufigkeiten bei
- AB-Engines
- NN-Engines
- Menschen
   (gibt es hier signifikante Unterschiede bei verschiedenen Spielstärken?)
Parent - By Hauke Lutz Date 2020-04-15 09:45
Die Rochaderegel den König nur 2 Felder ziehen zu dürfen und mit dem König nicht an beiden Flügeln ganz zum Turm zu dürfen macht die große Rochade leider wirklich schwieriger zu spielen.
Parent - By Wolfram Bernhardt Date 2020-04-18 15:55
Dazu gibt es eine Anekdote:

In einem 1784 in Stockholm erschienenem Schachwerk stand: "Starke Spieler  rochieren  nie."
22 Jahre später hiess es in eine Neuaflage: "Starke  Spieler rochieren selten."

Ist ja ganz spannend, ob durch machine learning herauskommt, dass die Rochade eigentlich nicht wirklich nützlich oder empfehlenswert ist.

Ich kann es mir eigentlich nicht vorstellen, lasse mich aber gerne eines Besseren... überraschen.

Grüße
     Wolfram
- - By Benno Hartwig Date 2020-04-15 09:34 Edited 2020-04-15 09:53
Um mal eine Vorstellung vom Wert des Rochaderechts zu erhalten, habe ich einen aktuellen SF 300 mal gegen sich selbst antreten lassen.
Per epd-Datei habe ich die Vorgabestellungen angeboten, bei denen jede Seite aus der Grundstellung heraus zwei Bauern um ein Feld nach vorn bewegt hatte. Weiß hatte aber jeweils kein Rochaderecht mehr.  Auf meinem i5 habe ich mit 1 Thread flotte Partien 2'+1'' spielen lassen.

Heraus kam folgende recht deutliche Überlegenheit von schwarz:

Games        :    300 (finished)
White Wins   :     28 ( 9.3 %)
Black Wins   :    103 (34.3 %)
Draws        :    169 (56.3 %)
White Perf.  :     37.5 %
Black Perf.  :     62.5 %

Das Rochaderecht ist also beispielsweise deutlich mehr wert als der Anzugvorteil.
Ich vermute auch, dass irgendein Mehrbauer für schwarz sich _nicht_ so deutlich auswirken würde. Richtig?
Parent - - By Michael Scheidl Date 2020-04-15 15:45
Zitat:
bei denen jede Seite aus der Grundstellung heraus zwei Bauern um ein Feld nach vorn bewegt hatte

Wenn ich richtig rechne, gibts dafür symmetrisch 28 und asymmetrisch somit 784 verschiedene Stellungen. Wenn Du 150 genommen hast wie ich annehme, muß das irgendeine Auswahl sein, vielleicht mit zusätzlichen Kriterien?

Jedenfalls kommt mir die Auswirkung des fehlenden Rochaderechts im Resultat spontan viel zu groß vor.
Parent - - By Benno Hartwig Date 2020-04-15 18:15 Edited 2020-04-15 18:38
Ja, 784 Positionen sind in der epd-Datei.
Arena habe ich dann gesagt "Aus PGN/EPD-Datei laden, zufällig"
hm, das heißt "fast" (naja), denn die 130 ersten Partien wurde die Datei noch sequentiell abgearbeitet. 
Vielleicht sollte ich den Lauf auch wiederholen, von vorn bis hinten zufällig.

Im Moment habe ich einen weiteren Lauf gestartet, bei dem weiß nur auf die kleine Rochade verzichten muss. (definitiv "zufällig")
Zu erwarten ist also ein nur kleinerer Vorteil für schwarz.
Nach 132 Partien steht da jetzt genau ausgeglichen, gar kein schwarz-Vorteil im Moment.
Das könnte ein Hinweis sein, dass deine Vermutung zutrifft, dass der Vorteil tatsächlich eher kleiner sein sollte.
Ich lasse es weiterlaufen.
Und wiederhole es dann mit dem Verzicht auf nur die große Rochade für weiß.
Parent - - By Benno Hartwig Date 2020-04-16 13:23 Edited 2020-04-16 14:12
300 Partien sind jetzt gespielt, weiß jeweils ohne das Recht auf die kleine Rochade.
Sämtliche Startstellungen sind zufällig aus den 784 Stellungen gewählt:

Games        :    300 (finished)
White Wins   :     45 (15.0 %)
Black Wins   :     69 (23.0 %)
Draws        :    186 (62.0 %)
White Perf.  :     46.0 %
Black Perf.  :     54.0 %


Auch so schon erhält Schwarz (der ja beide Rochaden spielen darf) einen recht deutlichen Vorteil.
Parent - - By Benno Hartwig Date 2020-04-17 23:41
Wenn Weiss nur auf die große Rochade verzichten muss, wiegt dies nicht einmal den Anzugvorteil auf:

Games        :    300 (finished)
White Wins   :     57 (19.0 %)
Black Wins   :     47 (15.7 %)
Draws        :    196 (65.3 %)
White Perf.  :     51.7 %
Black Perf.  :     48.3 %
Parent - By Florian Wieting Date 2020-04-18 01:20
Nochmals danke!
Parent - - By Benno Hartwig Date 2020-04-19 06:27
Um zu sehen, wie groß der Anzugvorteil unter diesen Bedingungen (also rein zufällige Wahl aus den 784 Eröffnungsstellungen) ist, habe ich den Lauf wiederholt, ohne dass irgendein Rochaderecht eingeschränkt war:

Games        :    300 (finished)
White Wins   :     65 (21.7 %)
Black Wins   :     44 (14.7 %)
Draws        :    191 (63.7 %)
White Perf.  :     53.5 %
Black Perf.  :     46.5 %

Den Lauf "weiß ohne jedes Rochaderecht" wiederhole  ich, weil die Vielfalt der gewählten Eröffnungsstellungen beim ersten Lauf weniger "bunt" war als bei den anderen Durchgängen.
Parent - - By Benno Hartwig Date 2020-04-20 11:06
Den Lauf "weiß ohne jedes Rochaderecht" habe ich noch einmal wiederholt.
Die Stellungen wurden jetzt durchgängig zufällig aus der epd-Datei genommen.
heraus kam:

Games        :    300 (finished)
White Wins   :     24 ( 8.0 %)
Black Wins   :     99 (33.0 %)
Draws        :    177 (59.0 %)
White Perf.  :     37.5 %
Black Perf.  :     62.5 %
Also gleiche Quote, nur etwas anders zustande gekommen.

Die Quote von schwarz war also bei den verschiedenen Durchläufen von je 300 Partien
wenn weiß auf Rochaden verzichten muss:
ohne Rochadeverzicht            46,5%
Verzicht auf große Rochade      48,3%
Verzicht auf kleine Rochade     54,0%    
Verzicht auf beide Rochaden     62,5% (in beiden Durchgängen)

Klar, 300 Partien jeweils gestatten kaum mehr als eine grobe Sicht.
Aber dass das Recht auf die Rochaden sehr wertvoll ist, ist wohl unübersehbar. Aber ich glaube auch gar nicht, dass dies ernsthaft angezweifelt wurde.
Und auch gut zu sehen, dass das Recht auf die kleine Rochade deutlich wichtiger ist als das auf die große Rochade.
Parent - By Michael Scheidl Date 2020-04-20 12:39
Danke; ich bin über die dermaßen große Auswirkung verblüfft. Ich kann mir vorstellen daß ohne Rochaderechte die Türme zu lange in ihren Ecken herumlungern während der Gegner schon mindestens einen aktiviert...
Parent - - By Florian Wieting Date 2020-04-20 16:39
Danke für die klare und verständliche Darstellung.
So hoch hätte ich den Vorteil der Rochaden nicht eingeschätzt, muss allerdings gestehen, dass ich ein absolut lausiger Schachspieler bin.
Ohne Engines bin ich nichts!
Parent - By Detlef Uter Date 2020-04-20 22:29
Dito - also das mit dem lausigen Schachspieler 
Parent - - By Benno Hartwig Date 2020-04-23 11:34
Um mal den Vergleich zu haben zum Vorteil, den ein Mehrbauer bedeutet, habe ich einen kleinen weiteren Lauf gemacht.
300 Partien wieder, weiss und schwarz hatten jeweils 2 Bauern um ein Feld vorgerückt (unabhängig voneinander)
Bei weiß wurde dann zufällig einer der zurückgebliebenen Bauern (auf der 2. Reihe also) entfernt.
Heraus kam:

Games        :    300 (finished)
White Wins   :     14 ( 4.7 %)
Black Wins   :    181 (60.3 %)
Draws        :    105 (35.0 %)
White Perf.  :     22.2 %
Black Perf.  :     77.8 %


Solch ein Mehrbauern-Vorteil ist also noch ein gutes Stück größer als der Vorteil, der durch die Rochaderechte entsteht.
(Er ist im Übrigen tatsächlich auch größer, als ich es erwartet hatte.)
Parent - By Florian Wieting Date 2020-04-23 18:46
Wie angekündigt habe ich mir mittlerweile die Partien des TCEC-Finales angesehen.
Bei 100 Partien ist die Datengrundlage selbstverständlich extrem schmal. Aber mehr Partien kann ich mangels geeigneter Hardware nicht testen.

Dennoch zeigen die Ergebnisse eine ganz leichte Tendenz, die ich mit folgenden Zahlen andeuten möchte.
Vorgaben durch das Eröffnungsbuch habe ich komplett unberücksichtigt gelassen. Immerhin waren dort bei 50 Vorgaben 11 mal Rochaden für Weiß und 15 mal (!) für Schwarz vorgeben. In den Partien 59 und 60 wurde durch einen vorgegebenen Königszug das Rochaderecht für Schwarz aufgegeben, beide Partien endeten remis.

Lc0 sv3010 hat in 19 Partien auf die Rochaden verzichtet, davon 12 mit weiß und 7 mit schwarz.
4 Weißpartien davon gewann Lc0, 2 Schwarzpartien verlor es, 13 Partien endeten remis.

Stockfish 11 hat in 18 Partien auf die Rochaden verzichtet, davon 9 mit weiß und 9 mit schwarz.
Stockfish gewann keine dieser Partien, 5 Schwarzpartien verlor er, 13 Partien endeten remis.

Hat Lc0 nun mit 5 Punkten Vorsprung gewonnen, weil es in besonderem Maße den Anzugsvorteil nutzen konnte oder weil es das eingesparte Tempo durch den Verzicht auf eine Rochade sinnvoller einsetzen konnte?
Meine schachlichen Fähigkeiten reichen, wie bereits geschrieben, nicht aus, um das zu beurteilen.

Aufgefallen ist mir nebenbei, dass beide Programme, wenn sie rochierten, dieses recht häufig erst nach dem 12., 13.Zug machten, teilweise bei Zug 19, einmal sogar bei Zug 25.
Und bestätigen kann ich, was Robert Bauer schon anfangs geschrieben hatte, dass h4(h5) von beiden Engines frühzeitig gezogen wurde und teilweise f- und g-Bauer auch schon vorgerückt.
In diese scheinbar offene Flanke wurde dann dennoch bisweilen unbekümmert die kurze Rochade ausgeführt.
Parent - By Florian Wieting Date 2020-04-15 18:50
Hallo, Benno,

vielen Dank für deine Daten.
Dein Test hat leider einen entscheidenden Nachteil: Ich schrieb in meinen Beiträgen ausdrücklich immer von neuronalen Netzen.
Und in diese Kategorie fällt Stockfish nun gerade nicht.
Ich erkenne aber deine Zielsetzung, überhaupt erstmal eine Datengrundlage zur Beurteilung der Wertigkeit der Rochaden bei Schachprogrammen zu bekommen.

Ich habe auch noch keine schlüssige Idee, wie man in dieser Frage zu aussagekräftigen Ergebnissen kommt.
Ist es besser, ein gut SELBST-trainiertes Netz mit nur einem (oder wenigen) Knoten rechnen zu lassen?
Oder nimmt man lieber eine sehr gute GPU, die ausreichend tief sucht? (.... die ich nicht besitze.)

Viele Grüße
Florian
Up Topic Hauptforen / CSS-Forum / Neuronale Netze und Rochade

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill