Ich bin dabei, ein Panzerspiel in Pygame zu machen, wo man einen Panzer um Wände herum bewegt und andere Panzer schießt.Python-Spiel Neuronales Netzwerk. Wie man Eingänge einstellt
Ich versuche einen Weg zu finden, ein neuronales Netzwerk zu bilden, wahrscheinlich Verstärkung für die Gegner zu lernen, so dass das Spiel Entscheidungen darüber treffen wird, welche Panzer sich wo bewegen sollten, wenn sie schießen sollten, indem sie Attribute von jedem Objekt weitergeben.
Attributes:
Enemy -> x,y,width,height,speed,health and other items
Wall -> x,y,width,height
Bullet -> x,y,width,height,speed
Player -> x,y,width,height,speed,health
Ich hatte geplant, den keras Python-Modul zu verwenden, um ein neuronales Netzwerk zu schaffen, aber ich kann nicht einen Weg finden, um es einzurichten, so dass die Eingangsdaten die richtige Form und Größe ist, da es eine variable Zahl sein von Wänden und Kugeln.
Was würde ich tun:
action = Network.predict(state)
wo
state = (Enemy, Player, Tuple_of_Wall_Data, Tuple_of_Bullet_Data)
und Aktion ist eine Option, wo der Feind in Form
action = (Direction,Should_Shoot)
TLDR bewegen sollte Mein Die Frage ist, wie würde ich eine neuronale Netzwerkeingabeschicht einrichten, so dass es möglich ist (1 Feind, 1 Spieler, m mehrere Wände, mehrere Kugeln) und trainieren das neuronale Netzwerk, um dem Feind eine Richtung zu geben und wenn er mit verstärkendem Lernen feuern sollte?
Willkommen bei StackOverflow! Insgesamt eine gute Frage, ich werde nur empfehlen, den Titel zu bearbeiten, um ihn genauer zu machen. – edzillion
Danke. Bearbeitet. – Scratchcat1
Das Problem, das Sie präsentieren, ist wirklich komplexer als "nur ein neuronales Netzwerk verwenden". Die größte Herausforderung besteht darin, die "richtige" Repräsentation für Ihre Daten als Grundlage für ein (überwachtes?) Neuronales Netzwerk zu erstellen. Die Beantwortung Ihrer Frage geht wahrscheinlich weit über eine einfache Antwort auf dieser Website hinaus. Ich schlage vor, einleitende Lektüre über [das Entwerfen von Spiel IA] (https://www.raywenderlich.com/24824/introduction-to-ai-programming-for-games) [auf NNs und Spielen] (http://natureofcode.com)/book/chapter-10-neural-networks /) und [speziell zum Thema verstärkendes Lernen] (https://arxiv.org/pdf/1312.5602.pdf). – agtoever