Mephisto III
Mephisto III | ||
---|---|---|
![]() C Picture by Sascha Warnemünde | ||
Hersteller | Hegener & Glaser | |
Markteinführung | 1983 | |
CElo | 1507 | |
Programmierer | Nitsche, Thomas & Henne, Elmar | |
Prozessor | 1802,(1806) | |
Prozessortyp | 8 Bit | |
Takt | 6,1 MHz | |
RAM | 4 KB | |
ROM | 32 KB | |
Bibliothek | >500 Varianten | |
Einführungspreis | 400€ | |
Rechentiefe | 21 Halbzüge | |
BT-2450 | ||
BT-2630 | ||
Colditz | 1470 | |
Verwandt | Mephisto MM I, Mephisto III-S Glasgow, Mephisto Excalibur, Revelation, Revelation II | |
Zugeingabe | Tastatur bzw. Magnetsensoren (ESB 6000, ESB 3000) | |
Zugausgabe | Display bzw. 64 Feld-LEDs (ESB 6000, ESB 3000) | |
Display | 4-stellige 7-Segment Anzeige | |
Stromversorgung | Batterie = 4 x AA, | |
Spielstufen | 8 x Durchschnittszeit und Analyse | |
Maße | 17 x 11 x 4 cm | |
Sonstiges | ||
| ||
Level Info | ||
Bedenkzeit | Level | |
30 Sek. / Zug | ~3 | |
30 Min. / Partie | - | |
60 Sek. / Zug | 4 | |
60 Min. / Partie | - | |
Turnier | 6 | |
Analyse | 9 |
![]() |
Der auf dem Bild angezeigte Wert 0612 ist die Anzahl der berechneten Stellungen nach etwa 6 Minuten (aus der Grundstellung im Level 9 Berechnung nach 1.f3). |
Nachtrag 01.01.2016:
Mittlerweile haben wir nun auch exakte Werte, mit denen verschiedene Geräte genau identifiziert werden können:
Mephisto III 3,5MHz: 376 Stellungen nach exakt 6 Minuten
Mephisto III 6,1MHz: 623 Stellungen nach exakt 6 Minuten
Mephisto III 11MHz: 1184 Stellungen nach exakt 6 Minuten
Mephisto III 12MHz "Special": 1280 Stellungen nach exakt 6 Minuten
Excalibur "Serie" 8MHz: 2026 Stellungen nach exakt 6 Minuten
Excalibur "WM Version New York" 8MHz: 2028 Stellungen nach exakt 6 Minuten
Die Abfrage erfolgt über: Info-Taste, C3-Taste, 0-Taste, 0-Taste
![]() |
Das Speicher Modul des Vorgängers Mephisto II (links, Innenansicht des IIIer Moduls Typ b) funktioniert auch im Mephisto III Grundgerät. Und umgekehrt natürlich auch! Es scheint allerdings neuere IIIer Grundgeräte zu geben, in denen das IIer Modul nicht korrekt läuft.
Interessant ist auch die Tatsache, daß in einigen (nicht allen) späteren IIIer Grundgeräten (Ser. No 5xx xxx) der Prozessor 1806 statt des 1802 verbaut war |

Das Mephisto III Programm findet sich auch im Einschub Mephisto MM I für die Modulare Reihe wieder. Wesentlicher Unterschied war die Benutzung des Prozessors 1806 mit 8 MHz.
Es gibt 2 Versionen des Mephisto III Programms: die frühere Version III a enthält einen Bug in der Problemlösestufe. Nur die Version III b spielt aktiv e4 e6 in der Eröffnung. Man kann die Versionen auch mit einem Blick in das geöffnete Programmmodul unterscheiden: die a-Version wird in 2 EPROMs gespeichert, die B Version befindet sich in einem ROM, (die jeweils 2 zusätzlichen Bausteine sind RAMs, d.h. die Module enthalten 4 bzw 3 Chips)
Auf Wunsch konnten die neueren Grundgeräte des Mephisto II bzw Mephisto III (6.1 MHz-Versionen) auf 12 MHz umgerüstet werden, liefen dann aber nur mit IIIer Modul. Dazu wurde der Prozessor CDP 1802 gegen einen CDP 1805 ausgetauscht und die Bordelektronik geringfügig modifiziert (Versorgungsspannung bei Netzbetrieb erhöht). Bei Batteriebetrieb laufen diese Geräte wie gewohnt mit 3.5 MHz. Statt der für die 6.1 MHz-Version typischen ca 1.8 Stellungen/s kommt ein 12 MHz Brikett auf ca 3.4 Stellungen/s. Zum Vergleich: ein Mephisto MM I 8 MHz schafft 2,3 Stellungen/s, ein Mephisto III-S Glasgow (68000, 12 MHz) schafft hingegen 8/s !
Das Mephisto III-Projekt
von Thomas Nitsche
Aus der Schach Zeitschrift "Schach-Echo" 7/1984 eingescannt und aufbereitet.
![]()
|
Die Autoren
Elmar Henne (29 Jahre, Diplom Informatiker) und Thomas Nitsche (31 Jahre, Diplom Mathematiker) sind Mitbegründer der Münchner Software Firma P1 GmbH. Seit einigen Jahren befassen sie sich intensiv mit der Entwicklung von Schachprogrammen. Unter anderem haben sie 1980-1982 Experimentalprogramme für den BTX-Einsatz, sowie den Parallelrechner SMS 201 von Siemens entwickelt.
Seit 1980 arbeiten P1 und Hegener + Glaser eng im Bereich der Mephisto Schachcomputer-Entwicklung zusammen. E.Henne und T.Nitsche haben dabei von Anfang an die Programme Mephisto 1, 2 und 3 entworfen und realisiert, wobei z.B. die Eröffnungsbibliothek mit Hilfe von Ossi Weiner entstand. Neuerdings zeichnet P1 in Zusammenarbeit mit R.D. Klein, vielen aus der NDR-Informatik-Serie und von seinen Büchern her bekannt, auch für die Entwicklung der "schnellen"-bzw. der Mephisto-Experimental-Hardware, verantwortlich.
Der Anfang

Sommer '81 standen wir vor der Notwendigkeit ein neues Mephisto Schachprogramm zu konzipieren. Zwar war Mephisto II ein gutes Programm, aber erstens geht die Entwicklung weiter und zweitens hatten wir das Gefühl, dass trotz laufender Verbesserungen eine Grenze absehbar war. Etwas Neues mußte passieren.
Vorstellungen davon, wie Mephisto III aussehen könnte, hatten wir bereits:
- er sollte noch mehr dem Menschen vergleichbar Schach spielen.
Sorgfältig begannen wir, Mephisto III zu planen. Alles, was uns einfiel, wurde aufgeschrieben. Insbesondere hatten wir eine Mephisto III Eigenschaftsliste aufgestellt, die all das enthalten sollte, was wir uns für die Zukunft unter einem guten Schachprogramm vorstellten. Sicherlich waren und sind die Ziele hochgesteckt, doch mit weniger wollten wir uns nicht zufrieden geben. Uns war klar, dass die Brute-Force-Programme nur noch minimal zu steigern seien.
- Der jetzige Weltmeister Cray-Blitz verlor erst kürzlich 4Partien klar gegen David Levy (etwa 2300 Elo). Anzumerken ist, dass Cray-Blitz mit einem Rechner arbeitet, der etwa 200 mal schneller rechnet, als der 1806-Micro-Prozessor des Mephisto.
Mephisto III Ziele
- Klare Unterscheidung zwischen einer ruhigen und einer dynamischen Stellung.
- Das Programm soll in der Lage sein zu planen und zielgerichtet zu handeln (z.B. Bauerndurchmarsch).
- Die Stellungsbewertung soll Feinheiten in jeder Tiefe des Baumes erkennen (z.B. rückständige Bauern).
- Taktisch erzwungene Zugfolgen sollen durchgerechnet werden. Taktische Wendungen am Ende einer solchen Zugfolge sollen erkannt werden. Insbesondere sollen lange Mattkombinationen gesehen werden.
- Abspiele in positionell vorteilhafte Stellungen sollen erkannt werden (z.B. gewonnenes Endspiel).
- Opferkombinationen der eigenen Seite wie des Gegners sollen gesehen werden.
- Bei Abspielen (erzwungene Zugfolgen) soll der Baum nicht exponentiellen Charakter haben.
- Der Horizonteffekt soll weitgehend eliminiert werden.
Die technischen Aspekte

In Verbindung mit der Ziel-Vorgabe war ein weiteres Problem zu lösen. - Die Wahl der Programmiersprache. Assemblerprogrammierung kam nicht in Frage, denn unsere Zielvorgaben enthalten insbesondere die Forderung nach viel Schachwissen, welches aber in adäquater Zeit nur mit einer angepaßten höheren Sprache zu lösen ist. PASCAL, von uns in anderen Bereichen bevorzugt, schied aus, dazu ineffiziente ablauffähige Programme entstehen (Faktor 5-6 gegenüber Assembler), ebenso "Nicht-Sprachen" wie BASIC, FORTRAN etc. In einem kleinen Fachzeitungs-Artikel stießen wir auf CDL2, das unseren Forderungen sehr nahe kam:
Effizienz
nur Faktor 1,5-2,0 langsamer als Assembler.
Möglichkeit der angepaßten Formulierung
hohe Sprach-Konstrukte, wie etwa Freibauer, rückständiger Bauer etc. sind direkt und bequem, nach einmaliger Definition, im Programm als Begriffe verfügbar.
Portabilität
Die Anpaßbarkeit an neue Prozessoren ist mit vertretbarem Aufwand möglich, so dass Mephisto III gleichzeitig in der jeweils neuesten Programm-Version auf 3 verschiedenen Ziel-Prozessoren läuft: DEC PDP11 (als Test-und Trace-Version), RCA 1806 (als Markt-Normal-Version) und Motorola 68000 (als Spitzen-Version).
Einige Sätze zu den mehr technischen Teilen des Programms. Sicherlich stellt die Art der legalen Zuggenerierung mit all ihren Facetten (schnell/langsam, legal/pseudolegal) ein Problem dar. Dies ist aber bei Mephisto III im Vergleich zu der schachlichen Seite stark in den Hintergrund getreten; schließlich wußten wir nach M1 und M 2 ziemlich genau, wie ein effizienter Zuggenerator auszusehen hat. Etwas aufwendiger war da schon die EA-Konzeption. Der Ruf nach Systematik, Klarheit und Einfachheit wurde laut.
Folgende gänzlich neue Zielvorgaben waren zu beachten
- Die Information über das Spielgeschehen ist jederzeit, (unabhängig, ob der Computer am Zug ist oder nicht) abrufbar.
- Die Benutzereingaben sind durch eine Menüwahl gekennzeichnet, die klar unterschiedene Bereiche des Programms ansprechen.
- MEMO: Spielhistorie, Züge vor und zurück etc.
- POS: Kontrolle der aktuellen Spielsituation, neue Stellung aufsetzen etc.
- LEV: Kontrolle der Spielweise Level, Problem, Zufall, Zeitverhalten etc.
- INFO: Information über die aktuelle Zugentscheidung, Hauptvariante, Wert, Zeit, Knoten, Tiefe etc.
Menschliche Spielweise und der erste Blick
Stellen Sie sich vor, Sie rechnen eine Schach-Kombination durch. Sie haben einen netten Schlüsselzug gefunden, etwa eine Gabel mit Opfer, und der Gegner hat nur wenige Antworten. Bei ihnen und bei Mephisto wird jetzt vor allen Dingen eine Fähigkeit gefordert:
- Auf einen "ersten Blick" zu entscheiden, welche vernünftigen Züge es für den Gegner gibt und was es darauf lohnt, weiterzuspielen.
Gibt es in einer Stellung lohnende Züge, so müssen diese weiterverfolgt werden, gibt es keine, so muß die Stellung bewertet werden und damit die hinzuführende Zugfolge. Man hat dafür nur wenig Zeit. Nach De Groot bewerten Großmeister etwa 180 Stellungen pro Zug, haben also für diesen ersten Blick jeweils nur eine Sekunde Zeit. Das Problem des ersten Blickes ist nicht trivial. Werden in einer Stellung systematisch zu viele "interessante" Züge ausgewählt, so verliert man sich im Dschungel der Kombinationen, werden aber zu wenige ausgesucht, so übersieht man evt. eine gewinnversprechende Variante. D.h. die ausgewählten Züge sollen möglichst exakt bewertet werden und sollte ein Zug mit interessanten Möglichkeiten vorkommen, so sollte er auch mit hoher Sicherheit gefunden und entsprechend bewertet werden.
Die Zieleinengung
Wesentlich beim Erfolg dieser Idee ist das Konzept der Zieleinengung: "Je tiefer man sich in einer Kombination befindet, desto weniger wird nach sensationellen Zügen gesucht." Es gilt jedoch der Grundsatz, dass ein Zug, der den Gegner zu einer einzigen klar definierten Reaktion zwingt, immer angeschaut wird. - Der Entscheidungsbaum (Darstellung der untersuchten Varianten) wird durch solche Züge nicht wesentlich (exponentiell) größer.
Mephisto III unterteilt den Entscheidungsbaum in 3 Abschnitte
- Utopische Züge (gut, falls der Gegner nichts tut):
Eine Stellung kommt in einer Tiefe von etwa 1-3 vor. Der Beginn einer Kombination. Fast jeder irgendwie erfolgversprechende Zug wird selektiert, auch wenn die Wahrscheinlichkeit des Erfolges recht gering ist. Der Mensch nennt manche dieser Züge Opfer.
- Optimistische Züge (gut, falls der Gegner nur die zweitbeste Antwort hat):
Die Kombination hat eine Tiefe von 4-8 erreicht. Nur noch Züge mit einer Trefferwahrscheinlichkeit von größer als 30% werden selektiert. I.A. sind dies Züge, bei denen hohe Figuren angegriffen werden, Schach gedroht wird, etc. Diese Züge sollen aber selbst nichts opfern.
- Realistische Züge (gut, falls der Gegner den besten Gegenzug wählt):
Die Stellung kommt in einer Tiefe größer als 8 vor. Nur noch klare Abwicklungen werden untersucht. D.h. das Programm greift nicht mehr auf Verdacht an, sondern verfolgt Züge mit hoher Trefferrate. Etwa eine angegriffene Figur in Sicherheit bringen, d.h. realisieren, dass die Figur auch wirklich sicher ist und nicht etwa gefesselt oder überlastet ist.
Noch eine kurze Bemerkung zum Wesen der Kombination beim Schachspiel
"Finde einen Schlüsselzug, der dem Gegner zu einer oder zu wenigen Antworten zwingt; setze 1-2 Züge mit Druck fort; rechne sie i.A. klare Abwicklung durch." Wenn Sie als Leser die mehr oder weniger berühmten Kombinationen unter diesem Gesichtspunkt betrachten, so werden Sie feststellen, dass sich 90%-95% unter diesem Schema subsumieren lassen.
Die "Kopec-7-Teststellung"
Zur Klarheit wird an folgendem Beispiel, welches sicherlich vielen bereits aus Bild der Wissenschaft bekannt ist, die Arbeitsweise von Mephisto III verdeutlicht. 2-3 Gründe machen das Beispiel interessant.
1.) Als die Stellung etwa 30 menschlichen Schachspielern vorgelegt wurde (es war nicht klar, ob die Lösung taktischer oder positioneller Natur sei), war nur ein einziger, ein Großmeister, in der Lage, den Schlüsselzug innerhalb der vorgegebenen Zeit zu finden.
2.) Alle mir bisher bekannten Brute-Force Programme scheitern an dieser Stellung wegen eines interessanten "Horizonteffektes". Der Zwischenzug - La4xc2 (Horizont) schiebt den für dei Kombination entscheidenden Zug - Bf6-f7 (Gabel- und kein Schlagzug) in die Tiefe 7 und das Ansetzen der Schlagfolgen in dieTiefe9. Ein Brute-Force Programm braucht somit eine Tiefe von 8, um den Schlüsselzug zu finden (BELLE, das bisher schnellste Brute-Force Programm, schafft im Mittelspiel etwa die Tiefe 7).
3.) Für uns war es diejenige Stellung, in der Mephisto III das erste Mal sein ganzes Können unter Beweis stellen konnte.
Partie: Golyak - Gaiduk
Sh5-f6 Bg7xf6 Be5xf6 Se7-g6 Bf6-f7 0,53 -0,54 Se7-c6 Bf6-f7 0,53 -0,54 La4xc2 Dd1xc2 Se7-g6 Bf6-f7 -0,53 -0,54 Se7-c6 Bf6-f7 -5,70 -0,54 0,53 -5,70 Sb8-c6 Bf6-f7 2,14 0,53 -2,14 La3-b4 -0,14 -0,54 Sb8-d7 Sf6xe8 0,53 -0,54 La4xc2 La3xe7 Lc2xd1 Ta1xa5 Ld1xe2 Sf6xg8 Le2xf3 Ta5-c5 Kc8-d7 -0,35 0,34 -0,35 0,34 Sf6xe8 Tg8xe8 Tf3-e3 0,12 Tf3-f2 0,00 0,34 -0,35 0,34 -0,35 Le2xd1 Da5xa1 -0,35 0,34 -0,35 0,34 Sf6xe8 Lc2xd1 -0,35 0,34 Dd1xc2 Bg7xf6 Be5xf6 Se7-g6 Bf6-f7 0,53 -0,54 Se7-c6 Bf6-f7 5,70 -0,54 0,53 -0,54 0,53 -5,70 Bh7-h6 Sf6xe8 0,53 -0,54 Te8-f8 Sf6xg8 0,53 -0,54 Tg8-h8 Sf6xe8 0,53 -0,54 Tg8-f8 Sf6xe8 0,53 0,53 -0,54 h5xf6 g7f6 e5f6 Le2xc4 d5xc4 La3-b4 Da5-b5 -0,54 0,53 La3xe7 Te8xe7 -0,54 Baum: 1 127.194 0,53 0287
Folgendermaßen findet Mephisto III die Lösung
- "Utopischer Zug": Mephisto III opfert zwar den Springer, erwartet aber bei "Nichtstun" die Qualität.
- "Optimistischer Zug": Mephisto III steht zwar 2 Bauern schlechter, erwartet aber bei "Nichtstun" einen Springer als Gewinn.
- "Realistischer Zug": Das Ergebnis der Gabel am Schluß ist bei Springer-Wegzug 2 Bauern, sonst 1 Bauer.
Die Knotenentscheidung
In einer gegebenen Stellung findet Mephisto III unabhängig von der Tiefe folgende taktisch motivierten Züge in etwa einer halben Sekunde (1806-Modular) bzw. einer zehntel Sekunde (68000-Excalibur).
Gabel
Abzugsangriff
Angriff auf eingesperrte Figur
Gegenpläne: "Gegen-Bauern-durchmarsch"
Angriff auf überlastete Figur
Angriff auf gefesselte Figur
Schlagzug mit rückschlagen einer unbeweglichen Figur
Bauern aufhalten
Schach mit "0 Antworten"
Schach mit "1 Antwort"
Mephisto III-Endspielpläne: Plan: Bauerndurchmarsch
König ins Quadrat
Weitere Kriterien
Zusätzlich zum prinzipiellen Finden dieser taktischen Züge muß Mephisto III aber noch einiges mehr bewältigen:
Stellungsbewertung
Die Stellung wird nach positionellen Kriterien bewertet (Stellungsbewertung)
In jeder Tiefe, aber in Abhängigkeit von Eröffnung, Mittel- und Endspiel:
- Bauer: Zentrum, Doppel, isoliert, Frei, Duo, rückständig, Vorposten, Hebel, blockiert, etc.
- Springer: Zentrum, Vorposten, Entwicklung, etc.
- Läufer: Lange Diagonalen, Fianchetto, Vorposten, Entwicklung, Paar, etc.
- Turm: Offene-, Halboffene-Linien, Verdoppelung, hinter Frei-Bauern, hinter potentielle Hebel, 7.Reihe etc.
- Dame: Aktivität, siehe partiell Turm, etc.
- König: Sichere Rochadenstellung (Muster der Bauern, Kontrolle der Umfelder durch Figuren), Angriff auf den König, etc.
- Zusammenspiel der Figuren: Druck auf unbewegliche Figuren (gefesselt, direkt unbeweglich, überlastet),Deckung, Fesselung, Eröffnungstempi, spezielle Endspielregeln, etc.
Suche
Für jeden einzelnen Zug muß neu entschieden werden, ob er weiterverfolgt werden soll oder ob dies keinen Sinn mehr macht. Einige Fälle sind vorstellbar:
- Bis jetzt ist noch nichts passiert,
- - alle taktisch interessanten Züge werden weiter analysiert.
- Eine nette Kombination ist gefunden, mit der dem Gegner z.B. die Qualität abgenommen wird.
- - Nur Züge, die mehr als diese Qualität erwarten lassen, z.B. einen Bauerndurchmarsch oder eine Mattdrohung, werden selektiert.
- Das Programm hat bereits z.B. einen Springergeopfert.
- - Es werden nur noch Züge angeschaut, die diesen Springer oder mehr zurückgewinnen.
DAS MEPHISTO-KONZEPT
Ein "menschenähnlich" denkendes Schachprogramm
von Thomas Nitsche (Programmautor der MEPHISTO-Schachcomputer) März 1982
In dem folgenden Artikel werde ich zum ersten Mal einer breiteren Öffentlichkeit das MEPHISTO-Konzept vorstellen. MEPHISTO (Autoren: E.HENNE, T.NITSCHE) stellt kein starres Programm dar, sondern besteht vielmehr aus einer Menge von Ideen, die wir laufend weiterentwickeln.
Im Gegensatz zur allgemeinen Anschauung liegt die Grundproblematik der Schachprogrammierung nicht darin, möglichst schnell jeden noch so schlechten Zug durchzurechnen, sondern in der möglichst genauen Bewertung einer Schachstellung. Alle unsere Ideen im taktischen und positionellen Bereich sind unter diesem Gesichtspunkt zu betrachten.
Ich möchte den Leser nicht mit technischen Einzelheiten langweilen, wie etwa 'Schnelle Zuggenerierung', 'Genaues statisches Abschätzen von Schlagfolgen' etc., da dies- den Rahmen des Artikels bei weitem sprengen würde. Weiterhin ist es mir aus naheliegenden Gründen nicht möglich, letzte Einzelheiten dort anzugeben, wo eine vorzeitige Veröffentlichung unseren technologischen Vorsprung gefährden würde. Bevor ich genauer auf das MEPHISTO-Konzept eingehe, werde ich für diejenigen Leser, die sich mit dem Fachgebiet noch nicht beschäftigt haben, die wichtigsten Grundbegriffe kurz definieren.
Im Folgenden bezeichne ich mit 'Zug' immer den (Halb-) Zug einer Seite. Der 'Entscheidungsbaum' stellt die möglichen Zugkombinationen ausgehend von einer Ausgangsstellung ('Wurzel') dar, in der ein Zug' gefunden werden soll. Die Astgabeln werden 'Knoten' genannt und entsprechen Stellungen. Knoten sind durch 'Äste' verbunden, die den Zügen entsprechen. Die Tiefe gibt an, wie viele Züge man benötigt, um einen Knoten von der Wurzel aus zu erreichen. Zu jedem Knoten (außer der Wurzel) führt genau ein Ast hin und je nachdem kein, ein oder mehrere Äste weg. Führt kein Ast aus dem Knoten weg, so heißt er 'Endknoten'.
'Gute' Züge sind bei MEPHISTO solche Züge, bei denen die Zugfigur nicht mit Gewinn für den Gegner geschlagen werden kann, d.h. kein Materialverlust droht.
I.A. wird zwischen zwei Konzepten oder auch Typen von Schachprogrammen unterschieden:
SHANNON-A Strategie:
Diese Methode ist auch unter dem Namen 'Brute Force' (Rohe-Gewalt) bekannt. Bis zu einer festen Tiefe werden alle Zugkombinationen angeschaut. Zusätzlich schauen sich manche 'Brute Force'-Programme in den Endknoten noch alle Schlagzüge an.
SHANNON-B Strategie:
Hier wird in einem Knoten eine Vorauswahl unter den möglichen Zügen getroffen und es werden nur vorausgewählte Züge weiter-analysiert. Dieses Konzept ist flexibler als Typ A, hat jedoch den entscheidenden Nachteil, dass bei einer Vorauswahl unter Umständen sinnvolle Opfer bzw. feindliche Drohungen übersehen werden können.
Mit Shannon A oder B werden die heutigen Schachprogramme nur sehr unzureichend charakterisiert. Viele Programme, wie etwa MEPHISTO, sind Mischformen. Folgende Kriterien sind hilfreicher um Schachprogramme zu beschreiben:
- Wie lauten die Auswahlkriterien für Züge in einem Knoten (in Abhängigkeit von z.B. der Tiefe)?
- Wie lauten die Abbruchkriterien für Zugfolgen (z.B. Zugziel kann potentiell nicht mehr erreicht werden)?
- Wieviel 'Schach' wird in einem Knoten gemacht, d.h. wie umfangreich wird eine Stellung schachlich beurteilt? Wird in jedem Endknoten eine umfangreiche Bewertung vorgenommen, oder etwa nur in Knoten der Tiefe 1?
Das taktische MEPHISTO-Konzept:
Gegeben ist stets eine Mindestrechentiefe Min.T (in Abhängigkeit von z.B. der Spielstufe). In der Turnierstufe erreicht MEPHISTO eine Min.T von 3-4.
Es gelten die folgenden Auswahlkriterien und Regeln für den Abbruch der Analyse in den Knoten: Falls für einen Knoten die Rechentiefe kleiner oder gleich Min.T ist, so gilt: Analysiere jeden möglichen Zug weiter.
Bis zu einer gewissen Tiefe arbeitet MEPHISTO als 'Brute Force'-Programm, um nicht, wie andere selektiv rechnende Programme, einfache Opfer beider Seiten zu übersehen. Bei Knoten, die in einer Tiefe größer der Min.T liegen, ergeben sich verschiedene Möglichkeiten:
- 1. Existieren in einem Knoten eigene hängende Figuren oder hängende Figuren des Gegners, so werden Züge betrachtet, welche die Stellung 'beruhigen' (z.B. Wegziehen oder Deckungszüge, bzw. die hängenden Figuren des Gegners schlagen).
- 2. Sind 'gute' Schachzüge möglich, so werden diese weiter-analysiert. Im besten Fall ergibt sich daraus ein Mattangriff. MEPHISTO 2 ist in der Lage, im Mittelspiel auf Turnierstufe ein bis zu 4-zügiges Matt zu erkennen (im Endspiel auch bis zu 5-zügig).
- 3. Bei einem Bauern auf der 7. Reihe wird die Bauernumwandlung weiter analysiert.
- 4. Falls ein Knoten in der Tiefe Min.T + 1 liegt, und es sind 'gute' Schlagzüge möglich, so werden diese Varianten weiter analysiert.
Die Grundüberlegung bei diesen 4 Regeln lautet: Stabilisierende Züge (z.B. Deckungszüge) oder destabilisierende Züge (z.B. Schachzüge) sollen möglichst genau durchgerechnet werden. Eine statische Analyse (Keine Züge werden weiterverfolgt, die Stellung wird direkt bewertet) liefert für Stellungen, in denen etwa Figuren hängen, oft sehr ungenaue Werte. Die Folge sind ungenaue Zugentscheidungen, sprich 'schlechte Züge'.
MEPHISTO besitzt eine Reihe zeitsparender Abbruchregeln, z.B. lautet eine davon:
Kann MEPHISTO auch bei optimistischster Stellungseinschätzung (Alle eigenen hängenden Figuren können gerettet werden und alle gegnerischen hängenden Figuren können geschlagen werden) den Wert des bisher besten Zuges nicht erreichen, so wird diese Zugkombination abgebrochen. Das heißt in der Praxis: Ist z.B. bereits eine Dame geopfert und hat MEPHISTO nur noch die Möglichkeit einen Turm zu schlagen, so wird die Zugfolge abgebrochen. Besteht dagegen die Möglichkeit eines 'guten' Schachs, so wird dieser Zug weiteranalysiert.
Selbstverständlich benützt MEPHISTO auch eine Reihe exakter Techniken (Alfa-Beta-Algorithmus, Fenstertechnik, Killerheuristik etc.), mit deren Hilfe nicht jede sinnlose Kombination angeschaut werden muss. Mit exakt bezeichne ich die Tatsache, dass das Ergebnis der Zugauswahl durch solche Techniken nicht berührt wird. Der Zeitaufwand für die Zugauswahl wird dadurch erheblich verkürzt (exponentiell für Alfa-Beta-Algorithmus).
Alles bisher Gesagte bezieht sich lediglich auf den taktischen Aspekt des MEPHISTO-Programms. Um aber eine Partie zu gewinnen, ist es nicht damit getan, nur Figurenverluste zu vermeiden oder einen Bauerngewinn zu sehen.
Aus diesem Grund besitzen neuere Spitzen-Schachprogramme eine Reihe von aufwendigen Einzelbewertungen, 'Heuristiken' genannt, mit deren Hilfe sie langfristig nach Materialvorteil streben, kurzfristig aber 'nur' nach positionellem Übergewicht.
Das positionelle MEPHISTO Konzept:
Im Gegensatz zu reinen 'Brote Force'-Programmen kann sich MEPHISTO den Luxus erlauben, ein umfangreiches positionelles Konzept zu entwickeln. Für die einzelnen Figuren auf dem Brett werden dabei unterschiedliche Heuristiken berücksichtigt, von denen ich die wichtigsten aufzähle:
- Bauer: Tempo, Vormarsch, Zentrum, sowie neuerdings auch Doppel- und Freibauern. In Zukunft werden noch Muster von Bauernstrukturen, sowie Isolani und rückständige Bauern folgen.
- Springer: Tempo, Zentralisierung.
- Läufer: Tempo, lange Diagonalen, sowie Fianchetto. Dadurch behandelt MEPHISTO 2 bestimmte Eröffnungen (z.B. Indische Systeme) wesentlich besser als MEPHISTO 1.
- Turm: Halboffene und offene Linien, Verdoppelung, hinter Freibauern.
- Dame: Zurückhaltung in der Eröffnung, Aktivierung im Mittelspiel.
- König: Anstreben einer sicheren Rochadestellung, Rochade-Bauern-Muster, Annäherung an eigene Bauern, Zentralisierung im Endspiel.
Beim allgemeinen Zusammenspiel der Figuren gibt es weiterhin Prioritäten für den Angriff auf den feindlichen König bzw. Deckung der eigenen Stellung und Figuren. Viel gebracht hat für die Spielweise von MEPHISTO 2 das Erkennen von Fesselungen. Das Programm ist jetzt in der Lage, auch komplexe Drohungen im Mittelspiel aufzubauen und zu erkennen. Zur Zeit werden eine Reihe spezieller Endspiel-Heuristiken entwickelt, welche in Zukunft sehr verstärkt an 'Bedeutung gewinnen werden, wie z.B. Opposition, Quadratregel und kritische Felder im Bauernendspiel, richtige Turmpostierung in Turmend-spielen, oder auch Springer-Läufer-Matt-Setzunq.
Selbstverständlich unterscheidet MEPHISTO bei der Anwendung dieser Heuristiken nach Eröffnung, Mittelspiel und Endspiel. In der Eröffnung wird z.B. auf das Tempo (d.h. schnelle Entwicklung) viel Wert gelegt, während der Angriff noch keine Rolle spielt.
Die Einteilung in die Spielphasen ist bei MEPHISTO keine starre Angelegenheit (10 Züge Eröffnung, Endspiel ab Zug 30), sondern richtet sich nach dem Partiestand. Während das Mittelspiel nach etwa 8 Eröffnungstempi einsetzt, ist das Endspiel vom Material abhängig.
In den Heuristiken unterscheiden sich die auf dem Markt angebotenen Schachprogramme z.T. sehr erheblich und entwickeln oft einen eigenen 'Schachstil'. Dies scheint für den Interessenten die Auswahl unter mehreren gleichstarken Mikroschachcomputern fast zu einer persönlichen Geschmacksfrage zu machen. Der begeisterte Computerschach-Spieler, der sich heute für ein bestimmtes System entscheidet, möchte jedoch gerne wissen, wie sich die zukünftige Entwicklung gestalten wird.
Nach meiner Auffassung sind die auf der A-Strategie basierenden Programme weitgehend an einer Schwelle angelangt; sie können wohl noch schneller, aber kaum noch 'besser' werden. Man bedenke dabei, dass selbst eine Geschwindigkeitssteigerung um den Faktor 5 bei dieser Strategie noch nicht einmal einen Halbzug mehr in der Rechentiefe einbringt!
In der Zeitschrift 'DM' (Heft 11/81) habe ich die Voraussage gewagt, dass wir mit unserem Großrechner-Programm 'ORWELL' (Sprache: PASCAL / MODULA 2, Rechner: PDP 11, LILITH, IBM 3033 / 3081) eine Spielstärke (je nach Rechner) von zumindest über 2000 ELO-Punkten erreichen könnten. Bis Ende 1983 hoffen wir dies auch für MEPHISTO realisieren zu können, und damit dem 'menschenähnlich' denkenden Schachprogramm endgültig den Durchbruch zu ebnen.
