Die Aufgabe kann durch effektivere Methoden sowohl aus Machine Learning als auch aus anderen Branchen gelöst werden. Also das einzige Ziel von diesem Projekt ist einfach ein Versuch KI zu benutzen. Der KI kann hier auf dem Feld sich bewegen. Sein Ziel ist die Münzen zu sammeln. Das Spiel ansicht ist im godot geschrieben und die KI in python. Als Modelle nutze ich hier Neural Network mit Lehrmethoden aus Reinforcement learning
Die nötige Python Module sind websockets, numpy und scipy. Die alle sind durch pip install -r requirements.txt im python Ordner runterlädtbar
Man braucht auch godot engine
Erst soll man main.py (nicht biggerMain.py, weil das nicht trainiert ist) öffnen, dann godot projekt starten
Die Variablen, die man ändern wollen könnte:
Area2D.gd:
timeMultiplier -> wie schnell die Zeit verläuft. Groß für lernen, irgendwie für Nutzen
maxLifeWithoutMoney -> Wie viele Sekunden lebt Agent ohne Münzen
forceApplied -> Wie schnell bewegt sich der Agent
main.py
toLearn
toLoad -> ob shon trainierte Wiegen geladen werden müssen
Die kleinere Quellen sind in der Code als Kommentare geschrieben
Ich habe mein andere Projekt zum Vergleichen genutzt cart pole, welche auf einen anderen basiert ist
The task is probably most efficiantly solved by other methods, but +AI
One needs websockets, numpy and scipy modules in python they are also can be found in requirements.txt
pip install -r requirements.txt in python directory
First run main.py script from python folder (not biggerMain.py, because it's not trained)
Then godot project
some variables one may want to change:
Area2D.gd:
timeMultiplier -> it changes how fast time goes. Set big for learning and anyhow for using
maxLifeWithoutMoney -> how often agent must grab coins to live
forceApplied -> changes how fast agent can move
main.py
toLearn
toLoad -> wether already trained weights should be loaded
The minor sources of information and code are mentioned in comments in code
I used a few times my other project for reference: cart pole, which in its turn is based on pong