AquaPGN - Manipulation von "Aquarium"-generierten PGN-Dateien

Externe Links:


CSS
Computerschach-Forum:


umfangreiches Forum zum Thema Computerschach und speziell auch zum Programm "Stockfish"

Stockfish
Development Versions


Die aktuellsten Versionen von Stockfish

Interne Links:


Behting-Studie

Eine für fast alle Schachprogramme unlösbare Studie

AquaPGN - ein Programm, das die Welt nicht braucht, allenfalls einige Nutzer der Schach-GUI Aquarium.


Letztes Update vom 14.6.2018:

Im Monitor-Modus werden nun auch die PGN-Tags (Namen, Ereignis, Datum, Elo-Werte etc. - sofern vorhanden) der PGN-Datei, diverse Partieauswertungen sowie Diagramme mit den probabilistischen Partieresultaten für jede einzelne Partie angezeigt;
für die Zugkommentare werden mit einer Optimumquote für den betreffenden Zug sowie einer durchschnittlichen Optimumquote weitere Bausteine angeboten;
die Daten-Tabelle in AquaPGN.ods für LibreOffice enthält nun nicht nur zusätzlich die Optimumquote nebst Diagramm sowie die durchschnittliche Optimumquote, sondern auch die PGN-Tags und die Partieauswertungen;
Anpassung an die Schach-GUI Arena.

Update vom 25.3.2018:

Monitor-Modus, bei dem die Daten des PGN-Partiekopfes und alle Züge mit Engine-Stellungsbewertungen inklusive Auswertungen auf dem Bildschirm mehrfarbig ausgegeben werden (vgl. Ziffer 12f));
Überarbeitung der Kommentator-Bewertungen mit 6 verschiedenen Bausteinen;
Überarbeitung der Tabellen und Diagramme in AquaPGN.ods für LibreOffice;
Anpassung an Kvetka.

Update vom 15.1.2018:

Überarbeitung der Zugbewertungssymbole gemäß Bewertungsrelevanzreduktion mit diversen Einstellungsmöglichkeiten und Informationen hierzu;
Eliminierung der Definition von Zugbewertungssymbolen per 3-Formeln-Option;
neu: Stellungsbewertungssymbole mit diversen Einstellungsmöglichkeiten und Informationen hierzu;
neu: probabilistische Partieresultate;
neu: Einfügung der Zugbewertungs-, Stellungsbewertungssymbole und probabilistischen Partieresultate in das Clipboard zur Verwendung in einem Tabellenkalkulationsprogramm wie LibreOffice Calc;
neu: Einfügung eines Diagramms mit den probabilistischen Partieresultaten für Weiß und Schwarz als weiteres LibreOffice Calc Diagramm;
komplette Analyse der Zugbewertungssymbole nebst Grenzwerte, Stellungsbewertungssymbole und probabilistischen Partieresultate für 1 oder 2 (dann auch die relevante Bewertungsdifferenz) Enginebewertungen; Anpassung an Lucas Chess, Scid vs. PC und Shredder Classic 4.

Update vom 10.3.2017:

Komplette Überarbeitung der Zugkommentierung;
Daten über kommentierte Züge werden ins Clipboard geschrieben und können in einem Tabellenkalkulationsprogramm weiterverarbeitet werden, z. B. für Diagramme;
Bewertungsrelevanzreduktion: Näheres hierzu unter.

Was kann AquaPGN?

Die Bearbeitung von PGN-Dateien, die mit Aquarium (© 2008-2018 Convekta Ltd.) generiert wurden. Sie wird mit Klick auf die Schaltfläche "Start" in der AquaPGN-GUI eingeleitet. Im Einzelnen (für Ungeduldige: das Beste kommt ab Ziffer 11)):

1) Ersetzung von Inline-Kommandos:

Es eliminiert aus Aquarium-PGN-Dateien Inline-Kommandos, die mit der Zeichenfolge "{[%t" eingeleitet und mit einem 4-stelligen Baustein fortgesetzt werden:


2) Ersetzung von NAG-Bausteinen:

Es ersetzt NAG-Bausteine, die mit dem "$"-Zeichen eingeleitet werden und in einer gesonderten Datei AquaPGN.nag mitgeliefert werden. Die darin enthaltenen Bausteine entsprechen nur teilweise dem offiziellen Standard (sofern es den überhaupt gibt) und sollten nur als Vorschlag verstanden werden. Sonderzeichen, die in Fonts nach dem Zeichen mit der Nummer 255 (dezimal) auftreten, sollten nur verwendet werden, wenn diese vom Font AqChessUnicode unterstützt werden. Am Rande noch ein Tipp: Sofern der geneigte Leser Unicode-Schachsonderzeichen, zum Beispiel Stellungsbewertungssymbole, zu verwenden trachtet, ihrer indes nicht habhaft werden sollte, könnte der Link auf den AqChessUnicode-Font hilfreich sein. Dieser Font liegt übrigens auch der Schach-GUI Aquarium bei.

3) Ersetzung von Figuren-Bausteinen:

Wenn in einem Kommentar nach einem Leerzeichen ein "w" für "weiße" oder ein "s" für "schwarze" eingegeben wird, gefolgt fakultativ, also nicht zwingend, von einem "n", "r" oder "m", wiederum gefolgt (diesmal schon zwingend) von einem "K", "D", "T" (wiederum fakultativ gefolgt von einem weiteren "T", also "TT" speziell für "Türme"), "L", "S" oder "B" für die betreffenden Figuren, werden diese Bausteine durch die genannten Wörter ersetzt. Beispiele: "der wKsflügel", "die snTT". Wohlgemerkt bedarf es dazu keines vorangestellten "$"-Zeichens wie bei NAG-Ausdrücken.

4) Ersetzung von Mattankündigungen:

In Kommentaren wird aus einem

5) Einfügung von Nullzügen per "Kommentar":

Aquarium tut sich schwer mit der Einfügung von Nullzügen per "Z0", möglich ist dies nur am Ende einer Zugfolge. AquaPGN schafft Abhilfe. 2 Fälle der Einfügung von Nullzug-Varianten per "Kommentar" gilt es zu unterscheiden:

Einfügung einer Variante mit Wiederholung des vorangegangenen, also "kommentierten" Zuges mit anschließendem Nullzug im Sinne von "mit der Idee ..." (vgl. hierzu den NAG-Baustein $140) bzw. "mit der Drohung ...": "\(\+--.*?\)" - um mit einem regulären Ausdruck zu sprechen. Man beginnt mit "(+--" und setzt dann wahlweise mit einem Zug ohne Zugnummer (z.B. "(+--e4)") oder einer Zugfolge (z.B. "(+--e4 Sc6 d4)") fort oder lässt es bleiben ("(+--)"). Am Ende steht also die ")". Die beiden "--" repräsentieren den Nullzug.

Einfügung einer Variante ohne Wiederholung des vorangegangenen, also "kommentierten" Zuges mit anschließendem Nullzug im Sinne von "gerichtet gegen ..." (vgl. hierzu den NAG-Baustein $141): "\(--.*?\)" - um nun ein letztes Mal mit einem regulären Ausdruck zu sprechen. Man beginnt mit "(--" und setzt dann wahlweise mit einem Zug oder einer Zugfolge fort oder lässt es bleiben. Am Ende steht wieder die ")".

Bei der Formulierung der Varianten kann man ohne Bedenken die deutschen Figurenanfangsbuchstaben "D", "T", "L" und "S" verwenden. Überdies ist es möglich, das Ganze in einen Zugkommentar zu stecken (oder gar mit einem NAG-Baustein zu kombinieren), z.B. "mit der Idee(+--Lf4)" oder "$140(+--Lf4)" oder "gerichtet gegen(--Lf4)" oder "$141(--Lf4)".

6) Umgruppierung von Kommentaren vor Zügen:

AquaPGN ordnet diese Kommentare dort ein, wo sie hingehören, nämlich vor den Zügen, und löscht nebenbei den "{[%t bLon...}"-Baustein.

7) Umgruppierung von Partiende-Kommentaren:

AquaPGN ordnet solche Kommentare wiederum dort ein, wo sie hingehören, nämlich am Partieende, und löscht nebenbei den "{[%t Long...}"-Baustein.

8) Elimination der Zeichenfolge "^13 ^10":

Aquarium verwendet zur Bildung von Absätzen in Kommentaren die Zeichenfolgen "^13 ^10". Dummerweise eliminiert z.B. das Programm pgn4web diese Zeichenfolgen nicht, von ihrer korrekten Verwandlung in Absätze ganz zu schweigen. Sie beleidigen daher das Auge des Betrachters in dieser unverändert kryptischen Form. AquaPGN macht kurzen Prozess und eliminiert diese Zeichenfolgen ein für allemal.

9) Umwandlung der Zeichendarstellung von Nullzügen:

AquaPGN wandelt Nullzüge, die in Aquarium-PGN-Dateien durch "Z0" repräsentiert werden in "--" um, ein Format, das verwendet wird unter anderem vom sehr zu empfehlenden und kostenlosen Schachdatenbankprogramm Scid vs. PC, vom sehr zu empfehlenden und kostenlosen Internet-PGN-Viewer pgn4web und anscheinend vom weniger zu empfehlenden, da nicht so kostenlosen Chessbase.

Warnung:

Die 4 zuletzt genannten Korrekturen sind in der AquaPGN-GUI mit blauer Farbe gekennzeichnet, denn sie führen zu Irritationen beim Betrachten solchermaßen geänderter PGN-Dateien in Aquarium. Bei Abänderung der Nullzüge versagt Aquarium sogar die Darstellung der PGN-Datei ab dem Auftreten des ersten Nullzuges. Sie sollten also nur angewandt werden für Dateien, die außerhalb Aquariums verwendet werden.

10) Ersetzung von Kommentator-Bewertungen:

AquaPGN ersetzt Anwender-Bewertungen ("{[%t Val] …}") in der Weise, dass die in PGN-Dateien zu findenden kryptischen Zeichen, die nur innerhalb Aquariums als Zahlen leserlich sind, durch nachvollziehbare Werte im Zahlenformat ersetzt werden (vgl. die Diskussion im Rybka-Forum). AquaPGN kann dabei insgesamt 6 verschiedene Bausteine, die in der betreffenden GUI-Zeile neben dem eigentlichen Text Verwendung finden können, umwandeln:

#KBwt# - die Bewertung, wie sie auch und nur in Aquarium zu sehen ist;
#KBwtvb# - eine Bewertungsspanne ("Bewertung von" – "Bewertung bis") vom Mittelwert zwischen vorherigem und aktuellem Wert bis zum Mittelwert zwischen aktuellem und nachfolgendem Wert, also zum Beispiel „-0,02 - 0,02“ anstatt „0,00“; Grund: in Aquarium lassen sich keine Zwischenwerte eingeben;
#SbsA# - Stellungsbewertungssymbol in ASCII;
#SbsU# - Stellungsbewertungssymbol in Unicode – könnte in einigen Schachprogrammen zu unleserlichen Zeichen führen;
#pPrW# - probabilistisches Partieresultat von 0 % bis 100 % ungeachtet der Zugfarbe immer aus der Sicht von Weiß;
#pPrS# - probabilistisches Partieresultat von 0 % bis 100 % für Weiß und (jeweils bei gleicher Bewertung) von 100 % bis 0 % für Schwarz (empfehlenswert!).

Man könnte diese AquaPGN-Funktion also dazu missbrauchen, eine Partie automatisch mit Stellungsbewertungssymbolen und probabilistischen Partieresultaten zu kommentieren, indem man diese nicht erst mühevoll ermittelt und dann in die Annotation niederschreibt, sondern einfach nur die Kommentator-Bewertung verwendet und den Rest AquaPGN erledigen lässt.

Die Umwandlung der #pPrS#-Bausteine steht vor der schwierigen Aufgabe, programmtechnisch zu ermitteln, ob es sich um einen Weiß- oder Schwarzzug handelt, selbst wenn vor dem eigentlichen Zug keine Zugnummer mit 1 oder 3 Punkten steht. Sollte dies im Einzelfall nicht ordentlich gelingen (oh Schande!), müsste auf den #pPrW#-Baustein zurückgegriffen werden.

11) Bearbeitung und Auswertung von Engine-Varianten bzw. -Bewertungen:

AquaPGN verwendet Engine-Varianten bzw. -Bewertungen, die von Aquarium bei laufender Engine-Analyse [per Taste "Einfügen" (Singlevariantenmodus) oder in der Menügruppe "Analyse"-"Einfügen" oder mit der Maus nach Rechts-Klick in das Analyse-Fenster und Klick auf "Varianten einfügen" (Singlevariantenmodus) oder "Alle Varianten einfügen" (Multivariantenmodus)] in die Notation eingefügt werden. Diese Engine-Bewertungen können wahlweise für die automatische Kommentierung von Zügen mit diversen Daten oder mit "!!", "!", "!?", "?!", "?", und "??" verwendet, abgeändert, umgruppiert oder gelöscht werden. Und die Varianten können zwecks besserer Übersichtauf eine bestimmbare Zügeanzahl reduziert werden.

Probleme der Engine-Varianten bzw. -Bewertungen Aquariums:

Die Stellungsbewertungen inklusive Angaben über Knotenanzahl, Analysetiefe und -zeit, Enginename und Referenzzug (Zug vor Variantenbeginn) finden sich am Ende der Variante anstatt an ihrem Beginn. Zu allem Überdruss müssen sich die Varianten zu einem Partiezug (inklusive ihrer Bewertung!) keineswegs diesem anschließen, sie können auch bei irgendeinem späterer Partiezug auftauchen, wo sie fehl am Platze sind. Deshalb kann AquaPGN diese Bewertungen und weitere Daten an den Variantenbeginn nach dem richtigen Partiezug umgruppieren. Die Angaben am Variantenende können belassen, geändert oder gelöscht werden.

Diese Daten sind - je nach Geschmack - zum Teil überflüssig (die Analysezeit erscheint sogar doppelt) und aufgeteilt in "Bewertung" und "Text danach", gegebenenfalls mit unterschiedlicher Schreibweise. AquaPGN macht daraus einheitliche Kommentare.

Die betreffenden Bausteine neben dem eigentlichen individuell wählbaren Text für Variantenanfang wie -ende lauten:


Tipp am Rande: Im Text vor (!) den eigentlichen Bausteinen, die innerhalb der „##“-Zeichen stehen, sollte man unter Umständen (zum Beispiel in „Feh-r-D“) das normale „-“-Zeichen vermeiden und dieses durch das Unicode-Zeichen „‑“ (geschützter bzw. nicht umbrechender Bindestrich: hexadezimal 2011 bzw. hexadezimal UTF-8 Bytes E2 80 91 bzw. dezimal 8209) ersetzen. Andernfalls bricht Aquarium solchen Text in der Notation rechtsseitig gnadenlos um. Falls man jedoch gedenkt, die PGN-Dateien in Lucas Chess, Kvetka oder Shredder Classic 4 zu laden, sollte man davon mangels Unicode-Zeichen-Erkennung in diesen Programmen Abstand nehmen; man könnte dann etwa den Unterstrich "_" gebrauchen.

Die Varianten sind mitunter ellenlang. AquaPGN kann die Varianten daher auf eine Höchstanzahl von Variantenzüge kürzen, ohne allerdings anderen Varianten, die sich den zu kürzenden Varianten anschließen oder in sie einklinken, ins Gehege zu geraten.

Und Aquarium hat die dumme Angewohnheit, Varianten am Partieende für den Anwender ungewollt als Partiezüge (nicht Variantenzüge) darzustellen. Auch das kann AquaPGN mit der Funktion "Engine-Züge am Partieende → Variante" (hoffentlich) korrigieren. Dies setzt allerdings voraus, dass AquaPGN das Partieende korrekt identifizieren kann. Ob das gelingt hängt vom werten Anwender ab. Offenbar (vorbehaltlich weiterer Tests) kreiert Aquarium solche geisterhaften Partiezüge am Partieende, wenn eine Variante eingefügt wird, die in ihrem Verlauf das Partieende inklusive den (bisher) letzten Partiezug enthält, aber darüber hinaus auch Folgezüge. Und erst recht, wenn der Anwender oder stellvertretend für ihn AquaPGN nach dem letzten Partiezug eine oder mehrere neue Engine-Bewertungen einfügt, da dann natürlich ein weiterer Partiezug benötigt wird, mit dem diese Bewertungen verknüpft sind. Also muss im Fall der Nutzung der Programmfunktion "Engine-Züge am Partieende → Variante" zur Vermeidung von Kümmernissen vor Beginn der automatischen Partieanalyse oder vor Einfügung der letzten Engine-Bewertung(en) der Cursor im Notationsfenster vor (!) dem letzten Partiezug stehen. Steht er hingegen am Ende des letzten Partiezuges, wird zumindest der erste neu berechnete Variantenzug als letzter Partiezug hinzugefügt. Die Funktion "Engine-Züge am Partieende → Variante" wird diesen neuen Partiezug nicht antasten, sondern nur die Folgezüge in eine Variante integrieren.

Sollte es bei Anwendung der Funktion "Engine-Züge am Partieende → Variante" zu Fehlermeldungen kommen, muss das Programm wohl oder übel nochmals ohne diese Funktion gestartet werden.

12) Automatische Kommentierung:

Der letzte Kritikpunkt ist die unzureichende Darstellung der Bewertung durch Aquarium. Unmittelbar nach Partie- und Variantenzügen (die jeweils ersten Züge von Enginevarianten) sollten deren Bewertungen und Schlussfolgerungen daraus klar erkennbar sein. Gleiches gilt für die Differenzen zwischen Varianten-Bewertungen im Multivariantenmodus. Deshalb bietet das Programm in seiner GUI eine Kommentierung per Zugbewertungssymbole ("!!", "!", "!?", "?!", "?", und "??") und eine umfangreiche Detailkommentierung an.

Falls nur Varianten im Singlevariantenmodus vorliegen, funktionieren diese Kommentarfunktionen nur sehr eingeschränkt: Allein im Rahmen der Hauptzüge ist ein Patzer-Check möglich, es kann also die Bewertung der von der Engine stammenden Variante (die als einzige natürlich auch die beste ist) an der Stelle eines Partiezuges mit derjenigen an der Stelle des nachfolgenden Partiezuges verglichen und im Falle eines Bewertungsabfalles, der dann dem vorhergehenden (und nicht mit dem besten Variantenzug identischen) Partiezug geschuldet ist, dieser Partiezug per "?!", "?", und "??" verurteilt und mit einer ergänzenden Detailkommentierung (siehe unten) versehen werden.

12a) Zugbewertungssymbole:

"!"  - beeindruckender Zug (vgl. NAG $1 in AquaPGN.nag);
"?"  - schwacher Zug (vgl. NAG $2 in AquaPGN.nag);
"!!" - brillanter Zug (vgl. NAG $3 in AquaPGN.nag);
"??" - miserabler Zug (vgl. NAG 4$ in AquaPGN.nag);
"!?" - ansprechender Zug (vgl. NAG $5 in AquaPGN.nag);
"?!" - fragwürdiger Zug (vgl. NAG $6 in AquaPGN.nag).

Diese Art der automatischen Kommentierung durch AquaPGN erfolgt einzig und allein aufgrund der Bewertungen einer Schachengine, die bekanntlich kein Schach-Feuilletonist, sondern ein Rechenknecht ist und somit kein Verständnis für künstlerische Figurenakrobatik hat. Es gilt das Motto: Die Wahrheit liegt in der Hundertstel-Bauerneinheiten-Bewertung!

Für die Kommentierung per "!!", "!", "!?", "?!", "?", und "??" wird die wohl weltweit einzigartige Bewertungsrelevanz-Reduktion verwendet, über die man hier Näheres in Erfahrung bringen kann. Sie reduziert Enginebewertungsdifferenzen per Integralfunktion zu relevanten Bewertungsdifferenzen. 0,00-Bewertungen werden dabei zu 100 % berücksichtigt, Bewertungen von einem speziellen, in die GUI unter "Bewertungsrelevanz-Reduktion - Gewinn-Remis-Balance" einzutragenden Wert (Empfehlung: 0,62) zu 50 % und extreme positive oder negative Bewertungen mit annähernd 0 %.

In der GUI kann neben "Zugbewertungssymbole !! / ! / !? / ?! / ? / ?? :" "Schema: 1/" eine Zahl zur Wahl eines Schemas eingetragen werden. Über den rechtsseitigen Schalter "Informationen" erfolgt Aufklärung über das gewählte Schema nebst Gewinn-Remis-Balance.

Die in der GUI folgenden 4 Informationszeilen zeigen Zugbewertungssymbol-Grenzwerte für eine Bewertung von 0,00 im Fall von 4 verschiedenen Schemata an. Wenn die Gewinn-Remis-Balance modifiziert wurde, können die 4 Informationszeilen über den Schalter "G-R-B – Schema-Aktualisierung" aktualisiert werden.

Nach Anwahl des Schalters "!! / ! / !? / ?! / ? / ?? - Matrix für 2 Engine-Bewertungen von +10 bis -10" werden die relevanten Bewertungsdifferenzen und Zugbewertungssymbole für eine Vielzahl von Engine-Bewertungspaaren angezeigt.

Und wenn man Informationen über spezielle Bewertungen wünschen sollte, weil man beispielsweise während einer Kommentierung per Hand über Variantenbewertungen verfügt, sich aber nicht sicher ist, welches Zugbewertungssymbol man vergeben möchte, kann man sich durch Klick auf den Schalter "komplette Analyse für ein oder zwei spezielle Engine-Bewertungen" das Resultat der Formelauswertungen zeigen lassen.

Beispiel für den Fall einer Gewinn-Remis-Balance von 0,62 und der Eingabe von "1,00" als Bewertung für einen Zug:
Die dann unten angezeigten Grenzwerte für diverse Schemata offenbaren zum Beispiel, dass kein einziges Schema für einen besseren Alternativzug ein "!!" zulässt und nur Schema "1/10" bei einer Alternativzug-Bewertung von mindestens 3,24 ein "!" gewährt. Anders ausgedrückt: Bei einer Bewertung von 1,00 für Weiß, bei der das probabilistische Partieresultat schon, wie gleichzeitig angezeigt wird, 84 % beträgt, kann ein besserer Alternativzug überhaupt nicht so relevant sein, dass er ein "!!" verdient. Für alle anderen Zugbewertungssymbole, insbesondere die negativen, existieren hingegen Grenzwerte, sodass sie verteilt werden können, wenn der Alternativzug nur schlecht genug ist, um den jeweiligen Grenzwert zu erreichen bzw. zu überschreiten.

Probe aufs Exempel: Man teste nach Wahl des Schemas "1/10" für Zugbewertungssymbole mit dem Schalter "komplette Analyse für ein oder zwei spezielle Engine-Bewertungen" die Bewertungspaare 3,23 sowie 1 und wird die Zugbewertungssymbole "!?" und "?!" vorfinden. Soweit korrekt, da ja der Wert 3,24 unterschritten wurde. Neuer Versuch: diesmal 3,24 und 1 – endlich "!" und "?".

Sofern man bei der automatischen Kommentierung nur die Zugbewertungssymbole wünschen und die sonstige Kommentierung nebst Varianten verschmähen sollte, um sich einfach nur einen raschen Überblick über gelungene (nur im Multivariantenmodus!) und missratene Partiezüge zu verschaffen, müssten in der AquaPGN-GUI rechtsseitig die Funktionen "Zugbewertungssymbole !! / ! / !? / ?! / ? / ?? :" sowie "Engine-Varianten und -Bewertungen entfernen" angewählt und "Detailkommentierung" abgewählt werden. Es werden dann halt nur die Partiezüge mit Kurzkommentaren versehen, die Varianten werden ja eliminiert.

12b) Detailkommentierung:

Diese erfolgt grundsätzlich unmittelbar nach dem betreffenden Partie- oder 1. Variantenzug und gegebenenfalls (im Multivariantenmodus) 2. Variantenzug. Sie verwendet neben dem individuell wählbaren Text dazwischen folgende Bausteine:


Zusätzlich beim Partiezug noch folgende Daten über die Optimumquote und Fehlzüge, bei denen Gewinnzüge ignoriert werden:


Hinweis zum Irrelevanzbereich: Sofern ein Zug nicht korrekt ist, die gerundete relevante Bewertungsdifferenz aber gleichwohl 0,00 ist, da die Bewertung des korrekten sowie des fehlerhaften Zuges entweder so weit im negativen oder diese beiden Bewertungen so weit im positiven Bereich liegen, dass die relative Bewertungsdifferenz auf Null zusammenschrumpft, wird dieses „0,00“ bei der Optimumquote (dort wären es „100 %“) und bei den Durchschnittswerten #Opt-Q-D# und #Feh-r-D# ignoriert. Bei den beiden Letzteren insofern, als die Anzahl der Züge als Divisor der Durchschnittsdivision nicht hochgezählt werden. Derartige Werte tragen also nicht bei der Durchschnittsbildung bei. Gründe: suboptimale Züge, die im extrem negativen Bewertungsbereich ihr Unwesen treiben und nur die bevorstehende Niederlage perpetuieren, sollen die Durchschnittswerte nicht anheben. Und Züge, die im extrem positiven Bewertungsbereich den Sieg nicht optimal forcieren, sollen die Durchschnittswerte nicht aufhübschen, auch wenn sie immerhin nicht schwach genug sind, eine negative relevante Bewertungsdifferenz auszulösen. Man denke etwa an den Fall, dass ein auf Gewinn stehender Spieler fortwährend herumlaviert, ohne dem Gegner zügig den Garaus zu machen.

12c) Stellungsbewertungssymbole:

Diese werden im Rahmen der Detailkommentierung wahlweise mit folgenden Bausteinen automatisch eingefügt:

#SbsA# - Stellungsbewertungssymbol in ASCII;
#SbsU# - Stellungsbewertungssymbol in Unicode.

Im ASCII-Modus werden sie wie folgt ausgegeben:

"=" - Ausgleich / Remis / minimaler Vorteil für Weiß oder Schwarz
(vgl. NAG $10 bis $13 in AquaPGN.nag);
"+/=" - Weiß hat leichten Vorteil (vgl. NAG $14 in AquaPGN.nag);
"-/=" - Schwarz hat leichten Vorteil (vgl. NAG $15 in AquaPGN.nag);
"+/-" - Weiß hat moderaten Vorteil (vgl. NAG $16 in AquaPGN.nag);
"-/+" - Schwarz hat moderaten Vorteil (vgl. NAG $17 in AquaPGN.nag);
"+-" - Weiß hat klaren Vorteil (vgl. NAG $18 in AquaPGN.nag);
"-+" - Schwarz hat klaren Vorteil (vgl. NAG $18 in AquaPGN.nag);
"++-" - Weiß hat extremen Vorteil (vgl. NAG $19 in AquaPGN.nag);
"--+" - Schwarz hat extremen Vorteil (vgl. NAG $20 in AquaPGN.nag).

Im Unicode-Modus werden anstatt "+/=", "-/=", "+/-" und "-/+" die in Notationen üblichen Unicode-Sonderzeichen als ein einzelnes Zeichen ausgegeben, die in Aquarium korrekt angezeigt werden, da dort der Font AqChessUnicode.ttf verwendet wird. Auch die Clipboard-Ausgabe greift automatisch auf diese Sonderzeichen zurück, für ihre korrekte Darstellung ist also wieder die Installation dieses Fonts erforderlich.

Informationen über die Stellungsbewertungssymbole werden in AquaPGN nach Anwahl des Schalters "Informationen" rechts in der Zeile "Stellungsbewertungssymbole" erteilt. Die Resultate hängen wiederum ab von der eingestellten Gewinn-Remis-Balance sowie dem gewählten Stellungsbewertungsschema.

12d) Probabilistische Partieresultate:

Auch diese werden im Rahmen der Detailkommentierung wahlweise mit folgenden Bausteinen automatisch eingefügt:

#pPrW# - probabilistisches Partieresultat von 0 % bis 100 % ungeachtet der Zugfarbe immer aus der Sicht von Weiß;
#pPrS# - probabilistisches Partieresultat von 0 % bis 100 % für Weiß und (jeweils bei gleicher Bewertung) von 100 % bis 0 % für Schwarz (empfehlenswert!).

Im Clipboard-Modus wird nur die 2. Variante verwendet. Diese Werte finden dann für das Diagramm "Dia-p-Pr" in der Datei AquaPGN.ods Verwendung.

Die errechneten Werte resultieren wiederum aus der eingestellten Gewinn-Remis-Balance sowie dem gewählten Stellungsbewertungsschema.

12e) Clipboard-Modus:

Der Schalter "Partiedaten → Clipboard" ermöglicht die Transposition einer Vielzahl von Daten einer PGN-Datei (also möglicherweise sogar mehrerer Partien) sowie zusätzlich errechneter Daten, wie sie oben im Zusammenhang mit den Bausteinen beschrieben wurden, in das Clipboard. Von dort können sie in andere Programme per Strg-v übertragen werden können. Insbesondere bietet sich an ein Tabellenkalkulationsprogramm, das diese Daten für Diagramme auswertet. Ein solches Tabellendokument namens AquaPGN.ods, das mit LibreOffice“, Version 5.4, als ods-Datei erstellt wurde, findet sich im Programmpaket.

Um dort die Clipboard-Daten einzugeben,
wähle man unmittelbar nach Beendigung von AquaPGN (also nach Füllung des Clipboards) die 1.  Tabelle "Daten",
lösche erforderlichenfalls alle Zeilen im Datenblatt ab der gelbfarbigen Zelle A5,
selektiere die gelbe Zelle A5 und
gebe dann Strg-v ein.

Im daraufhin erscheinenden Dialog könnte man wählen:
Zeichensatz: Unicode;
Sprache: Deutschland;
Ab Zeile: 1;
Getrennt;
Tabulator;
Erweiterte Zahlenerkennung;
Return/Enter;
Voilà.

Etwas versteckt finden sich rechts neben der letzten Datenzeile einer Partie die in der PGN-Datei vorhandenen Partie-Tags sowie diverse Auswertungen. Besonders hervorgehoben sei im Fall des Vorhandenseins von Elo-Werten beider Spieler die Berechnung der Erwartungswerte (zwischen 0 und 1) sowie überdies im Fall des Vorhandenseins eines aussagekräftigen Spielresultats die Berechnung der neuen Elo-Werte. Zugrunde gelegt wurden dabei die Formeln von Jeff Sonas, "The Sonas Rating Formula – Better than Elo?"

Die Diagramme in den 6 Diagramm-Tabellen werden sogar automatisch anhand der in der 1. Tabelle einzufügenden Clipboard-Daten erstellt, ohne dass auf ein Makro zurückgegriffen werden musste. Diese Automatik funktioniert entweder nur für die jeweils 1. Partie der PGN-Datei oder aber für einen vom Anwender zu wählenden Zugbereich (vgl. hierzu die Tabelle "Dia-Daten", Zeile 1). Die Diagramm-Tabellen sind also intelligent genug, zu erkennen, mit welcher Datenreihe die 1. Partie endet. Wenn aufgrund hoher Zahlenwerte die Diagramme unübersichtlich werden sollten, kann mit der Wahl eines Zugbereichs mit niedrigeren Zahlenwerten die Diagrammdarstellung auf eben diesen Bereich beschränkt werden.

In der Tabelle "Konsistenz" wird geprüft, ob diverse von AquaPGN gelieferten Clipboard-Daten auch wirklich der intendierten Logik des Programmcodes entsprechen. Die von AquaPGN übernommenen (grün) und in der Tabelle berechneten (gelb) Daten befinden sich in nebeneinander liegenden Spalten. Sollte sich da ein Widerspruch auftun, werden die berechneten gelbfarbigen Zellen rot gefärbt. In LibreOffice Calc können per Extras – Detektiv – Spur zum Vorgänger / Nachfolger die Zellreferenzen der gelben Zellen anschaulich dargestellt werden.

Diese Tabelle "Konsistenz" ist für den normalen Anwender wenig hilfreich, verbraucht jedoch eine Menge an Speicherplatz. Sie kann bei Nichtgefallen gelöscht werden.

Wird in der AquaPGN-GUI nur der Clipboard-Modus – eventuell in Verbindung mit dem Monitor-Modus (Ziffer 12f) – gewählt, wird keine modifizierte PGN-Datei gespeichert.

12f) Monitor-Modus:

Der Schalter "Partiedaten → Monitor" bewirkt die Ausgabe der unter Ziffer 12e) angesprochenen Clipboard-Daten auf dem Bildschirm zuzüglich PGN-Partiekopf, PGN-Tags der PGN-Datei sofern vorhanden, diverse Partieauswertungen sowie Diagramme mit den probabilistischen Partieresultaten für jede einzelne Partie. Aufgeführt werden nur diejenigen Partiezüge, für die in der geladenen PGN-Datei von Aquarium eingetragene Enginebewertungen zu finden sind.

Das Fenster kann mit den Pfeiltasten nach unten und oben gescrollt werden. Welcher Effekt auf das Fenster mittels Kombinationen von Umschalt-/Steuerungstaste mit Pos1-/Ende oder mit Bild-auf-/Bild-ab-Taste erzielt wird, mag der Anwender selbst in Erfahrung bringen. Dieser Komfort muss allerdings mit einem Flackern beim Fensteraufbau erkauft werden.

Die Züge werden entsprechend der Zugbewertungssymbole mit Farben gekennzeichnet. Liegt keines vor, bleibt es bei der Grundfarbe. In der AquaPGN-GUI lassen sich die Grundfarbe und die 6 Farben für die 6 Zugbewertungssymbole mit 6-stelligen Hexadezimal-Ziffern (0-9, A-F, a-f) definieren. Man kann auch ein "0x" (dann sind es insgesamt 8 Stellen) oder ein "#" (dann sind es insgesamt 7 Stellen) voranstellen. AquaPGN sucht sich schon das Passende heraus. Und falls was schiefgeht, bietet AquaPGN eine komfortable Farbauswahl-GUI an. Und wenn auch das nicht fruchtet, wird auf die voreingestellten Farben zurückgegriffen.

Die in AquaPGN voreingestellten und vom Anwender modifizierbaren Farben sind

#D2E1EC (Grundfarbe)
#00FF84 (!!)
#80FFC1 (!)
#B3FFDA (!?)
#FFB3FF (?!)
#FF80FF (?)
#FF4DFF (??).

Dieselben Farben werden auch von den Daten-Tabelle in AquaPGN.ods verwendet. Im Internet findet man zum Beispiel unter eine komfortable Farbauswahl mit vorangestelltem "#".

Auch im Monitor-Modus werden die oben im Clipboard-Kapitel erwähnten Elo-Auswertungen angezeigt, sofern die PGN-Datei entsprechende Daten hergibt.

Ausgeschaltet wird das Fenster mit den Zuginformationen auf die übliche Weise, also insbesondere per Alt-F4-Kombination, übrigens auch per „Escape“-Taste.

Wird in der AquaPGN-GUI nur der Monitor-Modus – eventuell in Verbindung mit dem Clipboard-Modus (Ziffer 12e) – gewählt, wird keine modifizierte PGN-Datei gespeichert.

13) Automatische Partieanalyse per Fernsteuerung von Aquarium:

Aquarium verfügt über eine "Partieanalyse" und eine Analyse "Grobe Fehler". Wenn diese nicht zusagen oder wenn sie (ausweislich eigener leidvoller Erfahrung) in bestimmten Partiephasen nicht so recht gelingen sollten (vgl. die Diskussion im Rybka-Forum), können die zu untersuchenden Partiezüge innerhalb von Aquarium wahlweise im Single- oder im Multivariantenmodus mit Engine-Bewertungen versehen werden (um dann anschließend die automatische Kommentarfunktion von AquaPGN zu starten).

Wem das zu mühsam erscheint, mag einen Blick auf die GUI-Sektion "Aquarium Partieanalyse" werfen. Damit lässt sich die Hinzufügung der Engine-Bewertungen in Aquarium per Fernsteuerung von Aquarium aus AquaPGN heraus automatisieren. Wer dies wagen sollte, sollte sich jedoch im eigenen Interesse die Hinweise zur Vorbereitung, die nach dem Start dieser Funktion erscheinen, genau zu Gemüte führen und beachten. Immerhin schließt der Verfasser jegliche Haftung für etwaige Schäden aufgrund von Fehlfunktionen von AquaPGN und insbesondere aufgrund von Fehlfunktionen dieses speziellen Programmfeatures aus (vgl. die beigefügte Datei "COPYING"). Mystizistisch ausgedrückt: Nach Start dieser Programmfunktion liegt der Computer des Anwenders in der Hand Gottes! Für schreckhafte Gemüter ein Vorschlag zur Güte: Bescheiden die Partieanalyse mit lediglich einem Halbzug beginnen und anschließend prüfen, was so alles abgestürzt ist …

Einstellen lassen sich zum einen die Analysezeit in Sekunden, die jedoch bei Wahl der Funktion "Varianteneinfügung erst nach nächster Variantenberechnung" deutlich verlängert werden kann. Damit wird Aquarium zweckmäßigerweise die Möglichkeit eröffnet, erst die laufende Variantenberechnung abzuschließen, bevor sie in die Notation eingefügt wird. Dieses Feature kann jedoch bei Mattbewertungen den Dienst versagen. Stockfish zum Beispiel kann bei einer maximalen Suchtiefe von "d127" ein Matt ankündigen und dann Feierabend machen. Dann stockt auch die Einfügung der Enginebewertung. Deshalb wurde in AquaPGN eine Notbremse eingebaut: Es wird maximal die dreifache normale Bedenkzeit auf eine Reaktion der Engine abgewartet. Tut sich bis dahin nichts, wird die momentan aktuelle Bewertung in die Notation eingefügt.

Bei der Wahl der "Halbzüge ab Ende des Analysebereichs" ist zu beachten, dass die Partiezüge von hinten nach vorne abgearbeitet werden. Wenn also die eingegebene Anzahl von Halbzügen kleiner als die Anzahl aller Partiehalbzüge ist und die Analyse am Partieende begann, bleiben Eröffnungszüge unbewertet.

Mit Single- bzw. Multivariantenmodus werden (bei korrekter Vorbereitung von Aquarium) natürlich entweder nur eine Variante oder aber mehrere Varianten pro Halbzug eingetragen, wobei aber derzeit bei mehr als 2 Varianten nur die beiden besten für die Kommentarfunktion von AquaPGN verwertet werden.

Und infolge irgendwelcher Komplikationen mit einer Aquarium-programminternen Identifikationsnummer der Notationsfenster-Titelleiste, deren Wert erfahrungsgemäß entweder 1 oder 2 beträgt, musste eine Auswahlliste eingefügt werden, mit der eine "INSTANCE1" (Wert: 1), "INSTANCE2" (Wert: 2) oder "INSTANCE3" (Wert: 3) zwecks Gelingens der ganzen Aktion gewählt werden kann. Es muss leider dem User vorbehalten bleiben, die richtige Einstellung auf seinem System zu eruieren.

Hierzu kann man sich des Tools Au3Info.exe bedienen, das sich im downloadbaren Programmpaket von "AutoIt" befindet. Ferner kann es von der Webseite einzeln heruntergeladen werden. Nach dem Start muss das "Finder Tool" auf die Titelleiste mit dem Text "Notation" des Notationsfensters von Aquarium gezogen werden. Unter "Basic Control Info" lässt sich dann folgendes ablesen:

Class TDockHeader
Instance: x

wobei das "x" für die gesuchte Instanz steht. Achtung: Erfahrungsgemäß kann sich diese Instanznummer aus unerfindlichen Gründen ändern.

Voreingestellt ist "INSTANCE1". Bei einer Änderung genügt aber nicht nur die Wahl von "INSTANCE2" oder "INSTANCE3", vielmehr muss diese auch selektiert werden, sodass sie blau unterlegt ist.

AquaPGN führt Mausklicks im Enginefenster von Aquarium durch. Der Mauszeiger ist dabei im Fenster zentriert. Eine etwaige Windows-Taskleiste auf der linken oder oberen Seite wird vom Programm berücksichtigt.

Während des Ablaufs der Bedenkzeit der Schachengine kann zu einem anderen Fenster bzw. Programm gewechselt werden. Wenn dann von Aquarium eine Enginebewertung einzufügen ist, wechselt AquaPGN im Hintergrund hoffentlich automatisch zu Aquarium und nach getaner Arbeit zurück zum zuvor verwendeten Fenster bzw. Programm.

14) Sonstiges in der AquaPGN-GUI:

Rechts neben der Schaltfläche „Start“ findet sich eine Auswahlliste für folgende 5 Schachprogramme:

Aquarium,
Arena,
Kvetka,
Lucas Chess,
pgn4web,
Scid vs. PC,
Shredder Classic 4.

An der zu speichernden neuen PGN-Datei werden einige Modifikationen vorgenommen, sofern Arena, Kvetka, Lucas Chess, Scid vs. PC oder Shredder Classic 4 selektiert werden. Die Einstellungen für Aquarium und pgn4web sind identisch. Für Arena, Lucas Chess, Scid vs. PC und Shredder Classic 4 müssen die Klammern um Zugbewertungssymbole entfernt werden. Zusätzlich müssen für Arena, Scid vs. PC und Shredder Classic 4 nebeneinander stehende Kommentare jeweils zu einem Kommentar zusammengefasst werden, andernfalls wird nur der erste gezeigt. Arena. Kvetka, Lucas Chess und Shredder Classic 4 können keine Unicode-Zeichen darstellen, somit auch nicht korrekt die hinter den Kommentar-Bausteinen #SbsU#, #Z-a-F# und #Z-z-F# (Figurinen-Darstellung) stehenden Informationen wegen der dort verwendeten Unicode-Zeichen. Alternativ-Bausteine sind ja vorhanden. Gleiches gilt natürlich für User-Textbausteine, die solche Zeichen enthalten. Diese können einfach durch selbstgewählte alternative Text-Bausteine ersetzt werden. Es wurde davon abgesehen, hier automatisch Korrekturen vorzunehmen, neuere Programmversionen könnten ja den Fehler beheben.

Alle Einstellungen, die in der Programm-GUI zu sehen sind, lassen sich individuell als Parameter laden und speichern. Was ein Klick auf "links", "alles auswählen", "rechts", "links", "alles leeren", "rechts" bewirkt, mag der Anwender selbst herausfinden. Übrigens wird nicht jeder Klick auf x-beliebige Checkboxen mit der erwarteten Reaktion belohnt. Umgekehrt wird mitunter eine Checkbox initialisiert, obwohl sie gar nicht angetastet wurde. Das Programm weiß in einigen Fällen durchaus kontraproduktive Orders zu vermeiden.

Sollte die Größe der Programm-GUI die Bildschirmauflösung überschreiten, muss nicht gleich Letztere erhöht werden. Ab Windows 7 soll es eine Einstellung - das Ausschalten von Aero Snap - geben, die beim Versuch, ein Fenster über den Bildschirmrand hinweg zu verschieben, dieses verkleinert. Hmmm. Man hätte dann immerhin auf alle Bereiche der so größenreduzierten GUI Zugriff, wenn man sie denn noch im Einzelnen zu erkennen vermochte. Problemlösung à la Microsoft. Komfortabler ist da schon das im Internet frei erhältliche Tool "AltDrag": Bei gedrückter "Alt"-Taste lassen sich Fenster und damit auch die Programm-GUI ohne Größenveränderung mit der Maus beliebig über den Bildschirmrand hinweg verschieben, wobei der vorhergehende Mausklick an jeder beliebigen Fensterposition erfolgen kann.

15) Schlussbemerkungen:

AquaPGN wurde erstellt mit AutoIt3 (© 1999-2014 Jonathan Bennett & AutoIt Team).

Das Programmpaket enthält:


Die neueste Version von AquaPGN wurde getestet mit Aquarium 2017. Die modifizierten PGN-Dateien wurden zum einen natürlich mit Aquarium selbst getestet, sodann ein wenig mit Arena, Kvetka, Lucas Chess, Scid vs. PC, Shredder Classic 4 und mit dem Internet-PGN-Viewer pgn4web (Version 2.90), der für die Veröffentlichung kommentierter Partien und Studien auf dieser Webseite Verwendung findet. Natürlich lassen sich mit diesem Programm PGN-Dateien auch offline betrachten, wenn man den richtigen Browser wählt (zum Beispiel Firefox, nicht jedoch den ansonsten hervorragenden russischen Yandex).

Keine Software ist fehlerfrei, AquaPGN schon gleich gar nicht, weil auch „Aquarium“ extrem komplex ist. Das Programm macht komplizierte Sachen und man kann sich schließlich als einsamer Einzelprogrammierer vor der Veröffentlichung nicht ewig dem Testen hingeben. In diesem Sinne werden die fehlerfrustrierten Anwender als unfreiwillige Beta-Tester missbraucht und angestiftet, von der Kommentarfunktion regen Gebrauch zu machen, um Gelegenheit zu geben, mit einer neuen Programmversion die schändlichen Fehltritte von AquaPGN auszumerzen (vgl. https://de.wikipedia.org/wiki/Bananenprinzip#Bananenware). Stand 25. März 2018 läuft das Programm aber schon relativ fehlerfrei.

Sofern der Anwender PGN-Dateien kommentieren oder Engine-Bewertungen verändern lässt, Daten in das Clipboard schreiben oder auf dem Monitor ausgeben lässt, wird er unweigerlich mit dem Schneckentempo von AquaPGN konfrontiert werden. Bei mehr als einer Partie pro PGN-Datei geht das Programm sehr schnell in die Knie. AutoIt3 ist eine Interpretersprache und deshalb mitunter quälend langsam, ermöglicht aber andererseits extrem einfallsreiche Anwendungen ohne immensen Arbeitsaufwand. Es ist ein Kompromiss!

Kontakt: mail@konrod.info


png-Icon

Programm AquaPGN - Entwicklungsversion 14.6.2018
ZIP-Datei [1,14 MB]: AquaPGN.zip








 

Finito ♦ Aus die Maus ♦ Schicht im Schacht ♦ Klappe zu - Affe tot

So long ♦ See You Later, Alligator - In A While, Crocodile ♦ Over And Out