Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Interessantes zu großen Elodifferenzen
1 2 Previous Next  
- - By Stefan Pohl Date 2014-01-02 08:23
http://talkchess.com/forum/viewtopic.php?t=50266

Zwei kurze Zitate aus diesem (sehr mathematischen Thread):
"As it is in engine ratings, the ratings are probably inflated, and a comparison across a wide range gives bad predictions using the Logistic Model..."
"All three, ELOStat, BayesElo and Ordo use logistic curves, therefore all the rating lists."

In dem Thread wird sehr schön aufgezeigt, daß bei allen Elolisten-Erstellungsprogrammen (Bayeselo, Elostat, Ordo) sehr extreme Ergebnisse im statistischen Randbereich zu komplett falschen Eloergebnissen führen und somit auch zu falschen Ranglisten-Elos für Engines, die solche Ergebnisse erzielt haben, wo also solche falschen Werte in die Elozahl-Berechnung eingeflossen sind. Daß dieses Problem prinzipiell besteht, also daß man statistische Randbereiche beim Engine-Testen tunlichst vermeiden sollte, war mir zwar schon klar (anderen leider nicht), aber daß es zu so schlimmen Ergebnisverfälschungen führt, noch nicht.
Schön, daß es in der LS-Rangliste dieses Problem nicht gibt, denn es werden ja nur starke Engines gegen starke Gegner getestet - dank meiner 30%-Regel und der Tatsache, daß ich nur gegen die Top10-Engines (+ den Ur-Ippo (der aber auch schon sehr stark ist)) teste. Daher gibt es bei mir keine Ergebnisse jenseits der 85%-Marke (bzw. 15%-Marke), im top10-tournament ist das extremste Ergebnis sogar nur 75.7%-24.3% (Houdini 4 gegen Robbolito 0.085g3).
Zeigt einmal mehr, daß ich auf dem richtigen Weg bin, was die Testbedingungen angeht und daß eine deutlich größere Gegnerbandbreite in einer Rangliste statistisch höchst fragwürdig ist, es sei denn man würde die betreffende Liste in mehrere Ligen unterteilen und so Einzelvergleiche mit extremen Ergebnissen vermeiden.

Stefan
Parent - - By Frank Quisinsky Date 2014-01-02 08:36 Edited 2014-01-02 08:42
Hallo Stefan,

das Problem ist seit vielen Jahren bekannt und zieht sich durch alle Berechnungsprogramme, auch die neueren wie Ordo. Vor ca. 10 Jahren diskutieren wir das (Ratingliste von Klaus Wlotzka und meine alte WB Liste) in diversen Foren. Sind dann zum Ergebnis gekommen, dass die Engines möglich weniger wie 350 ELO auseinander liegen sollten (erster bis letzter Platz). Grundsätzlich ist es so, dass eine Engine die mit einem sehr hohem Rating vorne liegt nicht korrekt bewertet wird.

Beim Aufbau der SWCR2 ist das schon aufgefallen. Zunächst lies ich Houdini 3 gegen 9 Engines spielen. Dann kam Engine für Engine hinzu. Die ELO ist gefallen weit über die von so vielen geliebten ErrBar Grenzen von ca. 3.100 auf 3.045 ELO. Und nicht weil Houdini schlechter spielte sondern weil spielstärkere Engines hinzu kamen und die ersten Ergebnisse ausschließlich gegen schwächere Engines erzielt wurden.

Ich finde es ja lobenswert wenn Du Deine Liste ins Spiel bringt aber Du testest 7 unterschiedliche Engine in x Versionen. Das gibt auch nicht gerade einen verlässlichen Wert im Gesamtbild ab. Wir hatten immer schon das Problem, dass wir auf dem oberen Level nie viele unterschiedliche Engines hatten. Das ist immer ein Problem bei der Erstellung einer TOP-20 Liste.

Aber das hier ist nur ein Problem von vielen rund um ELO.
ELO ist unzureichend und je stärker die Engines werden, desto unzureichender werden die Ausgaben.

Nicht umsonst sind sich so viele Personen einig, dass für Computerschach ganz andere Berechnungsmethoden notwendig werden die uns beim ablesen auch schon viel mehr Informationen geben als eine bloße Ratingzahl. Denke wenn wir das hätten würden die Ratinglistenbetreiber dies auch befeiern. Aber was es nicht gibt ist zunächst mal nicht in unserem Kopf und wird grundlegend abgelehnt. Das war bei den Engine Protokollen der Fall, bei der Arena GUI etc..

Die Computerschachszene braucht Vorgaben und nach wie vor ...
Es gibt Personen die machen sich Gedanken und wollen das ändern, so ganz dumm war die Entwicklung ja bis heute nicht, sonst hätten wir das alles nicht was heute vorhanden ist.

Gruß
Frank

PS: Das ELO Problem bleibt ja, auch wenn wir sage ich mal 100 Engines hätten die besser messbar wären weil diese nicht so weit auseinander liegen würden. Wie gesagt, dass was in TalkChess angesprochen wurde ist nur ein Problem mit ELO. Wir müssen uns das mal vorstellen, das sind beim Computerschach so viele TOP Programmierer unterwegs und kommerzielle entwickeln seit vielen Jahren Schachsoftware aber keiner traut sich an das Altertümchen ELO ran. Wie auch nicht an statistischen Auswertungsfunktionen. Das sind auch Bereiche die mal nicht so einfach zu realisieren sind wie dämliche Funktionen die keiner braucht bei neuen Softwareversionen die z. B. vermarktet werden. Wenn hier z. B. zum Thema ELO ein neuer Standard entwickelt wird muss einer frech sein und einfach mit einer Vorgabe beginnen. Wie es Meyer-Kahlen mit UCI gemacht hat um WB zu verbessern (obwohl eine Verbesserung im Grunde nicht vorliegt, nur einfacher für Anwender). Einer muss den Anfang machen und dann viel Kritik ertragen können. Wenn keiner beginnt passiert nichts. Wie es halt so ist im Computerschach.
Parent - - By Stefan Pohl Date 2014-01-02 08:57
Frank Quisinsky schrieb:

Hallo Stefan,

das Problem ist seit vielen Jahren bekannt und zieht sich durch alle Berechnungsprogramme, auch die neueren wie Ordo. Vor ca. 10 Jahren diskutieren wir das (Ratingliste von Klaus Wlotzka und meine alte WB Liste) in diversen Foren. Sind dann zum Ergebnis gekommen, dass die Engines möglich weniger wie 350 ELO auseinander liegen sollten (erster bis letzter Platz)


Und das ist eben viel zu viel. Zumindest wenn jeder gegen jeden spielt.
Schaue ich mir die 5'+3'' CEGT-Liste an und ziehe eine 350-Elo-Linie, so wären noch Platz 1 bis 20 drin (Houdini 4 bis Spike). Schaue ich mir nun die Ergebnisse von Houdini an, so sehe ich, daß Houdini gegen 8 von 19 Gegnern 88% oder mehr gescored hat (4 Ergebnisse sogar 90% oder höher (!)). Das kann zu keinem brauchbaren Gesamtergebnis führen.
300 Elo sind wahrscheinlich auch schon zuviel. Irgendwas um 250-280 wäre gerade noch vertretbar (immer vorausgesetzt, man spielt RoundRobin) und sollte extreme Einzel-Ergebnisse nahe oder über 90% vermeiden.

Stefan
Parent - - By Stefan Pohl Date 2014-01-02 09:14 Edited 2014-01-02 09:20
Stefan Pohl schrieb:

Frank Quisinsky schrieb:

Hallo Stefan,

das Problem ist seit vielen Jahren bekannt und zieht sich durch alle Berechnungsprogramme, auch die neueren wie Ordo. Vor ca. 10 Jahren diskutieren wir das (Ratingliste von Klaus Wlotzka und meine alte WB Liste) in diversen Foren. Sind dann zum Ergebnis gekommen, dass die Engines möglich weniger wie 350 ELO auseinander liegen sollten (erster bis letzter Platz)


Und das ist eben viel zu viel. Zumindest wenn jeder gegen jeden spielt.
Schaue ich mir die 5'+3'' CEGT-Liste an und ziehe eine 350-Elo-Linie, so wären noch Platz 1 bis 20 drin (Houdini 4 bis Spike). Schaue ich mir nun die Ergebnisse von Houdini an, so sehe ich, daß Houdini gegen 8 von 19 Gegnern 88% oder mehr gescored hat (4 Ergebnisse sogar 90% oder höher (!)). Das kann zu keinem brauchbaren Gesamtergebnis führen.
300 Elo sind wahrscheinlich auch schon zuviel. Irgendwas um 250-280 wäre gerade noch vertretbar (immer vorausgesetzt, man spielt RoundRobin) und sollte extreme Einzel-Ergebnisse nahe oder über 90% vermeiden.

Stefan


Jetzt habe ich überhaupt erst mal genau nachgerechnet, wie die Situation in der LS-Rangliste z.Zt. ist. Die 30%-Regel besagt, daß eine Engine maximal 147 Elo (Elotabelle: 30% = -147 Elo) schwächer als der Eloschnitt des LS-top10-tournaments sein darf, damit sie gelistet wird und ihre Ergebnisse auch in die Ergebnisse ihrer Gegner einfliessen. Und im Moment beträgt der Eloschnitt im LS-top10-tournament 3073 ELo. Ergo müßte eine Engine 3073-147=2926 Elo erreichen. Und die Nummer 1 der Liste (Houdini 4) hat 3184 Elo. Die Differenz ist also 3184-2926 = 258 Elo maximale Differenz, die z.Zt. in der LS-Rangliste "erlaubt" ist. Also bin ich auf der statistisch sicheren Seite (nämlich unter 300 Elo Differenz). Und ich kann mich auch in der Tat nicht erinnern, daß irgendeine getestete Engine, die dann auch gelistet wurde (also die 30%-Regel eingehalten hat), gegen Houdini oder einen anderen starken Gegner, weniger als 15% gescored hat. Ergo: Sitzt, paßt, wackelt und hat Luft...

Stefan
Parent - - By Frank Quisinsky Date 2014-01-02 17:29
Hallo Stefan,

ja hast völlig Recht mit Deinen Ausführungen.
Würde gar so weit gehen (früher stellten wir mal fest ca. 350 ELO) das es heute eher durch die stetig steigenden Spielstärken 250 ELO sind.
Denn wir redeten über 350 ELO in Zeiten als die besten Programmen bei 2.500-2.600 lagen. Wir sind heute bis zu 600 ELO drüber.

Aber egal, wichtig ist meines Erachtens gar nicht die bloße ELO sondern der Platz in einer Ratingliste (bei Dir anders bzw. bei der Zielvorgabe). Wenn denn mal besserer Berechnungsprogramme vorhanden sind können wir ja dann wieder unsere Datenbanken drüber jagen. Von daher ist das Partiematerial schon wichtig und im Grunde auch egal ob die TOP-20 nun 250 oder 450 auseinander liegen.

Also wenn ich meine Ratingliste veröffentliche werde ich bei der Darstellung keine ELO Zahl veröffentlichen sondern mir etwas anderes einfallen lassen. Etwas sehr simples was völlig ausreicht um darzustellen wer auf 1 oder 21 steht, überlege die ganze Zeit.

Gruß
Frank
Parent - - By Stefan Pohl Date 2014-01-02 18:07 Edited 2014-01-02 18:09
Frank Quisinsky schrieb:

Hallo Stefan,

ja hast völlig Recht mit Deinen Ausführungen.
Würde gar so weit gehen (früher stellten wir mal fest ca. 350 ELO) das es heute eher durch die stetig steigenden Spielstärken 250 ELO sind.
Denn wir redeten über 350 ELO in Zeiten als die besten Programmen bei 2.500-2.600 lagen. Wir sind heute bis zu 600 ELO drüber.

Aber egal, wichtig ist meines Erachtens gar nicht die bloße ELO sondern der Platz in einer Ratingliste (bei Dir anders bzw. bei der Zielvorgabe).


So ist es. Mir sind die Elozahlen sehr wichtig (nicht die absolut-Werte, sondern die Änderungsbeträge bei neuen Versionen). Der Platz einer Engine in einer Ratingliste kann je nach Testbedingungen durchaus variieren und Vergleiche zwischen Ratinglisten sind daher sehr problematisch und mit Vorsicht zu geniessen. Konkretes Beispiel: Ist Stockfish DD besser oder schlechter als Houdini 3? Das hängt durchaus von der Testumgebung ab und ist nicht klar zu bestimmen. Aufgrund dieser Problematik ist es für mich wichtiger und interessanter, wieviel Elopunkte Fortschritt eine neue Engineversion gegenüber seinen Eigenen Vorgängern erzielen kann, nicht, ob sie ein paar Plätze über oder unter einem annähernd gleichstarken Konkurrenten liegt. Dafür muß ich extrem genau messen, weil z.B. bei den Stockfish-developmentversionen die Fortschritte oft nur sehr gering sind. Oder auch bei den nah verwandten Ippo-Derivaten wie Fire, Panchess, Mars sind die Unterschiede gering (aber vorhanden!). Und ich teste ja auch Betas und Developmentversionen und auch gelegentlich mal Settings (demnächst Houdini 4 mit contempt=0). Daher muß ein Testlauf auch schnell gehen. Daher eben das Bullettempo, denn beim Ausmessen eines Elofortschritts einer Engine gegenüber einer Vorgängerversion spielt die Länge der Bedenkzeit keine so große Rolle.

Stefan
Parent - - By Frank Quisinsky Date 2014-01-02 18:54
Hi Stefan,

müssen die Ratinglisten nach Zielvorgabe betrachten (habe auch immer ein Problem damit und verheddere mich).
Ich meine bei Dir ist das ja klar was Du erreichen willst. Es ist ja auch nicht uninteressant wie sich die diversen ich sage mal "Abkömmlinge" im Verhältnis zu den anderen TOPs schlagen. Ich nutze ja selbst die Information von Dir um z. B. in meiner kleineren SWCR2 den vermutlichen besten IPP Clone dann einzusetzen.

Mir geht die Berechnung mittels ELO gewaltig auf den Senkel. Insofern ich werde die SWCR2 auch veröffentlichen aber weit weg davon auch nur eine einzige ELO zu veröffentlichen. Das können dann von mir aus die Personen machen die sich dafür interessieren. Habe auch keine Lust aufwendige Statistiken zu veröffentlichen weil nach jedem Spießroutenlauf muss jede Statistik händisch wieder aktualisiert werden. Werde mir da im Verlauf des Jahres vielleicht das eine oder andere einfallen lassen und ausprobieren.

Was ich persönlich sehr gut finde ist das Punktsystem beim Fußball. Auch finde ich das Sterne System von ebay ganz nett. Ich denke Bewertungen sollten erfolgen in Mittelspiel, spätes Mittelspiel / frühes Endspiel, und Endspiel. Und eine Kombination aus allem sollte auf einen Blick ausreichen um mehr in einer Tabelle abzulesen als eine bloße Zahl. Das ist das was ich umsetzen kann, um ein besseres ELO System zu entwickeln fehlen mir die Kenntnisse bzw. das müssen andere Herren auf die Beine stellen. Würde mich hier maximal mit Ideen einbringen aber mehr auch nicht.

Hauptsächlich möchte ich dann mittels einer Ratingliste animierend wirken.
Aber eine Ratingliste die ganz andere Wege geht ...

---

Auch habe ich die folgende Idee ...
Bei mir spielen die Engines 1.000 Partien.
Nun habe ich ja die TOP-21 zusammen.

Ich möchte 5 Engines mehr in der Liste haben, also die TOP-26.
Nehme ich dann z. B. Smarthink auf, spielt Smarthink gegen die unteren 21 die 50 Partien ... um zu vermeiden das die Engine dann gegen Houdini und Co antreten muss.
Kommt ein Junior Update das gleiche!

Möchte also ein rollierende Ratingliste.

Auch möchte ich Engines aussortieren die länger als 3 Jahre nicht mehr upgedatet wurden und durch neuere Entwicklungen ersetzen.
Möchte eine Bugliste erstellen, Teststellungen um Standardfehler zu prüfen (z. B. falscher Läufer).

Etc..

Das ist das was ich gut finde um mal ein wenig weg zu kommen von reinen Ratings und um wie gesagt hauptsächlich zu animieren.
Und alles so einfach und übersichtlich wie möglich.

Vielleicht auch ein Forum einrichten bei dem es speziell um Spielstile geht, Stärken und Schwächen von Engines.
Brauche ein Forum wie das hier und habe aber keine Lust mich in die PHP Software wieder einzuarbeiten bzw. auch die Zeit nicht.
Vielleicht finde ich jemanden der das mit mir zusammen machen möchte.

Sorry, das ich jetzt Deinen Beitrag missbrauche.
Mach einfach weiter mit Deiner Liste, sie ist anders als die anderen und von daher auch gut das sie da ist.
Und Kritik, auch von mir ... das liegt uns allen im Blut, weil die die aktiv sind haben laufend irgend welche Ideen und irgend welche anderen Dinge gehen einen auf den Senkel.
Und mir geht die ELO auf den Senkel, weil anhand der Listen sehe ich zwar die Spielstärke aber sonst nichts.

Dir ein gesundes und frohes neues Jahr Stefan.

Frage an Dich:
Machte Fire 3.0 beim Testen irgend welche Probleme?

Gruß
Frank
Parent - - By Stefan Pohl Date 2014-01-02 19:39
Fire spielte alle bisherigen 12000 Partien ohne Crash, timeloss, illegal move. Absolut stabil.

Die Idee des Punktesystems ähnlich wie beim Fußball finde ich ganz interessant. Dann könnte man Remisen weniger hoch bewerten als einen halben Sieg und Schwarzsiege höher als Weißsiege. Auch ein Remis könnte mit Weiß weniger Punkte bringen als mit Schwarz.
Wie man das allerdings genau gewichten sollte, darüber müßte man sicher erst mal gründlich nachdenken bzw. Partienmaterial auswerten...

Stefan
Parent - - By Frank Quisinsky Date 2014-01-02 20:27
Hi Stefan,

Also:
3 für Gewinn
1 für Remis

müssen gewichtet werden!

Also:
Weiß: 2.9 für Gewinn und 0.9 für Remis
Schwarz: 3.1 für Gewinn und 1.1 für Remis

oder

Weiß:2.8 für Gewinn und 0.8 für Remis
Schwarz: 3.2 für Gewinn und 1.2 für Remis

Anzugsvorteil wären ja 25 ELO (shit verfluchtes ELO Zeug, bin echt sauer auf diesen Käse ... habe weitere Auswertungen gemacht und sehe immer mehr das dieses System auf den Mond geschossen werden sollte, am besten die ganze Formel in eine Kapsel, verschließen und durch das Weltall senden). Auf der anderen Seite nachher sehen außerirdische diesen Käse und fragen sich ... haben die da auf der Erde noch alle Tassen im Schrank.

Mir gefällt 2.9 für Gewinn und 0.9 für Remis besser ...
Anzugsvorteil sollte einfließen ja aber mit geringer Bewertung.

Nun passe mal auf ...

Bei 50 Partien pro Match müsste die erreichte Punktzahl durch 50 geteilt werden.
Dann müsste dieses Ergebnis multipliziert werden mit einem Faktor für die drei Partiephasen.

Frühes Mittelspiel / Mittelspiel: Faktor 0,25
Spätes Mittelspiel / Übergang Mittelspiel Endspiel: Faktor 0,20
Endspiel: Faktor 0,15

Also da wo die Engines schwach sind ... hoch
Da wo die Engines stark sind ... runter

Die Berechnung der drei Partiephasen bestimmen wir mit erzielten Punkten anhand von Kappen der Zugzahlen.

Nun haben wir ein Ergebnis in einer Zahl.
Setzen die zum maximal erreichbaren Wert in ein Verhältnis und bestimmen mit der Prozentzahl die dabei herauskommt eine Wertungszahl von 0-100 mit zwei Stellen nach dem Komma. Also die erreichte Prozentzahl ist das Ergebnis in Spielstärke. Wird Houdini hier 56,25% erreichen, hat die Engine eine Spielstärke von 56,25

Gruß
Frank

Bringt alles nichts.
Sitze 10 Stunden an einer Auswertung nach einem Spießroutenlauf.
Muss mal in Ruhe überlegen, vergesse das alles wieder
Parent - - By Frank Quisinsky Date 2014-01-02 20:37
Hi Stefan,

ist im Grunde ganz einfach

Also:
Gewichtung nach Gewinn / Remis wie beim Fußball.

Und diese Gewichtung richtet sich nach Anzahl der Figuren auf dem Brett bei Endstellung.

Also haben wir 25 Figuren auf dem Brett bei einem Matt gibt es für einen Sieg mehr Punkte als wenn 15 Figuren auf dem Brett bei Matt sind.´
Remis bei 25 Figuren auf dem Brett gibt weniger Punkte als Remis bei 15 Figuren auf dem Brett.

Das ist doch ganz einfach!
Die stärkeren Engines werden schneller die Partien gewinnen. Wenn aber eine schwächere ein Remis im Endspiel hält wird das belohnt.
Schnelle Remispartien werden bestraft.
Matt mit vielen Figuren auf dem Brett wird belohnt und bestraft wird die Engine die das zugelassen hat.

Das gefällt mir!
Und das ist einfach für ein Auswertungsprogramm ...
Das schaut sich die Endstellungen und zählt die Figuren auf dem Brett und setzt nach Vorgabe die Punkte hierfür.
Das sollte ein Programmierer erledigen können!

Was meist Du?
Genial weil einfach und logisch, oder?

Gruß
Frank
Parent - - By Frank Quisinsky Date 2014-01-02 21:17
Hi Stefan,

was würde passieren wenn wir die ELO Berechnung um diese Variable einfach nur ergänzen?
Anstatt 0:1 oder 1:0 oder 0.5 : 0.5 drei andere Werte nehmen, aus der vorherigen Idee und darauf ELO anwenden.
Denke das wäre ein Ansatz für die speziell auf Computerschach gerichtete Ratingzahl.

Wenn dann noch Anzahl der Gegner gebührender in die ELO Berechnung eingehen würde, wären einige Schwachpunkte direkt entfernt.

Gruß
Frank
Parent - - By Stefan Pohl Date 2014-01-03 05:54
Frank Quisinsky schrieb:

Hi Stefan,

was würde passieren wenn wir die ELO Berechnung um diese Variable einfach nur ergänzen?
Anstatt 0:1 oder 1:0 oder 0.5 : 0.5 drei andere Werte nehmen, aus der vorherigen Idee und darauf ELO anwenden.
Denke das wäre ein Ansatz für die speziell auf Computerschach gerichtete Ratingzahl.

Wenn dann noch Anzahl der Gegner gebührender in die ELO Berechnung eingehen würde, wären einige Schwachpunkte direkt entfernt.

Gruß
Frank


Also mischen würde ich Elozahl und diesen Ansatz nicht. Elo sollte Elo bleiben. Aber als Alternative ist diese Idee sehr interessant. Nur müßte es eben auch ein Auswertungsprogramm geben, daß das automatisch macht, denn bei zigtausenden Partien ist das manuell unmöglich. Wenn jemand sowas programmiert, wäre es eine tolle Sache, die ich gerne mal auf meine riesige Datenbank anwenden würde, in der natürlich alle Partien bis zum Matt bzw. Remis nach Schachregel ausgespielt wurden.
Dann könnte man eine Alternativ-Liste aufgrund dieser Daten erstellen und der klassischen Eloliste gegenüberstellen. Gerade der Vergleich wäre wichtig und daher würde ich die klassische Eloliste auch immer beibehalten und nicht ersetzen wollen.
Aber wer wird so ein Tool auf die Beine stellen?

Stefan
Parent - By Frank Quisinsky Date 2014-01-03 08:21
Hi Stefan,

versuche Norm davon zu begeistern.
Er hat ja schon die meisten Helfer entwickelt, sich Gedanken gemacht um Auswertungen wie kein anderer in der Szene.
Mache das in einer öffentlichen Diskussion in TalkChess.

Er ist auch schon aktiv.
Werde ihm noch schreiben warum ich das benötige bzw. ihm noch in TalkChess antworten.

Interessant wird's wenn mit einer Ratingliste mehr zu sehen ist als die bloße Zahl.
Die Darstellung wird für die Beobachter aufschlussreicher!

Denke darüber sind wir uns alle einig, nur die Darstellung muss dann schlüssig sein und kann ja, wie Du schreibst, ergänzend wirken.

Fire werde ich auch testen.
Bin gespannt ob es dann bei mir auch zu ca. +10 kommt wie bei Dir im Vergleich zu Bouquet.

Viele Grüße
Frank
Parent - - By Benno Hartwig Date 2014-01-03 09:26

> Weiß: 2.9 für Gewinn und 0.9 für Remis
> Schwarz: 3.1 für Gewinn und 1.1 für Remis


Wäre es nicht konsequent zu ergänzen:
0,2 für Niederlage mit Schwarz
0,0 für Niederlage mit Weiss

Benno
Parent - - By Frank Quisinsky Date 2014-01-03 11:17
Hi Benno,

tja, ich weiß es nicht.
Wahrscheinlich ...

Denke gar 0.2 für Niederlage mit Schwarz wenn 02-10 Figuren auf dem Feld.
Oder 0.1 für Niederlage mit Weiß wenn 02-10 Figuren auf dem Feld.

Denn ein überstandenes Mittelspiel bzw. Eröffnung sollte auch positiv bewertet werden.

Viele Grüße
Frank
Parent - - By Benno Hartwig Date 2014-01-03 11:42

> Denn ein überstandenes Mittelspiel bzw. Eröffnung sollte auch positiv bewertet werden.


Ja, die Idee, Spiele in dieser Weise zu bewerten, hat was.
Das Schlechteste, was ein Programm erreichen kann, ist wohl, mit weiß binnen recht weniger Züge zu verlieren.
Und das beste ist wohl, mit schwarz binnen recht weniger Züge zu gewinnen.
Alles andere liegt irgendwo dazwischen.

Es wäre schon witzig, mal ein Programm zu schreiben, welches bestehende Partiensammlungen in dieser Weise durchflöhnt und entsprechend Punkte vergibt.
Turnier'sieger' neu bestimmt.

Benno
Parent - - By Stefan Pohl Date 2014-01-03 11:58
Benno Hartwig schrieb:

Ja, die Idee, Spiele in dieser Weise zu bewerten, hat was.
Das Schlechteste, was ein Programm erreichen kann, ist wohl, mit weiß binnen recht weniger Züge zu verlieren.
Und das beste ist wohl, mit schwarz binnen recht weniger Züge zu gewinnen.
Alles andere liegt irgendwo dazwischen.

Es wäre schon witzig, mal ein Programm zu schreiben, welches bestehende Partiensammlungen in dieser Weise durchflöhnt und entsprechend Punkte vergibt.
Turnier'sieger' neu bestimmt.

Benno


Auf jeden Fall! Franks Gedankengänge sind manchmal sicher etwas seltsam, aber er denkt eben auch mal über ganz andere Wege nach (wäre nur schön, wenn er etwas duldsamer gegenüber uns "Normalo-Testern" wäre...). Aber die Idee finde ich wirklich toll. Nur wer programmiert so was? Ich kanns leider nicht...
Ich hätte ja eine Riesen-Datenbank dank meiner LS-Rangliste mit nun mittlerweile fast 600000 Partien, die alle bis zum Matt bzw. Remis nach Schachregel gespielt wurden. Da könnte man sicher sehr interessante Einsichten mit so einem Tool herausfiltern!

Stefan
Parent - By Frank Quisinsky Date 2014-01-03 12:03
Hallo Stefan,

ja, ja in der Ruhe liegt die Kraft.
Also finden wir uns zusammen und entwickeln was.

Und dabei brauchen "WIR" die Erfahrungen von "Allen" die sich mit Ratings beschäftigen und es wäre schön wenn (ich kann x oder y nicht leiden jetzt mal unter dem Tisch fällt).
Sonst kommen wir nicht voran und auf diese Sabberei in wichtigen Beiträgen (ob nach Sichtweise von Person A oder nach Sichtweise von Person B) können wir denke ich auch alle mal verzichten.

Gruß
Frank
Parent - - By Frank Quisinsky Date 2014-01-03 12:00 Edited 2014-01-03 12:08
Hi Benno,

wir haben dabei (meines Erachtens) nur eine einzige sinnvolle Möglichkeit.

Wir gewichten nicht anhand der Zügezahl sondern anhand der verbliebenen Figuren auf dem Brett.
Es macht bei der Messung einer Wertungszahl eh keinen Sinn eine Partie von "Computerintelligenz" abzuwürgen (Aufgabefaktor).

Meine Denkweise ist die folgende (kurz, muss mich nach einer kleine OP ausruhen).

Die Berechnungen zur Spielstärke beruhen auf:
1:0, 0:1 und 0.5 : 0.5.
Drei Variablen sind zu wenig für eine komplexere Berechnung.

Denke noch nicht mal, dass die Formel die bei der ELO Berechnung angewendet wird schlecht ist aber sie ist ungenau.

Also brauchen wir mehr Variablen und könnten das direkt so verknüpfen, dass wir beim Betrachten einer Ratingliste mehr sehen als nur eine nackte Zahl.

Demnach:
Könnte das aufstocken der Variablen (in Anlehnung an das Fußballwertungssystem wie folgt aussehen).

Sieg weiß:
03-10 Figuren auf dem Feld = 2.7 Punkte
11-20 Figuren auf dem Feld = 2.8 Punkte
21-32 Figuren auf dem Feld = 2.9 Punkte

Sieg schwarz:
03-10 Figuren auf dem Feld = 3.0 Punkte
11-20 Figuren auf dem Feld = 3.1 Punkte
21-32 Figuren auf dem Feld = 3.2 Punkte

Remis:
02-10 Figuren auf dem Feld = 1.2 Punkte
11-20 Figuren auf dem Feld = 1.0 Punkte
21-32 Figuren auf dem Feld = 0.8 Punkte

Niederlagen:
Schwarz bei 03-10 Figuren auf dem Feld = 0,3 Punkte
Weiß bei 03-10 Figuren auf dem Feld = 0,2 Punkte

Und mithin hätten wir anstatt 3 Variablen 11 Variablen.

Nun könnten wir versuchen darauf die Ansätze von ELO zu setzen unter Berücksichtigung eines ganz entscheidenden Faktors:
Die Anzahl der Gegner, denn eine ELO wird erst dann genauer wenn viele Gegner vorhanden sind.

Die Errechnung der Punkte gelingt vielleicht mit der Hilfe von Norm, wobei ein Tool welches eine Datenbank aufnimmt und dann direkt die Punktezahl ausgibt wäre besser.

Eine Ratingliste könnte dann wie folgt aussehen:

05. Equinox 2.02 x64               :  1000 Games = +431  =427 -142  64.5%
Won White Fast = x games = x Points
Won White Medium = x games = x Points
Won White Slow = x games = x Points
Won Black Fast = x games = x Points
Won Black Medium = x games = x Points
Won Black Slow = x games = x Points
Lost White Fast = x games
Lost White Medium = x games
Lost White Slow = x games = x Points
Lost Black Fast = x games
Lost Black Medium = x games
Lost Black Slow = x games = x Points
Draw Fast = x games = x Points
Draw Medium = x games = x Points
Draw Slow = x games = x Points

= x Points

Gruß
Frank
Parent - - By Stefan Pohl Date 2014-01-03 12:05
Frank Quisinsky schrieb:

Hi Benno,

wir haben dabei nur eine einzige sinnvolle Möglichkeit.

Wir gewichten nicht anhand der Zügezahl sondern anhand der verbliebenen Figuren auf dem Brett.
Es macht bei der Messung einer Wertungszahl eh keinen Sinn eine Partie von "Computerintelligenz" abzuwürgen (Aufgabefaktor).

Meine Denkweise ist die folgende (kurz, muss mich nach einer kleine OP ausruhen).

Die Berechnungen zur Spielstärke beruhen auf:
1:0, 0:1 und 0.5 : 0.5.
Drei Variablen sind zu wenig für eine komplexere Berechnung.

Denke noch nicht mal, dass die Formel die bei der ELO Berechnung angewendet wird schlecht ist aber sie ist ungenau.

Also brauchen wir mehr Variablen und könnten das direkt so verknüpfen, dass wir beim Betrachten einer Ratingliste mehr sehen als nur eine nackte Zahl.

Demnach:
Könnte das aufstocken der Variablen (in Anlehnung an das Fußballwertungssystem wie folgt aussehen).

Sieg weiß:
03-10 Figuren auf dem Feld = 2.7 Punkte
11-20 Figuren auf dem Feld = 2.8 Punkte
21-32 Figuren auf dem Feld = 2.9 Punkte

Sieg schwarz:
03-10 Figuren auf dem Feld = 3.0 Punkte
11-20 Figuren auf dem Feld = 3.1 Punkte
21-32 Figuren auf dem Feld = 3.2 Punkte

Remis:
02-10 Figuren auf dem Feld = 1.2 Punkte
11-20 Figuren auf dem Feld = 1.0 Punkte
21-32 Figuren auf dem Feld = 0.8 Punkte

Niederlagen:
Schwarz bei 03-10 Figuren auf dem Feld = 0,3 Punkte
Weiß bei 03-10 Figuren auf dem Feld = 0,2 Punkte

Und mithin hätten wir anstatt 3 Variablen 11 Variablen.

Nun könnten wir versuchen darauf die Ansätze von ELO zu setzen unter Berücksichtigung eines ganz entscheidenden Faktors:
Die Anzahl der Gegner, denn eine ELO wird erst dann genauer wenn viele Gegner vorhanden sind.

Die Errechnung der Punkte gelingt vielleicht mit der Hilfe von Norm, wobei ein Tool welches eine Datenbank aufnimmt und dann direkt die Punktezahl ausgibt wäre besser.

Eine Ratingliste könnte dann wie folgt aussehen:

05. Equinox 2.02 x64               :  1000 Games = +431  =427 -142  64.5%
Won Fast = x games = x Points
Won Medium = x games = x Points
Won Slow = x games = x Points
Lost Fast = x games
Lost Medium = x games
Lost Slow = x games = x Points
Draw Fast = x games = x Points
Draw Medium = x games = x Points
Draw Slow = x games = x Points

= x Points

Gruß
Frank


2 Anmerkungen:
1.) Schwarzsiege sollten m.E. noch deutlich höher gewichtet werden im Verhältnis zu Weißsiegen, als du es hier vorschlägst. Remisen sollten außerdem mit Schwarz etwas höher gewichtet werden als mit Weiß (beides wegen Anzugsvorteil)
2.) Warum eine starre Unterteilung in 3 Stufen? Die Figurenzahl könnte als Multiplikator stufenlos in die Wertung einfließen...

Stefan
Parent - - By Frank Quisinsky Date 2014-01-03 12:10
Hi Stefan,

ja, das dachte ich auch mit der Stufenzahl bei Anzahl der Figuren auf dem Brett.
Dann wird's noch genauer aber wesentlich komplexer das Tool zu erstelle.

Da hast Du schon Recht.
Die Frage ist auch muss der Anzugsvorteil wirklich höher bewertet werden als in meinem Beispiel.
Kann sein, weiß es nicht.

Gruß
Frank
Parent - - By Frank Quisinsky Date 2014-01-03 12:13
Hi Stefan,

wenn eine solche Berechnung Schule macht ... dann werden wir ein ganz anderes Großmeisterschach erleben.
Das könnte zur Renaissance im Schach führen.

Gruß
Frank
Parent - - By Benno Hartwig Date 2014-01-03 12:57

> wenn eine solche Berechnung Schule macht ... dann werden wir ein ganz anderes Großmeisterschach erleben.


Diese Andersartigkeit könnte dann aber auch darin bestehen, dass der GM auch in verlorener Stellung 'tapfer' weiterspielt, nur um so noch ein paar Figuren vom Brett zu bekommen.
Mir ist nicht klar: Wollen wir sowas wirklich?

Außerdem würde ich gern Remisen von Weiss und Schwarz unterschiedlich bewerten.

Benno
Parent - - By Frank Quisinsky Date 2014-01-03 13:00
Hallo Benno,

das stimmt auch wieder.
War auch falsch gedacht von mir, aber vielleicht lässt sich darüber auch mal genauer nachdenken.
Sollte uns nicht interessieren.
Sollen doch die GMs eifersüchtig auf unser Wertungssystem schauen und sich selbst etwas einfallen lassen in Anlehnung an dessen was Computerschächler entwickelt haben.

Sehe in einer Wertungszahl beim Computerschach eh etwas anders als in einer Wertungszahl zwischen Menschen.
Wäre so wie Äpfel mit Birnen vergleichen.

Beim Computerschach trifft das aber nicht zu.
Die Sklaven sollen spielen und wir wollen wissen.

Gruß
Frank
Parent - By Frank Quisinsky Date 2014-01-03 13:08 Edited 2014-01-03 13:10
Setze noch einen drauf ...
Wenn wir das schaffen, dann dürfen wir uns sicherlich auch von ChessBase den sehr guten Spruch klauen "Wissen ist Matt".

Denn wir wissen nicht viel wenn wir auf eine nackte Ratingliste schauen.

Gruß
Frank
Parent - - By Benno Hartwig Date 2014-01-02 09:16

> Beim Aufbau der SWCR2 ist das schon aufgefallen. Zunächst lies ich Houdini 3 gegen 9 Engines spielen. Dann kam Engine für Engine hinzu. Die ELO ist gefallen weit über die von so vielen geliebten ErrBar Grenzen von ca. 3.100 auf 3.045 ELO.


Woran liegt das denn eigentlich?

Professor ELO meinte ja einen Zusammenhang erkannt zu haben, der eine Spielstärken beschreibung gemäß der Formel in
http://de.wikipedia.org/wiki/Elo-Zahl#Berechnung
rechtfertigt.
Dies bedeutet dann eben auch:
Wenn B dem A im Verhältnis 64:36 überlegen ist (beschrieben als ELO-Differenz 100),
Und C dem B im Verhältnis 64:36 überlegen ist (beschrieben als ELO-Differenz 100)
dann hat C 200 ELO mehr als A, und er hat eine Erwartung 76:24
(natürlich nicht betrachtet für einzelne Spieler sondern für den Durchschnitt aus einer sehr großen Zahl)

Natülich ist das so kein Naturgesetz. Bestenfalls stimmt es so ungefähr. Oder nicht mal das.
Wie genau stimmt das eigentlich wirklich?

Andererseits hatte ich vor einiger Zeit mit Blick auf die IPON-Liste auch mal befürchtet, den sehr guten Engines könne es schwer fallen, gegen die Schwachen wirklich sooo deutlich zu punkten, wie es sein anhand der ELO-Differenz sein muss. Und ich konnte dann aber keine Tendenz erkennen, die diese Befürchtung stützt. Tatsächlich wurde bei IPON gegen die Schwächsten ähnlich souverän gepunktet wie gegen die Gleichstarken oder sogar gegen die noch Stärkeren.

Benno
Parent - - By Guest Date 2014-01-02 09:41
Benno Hartwig schrieb:

...

Andererseits hatte ich vor einiger Zeit mit Blick auf die IPON-Liste auch mal befürchtet, den sehr guten Engines könne es schwer fallen, gegen die Schwachen wirklich sooo deutlich zu punkten, wie es sein anhand der ELO-Differenz sein muss. Und ich konnte dann aber keine Tendenz erkennen, die diese Befürchtung stützt. Tatsächlich wurde bei IPON gegen die Schwächsten ähnlich souverän gepunktet wie gegen die Gleichstarken oder sogar gegen die noch Stärkeren.


Das passt auch alles! Wie ich schon schrieb übertreibt SP maßlos. Wir sprechen von einem Fehler in der Verteilungskurve der Auswerteprogramme von ~18 Elo bei einem 600 Elo Abstand! Das macht niemand und schon gar nicht ausschließlich. Dazu kommt noch, das jeder weitere Engine den Fehler aus dem 600 Eloabstandstest anteilig verkleinert. Bei 4 weiteren Gegnern bleiben von den 18 Elo vielleicht 4Elo übrig, bei 19 weiteren wären es unter 1 Elo (+der Fehler aus den anderen ENgines) - abernochmal, wen interessiert es ob ein 600 Elo Unterschied auf 18 Elo genau gemessen wurde?

Der beschriebene Fehler ist für jedes menschliche Ermessen völlig irrelevant. Das Problem ist nur das einer laut schreit (aus welchem verdrängten Grund auch immer) - und den hört man besser ...

Gruß
Ingo
Parent - By Frank Rahde Date 2014-01-02 10:05
Hallo Ingo,

schön, dass Du weiter hier im Forum schreibst! Ich fände es gut, wenn Du immer als Namen "Ingo B" einsetzen würdest statt manchmal "Guest". Noch besser wäre es, wenn Du wieder als Stammposter auftreten würdest! Ich weiß nicht, was dagegen spräche. Ein Computerschachexperte Deines Schlages ist immer herzlich willkommen.

Gruß, Frank
Parent - By Klaus Meier Date 2014-01-03 11:56 Edited 2014-01-03 12:04
Benno Hartwig schrieb:

Professor ELO meinte ja einen Zusammenhang erkannt zu haben, der eine Spielstärken beschreibung gemäß der Formel in
<a class='ura' href='http://de.wikipedia.org/wiki/Elo-Zahl#Berechnung'>http://de.wikipedia.org/wiki/Elo-Zahl#Berechnung</a>
rechtfertigt.
Dies bedeutet dann eben auch:
Wenn B dem A im Verhältnis 64:36 überlegen ist (beschrieben als ELO-Differenz 100),
Und C dem B im Verhältnis 64:36 überlegen ist (beschrieben als ELO-Differenz 100)
dann hat C 200 ELO mehr als A, und er hat eine Erwartung 76:24
(natürlich nicht betrachtet für einzelne Spieler sondern für den Durchschnitt aus einer sehr großen Zahl)

Natülich ist das so kein Naturgesetz. Bestenfalls stimmt es so ungefähr. Oder nicht mal das.
Wie genau stimmt das eigentlich wirklich?



In der Spielpraxis zwischen Menschen hat sich die Spielstärken-Beschreibung
nach ELO bewährt und ist der Mehrzahl der Schach-Spieler genau genug.
Wer es genauer haben will, muss weitere Parameter einführen.
z.B. Unterscheidung zwischen Spiel mit Weiss
und Spiel mit Schwarz (Anzug oder Nachzug) etc.

(Tatsächlich ist es recht einfach das ELO-System zu verfeinern.
Wer das will, hat z.B. mit Chessbase12 ein Datenbanksystem mit genügend Spielergebnissen und Informationen zur Verfügung.
Man sollte allerdings dann auch selber ein kleines Auswerteprogramm programmiern können.
Mit etwas Einfallsreichtum und geringen Mathematik Kenntnissen ist es dann sehr einfach ein verfeinertes Bewertungsmodell zu basteln.
ELO liefert wirklich keinen allzu genauen Bewertungsmassstab , aber es reicht für eine ungefähre Einschätzung zwischen Menschen aus.


Wenn ich weiss, das mir im nächsten Open in der ersten Runde Schweizer-System ein 2400er zugelost wurde, dann freu ich mich auf die Herausforderung
und kann mich entsprechend vorbereiten. Viel mehr kann man eigentlich von dem ELO-System nicht erwarten.
Parent - - By Ingo B. Date 2014-01-02 08:42
Bist du sicher das du das richtig verstanden hast?

Kai testete H1.5 in 32 und 64 bit gegen SOS und NUR (ausschließlich) gegen SOS. Das sind ~600 Elo Unterschied.

Ich kenne KEINE Liste die Engines mit 600 Elo Unterschied testet und dann NUR mit 600 Elo Unterschied! Dazu kommt nach, dass im Stockfish Test der Fehler bei 18 Elo lag. Wenn jemand meint bei 600 Elo Unterschied hätte er es gerne auf 18 ELo genau .... na dann bitte.

Kurz: Du übertreibst maßlos. In keiner Liste die ich kenne finden sich solche Unterschiede, schon gar nicht ausschließlich, und in keiner Liste die ich kenne ist dieses "Problem" von irgeneiner Relevanz!

Ingo
Parent - - By Stefan Pohl Date 2014-01-02 13:29
Ingo B. schrieb:

Bist du sicher das du das richtig verstanden hast?

Kai testete H1.5 in 32 und 64 bit gegen SOS und NUR (ausschließlich) gegen SOS. Das sind ~600 Elo Unterschied.

Ich kenne KEINE Liste die Engines mit 600 Elo Unterschied testet und dann NUR mit 600 Elo Unterschied! Dazu kommt nach, dass im Stockfish Test der Fehler bei 18 Elo lag. Wenn jemand meint bei 600 Elo Unterschied hätte er es gerne auf 18 ELo genau .... na dann bitte.

Kurz: Du übertreibst maßlos. In keiner Liste die ich kenne finden sich solche Unterschiede, schon gar nicht ausschließlich, und in keiner Liste die ich kenne ist dieses "Problem" von irgeneiner Relevanz!

Ingo


Naja. Der Fehler lag bei 18 Elo. Aber prozentual sind das fast 50% Abweichung. Daher sind auch bei weniger krassen Eloabständen die Abweichungen sicher schon beträchtlich. Und daher sollte man m.E. alle Ergebnisse im 90% Bereich unbedingt vermeiden. Und wenn ich mir die 5+3 CEGT Einzelergebnisse ansehe, dann trifft das bei weit weniger als 600 Elospanne zu, nämlich schon bei 300-350 Elo.
Sicher ist bei meine Bedingungen ein gewisser Sicherheitsabstand zu den kritischen Ergebnis-Randbereichen einkalkuliert, aber das eben durchaus mit Absicht. Und sicher war das Beispiel auf talkchess recht extrem, aber es sollte ja auch das Problem verdeutlichen und daher eine große Abweichung anzeigen. Daß diese Problematik in vielen Ranglisten nicht ganz so extrem zu Buche schlägt, wie im angeführten Beispiel, heißt ja nicht. daß das Problem nicht existiert!
Darüberhinaus hast du doch gerade deinen Testbereich verschlankt und hast nun eine Bandbreite von nur noch 320 Elo in deinem RR-Turnier. Das ist doch schon fast im grünen Bereich (so wie ich ihn definiere)...

Stefan
Parent - By Stefan Pohl Date 2014-01-02 13:54 Edited 2014-01-02 14:01
Stefan Pohl schrieb:

Ingo B. schrieb:

Bist du sicher das du das richtig verstanden hast?

Kai testete H1.5 in 32 und 64 bit gegen SOS und NUR (ausschließlich) gegen SOS. Das sind ~600 Elo Unterschied.

Ich kenne KEINE Liste die Engines mit 600 Elo Unterschied testet und dann NUR mit 600 Elo Unterschied! Dazu kommt nach, dass im Stockfish Test der Fehler bei 18 Elo lag. Wenn jemand meint bei 600 Elo Unterschied hätte er es gerne auf 18 ELo genau .... na dann bitte.

Kurz: Du übertreibst maßlos. In keiner Liste die ich kenne finden sich solche Unterschiede, schon gar nicht ausschließlich, und in keiner Liste die ich kenne ist dieses "Problem" von irgeneiner Relevanz!

Ingo


Naja. Der Fehler lag bei 18 Elo. Aber prozentual sind das fast 50% Abweichung. Daher sind auch bei weniger krassen Eloabständen die Abweichungen sicher schon beträchtlich. Und daher sollte man m.E. alle Ergebnisse im 90% Bereich unbedingt vermeiden. Und wenn ich mir die 5+3 CEGT Einzelergebnisse ansehe, dann trifft das bei weit weniger als 600 Elospanne zu, nämlich schon bei 300-350 Elo.
Sicher ist bei meine Bedingungen ein gewisser Sicherheitsabstand zu den kritischen Ergebnis-Randbereichen einkalkuliert, aber das eben durchaus mit Absicht. Und sicher war das Beispiel auf talkchess recht extrem, aber es sollte ja auch das Problem verdeutlichen und daher eine große Abweichung anzeigen. Daß diese Problematik in vielen Ranglisten nicht ganz so extrem zu Buche schlägt, wie im angeführten Beispiel, heißt ja nicht. daß das Problem nicht existiert!
Darüberhinaus hast du doch gerade deinen Testbereich verschlankt und hast nun eine Bandbreite von nur noch 320 Elo in deinem RR-Turnier. Das ist doch schon fast im grünen Bereich (so wie ich ihn definiere)...

Stefan


Vielleicht sollte ich mal ganz nebenbei ergänzen, daß das ja nur ein Argument gegen extreme Ergebnisse von 90% und höher ist. Selbst wenn die Ranglistenprogramme alles korrekt berechnen würden, zeigt ja die Elotabelle, daß im Randbereich die Eloverschiebungen pro Prozent extrem ansteigen und damit auch die Ungenauigkeiten.
Eine Abweichung von einem Prozent in einem Ergebnis eines Enginewettkampfes bedeutet nämlich in Elo etwas sehr Unterschiedliches, wenn das Ergebnis sehr extrem wird.
Kleiner Auszug aus der Elo-Tabelle dazu: Ändert sich das Ergebnis von 60% auf 61%, so sind es +7 Elo.
Bei 70% auf 71% sind es +9 Elo. Bei 80% auf 81% sind es +11 Elo. Bei 85% auf 86% sind es +13 Elo. Bei 90% auf 91% sind es +17 Elo. Bei 95% auf 96% sind es +23 Elo. Und bei 97% auf 98% sind es +60 Elo!
Wenn man davon ausgeht, daß eine Ergebnisschwankung um ein Prozent bei unterschiedlichen Spielstärkerelationen immer gleich wahrscheinlich ist - und ich sehe keine Grund warum dem nicht so sein sollte (Ergebnisschwankungen werden nur durch mehr gespielte Partien unwahrscheinlicher) - so sieht man, daß die Ergebnisschwankungen im Randbereich jenseits der 85%- Marke erheblich größere Eloschwankungen und damit Ranglistenunsicherheiten mit sich bringen. Das heißt, je mehr Ergebnisse im Randbereich in eine Eloliste einfließen, desto schlechter wird die Ergebnisqualität dieser Liste.
Und das ist nicht maßlos übertrieben oder laut geschrien, sondern ein Faktum, das jeder in der Elotabelle nachlesen kann. Wem das nicht gefällt, der müßte das Elosystem durch was ganz anderes ersetzen. Oder eben seine Testbedingungen dem Elosystem und seinen Eigenheiten im statistischen Randbereich anpassen. Ich habe mich für letzteres entschieden, indem ich diesen statistischen Randbereich zu vermeiden suche.

Stefan
Parent - By Ingo B. Date 2014-01-02 13:59
Stefan Pohl schrieb:

...

Naja. Der Fehler lag bei 18 Elo. Aber prozentual sind das fast 50% Abweichung. Daher sind auch bei weniger krassen Eloabständen die Abweichungen sicher schon beträchtlich. Und daher sollte man m.E. alle Ergebnisse im 90% Bereich unbedingt vermeiden. Und wenn ich mir die 5+3 CEGT Einzelergebnisse ansehe, dann trifft das bei weit weniger als 600 Elospanne zu, nämlich schon bei 300-350 Elo.


Ob die 18 Elo sind 18 Elo.  Wie relevant das bei 600 Elo Abstand zum Gegenstück ist sollen doch die Leser entscheiden.
Die von dir gezogene Grenze ist purer Willkür. Schau dir den Graph an den Kai gepostet hat, wenn das theoretische Problem auftritt, dann vielleicht so ab 400 Elo ... und da dann sehr sehr klein.

Stefan Pohl schrieb:

... Daß diese Problematik in vielen Ranglisten nicht ganz so extrem zu Buche schlägt, wie im angeführten Beispiel, heißt ja nicht. daß das Problem nicht existiert!


Das Problem ist existent, aber so theoretisch das keine bekannte Liste darunter leidet. Du reitest darauf herum, weil es bei dir nicht so ist, schön, nur ist dein Vorwurf an "die anderen" unsinnig!

Stefan Pohl schrieb:

Darüberhinaus hast du doch gerade deinen Testbereich verschlankt und hast nun eine Bandbreite von nur noch 320 Elo in deinem RR-Turnier. Das ist doch schon fast im grünen Bereich (so wie ich ihn definiere)...


Ich habe die individuellen Ergebnisse als Download. der schlechteste hat gegen den besten irgend etwas von 15%. Lt deiner Definition ist das kritisch ... ist es aber nicht.
Was den Testbereich betrifft ist das ein netter Nebeneffekt für den es zwei HAuptgründe gab:
1. Gewinnt (im Moment) die Nr. 1 überdurchschnittlich viel wegen des Contempt; das ist aber ein ganz anderes Problem als das was Kai bemängelt und
2. Habe ich so deutlich weniger Spiele pro RR (alt 28500, neu 26400), ich bekomme auch noch eine höhere Genauigkeit in der Errorbar und muß, da nur noch 16 Engines, weniger häufig eine neue Engine einspielen - ich spare Strom!

Ingo
Parent - - By Gerhard Sonnabend Date 2014-01-03 09:10
Hi Ingo !

Ich vermute mal, dass die meisten Leute nicht wissen wie die bekannten
Auswertungsprogramme eine Wertungszahl ermitteln.

Viele sind der Meinung, dass sie lediglich die einzelnen Performances
aufaddieren und durch die Anzahl der Gegner teilen müssen.

Aktuelles Beispiel aus meinem Houdini 4.0 x64 4CPU Test für die CEGT 40/4:
Code:

vs Critter 1.4 x64 4CPU             [3062] 69.5-30.5 perf=3205
vs Deep Sjeng 3.0 x64 4CPU          [2793] 95.0- 5.0 perf=3305
vs Deep Onno 1.2.70 x64 4CPU        [2810] 96.5- 3.5 perf=3386

3205 + 3305 + 3386 / 3 = 3299

Würde man so vorgehen (was natürlich vollkommen irre ist), dann würden extrem
hohe/niedrige Ergebnisse tatsächlich das Rating verzerren. Nur, und dies bedenken
die Leute leider nicht, wird die Wertungszahl vollkommen anders ermittelt, nämlich so:
Code:

vs Critter 1.4 x64 4CPU             [3062] 69.5-30.5 perf=3205
vs Deep Sjeng 3.0 x64 4CPU          [2793] 95.0- 5.0 perf=3305
vs Deep Onno 1.2.70 x64 4CPU        [2810] 96.5- 3.5 perf=3386

3062 + 2793 + 2810 / 3 = 2888 (ELO-Durchschnitt der Gegner)
69.5 + 95.0 + 96.5 = 261 aus 300 Spielen = 87.0% = + 330
Wertungszahl = 2888 + 330 = 3218


Der Unterschied beträgt also stattliche 81 (!!) Punkte.

Mit Kai Laskos hatte ich das auch mal auf Talkchess diskutiert anlässlich eines
IPON-Tests, der wollte das auch nicht verstehen.

Selbst wenn die Anzahl der extremen Resultate grösser ist als die der normalen
Resultate, funktioniert die Auswertung ohne jegliche Probleme resp. Verzerrungen.
Dir ist das natürlich bekannt, anderen jedoch ...

Viele Grüsse,
G.S.
Parent - - By Benno Hartwig Date 2014-01-03 09:43 Edited 2014-01-03 09:47
Thanx für den Hinweis, der Unterschied der Ergebnisse ist natürlich gewaltig.
Nicht verstanden habe ich bislang, warum das erste Ergebnis 'irre' ist und das zweite (vermutlich) 'OK' ist.
Was macht das 2. im Gegensatz zum 1. zu einem akzeptablen Ergebnis?
Wodurch wird das erste inakzeptabel. (Vorausgesetzt: gleiche Partien-Anzahl gegen jeden)

Hast du ggf. ein einfaches Zahlenbeispiel, welches dies unmittelbar klar macht?
Auf den ersten Blick finde ich es erstaunlich.

Natürlich hast du aber recht mit dem Hinweis, das diese 2 Berechnungsregel die richtige ist.
Aber ich hatte bislang gedacht, dass wäre einfach so, weil in Menschenturnieren ja normalerweise gegen einzelne Gegner auch nur ein mal gespielt wird. Da kann man dann ja jeweils keine eigenständige ELO-Zahl bestimmen. Und darum nur bildet man die durchschnittliche Gegner-ELO-Zahl und niummt den Erfolgsquotienten über alle Spiele.

Benno
Parent - - By ? Date 2014-01-03 10:39
Benno Hartwig schrieb:

Thanx für den Hinweis, der Unterschied der Ergebnisse ist natürlich gewaltig.
Nicht verstanden habe ich bislang, warum das erste Ergebnis 'irre' ist und das zweite (vermutlich) 'OK' ist.
Was macht das 2. im Gegensatz zum 1. zu einem akzeptablen Ergebnis?
Wodurch wird das erste inakzeptabel. (Vorausgesetzt: gleiche Partien-Anzahl gegen jeden)
...


Weil eine Durchschnittsrechnung schlicht keine Elo Berechnung ist. Elo ist anders definiert (siehe unteres Posting). Auch würde man zwei Arten der Berechnung mischen, schließlich müssen die drei Ratings (3062 + 2793 + 2810) auch irgendwie ermittelt worden sein.

Wenn man immer gleiche Gegener und eine gleiche Anzahl an SPielen hätte, keine Eloformel, sondern einfach die erreichten Punktzahlen (gegen diese Gegner) als Rating nehmen würde, DANN könnte man nach obigen Verfahren vorgehen.

(Meine Top 16, könnte man wenn man nur erreichte Punkte betrachtet, so berechnen:
   1 Houdini 4                 (2575.5 : 724.5)
   2 Stockfish DD              (2414.0 : 886.0)
   3 Komodo TCECr              (2350.5 : 949.5)
   4 Gull 2.2                  (2010.5 : 1289.5)
   5 Critter 1.4a              (2001.0 : 1299.0)
   6 Deep Rybka 4.1            (1937.5 : 1362.5)
   7 Deep Fritz 14             (1602.5 : 1697.5)
   8 Chiron 2                  (1579.0 : 1721.0)
   9 Hannibal 1.4b             (1495.5 : 1804.5)
  10 Naum 4.2                  (1336.0 : 1964.0)
  11 Protector 1.5.0           (1295.5 : 2004.5)
  12 HIARCS 14 WCSC 32b        (1258.5 : 2041.5)
  13 Jonny 6.00                (1166.5 : 2133.5)
  14 Deep Sjeng c't 2010 32b   (1139.0 : 2161.0)
  15 Deep Shredder 12          (1137.5 : 2162.5)
  16 Spike 1.4 32b             (1101.0 : 2199.0)


Jeweils die erste Zahl in der Klammer sind die erreichten Punkte nach 3300 Spielen UND wäre das Rating. Aber wie gesagt, geht nur bei gleichen Gegnern und gleicher Anzahl an Spielen ... haben nicht viele. Sobald etwas anderes da hinein soll, das nur eine Schnittmenge mit obigen Gegner teilt, brauchen wir so etwas wie eine Eloformel ...)

Gruß
Ingo
Parent - - By Benno Hartwig Date 2014-01-03 11:13
Klar, zwei Arten der Berechnung mit unterschiedlichen Ergebnissen sollte man nicht mischen.
Und die gültige Berechnungsart ist ja definiert. Zweifle ich ja auch nicht an.
'Irre' im Sinne von 'Abweichend von der richtigen Berechnung' könnte ich verstehen.

Ich hatte es nur so verstanden, als gäbe es auch ein inhaltliches Argument für diese Wertung.
"Guck mal, bei dieser Konstellation kommt das und das raus, und das ist ja nun offensichtlich irre!" oder so.

Unterschiedliche Spiel-Anzahlen könnte man ja durch eine geeignete Gewichtung der einzelnen ELO-Werte, die sich an den jeweiligen Errorbars orientieren könnte, berücksichtigen.

Benno
Parent - - By ? Date 2014-01-03 11:19
Benno Hartwig schrieb:

...
Unterschiedliche Spiel-Anzahlen könnte man ja durch eine geeignete Gewichtung der einzelnen ELO-Werte, die sich an den jeweiligen Errorbars orientieren könnte, berücksichtigen.
...


Da verstehe ich nicht ganz was du meinst. Die Errorbar ist doch (besser "enthält") die Gewichtung der unterschiedlichen Anzahl an Spielen? Worauf willst du hinaus?

Gruß
Ingo
Parent - - By Benno Hartwig Date 2014-01-03 14:00

> Die Errorbar ist doch (besser "enthält") die Gewichtung der unterschiedlichen Anzahl an Spielen? Worauf willst du hinaus?


Eben genau darauf.
Angenommen ich will doch einen ELO-Wert bestimmen aus den beiden ELO-Werten, die ich gegen 2 Gegner gespielt habe.
Dann sollte ich diese beiden ELO-Werte mit Bezug auf die jeweilige Spiele-Anzahl gewichten.

Angenommen:
1000 Spiele gegen A brachten 2000 ELO
2000 Spiele gegen B brachten 2100 ELO

Dann wäre ELO=(2000+2100)/2 nicht wirklich gut
Vermutlich wäre ELO=2000*(1/3)+2100*(2/3) schon besser. Aber optimal?
Ich glaube, man sollte sich noch weitere Gedanken um eine möglichst gute Wahl der Gewichte machen. Habe ich aber nicht.
Ich vermute, hierfür sollte man sich die Errorbars genauer ansehen. Aber vielleicht genügt auch eine Betrachtung der jeweiligen Anzahl der Spiele.

Benno
Parent - By Ingo B. Date 2014-01-03 14:18
1/3 ... 2/3 ... bei noch mehr Gegnern wirds kompliziert ... vielleicht sollten wir es noch zusätzlich mit einem Logarithmus versuchen ... ups, sieht ja fast aus wie die Eloformel

Gruß
Ingo
Parent - By Ingo B. Date 2014-01-03 09:44
Hallo Gerhard,

Schönes Bsp, gefühlt eine Diskussion mit jedem 2ten Testlauf den ich gemacht habe, aber ich glaube nicht das das hier das Problem ist.
Eher schon, dass jemand meint seine große Zahl an praktisch identischen Engines rechtfertigen zu müssen und dazu jede mögliche Erklärung heranzieht um andere Listen zu diskreditieren um seine zu rechtfertigen. So auch in diesem Fall wo es unbestritten ein theoretisches Problem gibt, es allerdings in keiner mir bekannten Rangliste irgendwie zum tragen kommt ...

Egal, das ist hier das kleinere Problem. Schlimm wird es wenn Leute meinen, aus welchem Grund auch immer, dass ganze Elosystem in Frage stellen zu müssen  ...

Gruß
Ingo
Parent - - By Frank Rahde Date 2014-01-03 10:10
Danke, Gerhard.
Da ich kein Mathe-Ass bin, habe ich noch nicht erkannt, woher die +330 kommen. 87% von was ergeben 330 Punkte?
Parent - - By Ingo B. Date 2014-01-03 10:23
Frank Rahde schrieb:

Danke, Gerhard.
Da ich kein Mathe-Ass bin, habe ich noch nicht erkannt, woher die +330 kommen. 87% von was ergeben 330 Punkte?


Bin zwar nicht Gerhard, aber trotzdem:

87% gegen einen gewissen Gegnerschnitt ergibt nach Eloformel 330 Elo Überlegenheit.

Elo Formel: http://de.wikipedia.org/wiki/Elo-Zahl

Das mit der Elo Formel ein bisschen komplexer als die obige Durchschnittsrechnung. Natürlich könnte man das so machen, nur wäre es dann nicht mehr Elo und eigentlich müßten die Zahlen vorher (3062 + 2793 + 2810) dann auch anders berechnet werden. Ansonsten mischt man zwei verschieden Berechnungssyteme - und das geht nicht.

Gruß
Ingo
Parent - By Frank Rahde Date 2014-01-03 10:54
Danke an Euch dreien (Ingo, Benno, Gerhard), die mir auf die Sprünge geholfen haben.
Parent - - By Benno Hartwig Date 2014-01-03 10:28

> woher die +330 kommen


Z.B. die Tabelle unten auf
http://www.schach-computer.info/wiki/index.php/Elo
zeigt den bijektiven Zusammenhang zwischen Punkteausbeute und ELO-Differenz.
Und 261/300 ist 0,87, entsprechend einer ELO-Differenz von ca. 330. (ich hätte hier 322 angegeben, habe aber auch nicht nachgerechnet, wie korrekt die Tabelle ist)

Das basiert auf der Formel in
http://de.wikipedia.org/wiki/Elo-Zahl#Berechnung

Benno
Parent - By Benno Hartwig Date 2014-01-03 10:40
PS:
Nach der Tabelle hätte hier ja 322 angegeben, aber die 330 sind wohl schon korrekt:
1/(1+POTENZ(10;-330/400)) = 0,8698
Vielleicht braucht diese Tabelle ja mal ein Tuning.

Sorry,
Benno
Parent - By Gerhard Sonnabend Date 2014-01-03 10:44
Für solche Fälle am besten immer ELO-Stat verwenden,
entweder direkt aus dem Shredder-GUI heraus oder als
stand-alone Anwendung in der Konsole.

Zum Beispiel:
Code:

EloStat Version 1.3
by Dr. Frank Schubert, 01/2005
-------------------------------

Choose program mode:

(1) Rating list
(2) Tournament
(3) Single competition
3

Wins   = 240
Draws  = 42
Losses = 18
Av.Op. Elo = 2888

Result     : 261.0/300 (+240,=42,-18)
Perf.      : 87.0 %
Margins    :
68 %      : (+  1.5,-  1.7 %) -> [ 85.3, 88.5 %]
95 %      : (+  2.9,-  3.5 %) -> [ 83.5, 89.9 %]
99.7 %    : (+  4.2,-  5.4 %) -> [ 81.6, 91.2 %]

Elo        : 3218
Margins    :
68 %      : (+ 25,- 25) -> [3193,3243]
95 %      : (+ 50,- 48) -> [3170,3268]
99.7 %    : (+ 77,- 72) -> [3146,3295]


Viele Grüsse,
G.S.
Parent - - By Frank Quisinsky Date 2014-01-03 12:42 Edited 2014-01-03 12:49
Korrekt!
Aber die Anzahl der Verzerrungen entstehen maßgeblich durch die Anzahl der Gegner in einer Liste und durch fehlende Variablen.

Die Anzahl der Gegner ist für eine genaue Berechnung das A und O.
Wichtiger als die Anzahl der Partien !!

Kann leicht simuliert werden mit einer Datenbank wenn bestehende Ergebnisse erneut unter einen anderen Engine Namen einfließen.
Hatte mich in Zeiten der SWCR1 damit beschäftigt und festgestellt, dass die Schwelle ab der es uninteressant wird bei ca. 28 Gegner liegt (Verlauf der Kurve wird bedeutungslos).
Im Grunde sollten zwischen 18-26 Gegner vorhanden sein damit der Spielstärkewert vernünftig wird.

Sinn sollte es sein:
Mit wenigen Mitteln den größtmöglichen Erfolg zu bewirken und weniger Mittel bedeuten weniger Spiele.

Und hier setzt meine maßgebliche Kritik an das Bewertungssystem an.
Die Ausgaben der Berechnungsprogramme bei 2 Engines sind Bockmist, egal wie viele Partien vorliegen.
Und der Bockmist wird immer kleiner und kleiner je mehr Engines in der Liste sind.
Und mithin stellt sich die Frage wie kann ich den Bockmist minimal halten.

Ich bin nach wie vor davon überzeugt, dass wir eine genauere Wertungszahl ermitteln können.
Und das auch wenn durch mehr Variablen als 1:0, 0:1 und Remis es zu Konstellationen wie SOS - Houdini mit 600 ELO Differenz kommt.

Letztendlich müssen zwei Dinge passieren:
Die Ausgaben einer Ratingliste müssen so gut sein, dass nicht nur der eine nackte Ratingzahl dabei heraus kommt.
Der Betrachter muss mehr Informationen erhalten.

Fußball ist immer ein ganz nettes Beispiel.
München hat 100 Punkte und eine Tordifferenz von +50 ... sprich die spielen sehr aggressiv nach vorne und schießen dadurch mehr Tore.
München hat aber zu Hause x Partien verloren ... sprich die Heimstärke ist zwar immer noch gut aber im Verhältnis ein Schwachpunkt.
Bei München haben 3 Spieler 80 von den 100 Toren geschossen ...

Etc. und das will ich beim Computerschach haben anstatt ...
Bayern ist erster mit 100 Punkten.

Was wir hier treiben ist Otto Walkes wenn er die Fussballergebnisse vorliest.
2:2, 1:1, 0:3 ... und vergisst vorher die Paarungen vorzulesen.
Im Grunde hat er Recht, ob er nun die Paarungen nennt oder nicht wir wissen immer noch nicht wie dieses 0:3 entstanden ist.
Dafür kaufen wir uns dann den Kicker wenn wir es nicht verfolgen können oder nutzen andere Quellen.

Und genau diese Schwachpunkte müssen endlich mal behoben werden.

Viele Grüße
Frank
Parent - - By Stefan Schiffermüller Date 2014-01-03 13:33
Frank Quisinsky schrieb:

Im Grunde sollten zwischen 18-26 Gegner vorhanden sein damit der Spielstärkewert vernünftig wird.


Diese 18-26 Gegner kann ich dir erzeugen, sogar alle mit Houdini-Stärke. Die Fähigkeit, die man dazu benötigt, ist das Ändern von Dateinamen.

Gruß Stefan
Parent - - By Frank Quisinsky Date 2014-01-03 13:37
Hi Stefan,

genau, so bin ich vorgegangen als ich seinerzeit (SWCR1) simulierte wann es ca. genauer wird ... mit der Maßgabe von mir bei 40 Partien pro Match.
Und optimal wären da 26 Gegner um möglich mit wenigen Partien ein optimales Ergebnis zu erzielen.

Viele Grüße
Frank
Up Topic Hauptforen / CSS-Forum / Interessantes zu großen Elodifferenzen
1 2 Previous Next  

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill