Thema: Schach KI

Hallo..
hm.. ich bin gerade dabei ein kleines schachspiel zu programmieren.. Habe mir auch gut die Lektüre aus den alten Postings hier durchgelesen, habe aber dennoch die Frage, wie man genau eine ki machen könnte?
Auf was muss eine KI achten, wie programmiert man sowas?
Füttert man einen "schlauen" Algorithmuss einfach mit tausenden von "bereits gespielten" Spielen, und lässt ihn dann vergleichen? Wie geht sowas? Habe bisher noch nie so eine "schlaue" KI gemacht.. (Meine letze war das pseudo spiel Tic Tac To <img src="/forum/images/graemlins/smile.gif" alt="" />)

Das schachspiel, etc habe ich bereits, auch die möglichen bewegungen sind drinne, aber wie lasse ich sowas mit KI machen??

Bitte helft mir..

Lebe deine Träume so wie sie sind,
denn nur so kannst du weiterhin träumen!

2

Re: Schach KI

...na du kannst Fragen stellen: Wie baut man denn ein Haus? Ich hab die Steine und Bretter schon gakauft und die liegen jetzt bei mir im Garten...

Im ernst: Ich denke, das ist eine Wissenschaft für sich und ich kann mir kaum vorstellen, dass man hier mal eben brauchbare Ergebnisse zusammen bekommt.

Zunächst wäre es ja (mal ganz abgesehen von deinen Rechner-Kapazitäten) mal ein Ansatz, von einer bestimmten Position aus alle Möglichkeiten hochzurechenen. Hieraus würdest du nun einen Baum enthalten an dessen Ende, nach mehr oder weniger vielenen Knoten dann je ein Sieg, eine Niederlage oder ein Remis stehen würde.

Was nun? Hier nun die Entscheidung für den Ast an dem der Sieg am schnellsten zu erringen sein könnte zu treffen ist ja nicht unbedingt schlau (Also quasi fortlaufend den Spieler ins Schach zu setzen und dabei eine Figur nach der anderen zu verlieren). Auch den Weg zu wählen, der zu einem Standpunkt führt, von dem aus die meisten Wege zum Sieg führen ist nicht unbedingt klug, denn vielleicht sind die wenigen Möglichkeiten, die dem Spieler dann noch bleiben so offensichtlich und für den Computer-Spieler umso gefährlicher.

Du brauchst also ein sehr ausgefeiltes Bewertungsverfahren, was das riesige Feld an Möglichkeiten, Strategien, sowie der Möglichkeiten und Strategien des Spielers in eine Quantität bringt.

Ich würde dir hierfür empfehlen, erstmal mit wenigen Steinen anzufangen und dann versuchen, den Spieler Matt zu setzen.

Im übrigen ist es natürlich so, dass eine KI ja immer ein lernendes Programm ist, dass also nicht nach starren Alghorithmen verfährt, sondern eben zu spielen lernt...

Naja, soviel mal von meinem hierfür recht unqualifizierten Standpunkt aus.

Viel Spaß (und vergiss die Sonne draußen nicht!)

Basti

Re: Schach KI

Schon klar, aber wie macht man sowas?
Eine lernende Ki? Jaja, schon möglich, aber wie will man den Computer bei einem Schachspiel zum lernen bringen? Die Wahrscheinlichkeit berechnen, mit der der Spieler immer zieht?
So nach dem Motto:
Spieler zieht gerne mit Bauer, Bauern töten.. ->Anweisung: KILL(Bauer) oder so? <img src="/forum/images/graemlins/smile.gif" alt="" />

Hm.. Das mit den Möglichkeiten ist mir bewusst, aber wie macht man sowas?
Ich weiß welche Felder "frei" sind.. Soll ich jedes Feld durchklappern, und per zufallsgenerator schauen, was der spieler dann machen könnte?

Lebe deine Träume so wie sie sind,
denn nur so kannst du weiterhin träumen!

4

Re: Schach KI

hmm zufallsgenerator <img src="/forum/images/graemlins/laugh.gif" alt="" /> lol naja dann hättest du keine ki mehr <img src="/forum/images/graemlins/laugh.gif" alt="" />
aber es ist echt schwer dir deine frage zu beantworten, ne perfekte ki wirste nicht hinbekommen!
Am besten lässt du als erstes die felder errechnen wo deine figuren stehen(also die vom pc) und dann welche angreifer da sind(gegenerische Spielfiguren), dann erst die freien felder errechnen lassen! Wichtig ist das er alle 3 schritte durch läuft, nicht das er wenn er nen angreifer gefunden hat gleich zuschlägt! Und dann solltest du die spielfiguren in kategorien einteilen, je nachdem welche wertvoller ist, also König die wichtigste Figur <img src="/forum/images/graemlins/smile.gif" alt="" /> *logisch*
So würde ich es machen, also die reihnfolge macht für mich sinn!
Das mit denn möglichkeiten "schnellster sieg" würd ich nicht in betracht ziehen weil es einfach nicht "schlau" wäre!!!