Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Statistik (Turnierauswertung näherungsweise)
- - By Klaus Meier Date 2013-08-28 08:47
Hallo
hab mir mal die Mühe gemacht eine Faustformel anzugeben
zur Berechnung der ELO- Veränderung sowie Standardabweichung
dieser Veränderung. Berechenbar allein aus der Anzahl W;L;D
W=WIN =Anzahl Gewinnpartieen
L= LOSS =  Anzahl Verlustpartieen
D= DRAW= Anzahl Remispartieen
T= Total = Anzahl Gesamt =W+L+D

Anhand einiger Überlegungen anhand Statistik
und Berechnung von ELO-Zahlen ergeben sich folgende Faustformeln:

Näherungsweise gilt  (Faustformeln) :

I.)  deltaELO = 800 * ((0.5*D+W)/T-0.5)
II.) sigma = 230/sqrt(T)

sigma ist hierbei die einfache Standardabweichung von deltaELO

Beispiele dazu:
-----------------------------------------------------------------------------------
1. Beispiel
W=25
L=25
D=50
T=100

deltaELO=800*((0.5*50+25)/100-0.5)
detaELO = 800*((25+25)/100-0.5)
deltaELO=800*(50/100-0.5)
deltaELO=800*(0.5-0.5)
deltaELO=0
==========

sigma= 230/sqrt(100)
sigma= 230/10
sigma=23
==========


2.Beispiel :
W=1995
L=1806
D=7548
T=11349

deltaELO=800*((0.5*7548+1995)/11349-0.5)
deltaELO=6.7
=========

sigma=230/sqrt(11349)
sigma=230/106.5
sigma=2.2
========

Klaus

Ps.:

Neue ELO ist :

neuELO= M + deltaELO   +-sigma

(M=ELOmittelwert aller Gegner)
Parent - - By Klaus Meier Date 2013-08-28 09:29
[quote="Klaus Meier"]

neuELO= M + deltaELO   +-sigma

[/quote]

sollte heissen:
Leistung = M + deltaELO +-sigma
=======================

neuELO wird gleitend berechnet :

neuELO =  0.9*altELO  + 0.1*Leistung
=========================

Klaus
Parent - - By Benno Hartwig Date 2013-08-28 11:35 Edited 2013-08-28 11:39
[quote="Klaus Meier"]Leistung = M + deltaELO +-sigma[/quote]Thanx für die Ausführungen, Klaus.
Wenn ich dich nun richtig verstanden habe, bedeutet dann z.B. die Formulierung:

     "Leistung = 2500 + 50 +-5"

dass die 'Leistung' mit der üblichen '95%igen Wahrscheinlichkeit' eingermaßen genau liegt in dem Intervall mit den Grenzen

     2550 - 10 und 2550 + 10

(ich weiß, diese Formulierung ist lax)
richtig?

Benno
Parent - - By Klaus Meier Date 2013-08-28 12:33
[quote="Benno Hartwig"]
[quote="Klaus Meier"]Leistung = M + deltaELO +-sigma[/quote]Thanx für die Ausführungen, Klaus.
Wenn ich dich nun richtig verstanden habe, bedeutet dann z.B. die Formulierung:

     "Leistung = 2500 + 50 +-5"

dass die 'Leistung' mit der üblichen '95%igen Wahrscheinlichkeit' eingermaßen genau liegt in dem Intervall mit den Grenzen

     2550 - 10 und 2550 + 10

(ich weiß, diese Formulierung ist lax)
richtig?

Benno
[/quote]

Hi Benno
Ja genau !
sigma (68%)  ist in deinem Beispiel =5
2sigma (95%)  ist in deinem Beispiel dann =10
(ist doch ganz einfach nicht war ?)
Klaus
Parent - - By Benno Hartwig Date 2013-08-28 13:02 Edited 2013-08-28 13:09
[quote="Klaus Meier"](ist doch ganz einfach nicht war ?)[/quote]Als 'schwierig' hatte ich das ja auch nie angesehen oder bezeichnet.
Aber man mag darüber nachdenken wollen, ob diese Art der Bezeichnung der Unschärfe in Ratinglisten eigentlich intuitiv ist.
Ok, ich habe aber inzwischen schon gesehen, dass deine Schreibweise in der angewandten Statistik gängig ist.
(http://de.wikipedia.org/wiki/Standardabweichung)
Benno
Parent - - By Klaus Meier Date 2013-08-28 13:37
[quote="Benno Hartwig"]
Aber man mag darüber nachdenken wollen, ob diese Art der Bezeichnung der Unschärfe in Ratinglisten eigentlich intuitiv ist.
Ok, ich habe aber inzwischen schon gesehen, dass deine Schreibweise in der angewandten Statistik gängig ist.
(http://de.wikipedia.org/wiki/Standardabweichung)
Benno
[/quote]

Na ja, ich bin in der Regel auch recht kreativ und für Neuerungen zu haben.
In diesem Falle tät jedoch schon dafür plädieren,das Gängige zu übernehmen.
Wir könnten uns jedoch auch so einigen,
wenn geschrieben wird
Beispiel :   ELO= 5.79 +-1.85
dann ist mit 1.85 die einfache Standardabweichung gemeint 
Falls etwas anderes gemeint ist, als die einfache Standardabweichung,
dann muss in Klammern gesetzt, das entsprechende Prozent "Perzentile" mit angegeben werden :
Beispiel :  ELO= 5.79 +-3.7 (95%)
Dann gibt es hoffentlich keine Streitigkeiten mehr hier im Forum,
sondern hin und wieder vielleicht höchstens mal Missverständnisse wegen der Schreibweise.
Klaus
Parent - - By Benno Hartwig Date 2013-08-28 16:38 Edited 2013-08-28 16:44
[quote="Klaus Meier"]Na ja, ich bin in der Regel auch recht kreativ und für Neuerungen zu haben.
In diesem Falle tät jedoch schon dafür plädieren,das Gängige zu übernehmen.[/quote]Einverstanden, nur ist zu überlegen, was hier gängig ist.
Leider fand ich auf die Schnelle keine Beschreibung dazu, was die entsprechenden Angaben in den etablierten Listen (unten eine Auswahl) genau bedeuten.
http://www.husvankempen.de/nunn/40_40%20Rating%20List/40_40%20All%20Versions/rangliste.html
http://www.computerchess.org.uk/ccrl/4040/ (hin und wieder gibt es asymmetrische Angaben)
http://www.inwoba.de/
http://ssdf.bosjo.net/list.htm (hier ist auch die Asymmetrie interessant)
http://ls-ratinglist.beepworld.de/
etc.

Sollte bei diesen Listenbetreibern eine einheitliche Sicht auf die Bedeutung dieser Genauigkeitsangaben bestehen, dann würde ich dies für die Computerschachszene auch gern weiterhin als das 'Gängige' nutzen wollen.

Benno
Parent - - By Klaus Meier Date 2013-08-28 17:35
Mit "Gängig" meinte ich die Schreibweise, welche in der angewandten Statistik allgemein gängig ist.
Diese könnte doch der Einfachheit wegen übernommen werden.
In den Engine-Rating-Listen ist offenbar an einen Eintrag zufälliger Fehler (Standardabweichung etc.) der Testergebnisse selten gedacht.
Die Frage ist eher, ob denn das überhaupt wirklich nötig ist.
Ein Schachprogrammentwickler, der nach 40 Spielen eine ELO-Steigerung von 21 Punkten per ELOSTAT vermelden kann, ist doch happy und zufrieden.
Das der zufällige Fehler nach einer einfachen Faustformel nach 40 Spielen noch immer sigma = 230/sqrt(40) = 36 beträgt, das kannte bisher niemand hier und es intressierte bisher wohl niemanden besonders.  So wie ich das sehe wurden die "21 Punkte ELO-Steigerung" dann ohne weiteres einfach auf die alte ELO aufaddiert... und die neue ELO war fertig berechnet. So viel zu dem was meiner Beobachtung hier in der Engine-Engine-Turnier-Auswertung gängig ist. Nicht mal an eine glättende (gleitende) Anpassung der neuen ELO nach einer Turnierauswertung ist durchgehend gedacht.  In Erkenntnis dieses Mangels wurden dann wohl von einigen Auswertern extrem viele Spielergebnisse (einige Tausend) durchgespielt und ausgewertet, was die Statistik dann etwas verbessert hat, jedoch inzwischen wegen immer kleinern Verbesserungen in der Spielweise der Engines und damit verbunden geringen ELO-Steigerungen von Turnier zu Turnier wohl inzwischen auch nicht mehr greift.  Wir brauchen vielleicht jemanden, der Turnierergebnisse zentral auswerten kann und neue ELO-Zahlen stimmig berechnen kann. So etwa nach dem Vorbild des DWZ-System des deutschen Schachbundes. Warum nicht auch Engine-Turniere nach diesem Vorbild auswerten ? Eine Berechnung zufälliger Fehler braucht dann nur noch der Programmentwickler, um anhand seiner Statistik beurteilen zu können, ob seine letzte Programmänderung auch wirklich eine Verbesserung der Spiel-Performance gebracht hat, bevor er seine Engine frei gibt bzw.veröffentlicht. Turniere müssen vermutlich völlig unabhängig vom Programmentwickler laufen, um glaubhafte Ergebnisse und glaubhafte ELO-Zahlen liefern zu können. Diese Forderung wird aber wohl an der Realität scheitern. Genug geschwafelt. Gute Nacht

 
K.
Parent - - By Benno Hartwig Date 2013-08-28 19:09
[quote="Klaus Meier"]Das der zufällige Fehler nach einer einfachen Faustformel nach 40 Spielen noch immer sigma = 230/sqrt(40) = 36 beträgt, das kannte bisher niemand hier und es intressierte bisher wohl niemanden besonders.  [/quote]Klaus, du solltest 'die hier' nicht unterschätzen.
Benno
Parent - By Klaus Meier Date 2013-08-28 21:40
[quote="Benno Hartwig"]
Klaus, du solltest 'die hier' nicht unterschätzen.
Benno
[/quote]

Ach wo, das tu ich schon nicht 
das sieht nur so aus 
K.
Parent - By Ingo Bauer Date 2013-08-28 19:17
[quote="Klaus Meier"]
... So viel zu dem was meiner Beobachtung hier in der Engine-Engine-Turnier-Auswertung gängig ist...
[/quote]

Ich glaube du bist ein VIEL besserer Statistiker als Beobachter!

Ingo
Parent - - By Frank Quisinsky Date 2013-08-29 06:22
Hallo Klaus,

interessant Deinen Ausführungen zu folgen.

Meines Erachtens ist bei der Erstellung einer Ratingliste hauptsächlich folgende Frage entscheidend (versuchte ich mit Partiematerial zu lösen).
Bin eher der Praktiker als der große Formelersteller.

Bei wie vielen Gegnern erhalte ich mit möglich wenigen Partien pro Eng-Eng Match das wahrscheinlich beste Ergebnis?

In der SWCR hat immer jeder gegen jeden 40 Partien gespielt (Datenbank ist für statistische Zwecke hervorragend geeignet, siehe unter http://www.amateurschach.de).

Da ich nun den Wert 40 Partien pro Match nach Testzeit x nur sehr aufwendig verändern konnte verblieb als Ersteller für mich die Frage:
OK, bei 40 Partien pro Match wie viele Gegner sollten es sein nach meiner Logik.

Deine Aussage:
Das der zufällige Fehler nach einer einfachen Faustformel nach 40 Spielen noch immer sigma = 230/sqrt(40) = 36 beträgt, das kannte bisher niemand hier und es intressierte bisher wohl niemanden besonders.


Wie weit verringert sich dieser Wert wenn Gegner 2, 3, 4, 5, hinzukommt.

Hatte damit anhand der Endergebnisse nach über 100.000 Partien in der Datenbank experimentiert.
Engines herausgepickt und zunächst Ergebnisse simuliert wie es bei 39, 38, 37, 36 etc. Partien aussehen könnte.

Schaue ich in meine älteren Auswertungen und überprüfe nun Deine 36 komme ich zu dem Ergebnis: 38!

Wenn nun Gegner 2 -20 hinzukommt habe ich zum tatsächlichen Ergebnis einer Engine die z. B. 100 Gegner hatte (Shredder in meiner Datenbank hatte gar noch weit mehr Gegner) erhalte ich folgendes Ergebnis:
Bei ca. 22 Gegner und 40 Partien pro Match ist so eine Art Schwelle erreicht. Meine das ein oder 10 weitere Gegner das Endergebnis in ELO zwar noch verändern aber diese Veränderung unerheblich ist weil der Testaufwand sich hierfür hinsichtlich "genauere ELO" nicht lohnt. Insofern Schwelle erreicht hinsichtlich mit dem geringsten Aufwand den größtmöglichen Erfolg ...

Bei 22 Gegnern und 40 Partien pro Match = 840 Partien ist die ELO nach Bayes ca. durchschnittlich 4 ELO genau.
In 3 von 200 Fällen (nach meiner Datenbank) kam es dann zu Abweichungen größer als 20 ELO (maximal waren es 24) nach unten oder oben zum Vergleichs-Ergebnis nach 840 Partien. Damit konnte ich friedlich leben

Bei 10 Gegnern und 40 Partien pro Match = 360 Partien ist die ELO nach Bayes als Beispiel um ca. durchschnittlich 21 ELO genau.
Simuliere ich zu den 10 Gegnern nun 160 Partien pro Match hinzu bleibt im Grunde die Abweichung von ca. 19 ELO.
Es müssen extrem viele Partien gespielt werden um bei 10 Gegner in einer Liste Ausgaben zu erzeugen die vergleichbar sind mit einer Liste wo mehr Gegner wesentlich weniger Partien gespielt haben.

Eine Ratingliste die z. B. also nur 10 Gegner hat liefert Werte die um 19 ELO genau sind wenn ca. das 20fache als 40 Partien gespielt wurden sind.. Sind die Gegner im Grunde noch grob gleich (beruhen auf gleichen Sourcen, gleiches Spielverhalten etc..) fällt der Wert logischer Weise noch ein wenig krasser aus.

Meines Erachtens macht es daher eher Sinn einen Test zu weit es geht hinsichtlich Anzahl der notwendigen Partien zu minimieren (unnötige Stromkosten sollten vermieden werden) um eine ausreichende Aussage über die Spielstärke zu definieren.

Die Frage die interessant ist:
Wie kann ich die 840 Partien weiter minimieren und gute Aussagen zu erhalten. Oder ...
Wie viele Gegner brauche ich wenn ich nur 20 Partien pro Match spielen lasse um die 4 ELO durchschnittliche Abweichung zu erhalten. Wahrscheinlich nicht die doppelte Anzahl an Gegner, sprich 44.
Und insofern verringert sich die notwendige Anzahl an Partien je mehr Gegner hinzukommen.

Nach meiner Erfahrung mit Ratinglisten ist das der wichtigste Faktor für genaue Zahlen in Anbetracht dessen den Testaufwand so weit es geht zu minimieren.

Zwar spielen auch Bedenkzeit, Endspieldatenbanken, Hash, Ponder etc. eine Rolle aber diese Beeinflussungsfaktoren sind nicht so gravierend wichtig als Anzahl der Gegner hinsichtlich genaue Ausgaben in unserer eigentlich ungenauen ELO Berechnung.

Viele Grüße
Frank
Parent - - By Frank Quisinsky Date 2013-08-29 06:40 Edited 2013-08-29 06:43
Hi,

und das eigentliche Problem bleibt im Grunde.
Nehme ich 22 andere Gegner erhalte ich wahrscheinlich oder besser logischer Weise andere Ergebnisse.
Diese können von dem vorherigen Ergebnisse in ELO, teils auch weiter, abweichen.

Beispiel:
Wenn z. B. eine Engine gegen 22 andere Engines nach 1.000.000.000.000 etc. Partien eine ELO von 2.800 erreicht wird diese Engine bei 22 anderen Gegner und der gleichen Anzahl an Partien vielleicht 2.750 ELO erreichen (gewagte unbewiesene Aussage die aber logisch nach Erfahrungswerten ist). Die Anzahl der Partien ist meines Erachtens nicht so wichtig eher die Gegner selbst.

Und von daher wird die ELO niemals genau sein hinsichtlich der Möglichkeiten die wir im Computerschach haben.
Aber da wir ja nun nur die Engines haben die verfügbar sind und im TOP Bereich sind es wenige, bleiben die Ratinglisten dennoch interessant weil wir gar keine andere Möglichkeit zum messen haben bzw. uns interessiert wie die Spielstärkeunterschiede der verfügbaren Engines nun ca. sind.

These:
Wenn ein Großmeister nun eine ELO von 2.600 nach 1.500 Partien bei vielleicht 800 Gegnern erreicht hat ist dieser Wert genauer als in einer Comp-Comp Ratingliste ein Programm gegen 20 Gegner und 1.000.000.000.000 Partien. Das Problem hier ist nur ... ein GM verändert seine Spielstärke ein Computer Programm in gleicher Version nicht. Insofern haben wir es bei dem Messen mit Computerschachprogrammen einfacher gute Aussagen zu treffen.

Gruß
Frank
Parent - - By Frank Quisinsky Date 2013-08-29 06:59
Kurz ...

Die bestehende Ratinglisten sind eigentlich alle sehr gut.

IPON:
Anzahl der Gegner bei Anzahl der Partien ist OK. Etwas weniger Partien würden hier aber auch ausreichen um ein Rating zu erzeugen was ausreichen würde. Hier kommt es ja auch immer auf die eigenen Ansprüche an. Wenn ich z. B. IPON früher mit SWCR verglichen habe, würde bei 20 Gegner ca. 60 Partien pro Match ausreichen um meinen Anspruch an Genauigkeit abzudecken.

CEGT:
Langfristig mehr Gegner und zunächst weniger Partien als bei IPON. Im Grunde waren die Ergebnisse zu meiner damaligen SWCR etwas besser geeignet als bei IPON. Aber im Grunde auch nicht die Rede wert. CEGT liefert sehr gute Ergebnisse. Schön hier, breit gefächert auch bei den schwächeren Engines und auch unterschiedliche Bedenkzeiten etc.. Die beste Ratingliste für Personen die hinsichtlich Engines etwas breiter gefächert sind. IPON ist besser wenn schnelle Ergebnisse der TOP Programme gefragt sind.

SWCR:
Meine eigene Ratingliste befriedigte logischer Weise meine Ansprüche da ich dieses System für mich so ausgeklügelt habe wie ich es mir wünschte.

Ratingliste von Stefan Pohl:
Ist auch interessant, nicht hinsichtlich erzeugter ELO sondern hinsichtlich der Reihenfolge der verwendeten Engines die sonst nicht getestet werden. Hier kann ich sehr schön ablesen welche der "sonstigen" Engines welche Fortschritte erzielt hat. Hierfür reicht das Testverfahren absolut aus und ist hierfür auch sehr genau.

Im Grunde passiert folgendes:
Durchdachte Systeme hinsichtlich der Erstellung einer Ratinglisten liefern gute - sehr gute Ergebnisse nach den Möglichkeiten die wir heute haben. Aber ein ultimatives Ergebnis erzielt keine der Ratinglisten. Wir können nicht ultimativ sagen eine Engine ist 2.800 ELO stark egal welche Beeinflussungsfaktoren verändert werden. Andere Bedenkzeit, andere Gegner etc. liefern andere Ergebnisse. Aber wir stellen mehr und mehr fest das die Abweichungen bei unterschiedlichen Testverfahren gar nicht so weit von einander abweichen.

Wir könnten vielleicht heute sagen ein Protector 1.5.0 liegt je nach verwendeten Bedingungen ca. bei 2.850 ELO +- 100 bei einem Core.
Das ist doch mal eine generelle Aussage

Gruß
Frank
Parent - By Frank Quisinsky Date 2013-08-29 07:13 Edited 2013-08-29 07:19
Und Eng-Eng Fortschritte bei nur einer Engine und Vorgängerversionen?

Na ja ...
Dann erzeilt Stockfish x gegen y 5 ELO mehr.
Mag ja sein und es ist durchaus möglich das die Engine sich dann auch verbessert hat, sicher ist das nicht.

Verhält sich genauso wie mit der Fliege, die jede 4 Sekunden das Gedächtnis verliert und immer wieder gegen die Scheibe donnert oder uns ärgert weil sie nichts dazulernt wenn wir nach ihr ausholen. Sie versucht es 4 Sekunden später erneut. Stockfish - Stockfish ist Fliegentesten auf hohem Niveau. Quasi eine Optimierung der 4 Sekunden bevor die gleichen Fehler wieder neu beginnen
Parent - - By Klaus Meier Date 2013-08-29 07:26
Hallo Frank,

Sicher gibt jeder der eine Ratingliste erstellt, das Beste was derzeit und anhand bisheriger Erfahrungen erreicht werden kann.
Zugegeben durchdringe ich euer Bewertungssystem nicht wirklich gedanklich vollständig. Überall ist etwas anderes zu lesen und es mangelt an Konsistenz , so kommt es mir vor.  Dein Gedanke : wenige Spiele pro Turnier,dafür aber möglichst viele Teilnehmer , das ist genau das was ich auch vorschlagen täte. Die Spielergebnisse vieler kleinerer Turniere sollten dann jedoch zusammengeführt werden in ein zentrales Auswertungssystem.  Auf diese Weise würden sich dann die jeweiligen ELO-Zahlen von Turnier zu Tunier nach und nach einem Wert mit einer guten Statistik nähern. Nach dem Motto viele Turniere mit wenigen Spielen ergibt dann, wenn alles zusammengeführt wird wieder ein grosses Auswertungssystem mit sehr vielen Spielen. So wird es doch auch bei den Mensch-Mensch-Turnieren gemacht. Spielergebnisse aus sehr vielen kleinen Turnieren werden einem zentralen ELO-Bewertungssystem gemeldet und dort zentral ausgewertet. Das Ergebns ist dann wirklich sehenswert und glaubhaft. Selbst dann, wenn die ELO eines einzelnen Spielers auch mal hin und her schwankt über die Zeit. Nun hab ich momentan keinen Überblick, ob so etwas auch für Engine-Turniere sinnvollist und organisiert werden kann. Mein Eindruck, hier kochen viele ihr eigenes Süppchen ! Jedoch mir ist nicht wirklich klar,weshalb du deine 40-Spiele aus deinen Turnieren nicht zusammenrechnen kannst mit den Turnierergebnissen aus anderen Listenbetreibern. So gäbe es schon einige Engine-Turnierbetreiber, die Ihre Engine-Turnierergebnisse in ein zentrales Auswertungssystem einspeisen könnten um endlich mal zu einem einheitlichen und glaubhaften ELO-Bewertungssystem zu gelangen.  
K.
Parent - By Frank Quisinsky Date 2013-08-29 07:43
Hallo Klaus,

es gibt glaube ich eine Datenbank wo jemand die Ergebnisse sammelt und hieraus eine Berechnung startet, also die Ergebnisse aller Listen zu einer zusammenführt. Hatte ich kürzlich mal in TalkChess gelesen. Habe die Szene in den letzten 18 Monaten nicht so sehr verfolgt aber die Datenbank gibt es.

Eigene Süppchen kochen ...
Das ist leider so im Computeschach und von diesem Virus war ich auch immer befallen. Arena ist die beste GUI, meine Ratingliste ist ultimativ ... etc..
So sollte es auch ein wenig sein um langfristig etwas zu versuchen bzw. sich einzubringen. Oftmals entstehen gerade hierdurch die "wirklich" neuen Erkenntnisse. Puschen mit Gewalt ist oftmals die einzige Möglichkeit zu bewirken dass zumindest aus eigenen Arbeiten weitere Arbeiten entstehen. Aus einer Engine in WB Zeiten dann 5, dann 10, dann 100 und dann neue Protokolle, neue GUIs etc.. Die wichtigen Themen müssen mehr oder weniger ziemlich dreist und frech voran getrieben werden.

Was ich aber vermisse ist die Kritik an der eigenen Arbeit.
Das können Männer oft nicht so gut und dann entstehen die Hahnenkämpfe die teilweise richtig schlimm zu lesen sind. Egal zu welchem Thema, egal in welchem Forum.

Und ja ...
Es mangelt an Konsistenz!
Ehrlich gesagt ist es auch so!!

Also meine Ergebnisse stelle ich ja zum Download zur Verfügung. Jeder hätte ja eine neue Ratingliste darauf aufbauen können oder diese Partien dann in einer anderen Form verwerten können. Ich wünschte mir immer ein Statistiker nimmt sich der Datenbank an weil diese ist wirklich gut geeignet Statistiken zu erstellen. ELOstat beruht im Grunde auch auf Ergebnisse meiner alten Winboard Datenbank um zu prüfen etc..

Ein zentrales Auswertungssystem hat die CEGT ja. Hier fließen viele Ergebnisse von Testern zusammen. Personen die sich hieran nicht beteiligen sind dann mit dem eigenen Suppe kochen beschäftigt. Leider zähle ich auch hierzu, weil ich bei jeder Aktivität selbst gerne experimentiere. Bin da viel zu verspielt ohne jetzt den Anspruch zu entwickeln ... will doch besser als als CEGT (das ist Quatsch).

Viele Grüße
Frank
Parent - - By Klaus Meier Date 2013-08-29 07:41
[quote="Frank Quisinsky"]

Wir könnten vielleicht heute sagen ein Protector 1.5.0 liegt je nach verwendeten Bedingungen ca. bei 2.850 ELO +- 100 bei einem Core.
Das ist doch mal eine generelle Aussage

Gruß
Frank
[/quote]

Hmmm. sicher es mag sein, das es Uneinigkeit darüber gibt, was soll so eine Liste ganu aussagen.
So wurden Engine-Turniere mit unterschiedlichen Randbedingungen ins Leben gerufen.
Also jeder Listenersteller kocht sein eigenes Süppchen. Der eine hat das neuser Computer-Equipment mit 4core und 5GHz und zu einemCluster aus 30 Motherboards zusammen gebaut und rechnet darauf Mega Turniere in kürzester Zeit. Der andere hat seinen alten "286er" noch zu Hause stehen und macht mal ein kleines Turnier mit ein paar verschiedenen Engines. Das kann offenbar unter ComputerLeuten nicht befriedigen. Der Freak mit dem 286er genisst wenig Ansehen, der mit dem RiesenCluster geniesst hohes Ansehen. Tatsächlich ist es jedoch so,das es für eine ELO-Vergleichsliste keine Rolle spielt, unter welchen Randbedingungen das Turnier ausgetragen wird. Wichtig ist ,das in einem bestimmten einzelnen Turnier für alle Turnierteilnehmer exakt die selben Randbedingungen herrschen. Ist das gesichert, dann können Turnierergebnisse aus vielen Turnieren (egal unter welchen Randbedingungen das Turnier ausgespielt wurde) problemlos zusammengeführt werden in ein zentrales ELO-Auswertungssystem. Da wäre mein Vorschlag .
K.
Parent - - By Frank Quisinsky Date 2013-08-29 08:04
Hallo Klaus,

sicherlich kann jeder auf einem alten System den gleichen Spaß beim Testen haben und auch die gleichen wichtigen statistischen Aussagen treffen. Die Hardware verändert sich zwar auch und die Engines passen sich dem an aber letztendlich kann jeder auf seinen System nettes erzeugen. Das hieran nur wenige ein Interesse haben liegt auch ein wenig in der Natur der Sache. Ferner ist es heute nicht mehr so wie noch vor x Jahren. Seinerzeit mussten zunächst mal Beschäftigungsideen entwickelt werden. Heute gibt es so viele Beschäftigungsideen das die Gruppen an Interessierten zu einem Thema verteilter sind. Ferner hat jeder die Möglichkeit selbst aktiv zu werden und so basteln viele eher an eigenen Dingen als sich für ein Thema in einer Community zu begeistern. Begeistern können wir heute im Grunde nur noch dann wenn etwas komplett neues kommt.

z. B. drei Engines ergänzen sich zusammen und basteln an den Gegenzug gemeinsam. Drei-Hirn Idee ist genial für zukünftige Entwicklungen. Wir mixen Stockfish, Komodo und Spark und lassen Matches gegen Houdini laufen oder erstellen Ratinglisten aus Kombinationen von Engines.

Würde z. B. hierzu ein offenes Konzept laufen bin ich mir sicher das plötzlich so einige aufwachen um dann mitzumachen. Bis dahin sind die einen auf dem Server aktiv um Ihre Hardware testen zu lassen, die anderen machen Analysen oder erstellen Ratinglisten etc..

Sage mal so ...
Eine derzeit etwas gelangweilte Community steht in den Startlöchern und wartet auf ein Genie mit einer neuen Idee. Siehe Stockfish ... mal etwas anderes und direkt x Personen werden angezogen.

Und ja ...
Testen mit gleichen Randbedinungen ist klar und ein zentrales Auswertungssystem müsste unterstützt werden. Also CEGT unterstützen oder etwas neues aufbauen. CEGT ist ja auch schon in die Jahre gekommen und Veränderungen hier und dort sorgen auch dafür das plötzlich mehr wieder Lust auf etwas haben.

Gruß
Frank
Parent - - By Frank Quisinsky Date 2013-08-29 08:20
Hi,

ach ja, was auch problematisch ist:
Zusammenfügen von Ergebnisse !!

Kommt jeder mit seinen 1.000.000 1-Minute Partien daher und will diese in eine Datenbank schaufeln in welcher 5.000 Turnierpartien enthalten sind. Die Ergebnisse der Turnierpartien gehen unter und das ist schade. Oder 1-Minute Partien auf Pentium 1GHz fließen ein etc..

Müsste dann gesagt:
Partiequalität mindestens folgende Voraussetzungen und max. folgende Voraussetzungen.
Einteilung in vielleicht 10 Kategorien hinsichtlich Partiematerial, z. B. Turnierpartien Qualität 10 von 10.

Eine Turnierpartie muss dann statistisch 10x mehr in die Berechnung eingehen als eine Partie von der Qualität 1 von 10.

Wenn gesammelt wird brauchen wir zunächst mal ein Programm, welches die Qualität der Partien berechnet bzw. hieraus eine Art Multiplikator errechnet. Mittels dem Multiplikator Ergebnis dann die ELO berechnen. Dann hätten wir eine "fast ultimative ELO" für eine Engine z. B. für die Aussage: Das Programm x hat eine durchschnittliche Spielstärke bei 40 in 5 - 40 in 120 von X ELO.

Das wäre meines Erachtens so ziemlich "Das Beste" was für mich denkbar wäre in Anbetracht dessen was heute möglich ist.

Viele Grüße
Frank
Parent - By Frank Quisinsky Date 2013-08-29 08:30
GullChess 2.2 x64       2985  25 25  520  71%  2831  36% NEW

Auszug aus meiner aktuellen Testerei ...

In Fett der "Blunder", dem viele unterlegen sind und deswegen tausende von unnötigen Partien erzeugen.
Leider!!

Und der wichtigste Faktor "Anzahl an Gegner" wird in keiner ELO-Berechnung wirklich gebührend berücksichtigt.

Gruß
Frank
Parent - - By Klaus Meier Date 2013-08-29 09:01
[quote="Frank Quisinsky"]
Hi,

ach ja, was auch problematisch ist:
Zusammenfügen von Ergebnisse !!

Kommt jeder mit seinen 1.000.000 1-Minute Partien daher und will diese in eine Datenbank schaufeln in welcher 5.000 Turnierpartien enthalten sind. Die Ergebnisse der Turnierpartien gehen unter und das ist schade. Oder 1-Minute Partien auf Pentium 1GHz fließen ein etc..

Müsste dann gesagt:
Partiequalität mindestens folgende Voraussetzungen und max. folgende Voraussetzungen.
Einteilung in vielleicht 10 Kategorien hinsichtlich Partiematerial, z. B. Turnierpartien Qualität 10 von 10.

Eine Turnierpartie muss dann statistisch 10x mehr in die Berechnung eingehen als eine Partie von der Qualität 1 von 10.

Wenn gesammelt wird brauchen wir zunächst mal ein Programm, welches die Qualität der Partien berechnet bzw. hieraus eine Art Multiplikator errechnet. Mittels dem Multiplikator Ergebnis dann die ELO berechnen. Dann hätten wir eine "fast ultimative ELO" für eine Engine z. B. für die Aussage: Das Programm x hat eine durchschnittliche Spielstärke bei 40 in 5 - 40 in 120 von X ELO.

Das wäre meines Erachtens so ziemlich "Das Beste" was für mich denkbar wäre in Anbetracht dessen was heute möglich ist.

Viele Grüße
Frank
[/quote]

Qualitätsfaktoren einfügen ist zu umständlich. Das gibt nur Grundlage für Streitigkeiten.
Kommt jemand mit 10000000 Partieen daher, dann werden diese in kleinen Portionen per 100 Partieen pro Monat abgearbeitet also pro Monat nur 100 Partieen davon in das Auswertesystem übernommen. Dazwischen haben dann immer wieder andere Turniere Gelegenheit eingespeist und in der Auswertung berücksichtigt zu werden.
Wer 1000000 Partieen  auf einmal abgibt, macht das dann kein zweites mal, weil nach einigen Jahren sein inzwischen veraltetes Turnierergebnis noch immer Portionsweise berücksichtigt werden mus. Was ja dann seine neuen eigenen zeitnahen Turnierergebnisse blockieren würde.
K.    
Parent - - By Klaus Meier Date 2013-08-29 09:48
Arena von Martin Blume z.B. bietet doch die Möglichkeit Engine-Turniere durchzuführen und das Ergebnis wird in einer speziellen Turnierdatei abgelegt.
Wenn nun diese Turnier -Ergebnis-Datei einfach auf der Homepage von Herrn Blume übertragen werden könnte, könnte dort ein Turnierauswerteservice nach dem Vorbild des DWZ-Turnierauswertesystems des deutschen Schachbundes angeboten werden und laufen. Jeder, der zu Hause mal ein kleines Turnierchen mit Engines seiner Wahl hat laufen lassen, könnte dann die Ergebnisdatei, die Arena erzeugt hat in das Auswertesystem einspeisen. Dort wird das dann zeitnah übernommen und jedes kleinere Turnier bringt einen Beitrag zu einer Gesamtauswertung in der fortlaufend aktualisierten ELO-Liste. Wenn das funktioniert, wird das leicht ein Selbstläufer, der keine extra Arbeit mehr machen muss, denn die Turniere laufen dann in aller Welt verteilt und werden lediglich in einem ELO-Bewertungssystem zusammengeführt.
Evtl. lässt sich nach einigen wenigen Turnierkategorieen unterscheiden (Beispielsweise ... BULLET-Turniere: beinhalten <=1Min.Spiele ; Blitz:1Min.<=5Min.Spiele<10Min. ;STANDARD-Spiele mit längerer Spielzeit >5Min..  )
K.
Parent - - By Frank Quisinsky Date 2013-08-29 20:52
Hallo Klaus,

ich weiß, die Idee ist von mir.
Die noch viel bessere Umsetzung von Martin.

Habe mit Martin Arena entwickelt.
Und da gibt es noch ganz andere denkbare Möglichkeiten.

War ne schöne Zeit!

Viele Grüße
Frank
Parent - By Klaus Meier Date 2013-08-29 21:09
Arena finde ich auch prima.
Tja manchmal fehlt vielleicht das Geld und die Zeit um gute Ideen noch weiter auszubauen...
K.
Parent - By Klaus Meier Date 2013-08-29 08:26 Edited 2013-08-29 08:28
Hallo Frank,

Mich persönlich intressiert mehr das Spiel Mensch-Mensch, da ich selber seit meiner Jugend ein begeisterter Schachspieler bin.
Schachcomputer nutze ich heute gern für Analysezwecken im Anschluss an ein Turnier oder für die Turniervorbereitung.
Ich finde diese "Rechenmonster" sind wirklich schon prima 
Bestimmt wird es weitere Fortschritte geben auch in der fairen Bewertung von ELO-Spielleistungen dieser Maschinen. Da bin ich mir sicher.
Meine Aktivität momentan hier sind eher tempoär zu sehen und vermutlich fehlt mir auch die Erfahrung mit SchachcomputerTurnieren und Entwicklung, um hier wirklich Anregungen geben zukönnen, die aufgegriffen werden können. Trotzdem ganz nett sich Gedanklich auszutauschen.
Grüße
K.
Parent - By Klaus Meier Date 2013-08-29 11:08
[quote="Frank Quisinsky"]

Sage mal so ...
Eine derzeit etwas gelangweilte Community steht in den Startlöchern und wartet auf ein Genie mit einer neuen Idee.
Gruß
Frank
[/quote]

ach sooo... die Community wartet auf das Genie mit neuen Ideen
Auf wen denn noch warten? Ich bin doch schon da !
K.
Parent - - By Ernest Bonnem Date 2013-08-28 14:20
[quote="Klaus Meier"]2.Beispiel :
W=1995
L=1806
D=7548
T=11349

deltaELO=800*((0.5*7548+1995)/11349-0.5)
deltaELO=6.7
=========

sigma=230/sqrt(11349)
sigma=230/106.5
sigma=2.2
========

[/quote]
Deine Faustformel ist leider nicht richtig!

700*,  nicht 800*
und das -0.5 hat da nichts zu tun...

sigma = 700*(sqrt(W+L))/2T
also  350*(sqrt(1995+1806))/11349 = 1.9 (nicht 2.2)
Parent - - By Klaus Meier Date 2013-08-28 14:52
[quote="Ernest Bonnem"]
[quote="Klaus Meier"]2.Beispiel :
W=1995
L=1806
D=7548
T=11349

deltaELO=800*((0.5*7548+1995)/11349-0.5)
deltaELO=6.7
=========

sigma=230/sqrt(11349)
sigma=230/106.5
sigma=2.2
========

[/quote]
Deine Faustformel ist leider nicht richtig!

700*,  nicht 800*
und das -0.5 hat da nichts zu tun...

sigma = 700*(sqrt(W+L))/2T
also  350*(sqrt(1995+1806))/11349 = 1.9 (nicht 2.2)
[/quote]

Huch jetzt gibt es schon wieder Streit ?
also wenn ich 700 statt 800 nehme und die -0.5 durch die 0 ersetze dann kommt doch was völlig unstimmiges heraus.
bitte deine Faustformel Vorschlag für deltaELO ausführlich hinschreiben, andernfalls kann ichdeinen Einwand unmöglich nachvollziehen.

Für die Herleitung der II) (sigma-Faustformel) hatte ich folgende Vereinfachung gemacht:
a) deltaELO sei nicht allzu weit von Null entfernt
dann gilt für Ergebnisse aus Engine-Engine Schachturnieren näherungsweise (sehr häufig) folgendes:
W=L und D=W+L
(es gibt doppelt so viele Remis wie Gewinne bzw Verluste)
aus diesen vereinfachenden Annahmen folgt dann meine etwas einfachere Formel für das sigma
Die genau genommen allerdings dann nur für Ergebnisse aus Engine-Engine-SchachTurnieren hergenommen werden kann.
sigma=230/sqrt(T)

Mag sein, das deine sigma-Faustformel universeller einsetzbar ist,
Ich persönlich rechne lieber überschlagsmässig mit meiner vereinfachten Faustformel, wenn es um die Auswertung von
Engine-Engine-Turnieren geht.
Damit lässt sich sigma mit für meine Zwecke ausreichender Genauigkeit fast im Kopf ausrechnen.

Klaus
Parent - By Klaus Meier Date 2013-08-28 15:31
sorry...
Die 2. vereinfachende Annahme zur Herleitung von der sigma Faustformel
für Engine-Engine-Turnierauswertung war nicht
W=L und D=W+L
sondern
D/2 = W+L

so nun stimmts aber wohl endlich.
(kommt davon wenns mal schnell was aus dem Gedächtnis ins Forum schreibe.
hab grad extra doch noch mal meinen Zettel mit der Herleitung aus dem Papierkorb gefischt und nachgesehen.
also: D/2=W+L)
Parent - By Ernest Bonnem Date 2013-08-28 15:41
[quote="Klaus Meier"]Huch jetzt gibt es schon wieder Streit ?[/quote]
Warum Streit?...

bitte deine Faustformel Vorschlag für deltaELO ausführlich hinschreiben

score = (W+D/2)/T   und jeder % über 50% ist 7 Elo
(gilt natürlich nur in der "Nähe" von 50%: ungef. 35% bis 65%)

sigma-Faustformel

meine Formel is auch gut wenn die Remisquote nicht 50% ist

Aber man kann auch gut mit einer krummen Faustformel leben...   
Parent - By Klaus Meier Date 2013-08-28 15:08
unter der vereinfachenden Annahme das in ENGINE-ENGINE-Schachturnieren die Anzahl der Remis häufig wesentlich größer ist als die
Anzahl Gewinnpartie, und Anzahl Verlustpartieen, lässt sich die sigma Faustformel vereinfachen.
Klaus 
Up Topic Hauptforen / CSS-Forum / Statistik (Turnierauswertung näherungsweise)

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill