Schachspiel programmieren???
-
Hallo Zusammen,
Habe mir gerade zur Aufgabe gesetzt ein simples Schachprogramm zu programmieren. 2 Spieler gegeneinander spielen zu lassen zu programmieren ist nicht allzu schwierig. Aber schwierig wird es wenn das Programm auch einen Computergegner haben sollte... Wie würdet ihr da vorgehen den Gegner zu proggn???
MfG AmAnfangStehender
-
Zuerst ein System entwickeln, dass Bedrohungen (auch mittelbare) und Chancen erkennt. Viel Spaß. Das ist eine Wissenschaft für sich. :p
-
Hallo,
ich habe zwar NULL Erfahrung, was das angeht, aber ist ein Schachprogramm nicht etwas zu hart für den Anfang? Wie wärs mit Vier Gewinnt? Oder Othello?
-
Moin,
genau das habe ich vor einigen Wochen auch versucht. Ich hab mir ein bisschen Wissen angelesen und dann versucht, das zu implementieren. Es ist eigentlich gar nicht schwierig, eine Schach-KI zu schreiben. Schwierig wird es, wenn die gut sein soll, denn dann reicht ein 0815 Minimaxtree nicht mehr aus. Naja, jedenfalls hat mich wie so oft dann meine Motivation verlassen, aber ca. 400 Zeilen Code in C sind vorhanden (hauptsächlich Verwaltung von Bitboards / Erstellen von einer Bitboarddatenbank für versch. Positionen einzelner Figuren). Es wird aber hinterher garantiert nervig wg. der komplizierten Zugregeln beim Schach (Rochade, en passent, etc.)
Ein paar Links:
Ziemlich gutes Tutorial über Schachprgrammierung
http://www.gamedev.net/reference/programming/features/chess1/Ansonsten kannst du mal nach folgenden Stichworten googeln:
Minimax, Alpha-Beta Pruning, Transposition Tables, Chess Programming, Computer Chess, BitboardsNaja, viel Glück
-
die adresse hier ist auch äusserst hilfreich:
http://www.chessbrain.net/beowulf/theory.html