Einzelnen Beitrag anzeigen
  #34  
Alt 22.07.2007, 13:10
Benutzerbild von Chessguru
Chessguru Chessguru ist offline
Administrator
 
Registriert seit: 29.06.2004
Ort: Rostock
Alter: 56
Land:
Beiträge: 6.617
Abgegebene Danke: 1.879
Erhielt 4.920 Danke für 1.490 Beiträge
Member Photo Albums
Aktivitäten Langlebigkeit
3/20 20/20
Heute Beiträge
0/3 sssss6617
AW: Neue Aktivschach Elo Liste

Hallo,
 Zitat von Supergrobi
Aber nachdem Roma schon kein Material mehr hatte und das Matt nicht mehr weit entfernt war, hat der MM V die Zeit überschritten... Tja, was tun? Obwohl ich sonst Zeitüberschreitungen als Verlust werte, habe ich diese Partie für den MM V gewonnen gewertet... Hier die Partie, damit Ihr sehen könnt, wovon ich rede. Wie hättet Ihr entschieden?
lt. Turnierregeln wäre die Partie Remis! Da hilft Weiß auch die Zeitüberschreitung nichts. Aber Dirk, ich hätte genauso entschieden wie du.

 Zitat von Wolfgang2
Ich bin jedoch gerade bei den (sehr) schwachen Geräten der Meinung, daß eine Spielstärkebeurteilung oder Eingruppierung in die Liste AUCH anhand des menschlichen Beurteilungsvermögens möglich ist, denn:

a) Die Suchtiefe ist sehr überschaubar
b) Typische "Krankheiten" (Randbauernaufzüge)... erkennt man schnell
c) Planvolles oder planloses Spiel
d) Schwaches Endspiel: Wird zumindest der König (etwas) eingesetzt ?
e) Neigung zu "Horizontzügen" oder unnötigen Verkomplizierungen.

Meine Meinung:
Wenn sich 5 oder 10 "Altgeräte-Kenner" an einen Tisch setzen, über die Eigenschaften und subjektive Erfahrungen berichten (so wie ich weiter oben), evtl. noch strittiges Geräteverhalten überprüfen, kommt als Konsensus-Schätzung ein genaueres Ranking heraus, als es 500 Computer-Computer Partien liefern könnte.
Nur, wir reden hier nicht über das menschliche Spiel, sondern über Partien, die von Schachcomputern gespielt werden. Diese Geräte kennen keine psychologischen Spielereien, sie spielen grundsätzlich mit der gleichen Spielstärke. Genau das ist der Ansatz für unsere Elo Listen. Wir berechnen die angegebenen Werte nicht mit Hilfe einer Elo Formel. Ich kann mich nur wiederholen. Die Werte werden mit Hilfe des Programms "EloStat" errechnet. Dieses Programm errechnet die relativen Spielstärkeunterschiede der Geräte untereinander. Es berechnet im Grunde keine Elo Zahlen, sondern stellt die Abstände der Geräte untereinander aufgrund der vorliegenden Partien in Zahlen dar. Wir hatten solch eine Diskussion schon einmal im Forum, daher zitiere ich mich jetzt mal selber:

Original Thread: https://www.schachcomputer.info/foru...hread.php?t=74

"Ich versuche mal eine einfache Erklärung des Elo Systems. Bei der Berechung einer Elo Zahl geht man von folgender Hypothese aus. Die Verteilung der Spielstärke in der Gesamtheit der Spieler entspricht mathematisch der Gaußschen Glockenkurve (Wahrscheinlichkeitstheorie). Nach dieser Hypothese läßt sich für 2 Gegner statistisch voraussagen, mit welcher Wahrscheinlichkeit der eine Spieler gewinnen müßte (s.h. https://www.schachcomputer.info/html...erwartung.html). Somit kann man bei vielen Partien oder einem Turnier anhand der Wertungszahlen eines Spielers und des Durchschnitts der Wertungszahlen seiner Gegner voraussagen, wie viele Punkte er theoretisch erreichen wird. Wenn die Partien/Turniere gespielt sind, kann man so das erreichte Ergebnis mit dem statistisch Erreichbaren vergleichen und aus der Abweichung die neue Wertungs- oder Elo-Zahl berechnen. Wie das geht, kannst du auch auf unseren Seiten nachlesen.

Schachcomputer haben eine gleichbleibende Spielstärke, daß ist der entscheidende Unterschied! Weiterhin betrachten wir alle Partien als ein Ganzes! Somit können wir auf das Programm EloStat zurückgreifen. Ich zitiere mal aus der Anleitung von EloStat, da Frank Schubert es aus meiner Sicht sehr anschaulich erläutert hat.

"ELOStat verwendet das Iterationsverfahren..." (Anmerkung von mir: Iterationsverfahren sind Verfahren, welche zum Lösen nichtlinearer Gleichungen verwendet werden) "...nach Thompson. Bei diesem Verfahren wird allen Programmen zu Beginn der gleiche Elostartwert zugeordnet (evtl. im PGN-Header angegebene Elozahlen bleiben also unberücksichtigt !). Danach wird die gesamte Datenbank wie ein einziges großes Turnier behandelt und elomäßig ausgewertet. Die somit ermittelten Elozahlen werden anschließend den Programmen zugewiesen, d.h. sie ersetzen den anfänglichen Elostartwert. Mit den nunmehr aktualisierten Elozahlen wird erneut eine Datenbankauswertung gestartet. Dieses Vorgehen wird solange wiederholt, bis die Elozahlen aller Programme nahezu konstant bleiben (man sagt, die Elozahlen konvergieren..." (Anmerkung von mir: einem endlichen Grenzwert zustrebend) "...gegen einen bestimmten Grenzwert).
Der Elostartwert hat keinen Einfluß auf die relativen Spielstärkeunterschiede der Programme, d.h. der Eloabstand zwischen den Programmen ist unabhängig vom Startwert."

"Die Leistungsfähigkeit des oben beschriebenen Iterationsalgorithmus beruht u.a. darauf, daß zwischen zwei Programmen A und C ein indirekter Spielstärkebezug hergestellt werden kann, selbst wenn A und C nie direkt gegeneinander gespielt haben. Hat z.B. das Programm A mehrere Partien gegen B gespielt und B wiederum einige Partien gegen C, so reicht dies aus, um die Elozahlen aller drei beteiligten Programme im Sinne des Iterationsverfahrens konvergieren zu lassen. A, B, und C bilden somit einen zusammenhängenden Cluster. Die im Beispiel behandelte Datenbank ‘wb_elo.pgn’..." (Anmerkung von mir: Bitte das Programm EloStat herunterladen, um auf die Beispieldatei zugreifen zu können) "...besteht aus einem einzelnen Cluster, d.h. geht man von einem beliebigen Programm aus, so läß sich zu JEDEM anderen Programm der Datenbank ein Spielstärkebezug im obigen Sinne ableiten. Jede gute Datenbank sollte daher aus einem einzelnen Programmcluster bestehen und somit unfragmentiert sein (im Idealfall hat jeder gegen jeden gespielt).
Spielt man allerdings mit zahlreichen Programmen, so kann es passieren, daß die Datenbank unbemerkt fragmentiert, d.h. in einzelne unabhängige Cluster zerfällt, zwischen denen kein Spielstärkebezug mehr existiert. Dieser Fall tritt z.B. dann ein, wenn man zu den Programmen A,B,C drei weitere Programme D,E,F, hinzufügen würde, die zwar jeweils unmittelbar gegeneinander spielen (also etwa D-E, D-F, E-F), aber keine einzige Partie gegen die anderen Programme austragen. In diesem Fall handelt es sich streng genommen nicht um eine einzige, sondern um zwei voneinander unabhängige Datenbestände. Bei der Eloberechnung laufen somit zwei ebenfalls unabhängige Iterationsverfahren ab und die ermittelten Elozahlen in beiden Clustern haben keinen Bezug mehr zueinander. ELOStat erkennt solche fragmentierten Datenbanken und zeigt in der Datei ‘cluster.dat’ die einzelnen Programme sowie die Anzahl der gespielten Partien je Cluster an."


"In der Datei ‘cluster.dat’ wird zusätzlich der Wert des sog. Iterationsoffsets (itoffset) (Anmerkung von mir: Aus diesem Grund geben wir diesen Wert in unser Liste mit an) angegeben. Hierbei handelt es sich um eine Eigenart des Iterationsverfahrens, die für praktische Zwecke meist ohne Belang ist. Sie sei hier trotzdem kurz erläutert: Um die Konvergenz des Iterationsverfahrens sicherzustellen, muß gewährleistet sein, daß der mit der Anzahl der gespielten Partien je Programm gewichtete Mittelwert aller Elozahlen nach jedem Iterationsschritt exakt gleich dem Elostartwert ist. Aufgrund des nichtlinearen Zusammenhangs zwischen der relativen Performance eines Programms (in Prozent) und seiner Elozahl (genauer Elodifferenz) kommt es zu einem konstanten Offset, der bei jedem Iterationsschritt hinzuaddiert werden muß, um die oben erwähnte Konstanz des Elomittelwerts sicherzustellen. Dieser Offset führt in der Rangliste dazu, daß sich der angegebene Wert für Av.Op. von dem tatsächlichen Wert, den man aus den Elomittelwerten der ersten Spalte erhält, um genau diesen Wert ‘itoffset’ voneinander unterscheidet. Anders ausgedrückt fällt der Elowert eines Programms in der Rangliste immer um genau itoffset größer aus, als es aufgrund seiner Performance und seines Av.Op.-Wertes zu erwarten wäre. Dieser systematische Offset betrifft aber jedes in der Rangliste aufgeführte Programm gleichermaßen, so daß die Eloabstände zwischen den Programmen und somit die relativen Spielstärken davon unbeeinflußt bleiben. Der Wert von itoffset ist in den meisten Fällen kleiner als 1 Elopunkt (s.o.), kann in Sonderfällen aber durchaus auch mehr als 50 Elopunkte betragen."

"Der Elowert eines Zweikampfergebnisses von 100 % bzw. 0 % bleibt nach der Theorie zwangsläufig unbestimmt. Aus rechentechnischen Gründen (u.a. um die korrekte Durchführung des Iterationsverfahrens in den Programmmodi 1 und 2 sicherzustellen) wird den beteiligten Programmen trotzdem eine endliche Elozahl zugewiesen, die um 600 Punkte oberhalb bzw. unterhalb des Av.Op. Elowertes liegt. Mit anderen Worten: ELOStat berücksichtigt keine Elounterschiede, die größer als ± 600 Punkte sind (die 95%-Fehlergrenzen können daher maximal ± 1200 Elopunkte betragen). Für alle praktisch relevanten Datenbanken spielen diese Sonderfälle aber im Grunde keine Rolle."


Jetzt bitte genau lesen, denn dieser Punkt ist wichtig.

"Das Iterationsverfahren setzt zwingend voraus, daß die mittlere Spielstärke eines Programms in jeder Partie dieselbe bleibt. Diese Näherung ist für Schachprograme derzeit sicherlich gut erfüllt, sofern kein extensives Buchlernen gegen ein und denselben Gegner erfolgt (andere Lernalgorithmen spielen meiner Erfahrung nach in der Praxis derzeit keine wesentliche Rolle). Für menschliche Datenbanken ist dieses Vorgehen aber problematisch, da menschliche Spieler sich im Laufe der Zeit deutlich steigern können (um Hunderte von Elopunkten), so daß die mittlere Spielstärke in der Regel von Partie zu Partie zunimmt. Die Auswertung historischer Datenbanken mit dem Iterationsverfahren stellt daher zwar eine äußerst reizvolle Sache dar, hat aber aus obigen Gründen nur eine bedingte Aussagekraft. Bei menschlichen Spielern sollte daher nach Möglichkeit des Elosystem der FIDE verwendet werden."

Der Ansatz von Wolfgang2 zur Spielstärkeschätzung, denn nichts anderes stellt diese Idee dar, ist für die Einordnung von Spielstärkeunterschieden von statisch spielenden Schachcomputern nicht geeignet. Zumal ich auch nicht verstehe, wie sich diese Idee in eine Spielstärke Liste mit ca. 200 Geräten umsetzen lassen soll. Schätzungen sind maximal ein Ansatz, können aber nie eine genaue Wertung darstellen, da sie nicht auf verifizierbaren Fakten beruhen, sondern "nur" subjektive Empfindungen von menschlichen Spielern abbilden.
Mit Sicherheit ist unsere 3.Aktiv Elo Liste teilweise noch recht schwankungsanfällig, besonders das untere Drittel, aber das habe ich ja schon in der Elo Listen Einleitung angesprochen, nur der Unterschied zu der geäußerten Idee der Schätzung besteht darin, je mehr Partien gespielt werden, um so genauer wird diese Liste.

Allerdings kann so eine Liste und sei sie auch noch so genau, nie die subjektiven Empfindungen von Menschen widerlegen.

Viele Grüße,
Micha

Geändert von Chessguru (22.07.2007 um 14:50 Uhr)
Mit Zitat antworten