Logo "blaue" Seiten

 
 
 
 
- Anzeige -
Für den Erwerb von Schachartikeln empfiehlt Ihnen der SC Leinzell den
 Schachversand Dreier 
 
 
Testen Sie Ihr Schach!
 
Diagramm 18-2006
 
Diagramm 18 – 2006
Hier wurde eine »Schachmaschine« demontiert. Wie zerlegte Weiß am Zuge die misslungene schwarze Partieanlage?
 zur Lösung 
 
 
 
 
zur Startseite
 News | Sitekalender | Sitemap | Team | Kontakt 
Rochade-EuropaPeter Schreiner
 
 
Shredder 5.0 - das Weltmeister-Programm!
besprochen von Peter Schreiner - Dezember 2000 - Teil 3
 
 
Multi-Engine-Funktionen
Das System bietet im Zusammenhang mit dem Multi-Engine-Konzept zahlreiche nützliche Funktionen, die sowohl für den Anwender als auch für Autoren von WB/UCI-Engines interessant sein dürften. Auf Anhieb fällt einem im Menü OPTIONEN der neu hinzugekommene Menüpunkt ENGINES auf, wo sich sämtliche Funktionen befinden, die im Zusammenhang mit dem Multi-Engine-System stehen. Man kann z.B. Engines wechseln, hinzufügen, modifizieren, installieren, deinstallieren usw.
 
Kommen wir zuerst einmal zu einer der häufigsten Anwendung eines Schachprogramms: der Hintergrundanalyse, wo der Anwender Züge eingibt oder Partien nachspielt, während eine Engine im Hintergrund rechnet. Unter der Oberfläche von Shredder 5 können maximal 10 (!) Engines parallel laufen. Wenn Sie dieses Limit ausschöpfen wollen, sollten Sie allerdings einen üppig ausgestatteten Rechner mit viel RAM zu Hause stehen haben.
 
Für Programmentwickler und viele Anwender interessant, ist die Option, Enginematches unter der Oberfläche von Shredder 5.0 auszutragen. Die Partien werden automatisch in einer vom Benutzer anzugebenden Datenbank gespeichert. Experimentierfreudige Naturen kommen ebenfalls auf ihre Kosten. Shredder 5.0 bietet die Option, nachhaltig an den Bewertungsparametern einer UCI-Engine "drehen". Dies bedeutet im Klartext, dass der Anwender auf der Basis einer existenten UCI-Engine beliebig viele "Engines" kompilieren kann.
 
Im Unterschied zum Vorgänger wird diese modifizierte Engine nicht mehr als Spielstil, sondern im Ladedialog quasi wie eine eigenständige Engine behandelt. Dies bedeutet, dass der Anwender beim Speichern der Modifikation an der Engine seinen Namen als Autor eingeben kann. In der Textdatei mit der Endung *.ENG, die für das System eine Engine repräsentiert, können die Einstellungen eingesehen werden. Im Lieferumfang des Produkts sind hierzu bereits mehrere modifizierte Muster, wie z.B. ein "Gambit Shredder" usw. vorhanden. Es versteht sich von selbst, dass der Anwender die von ihm selbst vorgenommenen Modifikationen mit Hilfe der Enginematches gegen andere Engines austesten kann.
 
Kommen wir zu einer weiteren Verbesserung. Eröffnungsbibliotheken werden - wie bereits beim Vorgänger - unter Shredder 5.0 in Form eines Positionsbaums verwaltet. Die konzeptionellen Vorzüge eines Positionsbaums haben wir schon häufig besprochen. Die Stärke des Konzeptes liegt vor allem darin, dass man eine Vielzahl von wichtigen Detailinformationen zu der aktuellen Eröffnung erhält und komfortabel Erweiterungen und Ergänzungen vornehmen kann. Das Setzen der Ausspielpräferenzen ist unter Shredder 5 sehr anwenderfreundlich und transparent umgesetzt worden. Wir wollen an dieser Stelle nicht zum wiederholten Male die Vorzüge des Positionsbaums beschreiben und verweisen auf unseren Review Eröffnungsbäume.
 
Unter Shredder 5 bietet der Positionsbaum eine essentiell wichtige Erweiterung: der Anwender kann innerhalb der Bibliothek neben den bekannten Kürzeln wie !,? usw. bestimmte Züge mit ausführlichem Text kommentieren! Um einen Textkommentar einzufügen, genügt ein simpler Rechtsklick auf den zu kommentierenden Zug im Buchfenster, die Buchkommentare werden dann unter dem Reiter "Kommentare" angezeigt. Zusätzlich werden die Textkommentare zur besseren Übersicht direkt im Analysefenster angezeigt.
 
Die Textkommentare zu der Eröffnungsbibliothek werden in der extern ausgelagerten Datei "Shredder.bkc" gespeichert. Dies hat u.a. den großen Vorzug, dass die Textkommentare nicht für eine bestimmte Bibliothek, sondern global für mehrere Bücher einsetzbar sind! Die Vorzüge des Konzeptes sind aus unserer Sicht:
  1. Das Eröffnungsrepertoire ist für einen aktiven Schachspieler, wie auch für Entwickler von Schachprogrammen von elementarer Bedeutung. Mit der Kommentierungsfunktion steht jetzt ein sehr leistungsfähiges Tool bereit, um während der Entwicklungsphase mit Hilfe von Textkommentaren die Übersicht zu behalten. Ein Kommentar wie z.B. "hier muss ich noch die Abweichung xy berücksichtigen usw." dürfte sicherlich bei der Weiterentwicklung eigener Bücher sehr hilfreich und nützlich sein.
  2. Da die Textkommentare in einer externen Datei ausgelagert sind, kann ein Entwickler diese Anmerkungen im Team anwenden, also potentiellen Autoren einer Bibliothek Anmerkungen zusenden, die direkt auf dem Screen angezeigt werden.
  3. Ein weiteres Plus der externen Datei: viele Autoren werden kaum Wert darauf legen, dass Anwender oder Konkurrenten über den Entwicklungsverlauf informiert werden. Abhilfe ist in diesem Fall ganz einfach: die Datei "Shredder.bkc" wird einfach gelöscht oder zumindest nicht weitergegeben.
Erstes Fazit: die Schnittstelle zu dem Multi-Engine-System wurde überzeugend umgesetzt. Es werden hier zahlreiche Funktionen angeboten, um Engines auszutesten und damit zu experimentieren. Zum Multi-Engine-Konzept würde ich auch die Schnittstelle zum Autoplayer einordnen. In der Vergangenheit gab es zwischen Shredder-Distributor Ossi Weiner und der SSDF einige Diskussionen, als sich herausstellte, das ein großer Teil der Partien von Shredder in der SSDF nicht mit den optimalen Settings (z.B. mit eingeschalteter Sprachkommentierung) gespielt wurden.
 
Shredder 5.0 setzt im Autoplayermodus seine Settings automatisch auf die bestmöglichen Einstellungen zurück und verhindert damit eventuelle Fehler des Anwenders. Gleichzeitig wurde das Autoplayer-Protokoll jetzt etwas erweitert, z.B. gibt Shredder 5.0 aussichtlose Partien auf und es ist möglich, sogenannte Nunn-Matches mit vorgegebenen Eröffnungspositionen im Autoplayermodus zu spielen oder Partien manuell abzuschätzen. Kommen wir nun aber zum Highlight des Multi-Engine-Konzeptes von Shredder 5.0, dem Dreihirn oder Triple Brain.
 
 
Das Triple Brain
Die Integration des Multi-Engine-Konzeptes ermöglichte ein völlig neues Feature, das bisher noch bei keinem anderen kommerziellen Schachprogramm integriert wurde: das Dreihirn oder in der Shredder Terminologie "Triple Brain". Dabei laufen zwei "normale" Engines parallel. Das Entscheidermodul "Triple Brain" analysiert fortlaufend die Zugvorschläge der beiden Engines und wählt dann aus eventuell unterschiedlichen Bewertungen die vermeintlich bessere Alternative aus. Die beiden aktiven Engines schicken dazu dem "Triple Brain" ihre Informationen aus dem Suchvorgang, wie z.B. die Rechentiefe, die Stellungsbewertung und natürlich auch die Hauptvariante.
 
Man kann in Shredder jede beliebige Engine, egal ob UCI- oder Winboard-Engine, dazu verwenden. Man sollte jedoch darauf achten, dass beide Engines ungefähr gleich stark sind, da das 3-Hirn sonst nicht wissen kann, welchen Vorschlägen es mehr vertrauen kann. Im Idealfall sollten beide Engines auch noch einen unterschiedlichen Spielstil haben. Nur in diesem Fall kann das Dreihirn seine Stärke ausspielen und aus zwei Alternativen die bessere auswählen. Wenn beide Engines immer dasselbe spielen wollen, gibt es für das Triple Brain natürlich nichts zu entscheiden ...
 
Die Grundidee für diese Konzeption ist nicht neu. Wir haben in den vergangenen Jahren häufig über die Experimente von Prof. Ingo Althöfer berichtet, der lange Zeit mit einem ähnlichen System experimentiert hat. Er ließ zwei Programme im Analysemodus laufen und bestimmte jeweils von Hand, welcher Zugvorschlag auf das Brett kam. Diese Kombination war sehr erfolgreich und spielte auf einem viel höheren Niveau als jede der vorhandenen "Einzelkomponenten", also die beiden verwendeten Engines oder eben Prof. Althöfer.
 
Beim Triple-Brain-Modul unter Shredder 5.0 fällt nun die Rolle des Entscheiders ebenfalls dem Computer zu. Die Informationen des Triple-Brain-Moduls werden unter Shredder in einem eigenen Analysefenster angezeigt. Das System eignet sich wunderbar, um bei der Analyse ganz eigene Wege zu gehen und zu experimentieren. Leider wurde das Triple Brain erst unmittelbar vor Redaktionsschluss in Shredder implementiert, so das es noch viel zu früh für eine endgültige Bewertung des Konzeptes ist. Prinzipiell stellt sich natürlich die Frage, wie das System überhaupt funktioniert und ob das Triple Brain in der Lage ist, den Erfahrungshorizont eines menschlichen Spielers bei der Auswahl der Züge zu kompensieren.
 
Im Grunde genommen ist es auf jeden Fall relativ einfacher, zu einer vernünftigen Beurteilung zu kommen, wenn man zwei nachweislich gute Zugvorschläge (starke Engines!) hat, als wenn zuerst noch im Variantengestrüpp eine brauchbare Fortsetzung gesucht werden muss. Erfahrungsgemäss hat jede Engine Stärken und Schwächen. Wenn das Triple Brain wirklich in der Lage sein sollte, die Stärken der beiden aktiven Engines zu betonen und miteinander zu kombinieren, während gleichzeitig die Schwachstellen von dem Modul erkannt werden, dann bietet dieses Konzept wirklich alle Voraussetzungen, um sich als echte Neuerung in der Schachprogrammierung zu etablieren. Wie bereits erwähnt, ist eine endgültige Bewertung aufgrund fehlender Erfahrungswerte momentan noch nicht möglich.
 
Das komplette Zeitmanagement wird ebenfalls vom Triple Brain übernommen. Auch hier bieten sich neue Möglichkeiten, denn wenn beide Engines erkennen, dass der Zug xy eindeutig ist, kann man wohl ohne große Gefahr etwas Bedenkzeit sparen und früher ziehen. Wird eine Stellung hingegen von den beiden Engines als komplex und kompliziert bewertet, wird vom Dreihirn deutlich mehr Zeit für die Suche nach einem guten Zug investiert. Auch diese Vorgehensweise ist mit dem Dreihirn von Prof. Althöfer identisch, der bei seinen Experimenten die Zuweisung und Entscheidung über die Bedenkzeiten übernahm, während die Engines im Analysemodus liefen.
 
Der Vorteil des Dreihirns ist in taktischen Stellungen wohl am offensichtlichsten, denn selbst wenn zwei Schachprogramme in etwa gleich stark spielen, haben sie sehr häufig völlig unterschiedliche Lösungszeiten. Manche Stellung ist für ein Programm ein "Buch mit sieben Siegeln", während die zweite Engine für die korrekte Lösung nur ein paar Sekunden braucht. Im Idealfall sollte es also so sein, dass das 3-Hirn den korrekten Zug ausspielt, sobald die erste Engine die richtige Lösung anzeigt. Dies klappte in ein paar stichprobenartig ausgewählten Teststellungen auch wirklich erstaunlich gut.
 
Was aber macht das Dreihirn in Stellungen, in denen es keine konkrete taktische Lösung gibt? Nun, auch hier verhalten sich alle Schachprogramm sehr unterschiedlich. Es kann vorkommen, dass Engine X planlos agiert, während Engine Y schon einen konkreten Plan gefunden hat, wie es in der Stellung nun weiter gehen soll. Das Verfahren funktioniert im Grunde genommen wie zuvor beschrieben, ist aber für den Anwender etwas weniger transparent als in taktisch geprägten Stellungen. Als etwas kritisch könnte man höchstens die Tatsache ansehen, dass sich die beiden Schachengines die Ressourcen eines Prozessors teilen müssen, also nur mit "halber" Kraft spielen.
 
Ich persönlich bin aber der Ansicht, dass das neue Konzept trotzdem überzeugt. Letztendlich kann man hier eine Vielzahl von Engines miteinander kombinieren, es bietet also unendlich viel Spielraum für Experimente und regt dadurch vielleicht zu einer konstruktiveren Herangehensweise bei der Analyse von Partien an, als dies mit Engineturnieren usw. möglich ist. Auf Dauer wird es auch interessant sein, welche Engines besonders gut miteinander harmonieren: Spielen Shredder und Gandalf oder besser SOS und Nimzo zusammen?
 
 
zum Seitenanfang zurück | Teil 4