{-WETT Das Programm basiert auf einem Multilayer-Perceptron oder vorwärtsgerichtetes neuronales Netz. Die Idee war, dass ich nicht die Zeit habe, eine der sehr guten bereits existierenden KIs nach Haskell zu portieren, weshalb ich mein Programm von ihnen lernen lassen wollte. Gleichzeitig musste ich am Montag vor der Abgabe einen Vortrag in meinem Proseminar zum Thema Multilayer-Perceptron halten, sodass ich es für eine gute Idee hielt, das ganze zu verbinden. Ich habe mir also die WThor-Datenbank mit 2044 Spielen aus dem Jahr 2013 von der Seite http://www.ffothello.org/info/base.php heruntergeladen und diese mit dem Programm von der Seite https://gist.github.com/tomykaira/3310166 konvertiert. Anschließend habe ich mit dem ganz unten als Kommentar stehenden Code, die Spiele zu Patterns für mein neuronales Netz umgewandelt. Ich wollte erreichen, dass sich meine KI bei jedem Zug möglichst ähnlich zu KIs verhält, die diese Beispiel-Spiele gespielt haben. Dazu habe ich für jeden Spiel ein Pattern erstellt. Für jedes der 8*8 Felder habe ich ein Eingabe- und ein Ausgabe-Neuron vorgesehen, wobei in der Eingabe 0.5 für ein weißes Feld, 1 für ein eigenes Feld und 0 für ein gegnerisches Feld steht. Das Ausgabe-Neuron mit dem größten Wert ist dann der Spielzug, der gemacht wird (wenn es ein gültiger Spielzug ist...). Zum Trainieren des Netzes habe ich den JavaNNS benutzt, eine GUI zum Stuttgarter Neuronale Netze Simulator. Aus dem Ergebnis habe ich dann die Gewichte ausgelesen und im Haskell-Code benutzt. Wie erfolgreich meine KI sein wird, kann ich leider nicht vorhersehen, weil die Zeit nicht mehr ausgereicht hat, sie gegen andere Test-KIs spielen zu lassen. Es ist allerdings unwahrscheinlich, dass das Netz auf Anhieb gut genug aufgebaut war, dass es das Spiel gelernt hat. Zur Verbesserung hätte ich wohl für das Spielende einen Endgame-Solver geschrieben, der sich in jedem Fall besser verhalten würde, als meine KI. Für den Anfang und die Mitte des Spiels dagegen glaube ich, dass ein neuronales Netz mit ein bisschen Feintuning durchaus gute Chancen gegen andere KIs gehabt hätte... -}