Ich dachte mir schon das diese Frage kommen wird <br>
Also beim Scrabble gibt es bestimmte Regeln
<li>die Buchstaben haben unterschiedliche Punktezahl, erreiche die höchste Punktezahl pro Wort indem schon gelegte hohe Buchstaben oder Wörter benutzt werden
<li>die Positionen auf dem Brett sind unterschiedlich gewichtet
<li>für das Leeren des Racks gibts 50 Punkte extra
<li>lege nur gültige Wörter, was wir ja schon können
<li>negiere alle obigen regeln und wende diese auf den Gegner an, d.h. zerstöre dessen Chancen
Dies sollten die Ziele des Scrabble Algortihmus sein. Soviel ich weiß nutzt der beste Scrabble Algorithmus einen Genetischen Algo. + ein DAWG. Beim Scrabble entstehet eine enorme Kombinationsvielfalt und man such EINE hochwahrscheinlich optimale Lösung. Der Vorteil liegt beim Computer, d.h. ein guter Scrabblealgo. wird den Menschen immer vernichtend schlagen. Das liegt daran das der Computer
<li>objectiv ist
<li>die Wahrscheinlichkeiten der noch verfügbaren Buchstaben im Sack exakt berechnen kann
<li>ein enorm größeren Wortschatz haben wird
Die genetische Algos. sollte man sich als ca. 50 Computer-Scrabble Spieler vorstellen, unsere Individuen. Alle Individuen zusammen sind unserer Population, und die Nachkommen dieser Individuenen sind unsere Generationen. Ausgehend von einem schon teilweise gefüllten Board berechnet man als erstes die Wahrscheinlichkeiten der Buchstaben die noch nicht gelegt wurden. Diese Häufigkeiten minus die Buchstaben auf dem Computerrack sind unser Basis um die Suche in der Wortliste einzuschränken. D.h. sollte das Y schon liegen brauchen wir keinerlei Wörter mit Y zu berücksichtigen. Nun werden die Individuen initialisiert. Sie sollten das Board representieren, dann wird per Zufall ein Zug in diesen Individuen ausgeführt. Dieser kann sein
<li>EIN Buchstabe und man überprüft nur ob ein mögliches Wort existiert, d.h. unser gen. Algo. arbeitet Zeichenorientiert
<li>oder EIN Wort, das natürlich in's Board passen muß, unser Algo. arbeitet dann Wortorientiert.
Man läst nun diese 50 Individuen einige Runden gegeneinander antreten und ermittelt das beste. Der erste Zug den dieses Individuum gemacht hat wird der nächste Zug des Computerspielers.
Nungut, am besten Du suchst mal im WEB, ich meine da mal was gelesen zu haben.
Gruß Hage
Also beim Scrabble gibt es bestimmte Regeln
<li>die Buchstaben haben unterschiedliche Punktezahl, erreiche die höchste Punktezahl pro Wort indem schon gelegte hohe Buchstaben oder Wörter benutzt werden
<li>die Positionen auf dem Brett sind unterschiedlich gewichtet
<li>für das Leeren des Racks gibts 50 Punkte extra
<li>lege nur gültige Wörter, was wir ja schon können
<li>negiere alle obigen regeln und wende diese auf den Gegner an, d.h. zerstöre dessen Chancen
Dies sollten die Ziele des Scrabble Algortihmus sein. Soviel ich weiß nutzt der beste Scrabble Algorithmus einen Genetischen Algo. + ein DAWG. Beim Scrabble entstehet eine enorme Kombinationsvielfalt und man such EINE hochwahrscheinlich optimale Lösung. Der Vorteil liegt beim Computer, d.h. ein guter Scrabblealgo. wird den Menschen immer vernichtend schlagen. Das liegt daran das der Computer
<li>objectiv ist
<li>die Wahrscheinlichkeiten der noch verfügbaren Buchstaben im Sack exakt berechnen kann
<li>ein enorm größeren Wortschatz haben wird
Die genetische Algos. sollte man sich als ca. 50 Computer-Scrabble Spieler vorstellen, unsere Individuen. Alle Individuen zusammen sind unserer Population, und die Nachkommen dieser Individuenen sind unsere Generationen. Ausgehend von einem schon teilweise gefüllten Board berechnet man als erstes die Wahrscheinlichkeiten der Buchstaben die noch nicht gelegt wurden. Diese Häufigkeiten minus die Buchstaben auf dem Computerrack sind unser Basis um die Suche in der Wortliste einzuschränken. D.h. sollte das Y schon liegen brauchen wir keinerlei Wörter mit Y zu berücksichtigen. Nun werden die Individuen initialisiert. Sie sollten das Board representieren, dann wird per Zufall ein Zug in diesen Individuen ausgeführt. Dieser kann sein
<li>EIN Buchstabe und man überprüft nur ob ein mögliches Wort existiert, d.h. unser gen. Algo. arbeitet Zeichenorientiert
<li>oder EIN Wort, das natürlich in's Board passen muß, unser Algo. arbeitet dann Wortorientiert.
Man läst nun diese 50 Individuen einige Runden gegeneinander antreten und ermittelt das beste. Der erste Zug den dieses Individuum gemacht hat wird der nächste Zug des Computerspielers.
Nungut, am besten Du suchst mal im WEB, ich meine da mal was gelesen zu haben.
Gruß Hage
Comment