Hallo Thomas!
Danke für die Partie und deine Überlegungen dazu, ich finde auch, dass die Stellung, die du ausgesucht hast, eine gute Teststellung ist.
Dass 13.Tf3! bei den meisten engines zunächst im MV nur so unter den besten 8 rangiert, sagt gar nichts.
Ich würde auch gar nicht behaupten oder gar beweisen wollen, dass es hier ein eindeutiger best move ist, dazu ist die Stellung noch viel zu sehr in Schwebe, dass menschlichem Schachverständnis nach aber dieser Zug positionell sehr interessant ist und taktisch sehr viel bietet, ist wohl klar.
r1br2k1/1pq2ppp/p1nppn2/8/4PP2/BNPB4/P1PQ2PP/R4RK1 w - -
Engine: Houdini 2.0 Pro x64TA0TL (2048 MB)
von Robert Houdart
...
23/50 0:15 0.00 13.Tf3 b5 14.Tg3 e5 15.f5 Sh5 16.Tf3 Sf4
17.Df2 f6 18.Lc1 Tb8 19.Tb1 Lb7
20.Le3 Te8 21.Tg3 Kh8 22.Lxf4 exf4
23.Dxf4 Se5 24.Sd4 Dxc3 25.Se6 g5
26.De3 (309.989.010) 19872
24/50 0:25 0.00 13.Tf3 b5 14.Tg3 e5 (520.891.792) 20318
25/55 0:50 0.00 13.Tf3 b5 14.Tg3 e5 (1.045.269.931) 20834
Ist das Ende vom Hutiwuti- output nach einer längeren Rechenzeit
und Eingabe der ersten beiden Züge der Partiefortsetzung nach langsamem und gründlichem backward solving auf 12 Kernen, die eine oder andere Alternativfortsetzung probierend und wieder zum 13. Zug Zurückgehen.
Zum Vergleich, der Ausgangs- output mit nur aus Eigenberechnung vollen hash:
r1br2k1/1pq2ppp/p1nppn2/8/4PP2/BNPB4/P1PQ2PP/R4RK1 w - -
Engine: Houdini 2.0 Pro x64T (2048 MB)
von Robert Houdart
20/47 0:13 -0.08++ 13.Sd4 (256.214.050) 18306
20/47 0:17 -0.15 13.Sd4 Ld7 14.De1 h6 15.Tb1 b5
16.Dg3 Kh8 17.Lxd6 Dxd6 18.e5 De7
19.exf6 Dxf6 20.De3 Sxd4 21.cxd4 Lc6
22.c3 Ld5 23.a4 bxa4 24.Ta1 Tdc8
25.Dd2 Lb3 26.f5 (325.366.436) 18788
20/47 0:22 -0.09
13.Tf3 b5 14.Tg3 e5 15.fxe5 Sxe5
16.Tf1 Sg6 17.Sd4 Tb8 18.Lb4 Le6
19.De3 Te8 20.a3 Kh8 21.a4 bxa4
22.Lxa6 Lc4 23.Lxc4 Dxc4 24.Lxd6 Txe4
25.Lxb8 Txe3 26.Txe3 (428.499.474) 19087
21/47 0:27 -0.16-- 13.Tf3 b5 (521.581.764) 19259
21/50 0:29 -0.08
13.Sd4 Ld7 14.De1 h6 15.Tb1 b5
16.Dg3 Kh8 17.h3 d5 18.exd5 exd5
19.Tbe1 Se4 20.Lxe4 dxe4 21.Txe4 Sxd4
22.Txd4 Lf5 23.Df3 Tac8 24.Tc1 Da5
25.Le7 Te8 (568.671.206) 19360
22/50 0:34 -0.08 13.Sd4 Ld7 14.De1 h6 15.Tb1 b5
16.Dg3 Kh8 17.De3 Sg4 18.Dg3 e5
19.fxe5 Scxe5 20.h3 Sf6 21.De3 Kg8
22.Lb4 Te8 23.Txf6 gxf6 24.Tf1 Le6
25.Dxh6 (679.300.618) 19430
23/53 1:06 -0.07 13.Sd4 Ld7 14.De1 h6 15.Tb1 b5
16.Dg3 Kh8 17.De3 Sg4 18.Dg3 e5
19.fxe5 Scxe5 20.Le2 Tac8 21.h3 Sf6
22.De3 Kg8 23.Lb4 Lc6 24.Txf6 gxf6
25.Tf1 (1.348.887.450) 20287
24/60 3:30 -0.01++ 13.Sd4 (4.498.371.228) 21379
24/60 4:57 0.00 13.Sd4 Ld7 14.Tae1 Da5 15.e5 Se4
16.Txe4 Dxa3 17.Te3 g6 18.Df2 Tac8
19.Th3 h5 20.Tg3 Sxd4 21.cxd4 Dxa2
22.Lxg6 fxg6 23.Txg6+ Kh7 24.Dh4 Kxg6
25.Df6+ Kh7 26.De7+ (6.406.036.080) 21562
25/60 5:18 0.00 13.Sd4 Ld7 14.Tae1 Da5 15.e5 Se4
16.Txe4 Dxa3 17.Te3 g6 18.Df2 Tac8
19.Th3 h5 20.Tg3 Sxd4 21.cxd4 Dxa2
22.Lxg6 fxg6 23.Txg6+ Kh7 24.Dh4 Kxg6
25.Df6+ Kh7 26.De7+ (6.866.362.375) 21583
26/60 5:47 0.00 13.Sd4 Ld7 14.Tae1 Da5 15.e5 Se4
16.Txe4 Dxa3 17.Te3 g6 18.Df2 Tac8
19.Th3 h5 20.Tg3 Dxc3 21.Sb3 Db4
22.exd6 Dxd6 23.Lxg6 fxg6 24.Txg6+ Kf7
25.Dh4 Kxg6 26.Dg5+ (7.519.065.864) 21642
27/60 7:54 0.00 13.Sd4 Ld7 14.Tae1 Da5 15.e5 Se4
16.Txe4 Dxa3 17.Te3 g6 18.Df2 Tac8
19.Th3 h5 20.Tg3 Dxc3 21.Sb3 Db4
22.exd6 Dxd6 23.Lxg6 fxg6 24.Txg6+ Kf7
25.Dh4 Kxg6 26.Dg5+ (10.383.984.614) 21877
Und dann noch einmal Neustart mit der Lerndatei geladen, die sich Houdini 2.0 beim Vorversuch mit dem Vor und Zurück auf der Parteifortsetzung angelegt hat, unmittelbar nach dem Neustart:
r1br2k1/1pq2ppp/p1nppn2/8/4PP2/BNPB4/P1PQ2PP/R4RK1 w - -
Engine: Houdini 2.0 Pro x64TA0TL (2048 MB)
von Robert Houdart
16/34 0:01 -0.15 13.h3 e5 14.c4 Sh5 15.f5 Sf4 16.g3 Sxd3
17.cxd3 b5 18.Tab1 h6 19.c5 d5
20.exd5 Txd5 21.Lb2 De7 (19.813.016) 13208
17/38 0:02 -0.11 13.h3 b5 14.Lb2 e5 15.a4 bxa4
16.Txa4 Tb8 17.La3 a5 18.f5 Da7+
19.Df2 Dxf2+ 20.Txf2 d5 21.exd5 Txd5
22.Sd2 Td8 23.Tf1 Sd5 (40.526.093) 14861
18/38 0:03 -0.09 13.h3 b5 14.Lb2 e5 15.a4 Le6 16.axb5 axb5
17.De3 Lc4 18.fxe5 dxe5 19.Sc5 h6
20.De2 De7 21.Df2 Txa1 22.Txa1 Sd7
23.La3 Sxc5 24.Lxc5 (50.696.351) 15178
18/41 0:04 -0.05
13.Tf3 b5 14.Taf1 e5 15.fxe5 Sxe5
16.Tg3 Sg6 17.Sd4 Sh5 18.Tg5 Sf6
19.Txf6 gxf6 20.Tg3 Le6 21.Sf5 Te8
22.Sxd6 Ted8 23.Sf5 Te8 24.Df2 Dxc3
25.Lxb5 Da1+ 26.Lf1 (70.388.754) 16222
...
25/48 2:35 -0.05 13.Tf3 b5 14.Taf1 e5 15.fxe5 Sxe5
16.Tg3 Sg6 (3.327.274.049) 21340
26/60 7:51 +0.01++ 13.Tf3 (10.418.802.663) 22097
26/66 14:50 +0.03 13.Tf3 b5 14.Taf1 d5 15.e5 Se4
16.De2 Lb7 17.Th3 Se7 18.Lxe7 Dxe7
19.Lxe4 dxe4 20.Dh5 h6 21.Sd4 Lc8
22.Tg3 Kh7 23.De2 Db7 24.Te1 Dd5
25.Dxe4+ Dxe4 26.Txe4 (19.887.383.307) 22326
Was sehen wir:
Die Bewertung mit nur aus Eigenberechnung vollem hash ist 0.00, die nach dem backward und wieder vollem hash 0.00, die nach dem Neustart und dem wieder nur durch Eigenberechnung
und Lerndatei gefülltem hash +0.03, der als bester vorgeschlagene 13.Zug bleibt im letzten Versuch stabil Tf3.
Was beweist das jetzt:
Gar nix.
Weder, dass Hutiwuti da was besser kann, als andere engines, dazu müsste man jetzt Gegenversuche machen und dann hätte man für Ranglistenfans nach wie vor nur ein Indiz, dass die Stellung Houdini vielleicht besser oder schlechter liegt als einer bestimmten Vergleichsengine auf vergleichbarer hardware unter auch gleichen Zeit- und sonstigen Bedingungen, für diese Frage, ist Houdini einfach besser als engine xy, auch nur in dieser Stellung, keine reproduzierbare Aussage, geschweige denn, was Gesamtspielstärke angeht.
Wohl könnte man die Änderungen der eval zwischen Ausgangsstellung und backward auf der einen und der anderen Variante, könnte man z.B. die Quotienten der Änderung durchaus als Maß dessen annehmen, was man halt in cp messen kann und will. (Hutiwuti hat seine Bewertung durch die Lerndatei von 0.00 auf +0.03 für die rechnende Seite verbessert, wenn ich sehen will, wie 13.Tf3 bei ihm abschneidet, könnte ich sagen, unendlich viel Hebung der eval, weil 0.03 durch 0.00 nunmal einen unendlich hoher Quotient wäre, die Mathematiker mögen mir wieder mal verzeihen, dass ich durch 0 dividiere, die Alternative einfach +0.03 minus 0.00 zu rechnen, scheint mir nicht nur weniger spektakulär in meinem Sinn des Experimentes (
) sondern tatsächlich, nach Allem, was ich von Computerschachevals halte, erst recht die falsche Rechnung zu sein.
Immer noch wäre man auf die eigene schachliche Beurteilung der Stellung angewiesen, welchen Werten man wieviel Bedeutung beimisst, aber ist man das nicht letzten Endes immer, mögen sie Elo heißen oder wie auch immer?
Ebensowenig hat man mehr Grund, anzunehmen, 13.Tf3! sei hier ein winner, als vorher, man hat auch nicht bewiesen, dass 13.Tf3! ein eindeutiger best move ist, das war aber (für mich zumindest
) auch nicht die Frage.
Für mich war die Frage, ist das eine gute Teststellung, dazu würde ich (halt auch wieder rein subjektiv, für meine ureigenen Interessen an Computerschach) einfach ja sagen, wenngleich ich annehme, dass das Viele anderes sehen.
Ich bin mir auch bewusst, dass sie ungeignet ist, aus der Stellung allein mit Standrechnen allein schon viel Testergebnis herauszulesen, macht mal bitte wer ein Thementurnier mit 20 engines und je 50 Spielen auf guter hardware und langen Bedenkzeiten?
Würde mir persönlich dann schon reichen, zu sagen, wer da am besten mit der Stellung umgeht, muss ja nicht in Elo sein.
Aber: wenn mich als Schachspieler 13.Tf3! hier interessiert, sollte ich Houdini als Analysewerkzeug mit den anderen engines, die mich hier auch interessieren, heranziehen, je nachdem, was als Alternativfortsetzungen angeboten wird, diese mit den anderen engines gemeinsam untersuchen und dann kann ich
für meine schachlichen Interessen an dieser Stellung sagen, wem ich hier am meisten vertrauen würde.
Ich tippe ja nach wie vor auf Ivanchuk.
Warum habe ich mich wieder so ausgeschleimt?
So ähnlich hätte ich mir anfangs vorgestellt, oder besser gesagt gewunschen, dass im Let's Check die Bewertung verschiedener engine- Analysen funktionieren könnte.
Die user engine sollte einfach nicht nur mit Standrechnen Varianten und evals einbringen, sondern das sollte nur oder umso mehr zählen, je länger sie auf ihren Varianten vor-
und zurück rechnet.
Danach könnte ein GUI- feature allein, ohne server- Kontrollengine, die eval- Verläufe anstelle der Absolutwerte speichern, die ja bekanntlich absolut nichts sagen. Stimmt aber auch nicht, weil zahlenmäßig entscheidend für die Zugsortierung in der internen engine- Berechnung sind sie ja doch, wo also sonst soll der Programmierer ansetzen?