NetHack – это одна из самых сложных классических roguelike-игр, которая давно стала эталоном для испытания возможностей искусственного интеллекта и систем обучения с подкреплением. Многочисленные исследователи и игроки признают, что пройти игру до конца, достигнув так называемого «восхождения», невероятно трудно. Недавний опыт игрока и исследователя Михаэля Хенаффа, который лично прошёл всю игру, даёт уникальные инсайты о том, какие компоненты и способности требуются ИИ, чтобы преодолеть ее вызовы. Его погружение в мир NetHack не только раскрывает невероятную глубину и сложность самой игры, но и выявляет ряд ключевых аспектов, которые делают NetHack идеальной ареной для тестирования и совершенствования современных AI-методов.Одна из важнейших проблем, с которыми сталкивается игрок – и соответственно агент AI – связана с задачей поиска очень малозаметных сигналов в огромном потоке информации.
Например, в игре необходимо получить устойчивость к определённым видам урона, такой как яд, огонь или холод. Для этого нужно есть трупы соответствующих монстров, но получение этой устойчивости имеет стохастическую природу. Только редкое сообщение в игре, скрытое среди множества других текстов, свидетельствует о том, что персонаж получил нужное усиление. В AI-терминах это задача с очень длинной цепочкой временной зависимости: решение, принятое спустя тысячи игровых ходов, напрямую зависит от одного, казалось бы, незначительного сигнала, полученного намного ранее. Умение выделять ценные сигналы из огромного количества бесполезных и эффективно связывать их с будущими решениями – одна из сложнейших задач для современных обучаемых агентов в рамках reinforcement learning.
Другим критическим аспектом является исследование внутри конкретного игрового эпизода. Многие полезные предметы в игре обладают различными эффектами, известных игроку только по описанию внешнего вида, который рандомизируется в каждом новом прохождении. Это требует от агента не только познания правил, действующих во всех играх в целом, но и постоянного обновления гипотез и представлений о конкретных предметах в текущем прохождении путём экспериментирования и сбора косвенных свидетельств. К примеру, выбрасывание предмета на пол и наблюдение за реакцией питомца, использование его на монстрах или продажа в магазине – всё это методы выявления истинного назначения и характера предмета. Такие многослойные исследования отражают особенности задач, формализуемых в виде петель обучения с подкреплением с учетом контекста (Contextual MDPs).
В отличие от классических сред с одинаковыми правилами в каждом эпизоде, NetHack требует одновременного решения двух уровней поиска информации: глобального, связанного с общей логикой игры и локального, соответствующего текущему конкретному окружению.Интересным элементом является значение оффлайн знаний в виде текстовых ресурсов. Вокруг NetHack насчитывается огромное количество вики-страниц, собравших опыт тысяч игроков за многие годы. Такой массив документации помогает существенно сократить время обучения и избежать множества смертельных ошибок, характерных для новичков. Обеспечение ИИ возможностью использовать и интегрировать эту накопленную культуру знаний – это важный шаг к созданию более интеллектуальных агентов.
Человеческий интеллект никогда не изучает всё с нуля, он опирается на уже существующие знание, переданные в доступной форме – в том числе через язык. В этом смысле интеграция методов глубокого обучения и больших языковых моделей с классическими механизмами обучения с подкреплением обещает радикально повысить эффективность и качество игрового и в целом интеллектуального поведения ИИ!Ещё более интересна экспоненциально растущая комбинаторика стратегий, с которыми приходится бороться. Каждый раз, когда агент начинает новую игру, мир генерируется заново с уникальным набором предметов, монстров и особенностей уровней. Чтобы успешно адаптироваться, нужно не просто изучить отдельные приёмы, но и уметь грамотно их комбинировать в новых, зачастую непредсказуемых сочетаниях. Один и тот же уровень может потребовать совершенно разных решений в зависимости от предыдущих событий и ресурсов, которые удалось найти.
Например, преодоление особого уровня с ядовитой водой может быть решено либо с помощью кольца левитации, либо же пристально изученного набора заклинаний и предметов для превращений. Такой вызов требует от агентской системы мощной способности к генерализации и творческому применению уже изученного опыта в новых ситуациях.И без иерархического подхода к принятию решений продвижение вперёд практически невозможно. Длительные серии действий, концептуальные цели на тысячи ходов вперёд, многочисленные мелкие тактические решения – всё это организовано в сложную структуру планирования, которую современным агентам крайне важно научиться воспроизводить. Наивные плоские политики обучаемых агентов пока справляются только с задачами с быстрыми наградами и короткой перспективой.
NetHack же, благодаря своей затяжной, с интенсивной зависимостью от контекста игре, создаёт прекрасную среду для развития методов иерархического обучения с подкреплением и планирования на разных временных масштабах.Перспективы такого исследования выходят далеко за пределы только игр. Они напрямую влияют на развитие более продвинутых интеллектуальных систем, способных учиться в реальном мире с его сложными, многоуровневыми стратегиями и редкими, но важными сигналами успеха. Несмотря на прогресс в обучении больших языковых моделей, их ограниченность в самостоятельном открытии и использовании новых знаний становится очевидной, особенно когда речь идёт о сложных взаимодействиях и целевых действиях в изменчивых средах. Сочетание RL и глубоких языковых моделей – ключевой путь к преодолению этих ограничений.