Schachcomputer.info Community

Schachcomputer.info Community (https://www.schachcomputer.info/forum/index.php)
-   Die ganze Welt der Schachcomputer / World of chess computers (https://www.schachcomputer.info/forum/forumdisplay.php?f=2)
-   -   Tipp: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread) (https://www.schachcomputer.info/forum/showthread.php?t=5030)

Hartmut 22.12.2017 14:08

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau
 
Zitieren:

Zitat von Theo (Beitrag 70953)
Das ganze war wohl mit ziemlich heisser Nadel gestrickt. Nur wenige Wochen nach dem AlphaZero für Go und dann noch für Schach und Shogi gleichzeitig. Vermutlich wollte man noch unbedingt rechtzeitig zur NIPS 2017 fertig werden.

Das wurde meines Wissens auch in einem Chessbase-Artikel vermutet und ist sehr naheliegend.

Zitieren:

Nur 4 Stunden Trainingszeit? Vermutlich weil das verwendete Neuronale Netz da schon im Sättigungsbereich der Wissensaufnahme war - und ein größeres wollte man aus Zeitgründen (=Kostengründen) nicht mehr trainieren.
Das glaube ich nicht. Ich denke dass hier eher Zeitgründe die Rolle gespielt haben. Immerhin musste ja auch noch der Wettkampf gegen Stockfish durchgeführt werden. Und da hat dann vermutlich die oben genannte NIPS 2017 schon ziemlich gedrückt...

Zitieren:

Überhaupt ist das erklärte Ziel des Papers zu zeigen, dass der Ansatz von Alpha Zero Go übertragbar ist, um auch in anderen Spielen "superhuman performance" zu erreichen. Und da reicht auch so ein obskurer Wettkampf mit Stockfish völlig aus, um eine Spielstärke jenseits der 3000 ELO zu beanspruchen.

Mehr nicht.
Das ist schon richtig. Und im Normalfall würde ich das auch sehen. Aus rein wissenschaftlicher Sicht ist das Ziel erreicht. Ein Rechenriese mit zich Spezialprozessoren kann diese und jene Spielstärke durch selbstständiges Lernen erreichen. Andererseits ist das nun keine Überraschung. Auch wenn er gegen Stockfish verloren hätte, wäre seine Spielstärke wohl jenseits der des Menschen. Interessanter wäre hier nun wirklich gewesen einen unkastrierten Stockfish zu schlagen oder nachzuweisen, dass man sowas auch auf weniger spezielle Hardware übertragen könnte etc. Aber gut, da man als Sponsor bei Schachveranstaltungen auftritt musste es natürlich schon Stockfish sein. Trotzdem... ich bin ziemlich vertraut mit wissenschaftlichen Arbeitsweisen. Ein weniger angreifbares Ergebnis wäre mit Sicherheit besser gewesen. Und dafür hätte man lediglich ein wenig mehr Zeit reinstecken und einen unkastrierten Stockfish nehmen müssen... So sind sie jetzt zwar in aller Munde, aber eben mit Nachgeschmack.

Wolfgang2 23.12.2017 09:45

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau
 
1 Anhang/Anhänge
Zitieren:

Zitat von Wolfgang2 (Beitrag 70832)
Ich habe mal diese Stellung von Stockfish 8 rechnen lassen, in der AlphaZero das unglaubliche Lc1-g5 !! spielte.
Nach über zwölf Stunden und etwa 55 Milliarden untersuchten Positionen (ca. 1,27 Mio. Knoten/Sekunde) habe ich ergebnislos abgebrochen (b2-b4, Tiefe 51/84).


Lc1-g5 gefunden nach 1.131.829.671.899 Knoten

In Worten: Etwa 1,1 Billionen untersuchte Stellungen bei gut 45 Stunden Rechenzeit waren nötig, um Lg5 als besten Zug zu finden.

Rechenleistung, siehe Foto: 6.935 kKn/sec.
Prozessor: Xeon E3-1225 v2
Energieverbrauch: 82 Watt x 45 Stunden = 3,7 kWh ;)

Gruß
Wolfgang

Egbert 23.12.2017 09:56

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau
 
Guten Morgen Wolfgang,

und das Ganze bei einer schlappen Suchtiefe von 59 Halbzügen :)

Gruß
Egbert

Lucky 23.12.2017 16:08

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau
 
Zitieren:

Zitat von Wolfgang2 (Beitrag 70960)
In Worten: Etwa 1,1 Billionen untersuchte Stellungen ...

nee, echt, gibts da nicht auch Rechenfehler? ist denn das alles vertrauenswürdig?

applechess 23.12.2017 18:22

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau
 
Zitieren:

Zitat von Wolfgang2 (Beitrag 70960)
Lc1-g5 gefunden nach 1.131.829.671.899 Knoten

In Worten: Etwa 1,1 Billionen untersuchte Stellungen bei gut 45 Stunden Rechenzeit waren nötig, um Lg5 als besten Zug zu finden.

Gruß
Wolfgang

Hallo Wolfgang
So ist SF also doch noch fündig geworden :)
Gruss
Kurt

Wolfgang2 23.12.2017 18:45

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau
 
richtig, Kurt. Ich war in dieser Sache hartnäckig, weil ich irgendwelchen theoretischen Begründungen, warum dieser Zug durch ein Raster gefallen sein soll - und "nie" gefunden wird, nicht glauben wollte.
Für mich lag die Begründung dafür darin, dass b2-b4 auch nicht schlecht ist, und Lc1-g5 eben nur lange Zeit ein bisschen schlechter bewertet wird.
Bereits nach 35 Stunden war "Lc1-g5" auf dem Schirm als aktuelle berechneter Zug. Dann kam meine Nachtruhe, und als ich am Morgen schaute: Immer noch Lg5 berechnet, aber als bester Zug noch b2-b4. Und plötzlich änderte es sich zu dem, was auf dem Foto gezeigt wurde. :)

Gruß
Wolfgang

Hartmut 23.12.2017 20:09

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau
 
Zitieren:

Zitat von Wolfgang2 (Beitrag 70965)
richtig, Kurt. Ich war in dieser Sache hartnäckig, weil ich irgendwelchen theoretischen Begründungen, warum dieser Zug durch ein Raster gefallen sein soll - und "nie" gefunden wird, nicht glauben wollte.
Für mich lag die Begründung dafür darin, dass b2-b4 auch nicht schlecht ist, und Lc1-g5 eben nur lange Zeit ein bisschen schlechter bewertet wird.
Bereits nach 35 Stunden war "Lc1-g5" auf dem Schirm als aktuelle berechneter Zug. Dann kam meine Nachtruhe, und als ich am Morgen schaute: Immer noch Lg5 berechnet, aber als bester Zug noch b2-b4. Und plötzlich änderte es sich zu dem, was auf dem Foto gezeigt wurde. :)

Gruß
Wolfgang

Ich könnte ja jetzt den Spielverderber spielen und sagen, dass laut dem Foto die Tiefe noch nicht abgeschlossen ist und der Zug noch verworfen werden kann... Aber weil Weihnachten ist... Nicht dass Wolfgang am Ende seine Stromrechnung nicht zahlen kann... :p :D

Aus Fairnessgründen muss man ja auch noch feststellen, dass wir auch nicht wissen, wie tief Alpha Zero rechnen musste. Diese Spezialprozessoren geben ja auch einiges an Leistung her und wir wissen nicht, wieviel wird jetzt genau für die Verwaltung des neuronalen Netzwerks gebruacht und wieviel für die pure Rechenleistung. Insofern bleibt natürlich immer der Makel, dass die Rechenleistung der Kontrahenten nicht vergleichbar war...

spacious_mind 23.12.2017 20:19

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

Hartmut 23.12.2017 20:48

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau
 
Verrat doch nicht wie ich arbeite... :D :D :D

spacious_mind 23.12.2017 20:52

Re: AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau
 
Zitieren:

Zitat von Hartmut (Beitrag 70968)
Verrat doch nicht wie ich arbeite... :D :D :D

LOL du bist nicht gemeint! :) Google aergert mich weil die das alles so als Kuensterlisch an den publikim verkaufen. Gebe Hiarcs oder die SF leute 1024 threads und du wuerdest sehen was sie erreichen koennten :)

Gruss
Nick


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:18 Uhr.

Powered by vBulletin (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
©Schachcomputer.info