Wir haben uns für unsere Präsentation die Neuroevolution angewandt auf das erlernen und selbstständige Spielen von Videogames zum Thema gemacht. Dazu haben uns zwei Projekte besonders angesprochen:
In beiden Fällen wurde ein Code geschrieben, welcher dem Computer dienen sollte, das vorliegende Spiel (Flappy Bird bzw Super Mario World) zu erlernen und zu meistern.
Leider können wir den Code aufgrund seiner Komplexität nicht genau erklären. Wir werden aber versuchen, die Grundidee etwas verständlicher zu machen.
Neuroevolution basiert auf einem “trial and error” Verfahren. Der Computer wird Mario solange nach vorne laufen lassen bis Mario stirbt. Der Computer lernt nun, dass er an der Stelle etwas anders machen muss, da er sonst nicht ans Ziel kommt. Diesen Vorgang wiederholt er nun so lange, bis Mario es heil ans Ende des Levels schafft
Durch diesen Vorgang entwickelt der Computer nun ein eigenes kleines Neuronennetz um das Level so schnell wie möglich durchzuspielen.
FlappyLearning: https://www.chromeexperiments.com/experiment/flappylearning
Source code: https://github.com/xviniette/FlappyLearning/blob/gh-pages/Neuroevolution.js
MarI/O: https://www.youtube.com/watch?v=qv6UVOQ0F44
Source code: http://pastebin.com/ZZmSNaHX