Auf den Weg zum stärksten Schach-Programm der Welt
Re: Auf den Weg zum stärksten Schach-Programm der Welt
Falls jemand einen Wiki Artikel dazu verfassen möchte, stehe ich gerne helfend zur Seite.
PS.:
die Anzahl Kerne, die fürs Schach zur Verfügung gestellt werden, dürfen nicht von anderen Programmen belastet werden, nicht mal vom Betriebssystem, da sonst die Schachpartie, die im dem Moment der Belastung gespielt wird, verfälscht werden könnte.
Deswegen muss auch immer ein Kern frei bleiben.
Insgesamt müssen pro neuer Version des Schachprogrammes etwa 2.000-20.000 Partien gegen die alte Version gespielt werden (pro Minute und Kern ca. 2 Partien)bis das Ergebnis feststeht, ob die neue Version wirklich eine Verbesserung des Programms darstellt.
Nur wenn die neue Version gegen die alte gewinnt, wird sie übernommen und das Schachprogramm dadurch stärker.
Auch Programmierer können sich daran beteiligen, das Open Source-Programm zu verbessern.
Insgesamt reichen zur Zeit ca. 10 Schachprogrammierer Weltweit Ihre Verbesserungsvorschläge ein, die dann zur Prüfung durch das Rechennetzwerk gejagt werden.
PS.:
die Anzahl Kerne, die fürs Schach zur Verfügung gestellt werden, dürfen nicht von anderen Programmen belastet werden, nicht mal vom Betriebssystem, da sonst die Schachpartie, die im dem Moment der Belastung gespielt wird, verfälscht werden könnte.
Deswegen muss auch immer ein Kern frei bleiben.
Insgesamt müssen pro neuer Version des Schachprogrammes etwa 2.000-20.000 Partien gegen die alte Version gespielt werden (pro Minute und Kern ca. 2 Partien)bis das Ergebnis feststeht, ob die neue Version wirklich eine Verbesserung des Programms darstellt.
Nur wenn die neue Version gegen die alte gewinnt, wird sie übernommen und das Schachprogramm dadurch stärker.
Auch Programmierer können sich daran beteiligen, das Open Source-Programm zu verbessern.
Insgesamt reichen zur Zeit ca. 10 Schachprogrammierer Weltweit Ihre Verbesserungsvorschläge ein, die dann zur Prüfung durch das Rechennetzwerk gejagt werden.
Re: Auf den Weg zum stärksten Schach-Programm der Welt
Bommer, ich freue mich, dass Du jetzt auch dabei bist!
Hier noch ein paar zusätzliche Erklärungen:
Bei dem Test, der in unserem Computern abläuft, geht es nicht um den Zeitverbrauch, sondern welche Version die Partie gewinnt. Eine Schachpartie wiederholt sich niemals, denn es kommen jedesmal andere Eröffnungszüge aufs Brett und insgesamt gibt es mehr mögliche verschiedene Partieverläufe als Atome im Universum.
Das Endergebnis sieht dann z.B. so aus ( aus einem realen Match hier http://tests.stockfishchess.org/tests entnommen)
19-08-13 tk Multiple-Not-Improving
Erklärung:
Test vom 19-08-13 , Kürzel des Programmierers: tk , Name des Patches (der Programmveränderung): Multiple-Not-Improving
Ergebnis
Total: 46746 W: 9682 L: 9443 D: 27621
Erklärung:
"Total 46746 " : Gesamtzahl der gespielten Partien
"W: 9682" : Die neue Version hat davon 9682 Partien gewonnen.
" L: 9443 " : Die neue Version hat davon 9443 Partien verloren.
"D: 27621" : Unentschieden endeten 27621 Partien.
Insgesamt wurde dadurch festgestellt, das die neue Version eine Verbesserung ist, was auch durch die grün hinterlegte Farbe angezeigt wird.
Diese Art zu testen ist schon sehr ausgereift und wird schon seit vielen Jahren so gehandhabt. Nur das die Entwickler früher meist nur 1-2 Computer dafür zur Verfügung hatten. Die kommerziellen Anbieter arbeiten immerhin mit mehreren Computern gleichzeitig, aber wenn sich an diesem Open Source Projekt genügend Freiwillige beteiligen kann sich das Open Source Schachprogramm Stockfish gegenüber den kommerziellen Anbietern durchsetzen und schon sehr bald das stärkste Schachprogramm der Welt werden.
Und das für jeden frei und kostenlos überall verfügbar, sogar auf dem Handy. Finde ich eine tolle Sache, besonders wenn man dann sagen kann, das man ein Teil dieses Projektes war und ist.
Hier noch ein paar zusätzliche Erklärungen:
Bei dem Test, der in unserem Computern abläuft, geht es nicht um den Zeitverbrauch, sondern welche Version die Partie gewinnt. Eine Schachpartie wiederholt sich niemals, denn es kommen jedesmal andere Eröffnungszüge aufs Brett und insgesamt gibt es mehr mögliche verschiedene Partieverläufe als Atome im Universum.
Das Endergebnis sieht dann z.B. so aus ( aus einem realen Match hier http://tests.stockfishchess.org/tests entnommen)
19-08-13 tk Multiple-Not-Improving
Erklärung:
Test vom 19-08-13 , Kürzel des Programmierers: tk , Name des Patches (der Programmveränderung): Multiple-Not-Improving
Ergebnis
Total: 46746 W: 9682 L: 9443 D: 27621
Erklärung:
"Total 46746 " : Gesamtzahl der gespielten Partien
"W: 9682" : Die neue Version hat davon 9682 Partien gewonnen.
" L: 9443 " : Die neue Version hat davon 9443 Partien verloren.
"D: 27621" : Unentschieden endeten 27621 Partien.
Insgesamt wurde dadurch festgestellt, das die neue Version eine Verbesserung ist, was auch durch die grün hinterlegte Farbe angezeigt wird.
Diese Art zu testen ist schon sehr ausgereift und wird schon seit vielen Jahren so gehandhabt. Nur das die Entwickler früher meist nur 1-2 Computer dafür zur Verfügung hatten. Die kommerziellen Anbieter arbeiten immerhin mit mehreren Computern gleichzeitig, aber wenn sich an diesem Open Source Projekt genügend Freiwillige beteiligen kann sich das Open Source Schachprogramm Stockfish gegenüber den kommerziellen Anbietern durchsetzen und schon sehr bald das stärkste Schachprogramm der Welt werden.
Und das für jeden frei und kostenlos überall verfügbar, sogar auf dem Handy. Finde ich eine tolle Sache, besonders wenn man dann sagen kann, das man ein Teil dieses Projektes war und ist.
Re: Auf den Weg zum stärksten Schach-Programm der Welt
Was sind denn die MNps? Millionen Züge pro Sekunde?
Bommer: Was für eine CPU ist das? Ich hatte mit 15 Cores nur 1,65 MNps....
Bommer: Was für eine CPU ist das? Ich hatte mit 15 Cores nur 1,65 MNps....
Re: Auf den Weg zum stärksten Schach-Programm der Welt
Richtig, Millionen Züge pro Sekunde, aber pro Kern. :-)nico hat geschrieben:Was sind denn die MNps? Millionen Züge pro Sekunde?
Re: Auf den Weg zum stärksten Schach-Programm der Welt
Schade, dass das nicht als BOINC-Projekt geplant wurde. Da hätte man sicher deutlich schneller rechenkräftige Unterstützung gefunden. So eine aufwändige Installation schreckt dann schon wieder etwas ab und ich habe ja noch BOINC parallel laufen. Da klauen sich die Programme dann gegenseitig die Rechenzeit. Als BOINC-Projekt hätte man da mal zwischendurch ein paar WUs reinschieben können.

Re: Auf den Weg zum stärksten Schach-Programm der Welt
Ich denke als Bonic lässt es sich nicht realisieren, weil man als User wissen muss, das die Kerne, die man zur Verfügung stellt, in der Zeit nicht anders belastet werden dürfen, um das Ergebnis nicht zu verfälschen (so wie ich es oben schon erwähnt hatte).Dunuin hat geschrieben:Schade, dass das nicht als BOINC-Projekt geplant wurde. Da hätte man sicher deutlich schneller rechenkräftige Unterstützung gefunden.
Der Vorteil ist, dass mit vergleichsweise wenig Ressourcen hier ein enormer Fortschritt erzielt werden kann, im Gegensatz zu vielen anderen DC-Projekten.
Und natürlich, dass das Ergebnis in Form eines (hoffentlich zukünftigen) Nr. 1 - Programms für jeden zur Verfügung steht.
Re: Auf den Weg zum stärksten Schach-Programm der Welt
mmh, da kommt mir doch eine portierung auf die GPU´s in den sinn.
so könnte man verschiedene partien paralell spielen mit enormer rechenleistung.
falls dies überhaupt realisierbar ist.


so könnte man verschiedene partien paralell spielen mit enormer rechenleistung.
falls dies überhaupt realisierbar ist.
Re: Auf den Weg zum stärksten Schach-Programm der Welt
geht leider nicht, da Schachprogramme Integer-Performance benötigen und GPUs floating point-Performance liefern.Norman hat geschrieben:mmh, da kommt mir doch eine portierung auf die GPU´s in den sinn.
Re: Auf den Weg zum stärksten Schach-Programm der Welt
Nicht, dass es ein Problem wäre wenn, aber bist du dir sicher, dass du nicht doch zu den Entwicklern gehörst? xD
MfG
MReed

MReed

Re: Auf den Weg zum stärksten Schach-Programm der Welt
Wenn ich einer der Entwickler wäre, wäre ich da stolz drauf, aber ich bin leider keiner.
Nur ein begeisterter Beobachter. Ich war schon damals vom Wettkampf 1996/1997 Deep Blue-Kasparov fasziniert.
Der Entwickler des DC-Projekts ist Gary Linscott, hier ist ein alter Artikel über ihn, den ich gefunden habe:
http://queensjournal.ca/story/2005-05-2 ... -wins-big/
Die Programmierer des urspünglischen Schachprogramms Stockfish sind Tord Romstad, Jooni Kiiski & Marco Costalba.
Seit Öffnung als DC-Projekt haben sich diese Programmierer an der Weiterentwicklung verdient gemacht:
Dan Schmidt
Dariusz Orzechowski
Eelco de Groot
Gary Linscott
jhellis3
Joona Kiiski
jundery
Leonid Pechenik
Marco Costalba
Reuven Peleg
Ryan Schmitt
Ryan Takker
Tom Vijlbrief
Uri Blass
Nur ein begeisterter Beobachter. Ich war schon damals vom Wettkampf 1996/1997 Deep Blue-Kasparov fasziniert.
Der Entwickler des DC-Projekts ist Gary Linscott, hier ist ein alter Artikel über ihn, den ich gefunden habe:
http://queensjournal.ca/story/2005-05-2 ... -wins-big/
Die Programmierer des urspünglischen Schachprogramms Stockfish sind Tord Romstad, Jooni Kiiski & Marco Costalba.
Seit Öffnung als DC-Projekt haben sich diese Programmierer an der Weiterentwicklung verdient gemacht:
Dan Schmidt
Dariusz Orzechowski
Eelco de Groot
Gary Linscott
jhellis3
Joona Kiiski
jundery
Leonid Pechenik
Marco Costalba
Reuven Peleg
Ryan Schmitt
Ryan Takker
Tom Vijlbrief
Uri Blass
Re: Auf den Weg zum stärksten Schach-Programm der Welt
Ich versteh jetzt noch nicht ganz warum die Kerne exklusiv zur Verfügung stehen müssen und andernfalls das Ergebnis verfälscht wird?
Es geht doch nur darum ob gewonnen/verloren oder unentschieden gespielt wird. Da kann es doch egal sein, wenn es etwas länger dauert.
yoyo
Es geht doch nur darum ob gewonnen/verloren oder unentschieden gespielt wird. Da kann es doch egal sein, wenn es etwas länger dauert.
yoyo
Re: Auf den Weg zum stärksten Schach-Programm der Welt
Das liegt daran, das die Belastung ungleichmäßig verteilt sein könnte, z.B. gerade dann wenn Schwarz am Zug ist gibt es eine Belastung, der Zug wird dadurch schlecht und die Partie geht dadurch verloren und verfälscht die Statistik.
Der Zug dauert bei Belastung also nicht länger sondern wird schlechter, denn es wird mit fester Zeitkontrolle gespielt.
Jede Seite hat bei den Tests pro Partie nur 15 Sekunden Zeit plus zusätzlich 0,05 Sekunden pro Zug.
Auf der Webseite als "sprt @ 60+0.05 th 1" beschrieben.
Der Zug dauert bei Belastung also nicht länger sondern wird schlechter, denn es wird mit fester Zeitkontrolle gespielt.
Jede Seite hat bei den Tests pro Partie nur 15 Sekunden Zeit plus zusätzlich 0,05 Sekunden pro Zug.
Auf der Webseite als "sprt @ 60+0.05 th 1" beschrieben.