Einzelnen Beitrag anzeigen
  #118  
Alt 23.12.2017, 20:19
Benutzerbild von spacious_mind
spacious_mind spacious_mind ist offline
Schachcomputer Koryphäe
 
Registriert seit: 29.06.2006
Ort: Alabama, USA
Land:
Beiträge: 1.927
Abgegebene Danke: 47
Erhielt 327 Danke für 197 Beiträge
Aktivitäten Langlebigkeit
0/20 18/20
Heute Beiträge
0/3 sssss1927
Re: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau

Das is echt schade das es im normalen Rechen 59 ply braucht. Das zeigt wohl ganz gut wie schlecht die Programme heute immer noch suchen wenn die eine Stellung lange rechnen. Ihr selective search schneidet einfach zu viele zuege ab and der cache hilft auch nicht.

Ich Zeig mal als beispiel Mensch (zb Fehrnschachspieler) wie ich das gleiche schaffen koennte mit der Annerkennung das ich nur diese variation Spielen moechte weill aus meiner Erfahrung sollte es gewinnen. Daher als erstes interessieren mir keine von den Zahlreichen anderen Variationen. Aber ich moechte das der Computer mit SF8 meine ideen bestaetigt.

Ach ja da ich nicht viel geld habe, benuetze ich nur meinen 8 Jahre alten AMD 2.8 GHz Laptop der nur 2 core hat. Davon benuetze ich aber nur den 1 Core sonst faengt er an zu klemmen.

So fange ich dann an mit den ersten Zug an. Die erste Analyse faengt mit 0 sekunden an da ich ja weiss was ich spielen moechte als erster Zug. Das ist die variente 1. Bg5.

MPV Suchstamm = 40 Variationen die ich benuetze. Nach jeden zug in diese Beispiele habe ich immer ein RESET gemacht beim Cache damit neu gerechnet wird.

So die restilchen zuege moechte ich als erstes mal 18 ply tief rechnen lasse pro Zug. Und es sieht wie folgt aus:

1. Bg5 = 1/1 00:00 924 462k -2.36
1. ... f5 = 18/39 00:25 18,193k 719k +0.38
2. Qf4 = 18/35 00:46 29,736k 644k -1.05
2. ... hxg5 = 18/37 00:19 15,652k 798k 0.00
3. Nxg5 = 18/40 00:45 29,145k 640k -1.28
3. ... Qxh5 = 18/36 00:12 11,276k 899k 0.00
4. g4 = 18/40 01:05 37,557k 571k 0.00
4. ... Qg6 = 18/41 00:25 19,881k 771k 0.00
5. gxf5 = 18/38 01:17 44,450k 573k 0.00
5. ... Kg8 = 18/43 00:06 6,473k 986k -0.33

So jezt habe ich 5 volle Zuege (10 ply) gerechnet auf meinen larmen alten Laptop und es hatte 5 minuten und 20 sekunden gedauert um zu zeigen das meine Variante doch nicht schlecht ist mit +0.33 fuer Weiss. Aber ich bin immer noch ein bischen unueberzeugt weil als ich vorher mein rechner uebernacht laufen lies da zeigte er immer hin noch den besten Zug als b4 nach 38 tiefe mit +0.24.

Somit war ich dann immer noch unueberzeugt. Gluecklicherweise kam mein Freund zum besuch genau zu diesen Zeitpunkt. Er ist reich und naturlich bringt er immer seinen laptop mit wenn er besuchen komment. Er hat einen schnelleren I7.

Ich erklaerte was ich gerade versuche mit einer Schach Variante was ich gerne spielen moechte. Das ich aber immer noch nicht uebzeugt bin ob sie tatsachlich besser ist als was SF8 anzeigt nach 12 Stunden Rechnung. So sagte er "Lass uns doch das gleiche auf meinen laptop versuchen". Ok sagte ich aber lass uns das zweimal versuchen 1 mal mit 1 Thread und dann einmal volle pulle mit 8 threads.

Hier mit 1 Core I7

1. Bg5 = 1/1 00:00 924 462k -2.36
1. ... f5 = 18/37 00:10 17,715K 1,724K +0.99
2. Qf4 = 18/37 00:17 27,805K 1,615K -0.75
2. ... hxg5 = 18/41 00:08 14,269K 1,689K +2.12
3. Nxg5 = 18/40 00:18 29,997K 1,646K -1.48
3. ... Qxh5 = 18/36 00:06 11,276K 1,830K 0.00
4. g4 = 18/38 00:22 35,784K 1,572K -0.11
4. ... Qg6 = 18/41 00:15 27,876K 1,815K 0.00
5. gxf5 = 18/40 00:25 42,143K 1,623K +0.42
5. ... Kg8 = 18/43 00:03 6,204K 1,895K -0.33

Wow sagte ich 2 minuten 27 Sekunden, mehr als doppelt so schnell wie mein alter 8 jaehriger laptop. Nach 9 ply bin ich besser als vorher, da koennte man sogar noch ein paar sekunden zeit sparen. So lass uns jetzt die 8 threads versuchen.

Hier ist 8 threads:

1. Bg5 = 00:00 7K 3,590K -2.36
1. ... f5 = 18/40 00:06 58,021K 9,009K +0.30
2. Qf4 = 18/39 00:13 113,704K 8,447K -0.49
2. ... hxg5 = 18/49 00:06 52,297K 8,708K +0.10
3. Nxg5 = 18/40 00:12 105,973K 8,385 -0.42
3. ... Qxh5 = 18/39 00:07 68,620K 9,671K 0.00
4. g4 = 18/42 00:18 152,987K 8,222K 0.00
4. ... Qg6 = 18/41 00:06 59,156K 9,540K -0.41
5. gxf5 = 18/42 00:17 149,579 8,490 +1.27
5. ... Kg8 = 18/43 00:01 19,453K 9,884K -1.10

Das ist ueberzeugend. Nach 1 minute und 26 Sekunden 10 Ply geschafft mit +1.10 vorteil fuer weiss. 9 ply war sogar +1.27. Sollte man weither rechnen bester zug fuer Schwarz 19/53 = 00:02 = -1.34, 21/54 bester Zug fuer schwarz = 00:05 -2.11.

Jetzt muesste man sich das ein bischen ueberlegen. Ich benutzte 40 MPV. Hatte ich 32 MPV gennommen dann waere es alles 20% schneller gewesen. So waeren es 68 sekunden. Ich bin sicher es gibt computers die mindestens 2 mal schnell sind wie mein armer I7 laptop. Damit ware das gleich 34 Sekunden. 3 mal so schnell = 23 Sekunden. 4 mal so schnell = 17 sekunden.

Sollte man alles herausschmeissen was mehr als eine -5 bewertung hat, dann waeren diese zeiten noch mal doppelt so schnell = 34 Sekunden auf den I7.

Haette man zB 64 cores/threads zur verfuegung die alle individuel rechnen und ein Leitprogramm was nur FEN's an die threads schickt so koennte man ziemlich das gleiche automatisch erreichen. Das Leitprogramm sammelt die Werte im Hintergrund and nach 60 sekunden schickt den Zug.

32 x 32 Rechnungen Ergeben 1024 Threads. + 1 Leitprogram + 1 mal SF8 volle pulle = 1026 Threads. Mann vergleicht immer gegen SF8 volle pulle um zu entscheiden welchen zug genommen wird vielleicht? FEN berechnung oder SF volle pulle.

Kluge fruehe herausschmeissung von ein bestimmten wert wie -5 als beispiel wuerde vielleicht die benoetigten threads haelften. So waere es vielleicht 32 x 16 = 512 Threads. Mit so ein gedanken koennte man so gar 64 Startvarianten benuetzen x 16 ergeben = 1024 + 2 = 1026 threads.

Also mit richtigen hardware koennte vielleicht ein top Schachprogrammier das gleiche erreichen sollte es ein passendes Leitprogramm geben und mit der vermutung das die einzelnen Threads alle faehig sind selbstaendig zu Rechnen sobald sie ein FEN von das Leitprogramm bekommen.

24 Stunden Rechenlassen bringt nichts wenn man selber was besseres per hand erreichen kann in 68 sekunden pro gewuenschte variante. Auch wenn es 32 Start Varianten waeren dann erforscht das gleiche prinzip alles in unter 1 stunde inklusiv Kaffeepause.

Viele Gruesse

Geändert von spacious_mind (23.12.2017 um 20:37 Uhr)
Mit Zitat antworten
Folgender Benutzer sagt Danke zu spacious_mind für den nützlichen Beitrag:
Hartmut (23.12.2017)