Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Excel-Tabelle für FEOBOS-Buchprojekt v7.39-79
- - By Klaus Wlotzka Date 2017-08-04 16:32 Edited 2017-08-04 16:43 Upvotes 2
Hallo Zusammen,

in den letzten Tagen habe ich sehr intensiv an der Verschlankung der Excel-Tabelle und gleichzeitig an der Überarbeitung notwendiger Funktionen gearbeitet. Folgende zusätzliche Funktionen wurden seit der Version 5.06-v67 eingebaut:

1.)
Positionen können nunmehr auch manuell aussortiert werden. Hierzu muss in der Tabelle "Eval" lediglich ein "r" für "rejected" neben der entsprechenden Positionsnummer eingegeben werden. Hierdurch besteht die Möglichkeit, Positionen, welche zum Beispiel durch Zugumstellungen unterschiedlicher ECO-Codes doppelt vorhanden sind, manuell herauszunehmen. Diese Option hat auch Berücksichtigung beim ECO-Code-Rating (KECR) gefunden.

2.)
Die Remisbewertung konnte bisher mit einer prozentualen Vorgabe vorgenommen werden. Bei einer Eingabe von 30% wird die Stellung bisher erst dann aussortiert, wenn mindestens 30% der Engines eine 0.00-Bewertung rausgeben. Mit dieser alleinigen prozentualen Eingabe waren insbesondere die kurzzügigen ECO-Codes benachteiligt, da sie schon zu früh aussortiert wurden. Somit haben wir eine genauere Abstufung über drei Prozentzahlen, welche in Abhängigkeit der Zugzahl funktioniert, eingebaut. Da über den epd-String keine Zugzahl der Stellung vorliegt, musste Frank diese aufwendig in einer höllischen Fleißarbeit manuell in die Tabelle einpflegen. Dagegen war der Einbau dieser Funktion in die Excel-Tabelle ein Klacks.

3.)
Einbau einer zusätzlichen Tabelle ("Database") für die Informationen der Datenbank, wie zugehöriger ECO-Code und Zügezahl (siehe Punkt 2). Hier können bei Verwendung einer eigenen Datenbank die Daten zentral gepflegt werden und über einen Button automatisch in die entsprechenden Berechnungstabellen übertragen werden.

4.)
Da das Programm schon jetzt bei über 5,16 Mio Formeln an seiner Grenze ist und wir ja die Tabelle für das Update von 26146 auf über 40.000 Positionen erweitern müssen, war es erforderlich, die derzeitige Tabelle hinsichtlich der Formelanzahl deutlich zu reduzieren. Über den Einbau zusätzlicher Makros und Optimierung der Formeln als solches, konnte die Formelanzahl trotz der neuen Funktionen nunmehr auf 3,67 Mio Formeln reduziert werden. Hierdurch läuft das Programm als solches wesentlich schneller und wir haben "Platz" geschaffen für die ausstehende Erweiterung.

5.)
Diverse optische Anpassungen und kleine Fehlerbehebungen

Derzeit läuft der Test mit der 8. Engine "Andscacs" 0.91 X64. Bei derzeit knapp 39% des kompletten Testdurchgangs zeigt sich Andscacs insbesondere bei der extrem geringen Ausgabe von 0.00-Bewertung differenziert zu den bisherigen Testdurchgängen.

Die neue Excel-Version mit der Versionnummer v7.39-v79 steht in Kürze auf Franks Webseite http://www.amateurschach.de zur Verfügung. Ebenso die aktuelle KECR (ECO-Code-Rating), bei der nunmehr die manuell aussortierten Positionen nicht mehr bei der Bewertung berücksichtigt werden, kann hier runtergeladen werden.

Viele Grüße

Klaus
Parent - - By Frank Quisinsky Date 2017-08-04 19:03
Hallo,

ziemlich heftige Änderungen bei unserem Projekt (hinter jeder Änderung steckt absolut Notwendiges).
Ich brauche allerdings noch Zeit bis ich die neue Excel Tabelle online stellen kann.

Denke am sehr späten Abend, schreibe dann morgen auch noch etwas dazu.

Gruß
Frank
Parent - - By Frank Quisinsky Date 2017-08-04 21:51 Edited 2017-08-04 22:32
Hallo zusammen,

fassen wir die Überlegungen zusammen:

Zunächst: Die Dia-Show unter:
http://www.amateurschach.de/main/_new-opening-book.htm

wurde komplett auf einen aktuellen Stand gebracht.
Alle Tabellenblätter werden hier grafisch dargestellt ... wer sich schnell einen Überblick verschaffen möchte.

---

1. Die FEOBOS Basisdatenbank produziert bei enthaltenen 26.146 Positionen 998 Positionen mit unterschiedliche Zugtiefen. Diese kommen durch die Kürzung der ECO Codes auf 3 Züge nach ECO Code Bildung zu Stande. Durch die Kürzung werden dann andere ECO Codes erkannt (mögliche Zugumstellungen nach Variantenende). Das ist dumm und war mir immer ein Dorn im Auge weil die 998 Positionen dann zu weit über 95% doppelte Postionen innerhalb der 26.146 Basic Datenbank aber mit unterschiedlicher Zuglänge sind.

Insofern müssen diese ja irgendwann mal rausgeholt werden, was wir hiermit gemacht haben.

2. Da eh nun kräftig gewirbelt wurde, berichtigte ich direkt einen zweiten Schwachpunkt. Bei Houdini und zwei anderen Engines waren die Settings nicht optimal. Houdini sortierte über 400 Stellungen eher zu Unrecht aus. Unnötig möchte ich keine Stellungen verlieren. Insofern wurden die Settings neu ausgerichtet. Bedeutet ich muss die Datenbanken für die Erstellung der späteren Bücher komplett neu überarbeiten bzw. Engine für Engine die gefunden Stellungen per Hand rausholen. Da schon 7 Engines durch sind ist das Arbeit. Hinzukommt ja auch noch die Datenbank mit den Zugumstellungen ... also 2x. Das kann dauern und insofern folgt das nächste FEOBOS Buchupdate erst wenn alle 10 Engines die 26.146 Stellungen durch haben, ca. in 1 1/2 Monaten.

3. Es gibt Situationen im Leben einer "EPD", die für Kopfschmerzen sorgen. Rein theoretisch könnte mit einem Editor eine EPD um gewünschte Informationen leicht ergänzt werden. Da ich die Tools von Norm Pollock für das Erstellen der EPD Dateien anwende, sorgt das aber auch nur für ein wenig durcheinander und die EPD Dateien werden viel zu lang ... muss sich sein.

Das Thema ist:
ECO und Zuglänge setzen.

So hat Klaus nun ein neues Datenbank kreiert. Hier können manuelle Eingaben erfolgen. Für jede der 26.146 Stellungen setze ich also den ECO Code und "neu" die Zuglänge der Positionen. Hört sich nach einer Kleinigkeit an oder warum notwendig!? Ich arbeite derzeit parallel an weitere Updates (Update 1b / 1c). Benötige viele der Informationen die nun neu sind für eine bessere Selektion bzw. um selbst mehr zu sehen was nicht gut ist. Update 1a steht mit 12.185 Stellungen (wurde von Stockfish und Komodo) auf Fehler schon analysiert. Update 1b nimmt sich speziell die 53 ECO Codes vor, zu dem wenig in der 26.146 - 12.185 Datenbanken sind. Diese neu gefunden Positionen (Datenbank mit über 5.000 Positionen) wird in Kürze auch von Stockfish und Komodo auf Fehlern untersucht. Geplant ist noch ein Update 1c. Hier konzentriere ich mich auf ECO Codes, bei denen bislang ziemlich viel aussortiert wurde bzw. versuche neue ungeprüfte Positionen zu finden.

Die Updates 1a, 1b und 1c werden dann zusammen das Upd. 1  bilden auf dem die 10 Engines dann erneut losgelassen werden. Die Excel wird dann um die Anzahl der Stellungen vom Upd. 1 ergänzt. Mit diesem Upd. 1 versuchen wir dann gleichzeitig alle Schwachpunkte zu beheben und vor allem das Niveau vom Buch weiter zu steigern, natürlich auch die Stats innerhalb der Excel Dateien von Klaus.

4. Aber zur wichtigsten Änderung:
Wir können beim Aussortieren der 0,00 Bewertungen nicht hingehen und Stellungen "Buch-Ende 4 Züge" mit Stellungen "Buch-Ende 17 Züge" gleich behandeln.
Das heißt, bei einem ECO Code endet das Buch nach 4 Zügen, bei einem ECO Code nach 17 Züge. Die restlichen ECO Codes dann logischer Weise dazwischen.

Die Wahrscheinlichkeit ist deutlich höher, dass es zu einer schnellen 3-fachen Stellungswiederholung kommt mit mehr Zügen im Buch als bei weniger Züger im Buch bzw. ist dann das Buch dafür nicht verantwortlich (bei schnelle Dreifache wenn die Zuglänge im Buch z. B. nur 4 Züge ist).

Würden wir alles gleich behandeln hätten wir beim Setting wenn 30% der 10 Engines 0,00 ausgeben (3 von 10) 2.050 0,00 Positionen aus der Datenbank zu entfernen. Das ist schlecht, geht einfach zu viel was gut ist über den Jordan.

Wir haben nun eine Abstufung eingearbeitet, welche 0,00 aussortiert abhängig von der Zuglänge innerhalb der ECO Codes.
Durch diese Änderung werden wie erhofft dann auch 600 Stellungen weniger gelöscht, also noch ca. 1.400 anstatt vorher ca. 2.000.
Ganz sicher nicht zu Lasten von mehr Remis Partien beim fertigen FEOBOS Buch.

Sehr schwierig zu verstehen, eine komplett neue Idee bei der Selektion.
Allerdings gibt mir die Überlegung Recht ... 600 Positionen gerettet.

---

Letztendlich verlieren wir ... ca. 1.000 Stellungen wegen unterschiedliche Zuglänge innerhalb der ECO codes.
Letztendlich gewinnen wir ... ca. 400 Stellungen (zu Unrecht von Houdini aussortiert) und ca. 600 Stellungen durch die Abstufung beim Löschen der 0,00 Bewertungen.

Mittels dem Löschen der 0,00 Bewertungen sorgen wir für einen hohen Contempt innerhalb des Buches bzw. sorgen wir dafür das es zu deutlich weniger schnellen Remispartien bei Eng-Eng Matches kommt.

---

Durch die vielen Änderungen und auch dem Upd. 1 werden die KECR Ratings von Klaus noch besser.
Das Buch wird ein noch höheres Niveau an den Tag legen (wenn fertig).

---

Und ich bin zufrieden. Die beiden Probleme, die in den letzten Monaten aufgefallen sind bzw. mir größte Kopfschmerzen gemacht haben sind raus. Klaus hat mal wieder ganze Arbeit geleistet und genauso wie ich unzählige Stunden in diese Änderungen investiert.

Diese Tabelle und der Arbeitsaufwand der mittlerweile betrieben wurde ist gar nicht zu bezahlen und sprengt deutlich eigentlich das was ich machen wollte.
Aber da nun mitten drin ...
Auf dem Weg zum "perfekten Buch" fürs Engine rein mit mathematischen Formeln in Kombination mit Engine-Power aus dem Jahr 2017 ...

Gruß
Frank

PS 1: Beim Update 1a, 1b und 1c also später dem Upd. 1 berücksichtige ich jetzt aber die unterschiedliche Zuglänge und filtere das unnütze Zeug vorher aus. Das hatte ich beim Projekt-Start nicht bedacht. Auf der anderen Seite, hierdurch gibt es in der Excel eine schöne neue Funktion fürs manuelle herausnehmen von Stellungen.

PS 2: Bedeutet auch, wer die Excel von Klaus selbst für eigene Datenbanken anwenden möchte muss dann die ECO Codes und die Zuglänge selbst manuell in der Excel einfügen (sonst gibt es keine Stats zu den Themen). Wir haben noch ein paar Ideen Statistiken für die Zuglänge hinzuzufügen. Bei den meisten Datenbanken mit Positionen wird leider immer der selbe Denkfehler begangen. Pauschal wird gesagt, die Datenbank geht 10 oder 8 Züge tief. Das bedeutet, das viele ECO Codes dann gar nicht enthalten sind, oder zu ECO Codes die sich schnell bilden (B06, B07 etc.) dann viel zu viel in der Datenbank ist. Bedeutet das alles nicht mehr ausgeglichen ist und Engines die mit ECO Codes Vorteile oder Nachteile haben benachteiligt oder bevorteilt werden.

Die optimale Lösung ist einfach die ECO Codes auf eine passende Zuglänge zu kürzen oder die ganze Arbeit erscheint fragwürdig. Gibt glaube ich auch nur einen Code bei dem selbst die Kürzung auf 3-Züge nach Bildung fragwürdig ist (unserer Vorgehensweise). Glaube das ist B85 aus dem Kopf, oder war es D85 ... B86 oder D86. Weiß nicht mehr ... hier werden nach dem Ende des ECO Codes mindestens drei logische Züge gespielt, so dass es zu Unmengen Zugumstellungen kommt aber letztendlich nur wenige in der Datenbank verbleiben.

Genug, hätte ich diese und viele andere schon erarbeitete Infos vorher gehabt.
Wem jetzt der Kopf qualmt ... vergisst das hier alles und schaut sich mal die folgende Grafik an ...

http://www.amateurschach.de/common/feobos/excel/eval%20exp.%202.png

Schaut mal auf Andscacs ... genial was diese Engine macht was alle anderen bislang getestete Engines nicht machen ... Kurve komplett entgegengesetzt zu allen anderen Engines, irre!
Eine extrem niedrige 0,00 Statistik ... werden kaum 0,00er ausgegeben ... BRAVO ... verhindert auch ohne Contempt die schnellen Remise.
Ich bin der Meinung das ist "Spitze" ...

Mittels FEOBOS mehr zu den Engines herausfinden.
Auch das ist ein schöner Nebeneffekt wenn die Schablone auf 26.146 Stellungen mittels Excel gelegt wird.

Und entgegen was Klaus geschrieben hat.
Online ist die Version 07.44-79 ... also nach 44% der Andscacs Analysen (hatte die aktuellen Analysen noch eingefügt).
Parent - - By Frank Quisinsky Date 2017-08-04 23:07 Edited 2017-08-04 23:09
Hallo,

muss etwas deutlicher werden (mein TIPP mit Andscacs ist vielleicht nicht auf Anhieb verständlich):
Da Andcsacs eine extrem niedrige 0,00 Quote bei den Analysen erzeugt, kann die Engine möglicher Weise eingesetzt werden für ...

Herausfiltern der tatsächlichen Stellungen, welche wahrscheinlich schnell zu Remisen führen!!

Daher eignet sich Andscacs möglicher Weise hervorragend als Engine für einen Blunder Check bei Eröffnungsdatenbanken.

Die Frage der Fragen:
Wie setzen wir diese neue Erkenntnis jetzt bei FEOBOS um?
Müssen mal die kompletten Analysen abwarten und schauen was Andscacs dann noch für 0,00er ausgibt.

Hochinteressant, denn mittels Andscacs können wir einen ganz entscheidenden Punkt bei der Erstellung von Eröffnungsbüchern besser berücksichtigen als wahrscheinlich mit allen anderen Engines. Wahrscheinlich, weil in FEOBOS natürlich nicht alle Engines einfließen können und es möglicher Weise noch andere Engines gibt die hier vergleichbar gut sind.

Hatte vor einem Jahr des Öfteren den Programmierer in Talkchess auf dieses Thema angesprochen. Andscacs erspielte zu viele schnelle Remispartien, mehr als alle Anderen. Er wollte das dann fixen, hat es auch und im Test-Lauf danach war die Quote dann sehr gut. Das die Quote aber nun so gut ist ... hatte das Thema dann nicht mehr verfolgt. Die Hinweise sind in älteren TalkChess Mitteilungen zu den Spießroutenläufen von Andscacs zu finden, werde das selbst noch mal nachlesen was der Programmierer seinerzeit hierzu geschrieben hatte. War vor ca. fast genau einem Jahr.

Gruß
Frank
Parent - - By Alexander Holzhaeuser Date 2017-08-05 10:09
Hallo Frank,

mich überrascht mit Andscacs nicht, setze ich schon länger für Eröffnungsanaylsen ein, ohne wirklich zu wissen warum.
Aber die Evals von Andscacs haben mich immer wieder dazu ernüchtert, die "euphorischen" Evals anderer Engines in Frage zu stellen.
Schön dass durch Deine Anaylsen-Testreihen FEOBOS es dahingehend bestätigt.

Gruss
Alex
Parent - By Frank Quisinsky Date 2017-08-05 11:39
Hallo Alexander,

ja irgendwie ... nutze ich die Engine auch sehr gern für Analysen.
Jose hat gerade auch schon zum Thema in TalkChess geschrieben.

Vielleicht entsteht ja etwas neues ...
Eine Analyse Engine speziell für den Zweck die Remisen nach 3facher Stellungswiederholung zu suchen / finden.
Oder eine spezielle neue Analyse Funktion als UCI Option.

Schon verrückt und richtig genial.
Bin sehr auf das KECR Rating von Klaus gespannt wenn Andscacs durchgelaufen ist.

Gruß
Frank
Up Topic Hauptforen / CSS-Forum / Excel-Tabelle für FEOBOS-Buchprojekt v7.39-79

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill