清华打造足球AI:首次实现同时控制10名球员完成比赛,胜率94.4%
只见 4 号球员在队友的配合下迅速攻破后防,单刀直入,一脚射门,球,进了! 观众朋友们大家好,您现在看到的是谷歌 AI 足球比赛的现场,场上身着黄色球衣的是来自清华大学的 AI 球员。 这届清华 AI 可不一般,他们在艰苦训练之下,不仅有个人能力突出的明星球员,也有世界上最强最紧密的团队合作。 在多项国际比赛中所向披靡,夺得冠军。 Oh,现在 7 号接过队友传来的助攻,临门一脚,球又进了! 言归正传,以上其实是清华大学在足球游戏中打造的一个强大的多智能体强化学习 AI——TiKick。 在多项国际赛事中夺得冠军则是指,TiKick 在单智能体控制和多智能体控制上均取得了 SOTA 性能,并且还是首次实现同时操控十个球员完成整个足球游戏。 这支强大的 AI 团队是如何训练出来的呢。 从单智能体策略中进化出的多智能体足球 AI 在此之前,先简单了解一下训练所用的强化学习环境,也就是这个足球游戏:Google Research Football。 它由谷歌于 2019 年发布,提供基于物理的 3D 足球模拟,支持所有主要的比赛规则,由智能体操控其中的一名或多名足球运动员与另一方内置 AI 对战。 在由三千步组成的上下半场比赛中,智能体需要不断决策出移动,传球,射门,盘球,铲球,冲刺等 19 个动作完成进球。 在这样的足球游戏环境中进行强化学习难度有二:
而清华大学此次的目标是控制多名球员完成比赛。 他们先从 Kaggle 在 2020 年举办的 GRF 世界锦标赛中,观摩了最终夺得冠军的 WeKick 团队数万场的自我对弈数据,使用离线强化学习方法从中学习。 这场锦标赛只需控制场中的一名球员进行对战。 如何从单智能体数据集学习出多智能体策略呢。 直接学习 WeKick 中的单智能体操作并复制到每个球员身上显然不可取,因为这样大家都只会自顾自地去抢球往球门冲,根本就不会有团队配合。 又没有后场非活跃球员动作的数据,那怎么办。 他们在动作集内添加了第二十个动作:build—in,并赋予所有非活跃球员此标签 。 接着采用多智能体行为克隆 算法训练模型。 对于离线强化学习来说,最核心的思想是找出数据中质量较高的动作,并加强对这些动作的学习。 所以需在计算目标函数时赋予每个标签不同的权重,防止球员倾向于只采用某个动作作为行动。 这里的权重分配有两点考虑:
此处为了避免梯度爆炸与消失,对优势函数做出了适当的裁剪。 最终的分布式训练架构由一个 Learner 与多个 Worker 构成。 其中 Learner 负责学习并更新策略,而 Worker 负责搜集数据,它们通过 gRPC 进行数据,网络参数的交换与共享。 Worker 可以利用多进程的方式同时与多个游戏环境进行交互,或是通过 I/O 同步读取离线数据。 这种并行化的执行方式,也就大幅提升了数据搜集的速度,从而提升训练速度。 另外,通过模块化设计,该框架还能在不修改任何代码的情况下,一键切换单节点调试模式和多节点分布式训练模式,大大降低算法实现和训练的难度。 94.4% 的获胜率和场均 3 分的净胜分 在多智能体游戏上的不同算法比较结果中,TiKick 的最终算法以最高的获胜率和最大的目标差异达到了最佳性能。 TrueSkill得分也是第一。 TiKick 与内置 AI 的对战分别达到了 94.4% 的胜率和场均 3 分的净胜分。 将 TiKick 与 GRF 学术场景中的基线算法进行横向比较后发现,TiKick 在所有场景下都达到了最佳性能和最低的样本复杂度,且差距明显。 与其中的基线 MAPPO 相比还发现,在五个场景当中的四个场景都只需 100 万步就能达到最高分数。 一作黄世宇,清华大学博士生,研究方向为计算机视觉,强化学习和深度学习的交叉领域曾在华为诺亚方舟实验室,腾讯 AI,卡内基梅隆大学和商汤工作 共同一作也是来自清华大学的陈文泽。 论文地址: 项目地址: 参考链接: 。郑重声明:此文内容为本网站转载企业宣传资讯,目的在于传播更多信息,与本站立场无关。仅供读者参考,并请自行核实相关内容。 (编辑:白鸽) |