Einzelnen Beitrag anzeigen

Benutzerbild von atreju2oo0
atreju2oo0

Registriert seit: 5. Dez 2003
Ort: Berlin
289 Beiträge
 
Delphi 6 Enterprise
 
#10

Re: Ideen zur Schach KI

  Alt 12. Apr 2005, 12:34
Zitat von Binärbaum:
Das ist unterschiedlich und kommt auch auf die jemweilige Figur an.
Also ein Bauer ist zum Beispiel am wertvollsten, wenn er in der 7. (weiß) bzw. 2. Reihe (schwarz) steht, da man diesen beim nächsten Zug verwandeln kann.
Für König ist es hingegen sinnvoll, wenn man die Rochade ausführt, da er so besser geschützt ist.
Für Springer ist es gut, wenn aich sich im (erweiterten) Zentrum befinden,...
...
Wenn dein Programm nach diesen Gesichtspunkten entscheidet schickt es alle Bauern auf die Reise zum Gegner führt ne Rochade aus und lässt den König in der Ecke stehen!
Das interessante an Schach ist ja gerade, das jeder mögliche Zug der beste sein kann.
Es gibt genug Partien die gewonnen wurden, weil der spätere Gewinner 4 Züge vorher seine Dame geopfert hat!
Deshalb ist der Ansatz nach generell-günstigen Positionen zu spielen IMHO falsch.

Ich bin mit so einer KI zwar auch gescheitert aber mein Ansatz war die Position bewerten zu lassen nach
Anzahl der ungedeckten Figuren/Anzahl der gedeckten (Im Optimum 1) sowie
Anzahl der ungedeckten Felder/Anzahl der gedeckten (Im Optimum 1)

Damit hat man
1) ne Aussage über die eigene Position (Wenn alles gedeckt ist steht man gut )
2) ne Aussage über die Möglichkeiten des Gegners (Wenn alle Felder gedeckt sind... Wo soll er noch hin)

Dieser Ansatz ist schon nicht so schlecht, aber er führt zu 2 Problemen:
1) Wenn ein Bauer durch ne Dame gedeckt ist, so ist er eigentlich nicht gedeckt da niemand die Dame opfert...
2) Im Endspiel läuft man so komplett gegen den Baum!

Soweit ich weiß benutzen heutige KI's 3 Engines:
die Erste für die Eröffnung (wird in Datenbanken gespeichert)
die Zweite für das Spiel (das ist die Richtige KI)
die Dritte für das Endspiel (Ab 5 Steinen pro Spieler steht bei Fehlerfreiem Spiel fest wer gewinnt, glaube ich)

Falls das Opensource-entwickelt werden soll würde ich mich da übrigens gerne dran beteiligen!
nen neuer Versuch kann nicht schaden
Thomas
  Mit Zitat antworten Zitat