Ich habe eine benutzerdefinierte Openai Fitness-Studio-Umgebung für ein Spiel ähnlich http://curvefever.io/ implementiert, aber mit diskreten Aktionen statt kontinuierlich. So kann mein Agent in jedem Schritt in eine von vier Richtungen gehen, links/oben/rechts/unten. Eine dieser Aktionen führt jedoch immer dazu, dass der Agent in sich selbst stürzt, da er nicht "umkehren" kann.Ungültige Züge in der Verstärkung Lernen
Momentan lasse ich den Agenten nur irgendeinen Zug machen und lass ihn einfach sterben, wenn er einen ungültigen Zug macht, in der Hoffnung, dass er irgendwann lernen wird, diese Aktion in diesem Zustand nicht zu machen. Ich habe jedoch gelesen, dass man die Wahrscheinlichkeiten für eine illegale Bewegung auf Null setzen kann und dann eine Aktion abtasten kann. Gibt es einen anderen Weg, dieses Problem anzugehen?
Danke. Da die KI für einen Wettbewerb war, der letzte Woche beendet wurde und ich es nicht zur Arbeit bringen konnte, gab ich auf, heh. Ich benutzte A3C, also keine softmax-Ebene als Ausgabe. Als ich mir das Gameplay anschaute, bemerkte ich, dass es nicht so oft einen ungültigen Zug machte (da dies den Tod sofort zur Folge hätte, wäre das also kein guter Zug). Ich denke, wo ich versagte, war die Reinigung der Eingabe und auch ein zu hoher Gamma-Wert. Es wurde auf .95 eingestellt, als ich es am längsten trainierte. – ericwenn
Kann ich fragen, welcher Wettbewerb es war? Danke ... –
Es war ein Wettbewerb von Cygni, Sie können es hier http://game.snake.cygni.se/#/?_k=kdwudn finden – ericwenn