腾讯开源基于纯图像的游戏 AI 框架
01 框架介绍 APAIST是用于开发游戏自动化AI的开源框架(开源项目名为GameAISDK)。项目的特点是以游戏图像为输入,直接输出模拟触屏操作,不依赖游戏端提供任何API接口。 ▲ APAIST 框架 APAIST框架主要包括SDKTool(配置文件工具),AI SDK两部分。SDKTool帮助我们生成跟具体游戏相关的AI SDK所需要配置文件。如游戏运行过程中,整个流程中需要动作交互的UI,需要识别的游戏元素等。AI开发过程中用到的信息可来自于游戏图像(AIClient获取)或其他数据。aitest 能够自动化完成游戏UI操作并进入游戏场景,像玩家一样操作手机玩游戏。 AI SDK部分主要包括AI Clinet模块, MC模块,IO模块, UI模块, GameReg模块,AI模块。 AI Client主要与手机端交互,获取游戏图像,并执行UI或AI输出的动作 IO模块与AI Client交互,作为AI SDK的数据输入输出控制 MC模块与IO模块交互,将数据分发至AI SDK后端的UI和AI模块,并做一些业务逻辑的管理控制 UI模块根据游戏图像,识别出需要进行的UI操作 GameReg模块根据游戏图像,识别出游戏场景内的数字、血条、目标物等元素 AI模块根据识别到的游戏元素,根据AI算法执行业务逻辑 02 适用场景 主要适用于游戏场景的自动化测试,以减少相应场景测试的人力投入,目前已应用在酷跑、竞速、FPS、格斗、MMMO、MOBA等多种类型游戏的场景自动化。 ▲ 无需脚本编写,一次配置便可以在不同的分辨率设备上运行,多平台多应用场景支持 ▲ 内置多种图像识别算法及 AI 算法 ▲ 基于纯视觉识别的 AI 训练和运行框架 03 功能介绍 提供多种图像识别算法,识别游戏场景中的关键特征数据,如游戏场景中的技能状态、按钮位置、目标物位置等。此次发布的是2.0版本,相比于1.0版本,改进的内容包括: 提供模仿学习和强化学习AI算法DQN机rainbow等,可直接用于训练游戏场景AI。 提供一体化的IDE工具,将所有用户的操作都集成在IDE里面,包括游戏AI配置生成、样本采集、图像标注工具,手机连接、游戏AI启动、模型训练等功能。 支持不同分辨率手机操作,无需限定手机长宽比。 支持Windows下的各种窗口(包含端游、页游和Android模拟器等)作为图像输入来源。 加入UI智能探索功能,可对所有的移动端应用自动探索UI场景,并以图的形式展示探索结果,直观明了。 升级手机驱动,android版本支持到andrioid11。 支持win10,ubuntu,win10+docker和mac+docker等多种工作方式。 提供了完善的使用文档,帮助用户快速上手。 针对用户的特殊需求,支持用户二次开发。 04 开源获取 github地址:https://github.com/Tencent/GameAISDK 官网:https://aitest.qq.com