Schachcomputer.info Community

Zurück   Schachcomputer.info Community > Schachcomputer / Chess Computer: > Die ganze Welt der Schachcomputer / World of chess computers


 
 
Themen-Optionen Ansicht

Prev Vorheriger Beitrag   Nächster Beitrag Next
  #10  
Alt 27.08.2016, 14:34
Benutzerbild von Supergrobi
Supergrobi Supergrobi ist offline
Revelation
 
Registriert seit: 12.07.2004
Ort: Hannover
Alter: 53
Land:
Beiträge: 702
Abgegebene Danke: 277
Erhielt 438 Danke für 112 Beiträge
Aktivitäten Langlebigkeit
0/20 20/20
Heute Beiträge
0/3 ssssss702
AW: Aktivschachpartien Millennium ChessGenius Pro

Hallo Leute,

wenngleich ich in dem leider geschlossenen Nachbarthread (https://www.schachcomputer.info/foru...ead.php?t=5201) nicht gepostet hatte, habe ich doch interessiert mitgelesen und fand, es waren einige interessante Hinweise auf den Ursprung der ChessGenius(Pro)-Engine dabei. Schade, daß ein paar Leute ihre Emotionen nicht im Griff hatten. Damit das nicht dazu führt, daß wir nun den Ursprung der Engine nicht mehr weiter untersuchen, versuche ich hier, an den konstruktiven Teil jener Diskussion anzuknüpfen.

Dieser Thread ist eigentlich nicht der richtige Ort - falls Interesse besteht, kann man vielleicht wieder einen neuen Thread erstellen „Millennium ChessGenius Pro - hier geht es weiter“ oder so ähnlich

Daß die MCG/CGP-Engine wenig Verwandtschaft mit dem London-Programm aufweist, hat ja eigentlich schon der BT-Test des MCG mit wenig Korrelation zum London gezeigt, und daher soll es in diesem Beitrag auch nicht um das Thema „London“ gehen.

Neben den London-Werbeaussagen war in erster Linie immer die Aussage seitens Millennium und wohl auch Richard Lang, daß in dem Gerät ein C-Programm werkelt, das der Android-Engine des ChessGenius entspricht, die wiederum eng verwandt/identisch mit iOS und Palm sein soll.

Da der Palm die älteste dieser Plattformen ist und es laut Äußerungen des geschlossenen Threads in den Changelogs der iOS/Android-Versionen keinen Hinweis auf eine Änderung an der Engine gibt, untersuche ich hier die Palm-Historie.

Als Palm in den 90er Jahren die ersten Handhelds herausbrachte, lief darauf ein Motorola Dragonball-Controller mit 68000er-Kern. Die schnellsten Derivate, die 2000/2001 herauskamen, waren immerhin mit 32MHz getaktet, der Rest war langsamer. Speicher war auch immer knapp und nicht mit heutigen Systemen vergleichbar.

Im Jahr 2002 kam dann der erste Palm mit ARM-CPU (Intel XScale) heraus (s. auch https://de.wikipedia.org/wiki/HP_Palm), und damit die alten Programme darauf noch liefen, konnte PalmOS 5 diese auf dem neuen Prozessor emulieren - mit Geschwindigkeitseinbußen, aber immerhin… Und nach und nach kamen dann native ARM-Applikationen heraus, die die Geschwindigkeit des Prozessors voll nutzen konnten.

Chess Genius war bereits zu 68000er-Zeiten auf dem Palm verfügbar. Aus dieser Zeit (späte 1990er/frühe 2000er Jahre) stammt die Aussage, daß aufgrund des geringeren Speicherbedarfs, und weil die Palms damals ja noch ziemlich langsam waren, nicht eine aktuelle Version der 68000er-Engine, sondern eine Roma-Version als Basis für ChessGenius auf dem Palm genommen wurde. (s. auch http://chessgenius.com/palm/faq.htm unter „Is ChessGenius for the Palm Computing® platform an actual World Champion Chess program?“ - das wurde auch bereits im geschlossenen Thread geschrieben.)

Der interessante Punkt ist, was danach geschah. Nach Einführung des ARM mußte Lang sein Programm umschreiben. Zum besseren Verständnis sei noch einmal darauf hingewiesen, daß ein Assembler-Programm nicht einfach wie ein in einer Hochsprache vorliegendes Programm für einen anderen Prozessor neu kompiliert werden kann; stattdessen muß man das Programm Befehl für Befehl neu schreiben.

Richard Lang konnte für diese Übersetzung wieder den Roma als Basis nehmen, aber es standen ihm auch zahlreiche andere Möglichkeiten zur Verfügung, um eine „Vorlage“ auszuwählen. Es gab auf dem PC nicht nur das „London“-Programm (Chess Genius 3.0 DOS), sondern auch noch einige modernere Versionen, die angeblich auch einen deutlich aggressiveren Spielstil hatten (zumindest Chess Genius 4 und 6.5 sagte man das nach). Und die Geschwindigkeits- und Speicherplatz-Limitierung der frühen Palms war ja nun auch nicht mehr gegeben.

Lang selbst schreibt auf der oben verlinkten Palm-FAQ-Seite „The new ARM engine is a modern chess engine which supports hash tables and is much stronger.“ (Und nichts mehr von Roma wie bei der 68000-Engine, allerdings auch nichts von London.)

Bei der Beschäftigung mit diesen Themen habe ich mich daran erinnert, daß ich von früher auch noch einen Palm habe (Palm T|X), auf dem allerdings nur eine Demo-Version von ChessGenius (Version 2.20) installiert ist. Das Tolle für uns ist, daß man zwischen den beiden erwähnten Engines (68000 emuliert und ARM) umstellen kann und sogar im Programm einen kleinen Beschreibungstext erhält:

Zur 68000-Version steht da: „Die Standardmaschine verwendet den derzeitigen Code des 1987 Weltmeisterprogramms.“
Und zur ARM-Engine: „Die ARM Engine läuft nativ auf dem ARM Prozessor. Sie ist Hunderte von ELO Punkten stärker als die Standard Engine.“

Scheinbar hat das „C-Programm“ (ARM-Engine) und die alte 68000er-Version (egal ob nun Roma/Amsterdam/Psion) nicht viel miteinander zu tun?!

Zur Überprüfung habe ich mal einen einfachen Test gemacht.
Nach 1.f3 e5 2.g3 ist sowohl ChessGenius Palm als auch Millennium ChessGenius aus dem Buch und muß rechnen.

Da bei meiner Demo-Version in größeren Rechentiefen auf der ARM-Engine nichts mehr angezeigt wird, habe ich die Analyse auf eine Rechentiefe von 7 Halbzügen bezogen, nur die 68000-Engine habe ich noch ein bißchen länger rechnen lassen.

Hier die Ergebnisse:

Code:
Palm 68000 Engine:      07 0.52 d5 e4 dxe4 fxe4 Sf6 Sc3 Lg4
                        09 0.36 d5 e3 Lb4 f4 Sc6 Lb5 e4
                        09 0.40 Sc6 e4 Sf6 Sc3 d5 exd5 Sxd5
Palm ARM Engine:        07 0.68 d5 e3 Lf5 Sc3 d4 Ld3 Le6
Millennium ChessGenius: 07 0.71 d5 e3 Lf5 Sc3 d4 Ld3 Le6
Sowohl MCG als auch die ARM-Engine zeigen die gleiche zweifelhafte Hauptvariante mit Le6 statt Lxd3 mit Figurengewinn, bei nur minimal abweichender Bewertung. Das 68000er-Programm zeigt hingegen auch nach längerer Rechenzeit ganz andere Varianten und eine abweichende Bewertung.

Hier ein zweiter Test: 1.h4 e5 2.h5

Code:
Palm 68000 Engine:      07 0.16 d5 e3 Sc6 Sf3 e4 Sd4 Le7
                        09 0.68 d5 e3 Sc6 Lb5 Lb4 c3 Le7
Palm ARM Engine:        07 0.48 Sc6 e3 d6 Sc3 Sf6 Sf3
                        08 0.40 Sc6 e3 Lc5 Sc3 d6
Millennium ChessGenius: 07 0.42 Sc6 e3 d5 Lb5 Lf5 d4 Lb4 
                        08 0.42 Sc6 e3 Lc5 Sc3 d6
Auch hier sind die ARM-Engine des Palm-Genius 2.20 und der MCG zwar nicht komplett identisch, aber doch sehr ähnlich, während die 68000er-Engine ganz andere Bewertungen und Varianten zeigt.

Da meine Demo-Version nicht so lange rechnen kann, werde ich wohl kaum weiterführende Untersuchungen anstellen können und hoffe darauf, daß es im Forum noch Leute gibt, die einen ARM-basierten Palm mit lizensiertem ChessGenius besitzen.

Die bislang durchgeführten, flüchtigen Untersuchungen scheinen zwei Dinge zu belegen:
  1. Die Engine des MCG/MCGPro ist tatsächlich zumindest sehr nah verwandt mit der ARM-Engine für Palm.
  2. Die ARM-Engine für Palm (und somit auch die des MCG/CGP) basiert wohl nicht auf der ursprünglich verwendeten 68000-Engine, die auf dem Roma-Programm basieren sollte.

Womit noch immer nicht klar ist, woher dieses „C-Programm“ (ARM-Engine) denn nun kommt…

Ich möchte noch kurz auf Postings im geschlossenen Nachbarthread eingehen, die eine Verwandtschaft des MCG/Pro mit Amsterdam/Roma/Psion belegen sollten und somit im Widerspruch zum eben Gesehenen zu stehen scheinen:

Michas Testposition (https://www.schachcomputer.info/foru...&postcount=167) fand ich sehr interessant, aber letztlich nicht beweiskräftig, da die späteren Lang-Programme den Fehlzug auch aufgrund anderer Erwägungen mit nur wenig schlechterer Bewertung verwerfen können, wie Wolfgang gezeigt hat (s. https://www.schachcomputer.info/foru...&postcount=231). Eine kleine Änderung der allgemeinen Bewertungskriterien könnte unter solchen Umständen dazu führen, daß der Fehlzug doch wieder ausgeführt wird.

Saschas Erwähnung der Greco-Stellung (s. https://www.schachcomputer.info/foru...&postcount=376) fand ich wirklich bemerkenswert - man hätte wohl kaum gedacht, daß ein neuerer Lang-Computer statisches „Wissen“ dieser Art verlieren könnte. Andererseits ist das Herausstreichen von statischem „Wissen“ zugunsten der möglichen Erreichung größerer Rechentiefen ja ein moderner Ansatz, der auch zur Zeit der Entstehung der ARM-Engine schon modern wurde. Ich halte es jedenfalls nicht für unmöglich, daß Lang dieses Wissen in der ARM-Version gestrichen haben könnte.

Womit soll man die ARM-Engine also vergleichen? Vielleicht mit einem späteren Lang-DOS-Programm? Ich besitze leider keine späten PC-Genius-Versionen, um in diesem Bereich Vergleiche anzustellen. Möglicherweise ist die ARM-Engine auch etwas komplett Neues (Stand 2002) bzw. Eigenes und versucht, das Schachwissen durch Suchtiefe zu ersetzen, was ja auch 2002 schon „in“ war. Damit ließen sich evtl. manche Aussetzer der neuen Geräte erklären, denn die Engine ist (wenn die Annahme stimmt) für viel schnellere Geräte und somit größere Suchtiefen ausgelegt.

Vielleicht werden wir niemals die Herkunft zweifelsfrei beweisen können, und müssen uns damit abfinden, hier etwas „eigenes“ zu haben.

Viele Grüße,
Dirk

Geändert von Supergrobi (27.08.2016 um 14:46 Uhr) Grund: Tabelle aufgeräumt
Mit Zitat antworten
Folgende 8 Benutzer sagen Danke zu Supergrobi für den nützlichen Beitrag:
Chessguru (27.08.2016), Egbert (27.08.2016), Fluppio (27.08.2016), Mapi (27.08.2016), paulwise3 (27.08.2016), RetroComp (27.08.2016), Theo (28.08.2016), Wolfgang2 (27.08.2016)
 


Forumregeln
Du bist nicht berechtigt, neue Themen zu erstellen.
Du bist nicht berechtigt, auf Beiträge zu antworten.
Du bist nicht berechtigt, Anhänge hochzuladen.
Du bist nicht berechtigt, deine Beiträge zu bearbeiten.

BB code ist An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.

Gehe zu

Ähnliche Themen
Thema Erstellt von Forum Antworten Letzter Beitrag
Tipp: Millennium ChessGenius kosakenzipfel Die ganze Welt der Schachcomputer / World of chess computers 319 13.08.2016 18:59
Turnier: Aktivschachpartien mit dem Millennium ChessGenius Supergrobi Partien und Turniere / Games and Tournaments 18 24.07.2016 09:15
Frage: Adapter Millennium ChessGenius Ingo Zahn Die ganze Welt der Schachcomputer / World of chess computers 5 04.01.2016 19:58
Partie: Spießrutenlauf: Millennium ChessGenius Fluppio Partien und Turniere / Games and Tournaments 13 27.10.2015 13:13
Tipp: ChessGenius José Die ganze Welt der Schachcomputer / World of chess computers 3 31.08.2015 15:19


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:09 Uhr.



Powered by vBulletin (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
©Schachcomputer.info