Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / 29 Engines gegen Leela Chess Zero
- - By Walter Eigenmann Date 2019-08-24 17:35 Upvotes 2
Ich habe meinen AMD-Ryzen7-2700X (inkl. RTX2080-GPU) mal ein paar Tage lang beschäftigt mit einem Engines-Turnier
(2m+2s, PermanentBrain on, mit einem 5-moves-Book von M. Scheidl) und 33 Teilnehmern, die insgesamt 1056 Partien ausspielten.

Bewusst wurden neben vielen alten und neuen Zweit- und Drittligisten auch div. Derivate des Platzhirschen Stockfish
sowie verschiedene Networks für Leela integriert, um (schachliche) Vergleiche anstellen zu können.

Das Turnier ergab die folgende Rangliste:


In einem Report habe ich meine Eindrücke sowie ein paar TopShot-Stellungen zusammengefasst; im Fokus stand natürlich Leela Chess Zero.
Hier kann man das Ganze nachlesen und alle Games/Stellungen downloaden:
https://glarean-magazin.ch/2019/08/24/schachprogramme-das-duell-der-engine-giganten-computerschach-chess-programming/

Auf die Schnelle mal hier eine aufschlussreiche Turnier-Partie von Lc0 (41812), die im 24. Zug mit Schwarz wirklich verblüfft:

Event:
Ort:
Datum:

Weiss:
Schwarz:

Ergebnis
Board


In dieser nun entstandenen (Fast-Endspiel-)Stellung...


greift Leela NW41812 (und viele weitere aktuelle Networks) zu dem fantastischen 24... c4-c3!!

Bis jetzt habe ich noch kein anderes (Alpha-Beta-)Programm gefunden, das dieses "Bauernopfer" im Interesse maximaler Turm-Mobilität
auch nur annähernd so schnell (und mit Gewinn-Bewertung für Schwarz!) auf dem Radar hat wie Leela.

Jedenfalls: Unglaublich, was so ein 2-Minuten-Turnierchen für Schach-Diamanten zutage fördert

Gruss: Walter

.
Parent - - By Peter Martan Date 2019-08-24 18:51 Edited 2019-08-24 18:54
Walter Eigenmann schrieb:

Bis jetzt habe ich noch kein anderes (Alpha-Beta-)Programm gefunden, das dieses "Bauernopfer" im Interesse maximaler Turm-Mobilität
auch nur annähernd so schnell (und mit Gewinn-Bewertung für Schwarz!) auf dem Radar hat wie Leela.

Sehr schön, Walter, danke!

Was allerdings das Finden von 24...c3 angeht, das ist soo schwer vielleicht auch nicht, wenn man es erst mal von ...Tec8(?!) im Antwortzug genau genug unterschieden hat.
Dieser kleine feine Unterschied ist "nur", dass Weiß nach gleich...c3 nicht mehr 25.Sd2(!) antworten kann, das Rufzeichen verdient sich das nach zuerst ...Tec8, weil es dann nicht mehr so schnell gewinnt. Antwortet Weiß hingegen auf 24...Tec8 (?!) 25.Sa3 (?!), stellt 25...c3 zum Textzug um.

Und mit etwas verminderten Materialwerten, schwarzem Contempt 25cp und ICCF1 (interner MV2) hier der MZfish:

Texel 1.07 - Lc0 0.22 NW41812, Best Chess Engines August 2019 2019
r3r1k1/3b1ppp/8/1p1p4/nPpP1BP1/4P2P/P4P2/1NQ3K1 b - - 0 1

Analysis by MZfish 290719 64 POPCNT:

24...Tec8 25.Dc2 h5 26.gxh5 Lxh3 27.Sa3 Ld7
  =  (-0.30)   Tiefe: 7/7   00:00:15  161kN
...
24...Tec8 25.Sd2 c3 26.Sb3 Tc4 27.Dc2 Txb4 28.Ld6 Tc4 29.a3 h5 30.f3 Tc6 31.Le7 Te6 32.Lg5 Tg6 33.Lf4 Tc6 34.gxh5 Sb6 35.e4 dxe4 36.Sc5 Txa3 37.Lc1 Ta1 38.Dxc3
  -/+  (-1.17)   Tiefe: 22/35   00:00:18  56430kN
24...c3 25.Sa3 Tec8 26.Sc2 Sb6 27.a3 h5 28.f3 Sc4 29.Kf2 Ta6 30.gxh5 Lf5 31.Kg3 Te8 32.Lg5 f6 33.e4 dxe4 34.Se3 Le6 35.Lf4 Sxe3 36.Dxe3 exf3 37.Dxc3 Tea8 38.Dc5 Txa3
  -/+  (-1.24)   Tiefe: 23/36   00:00:19  85223kN
24...c3 25.Sa3 Tec8 26.Sc2 Sb6 27.a3 h5 28.f3 Sc4 29.Kf2 Ta6 30.gxh5 Lf5 31.Kg3 Te8 32.Lg5 f6 33.e4 dxe4 34.Se3 Le6 35.Lf4 Sxe3 36.Dxe3 exf3 37.Dxc3 Tea8 38.Dc5 Txa3
  -/+  (-1.24)   Tiefe: 23/36   00:00:20  105MN
...
24...c3 25.Sa3 Tec8 26.Sc2 Sb2 27.a3 h5 28.f3 Sc4 29.Kf2 Ta6 30.Kg2 Tca8 31.Kg3 hxg4 32.hxg4 f6 33.Dd1 Le8 34.Dd3 g5 35.Lc7 Kg7 36.f4 Tc8 37.La5 gxf4+ 38.exf4 Te6 39.Df3 Lf7 40.g5 fxg5 41.Dg4 Th8 42.Lc7 Th1
  -+  (-1.80)   Tiefe: 30/46   00:00:56  838MN
...
24...c3 25.Dc2 Ta6 26.Kh2 Tc8 27.Kg3 Sb2 28.f3 Tc4 29.e4 dxe4 30.fxe4 Tac6 31.d5 Tc8 32.Sa3 Txb4 33.De2 Te8 34.De3 Ta4 35.Dxc3 b4 36.Dxb2 Txa3+ 37.Kg2 Txe4 38.Dc2 Txf4 39.Dc7 Txa2+ 40.Kg3 Te4 41.Dxd7 Ta8 42.Db7 Tae8 43.d6 Td4 44.Dc7 h6 45.d7 Te3+ 46.Kf2 Ted3 47.Db8+ Kh7 48.Kg2 Txd7 49.Dxb4 Td2+ 50.Kf1
  -+  (-2.29)   Tiefe: 34/59   00:04:29  5103MN

MV2 hilft natürlich allen Engines hier, schneller "fündig" zu werden. Die übrigen Parameter von MZfish wären nicht wirklich notwendig, bei mehreren Versuchen, um das MP- Glück statistisch etwas aufzufächern, hilft's mal mehr, mal weniger.

Noch ein einzelner Versuch mit Cfish und MV2, alle anderen Parameter default, Syzygys aus:

Tiefe 27, nach 1 Minute:

r3r1k1/3b1ppp/8/1p1p4/nPpP1BP1/4P2P/P4P2/1NQ3K1 b - - 0 1

Analysis by CfishR 050819 x64 POP NL:

1. -/+  (-1.41): 24...Tec8 25.Sa3 f6 26.Lg3 c3 27.Sc2 Sb6 28.a3 Sc4 29.Kg2 Le8 30.f4 f5 31.Le1 Ta6 32.e4 fxe4 33.Lf2 Sb2 34.Df1 Sd3 35.Le3 Tf6 36.f5 h6 37.Da1 Tc4 38.Dd1
2. -/+  (-1.21): 24...c3 25.Sa3 Tec8 26.Sc2 Sb2 27.a3 h5 28.f3 Sc4 29.Kf2 hxg4 30.hxg4 f6 31.Dd1 Sxa3 32.Sxa3 Txa3 33.Dc2 Tc4 34.Dg6 Ta7 35.e4 c2 36.Lc1 dxe4 37.Dxe4 Kf7 38.Dd5+ Ke7 39.De4+ Kd8 40.Ke2 Ta1 41.Kd2 Kc8

Tiefe 30 nach anderthalb:

r3r1k1/3b1ppp/8/1p1p4/nPpP1BP1/4P2P/P4P2/1NQ3K1 b - - 0 1

Analysis by CfishR 050819 x64 POP NL:

1. -+  (-1.76): 24...c3 25.Sa3 Tec8 26.Sc2 Sb2 27.a3 h5 28.f3 hxg4 29.hxg4 Sc4 30.Kf2 f6 31.Dd1 g5 32.Lg3 Le8 33.f4 Sd2 34.Dh1 Se4+ 35.Kg2 Kg7 36.f5 Ta6 37.Da1 Ld7 38.Da2 Tc4 39.Db1 Ta8 40.Le1 Tac8 41.Lg3 Td8 42.Da1 Ta8 43.Dh1 Th8
2. -/+  (-1.58): 24...Tec8 25.Sd2 c3 26.Sb3 Tc4 27.Dc2 Txb4 28.a3 Tc4 29.Ld6 h5 30.f3 Tc6 31.Le7 hxg4 32.hxg4 Te6 33.Lg5 Le8 34.Dd3 Tc6 35.Le7 c2 36.Sc1 Te6 37.Lb4 Tc8 38.Db3 Tc4 39.Kg2 Ld7 40.Ld2 Td6 41.Se2 Ta6 42.Lc1 Tf6 43.Sf4 Sb6 44.Dd3 Th6

Hätte natürlich für diesen Output lieber (z.B.) das Shredder- GUI nehmen sollen, weil Fritz keine Zeit- und Tiefenangaben im MV ausgibt.
Parent - - By Walter Eigenmann Date 2019-08-24 20:09
Peter Martan schrieb:

Walter Eigenmann schrieb:

Bis jetzt habe ich noch kein anderes (Alpha-Beta-)Programm gefunden, das dieses "Bauernopfer" im Interesse maximaler Turm-Mobilität
auch nur annähernd so schnell (und mit Gewinn-Bewertung für Schwarz!) auf dem Radar hat wie Leela.

Sehr schön, Walter, danke!
Was allerdings das Finden von 24...c3 angeht, das ist soo schwer vielleicht auch nicht, wenn man es erst mal von ...Tec8(?!) im Antwortzug genau genug unterschieden hat.
Dieser kleine feine Unterschied ist "nur", dass Weiß nach gleich...c3 nicht mehr 25.Sd2(!) antworten kann, das Rufzeichen verdient sich das nach zuerst ...Tec8, weil es dann nicht mehr so schnell gewinnt. Antwortet Weiß hingegen auf 24...Tec8 (?!) 25.Sa3 (?!), stellt 25...c3 zum Textzug um.
Und mit etwas verminderten Materialwerten, schwarzem Contempt 25cp und ICCF1 (interner MV2) hier der MZfish: [...]

Aber natürlich, Peter, wenn man den Schnabel des blinden Huhnes genug häufig auf den Boden drückt, findet auch es mal ein Korn...
Wir können aber festhalten, dass kein Alpha-Beta-Programm dieses frappante 24.... c3 in einer Partie fände - ausser die KI-Leela & Co.

Gruss: Walter
Parent - By Peter Martan Date 2019-08-24 21:52 Edited 2019-08-24 22:42
Walter Eigenmann schrieb:

Wir können aber festhalten, dass kein Alpha-Beta-Programm dieses frappante 24.... c3 in einer Partie fände - ausser die KI-Leela & Co.

Naja, wenn du das so festhalten willst, Walter, halte das mal ruhig so fest.
Ich hätte halt gesagt, z.B. MZfish mit ICCF1 (kann man ja auch im Spielmodus wählen) (in Arena kann man übrigens alle Engines im MV- Modus spielen lassen, wenn man das in den Engine- Optionen so definiert) würde das, wenn er es mit leerem Hash gestartet in 19 Sekunden findet, (mit den übrigen Parametern default war's 1 Minute bei einem einzelnen Gegenversuch) auch im Spiel erst recht finden, wenn die TC nicht allzu kurz gewählt wäre.


P.S. Einen hab' ich noch, einen hab' ich noch.
Cfish von "RomeoA28" aus dem MZ Forum hat eine stufenweise Taktik-Code-Parametrisierung hinzugefügt bekommen, 0 ist Minimum, 100 Max., hier ist "Tactical New" 10, alles andere default, also zum Spielen durchaus gut geeignet, wird nicht viel Elo kosten, je nach Eröffnungen und Gegnerfeld:

r3r1k1/3b1ppp/8/1p1p4/nPpP1BP1/4P2P/P4P2/1NQ3K1 b - - 0 1

Analysis by CF EXT 010719 x64 POP N:

24...f6 25.Dc2 g6 26.Kg2 Kf7 27.Lg3
  =  (-0.29)   Tiefe: 7/6   00:00:15  42kN
24...c3 25.Dc2 Tac8 26.Le5 Tc4 27.Ld6 Te6
  =/+  (-0.62)   Tiefe: 8/7   00:00:15  50kN
24...Tec8 25.f3 Le8 26.Lg3 f6 27.Le1 c3 28.Sxc3 Sxc3 29.Lxc3
  =  (-0.18)   Tiefe: 9/10   00:00:15  95kN
...
24...Tec8 25.Dc2 Ta6 26.Sd2 Sb6 27.Sb1 c3 28.f3 Sa4 29.Lg3 Te6 30.Lf2 Tc4 31.a3 f6 32.Kg2 Le8 33.f4 Te4 34.Dc1 h5 35.Le1 hxg4 36.hxg4
  -+  (-1.63)   Tiefe: 23/34   00:00:19  74752kN
24...c3
  -+  (-1.72 ++)   Tiefe: 24/35   00:00:20  96917kN
24...c3
  -+  (-1.82 ++)   Tiefe: 24/35   00:00:20  108MN
24...c3 25.Sa3 Tec8 26.Sc2 h5 27.f3 Sb2 28.a3 Sc4 29.gxh5 Lf5 30.Kf2 f6 31.Kg3 Kf7 32.h4 Lh7 33.Db1 Txa3 34.e4 Ta6 35.Dh1 Te8 36.h6 dxe4 37.hxg7 exf3
  -+  (-1.85)   Tiefe: 24/35   00:00:21  119MN
...
24...c3 25.Sa3 Tec8 26.Sc2 Sb6 27.a3 Sc4 28.Kg2 h5 29.Kg3 Ta6 30.f3 hxg4 31.hxg4 f6 32.e4 dxe4 33.fxe4 Le8 34.Dd1 Sxa3 35.Dd3 Sxc2 36.Dxc2 Ta1 37.Kh2 Lg6 38.Kg3 Tc4
  -+  (-2.01)   Tiefe: 28/45   00:00:37  435MN
...
24...c3 25.Dc2 Tec8 26.a3 Ta6 27.Kg2 Tc4 28.f3 h5 29.Lg3 Te6 30.Lf2 hxg4 31.hxg4 f6 32.Le1 Txe3 33.Kf2 Te6 34.Sxc3 Txe1 35.Kxe1 Txc3 36.Da2 Sb6 37.Dh2 Tc1+ 38.Kd2 Tc6 39.Ke1 Sc8 40.Kd1 Sd6 41.Df4 Kf7 42.Dh2 g5 43.Ke1 Le8 44.Dh7+ Ke6 45.Dd3 Tc1+ 46.Kf2 Ta1 47.Kg2 Ta2+ 48.Kf1
  -+  (-2.90)   Tiefe: 32/56   00:02:42  3130MN
Parent - - By Peter Martan Date 2019-08-24 21:46 Edited 2019-08-24 21:54
Peter Martan schrieb:

Hätte natürlich für diesen Output lieber (z.B.) das Shredder- GUI nehmen sollen, weil Fritz keine Zeit- und Tiefenangaben im MV ausgibt.

Hab ich dann für komodo 13.1 MCTS gemacht:

20   1:50   -0.66   24...Tac8 25.Dc2 (13.585) 0  TB:364
20   1:50   -0.55   24...Ted8 25.f3 (13.585) 0  TB:364
20   1:50   -0.64   24...Ta7 25.f3 Tc8 (13.585) 0  TB:364
20   1:50   -0.55   24...h5 25.gxh5 Ta6 (13.585) 0  TB:364
20   1:50   -0.40   24...f5 25.f3 (13.585) 0  TB:364
20   1:50   -0.61   24...Tf8 25.Dc2 (13.585) 0  TB:364
20   1:50   -0.39   24...g6 25.f3 (13.585) 0  TB:364
-----
20   1:52   -1.03   24...Tec8 25.Sd2 Le8 26.e4 c3 27.Sb3 dxe4 28.Sc5 Sb6 29.Dxc3 Txa2 30.De1 Lc6 (13.785) 0  TB:364
20   1:52   -1.14   24...c3 25.Sa3 Tec8 26.Sc2 h5 27.f3 hxg4 (13.785) 0  TB:364
20   1:52   -0.80   24...Ta6 25.Sd2 f6 26.a3 (13.785) 0  TB:364
20   1:52   -0.78   24...Te6 25.Sd2 Tea6 (13.785) 0  TB:364
20   1:52   -0.71   24...f6 25.Dc2 Ta6 (13.785) 0  TB:364
20   1:52   -0.66   24...Tac8 25.Dc2 (13.785) 0  TB:364
20   1:52   -0.55   24...Ted8 25.f3 (13.785) 0  TB:364
20   1:52   -0.64   24...Ta7 25.f3 Tc8 (13.785) 0  TB:364
20   1:52   -0.55   24...h5 25.gxh5 Ta6 (13.785) 0  TB:364
20   1:52   -0.40   24...f5 25.f3 (13.785) 0  TB:364
20   1:52   -0.61   24...Tf8 25.Dc2 (13.785) 0  TB:364
20   1:52   -0.39   24...g6 25.f3 (13.785) 0  TB:364
-----
-----
21   3:08   -1.03   24...Tec8 25.Sd2 Le8 26.e4 c3 27.Sb3 dxe4 28.Sc5 Sb6 29.Dxc3 Txa2 30.De1 Lc6 (23.607) 0  TB:608
21   3:08   -1.29   24...c3 25.Sa3 h6 26.Kh2 Tec8 27.Sc2 Sb6 28.a3 Tc6 29.Dh1 (23.607) 0  TB:608
21   3:08   -0.80   24...Ta6 25.Sd2 f6 26.a3 (23.607) 0  TB:608
21   3:08   -0.78   24...Te6 25.Sd2 Tea6 (23.607) 0  TB:608
21   3:08   -0.71   24...f6 25.Dc2 Ta6 (23.607) 0  TB:608
21   3:08   -0.66   24...Tac8 25.Dc2 (23.607) 0  TB:608
21   3:08   -0.55   24...Ted8 25.f3 (23.607) 0  TB:608
21   3:08   -0.40   24...f5 25.g5 Tec8 (23.607) 0  TB:608
21   3:08   -0.64   24...Ta7 25.f3 Tc8 (23.607) 0  TB:608
21   3:08   -0.55   24...h5 25.gxh5 Ta6 (23.607) 0  TB:608
21   3:08   -0.61   24...Tf8 25.Dc2 (23.607) 0  TB:608
21   3:08   -0.49   24...h6 25.Dc2 (23.607) 0  TB:608
-----
21   3:10   -1.28   24...c3 25.Sa3 h6 26.Kh2 Tec8 27.Sc2 Sb6 28.a3 Tc6 29.Dh1 (23.860) 0  TB:612
21   3:10   -1.03   24...Tec8 25.Sd2 Le8 26.e4 c3 27.Sb3 dxe4 28.Sc5 Sb6 29.Dxc3 Txa2 30.De1 Lc6 (23.860) 0  TB:612
21   3:10   -0.80   24...Ta6 25.Sd2 f6 26.a3 (23.860) 0  TB:612
21   3:10   -0.78   24...Te6 25.Sd2 Tea6 (23.860) 0  TB:612
21   3:10   -0.71   24...f6 25.Dc2 Ta6 (23.860) 0  TB:612
21   3:10   -0.66   24...Tac8 25.Dc2 (23.860) 0  TB:612
21   3:10   -0.55   24...Ted8 25.f3 (23.860) 0  TB:612
21   3:10   -0.40   24...f5 25.g5 Tec8 (23.860) 0  TB:612
21   3:10   -0.64   24...Ta7 25.f3 Tc8 (23.860) 0  TB:612
21   3:10   -0.55   24...h5 25.gxh5 Ta6 (23.860) 0  TB:612
21   3:10   -0.61   24...Tf8 25.Dc2 (23.860) 0  TB:612
21   3:10   -0.49   24...h6 25.Dc2 (23.860) 0  TB:612
-----
-----
21   4:00   -1.28   24...c3 25.Sa3 Tec8 26.Sc2 h5 27.f3 hxg4 28.hxg4 Sb2 29.a3 Sc4 30.Da1 (29.721) 0  TB:704
21   4:00   -1.03   24...Tec8 25.Sd2 Le8 26.e4 c3 27.Sb3 dxe4 28.Sc5 Sb6 29.Dxc3 Txa2 30.De1 Lc6 (29.721) 0  TB:704
21   4:00   -0.80   24...Ta6 25.Sd2 f6 26.a3 (29.721) 0  TB:704
21   4:00   -0.78   24...Te6 25.Sd2 Tea6 (29.721) 0  TB:704
21   4:00   -0.71   24...f6 25.Dc2 Ta6 (29.721) 0  TB:704
21   4:00   -0.67   24...Ted8 25.f3 (29.721) 0  TB:704
21   4:00   -0.67   24...Tac8 25.Sa3 c3 (29.721) 0  TB:704
21   4:00   -0.39   24...f5 25.g5 Tec8 (29.721) 0  TB:704
21   4:00   -0.66   24...Ta7 25.f3 Tc8 (29.721) 0  TB:704
21   4:00   -0.55   24...h6 25.Dc2 (29.721) 0  TB:704
21   4:00   -0.56   24...h5 25.gxh5 Ta6 26.Sa3 (29.721) 0  TB:704
21   4:00   -0.62   24...Tf8 25.Dc2 Ta6 (29.721) 0  TB:704
-----
24     11:14  -1.42    24...c3 25.Sa3 Tec8 26.Sc2 h5
                       27.gxh5 Lf5 28.f3 Lh7 29.e4 dxe4
                       30.fxe4 Lxe4 31.d5 Tc4 32.d6 Lxc2
                       33.Le5 f6 34.Dxc2 fxe5 35.h6 Th4 (83.482) 0
                       TB:6.861
24     11:14  -1.03    24...Tec8 25.Sd2 Le8 26.e4 c3 27.Sb3 dxe4
                       28.Sc5 Sb6 29.Dxc3 Txa2 30.De1 Lc6 (83.482) 0
                       TB:6.861
24     11:14  -0.80    24...Ta6 25.Sd2 f6 26.a3 (83.482) 0
                       TB:6.861
24     11:14  -0.79    24...Ted8 25.Sd2 Tdc8 (83.482) 0
                       TB:6.861
24     11:14  -0.79    24...Tac8 25.Sa3 c3 26.Kh2 (83.482) 0
                       TB:6.861
24     11:14  -0.78    24...Te6 25.Sd2 Tea6 (83.482) 0
                       TB:6.861
24     11:14  -0.56    24...f5 25.g5 Tec8 26.Dc2 (83.482) 0
                       TB:6.861
24     11:14  -0.69    24...f6 25.Dc2 Ta6 (83.482) 0
                       TB:6.861
24     11:14  -0.61    24...h6 25.Sd2 Tec8 26.Dc2 (83.482) 0
                       TB:6.861
24     11:14  -0.68    24...Ta7 25.f3 Tc8 26.h4 (83.482) 0
                       TB:6.861
24     11:14  -0.65    24...Tf8 25.Dc2 Ta6 (83.482) 0
                       TB:6.861
24     11:14  -0.50    24...h5 25.gxh5 Ta6 26.Kh2 Tea8 (83.482) 0
                       TB:6.861

Die tbs hätte ich abdrehen sollen, hätte vielleicht noch ein bisschen time to solution gebracht.
24 Threads der 12x3GHz CPU, 32G Hash, 8G MTCS- Hash, 12 MV mit leerem Hash gestartet.

Ist komodo MCTS eigentlich noch eine A-B-Engine?

Ein einzelner Gegenversuch im Single Variant Mode hat 7 Minuten time to solution gehabt.
Parent - - By Walter Eigenmann Date 2019-08-24 21:58
Cooler Content, Peter.
Ja, ist Komodo MCTS eigentlich eine AlphaBeta-, eine KI- oder eine Hybrid-Engine? Oder nix von alledem?
Aus den Werbesprüchen hier...
https://komodochess.com/Komodo13.htm
... wird man so schlau nicht sofort.

Sehr viel interessanter ist dieses hier:
https://de.chessbase.com/post/monte-carlo-statt-alpha-beta

Möglicherweise eröffnet Komodo wirklich einen dritten wichtigen Hauptstrang!?
Wir behalten's eh im Auge

Gruss:
Parent - By Peter Martan Date 2019-08-24 23:10 Edited 2019-08-24 23:32
Walter Eigenmann schrieb:

Möglicherweise eröffnet Komodo wirklich einen dritten wichtigen Hauptstrang!?

Die Frage wird eher sein, welche der vielen Stränge sind mittlerweile Hauptstränge und überhaupt "eigenständige" Stränge.
So gesehen kann man jeden der vielen SF- Stränge (Sting, Matefinder, zu dem hat sein Autor Joseph Ellis jetzt noch einen Crystal hinzugefügt, Marco Zerbinatis SugaR und andere Stockfische mit Lernfiles, Ronald de Mans Cfish (und dessen Ableger siehe z.B. oben), CorChess, asmFish...) als Nebenstrang sehen, wenn einer davon in den mittlerweile völlig unübertragbaren Eng-Eng-Matches mal wieder die Nase vor einem bestimmten LC0-Netz, Stoofvlees, Leelafish, Antifish, Leelenstein vorn hat oder umgekehrt, macht das dann das einzelne NN oder den einzelnen Fisch zum Hauptstrang?
Oder wenn komodo auch NNs anfangen wird zu nutzen, wird diese Engine dann nicht vielleicht am Ende auch besser mit bestimmten LC0- Netzwerken scoren als mit anderen "eigenen"?
Behalte das mal nur alles schön im Auge, Walter, ich bin im Run um "Weiterentwicklung" schon lange ziemlich raus, abgesehen von Spielstärkebestimmungen, die sich jeweils auf einzelne Stellungen beschränken, einzelne Partien, einzelne Eröffnungen, maximal das lässt sich noch untereinander schlüssig vergleichen. Natürlich auch anhand einzelner Testsuites, aber so viele Stellungen beliebig großer Streuung die auch beinhalten, die Ergebnisse stehen immer mehr für sich allein, je mehr es auch bei denen darauf ankommt, mit welcher Hardware- TC man welche Engines anhand solcher Suites miteinander vergleicht, und je mehr einander auch diese Ergebnisse unter verschiedenen Bedingungen mehr oder weniger gleichen oder eben nicht, so wie man auch nur am Teilnehmerfeld etwas ändert.

Und wenn man dem Remistod im Elo- Berechnen gleich starker Teilnehmer auf halbwegs moderner Hardware und mit halbwegs vernünftigen TCs, so wie Stefan Pohl mit ganz eigenen Eröffnungstestsets begegnet, sind das ja für mich letzten Endes dann auch "nur" noch ausgespielte Stellungstests. Auch absolut nichts dagegen zu sagen, meiner Meinung nach, aber "Overall Playing Strength", möglichst in Elo gemessen, oder aber jedenfalls mit irgendeinem Anspruch auf Vergleichbarkeit mit den Elo aus anderen Matches, wenn's bei den Ergebnissen in erster Linie drauf ankommt, wer mit welcher Hardware- TC mitspielt und wer nicht?

Man muss wohl schön langsam mit einer gewissen Relativierung von Spielstärkemessungen und auch von Begriffen wie "Hauptsträngen" leben.
Parent - - By Stefan Pohl Date 2019-08-25 06:14 Edited 2019-08-25 06:18
Walter Eigenmann schrieb:

Cooler Content, Peter.
Ja, ist Komodo MCTS eigentlich eine AlphaBeta-, eine KI- oder eine Hybrid-Engine? Oder nix von alledem?
Aus den Werbesprüchen hier...
<a class='urs' href='https://komodochess.com/Komodo13.htm'>https://komodochess.com/Komodo13.htm</a>
... wird man so schlau nicht sofort.

Sehr viel interessanter ist dieses hier:
<a class='urs' href='https://de.chessbase.com/post/monte-carlo-statt-alpha-beta'>https://de.chessbase.com/post/monte-carlo-statt-alpha-beta</a>

Möglicherweise eröffnet Komodo wirklich einen dritten wichtigen Hauptstrang!?
Wir behalten's eh im Auge

Gruss:


Komodo MCTS ist keine AlphaBeta-Engine. Sondern nutzt eben MCTS anstelle der klassischen AlphaBeta-Baumsuche. Nutzt aber nachwievor die normale Komodo-Stellungsbewertung und kein NeuralNetz. Insofern könnte man das schon als "dritten Weg" zwischen klassischer Engine und Lc0 betrachten. Das Problem ist nur, daß dieser Weg eigentlich keinen Sinn macht:
Lc0 nutzt MCTS nur, weil die Bewertung von Stellungen mit dem NeuralNetz selbst auf schnellen GPUs immer noch (im Verhältnis zu den Stellungsbewertungsfunktionen klassischer Engines) extrem langsam ist. Und eine klassische AlphaBeta-Baumsuche damit so flach bliebe, daß das gegen klassische Engines, die tausendmal schneller bewerten, in eine spielerische Katastrophe führen würde (siehe das Mephisto 3-Debakel). Der MCTS-Ansatz liefert einfach mit sehr wenigen durchgerechneten Stellungen bessere Ergebnisse. Aber eben nur dort! Rechnet eine Engine sehr schnell, ist AlphaBeta-Baumsuche besser. Weswegen Komodo MCTS auch viel schwächer ist als Komodo "normal". Das Komodo-Team bewirbt deshalb das Ganze immer mit der Aussage, daß Komodo MCTS in der Multivarianten-Analyse effizienter ist, als AlphaBeta. Was auch durchaus nicht falsch ist. Da Komodo MCTS aber so viel schwächer spielt, als Komodo "nomal", wage ich aber stärkstens zu bezweifeln, daß "unter dem Strich" in der Multivarianten-Analyse bei Komodo MCTS was besseres rauskommt. Zumal bei Analysen ja auch die taktische Korrektheit wichtig ist. Und die MCTS-Suche ist diesbzlg. löchrig wie der sprichwörtliche Schweizer Käse. Daher würde ich für Analysen immer eine AlphaBeta-Baumsuche bevorzugen.
Für mich macht also Komodo MCTS keinen Sinn. Es sei denn, es würde irgendwann auch ein NeuralNetz für Komodo MCTS kommen, anstelle der klassischen Komodo-Bewertungsfunktion. Nur wäre es dann kein "dritter Weg" mehr, sondern dasselbe wie lc0.
Für mich liegt der einzige "Sinn" in Komodo MCTS darin, daß man damit versucht, die Verkäufe anzukurbeln, weil MCTS für Laien ja nach "irgendwie schon so ähnlich wie Lc0"- klingt. Und die Spielstärke von Komodo "normal" ist ja mittlerweile so weit hinter Stockfish (gratis und OpenSource!) zurückgefallen, daß man damit kaum noch einen Kauf von Komodo bewerben kann.
Parent - - By Thorsten Czub Date 2019-08-25 11:46
Es gibt kein Mephisto III Debakel. Die intelligenten Engines (B Strategie David Broughton Scisys mkv und mkVI) und Mephisto III und IIIS waren Weltmeister und durchaus in der Lage sich gegen die brute forcer ihrer Zeit durchzusetzen.
Parent - - By Frank Brenner Date 2019-08-25 14:05 Edited 2019-08-25 14:09 Upvotes 1
Es gab in der Tat kein Mephisto III Debakel.

Mephisto 3 ist jedoch nicht intelligent:

Es hat die gleiche Brute Force Suche wie damals die meisten anderen Programme und einen eher noch schlechteren Branching Faktor. Von einer B-Strategie ist also gar keine Rede.

Lediglich die Stellungsbewertung war bei Mephisto 3 anders: Während die anderen Programme (heute und früher)  die Schlagmanöver und viele anderen Taktischen Manöver am Suchhorizont   mit einer  intelligenten Suche  korrekt finden (und dabei die Knoten zählen) hat Mephisto 3 hier keine Ruhesuche durchgeführt sondern hat intern mühevoll Tabellen aufgebaut und diese dann ausgewertet, um auf diese Weise eine Ruhesuche statisch  zu approximieren. Die statische Approximation mit Tabellen war aber sehr stark lückenhaft und hat das meiste übersehen. Insbesondere bei der Appriximation von mehr als 4 Halbzügen Ruhesuche sind die Fehler in der Tabellenauswertung enorm gestiegen, so daß fast kein taktisches Manöver mehr gefunden wurde.

In den Testberichten von früher wurde das natürlich so nicht gesagt. Stattdessen wurden einzeln selektierte Stellungen ermittelt in denen Mephisto 3 mit der statischen Bewerrtung großes glück hatte und ein langes Manöver gefunden hat.
Im Durchschnitt wurde aber fast alles mit mehr als 4 Ruhezügen übersehen.

Daher sind die anderen Schachprogramme durch eine immer intelligenter programmierte  Ruhesuche sehr schnell an Mephisto 3 vorbeigezogen.

Die unübersichtliche Tabellenmechanik von Mephisto 3 konnte auch nicht mehr von Hand verbessert werden und so ist die Entwicklung dann auf niedrigem Niveau stehen geblieben.
Parent - By Thorsten Czub Date 2019-08-25 16:24
Das ist so nicht richtig.
Mephisto III hat Tabellen genutzt und vieles statisch ermittelt was andere über Ausprobieren im Suchbaum ermittelt haben,
das stimmt schon, hier hat Statik dynamische Baumsuche ersetzt.

Die Suche von Mephisto III war dreigeteilt.

Utopische, optimistische und realistische Züge wurden unterschieden.

Mit dieser dreigeteilten Suche und den statischen Abschätzungen konnte Mephisto III sehr viele Sachverhalte erkennen ohne gigantisch viele Stellungen berechnen zu müssen und große Suchbäume aufbauen zu müssen.
Programme wie Kittinger sie hatte oder Rathsmann oder andere mussten viele viele Stellungen generieren und haben in der Regel zwischen 1500 und mehr NPS berechnet. Mephisto III je nach Hardware 1-3 oder 5-10 in der 16 Bit Ausführung.

Der Suchbaum für z.B. kopec 7
ist ja genau wiedergegeben:
https://www.schach-computer.info/wiki/index.php/Mephisto_III
Parent - By Eduard Nemeth Date 2019-08-25 12:01
Danke Stefan, hast das gut erklärt für mich. Denn ich habe mich auch gefragt wo der Sinn dieser Art der MCTS Suche (ohne NN) liegen soll.
Parent - By Peter Martan Date 2019-08-26 17:59 Edited 2019-08-26 18:17
Stefan Pohl schrieb:

Lc0 nutzt MCTS nur, weil die Bewertung von Stellungen mit dem NeuralNetz selbst auf schnellen GPUs immer noch (im Verhältnis zu den Stellungsbewertungsfunktionen klassischer Engines) extrem langsam ist. Und eine klassische AlphaBeta-Baumsuche damit so flach bliebe, daß das gegen klassische Engines, die tausendmal schneller bewerten, in eine spielerische Katastrophe führen würde (siehe das Mephisto 3-Debakel). Der MCTS-Ansatz liefert einfach mit sehr wenigen durchgerechneten Stellungen bessere Ergebnisse. Aber eben nur dort! Rechnet eine Engine sehr schnell, ist AlphaBeta-Baumsuche besser. Weswegen Komodo MCTS auch viel schwächer ist als Komodo "normal". Das Komodo-Team bewirbt deshalb das Ganze immer mit der Aussage, daß Komodo MCTS in der Multivarianten-Analyse effizienter ist, als AlphaBeta. Was auch durchaus nicht falsch ist. Da Komodo MCTS aber so viel schwächer spielt, als Komodo "nomal", wage ich aber stärkstens zu bezweifeln, daß "unter dem Strich" in der Multivarianten-Analyse bei Komodo MCTS was besseres rauskommt. Zumal bei Analysen ja auch die taktische Korrektheit wichtig ist. Und die MCTS-Suche ist diesbzlg. löchrig wie der sprichwörtliche Schweizer Käse. Daher würde ich für Analysen immer eine AlphaBeta-Baumsuche bevorzugen.
Für mich macht also Komodo MCTS keinen Sinn.


Dieses harte Urteil möchte ich einfach anhand der der Stellung hinterfragen, um die's hier hauptsächlich ging.

Im MV- Output war komodo 13.1 im MCTS- Modus in 3 Minuten auf 24...c3 stabil.

http://forum.computerschach.de/cgi-bin/mwf/topic_show.pl?pid=124127#pid124127

Komodo default braucht ungefähr gleich lang im MV2- Modus.

Zuerst noch in Tiefe 25, nach 45", ist ...c3 an zweiter Stelle, der Evalunterschied ist noch zu gering, es fehlt die "Erkenntnis" nach 24...Tec8 25.Sd2! als beste Antwort.

840: Texel 1.07 - Lc0 0.22 NW41812, Best Chess Engines August 2019 2019
r3r1k1/3b1ppp/8/1p1p4/nPpP1BP1/4P2P/P4P2/1NQ3K1 b - - 0 1

Analysis by Komodo 13.1 64-bit:

1. -/+  (-1.52): 24...Tec8 25.Dc2 Ta6 26.e4 h5 27.exd5 Tf6 28.Le5 Tf3 29.Kg2 Td3 30.f3 hxg4 31.hxg4 f6 32.Lg3 Kf7 33.Lf2 Th8 34.Dc1 g5 35.Kg3 Ke7 36.Le3 Kd6 37.Lxg5 fxg5 38.Dxg5 Te8 39.Df6+ Kxd5 40.Df7+ Kc6 41.Df4
2. -/+  (-1.47): 24...c3 25.Ld6 Ta6 26.Lc5 h5 27.Sxc3 Sxc3 28.Dxc3 hxg4 29.h4 Lf5 30.Kg2 Txa2 31.Kg3 Tea8 32.Le7 Tc2 33.De1 Taa2 34.h5 Le4 35.Df1 Kh7 36.Ld6 Te2 37.Lf8 f5 38.Lc5 Teb2

Dann, in Tiefe 30, nach ziemlich genau 3 Min kommt ...c3 nach oben, nachdem es zwischendurch ganz aus den besten 2 raus war.
Nach einer weiteren Minute beginnen sich die Evals von ...c3 gegen die von ...Tec8 langsam abzusetzen und es kommt bei ...Tec8 als Antwortzug das 25.Sd2 in den Output, was der eigentliche Grund dafür ist, dass das Ganze nicht einfach zueinander nach 25.Sa3 umstellt.

r3r1k1/3b1ppp/8/1p1p4/nPpP1BP1/4P2P/P4P2/1NQ3K1 b - - 0 1

Analysis by Komodo 13.1 64-bit:

1. -/+  (-1.57): 24...c3 25.Sa3 Tec8 26.Sc2 Sb2 27.a3 h5 28.f3 hxg4 29.hxg4 Sc4 30.Kf2 f6 31.Kg3 Le8 32.e4 dxe4 33.fxe4 Lg6 34.e5 Ta6 35.Se1 Td8 36.exf6 gxf6 37.Sc2 Te6 38.a4 bxa4 39.b5 Te2 40.Se3 Sxe3 41.Lxe3 c2 42.b6 Te8 43.Lg1

2. -/+  (-1.46): 24...Tec8 25.Sd2 c3 26.Sb3 Tc4 27.Dc2 Txb4 28.a3 Tc4 29.Ld6 h5 30.f3 Te8 31.Kf2 Tc6 32.Lf4 hxg4 33.hxg4 Ta8 34.e4 Le6 35.Lc1 Tcc8 36.Kg3 Ta7 37.Kf4 Ta6 38.Ke3 dxe4 39.Kxe4

Vereinfacht könnte man sagen, MV2 bei komodo default entspricht in der time to solution (bei einem einzelnen Versuch, die SMP- Streuung ist hier in Wirklichkeit wahrscheinlich ziemlich groß, müsste man mit mindestens 3 Versuchen erst mal herausfinden) MV12 bei komodo MCTS. (willkürlich gewählt damals, die 12 Varianten, damit das ...c3 von Anfang an dabei geblieben ist), siehe Output im Shredder- GUI im Vorposting vom Link von mir.

Jetzt dann mal single variant.

Komodo default:

r3r1k1/3b1ppp/8/1p1p4/nPpP1BP1/4P2P/P4P2/1NQ3K1 b - - 0 1

Analysis by Komodo 13.1 64-bit:

Code:

24...f6 25.Sa3 h5
...
24...Tec8 25.Dc2 Ta6 26.Kf1 c3 27.Ke2 Tc4 28.Sa3
  =/+  (-0.55)   Tiefe: 8   00:00:02  7kN
...
24...Ta6 25.Sa3
  =/+  (-0.57 ++)   Tiefe: 11   00:00:02  83kN
...
24...Tec8 25.Dc2 Ta6
  -/+  (-0.99 ++)   Tiefe: 18   00:00:03  10906kN
...
24...Tec8 25.Dc2 Ta6 26.Sd2 Sb6 27.Sb1 c3 28.f3 Sa4 29.Lg3 Tc4 30.Le1 Tac6 31.a3 h5 32.Kf2 hxg4 33.hxg4 Th6 34.Kg2 Tc8 35.Lg3 f6 36.Lf4
  -/+  (-1.30)   Tiefe: 18   00:00:03  21741kN
...
24...Tec8 25.Sd2 c3 26.Sb3 Tc4 27.Dc2 Txb4 28.a3 Tc4 29.Kh2 Tc6 30.e4 dxe4 31.Dxe4 Te8 32.Dd3 Tf6 33.Le3 Td6 34.Dc2 Lc6 35.Dd3 h5 36.gxh5 Td5 37.Sc5 Sxc5 38.Dxc3 Txh5 39.dxc5 Te6 40.Lf4 Tg6 41.Lg3 Tgg5 42.Da5 Txc5 43.Dd8+ Kh7 44.Dd3+ g6 45.Dd2 Ld5 46.Db2 Tc6 47.h4 Tc4 48.Dxb5 Tc3
  -/+  (-1.44)   Tiefe: 40   00:19:16  23506MN
24...Tec8 25.Sd2
  -/+  (-1.38 --)   Tiefe: 41   00:21:17  25935MN
24...c3 25.Ld6 Ta6
  -/+  (-1.50 ++)   Tiefe: 41   00:21:56  26733MN
...
24...c3 25.Sa3 Tec8 26.Sc2 Sb2 27.a3 h5 28.f3 hxg4 29.hxg4 Sc4 30.Kf2 f6 31.Dg1 Ta6 32.Da1 g5 33.Lg3 Kg7 34.Dc1 Le6 35.Kg1 Lf7 36.f4 Sd2 37.e4 Sxe4 38.Kg2 gxf4 39.Lxf4 Le6 40.Df1 Ld7 41.Lc1 Th8 42.Se3 Kf7 43.Sxd5 Th4 44.Sc7 Ta4 45.Sxb5 Txg4+ 46.Kf3 Th4
  -+  (-1.90)   Tiefe: 41   00:31:04  38032MN
...
24...c3 25.Sa3 Tec8 26.Sc2 Sb2 27.a3 h5 28.f3 hxg4 29.hxg4 Sc4 30.Kf2 f6 31.Dd1 g5 32.Lg3 Le8 33.f4 Sd2 34.Kg2 Se4 35.f5 Ta7 36.Dc1 Tca8 37.Dh1 Th7 38.Dc1 Ld7 39.Se1 Lc6 40.Da1 Tha7 41.Sc2 Kf7 42.Dc1 Kg7 43.Da1 Th8 44.Se1 Ld7 45.Dc1 Tha8 46.Sc2 Ta6 47.Df1 Th8 48.Dc1 Ta4 49.Se1 Lc6 50.Da1 Tha8 51.Sc2 Tc8 52.Dc1 Ta7 53.Da1 Taa8 54.Se1 Ta6 55.Dc1 Tca8
  -+  (-2.19)   Tiefe: 48   02:27:12  178075MN


Und dann wieder MCTS:

r3r1k1/3b1ppp/8/1p1p4/nPpP1BP1/4P2P/P4P2/1NQ3K1 b - - 0 1

Analysis by Komodo 13.1 64-bit MCTS:

Code:

24...f6
  +/=  (0.54)   Tiefe: 7   00:00:02  0kN
...
24...h5 25.gxh5
  =/+  (-0.58)   Tiefe: 10/1   00:00:08  0kN
...
24...Tec8 25.Dc2 Ta6
  -/+  (-0.91)   Tiefe: 13/3   00:00:14  1kN
...
24...Tec8 25.Sa3 f6 26.Sc2 Le8 27.h4 Sb6 28.a3 Lg6 29.h5 Le4 30.Kh2
  -/+  (-1.55)   Tiefe: 22/14   00:05:30  42kN
24...c3 25.Sa3 h6 26.Kh2 Tec8 27.Sc2 Sb6 28.Da1 Sc4 29.e4 dxe4 30.d5 Sb6 31.d6 Sc4 32.a3
  -/+  (-1.55)   Tiefe: 22/15   00:05:32  42kN
...
24...c3 25.Sa3 h6 26.Sc2 h5 27.f3 Sb6 28.a3 hxg4 29.hxg4 Sc4 30.Kh1 Le6 31.Kh2 f6
  -/+  (-1.50)   Tiefe: 23/19   00:09:59  76kN
...
24...c3 25.Sa3 h6 26.Sc2 h5 27.f3 Sb6 28.a3 hxg4 29.hxg4 Sc4 30.Kg2 Le6 31.De1 Sxa3 32.Sxa3 Txa3 33.e4 dxe4 34.Dxe4 Td8
  -/+  (-1.51)   Tiefe: 24/20   00:14:23  109kN
...
24...c3 25.Sa3 h6 26.Sc2 h5 27.f3 Sb2 28.a3 hxg4 29.hxg4 Sc4 30.Kf2 Le6 31.Df1 Tec8 32.e4 dxe4 33.fxe4 Sxa3 34.d5 Ld7 35.Sd4 Tc4 36.Sf5 Lxf5 37.gxf5 Txe4 38.Kf3 Txb4 39.f6 Taa4 40.Lc1 Sc4 41.De1
  -+  (-1.82)   Tiefe: 28/33   01:33:03  713kN
...
24...c3 25.Sa3 h6 26.Sc2 h5 27.f3 Sb2 28.a3 hxg4 29.hxg4 Sc4 30.Kf2 Le6 31.Da1 Tec8 32.Kg3 Ta6 33.De1 Sxa3 34.Sa1 Ta4 35.Sb3 Txb4 36.Sc5 Tc4 37.Dh1 Te8 38.Dh5 c2 39.e4 Txd4 40.De5 Tc4 41.Sxe6 Txe6 42.Dxd5 Tc8 43.Db7 Tee8 44.Lc1 Tb8 45.Dd5
  -+  (-1.88)   Tiefe: 30/42   03:42:48  1798kN


Ein Gegenversuch mit MCTS 2MV war leider zwischen 7 und 10 Minuten unbeobachtet, kann also vielleicht sogar ziemlich genau so schnell gewesen sein wie MCTS single variant. Dieser Output war nach 10 Minuten und "Tiefe" 23.

r3r1k1/3b1ppp/8/1p1p4/nPpP1BP1/4P2P/P4P2/1NQ3K1 b - - 0 1

Analysis by Komodo 13.1 64-bit MCTS:

1. -/+  (-1.28): 24...c3 25.Sa3 Tec8 26.Sc2 Sb2 27.a3 h5 28.f3 hxg4 29.hxg4 Sc4 30.Kh2 Ta6 31.Kg3 f6 32.e4 dxe4
2. -/+  (-1.12): 24...Tec8 25.Sd2 c3 26.Sb3 Tc4 27.Dc2 Txb4 28.e4 Tc4 29.exd5 Sb6 30.Sc5 b4 31.Le3 Td8 32.Lg5 Te8 33.Le3 h6 34.Kh2 Sxd5

Der Evalquotient der beiden Züge lässt noch zu wünschen übrig, aber die ersten 3 Halbzüge des Outputs sind korrekt.

Man kann aus dem allen schließen, was man will, eigentlich nicht soo viel, weil's nur eine einzelne Stellung ist und für die bräuchte es jetzt noch eine kleine Statistik über die SMP- Streuung und oder Vergleichswerte auf single core (das alles waren 24 Threads der 12x3GHz CPU), aber soviel glaube ich sagen zu können:
MV ist nicht "free" mit komodo MCTS kostet aber nicht viel time to depth, was ja allerdings ein völlig irrelevanter Wert ist, bei MCTS erst recht, Verbesserung der time to solution bringt's nur dann, wenn genügend MV- Lines gleichzeitig berechnet werden.
Jetzt könnte man die, wenn man dem Vergleich der time to depth doch irgendeine Bedeutung beimisst, natürlich immer gleich so hoch schrauben, als es mögliche Züge in der Stellung gibt, dabei ist dann aber wieder nicht gesagt, dass es nicht doch auch time to solution kosten kann.

Langer Rede kurzer Sinn, dass MCTS ohne NNs nutzlos ist, und dass es die MCTS ist, die die GPUs als Hardware braucht, das alles glaube ich so nicht, wenn ich mir komodo mit und ohne MCTS- Output anschaue.
Auch bei LC0 dachte ich eigentlich, dass es nicht die Suche ist, die auf GPU viel schneller geht, sondern das Abarbeiten der NN- Einträge, eben je nach Netzgröße, sonst wäre das größere Netz ja nicht langsamer, die MCTS- Suche bleibt ja dieselbe.
Parent - - By Peter Martan Date 2019-08-27 08:39 Edited 2019-08-27 08:46
Peter Martan schrieb:

, wenn man es erst mal von ...Tec8(?!) im Antwortzug genau genug unterschieden hat.
Dieser kleine feine Unterschied ist "nur", dass Weiß nach gleich...c3 nicht mehr 25.Sd2(!) antworten kann, das Rufzeichen verdient sich das nach zuerst ...Tec8, weil es dann nicht mehr so schnell gewinnt. Antwortet Weiß hingegen auf 24...Tec8 (?!) 25.Sa3 (?!), stellt 25...c3 zum Textzug um.

Das mit 24...Tec8 25.Sd2 muss ich relativieren, ich hab's auch im CCC an Louis Zulli geschrieben, weil sich der auch eingehender dort mit der Stellung beschäftigt hat.

http://talkchess.com/forum3/viewtopic.php?p=809996#p809996

Nach diesen beiden ersten Halbzügen gibt es zu 25...c3 (?!) eine Verstärkung mit 25...h5(!) anstatt dessen. Danach und nach etwas Forward-Backward in die entsprechenden Lines hinein und zurück zur Stellung nach 24...Tec8:



Analysis by Cfish 050819 x64 POP:

Code:

25.Dc2 Ta6 26.g5 c3 27.h4 Tc4 28.Sa3
  -+  (-1.85)   Tiefe: 7/6   00:00:00  11kN
25.Dc2 Ta6 26.Kg2 c3 27.Sa3 Sb2 28.Sb1 Sd3 29.Dxd3 c2
  -+  (-1.79)   Tiefe: 8/9   00:00:00  16kN
25.Kg2 c3 26.Ld6 c2 27.Sa3 Sc3 28.Sxc2
  -/+  (-1.28)   Tiefe: 9/10   00:00:00  30kN
25.Kg2 c3 26.Ld6 c2 27.Sa3 Sc3 28.Sxc2 Txa2 29.Lc5 h5 30.e4 Sxe4 31.f3 Sc3 32.Dd2 Sb1 33.Dc1 Sa3
  -+  (-1.84)   Tiefe: 10/18   00:00:00  78kN
25.Dc2 Ta6 26.Lg5 c3 27.Le7 h5 28.gxh5 Th6 29.Lc5 Lxh3 30.Sxc3 Sxc3 31.Dxc3 Tcc6 32.f3 Txh5
  -+  (-1.85)   Tiefe: 11/29   00:00:00  134kN
25.Ld6 Ta6 26.Lc5 h5 27.f3 Te8 28.Kf2 Sxc5 29.dxc5 Txa2+ 30.Kg3 Te2 31.Sc3 T2xe3 32.Sxd5 h4+ 33.Kxh4
  -+  (-1.86)   Tiefe: 12/29   00:00:00  220kN
25.Ld6 Ta6 26.Lc5 h5 27.gxh5 Lxh3 28.Sd2 Th6 29.Sf1 Txh5 30.Sg3 Th6 31.Dc2 Tg6 32.Kh2 Ld7 33.Sf5 Lxf5 34.Dxf5 Tcc6
  -+  (-1.86)   Tiefe: 13/29   00:00:00  339kN
25.Sa3 c3 26.Sc2 h5 27.f3 Sb2 28.a3 Sc4 29.gxh5 Lf5 30.Kh2 Sd2 31.Kg3 Lxc2 32.Dxc2 Tc4 33.h6 g6 34.e4 dxe4 35.Lxd2 cxd2 36.Dxd2 Txa3
  -+  (-1.84)   Tiefe: 14/29   00:00:00  507kN
25.Sa3 c3 26.Sc2 Sb2 27.a3 h5 28.f3 Sc4 29.gxh5 Lf5 30.Kh2 Lxc2 31.Dxc2 Sxa3 32.Df5 c2 33.e4 c1T 34.Lxc1 Txc1 35.Dxd5
  -/+  (-1.53)   Tiefe: 15/31   00:00:00  613kN
...
25.Sa3 c3 26.Sc2 h5 27.f3 Sb2 28.a3 Sc4 29.gxh5 Lf5 30.Kh2 Lxc2 31.Dxc2 Sxa3 32.Df5 c2 33.e4 c1L 34.Lxc1 Txc1 35.Dxd5 Tac8 36.e5 T1c6 37.Dd7 Sc4 38.Kg3 Sd2 39.e6 fxe6 40.h6 T8c7 41.De8+ Kh7 42.hxg7 Kxg7 43.d5 Tc3 44.dxe6 Txf3+ 45.Kg2 Tf6 46.Dd8 Tg6+ 47.Kh2 Sf3+ 48.Kh1
  -+  (-1.84)   Tiefe: 24/47   00:00:01  28771kN
25.Dc2 Ta6 26.e4 Tf6 27.Le3 h5 28.g5 Tf3 29.Sd2 Txh3 30.exd5 Sb6 31.g6 Sxd5 32.De4 Sxe3 33.De7 Le8 34.gxf7+ Lxf7 35.Dd7 Te8 36.Dxh3 c3 37.Sb3 Lxb3 38.Dd7 Ta8 39.fxe3 c2 40.Dc6 Kh7 41.Dc3 Txa2 42.e4 Lf7
  -+  (-1.97)   Tiefe: 25/47   00:00:03  62258kN
...
25.Dc2 Ta6 26.e4 Tf6 27.Le3 h5 28.g5 Tf3 29.Kg2 Txh3 30.Sc3 Sxc3 31.Dxc3 dxe4 32.a4 bxa4 33.b5 Txe3 34.Dxe3 Lxb5 35.Dh3 La6 36.Dc3 Ta8 37.g6 fxg6 38.Da5 Kh7 39.Dxa4 e3 40.Kf1 Lb7 41.Db4 Le4 42.Dxc4 Tf8 43.d5 Txf2+ 44.Ke1 Lf3 45.Df4 Lxd5 46.Dxe3 Tf5 47.Dd4 Lf3 48.Dc4
  -+  (-1.84)   Tiefe: 33/52   00:01:22  1791MN
25.Dc2 Ta6
  -+  (-1.95 --)   Tiefe: 34/60   00:01:42  2222MN
25.Sa3
  -+  (-1.84 ++)   Tiefe: 34/60   00:01:47  2334MN
...
25.Sa3 c3 26.Sc2 h5 27.f3 hxg4 28.hxg4 Sb2 29.a3 Sc4 30.Kf2 f6 31.Dd1 g5 32.Lg3 Le8 33.f4 Lg6 34.f5 Lf7 35.Dc1 Te8 36.Kf3 Kg7 37.De1 Sd2+ 38.Kg2 Th8 39.De2 Le8 40.Dd1 Th6 41.Dc1 Lf7 42.Se1 Sc4 43.Lf2 Txa3 44.Kg3 Th1 45.Kg2 Th8 46.Sd3 Tha8 47.Sc5 c2 48.Kg3 Tc3
  -+  (-2.20)   Tiefe: 34/60   00:02:07  2777MN
25.Sa3
  -+  (-2.09 ++)   Tiefe: 35/51   00:02:14  2940MN
25.Dc2 Ta6 26.e4 Tf6 27.Le3 h5 28.gxh5 Tf3 29.h4 Th3 30.Sd2 Sb6 31.e5 Txh4 32.Sf1 Txh5 33.Sg3 Th4 34.Sf5 Lxf5 35.Dxf5 Tc6 36.Kf1 Th1+ 37.Kg2 Ta1 38.Dc2 Te1 39.Kf3 c3 40.Kf4 Th1 41.Kf3 Th4 42.e6 Txe6 43.Dxc3 Sc4 44.Kg3 Tee4 45.Kg2 f6
  -+  (-2.26)   Tiefe: 35/51   00:02:52  3774MN
...
25.Dc2
  -+  (-1.88 ++)   Tiefe: 36/63   00:04:23  5750MN
25.Dc2 Ta6 26.Sa3 Sb6 27.Sb1 c3 28.Kh2 Tc4 29.e4 Ta8 30.Lc1 Tac8 31.Dd3 dxe4 32.Dxe4 Lc6 33.Df5 h6 34.Dd3 Ld5 35.f3 Sa4 36.Sa3 Txb4 37.Dc2 Lc4 38.Kg3 Le6 39.d5 Lxd5 40.Sxb5 Txb5 41.Dxa4 Tb2 42.Dd4 Tb1 43.Dxd5 Txc1 44.Db7
  -+  (-2.35)   Tiefe: 36/63   00:05:26  7113MN
...
25.Sc3 Sxc3 26.Dxc3 f5 27.e4 fxe4 28.a3 Tc6 29.Lc1 h6 30.Dg3 c3 31.De5 Le6 32.h4 Te8 33.g5 Lf7 34.Df5 hxg5 35.hxg5 Le6 36.De5 g6 37.Le3 Lf7 38.Df4 c2 39.Lc1 Tc3 40.Kg2 Td3 41.Dc7 Txd4 42.Dxc2 Tc4 43.Dd1 d4 44.Lb2 d3 45.Lc1 Tc2 46.Le3
  -+  (-2.12)   Tiefe: 37/112   00:06:05  7964MN
25.Sc3
  -+  (-2.01 ++)   Tiefe: 38/45   00:06:13  8134MN
25.Sc3 Sxc3 26.Dxc3 f5 27.e4 fxe4 28.a3 Tc6 29.Lc1 h6 30.Dg3 c3 31.De5 Le6 32.h4 Kh7 33.g5 h5 34.Kf1 Kg6 35.Ke1 Te8 36.Le3 c2 37.Lc1 Td8 38.Kf1 Tdc8 39.Ke1 Kh7 40.Kd2 Tf8 41.Ke1 Tf3 42.g6+ Kxg6 43.Dg5+ Kf7 44.Dxh5+ Kf8 45.Dh8+ Lg8 46.Dh5 Tff6 47.Dg5
  -+  (-1.98)   Tiefe: 38/56   00:06:28  8449MN
...
25.Dc2 Ta6 26.e4 Tf6 27.Le3 h5 28.gxh5 Tf3 29.h4 Th3 30.Sd2 Sb6 31.e5 Txh4 32.Sf3 Txh5 33.Sg5 Tc6 34.De2 Th4 35.Df3 f6 36.e6 Le8 37.Sh3 c3 38.Dg3 Sc4 39.Lf4 Th5 40.Dxc3 g5 41.Dg3 Txe6 42.Le3 Kf8 43.Kg2 Th4 44.Sg1 Ta6 45.Lc1 Txd4 46.Se2 Th4 47.Kf1 Txa2
  -+  (-2.49)   Tiefe: 39/68   00:11:05  14460MN
25.Sa3
  -+  (-2.38 ++)   Tiefe: 40/73   00:14:26  18802MN
25.Sa3
  -+  (-2.28 ++)   Tiefe: 40/73   00:15:12  19778MN
25.Ld6 Ta6 26.Lc5 h5 27.g5 Lxh3 28.e4 dxe4 29.Sc3 Sxc3 30.Dxc3 e3 31.Dxe3 Le6 32.d5 Lxd5 33.De5 Lf3 34.Df5 Lg4 35.Dd5 Tg6 36.Kh2 Le6 37.Dd2 f6 38.gxf6 Txf6 39.Dc2 Tf4 40.Kg3 Tg4+ 41.Kh2 Tg5 42.Dd2 Td5 43.De3 Lf7 44.Kg2 Td1 45.De5
  -+  (-2.60)   Tiefe: 40/73   00:16:24  21334MN
25.Sa3
  -+  (-2.49 ++)   Tiefe: 41/57   00:19:07  24859MN
25.Sa3 c3 26.Sc2 Sb2 27.a3 h5 28.f3 hxg4 29.hxg4 Sc4 30.Kh2 f6 31.e4 dxe4 32.fxe4 Lxg4 33.Df1 Sxa3 34.Se3 Le6 35.Sd5 Ta7 36.Sb6 Tc6 37.Sd5 c2 38.Lc1 Sc4 39.De2 Tc8 40.Sf4 Ta1 41.Sd3 Sb6 42.Dd2 Lf7 43.d5 Ta2 44.Df4 Sc4 45.Kg2 Taa8 46.Sc5 Td8 47.Kf2 Te8 48.Dg3 Ta1 49.Sb3
  -+  (-2.56)   Tiefe: 41/59   00:20:27  26607MN
...
25.Sa3
  -+  (-2.41 ++)   Tiefe: 42/62   00:25:35  33290MN
25.Sd2 h5 26.gxh5 c3 27.Sb3 c2 28.Kh2 Sc3 29.Le5 Tc6 30.Dg1 f6 31.h6 g5 32.Lxf6 g4 33.Lg5 Kh7 34.Lf4 Tg6 35.Da1 Sd1 36.h4 Sxf2 37.Df1 Tf8 38.Dxf2 g3+ 39.Dxg3 Txg3 40.Kxg3 Tg8+ 41.Lg5 Ta8 42.Sc1 Lf5 43.Kf2 Ta4 44.Ke1 Txb4 45.Kd2 Tb1 46.h5 Le4 47.Lf4 Tb4 48.Se2 Ta4 49.Sc3 Tc4 50.Se2 Tb4 51.Lg5 Lf5 52.Sc1 Ta4
  -+  (-2.73)   Tiefe: 42/88   00:27:38  35977MN
...
25.Sd2 h5 26.gxh5 c3 27.Sb3 c2 28.Kh2 Sc3 29.Le5 Tc6 30.Dg1 f6 31.h6 g5 32.Lxf6 g4 33.Lg5 Kh7 34.Dc1 Sxa2 35.Dg1 Tg8 36.h4 Tf8 37.Dg3 Tf7 38.De5 c1D 39.Sxc1 Txc1 40.Lf4 Sc3 41.h5 Tf1 42.Kg2 Te1 43.Kh2 Tc1 44.e4 Tc2 45.Lg3 Sxe4 46.Dxd5 Te7 47.Lh4 g3+ 48.Lxg3 Sxf2 49.Lxf2 Txf2+ 50.Kg3 Tff7 51.Dd6 Lf5 52.Dc6
  -+  (-2.65)   Tiefe: 43/74   00:29:22  38217MN


Die letzte Output- Zeile noch einmal allein herauskopiert:

25.Sd2 h5 26.gxh5 c3 27.Sb3 c2 28.Kh2 Sc3 29.Le5 Tc6 30.Dg1 f6 31.h6 g5 32.Lxf6 g4 33.Lg5 Kh7 34.Dc1 Sxa2 35.Dg1 Tg8 36.h4 Tf8 37.Dg3 Tf7 38.De5 c1D 39.Sxc1 Txc1 40.Lf4 Sc3 41.h5 Tf1 42.Kg2 Te1 43.Kh2 Tc1 44.e4 Tc2 45.Lg3 Sxe4 46.Dxd5 Te7 47.Lh4 g3+ 48.Lxg3 Sxf2 49.Lxf2 Txf2+ 50.Kg3 Tff7 51.Dd6 Lf5 52.Dc6
  -+  (-2.65)   Tiefe: 43/74   00:29:22  38217MN

Mit vollem Hash gestartet, 24 Threads der 12x3GHz CPU, 32G Hash, Cfisch  050819 default.

24...c3 und 24...Tec8 rücken noch einmal ein Stück näher zusammen in der Wertigkeit.
Hochinteressante Stellung jedenfalls, danke nochmals dafür, Walter.

Mein erster Eindruck mit LC0 und etwas Forward- Backward einer 22.0- Installation auf 2x RTX 2080ti GPU von "rechenschieber" in der Cloud bestägigt meinen Verdacht, dass Leela die Züge nach 24...Tec8 etwas unterschätzt, bis sie das 25.Sd2 danach findet, dauert's, "zeigt" man's ihr, kommt sie dafür dann von selbst auf 25...h5!
Parent - By Walter Eigenmann Date 2019-08-27 09:36
Peter Martan schrieb:

Das mit 24...Tec8 25.Sd2 muss ich relativieren, ich hab's auch im CCC an Louis Zulli geschrieben, weil sich der auch eingehender dort mit der Stellung beschäftigt hat.
<a class='ura' href='http://talkchess.com/forum3/viewtopic.php?p=809996#p809996'>http://talkchess.com/forum3/viewtopic.php?p=809996#p809996</a>
Nach diesen beiden ersten Halbzügen gibt es zu 25...c3 (?!) eine Verstärkung mit 25...h5(!) anstatt dessen. [...]
24...c3 und 24...Tec8 rücken noch einmal ein Stück näher zusammen in der Wertigkeit.
Hochinteressante Stellung jedenfalls, danke nochmals dafür, Walter.

Ja, um solcher Stellungen willen lohnt sich die Beschäftigung mit Computerschach...
Als Engine-Teststellung würde ich selbstverständlich diesen KI-Zug von Leela - kein A/B-Programm würde ihn m.W. mit Default-Setting in einer Turnierpartie ausspielen -
allerdings jetzt auch nicht empfehlen. Dafür sind die zwei Kandidaten-Züge zu nah beieinander.
Zudem gewinnen sie ja beide... (Immerhin ist ...c3 doch noch ein kleines bisschen dominanter als ...Tec8, wenn ich die 10-stündige (!) Analyse von Louis Zulli und jetzt noch deine sehe).

Aber der Zug ist - das ist mein eigentlicher Point - irgendwie symptomatisch für das unterschiedliche Schach der beiden aktuell "gleichstarken" Entwicklungslinien A/B und NN.
Wenn man die zahlreichen Leela-Derivate bzw. -Games hier...
https://glarean-magazin.ch/2019/08/24/schachprogramme-das-duell-der-engine-giganten-computerschach-chess-programming/#die-schachlichen-top-shots
näher untersuchte, müsste man eigentlich noch zahlreich fündig werden mit solchen Grauzonen-Moves im Grenzland A/B-NN.
Ich bleibe dran...
Parent - - By Achim Müller Date 2019-08-26 14:45
Die erste Frage, die sich mir beim Lesen hier eben stellte, wird in Deinem Blogpost beantwortet:

»Der knappe Turniersieger Brainfish spielte übrigens quasi ausser Konkurrenz mit (war aber als eine Art Referenz gedacht): Im Gegensatz zu allen anderen, die ausser der Vorgabe von 5 Eröffnungszügen keinerlei eigene Opening Books benutzen durften, erhielt Brainfish gleich zwei Default-Bücher, nämlich sein integrales „Cerebellum“ sowie ein spezifisches NN-Book namens „Cerebellum Leela Net„. Dieses Duo erwies sich dann als unwiderstehlich…«

Danke für den Test und den ausführlichen Artikel!

Ciao

Achim
Parent - - By Walter Eigenmann Date 2019-08-27 20:44
Achim Müller schrieb:
Die erste Frage, die sich mir beim Lesen hier eben stellte, wird in Deinem Blogpost beantwortet:
»Der knappe Turniersieger Brainfish spielte übrigens quasi ausser Konkurrenz mit (war aber als eine Art Referenz gedacht): Im Gegensatz zu allen anderen, die ausser der Vorgabe von 5 Eröffnungszügen keinerlei eigene Opening Books benutzen durften, erhielt Brainfish gleich zwei Default-Bücher, nämlich sein integrales „Cerebellum“ sowie ein spezifisches NN-Book namens „Cerebellum Leela Net„. Dieses Duo erwies sich dann als unwiderstehlich…«
Danke für den Test und den ausführlichen Artikel!

Trotz seiner umfangreichen Books konnte sich allerdings Brainfish nicht in dem Masse vom Rest abheben, wie ich zuerst annahm.
Das ist einerseits natürlich der relativ geringen Anzahl Partien/Engine (64) geschuldet, aber zweitens auch der innovativen Eröffnungsbehandlung,
welche die NN's so an den Tag legen. Ich werde mir diesbezüglich die Games noch speziell vorknöpfen; da sind bestimmt etliche Neuerungen schon im früheren Stadium darunter...

Gruss: Walter
Parent - - By Stefan Pohl Date 2019-08-28 04:36 Upvotes 1
Wichtig ist dabei die richtige Reihenfolge: zuerst muß immer das (kleinere) Leela-Cerebellum abgefragt werden und dann das Stockfish-Cerebellum. Letzteres also mit BookFile2 spezifizieren. Nur so erreicht Brainfish die maximale Spielstärke!
Parent - - By Walter Eigenmann Date 2019-08-28 09:03
Stefan Pohl schrieb:

Wichtig ist dabei die richtige Reihenfolge: zuerst muß immer das (kleinere) Leela-Cerebellum abgefragt werden und dann das Stockfish-Cerebellum. Letzteres also mit BookFile2 spezifizieren. Nur so erreicht Brainfish die maximale Spielstärke!

Selbstverständlich - schreibt doch Zipproth selber:
https://zipproth.de/Brainfish/download/#_brainfish_can_use_two_books_parallel
Parent - By Stefan Pohl Date 2019-08-28 11:01
So selbstverständlich ist das leider nicht. Ich hatte schon ca. 1 Dutzend Anfragen über meine Website, wie man BrainFish optimal konfiguriert...
Up Topic Hauptforen / CSS-Forum / 29 Engines gegen Leela Chess Zero

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill