ИИ от Uber прошел Montezuma’s Revenge лучше, чем человек

e0e04541ad226e1c0540fc6fb4a0251a.png

Об игре Montezuma«s Revenge на Хабре писали не так, чтобы очень много. Это сложная классическая игра, которая ранее была очень популярна, но сейчас в нее играют либо те, у кого она вызывает ностальгические чувства, либо же исследователи, разрабатывающие ИИ.

Летом этого года появилась информация о том, что компания DeepMind смогла научить свой ИИ проходить игры для Atari, включая Montezuma«s Revenge. На примере этой же игры обучали свою разработку и создатели OpenAI. Сейчас аналогичным проектом занялась компания Uber.
Разработчики заявили о прохождении игры их нейросетью, с достижением максимального количества очков в 2 млн. Правда, в среднем система зарабатывала не более 400 000 для каждой попытки. Что касается прохождения, то компьютер добрался до 159 уровня.

Кроме того, Go-Explore научился проходить и Pitfall, причем с отличным результатом, который превосходит результат среднего геймера, не говоря уже о других ИИ-агентах. Количество очков, набранных Go-Explore в этой игре, составляет 21000.

Отличием Go-Explore от «коллег» является то, что нейросети не нужно демонстрировать прохождение разных уровней для обучения. Система учится всему сама в процессе игры, показывая результаты, гораздо выше тех, что демонстрируют нейросети, которым требуется визуальное обучение. По словам разработчиков Go-Explore, технология значительно отличается от всех прочих, а ее возможности позволяют использовать нейросеть в ряде сфер, включая робототехнику.

9809be2895f60d6fa6e771d918583e54.png

Большинству алгоритмов сложно справиться с Montezuma«s Revenge потому, что в игре не слишком явная обратная связь. К примеру, нейросеть, которая «заточена» на получение награды в процессе прохождения уровня, скорее будет сражаться с врагом, чем запрыгнет на лестницу, которая ведет к выходу и позволяет быстрее идти вперед. Прочие ИИ-системы предпочитают получить награду здесь и сейчас, а не идти вперед в «надежде» на большее.

Одно из решений инженеров Uber — добавление бонусов за изучение игрового мира, это можно назвать внутренней мотивацией ИИ. Но даже ИИ-элементы с добавленной внутренней мотивацией не слишком хорошо справляются с Montezuma«s Revenge и Pitfall. Проблема в том, что ИИ «забывает» о перспективных локациях после их прохождения. В итоге ИИ-агент застревает на уровне, где уже вроде бы все исследовано.

В качестве примера можно привести ИИ-агента, которому необходимо изучить два лабиринта — восточный и западный. Он начинает проходить один из них, но затем внезапно решает, что можно было бы пройти и второй. Первый остается изученным на 50%, второй — на 100%. И в первый лабиринт агент не возвращается — просто потому, что «забыл» о том, что он не пройден до конца. А поскольку проход между восточным и западным лабиринтом уже изучен, у ИИ нет мотивации возвращаться.

729a892532ee986eea97be7571252091.png

Решение этой проблемы, по мнению разработчиков из Uber, включает два этапа: исследование и усиление. Что касается первой части, то здесь ИИ создает архив различных игровых состояний — клеток (cells) — и различных траекторий, которые к ним приводят. ИИ выбирает возможность получить максимальное количество очков при обнаружении оптимальной траектории.

Клетки представляют собой упрощенные игровые кадры — 11 по 8 изображений в оттенках серого с 8-ми пиксельной интенсивностью, с кадрами, которые различаются в достаточной степени — для того, чтобы не препятствовать дальнейшему прохождению игры.

05561a25c63aae2542918be5bc5c3498.gif

В результате ИИ запоминает перспективные локации и возвращается в них после обследования других частей игрового мира. «Желание» исследовать игровой мир и перспективные локации у Go-Explore сильнее, чем стремление получить награду здесь и сейчас. Go-Explore также использует информацию о клетках, в которых обучается ИИ-агент. Для Montezuma«s Revenge это данные о пикселях вроде их X и Y координат, текущей комнаты, а также количества найденных ключей.


Этап усиления работает в качестве защиты от «шума». Если решения ИИ неустойчивы к «шуму», то ИИ усиливает их при помощи многоуровневой нейронной сети, работающей по примеру нейронов мозга человека.

1e9463ed963bb1ef50d712fb0b4e6b05.png

В тестах Go-Explore показывает себя очень хорошо — в среднем ИИ изучает 37 комнат и решает 65% головоломок первого уровня. Это гораздо лучше, чем предыдущие попытки покорить игру — тогда ИИ в среднем изучал 22 комнаты первого уровня.

5adcfe13291f31a85f6729cea8bbea03.png

При добавлении усиления к существующему алгоритму ИИ стал в среднем успешно проходить 29 уровней (не комнат) со средним числом очков в 469,209.

002571c00e4288464bfdf98620a99d9e.png

Итоговая инкарнация ИИ от Uber стала проходить игру гораздо лучше, чем другие ИИ-агенты, и лучше, чем люди. Сейчас разработчики совершенствуют свою систему с тем, чтобы она показала еще более впечатляющий результат.

© Habrahabr.ru