In the last few decades we have witnessed a significant development in Artificial Intelligence (AI) thanks to the availability of a variety of testbeds, mostly based on simulated environments and video games. Among those, roguelike games offer a very good trade-off in terms of complexity of the environment and computational costs, which makes them perfectly suited to test AI agents generalization capabilities. In this work, we present LuckyMera, a flexible, modular, extensible and configurable AI framework built around NetHack, a popular terminal-based, single-player roguelike video game. This library is aimed at simplifying and speeding up the development of AI agents capable of successfully playing the game and offering a high-level interface for designing game strategies. LuckyMera comes with a set of off-the-shelf symbolic and neural modules (called "skills"): these modules can be either hard-coded behaviors, or neural Reinforcement Learning approaches, with the possibility of creating compositional hybrid solutions. Additionally, LuckyMera comes with a set of utility features to save its experiences in the form of trajectories for further analysis and to use them as datasets to train neural modules, with a direct interface to the NetHack Learning Environment and MiniHack. Through an empirical evaluation we validate our skills implementation and propose a strong baseline agent that can reach state-of-the-art performances in the complete NetHack game. LuckyMera is open-source and available at https://github.com/Pervasive-AI-Lab/LuckyMera.
翻译:在过去几十年中,得益于各种测试平台(主要基于模拟环境和视频游戏)的可用性,人工智能领域取得了显著发展。其中,roguelike类游戏在环境复杂性与计算成本之间提供了极佳的平衡,使其特别适合测试AI智能体的泛化能力。本文提出LuckyMera——一个围绕NetHack构建的灵活、模块化、可扩展且可配置的AI框架。NetHack是一款流行的基于终端的单机roguelike视频游戏。该库旨在简化和加速能成功玩游戏的AI智能体开发,并提供用于设计游戏策略的高级接口。LuckyMera配备了一系列现成的符号模块与神经模块(称为"技能"):这些模块既可以是硬编码行为,也可以是神经强化学习方法,并支持构建组合式混合解决方案。此外,LuckyMera还提供一组实用功能,可将智能体经验以轨迹形式保存用于后续分析,并作为训练神经模块的数据集,且与NetHack学习环境及MiniHack直接对接。通过实证评估,我们验证了技能模块的实现效果,并提出了一个能够在完整NetHack游戏中达到当前最先进性能的强大基线智能体。LuckyMera为开源项目,代码托管于 https://github.com/Pervasive-AI-Lab/LuckyMera 。