|
|
|||||||||||
Awit
Ich bin über das sehr interessante Programm Awit gestolpert. Das Programm wurde 2009 von Jim Ablett compiliert, basiert aber auf einer Version aus den späten 80er Jahren die sich nur wenig von dem Programm von 1984 unterscheidet. Das Programm ist ähnlich selektiv wie der Mephisto 3, rechnete damals etwa 8 Züge pro Sekunde.
Ich habe eine WB_config dafür zusammen gestellt, einfach in das Awit-Verzeichnis kopieren und mit den .bat Dateien die entsprechende Awit.WB.ini erstellen. Leider sind 2 Konfigurationen für Schwarz und Weiß nötig. Das Programm funktioneirt augenscheinlich auch erstmal mit der falschen Konfig, früher oder später wird es aber illegale Züge produzieren. Das Skript fragt nach der einzustellenden Suchtiefe, sie kann von Hand auch in der Awit.ini geändert werden, wobei die 5 für die Tiefe steht. Die 5 sollte aber ziemlich genau der (Turnier-)Leistung von 1984 entsprechen. Code:
[Client2Server] xboard := ?6\n0 5 0 0\nY\n new := ?6\n0 5 0 0\nY\n WB_config: https://www.mediafire.com/file/bqpay...onfig.zip/file Win32 compile: https://webdocs.cs.ualberta.ca/%7Eto...ComputerChess/ Info: https://www.chessprogramming.org/Awit#Chess_Program |
Folgender Benutzer sagt Danke zu AlexS für den nützlichen Beitrag: | ||
kamoj (13.05.2024) |
|
||||||||||||
AW: Awit
Awit von tony marsland, canada. Der hat auch 1986 in Köln mitgespielt
__________________
Die ganze Welt des Computerschachs |
Folgender Benutzer sagt Danke zu mclane für den nützlichen Beitrag: | ||
kamoj (13.05.2024) |
|
|||||||||||
AW: Awit
Jetzt hab ich doch wieder einen Bug gefunden... Werde das ganze nochmal updaten müssen
Edit: Neue Dateien sind Online, müsste nun einigermaßen stabil laufen... Geändert von AlexS (13.05.2024 um 19:33 Uhr) |
Folgender Benutzer sagt Danke zu AlexS für den nützlichen Beitrag: | ||
kamoj (13.05.2024) |
|
|||||||||||
AW: Awit
Hi Alex,
Thanks for the gift! I found an issue with this game (easy to replicate, apart from getting the same first Awit white move 1.b3):
[Event "?"]
[Site "?"] [Date "2024.05.14"] [Round "?"] [White "AWIT 2009"] [Black "test"] [Result "*"] [ECO "A01"] [PlyCount "20"] 1.b3 g6 2.Bb2 Nf6 3.e3 Bg7 4.Nh3 O-O 5.Be2 d5 6.O-O e5 7.Bxe5 Bxh3 8.gxh3 Ne4 9.Bxg7 Kxg7 10.f3 Qg5+ * AwitWB is then stuck in what looks like a dead loop. Awit played manually has no issue playing the legal move 11.Kh1 Code:
Awit's move is: 10. Pf3 CPU= 0 ELAPSE= 0 ELA/MOVE= 16 LEFT(time= 87 moves= 31 ) LIMBS/SEC=36088 BLACK'S MOVE 10 Qg5 Awit = 2 MIN. USER = 1 MIN. 239077665 9A No more book New PV: g1h1 e4c5 f1g1 g5e5 b1c3 -99999 836 836 834 : 836 -99999 99999 : g1h1 8694 SCORED 243 / 260 POSNS. 1 / 1 DEPTH = 3 35 0 SEAR 1 79 1 TRUE FALSE 734 1 79 733 Awit's move is: 11. Kh1 CPU= 0 ELAPSE= 0 ELA/MOVE= 15 LEFT(time= 87 moves= 30 ) LIMBS/SEC=57960 AwitWB has no issue with the position, as it prints it correctly: Code:
182.453: < Awit's move is: 182.453: < 10. Pf3 182.469: < CPU= 4 ELAPSE= 3 ELA/MOVE= 1 LEFT(time= 89 moves= 31 ) LIMBS/SEC=31197 182.469: < BLACK'S MOVE 10 184.985: > time 58745 184.985: > otim 56860 184.985: > d8g5 185.000: < 185.000: < Awit = 0 MIN. USER = 0 MIN. 185.000: < 185.000: < 239077665 9A No more book 185.000: < Rb Nb :: Rb :: 185.000: < Pb Pb Pb :: Pb Kb Pb 185.000: < :: :: :: Pb :: 185.000: < :: :: Pb :: Qb 185.000: < :: :: Nb :: :: 185.000: < :: Pw :: Pw Pw :: Pw 185.000: < Pw :: Pw Pw Bw :: Pw 185.000: < Rw Nw QW :: Rw KW 185.000: < May 14 2024 09-MH2.0 WHITE'S MOVE 11. 185.000: < DISASTER, bad HASH AVOIDED 1 336 30702 3 585 425344734 -14066011 -399283876 185.000: < stack -14066011 185.000: < prior -1009141721 239077665 185.016: < k/m2/m3/m4/m5/ksq 1 14 13 7 7 0 185.016: < Rb Nb :: Rb :: 185.016: < Pb Pb Pb :: Pb Kb Pb 185.016: < :: :: :: Pb :: 185.016: < :: :: Pb :: Qb 185.016: < :: :: Nb :: :: 185.016: < :: Pw :: Pw Pw :: Pw 185.016: < Pw :: Pw Pw Bw :: Pw 185.016: < Rw Nw QW :: Rw KW 185.016: < May 14 2024 09-MH2.0 WHITE'S MOVE 11. [Client2Server] time := ?P otim := ?P And after this change, it worked: Code:
86.328: < Awit's move is: 86.328: < 10. Pf3 86.328: < CPU= 0 ELAPSE= 0 ELA/MOVE= 0 LEFT(time= 89 moves= 31 ) LIMBS/SEC=37476 86.328: < BLACK'S MOVE 10 93.218: > time 59509 93.218: < Rb Nb Qb Rb :: 93.218: > otim 56316 93.218: < Pb Pb Pb :: Pb Kb Pb 93.218: < :: :: :: Pb :: 93.218: > d8g5 93.218: < :: :: Pb :: :: 93.218: < :: :: Nb :: :: 93.218: < :: Pw :: Pw Pw :: Pw 93.218: < Pw :: Pw Pw Bw :: Pw 93.218: < Rw Nw :: QW :: Rw KW 93.218: < May 14 2024 09-MH2.0 BLACK'S MOVE 10. 93.218: < CONTINUE (Tracer ?P 59 exit): 93.218: < Rb Nb Qb Rb :: 93.218: < Pb Pb Pb :: Pb Kb Pb 93.218: < :: :: :: Pb :: 93.218: < :: :: Pb :: :: 93.218: < :: :: Nb :: :: 93.218: < :: Pw :: Pw Pw :: Pw 93.218: < Pw :: Pw Pw Bw :: Pw 93.218: < Rw Nw :: QW :: Rw KW 93.218: < May 14 2024 09-MH2.0 BLACK'S MOVE 10. 93.218: < CONTINUE (Tracer ?P 56 exit): 93.234: < 93.234: < Awit = 0 MIN. USER = 0 MIN. 93.234: < 93.234: < 239077665 9A No more book 93.359: < New PV: g1h1 e4c5 f1g1 g5e5 b1c3 -99999 836 93.359: < 836 834 : 836 93.359: < -99999 99999 : g1h1 93.359: < 8694 SCORED 243 / 260 POSNS. 1 / 1 DEPTH = 3 35 0 93.359: < 93.359: < SEAR 1 79 1 TRUE FALSE 734 1 79 733 93.359: < Awit's move is: 93.375: < 11. Kh1 93.375: < CPU= 0 ELAPSE= 0 ELA/MOVE= 0 LEFT(time= 89 moves= 30 ) LIMBS/SEC=65205 93.375: < BLACK'S MOVE 11 Eric |
Folgender Benutzer sagt Danke zu Tibono für den nützlichen Beitrag: | ||
kamoj (14.05.2024) |
|
|||||||||||
AW: Awit
thanks for testing and reporting the problem! No, I cannot reproduce it, here Awit plays on after Qg5. Indeed there is an issue with the otim command because Awit confuses everything with an O with castling somehow. That's why I added the line HTML-Code:
otim := <delete>
Note that in the inbetween.log the commands are visible also if they are not sent to the engine. Code:
182.922: < Awit's move is: 182.953: < 10. Pf3 182.953: < CPU= 0 ELAPSE= 0 ELA/MOVE= 0 LEFT(time= 89 moves= 31 ) LIMBS/SEC=46400 182.953: < BLACK'S MOVE 10 186.812: > time 719568 186.812: > otim 713418 186.812: > d8g5 186.859: < 186.859: < Awit = 0 MIN. USER = 1 MIN. 186.875: < 186.875: < 239077665 9A No more book 186.968: < New PV: g1h1 e4c5 f1g1 g5e5 b1c3 -99999 836 186.968: < 836 834 : 836 186.968: < -99999 99999 : g1h1 186.968: < 8694 SCORED 243 / 260 POSNS. 1 / 1 DEPTH = 3 35 0 186.968: < 186.968: < SEAR 1 79 1 TRUE FALSE 734 1 79 733 186.968: < Awit's move is: 187.000: < 11. Kh1 187.000: < CPU= 0 ELAPSE= 0 ELA/MOVE= 0 LEFT(time= 89 moves= 30 ) LIMBS/SEC=57960 187.000: < BLACK'S MOVE 11 Cheers, Alex |
|
|||||||||||
AW: Awit
Hallo Alex,
zuerst einmal vielen Dank für Deine Awit-WB-Version - das war sicher wieder viel Arbeit, weil dieser Engine-Output ja nochmal wesentlich komplizierter ist als der von CrayBlitz damals! Ich hab mich jetzt auch seit gestern damit beschäftigt, und ich hätte einige Anmerkungen (und eine Frage) dazu: 1) In der Batchdatei zur Erzeugung der AwitWB.ini wäre es nicht schlecht, vor der Abfrage von DEPTH diesen Wert auf einen Defaultwert zu setzen (z.B. set DEPTH=5). Falls da jemand nämlich nur Enter drückt, dann gibt's Probleme. 2) Wenn Du 'New PV:' durch 4 Nullen ersetzt (also New PV: := 0 0 0 0), dann wird in der Zugliste in Arena während des Rechenvorgangs (unter dem Brett) auch der erste Zug von Awit angezeigt und nicht erst der nächste gegnerische Zug. 3) Bei einer Bauernumwandlung in einen Läufer gibt's noch einen (allerdings sehr selten vorkommenden) Fall, wo Deine Methode nicht funktioniert, und zwar wenn diese Umwandlung zusätzlich auch noch ein Schlagzug ist. In diesem Fall zieht (bzw. schlägt) der Bauer ja schräg, und das kommt aber in Deinen Tabellen nicht vor. Die einfachste Lösung dafür ist, bei diesen Umwandlungen den 1.Buchstaben wegzulassen - also folgendermaßen: 7a8b := 7a8=B anstatt a7a8b := a7a8=B 7b8b := 7b8=B anstatt b7b8b := b7b8=B usw. (und natütlich auch für die andere Seite). Falls ich dabei nichts übersehen habe (bin noch nicht bis zu einer Umwandlung gekommen ), müßte das auch für Schlagzug-Umwandlungen in einen Läufer funktionieren. 4) Und zuletzt noch eine Frage: wie kommst Du bloß auf diese unendlich lange Ersetzungsliste am Ende Deiner AwitWB.ini, oder anders gefragt: wozu sind diese Ersetzungen denn nötig?? Der Awit-Output ist zwar extrem kompliziert, aber ich finde darin nirgendwo irgendwelche Einträge aus Deiner langen Liste (wie z.B. P/QR1, Q/ Q5, B-KN5 usw. ...), und darum frage ich mich, warum InBetween etwas ersetzen soll, was gar nicht vorkommt!? Aber vielleicht übersehe ich ja irgendeine Spezialfunktion dieser Awit-Engine? Ich habe jedenfalls diese lange Liste komplett entfernt, und kann keinerlei Probleme feststellen - es läuft alles wie es soll. Außerdem hat das dann auch noch den Vorteil, daß man nun keine eigenen Konfigurationen für Weiß und Schwarz mehr braucht, sondern es genügt eine für beide Seiten (wenn man beide Bauernumwandlungen einbaut). Ich hänge meine Config.bat mal an - kannst sie ja ausprobieren, wenn Du Lust hast. Und falls damit irgendwas doch nicht stimmt, dann bekomme ich sicher eine Rückmeldung. Grüße, Franz
__________________
Meine Webseite: https://fhub.jimdofree.com/ Geändert von fhub (15.05.2024 um 16:31 Uhr) |
|
|||||||||||
AW: Awit
Danke für deine Anmerkungen.
Doch, alle diese Zugformate sendet Awit von Zeit zu Zeit, sicher öfter als eine Unterverwandlung zum Läufer mit Schlagzug :-) Manchmal werden nicht die Koordinaten, angegeben, sondern das Feld in Bezug zur eigenen Figur, also KR4 ist das 4. Feld vor dem eigenen "Königsturm". Dabei gibt es noch die Formate als Bauernzug mit "/" und andere Züge mit "-", wobei ich nicht sicher bin was genau wann vorkommt, daher habe ich alle Fälle abgedeckt. P/KB4 bedeutet Bauer auf das 4. Feld vor dem Königsläufer und B-QN5 bedeutet Läufer auf das 5. feld vor dem Damenspringer... Und daher benötigt man auch die Konfigurationen getrennt nach der Farbe... Bei der Unterverwandlung mit Schlagzug zum Läufer hast Du recht, danke für den Hinweis. Tiefe 5 als Standartwert, und die Anzeige habe ich soweit geändert. Die Einstellung für die Tiefe schaue ich mir nochmal an, das funktioniert grundsätzlich nicht wie gewünscht. Die Rechentiefe scheint auch durch die anderen Parameter begrenzt zu werden, wenn ich diese aber ändere schmiert Awit ab. Geändert von AlexS (14.05.2024 um 20:24 Uhr) |
|
|||||||||||
AW: Awit
Also dann mußt Du wohl eine andere Awit-Version haben als ich, bei mir ist das noch nie vorgekommen.
Zitieren:
Die Einstellung für die Tiefe schaue ich mir nochmal an, das funktioniert grundsätzlich nicht wie gewünscht. Die Rechentiefe scheint auch durch die anderen Parameter begrenzt zu werden, wenn ich diese aber ändere schmiert Awit ab.
Das Problem (mit den anderen Parametern) ist, daß es nicht wirklich eine vernünftige Beschreibung des Programms gibt.
__________________
Meine Webseite: https://fhub.jimdofree.com/ |
|
|||||||||||
AW: Awit
Noch was:
Deine 'seltsamen' Züge sehe ich z.B. in der Datei 'AwitBook.txt' - allerdings wird die von Awit ja gar nicht verwendet und muß auch gar nicht existieren. Als Buch verwendet Awit die Datei 'AwitBook.dat', und darin kommen keine solchen Zugformate vor.
__________________
Meine Webseite: https://fhub.jimdofree.com/ |
|
|