-
lovoThemenersteller
MiniMAX und seine Derivate
Im Buch Schach am PC von Steinwender/Friedel stellen die Autoren ein Beispiel- und Lehrschachprogramm namens MiniMAX vor. Dieses ist zwar (genauso wie das Buch selbst) schon über zehn Jahre alt. Aber für einen angehenden Computerschachprogrammierer ist beides wohl eine unerläßliche Grundlage.
Mittlerweile gibt es verschiedene Versionen von MiniMAX; in diversen Programmiersprachen. Hier ist eine Übersicht:- MiniMAX-C
Das originale Programm in C. Den Quellcode gibt's im Anhang. - MiniMAX-B
Das originale Programm in Basic. - DelphiMAX
Die Delphi-Umsetzung. - MyMAX
Noch eine Delphi-Version. - (Ac)MiniMax
C++-Version. - Der scharfe Max
Meine C#-Version, an der ich allerdings noch arbeite.
Zu DelphiMAX:
Das Programm hat einige schöne Erweiterungen und läuft sogar unter UCI. Ich hab damit gleich mal eine Schnellpartie gegen Toga II gespielt. Unter Arena, und ohne Eröffnungsbuch. Aber dafür hab ich die Züge bis zum 8. Zug vorgegeben. Damit DelphiMAX zumindest eine kleine Chance hat. Und ich finde, er hat "mutig" und aktiv gespielt und sich gar nicht so schlecht geschlagen.
Interessant ist, daß Toga im Schnitt 5-6 Züge tiefer rechnet. Also den Suchbaum offenbar wesentlich drastischer beschneidet als DelphiMAX. Obwohl beide Programme gleichermaßen mehrere hunderttausend Knoten pro Sekunde berechnen. Und das auf einem Netbook! Wie doch die Zeit vergeht.
Natürlich fehlt MiniMAX und Co. schachlich noch einiges. Und Toga ist ja auch nicht irgendwer. Trotzdem wage ich mal die Behauptung, daß die meisten Leser hier im Forum durchaus ihre Schwierigkeiten im Spiel gegen DelphiMAX haben dürften. Oder?
- MiniMAX-C
-
MiniMAX und seine Derivate
-
SommerPower
AW: MiniMAX und seine Derivate
Und dann gleich den ersten eigenen Gurkenzug.

aber ich kann Dir zustimmen, die weiteren Züge sehen durchaus "normal" aus.
Der MiniMax Algorithmus Minimax-Algorithmus ? Wikipedia ist in der Spieltheorie und somit auch im Schach sehr wichtig.
-
Peloton
AW: MiniMAX und seine Derivate
Migrierst Du "nur" den Code von C oder lässt Du schon eigene Ideen einfließen? Ich habe mir erst mal vorgenommen, meine Engine ohne Vorlage zu entwicklen. Sobald das Ding einsatzfähig ist, wird sowieso ein Code-Redesign notwendig sein, da ich mich quasi erst über die Entwicklung mit den Feinheiten von C++ vertraut mache.
Ich habe jedoch im Vorfeld schon den einen oder anderen Artikel/Essay diesbzgl. durchgelesen und das was ich mir behalten habe, fließt auch irgendwie mit ein.
-
TommyA
AW: MiniMAX und seine Derivate
Wo kann man den Online die UCI-Spezifikation einsehen?
-
Peloton
AW: MiniMAX und seine Derivate
Hier
(als Zip):
http://download.shredderchess.com/div/uci.zip
und hier
UCI protocol
-
TommyA
AW: MiniMAX und seine Derivate
Dankeschön. Wenn ich am Wochenende mal Zeit habe, grabe ich mal meine alten Engine-Versuche aus und wage den Neuanfang.
-
lovoThemenersteller
AW: MiniMAX und seine Derivate
Mit C und C++ bin ich früher nicht so recht klargekommen. Anfang des Jahrzehnts kam dann eh C# heraus. Und diese Sprache hat mir von Beginn an gefallen. Also wollte ich sie lernen. Und hab mir - nach dem Motto "Learning by doing" - ein Projekt gesucht. Das war dann die Portierung von MiniMAX-B nach C#. Denn wie gesagt, C war damals nicht mein Ding. Heutzutage würde ich sicherlich direkt von C nach C# gehen. Wie dem auch sein mag. MiniMAX als C#-Version läuft bei mir seit 2002. Allerdings nur als "Rohübersetzung". Das heißt, von OOP ist weit und breit noch nichts zu sehen. Ich habe also auch noch ein Code-Redesign vor mir. Dies will ich aber erst angehen, wenn ich wirklich jede einzelne Codezeile des Originalprogramms durch und durch verstanden habe. Das kann jedoch noch etwas dauern, da ich in den vergangenen Jahren das ganze Projekt auf Eis gelegt hatte und erst vor kurzem wieder eingestiegen bin.
Geändert von lovo (25.06.2009 um 01:13 Uhr)
-
MiniMAX und seine Derivate
Ähnliche Themen zu MiniMAX und seine Derivate
-
MiniMAX und seine Derivate: Im Buch Schach am PC von Steinwender/Friedel...Von lovo im Forum SchachenginesAntworten: 6Letzter Beitrag: 25.06.2009, 01:03
Weitere Themen von lovo
-
Antworten: 5Letzter Beitrag: 26.09.2008, 22:05
-
Antworten: 24Letzter Beitrag: 03.09.2008, 02:02
-
Antworten: 13Letzter Beitrag: 26.08.2007, 18:56
-
Antworten: 6Letzter Beitrag: 06.06.2007, 09:37
-
Antworten: 0Letzter Beitrag: 21.03.2007, 16:07
Andere Themen im Forum Schachengines
-
Antworten: 0Letzter Beitrag: 31.05.2014, 12:07
-
Antworten: 0Letzter Beitrag: 19.08.2013, 17:32
-
Bei einem Houdini 3 Match über 100 Runden wie...von BoomoAntworten: 8Letzter Beitrag: 14.02.2013, 10:43
-
da Houdini 3.0 weiterhin auf sich warten lässt...von BelloMarcelloAntworten: 4Letzter Beitrag: 10.10.2012, 22:44
-
Habe in den letzten drei Tagen die Engine gegen...von BoomoAntworten: 16Letzter Beitrag: 28.09.2012, 14:00





Und du wunderst, wenn andere User gegen dich persönlich schießen :facepalm: