Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Lizard 11.0 erobert Spitze der Top15 EAS Rangliste
- - By Stefan Pohl Date 2024-10-03 09:00 Edited 2024-10-03 09:03
Lizard 11.0 hat zum ersten Mal ein Netz aus eigenen self-play Daten bekommen (vorher Lc0-Daten). Das hat den EAS-Score von Lizard (der vorher schon sehr ordentlich war, mit deutlich über 100000 EAS Punkten) nochmals deutlich gesteigert.
Damit hat es zum ersten Mal eine Engine aus den Top15 geschafft, einen höheren EAS-Score als Stockfish zu erzielen (!!!). Und das, obwohl Lizard 11.0 in der UHO-Top15 Rangliste nur auf Platz 14 liegt und nur 37% Erfolgsscore erzielt hat. Also Welten hinter Stockfish. Das ist daher wirklich sehr bemerkenswert.

https://www.sp-cc.de/eas-ratinglist.htm

In der full EAS-Rangliste konnte Lizard 11 auch in die Top10 einziehen (auch hier vor Stockfish 17, allerdings leicht hinter SF 16/16.1), hier liegt aber natürlich Patricia weit, weit vor allen anderen.

https://www.sp-cc.de/files/uho_full_list.txt
Parent - - By Stefan Pohl Date 2024-10-03 11:08 Edited 2024-10-03 11:15
Hier die EAS-Top15 Ratinglist:

                                 bad  avg.win
Rank  EAS-Score  sacs   shorts  draws  moves  Engine/player
-------------------------------------------------------------------
   1    170438  18.88%  22.41%  12.43%   72   Lizard 11.0 avx2 
   2    167925  20.46%  18.71%  09.08%   73   Stockfish 240917 avx2 
   3    165312  21.58%  17.65%  10.16%   73   Stockfish 17 240906 
   4    125393  12.37%  20.93%  14.96%   72   Torch 3 popavx2 
   5    106901  14.08%  18.09%  15.50%   76   Obsidian 13.08 avx2 
   6    102344  15.82%  17.66%  17.12%   75   RubiChess 240817 avx2 
   7     94511  14.55%  16.70%  19.48%   74   KomodoDragon 3.3 avx2 
   8     85280  09.85%  11.97%  15.74%   79   PlentyChess 2.1 avx2 
   9     83020  11.20%  11.79%  20.00%   78   Clover 8.0 avx2 
  10     76785  14.43%  08.89%  17.69%   84   Ethereal 14.38 avx2 
  11     65433  10.38%  10.34%  20.23%   81   Alexandria 7.0 avx2 
  12     59970  12.51%  07.39%  20.94%   86   Titan 1.1 avx2 
  13     58659  10.35%  11.14%  22.20%   80   Caissa 1.20 avx2 
  14     58250  08.72%  09.87%  20.62%   80   Berserk 13 avx2 
  15     48425  11.08%  08.12%  22.61%   87   Motor 0.70 avx2 
  16     41736  07.25%  09.23%  27.93%   80   Viridithas 14.0 avx2 
-------------------------------------------------------------------
*** Average length of all won games:     77 moves


Hier noch die Top14 der full EAS-Ratinglist:

                                 bad  avg.win
Rank  EAS-Score  sacs   shorts  draws  moves  Engine/player
-------------------------------------------------------------------
   1    429481  51.61%  38.03%  05.49%   66   Patricia 3.1 avx2 
   2    384942  52.55%  35.77%  05.19%   69   Patricia 3.0 avx2 
   3    201351  34.75%  22.22%  10.27%   73   Velvet 8.0.0 risky 
   4    197919  31.18%  29.46%  17.09%   71   Revenge 1.0 avx2 
   5    192881  21.25%  26.18%  09.40%   70   Stockfish 16 230630 
   6    190148  21.94%  24.53%  08.88%   70   Stockfish 16.1 240224 
   7    186267  25.24%  24.69%  13.42%   72   Velvet 7.0.0 avx2 
   8    181381  20.24%  25.04%  10.47%   70   Stockfish 15.1 221204 
   9    177416  22.20%  24.19%  10.07%   70   ShashChess 35.3 HiTal 
  10    168196  19.01%  22.58%  12.21%   72   Lizard 11.0 avx2 (NEW)
  11    166889  21.33%  17.84%  09.91%   73   Stockfish 17 240906 
  12    161767  25.14%  21.45%  13.73%   72   Velvet 7.3.0 avx2 
  13    158026  16.26%  26.23%  11.07%   69   Torch 2 popavx2 
  14    151721  15.63%  27.12%  13.45%   69   Torch 1 popavx2 


PS: Falls sich jemand fragt, warum der EAS-Score von Lizard 11.00 in beiden Listen nicht identisch ist: Die 1000 Partien von Lizard 11 gegen die aktuelle Stockfish Dev (240917) werden bei Übertrag der Partien in die Full Ratinglist immer gelöscht, weil die Full Ratinglist sonst fast nur noch aus Stockfish Dev-Versionen bestehen würde - daher sind in der Full Ratinglist nur die offiziellen SF-Release-Versionen drin und pgn-extract filtert die Partien einer jeden Stockfish-Dev beim Reinkopieren in die Full Ratinglist automatisch heraus. Daher werden in der EAS-Top15 Ratinglist alle 15000 Partien von Lizard 11 aus seinem Testrun berücksichtigt, in der full EAS-Ratinglist aber eben "nur" 14000.
Parent - - By Peter Martan Date 2024-10-06 09:19 Edited 2024-10-06 09:25 Upvotes 1
Danke für die Infos und Tests.
Hast du dir eigentlich mal Alexander, den kleinen Bruder von ShashChess angesehen, der eine in vielen Parametern über UCI veränderbare HCE statt NNUE verwendet? Gedacht ist das primär, um für bestimmte menschliche Gegner individualisierbare handicapped- modes zu haben, die Eval- Parameter werden dabei in avatar player files gespeichert.

Ich finde ihn nicht nur als Spielwiese für Parameter- Schrauber lustig, sondern halt auch in Hinblick auf sein Verhältnis von Celo zu EAS, hier ein kleines 500- Partien- Match zwischen 2.0 default und einem wilden Setting von mir, das ich aus einem fertigen namens Alechin gemacht habe (Alew, das w steht für wild )
UHO 2024 900-990cp, single thread 3'+1":

Score of Alexander2.0 vs Alew:       247 - 102 - 151 [0.645]
...      Alexander2.0 playing White: 191 -  20 - 39  [0.842] 250
...      Alexander2.0 playing Black:  56 -  82 - 112 [0.448] 250
...      White vs Black:             273 -  76 - 151 [0.697] 500
Elo difference:  103.7 +/- 26.1, LOS: 100.0 %, DrawRatio: 30.2 %
500 of 500 games finished.


Und mit dem EAS- Tool:

                                 bad  avg.win
Rank  EAS-Score  sacs   shorts  draws  moves  Engine/player
-------------------------------------------------------------------
   1    399800  53.92%  42.16%  07.28%   60   Alew 
   2      1566  01.21%  02.83%  56.29%   74   Alexander2.0 
-------------------------------------------------------------------
*** Average length of all won games:     70 moves
*****************************************************************************
*** 2nd Ratinglist with more stats in percent-values ************************
*****************************************************************************
*** Average length of all won games:  70 moves
*** Calculated limit for short wins giving EAS-points: 55 moves
*****************************************************************************
                       avg.win                                                                                                                          bad  
Rank  EAS-Score   wins  moves   sacs    sacsQ    sacs5+   sacs4    sacs3    sacs2    sacs1    all shorts short35  short40  short45  short50  short55   draws    Engine/player
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
   1    399800      102   60   53.92% =[00.00% + 02.94% + 03.92% + 07.84% + 24.51% + 14.71%]    42.16% = [05.88% + 04.90% + 12.75% + 04.90% + 13.73%]  07.28%   Alew 
   2      1566      247   74   01.21% =[00.00% + 00.00% + 00.00% + 00.00% + 00.00% + 01.21%]    02.83% = [00.00% + 00.00% + 00.00% + 00.81% + 02.02%]  56.29%   Alexander2.0 
****************************************************
*** EAS-tool (C) 2024 Stefan Pohl (www.sp-cc.de) ***
****************************************************

Ich hab' auch schon früher mal, mit der Version 1.3, ein solches Match gegen Patrizia 3.1 laufen lassen, das war aber wohl nicht fair genug, was den Spielstärke- Unterschied angeht, weil dass Patrizia da auch an EAS stark abgehängt wird, ist ja klar, des Celo- Unterschiedes wegen. Ich gehe davon aus, dass das für Lizard wahrscheinlich weniger, aber doch auch gelten wird. Vielleicht probier' ich's noch irgendwann, wenn ich mal wieder viel Hardware- Zeit frei habe.
Parent - - By Stefan Pohl Date 2024-10-06 18:04 Edited 2024-10-06 18:12
Nein, kenne ich gar nicht. Wie stark ist denn die Engine im default, ungefähr reicht...?

Dein Setting hätte ich ganz gerne. Dann könnte ich das mal gegen Engines aus dem unteren Bereich meiner Full Ratinglist testen und dann hätten wir einen realistischen EAS- und Celo-Wert..
Parent - - By Peter Martan Date 2024-10-06 18:46 Edited 2024-10-06 18:54
https://github.com/amchess/Alexander

Die Engine wird in den größeren Listen kaum getestet, weil's ja ein branch von einem branch ist. Andrea Manzo hat sie von ShashChess abgezweigt, als SF dev. die HCE- eval ganz weggelassen hat, Alexander hat dafür keine NNUE- Unterstützung, daher schon default geschätzte 300 Elo schwächer als die Engines, von denen sie abstammt, der primäre Zweck ist ja auch, den handicapped mode den menschlichen Bedürfnissen besser anpassen zu können, in Elo oder über den handicapped avatar player mit vielen manuell über UCI einstellbaren Eval- Parametern.
"Mein" wildes Setting, das ich einfach durch Maximieren aller Werte, die ich da irgendwie für "Aggression" für relevant gehalten habe, ist in dem einen head to head oben noch einmal gute 100 Elo unter default geblieben, wie gezeigt, die UCI- Elo, die einstellbar sind, fangen oben mit 3190 an.
Gegen Patricia ist sich mit 500 Partien ein EAS- Rating ausgegangen, das war damals noch die Version 1.3 von Alexander:

*****************************************************************************
                                 bad  avg.win
Rank  EAS-Score  sacs   shorts  draws  moves  Engine/player
-------------------------------------------------------------------
   1    115676  11.03%  26.24%  19.50%   60   Alexander1.3 
   2     60309  08.97%  00.00%  16.98%   79   Patricia3.1 
-------------------------------------------------------------------
*** Average length of all won games:     65 moves
*** 2nd Ratinglist with more stats in percent-values ************************
*****************************************************************************
*** Average length of all won games:  65 moves
*** Calculated limit for short wins giving EAS-points: 50 moves
*****************************************************************************
                       avg.win                                                                                                                          bad  
Rank  EAS-Score   wins  moves   sacs    sacsQ    sacs5+   sacs4    sacs3    sacs2    sacs1    all shorts short30  short35  short40  short45  short50   draws    Engine/player
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
   1    115676      263   60   11.03% =[00.00% + 00.00% + 00.76% + 01.14% + 02.66% + 06.46%]    26.24% = [01.52% + 01.90% + 04.56% + 06.08% + 12.17%]  19.50%   Alexander1.3 
   2     60309       78   79   08.97% =[00.00% + 00.00% + 00.00% + 00.00% + 02.56% + 06.41%]    00.00% = [00.00% + 00.00% + 00.00% + 00.00% + 00.00%]  16.98%   Patricia3.1 
****************************************************
*** EAS-tool (C) 2024 Stefan Pohl (www.sp-cc.de) ***
****************************************************


Gegen Lizard, wie erwartet, ist der Abstand an Celo zu groß, mit 500 Partien die notwendigen 50 wins zusammenzubringen.
Was das avatar- Setting angeht, hab' ich gerade bei Andrea Manzo angefragt, ob er einverstanden ist, dass ich dir "meines" schicke, vor allem deshalb, weil er vielleicht lieber, wenn du dir schon die Testarbeit machst, ein besser passendes selbst zusammenstellen würde wollen. Momentan hat er natürlich aus bekannten Gründen viel anderes zu tun, ich rechne also nicht mit einer sofortigen Antwort
Parent - By Stefan Pohl Date 2024-10-07 06:00
Alles klar, es eilt ja nicht.
Generell ist aber ein Loss von nur 100 Elo für ein so aggressives Setting ein sehr guter Wert. Bei Patricia haben wir deutlich mehr Spielstärke-Rückgang gemessen. Dort kommt die Aggressivität aber auch aus dem NeuralNetz, Patricia ist deshalb so etwas wie eine "böse KI". Engines mit HCE, die nur durch komische Parameter zum Opfertier werden, kann es anders aussehen.
Parent - - By Stefan Pohl Date 2024-10-07 07:19
Kannst du hier bitte mal ein default Avatar File reinstellen, ich bin leider zu blöd, dieses File zu finden. Daher kann ich nicht selbst damit herumprobieren...
Parent - - By Peter Martan Date 2024-10-07 08:27
Das gibt's nicht zum Runterladen, drum möchte ich ja auf die Erlaubnis von Andrea warten, ob es ihm recht ist, wenn ich das, was ich aus einem Setting gemacht habe, das er mir mal geschickt hat, weitergebe. Vor allem aber auch wegen der Frage, ob die Schrauben, an denen ich gedreht habe und die Größenordnungen überhaupt halbwegs richtig sind.
Mittlerweile hab' ich bei einem anderen Setting einen viele geringeren Elo- Verlust in einem 500- Partien- Match, leider wird die .pgn nicht vom EAS- Tool akzeptiert, ich hab' keine Fehlermeldungen, nicht in der Konsole und nicht im rating.txt, es wird aber einfach nur die default- Engine ausgewertet. Am Namen der .pgn liegt's wohl nicht, die hab' ich schon in match.pgn umbenannt, eher vielleicht der Name der Setting- Engine?

https://drive.google.com/file/d/1Wl1bAeL6Mgy5mVCyKIW5rPkHJ6QOe9E4/view?usp=sharing

Wenn du gerade mal viel Zeit hast...
Inzwischen liest Andrea vielleicht mal meine Skype- Anfrage an ihn.
Parent - - By Stefan Pohl Date 2024-10-07 09:28
Kann ich nicht nachvollziehen. Läuft problemlos durch:

*****************************************************************************
*** Engine Aggressiveness Tool V5.7 Score points Ratinglist
*****************************************************************************
*** Meanwhile, the scoring-system of the EAS-Tool got really complex, so
*** please check out the ReadMe-file, where you find the explanation...
*****************************************************************************
*** Evaluated file: Alex2-Eas1.pgn
*****************************************************************************
                                 bad  avg.win
Rank  EAS-Score  sacs   shorts  draws  moves  Engine/player
-------------------------------------------------------------------
   1     58384  10.40%  07.20%  18.88%   76   Eas.avt 
   2     54872  04.23%  07.04%  18.45%   76   Alexander2.0 
-------------------------------------------------------------------
*** Average length of all won games:     76 moves
Parent - - By Peter Martan Date 2024-10-07 09:43
Ja, sorry, mysteriös, hab' jetzt extra noch einmal mit dem Original- Namen der .pgn probiert, das schaut dann bei mir (wieder) so aus:

*****************************************************************************
*** Engine Aggressiveness Tool V5.7 Score points Ratinglist
*****************************************************************************
*** Meanwhile, the scoring-system of the EAS-Tool got really complex, so
*** please check out the ReadMe-file, where you find the explanation...
*****************************************************************************
*** Evaluated file: Alex2-Eas1.pgn
*****************************************************************************
                                 bad  avg.win
Rank  EAS-Score  sacs   shorts  draws  moves  Engine/player
-------------------------------------------------------------------
   1     54872  04.23%  07.04%  18.45%   76   Alexander2.0 
-------------------------------------------------------------------
*** Average length of all won games:     76 moves

Und was die default- Einstellungen des Avatar- files angeht, leider hab' ich genau die eben nicht, ich hab' meine Settings aus einem anderen gebaut, das mir Andrea Manzo mal geschickt hat und glaube zwar zu wissen, wie die Zahlenwerte sind, die zugrundeliegen, sicher bin ich mir aber nicht, und drum will ich lieber abwarten, bevor ich Blödsinn veröffentliche, sorry for the delay...
Parent - By Stefan Pohl Date 2024-10-07 09:50 Edited 2024-10-07 10:29
Kann ich nichts zu sagen, bei mir geht es.

Ich habe es auf einem Windows 10 und einem Windows 11 PC probiert, klappt auf beiden Betriebssystemen problemlos. Warum auch nicht, die Datei und die Enginenamen sind ja völlig "normal".

Irgendwas stimmt auf deinem PC ganz und gar nicht. Du hattest ja auch schon mit dem IWS-Tool von mir nicht reporduzierbare Aussetzer. Da ist bei dir vermutlich irgendwas in Windows, um Windows oder um Windows herum, defekt. Denn das Auslesen der Enginennamen erfolgt mit batch Befehlen, also MS-DOS. pgn-extract hat damit nix zu tun.
Parent - By Stefan Pohl Date 2024-10-07 09:51
Peter Martan schrieb:


Und was die default- Einstellungen des Avatar- files angeht, leider hab' ich genau die eben nicht, ich hab' meine Settings aus einem anderen gebaut, das mir Andrea Manzo mal geschickt hat und glaube zwar zu wissen, wie die Zahlenwerte sind, die zugrundeliegen, sicher bin ich mir aber nicht, und drum will ich lieber abwarten, bevor ich Blödsinn veröffentliche, sorry for the delay...


Im Default sind alle Zahlen 100, das sieht man ja an der Array-Definition, die zum Tragen kommt, wenn kein File da ist:
Weights[AVATAR_NB] = {{"Material(mg)", "Material(eg)", 100, 100},
                        {"Imbalance(mg)", "Imbalance(eg)", 100, 100},
                        {"PawnStructure(mg)", "PawnStructure(eg)", 100, 100},
                        {"Knight(mg)", "Knight(eg)", 100, 100},
                        {"Bishop(mg)", "Bishop(mg)", 100, 100},
                        {"Rook(mg)", "Rook(eg)", 100, 100},
                        {"Queen(mg)", "Queen(eg)", 100, 100},
                        {"Mobility(mg)", "Mobility(eg)", 100, 100},
                        {"KingSafety(mg)", "KingSafety(eg)", 100, 100},
                        {"Threats(mg)", "Threats(eg)", 100, 100},
                        {"PassedPawns(mg)", "PassedPawns(eg)", 100, 100},
                        {"Space(mg)", "Space(eg)", 100, 100},
                        {"Winnable(mg)", "Winnable(eg)", 100, 100}};
Parent - By Stefan Pohl Date 2024-10-07 09:57
Der avatar Array hat übrigens einen Bug:
  {"Bishop(mg)", "Bishop(mg)", 100, 100},

Diese Zeile setzt 2x Bishop(mg), statt Bishop(mg) und Bishop(eg)
Parent - - By Stefan Pohl Date 2024-10-07 10:02
Habe jetzt mal so ein File erstellt. Aber ob das Datum z.B. korrekt geschrieben ist, das ist die Frage... Komisch finde ich, daß man KingSafety etc. nicht separat für die eigene Seite und die des Gegners einstellen kann. Logisch wäre ja, für ein aggressives Setting, die KingSafety z.B. für den Gegner hoch und für sich selbst niedrig zu stellen. Nur so sind ja Königsangriffe dann auch für die Engine attraktiv.

defaultAvatar
20240710
Material(mg)=100
Material(eg)=100
Imbalance(mg)=100
Imbalance(eg)=100
PawnStructure(mg)=100
PawnStructure(eg)=100
Knight(mg)=100
Knight(eg)=100
Bishop(mg)=100
Bishop(eg)=100
Rook(mg)=100
Rook(eg)=100
Queen(mg)=100
Queen(eg)=100
Mobility(mg)=100
Mobility(eg)=100
KingSafety(mg)=100
KingSafety(eg)=100
Threats(mg)=100
Threats(eg)=100
PassedPawns(mg)=100
PassedPawns(eg)=100
Space(mg)=100
Space(eg)=100
Parent - - By Peter Martan Date 2024-10-07 10:09
Stefan Pohl schrieb:

Aber ob das Datum z.B. korrekt geschrieben ist, das ist die Frage...


Weiß ich eben auch nicht, in meiner ist beides mit #davor und mit Leerzeichen im Format von Namen und Datum, also wahrscheinlich eine Zuweisung zu einem genau so gespeicherten Gegenstück, mach' dir keine unnötige Arbeit mit Tests, so lange ich keine Antwort von Andrea habe. Wie schon geschrieben, ist die .avt- Datei in der Konsole akzeptiert worden von der Engine, aber das sagt ja auch noch nichts.
Parent - - By Stefan Pohl Date 2024-10-07 10:11
Peter Martan schrieb:

Weiß ich eben auch nicht, in meiner ist beides mit #davor und mit Leerzeichen im Format von Namen und Datum, also wahrscheinlich eine Zuweisung zu einem genau so gespeicherten Gegenstück, mach' dir keine unnötige Arbeit mit Tests, so lange ich keine Antwort von Andrea habe. Wie schon geschrieben, ist die .avt- Datei in der Konsole akzeptiert worden von der Engine, aber das sagt ja auch noch nichts.


Teile dem autor mal den Bug in der Array-Wertezuweisung mit. ({"Bishop(mg)", "Bishop(mg)", 100, 100},)
Und frage mal nach, warum es keine Unterscheidung dieser ganzen Werte in "own" und "opponent" gibt, denn so kann man kaum brauchbare settings erstellen.
Parent - - By Peter Martan Date 2024-10-07 10:12 Edited 2024-10-07 10:56
Das vom Bug hab' ich bereits per Skype geschickt, die Frage nach der Seite stelle ich ihm, wenn er sich meldet, momentan ist er offenbar nicht erreichbar.
Edit: Mittlerweile hat Andrea geantwortet, bedankt sich für den Hinweis auf den Tippfehler bei mg und eg, hat's geändert, neue Compiles wird's nicht geben, bis die Arbeit für Santiago abgeschlossen ist.
Dass jeweils nur die eine Seite in den Parametern berücksichtigt ist, stimmt schon und ist Absicht.
Parent - - By Stefan Pohl Date 2024-10-07 10:20 Edited 2024-10-07 10:30
Peter Martan schrieb:

Das vom Bug hab' ich bereits per Skype geschickt, die Frage nach der Seite stelle ich ihm, wenn er sich meldet, momentan ist er offenbar nicht erreichbar.


Sinnvoll wäre einzig die TheKing Methode, also
default 100 (Prozent), aber erlaubte Werte 0-200
und für alle Parameter eine Doppelung in own und opponent.

So, wie es jetzt ist, ist es Murks. Johan de Koning wußte schon, was er tut... Darf man ruhig nachmachen.

Er kann sich das ja auf meiner Website anschauen:
https://www.sp-cc.de/theking-chesscomputer.htm

myp/opp = Pawn, myn/opn = Knight, myb/opb = Bishop, myr/opr = Rook, myq/opq = Queen material values.
mycc/opcc = Space (if only a "cc" parameter exists, mycc and opcc have the same value)
mymob/opmob = Mobility (if only a "mob" parameter exists, mymob and opmob have the same value)
myks/opks = King Safety (if only a "ks" parameter exists, myks and opks have the same value)
mypp/oppp = Pass Pawn (if only a "pp" parameter exists, mypp and oppp have the same value)
mypw/oppw = Pawn Weak (if only a "pw" parameter exists, mypw and oppw have the same value)
cfd = Draw-factor (if it is >0, TheKing tries to avoid draws)
sel = Selectivity
avd = Attacker vs. Defender (this parameter does not exist in TheKing Chesscomputers, so ignore it)
md = Maximal search-depth (this parameter does not exist in TheKing Chesscomputers, so ignore it)
sop = Strength of play (this parameter does not exist in TheKing Chesscomputers, so ignore it)
rnd = Random (using the random function in TheKing Chesscomputers increases the variety of play, but decreases t
Parent - By Peter Martan Date 2024-10-07 10:57 Edited 2024-10-07 11:05
Hab das Posting, auf das du zuletzt geantwortet hast, noch nach deinem editiert. Derartige für den User veränderbare Parameter gab's schon viele für viele Engines, bei Alexander betreffen sie halt die HCE von SF aus der Zeit, als der noch eine hatte.
Und funktioniert haben sie schon, siehe meine EAS- Ergebnisse aus der Zeit, als EAS bei mir noch funktionierte
Parent - - By Stefan Pohl Date 2024-10-07 11:08
Peter Martan schrieb:

Das vom Bug hab' ich bereits per Skype geschickt, die Frage nach der Seite stelle ich ihm, wenn er sich meldet, momentan ist er offenbar nicht erreichbar.
Edit: Mittlerweile hat Andrea geantwortet, bedankt sich für den Hinweis auf den Tippfehler bei mg und eg, hat's geändert, neue Compiles wird's nicht geben, bis die Arbeit für Santiago abgeschlossen ist.
Dass jeweils nur die eine Seite in den Parametern berücksichtigt ist, stimmt schon und ist Absicht.


Was heißt eine Seite? Betreffen die Parameter also nur die eigenen Figuren und deren Stellung (mobility etc)? Dann hieße das ja, die gegnerischen kann man gar nicht einstellen. Das wäre ja sogar noch sinnfreier als, das was ich dachte also, daß diese Parameter beide Seiten gleich "ansprechen"???
Parent - - By Peter Martan Date 2024-10-07 11:09 Edited 2024-10-07 11:50
Versteh' deinen Einwand nicht, die Werte gelten halt immer für die Seite am Zug, also aus der Sicht dieser Farbe, so what? Wenn keine anderen Werte eigens für die Gegenseite da sind, warum sollten sie dann nur für das eigene Material und die eigenen anderen Kriterien gelten und nicht für alles, was am Brett ist? Natürlich kann man's auch anders machen und ich kenne genug solche anderen Beispiele, wie gesagt, mehr als dass man damit an den Verhältnissen für die eigenen und die gegnerischen Kriterien noch einmal doppelt soviel ändern kannst, sehe nicht mehr und nicht weniger "Sinnfreiheit", wie du es nennst.
Andrea hat mir übrigens gerade noch eigens bestätigt, dass die Werte für beide Seiten, die eigene und die gegnerische gelten, jeweils aus der Sicht der Seite am Zug.
Edit, edit, edit: die zwei Zeilen am Anfang der .avt- Datei kann man übrigens weglassen, das sind nur comments.
.avt mit default- values (die man also gar nicht verwenden müsste, weil sie nichts an der Eval ändert) sieht also so aus:

Space(eg)=100
Threats(mg)=100
Queen(eg)=100
Knight(eg)=70
Mobility(mg)=100
Material(eg)=100
Winnable(eg)=100
Bishop(mg)=100
KingSafety(eg)=100
Space(mg)=100
Imbalance(eg)=100
Rook(eg)=100
PawnStructure(eg)=100
Queen(mg)=100
PassedPawns(eg)=100
Knight(mg)=100
Threats(eg)=100
Material(mg)=100
Winnable(mg)=100
Mobility(eg)=100
KingSafety(mg)=100
Rook(mg)=100
Imbalance(mg)=100
PawnStructure(mg)=100
Bishop(eg)=100
PassedPawns(mg)=100
Parent - - By Stefan Pohl Date 2024-10-07 11:36 Edited 2024-10-07 11:43
Naja, weil Angriffe auf den gegnerischen König gerade bei Rochade auf dieselbe Seite nur so machbar sind, Indem man die opposite King Safety hochsetzt und die own King Safety herunter. Und das geht nur, wenn man das auch, wie bei theKing, so auch als 2 separate Parameter anbietet. Was ist daran nicht zu verstehen? Hat ja gute Gründe, warum theKing das so macht. Und dort habe ich mit Settings ja viel Erfahrung.

Auf meiner TheKing Seite kann man ja viele Settings sehen. Da sind oft andere Werte für own und opponent virhanden. Bei den allerältesten Chessmaster Programmen ging das übrigens auch noch nicht. Da gabs auch immer nur eine Zahl für beide Seite. Dort hat man dann aber bald gemerkt, daß das Blödsinn ist und dann wurde es geändert. Und der TheKing Brettcomputer hat natürlich auch own und opponent Zahlen. Sonst kann man keine guten Settings erstellen.
Parent - By Peter Martan Date 2024-10-07 11:46 Edited 2024-10-07 11:53
Stefan Pohl schrieb:

Naja, weil Angriffe auf den gegnerischen König gerade bei Rochade auf dieselbe Seite nur so machbar sind, Indem man die opposite King Safety hochsetzt und die own King Safety herunter. Und das geht nur, wenn man das auch, wie bei theKing, so auch als 2 separate Parameter anbietet. Was ist daran nicht zu verstehen?

Stefan, vor und nach dem King gab's noch viele Engines, die z.B. die King Safety als UCI- Parameter hatten und haben, siehe z.B. auch komodo und Dragon (wenn der mit UseRegularEval spielt) und z.B. bei letzteren Beispielen hast du auch nur einen verstellbaren diesbezüglichen Parameter und natürlich wirkt der infolgedessen dann für die Eval beider Seiten, wie gesagt natürlich auch jeweils aus der Sicht derjenigen am Zug. Beim Contempt, wie er früher war, gab's auch oft beides, einfach oder für jede Seite extra verstellbar, Dragon z.B. hat da den White Contempt.
Und ja, ich kenne Beispiele für viele solche Parameter, die man für die eigene und für die andere Seite extra verstellen kann und oder nur einfach, dass das nicht so oder so sein muss, sondern beides funktioniert, scheint hier nur dir nicht klar oder glaubhaft zu sein.
Parent - - By Stefan Pohl Date 2024-10-07 09:29 Edited 2024-10-07 09:47
Peter Martan schrieb:

Das gibt's nicht zum Runterladen, drum möchte ich ja auf die Erlaubnis von Andrea warten, ob es ihm recht ist, wenn ich das, was ich aus einem Setting gemacht habe, das er mir mal geschickt hat, weitergebe.


Darum gehts doch gar nicht. Ich brauche nur ein Avatar file, wo alle Werte auf default stehen. Mir geht es nur um das interne Format dieser Datei.

so siehts im Programmcode aus:
Weights[AVATAR_NB] = {{"Material(mg)", "Material(eg)", 100, 100},
                        {"Imbalance(mg)", "Imbalance(eg)", 100, 100},
                        {"PawnStructure(mg)", "PawnStructure(eg)", 100, 100},
                        {"Knight(mg)", "Knight(eg)", 100, 100},
                        {"Bishop(mg)", "Bishop(mg)", 100, 100},
                        {"Rook(mg)", "Rook(eg)", 100, 100},
                        {"Queen(mg)", "Queen(eg)", 100, 100},
                        {"Mobility(mg)", "Mobility(eg)", 100, 100},
                        {"KingSafety(mg)", "KingSafety(eg)", 100, 100},
                        {"Threats(mg)", "Threats(eg)", 100, 100},
                        {"PassedPawns(mg)", "PassedPawns(eg)", 100, 100},
                        {"Space(mg)", "Space(eg)", 100, 100},
                        {"Winnable(mg)", "Winnable(eg)", 100, 100}};

//Read weights from Avatar file into a map
    std::string line;
    while (std::getline(file, line))
    {

        size_t delimiterPos;
        if (line.empty() || line[0] == '#' || (delimiterPos = line.find('=')) == std::string::npos)
        {
            continue;  // Ignora righe vuote o commenti
        }

        std::string wName  = line.substr(0, delimiterPos);
        std::string wValue = line.substr(delimiterPos + 1);

        try
        {
            int value = std::stoi(wValue);
            if (value < 0 || value > 100)
                throw;

            weightsProperties[wName] = value;
        } catch (...)
        {
            std::cerr << "Avatar option '" << wName << "' with a non weight value: " << wValue
                      << std::endl;
            exit(EXIT_FAILURE);
        }
    }

so, wie ich das hier lese (aber C++ ist nicht so meins), müßte pro Zeile in diesem Textfile jeweils eine Option gefolgt von einem Leerszeichen und dem Zahlenwert (0-100) aufgeführt sein.
Also z.B:
Imbalance(mg) 100
Imbalance(eg) 90
PawnStructure(mg) 80

usw..
Korrekt? Und fehlt da noch irgendeine Header-Zeile? Und warum sind anscheinend nur Werte von 0 bis 100 zugelassen? Wenn das ein Prozentwert sein soll, müßten doch auch Werte über 100 zulässig sein (wie bei TheKing, wo es bis 200 hochgeht)?
Parent - - By Peter Martan Date 2024-10-07 09:56 Edited 2024-10-07 10:03
Ja, damit hast du dir die Frage nach den Werten schon selbst beantwortet, nun muss man nur noch eine Textdatei aus den entsprechenden Namen machen und die Werte mit = dazu, das Ganze dann aus .txt in .avt umbenennen, aber dann sind darüber noch 2 Zeilen, die mit #davor einen Namen des Avatars angeben und ein Erstellungsdatum, von beidem weiß ich nicht, ob's essentiell ist, damit's funktioniert, hab's gerade einfach mal ohne diese beiden Zeilen in der Konsole probiert, Fehlermeldung hab' ich keine bekommen, uci command wird mit loaded successfully beantwortet, aber Gewähr, dass die Werte auch verwendet werden, hab' ich damit halt auch noch nicht
Parent - - By Thomas Plaschke Date 2024-10-07 21:08
Ich glaube, Stefan und Du habt es schon richtig entschlüsselt.
Der italienische Kommentar Ignora righe vuote o commenti in der Zeile mit "continue;" bedeutet "Leerzeilen oder Kommentare ignorieren".
Ignoriert werden in der if()-Klausel demnach konkret - außer Leerzeilen - Zeilen, die mit # anfangen und Zeilen, die kein = enthalten.
Werte außerhalb des Intervalls 0 bis 100 lösen die Fehlerbehandlung im catch-Block aus (Fehlermeldung) und führen zum Programmenden.

Viele Grüße
Th. Plaschke
Parent - By Peter Martan Date 2024-10-07 21:37 Edited 2024-10-07 21:42
Alles richtig, Thomas, ich hatte die Bestätigung von Manzo zu den Header- Zeilen, die man als reine Kommentare weglassen kann, auch schon wiedergegeben.
Parent - - By Andreas Matthies Date 2024-10-03 18:10
Stefan Pohl schrieb:

Lizard 11.0 hat zum ersten Mal ein Netz aus eigenen self-play Daten bekommen (vorher Lc0-Daten).


Etwas seltsam, wenn Engines damit werben, die Netze aus "self-play" Daten zu trainieren, dieses Self-Play aber mit Netzen stattfindet, die wiederum rein mit Leela-Daten trainiert wurden.
PlentyChess ist eine weitere Engine, die diesen Weg geht, scheinbar mussten sich die Autoren hinsichtlich der Originalität etwas einfallen lassen, um an Turnieren wie TCEC oder CCC teilnehmen zu dürfen.

Ich habe ja eigentlich fertig, aber vielleicht teste ich irgendwann auch nochmal, wie weit Rubi mit diesem Verfahren kommen würde.

Grüße, Andreas
Parent - - By Stefan Pohl Date 2024-10-04 07:25 Edited 2024-10-04 07:52 Upvotes 1
Andreas Matthies schrieb:

Stefan Pohl schrieb:

Lizard 11.0 hat zum ersten Mal ein Netz aus eigenen self-play Daten bekommen (vorher Lc0-Daten).


Etwas seltsam, wenn Engines damit werben, die Netze aus "self-play" Daten zu trainieren, dieses Self-Play aber mit Netzen stattfindet, die wiederum rein mit Leela-Daten trainiert wurden.
PlentyChess ist eine weitere Engine, die diesen Weg geht, scheinbar mussten sich die Autoren hinsichtlich der Originalität etwas einfallen lassen, um an Turnieren wie TCEC oder CCC teilnehmen zu dürfen.

Ich habe ja eigentlich fertig, aber vielleicht teste ich irgendwann auch nochmal, wie weit Rubi mit diesem Verfahren kommen würde.

Grüße, Andreas


Du hast natürlich Recht, das ist bzw. klingt schon etwas seltsam.

Ich gebe allerdings zu bedenken, daß Stockfish nachwievor quasi nur Lc0-Daten für seine Netze benutzt, hier kann also nicht mal von diesem "seltsamen Selfplay" die Rede sein - und erstaunlicherweise stört sich an diesem Umstand bei Stockfish niemand. Da muß ich mich schon fragen, ob hier nicht mit zweierlei Maß gemessen wird.

Weiterhin gebe ich zu bedenken, daß im hier vorliegenden Fall, es Lizard geschafft hat, seinen EAS-Score mit dem "seltsamen Selfplay"-Netz um gute 40% zu steigern (verglichen mit den zuvor genutzten reinen Lc0-Daten-Netzen). Wir sehen hier also eine wirklich sehr deutliche Änderung (in diesem Fall sogar Vebesserung, weil mehr Aggressivität = Attraktivität) im Spielstil.

Drittens gebe ich zu bedenken, daß das Spitzen-Computerschach durch die Tatsache, daß fast alle Engines OpenSource sind, generell immer inzestiöser wird. Gerade hat Stockfish wieder eine Idee von der Engine Starzix "übernommen":
Introduce Various Correction histories (Patch vom 17.9.2024): Introduced in Starzix chess engine. Non-Pawn correction history consists of side-to-move, side of Zobrist key, and a Zobrist key representing of the position of all non-pawn pieces of **one side**. The non-pawn correction values for both key sides are then summed.
Und ich möchte lieber gar nicht wissen, wieviel Stockfish Ideen/Code umgekehrt in anderen Top-Engines stecken.

Das ist eben die Kehrseite der Tatsache, daß im Computerschach fast alles OpenSource ist. Versteht mich nicht falsch, ich finde OpenSource eine tolle Sache, und alle meine Tools sind natürlich ebenfalls OpenSource. Und gerade programmiert Ed Schröder eine eigene, bessere und schnellere Version meines EAS-Tools. Völlig OK für mich (gefühlt sogar eine Riesen-Auszeichnung, wenn der GOAT des Computerschachs meine Ideen/Tools aufgreift). Aber wie bei allen Dingen, gilt auch für OpenSource: Nichts hat nur Vorteile. Alles hat auch immer irgendwelche Nachteile.

Genau wegen des Inzestproblems im Computerschach wird es m.E. immer wichtiger, lieber Engines mit einem eigenen Spielstil zu entwickeln, anstatt wie bisher immer nur auf die reine Celo-Stärke zu schauen. Das ist ja, seit es mein EAS-Tool gibt, nun endlich problemlos möglich, eben weil der Spielstil nun erstmals wirklich "meßbar", weil quantifizierbar, ist. Das kann genutzt werden, um das Netz-Lernen in eine ganz neue Richtung zu lenken. Man kann Lerndaten nach Aggressivität vorfiltern, bevor man sie ins Netz der Engine "reinlernt" oder auch diese Lerndaten mithilfe des EAS-Tools neu quantifizieren. Siehe das Wahnsinnsprojekt Patricia:
https://www.sp-cc.de/patricia_eas_engine.htm
Oder eben Lizard 11, welcher nun in der Top15 EAS-Rangliste auf Platz 1 steht, noch vor Stockfish. Also, wenn das keine beeindruckende Leistung ist, dann weiß ich auch nicht.

Hier ein Beispiel aus meinem Lizard 11 Testrun gegen den Oberlangweiler Viridithas 14 (Letzter Platz in der Top15 EAS-Rangliste). 6 Züge UHO Vorgabe, Weiß hat Vorteil.
Ich zitiere mal aus StarWars The Mandalorian: "Das ist der Weg"...und das EAS-Tool zeigt ihn uns.

Event:
Ort:
Datum:

Weiss:
Schwarz:

Ergebnis
Board
Parent - - By Andreas Matthies Date 2024-10-04 08:23
Ich glaube, mein Beitrag klang negativer als er eigentlich gemeint war.

Ich habe gar nichts dagegen, dass jeder von jedem kopiert, abschaut, sich inspirieren lässt.
Das Computerschach wäre heute bei weitem nicht so nahe an der Lösung, wenn sich Open Source und Open Data nicht durchgesetzt hätten und sich die Entwickler stattdessen weiterhin mit Klonkriegen wie in der Rybka-Zeit bekämpfen würden. Einige stecken gedanklich immer noch in dieser Zeit.

Man darf halt alles, was mit dem Wettkampfgedanken zu tun hat, nicht so ernst nehmen, obwohl er vermutlich die Triebfeder für die Entwicklung der vielen neuen Engines ist.
Dieser Wettkampfgedanke führt dann zu diesen etwas seltsamen Regeln, dass Engines bei Turnieren nur zugelassen werden, wenn sie ein subjektiv festgelegtes Maß an "Individualität" erreichen.
Und man darf nicht aus der Elo-Zahl einer Engine auf das Talent eines Entwicklers schließen, dafür bin ich selbst ein gutes Beispiel.

Für mich zählt seit einiger Zeit eher der Gesamtfortschritt, also das Annähern des Computerschach bzw. der besten Engines an das perfekte Spiel.
An diesem Fortschritt haben Stockfish und Lc0 natürlich den größten Anteil. Und das liegt u.a. daran, dass sich beide Entwicklerteams einig sind über die uneingeschränkte Freigabe aller Quellen und Daten.
Aber es ist doch schön zu sehen, dass auch kleine Engines mit neuen Ideen etwas beitragen zum Fortschritt.

Grüße, Andreas
Parent - - By Stefan Pohl Date 2024-10-04 08:39 Upvotes 1
Andreas Matthies schrieb:

Ich glaube, mein Beitrag klang negativer als er eigentlich gemeint war.

Ich habe gar nichts dagegen, dass jeder von jedem kopiert, abschaut, sich inspirieren lässt.
Das Computerschach wäre heute bei weitem nicht so nahe an der Lösung, wenn sich Open Source und Open Data nicht durchgesetzt hätten und sich die Entwickler stattdessen weiterhin mit Klonkriegen wie in der Rybka-Zeit bekämpfen würden. Einige stecken gedanklich immer noch in dieser Zeit.

Man darf halt alles, was mit dem Wettkampfgedanken zu tun hat, nicht so ernst nehmen, obwohl er vermutlich die Triebfeder für die Entwicklung der vielen neuen Engines ist.
Dieser Wettkampfgedanke führt dann zu diesen etwas seltsamen Regeln, dass Engines bei Turnieren nur zugelassen werden, wenn sie ein subjektiv festgelegtes Maß an "Individualität" erreichen.
Und man darf nicht aus der Elo-Zahl einer Engine auf das Talent eines Entwicklers schließen, dafür bin ich selbst ein gutes Beispiel.

Für mich zählt seit einiger Zeit eher der Gesamtfortschritt, also das Annähern des Computerschach bzw. der besten Engines an das perfekte Spiel.
An diesem Fortschritt haben Stockfish und Lc0 natürlich den größten Anteil. Und das liegt u.a. daran, dass sich beide Entwicklerteams einig sind über die uneingeschränkte Freigabe aller Quellen und Daten.
Aber es ist doch schön zu sehen, dass auch kleine Engines mit neuen Ideen etwas beitragen zum Fortschritt.

Grüße, Andreas


Ich fand gar nicht, daß dein Beitrag sehr negativ klingt, ich wollte nur meine 2cents beisteuern.
Viel eher würde ich die Frage stellen, ob das "Annähern des Computerschach bzw. der besten Engines an das perfekte Spiel" heutzutage wirklich noch der Maßstab für Fortschritt ist, bzw. sein sollte. Oder ob das überhaupt jemals das Ziel war: Es ging seit Beginn des Computerschachs ganz logisch und natürlich immer darum, die Spielstärke anzuheben. Nur war das Ziel früher eben, den Menschen zu übertreffen. Nachdem das erreicht wurde, hat man einfach ganz selbstverständlich und ohne das zu hinterfragen, immer weiter Richtung Spielstärkezuwachs entwickelt. Nun sind wir aber in einem Spielstärkebereich angekommen, der das menschliche Maß und Verständnis weit übertrifft. Und da stelle ich mir schon die Frage, ob ein "immer weiter so" noch der richtige Weg ist:
Die Top-Engines sind ja mittlerweile so nahe am perfekten Spiel, daß man mittels UHO-Eröffnungen schon Ungenauigkeiten/kleine Fehler vorgeben muß, damit nicht quasi alle Partien Remis enden... Für mich läßt das nur den Schluß zu, daß man das Entwicklungsziel des Computerschachs (Celo-gain um jeden Preis, und das seit den 1950er Jahren) ändern bzw. zumindest ergänzen muß - und zwar eben um den Faktor des Spielstils, der Aggressivität. Und ich bin mit dieser Meinung auch mittlerweile nicht mehr alleine. Siehe eben Patricia. Oder wie Ed Schröder gerade in seinem Forum schrieb: "Elo is not the end to the means, playing style is, and Stefan's EAS tool is still the best around to measure aggressiveness."
Parent - - By Andreas Matthies Date 2024-10-04 09:06 Upvotes 2
Stefan Pohl schrieb:

Für mich läßt das nur den Schluß zu, daß man das Entwicklungsziel des Computerschachs (Celo-gain um jeden Preis, und das seit den 1950er Jahren) ändern bzw. zumindest ergänzen muß - und zwar eben um den Faktor des Spielstils, der Aggressivität.

Tja, das unterscheidet den Schachspieler vom Computerexperten/Mathematiker.

Für mich sind diese Faktoren "Spielstil" und "Aggressivität", die ja aus dem menschlichen Schach entnommen sind, nicht wirklich relevant für das Computerschach, da sie überhaupt nichts mit den Regeln und dem Ziel des Spiels zu tun haben und die Engines in ein künstliches Korsett einer minderwertigen Schach-Entität genannt "Mensch" zwängen.

Das hört sich hart an, ich schreibe es mit einem Augenzwinkern   und kann auch sehr gut verstehen, dass Schachspieler jetzt mehr und mehr auf diese Faktoren schauen, da wir uns dem Ziel "maximaler Celo-gain" ja schon so weit genähert haben, dass Fortschritte hier kaum noch verständlich oder nachvollziehbar sind.

Grüße, Andreas
Parent - - By Stefan Pohl Date 2024-10-04 09:15 Edited 2024-10-04 09:51 Upvotes 2
Andreas Matthies schrieb:

Tja, das unterscheidet den Schachspieler vom Computerexperten/Mathematiker.
Für mich sind diese Faktoren "Spielstil" und "Aggressivität", die ja aus dem menschlichen Schach entnommen sind, nicht wirklich relevant für das Computerschach, da sie überhaupt nichts mit den Regeln und dem Ziel des Spiels zu tun haben und die Engines in ein künstliches Korsett einer minderwertigen Schach-Entität genannt "Mensch" zwängen.

Das hört sich hart an, ich schreibe es mit einem Augenzwinkern  


Verstehe ich total. Wenn auch Ed Schröder ebenfalls meiner Meinung ist und ich denke, Ed darf man nun getrost als Computerexperten bezeichnen...
Allerdings muß ich hier dann zu bedenken geben, daß mein UHO-Eröffnungskonzept, das ja mittlerweile der Gold-Standard für Engineentwicklung und bedeutende Turniere geworden ist, genau dasselbe macht, nämlich die Engine in das künstliche Korsett der Eröffnung einer minderwertigen Schach-Entität genannt "Mensch" zu zwängen.
Wenn das heutzutage die Grundlage - und somit sehr relevant - der Weiterentwicklung der Top-Engines geworden ist (und das ist es ja ohne jeden Zweifel), dann kann man diese Grundlage ja auch zusätzlich zum Zweitziel aufrufen, also Engineschach so weiter entwicklen, daß die minderwertigen Schach-Entität genannt "Mensch" (den Begriff finde ich echt gelungen! (keine Ironie!)), beim Zuschauen auch Spaß hat. Will sagen, die Engines sollten attraktiver und aggressiver spielen. Nicht nur stärker.
Unter diesem Gesichtpunkt finde ich hier keinen Widerspruch, im Gegenteil: Wenn man Eröffnungen aus dem minderwertigen, menschlichen Schach nutzt, um Engines weiterzuentwickeln, ist es doch nicht unlogisch, auch ein (Teil-)Ziel aus dem menschlichen Schach zu entnehmen (mehr Attraktivität, Spannung, Aggressivität), und es dem Ziel der Celo-Steigerung zumindest hinzuzufügen. Das erscheint mir in sich logisch und sinnvoll. Und somit auch relevant für das Computerschach heutzutage, auch wenn es nichts mit den Regeln und dem Ziel des Schachspiels an sich zu tun hat.
Und schon Lasker hat gesagt: "Without error, there can be no brilliancy". Und daß das wahr ist, sieht man ja an den unfaßbaren Partien, die sich oft nach UHO-Eröffnungen ergeben (also nach einem Error der minderwertigen Schach-Entität genannt "Mensch", der den Engines aufgezwungen wurde). Und ich für meinen Teil ziehe Brillanz der Perfektion im Computerschach auf jeden Fall vor.
Und wenn man per UHO Eöffnung der Perfektion in einer Enginepartie schon den Garaus macht, bevor die Engines überhaupt losspielen (und das ja aus gutem Grund!), scheint mir das Ziel des perfekten (Computer-)schachs hier schon über Bord geworfen worden zu sein, bevor die Weiterentwicklung überhaupt vonstatten geht. Damit bleibt für mich schon per Ausschlussverfahren einzig die Brillanz als Ziel übrig. Und Brillanz ist für mich sowohl Spielstärke als auch attraktiver Spielstil, vereint in einer Engine.
Parent - By Andreas Matthies Date 2024-10-04 10:10
Stefan Pohl schrieb:

Wenn auch Ed Schröder ebenfalls meiner Meinung ist und ich denke, Ed darf man nun getrost als Computerexperten bezeichnen...

Ich vermute mal, dass er darüber hinaus aber auch einen gewissen Status als Schachspieler hat verglichen mit mir, der kaum eine Eröffnung beim Namen nennen könnte, kein eigenes Schachbrett besitzt und höchstens hin und wieder mal ein paar Aufgaben bei Lichess knobelt.
Deshalb ist das kein Widerspruch.

Stefan Pohl schrieb:

Allerdings muß ich hier dann zu bedenken geben, daß mein UHO-Eröffnungskonzept, das ja mittlerweile der Gold-Standard für Engineentwicklung und bedeutende Turniere geworden ist, genau dasselbe macht, nämlich die Engine in das künstliche Korsett der Eröffnung einer minderwertigen Schach-Entität genannt "Mensch" zu zwängen.

Richtig. Ich vermute aber (und ich bewege mich hier auf Glatteis, denn ich nutze natürlich deine Eröffnungen, habe mich aber nie im Detail mit ihnen beschäftigt), dass der technische Erfolg deiner Eröffnungsbibliothek bei der Weiterentwicklung der Engines im Wesentlichen auf dem sehr gut und fein dosierten 'U' (und natürlich dem 'O', also Stellungen relativ nahe der Startposition) basiert und dass das 'H' eher Anhängsel ist, das einerseits nicht weh tut, weil die Datenbanken mit menschlichen Partien sehr gut gefüllt sind, und andererseits die Schach-Puristen befriedigt.
Parent - By Rainer Neuhäusler Date 2024-10-04 18:12
Andreas Matthies schrieb:
Für mich sind diese Faktoren "Spielstil" und "Aggressivität", die ja aus dem menschlichen Schach entnommen sind, nicht wirklich relevant für das Computerschach, da sie überhaupt nichts mit den Regeln und dem Ziel des Spiels zu tun haben und die Engines in ein künstliches Korsett einer minderwertigen Schach-Entität genannt "Mensch" zwängen.
Für mich zählt seit einiger Zeit eher der Gesamtfortschritt, also das Annähern des Computerschach bzw. der besten Engines an das perfekte Spiel.

Einem Programmierer sollte diese puristische, rein algorithmische Sichtweise selbstverständlich offen stehen und sie ist von Seiten der Wissenschaft und der Forschung sogar wünschenswert. Zielsetzung,  das Schachspiel, nur seinen Regeln nach, frei von menschlichen Spielbedürnissen, programmiertechnisch auszuloten. Es geht um ein Projekt , ein Programm, eine Engine, ohne „das“ künstliche Korsett einer minderwertigen Schach-Entität genannt "Mensch" (Matthies). Genau!
.
Parent - By Peter Martan Date 2024-10-04 19:39 Edited 2024-10-04 19:52
Man kann den Ansatz der Nichteinmischung von Programmiererseite ja verstehen, (siehe das Zero in Lc0) er funktioniert nur einfach nicht. Abgesehen davon, dass es ein Spiel von Menschen erdacht für Menschen ist, geht's einfach nicht stellungsunabhängig, es gibt keine gleichnamige (stellungsunabhängige) Spielstärke (bei Menschen ja erst recht nicht), infolgedessen auch keine ebensolche Messung, und die Idee, die Engines würden ihre Teststellungen schon allesamt selbst aufs Brett bringen, inzüchtet einfach gemeinsame blind spots , wenn man Inzucht auch als Verb auf Deutsch verwenden darf, to inbreed wäre auf Englisch ja kein Problem

Da ist mir der selection bias als Prinzip der Auswahl, wenigstens der Eröffnungsstellungen, jedenfalls dann noch lieber, wenn die Auswahl eben genau nicht blind erfolgt. Auch wenn mir noobpwnftw im Talkchess vor Kurzem mal wieder cherry picking "vorgeworfen" hat,

https://talkchess.com/viewtopic.php?p=969121#p969121

Es geht nicht ohne, die Frage ist immer nur, welche Kirschen man nimmt, siehe z.B. auch Simex (im Prinzip ja auch MEA, zumindest Schröders Versionen davon), und es muss auch nicht unbedingt UHO und oder EAS sein, aber ohne Selektionskriterien der Teststellungen (und sei's "nur" zum Ausspielen) und Tools, mit denen man auswertet, ging's noch nie, früher hat man halt absichtlich ausgeglichene Eröffnungsteststellungen genommen aus Sets oder Büchern, das wurde vom Remistod gekillt, dafür sind die Ergebnisse, je selektiver man in den Voraussetzungen vorgeht, halt immer weniger übertragbar aufeinander, je mehr Engines es werden, die einander immer mehr ähneln, in der Stärke und in ihren Schwächen, sofern man sie halt überhaupt noch nachweisen kann, und je genauer man sich überlegen muss, welche Stellungen nicht nur Remis- Partiepaare (2 drawn draws oder 1:1 drawn game pairs) erbringen.
Worauf man vor allem immer mehr verzichten muss, ist Transitivität der Messungen des "Fortschritts", aber was soll's, diese Elosion ist mit dem Remistod gemeinsam einen ebensolchen heimlich, still und leise und schon vor längerer Zeit gestorben.
Parent - By Max Siegfried Date 2024-10-04 11:16 Upvotes 1
Stefan Pohl schrieb:

Ich gebe allerdings zu bedenken, daß Stockfish nachwievor quasi nur Lc0-Daten für seine Netze benutzt, hier kann also nicht mal von diesem "seltsamen Selfplay" die Rede sein - und erstaunlicherweise stört sich an diesem Umstand bei Stockfish niemand. Da muß ich mich schon fragen, ob hier nicht mit zweierlei Maß gemessen wird.

Weiterhin gebe ich zu bedenken, daß im hier vorliegenden Fall, es Lizard geschafft hat, seinen EAS-Score mit dem "seltsamen Selfplay"-Netz um gute 40% zu steigern (verglichen mit den zuvor genutzten reinen Lc0-Daten-Netzen). Wir sehen hier also eine wirklich sehr deutliche Änderung (in diesem Fall sogar Vebesserung, weil mehr Aggressivität = Attraktivität) im Spielstil.

Drittens gebe ich zu bedenken, daß das Spitzen-Computerschach durch die Tatsache, daß fast alle Engines OpenSource sind, generell immer inzestiöser wird. Gerade hat Stockfish wieder eine Idee von der Engine Starzix "übernommen":
Introduce Various Correction histories (Patch vom 17.9.2024): Introduced in Starzix chess engine. Non-Pawn correction history consists of side-to-move, side of Zobrist key, and a Zobrist key representing of the position of all non-pawn pieces of **one side**. The non-pawn correction values for both key sides are then summed.
Und ich möchte lieber gar nicht wissen, wieviel Stockfish Ideen/Code umgekehrt in anderen Top-Engines stecken.

Das ist eben die Kehrseite der Tatsache, daß im Computerschach fast alles OpenSource ist. Versteht mich nicht falsch, ich finde OpenSource eine tolle Sache, und alle meine Tools sind natürlich ebenfalls OpenSource. Und gerade programmiert Ed Schröder eine eigene, bessere und schnellere Version meines EAS-Tools. Völlig OK für mich (gefühlt sogar eine Riesen-Auszeichnung, wenn der GOAT des Computerschachs meine Ideen/Tools aufgreift). Aber wie bei allen Dingen, gilt auch für OpenSource: Nichts hat nur Vorteile. Alles hat auch immer irgendwelche Nachteile.

Genau wegen des Inzestproblems im Computerschach wird es m.E. immer wichtiger, lieber Engines mit einem eigenen Spielstil zu entwickeln, anstatt wie bisher immer nur auf die reine Celo-Stärke zu schauen. Das ist ja, seit es mein EAS-Tool gibt, nun endlich problemlos möglich, eben weil der Spielstil nun erstmals wirklich "meßbar", weil quantifizierbar, ist. Das kann genutzt werden, um das Netz-Lernen in eine ganz neue Richtung zu lenken. Man kann Lerndaten nach Aggressivität vorfiltern, bevor man sie ins Netz der Engine "reinlernt" oder auch diese Lerndaten mithilfe des EAS-Tools neu quantifizieren. Siehe das Wahnsinnsprojekt Patricia:
<a class='ura' href='https://www.sp-cc.de/patricia_eas_engine.htm'>https://www.sp-cc.de/patricia_eas_engine.htm</a>
Oder eben Lizard 11, welcher nun in der Top15 EAS-Rangliste auf Platz 1 steht, noch vor Stockfish. Also, wenn das keine beeindruckende Leistung ist, dann weiß ich auch nicht.


Ja die Menschen messen sehr oft mit zweierlei Maß. Das ist schon seit Millionen von Jahren bekannt.

EAS Score +40%... super aber wie sieht es mit der Elo aus? +... Elo? +-0 Elo? -... Elo?
Wir brauchen nicht 100 Engines die super aggressiv und gleichzeitig hunderte von Elos schwächer spielen als Stockfish. Eine (Patricia 3.1) reicht schon. Diese deckt quasi den ganzen aggressiven Bereich ab. Diese kann man als Ergänzung zu Stockfish verwenden. Wobei diese meines Wissens nach keine macOS Version hat und nicht unter macOS kompilierbar ist
Ich kenne übrigens Kinder die deutlich aggressiver spielen und nein Aggressivität macht die Kinder, die Partie, die Züge nicht attraktiver, auch wenn diese einen EAS Score von 1000000 haben und eine Elo von Witz. Ja ich weiß viele schwache "Hau Drauf" möchtegern Meister wollen diese Züge sehen, aber in den meisten Stellungen ist es trotzdem nicht der beste Zug.

Du sprichst von: immer wichtiger, lieber Engines mit einem eigenen Spielstil zu entwickeln.
Dies hat z.B. ChessBase mit den Fritz 19 Charakteren gemacht: Allrounder, Aggressiv, Positionell, Schwindler, Ängstlich, Endspielkenner
Könnte man dein oder sein zukünftiges EAS Tool benutzen um selbst diese Charaktere / Spielstile zu erschaffen?
In Fritz sind diese auf die Spielstärke eines Großmeisters begrenzt (wahrscheinlich 2500 bis 2800 Elo je nach Charakterauswahl. Diese patzen auch menschlich).
Interessant wären diese Charaktere / Spielstile mit z.B. 3000 bis 3800 Elo.

Weiß jemand, wann Fritz 20 erscheint?
Parent - - By Rainer Neuhäusler Date 2024-10-04 17:45 Edited 2024-10-04 18:33
Stefan Pohl schrieb:

...Drittens gebe ich zu bedenken, daß das Spitzen-Computerschach durch die Tatsache, daß fast alle Engines OpenSource sind, generell immer inzestiöser wird. Gerade hat Stockfish wieder eine Idee von der Engine Starzix "übernommen"...
Und ich möchte lieber gar nicht wissen, wieviel Stockfish Ideen/Code umgekehrt in anderen Top-Engines stecken.
Das ist eben die Kehrseite der Tatsache, daß im Computerschach fast alles OpenSource ist. Versteht mich nicht falsch, ich finde OpenSource eine tolle Sache, und alle meine Tools sind natürlich ebenfalls OpenSource. Und gerade programmiert Ed Schröder eine eigene, bessere und schnellere Version meines EAS-Tools. Völlig OK für mich (gefühlt sogar eine Riesen-Auszeichnung, wenn der GOAT des Computerschachs meine Ideen/Tools aufgreift). Aber wie bei allen Dingen, gilt auch für OpenSource: Nichts hat nur Vorteile. Alles hat auch immer irgendwelche Nachteile...
..Genau wegen des Inzestproblems im Computerschach wird es m.E. immer wichtiger, lieber Engines mit einem eigenen Spielstil zu entwickeln, anstatt wie bisher immer nur auf die reine Celo-Stärke zu schauen.

Auf diese Konsequenzen der permanenten gegenseitigen "Befruchtung'" durch die Open Source Philosophie und Lizensierung kann man nicht oft genug hinweisen. Für den Statistiker eine einfache Formel: Je geringer die Varianz, desto seltener die Signifikanz. Deshalb ist es mehr als verständlich und von praktischem Nutzen, wenn versucht wird, die zunehmende Homogenität der Engines durch programmexterne Maßnahmen, wie z.B. eine möglichst selektive bzw. asymmetrische  Eröffnungswahl, zu kompensieren.

Die Vermeidung unentschiedener Partien und ein attraktiver Spielstil  müssen aber nicht als das einzig wahre Paradigma der Schachprogrammierung hingestellt werden. Siehe den "puristischen Ansatz" von Andreas Matthies.   
  
Carlsen der GOAT des Schachspiels, Federer des Tennis, Pele oder Messie des Fußballs, Einstein oder Newton der Physik, Lang Lang der Pianisten, Ed Schröder des Computerschachs. Der Begriff “Greatest Of All Time” ist von vorneherein Nonsens, da er, wörtlich genommen, auch die Zukunft umfasst. Generationsegoismus, menschlicher Prädikatszwang, der Hang zu Superlativen und Rekorden, wie ihn Thomas Gottschalk in "Wetten, dass.." bei der Vorstellung seiner Promigäste zelebrierte

Ed Schröder ist sicher ein Urgestein des Computerschachs, habe ihn hier schon des öfteren entsprechend gewürdigt. Aber der GOAT ? Da gäbe es m.E dann doch ein ganze Reihe ernsthafter  Konkurrenten.
,
Parent - - By Stefan Pohl Date 2024-10-05 06:56 Edited 2024-10-05 07:01 Upvotes 1
Rainer Neuhäusler schrieb:


Ed Schröder ist sicher ein Urgestein des Computerschachs, habe ihn hier schon des öfteren entsprechend gewürdigt. Aber der GOAT ? Da gäbe es m.E dann doch ein ganze Reihe ernsthafter  Konkurrenten.



Nicht für mich. Ed ist mit seiner Rebel-Engine seit seinen ersten 8-bit Brettcomputern bis heute in der (erweiterten) Weltspitze, also seit ca. 40 Jahren. Niemand sonst kommt diesbzgl. auch nur in seine Nähe. Zudem waren seine 8-bit Schachcomputer die stärksten und spielten das schönste Schach in dieser Generation. Und in 6502-Assembler auch nur irgendein Programm zu schreiben, ist schon ein echter Albtraum (habe mich damals selbst darin versucht), geschweige denn ein Schachprogramm, geschweige denn ein starkes Schachprogramm. Ed war auf dieser Steinzeit-Hardware schon Weltspitze und heute spielt sein NeuralNetz-Rebel auf moderner Harwdare immer noch in den Top20, obwohl Ed mittlerweile 74 Jahre alt ist. Und Ed ist dabei immer offen für Neues, trotz seines mittlerweile sehr fortgeschrittenen Alters: Er hat mir seinerzeit als erster zu meinem revolutionär schnellen Tool zur Suche nach Opferpartien gratuliert und nutzte mein (daraus später entstandenes) EAS-Tool, um seine Rebel-Engine opferfreudiger zu machen. Und jetzt programmiert er sein eigenes EAS-Tool und ein neuer Rebel EAS ist schon im Entstehen (das Neuralnetz-Lernen dauert halt).
Mehr GOAT geht nicht! (Ob der Begriff GOAT an sich sinnvoll ist, das kann man natürlich diskutieren)
Parent - By Thorsten Czub Date 2024-10-05 14:05
Ja wenn man sieht was die Programmierer damals mit z80 oder 6502 mit nur 2 oder 3.7 oder 5 mhz gemacht haben ist das echt erstaunlich.
Parent - - By Rainer Neuhäusler Date 2024-10-05 21:05 Edited 2024-10-05 21:57
Stefan Pohl schrieb:

Rainer Neuhäusler schrieb:

Ed Schröder ist sicher ein Urgestein des Computerschachs, habe ihn hier schon des öfteren entsprechend gewürdigt. Aber der GOAT ? Da gäbe es m.E dann doch ein ganze Reihe ernsthafter  Konkurrenten.

Nicht für mich. Ed ist mit seiner Rebel-Engine seit seinen ersten 8-bit Brettcomputern bis heute in der (erweiterten) Weltspitze, also seit ca. 40 Jahren. Niemand sonst kommt diesbzgl. auch nur in seine Nähe. Zudem waren seine 8-bit Schachcomputer die stärksten und spielten das schönste Schach in dieser Generation. Und in 6502-Assembler auch nur irgendein Programm zu schreiben, ist schon ein echter Albtraum (habe mich damals selbst darin versucht), geschweige denn ein Schachprogramm, geschweige denn ein starkes Schachprogramm. Ed war auf dieser Steinzeit-Hardware schon Weltspitze und heute spielt sein NeuralNetz-Rebel auf moderner Harwdare immer noch in den Top20, obwohl Ed mittlerweile 74 Jahre alt ist. Und Ed ist dabei immer offen für Neues, trotz seines mittlerweile sehr fortgeschrittenen Alters: Er hat mir seinerzeit als erster zu meinem revolutionär schnellen Tool zur Suche nach Opferpartien gratuliert und nutzte mein (daraus später entstandenes) EAS-Tool, um seine Rebel-Engine opferfreudiger zu machen. Und jetzt programmiert er sein eigenes EAS-Tool und ein neuer Rebel EAS ist schon im Entstehen (das Neuralnetz-Lernen dauert halt).
Mehr GOAT geht nicht! (Ob der Begriff GOAT an sich sinnvoll ist, das kann man natürlich diskutieren)

_________________________

Erstelle bitte ein Ranking auf die Frage, wen würdest du als GOAT des Computerschachs bezeichnen?

ChatBot: das web wird verwendet, Antworten für Sie werden generiert… Hier ist ein Ranking der bedeutendsten Persönlichkeiten im Computerschach, die als “Greatest of All Time” (GOAT) betrachtet werden könnten:

1. Claude Shannon
Claude Shannon legte mit seinem Artikel “Programming a Computer for Playing Chess” 1949 den Grundstein für das Computerschach 1. Seine theoretischen Arbeiten sind bis heute von großer Bedeutung.
2. Alan Turing
Alan Turing, ein Pionier der Informatik, entwickelte frühe Konzepte für Schachprogramme und trug wesentlich zur Idee bei, dass Maschinen Schach spielen können 1.
3. Frederic Friedel
Als Mitbegründer von ChessBase hat Frederic Friedel die Schachwelt revolutioniert. ChessBase ist eine der wichtigsten Plattformen für Schachdatenbanken und Trainingssoftware 2.
4. Hans Berliner
Hans Berliner war ein führender Forscher im Computerschach und entwickelte das erfolgreiche Schachprogramm Hitech 3.
5. David Silver
David Silver von DeepMind leitete die Entwicklung von AlphaZero, einem KI-Schachprogramm, das durch selbstständiges Lernen auf übermenschlichem Niveau spielt.
6. Gary Linscott
Gary Linscott ist einer der Hauptentwickler von Leela Chess Zero (LC0), einem Open-Source-Schachprogramm, das auf den Prinzipien von AlphaZero basiert1.
7. Tord Romstad
Tord Romstad ist Entwickler von Stockfish und Mitentwickler von NNUE (Efficiently Updatable Neural Networks), das neuronale Netzwerke in traditionelle Schachprogramme integriert1.
8. Ed Schröder
Ed Schröder entwickelte das Schachprogramm Rebel, das in den 1990er Jahren viele Computerschachturniere gewann und kommerziell erfolgreich war3.
9. Demis Hassabis
Demis Hassabis, Mitbegründer und CEO von DeepMind, hat durch die Entwicklung von AlphaZero die kommerzielle Nutzung von KI im Schach revolutioniert.
10. Garry Kasparov
Garry Kasparov, ehemaliger Schachweltmeister, hat durch seine Matches gegen Deep Blue das öffentliche Interesse am Computerschach erheblich gesteigert und die Entwicklung von Schach-KI gefördert3.
______________________

In Anbetracht der zu erwartenden Beteiligung bei einem Forums-Poll innerhalb dieses Schlafmützenvereins ( ) habe ich mal an Stelle dessen lieber die Künstliche Intelligenz befragt. Erstaunlich, ungefähr diese Leute und Reihung des ChatBot hinsichtlich einer GOAT- Konkurrenz, unter besonderer Berücksichtigung der Historie und Schachprogrammierung, hatte ich tatsächlich auch im Kopf.

Nach Stefan Pohls leidenschaftlicher Eloge für Ed Schröder muss ich aber einräumen, dass man den Begriff „GOAT“, ob man ihn mag oder nicht, vielleicht doch etwas universeller, und mehr auf die Computerschachgemeinde bezogen, sehen sollte. Im besonderen Fall von Stefans persönlicher Dankbarkeit Ed gegenüber, natürlich umso mehr.

Ich schätze Ed Schröder besonders  wegen dieser Vorzüge:

- they never come back, exept of Ed Schroeder. Er hatte drei große Hindernisse zu überwinden:
ein lange schwere Krankheit, soweit ich das mitbekommen habe, den Sprung von DOS nach WINDOWS, die neue Welt der neuronalen Netzwerke. Außer ihm und Chris Whittington ist keiner von den alten Engine-Autoren übrig geblieben bzw. noch öffentlich aktiv.

- er steht mit seinen Internetseiten und seinen Tools in gleicher Reihe mit Helfern wie Frank Schubert (EloStat), SMK (UCI) und Ronald de Man (Syzygy). Wen könnte man da noch aufzählen? Frederic Friedel inklusive CSS-Magazin mitsamt Herausgeber und Autoren sollte man nicht unterschätzen.

- Aktivität und persönliches Engagement
eigenes Forum,  Talkchess-Moderator, Autorengemeinschaft mit  Chris Whittington, rege Beteiligung in Fachforen, Bemühen geklonten Code in Schachprogrammen aufzuspüren, Engine-Turniere und Testsuiten. Und vieles mehr…..

Ed Schröder, GOAT der Computerschachgemeinde !!!
.
Parent - - By Lothar Jung Date 2024-10-05 21:38
1,2,5,6,7.
Parent - By Rainer Neuhäusler Date 2024-10-05 22:09
Lothar Jung schrieb:

1,2,5,6,7.

Also doch  Es lebe die Meinungsvielfalt!
.
Parent - - By Lothar Jung Date 2024-10-04 10:15
Hier die Quelle und die Downloads.
https://github.com/liamt19/Lizard/releases/tag/v11.0

Mit der erweiterten und schnelleren AVX512 Umsetzung von AMD dürfte die Engine noch etwas zulegen.
Hervorzuheben ist auch, dass die Engine in C# umgesetzt wurde.
Parent - - By Max Siegfried Date 2024-10-04 10:35
Lothar Jung schrieb:

Hier die Quelle und die Downloads.
<a class='ura' href='https://github.com/liamt19/Lizard/releases/tag/v11.0'>https://github.com/liamt19/Lizard/releases/tag/v11.0</a>

Mit der erweiterten und schnelleren AVX512 Umsetzung von AMD dürfte die Engine noch etwas zulegen.
Hervorzuheben ist auch, dass die Engine in C# umgesetzt wurde.


Gibt es davon eine macOS Version oder ist es möglich diese selbst zu kompilieren?
Parent - By Lothar Jung Date 2024-10-04 19:48
Nein.
- By Lothar Jung Date 2024-10-07 19:47 Upvotes 1
Bald spielt vielleicht Lizard gegen Lc0.
Mal sehen…..
- By Lothar Jung Date 2024-10-08 08:16 Upvotes 1
Lizard ist in der zweiten Runde im TCEC Cup Turnier gegen Obsidian ausgeschieden.
Ceres und Lc0 klar weiter.
Up Topic Hauptforen / CSS-Forum / Lizard 11.0 erobert Spitze der Top15 EAS Rangliste

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill