Zitat von
Binärbaum:
Mit Entwicklung meint er sicher, dass man mehrere Züge hintereinander auf ein bestimmtes Ziel (z.B. Angriff auf dem Königsflügel) hinarbeitet. Das wird aber schon schwieriger (für die KI).
Eben. Es soll die erste Schach-KI von mir werden.
Zitat von
Binärbaum:
Und zur "mathematischen Logik":
Ein ehemaliger Schach-Weltmeister hat mal gesagt (nicht wörtlich, aber vom Inhalt her):
"Ein Spiel, indem alles so klar wäre wie 2 mal 2 gleich 4, würde schnell an Reiz verlieren."
Soll heißen, dass es nicht so einfach ist, eine gewisse Logik herauszuarbeiten, um das Schachspiel zu beschreiben.
Ist schon klar. Aber um die Logik ins Spiel zu bringen ist genau der Reiz des Spiels, oder nicht ?
Zitat von
Binärbaum:
Und wie man diese "Logik" dann in dein Programm implementiert, hängt stark davon ab, wie du die gegenwärtige Stellung auf dem Brett darstellst (d.h. Datentypen, ...).
kurz skizziert:
Delphi-Quellcode:
type
TFigure = record
Pos:Tpoint;
Info:Integer;
end;
TFields = array[1..8,1..8] of TFigure;
TBoard = class
Fields:TFields;
parent:TBoard;
Children:array of TBoard;
//...
end;
// zur Darstellung
TChessBoard = class
Image:Timage;
Board:TBoard;
//...
end;
da wir gerade dabei sind, was hältst du davon ?