Erstens ist dies KI für PacMan und nicht für die Geister .
Ich schreibe ein Android Live Wallpaper, das PacMan um Ihre Symbole spielt. Während es Benutzervorschläge über Bildschirmberührungen unterstützt, wird der Großteil des Spiels von einer KI gespielt. Ich bin zu 99% mit der gesamten Programmierung für das Spiel fertig, aber die KI für PacMan selbst ist immer noch extrem schwach. Ich suche Hilfe bei der Entwicklung einer guten KI zur Bestimmung der nächsten Fahrtrichtung von PacMan.
Mein ursprünglicher Plan war folgender:
- Initialisieren Sie für jede Richtung einen Bewertungszähler mit dem Wert Null.
- Beginnen Sie an der aktuellen Position und verwenden Sie ein BFS, um die vier möglichen Anfangsrichtungen nach außen zu durchlaufen, indem Sie sie der Warteschlange hinzufügen.
Entfernen Sie ein Element aus der Warteschlange, stellen Sie sicher, dass es noch nicht "gesehen" wurde, stellen Sie sicher, dass es sich um eine gültige Boardposition handelt, und addieren Sie zu den entsprechenden Anfangsrichtungen einen Wert für die aktuelle Zelle, basierend auf:
- Hat einen Punkt: plus 10
- Hat ein Power-Up: plus 50
- Hat eine Frucht: plus Fruchtwert (variiert je nach Stufe)
- Hat einen Geist, der Angst hat: plus 200
- Hat ein Geist in Richtung PacMan: subtrahieren Sie 200
- Hat ein Geist von PacMan weg: nichts tun
- Hat ein Geist senkrecht: subtrahieren Sie 50
- Multiplizieren Sie den Wert der Zelle mit einem Prozentsatz basierend auf der Anzahl der Schritte zur Zelle. Je mehr Schritte von der Anfangsrichtung entfernt sind, desto näher kommt der Wert der Zelle Null.
und die drei möglichen Richtungen aus der aktuellen Zelle in die Warteschlange stellen.
- Sobald die Warteschlange leer ist, finden Sie die höchste Punktzahl für jede der vier möglichen Anfangsrichtungen und wählen Sie diese aus.
Auf dem Papier klang es gut für mich, aber die Geister umgeben PacMan extrem schnell und er zuckt in denselben zwei oder drei Zellen hin und her, bis eine ihn erreicht. Das Anpassen der Werte für die Geisterpräsenz hilft auch nicht. Mein nächster Punkt-BFS kann mindestens Level 2 oder 3 erreichen, bevor das Spiel endet.
Ich suche nach Code, Gedanken und / oder Links zu Ressourcen für die Entwicklung einer richtigen KI - vorzugsweise der beiden ersteren. Ich möchte dies irgendwann an diesem Wochenende auf den Markt bringen, also habe ich es etwas eilig. Jede Hilfe wird sehr geschätzt.
Zu Ihrer Information, dies wurde ursprünglich auf StackOverflow veröffentlicht