Comments 4
Очень интересно!
Странно, что нигде нет награды за близость мяча к воротам соперника. Кажется, что такая награда была бы лучше, чем за гол :)
Еще, если вам не трудно, хотя бы при первом появлении вставляйте ссылки на методы, которые в статье используются. Так ни разу и не увидел раскрытия аббревиатуры PPO за весь текст.
Спасибо!
PPO - proximal policy optimization, метод, предложенный OpenAI.
Я использовал похожие типы наград в первоначальном варианте, но, как я писал, лучше сработали более простые варианты. Если придумать правильные более хитрые типы наград, то бот быстрее будет обучаться, но с другой стороны это может его ограничивать для более хитрых тактик. Например, иногда выгоднее подвести мяч к своим воротам, но зато получить контроль мяча. В целом при достаточном времени обучения, бот все равно найдёт правильную тактику, и в данный момент мне кажется более перспективным мотивировать бота изучать больше вариантов стратегии. Например, я вижу, что он не пытается использовать задний ход, хотя моментами это было бы очень полезно. Для решения таких проблем как раз существует entropy loss, этот лосс заставляет сеть быть менее уверенной в своих решениях, и она в процессе обучение пробует больше других вариантов.
Очень крутая статья!
Как думаете: возможно ли научить такого бота полетам, воздушному контролю мяча и отправки мяча в ворота в воздухе?
На сколько я знаю, игровые боты умеют делать всякие AirRoll'ы, AirDrop'ы и всякие другие классные штуки :)
Ладно лет 7 назад, боты в RL были глуповатыми, но сейчас, со сложными ботами иногда так и вовсе тяжело было бороться, потому что те освоили неплохой контроль мяча в воздухе.
Спасибо!
Вот тут можно посмотреть как Nexto играет против типового игрока и его контроль мяча.
И я уверен, что можно научить бота намеренно стараться держать мяч в воздухе. Вопрос просто в подборе верных наград, гиперпараметров обучения и времени.
Как я учил нейросеть играть в Rocket League