对战6亿用户竞技手游:聚焦复杂游戏中的多智能体博弈( 三 )


此外 , 还有多少小球蛰伏暗处 , 酝酿反击 , 在最后阶段逆转局势 , 并非新事 。
在萌萌的小球之内 , 涌动着规则和博弈的暗流 。周航回应道 , 这就是Go-Bigger门槛很低 , 但是上限很高的原因 。
“游戏环境非常简单直观 , 因为大家都玩过类似的游戏 , 像大鱼吃小鱼、剪刀石头布、围棋 。它们都有很直观的名字 , 都用简单的环境系统构建出博弈场景 。但不同的是 , Go-Bigger涉及到多智能体的配合和对抗 , 会有更高的决策复杂度 。” 二、游戏环境如何设计
人工智能现在已经广泛应用在感知优化场景 , 但是想让模型具有真正的智能 , 则需要将其落实到一些需要进行决策的场景 。
游戏 , 则是决策智能(DI)天然的训练场 。
如果将一个游戏环境比作一个小社会 , 那么不同的游戏角色则是生活其中的人类 。只有人类数量足够多 , 才足以反映其中的群体关系 , 并进一步模拟人类社会的生活图景 。因此 , 在复杂游戏中的多智能体博弈 , 成为推动决策智能发展的关键 。
Go-Bigger涉及多智能体博弈 , 不可避免要权衡同一团队中的个体行动与合作行动、不同团队间的合作与竞争、表征和交换与其它智能体的环境信息 。但要从零开始实现上述算法和训练流程非常复杂 , 决策智能框架DI-engine大大简化了设计过程 。
其内部已经集成了支持多智能体的DQN算法实现和一系列相关诀窍 , 以及玩家自我对战和对抗机器人的训练组件 , 只需实现相应的环境封装 , 神经网络模型和训练主函数即可 。
此外 , Go-Bigger支持RL环境 , 提供了三种交互模式 。
为帮助用户在强化学习领域的多智能体策略学习 , Go-Bigger提供了符合gym.Env标准的接口供其使用 。在一局游戏中 , Go-Bigger默认设置含有20个状态帧和5个动作帧 。每个状态帧都会对当前地图内所有单位进行仿真和状态处理 , 而动作帧会在此基础上 , 附加对单位的动作控制 , 即改变单位的速度、方向等属性 , 或使单位启用分裂、发射或停止等技能 。
为了更方便地对环境进行探索 , Go-Bigger还提供了必要的可视化工具 。在与环境进行交互的时候 , 可以直接保存本局包含全局视角及各个玩家视角的录像 。此外 , Go-Bigger提供了单人全局视野、双人全局视野、单人局部视野三种人机交互模式 , 使得用户可以快速了解环境规则 。
单人全局视野、双人全局视野、单人局部视野
可视化除了方便用户设计智能体的决策路径 , 还将智能体的决策进化提供一个参考 。
目前基于强化学习等方法的决策智能 , 主要还是在学习「状态」到「动作」的映射 , 离可解释的、因果关系的、可互动的决策还有很远距离 。但游戏本身的可视化形式 , 会直接展示智能体的策略 。
整个游戏环境的搭建 , 不仅涉及到大的封装模块 , 还有小的动作设计 。刘宇说到 , 我们在设计这个引擎的时候 , 不仅要兼顾它是否有趣(可视化、难度低) , 还要考虑它对研究者来说是否有用(动作歧义、公平) 。
在复杂的游戏环境中 , 如何做到公平性 , 保证所有智能体从同一起点进化 , 并演化出最多的决策路径 , 除了球球背后的参赛选手出奇斗勇 , 还要有公平的评测系统--天梯系统 。参赛选手只需基于大赛提供的接口 , 给出智能体在每一帧的动作 , 最后将代码以及相关模型或文件提交即可加入测试天梯 。OpenDILab团队将使用选手提供的环境及代码进行指定竞赛的模型测试工作 , 决出最后的赢家!三、决策智能研究刚刚上路
在Go-Bigger游戏中 , 设计了球球对抗时间、成长加速度、分裂、消失、衰亡等约束条件 , 它们其实广泛存在于现实世界 , 比如人的生命周期 , 微观生物学中细胞免疫等 。