Государственное представительство для простого шутера DQN - PullRequest
0 голосов
/ 23 января 2019

Я кодировал очень простую среду для стрелялки, в которой 2 игрока (квадраты) стреляют друг в друга в сетке 5 на 5. Они начинаются в левом или правом направлении, и при шаге в определенном направлении направление игрока устанавливается в этом направлении. В следующий раз, когда игрок стреляет, пуля пойдет в этом направлении.

Я пытаюсь создать DQN (RL) для этой простой игры. В настоящее время мое представление состояния: для каждого объекта (player1, player2, bullets of player1, bullets of player 2) я сохраняю позицию x, позицию y и направление с массивом 4 (первый индекс вверх, второй индекс справа и т. Д. ) - устанавливается 1 для направления и 0 для остальных. Количество пуль - 4 на каждого игрока.

[x1, y1, 0, 1, 0, 0, x2, y2, 1, 0, 0, 0, 0, x_bul1, y_bul1, 0, 0, 1, 0 ...]

Я заставил 1 игрока (противника) оставаться на месте, в то время как агент получает награду -1 за каждый шаг, и его цель - убить врага.

Когда я обучаю агента и запускаю игру с обученным агентом, например, после каждых 50 эпизодов, я вижу, что агент учится убивать врага, но после дополнительной тренировки он может остаться на месте или делать другие случайные действия, а не убить врага.

например, после эпизода 500 агент убил врага самым быстрым путем, но при достижении эпизода 5000 агент оставался на месте.

Возможно ли, что обучение длится очень долго?

Если вы видите какие-либо проблемы с этими настройками или у вас есть предложения, они будут оценены.

Ноам.

Образ игры

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...