【Java】当会打王者荣耀的AI学会踢足球,一不小心拿下世界冠军!
难得的元旦小假期,没有什么比得上在慵懒的冬日艳阳下放松自己,拿起手机,叫上了许久未一起作战的小伙伴,到王者荣耀中激战了一番,仿佛又回到了当年那个年轻的自己。
厉害不,毕竟当年DD也是王者五十星的水平,哈哈。
不过哪怕是我这样的王者,在去年也被腾讯上线的超强电脑AI绝悟虐的不轻。记得当时有朋友来找我,说是腾讯上线了一个绝悟挑战模式,里面的电脑AI和以往被我们拿来练熟练度的电脑相比,简直就是云泥之别,一关比一关难,据说连一些职业选手组成的车队都翻车了。
听的那么玄乎,头硬的我自然不会轻信,然后随后的几天中,果不其然被绝悟虐的生活不可自理,最后还是灰溜溜的靠着网上流传的“大乔-米莱蒂”传送偷家套路才勉强过关。
一边回忆着被绝悟惨虐的经历一边浏览着最近的新闻,突然眼中爆射出一道惊芒,中国足球世界杯夺冠了!
你没有看错,的确是中国足球世界杯夺冠了,但是夺冠的并非传统意义上的男足女足,而是由我们曾经熟悉的绝悟进化之后重生的足球AI-WeKick!
WeKick夺冠的是首届谷歌足球Kaggle竞赛,参赛队伍多达1138支,可以说是代表了目前地球上最顶尖的足球AI比赛,称之为足球AI世界杯也不为过。
而在所有参赛队伍中,WeKick的得分高达1785.8分,占据绝对优势地位,就像96年的公牛、02年的巴西一样,势不可挡!
不可置信?再给你看下精彩集锦!
快、准、直!一记完美的长传后,直射球门!
连续突破重围,轻松传球 4 次。
有些人可能不以为然,觉得之前绝悟在王者荣耀的表现,用去踢足球,也是很简单的。
其实不然,首先王者荣耀是一个5V5的游戏,而足球是一个11v11的运动,就是说AI需要控制的智能体(球员)个数多了一倍以上,其次足球赛虽也属于即时策略型游戏,但也需要AI具备长线思考、快速决策、处理复杂环境的能力。AI需要考虑到每个球员的速度、加速度、射门、头球、传球、防守等各种指数,同时还需要操控球员之间进行频繁的相互配合,也需要时刻观察对手球员的行为,防范于未然,做出最好的选择!
针对这些不同的情况,WeKick团队发挥想象,主要运用了以下三个创新进行针对性的模型训练。
WeKick团队采用Self-Play(自博弈)强化学习来从零开始训练模型,并以此部署到异步分布式的强化学习框架中。异步架构牺牲了一部分训练的实时性能,但是相应的,得到了更高的灵活性,同时可以支持在训练过程中按实际需要调整整个计算资源,使其能快速完美的适应智能体人数更多的足球游戏训练环境。
王者荣耀是一款对抗类的MOBA游戏,其最终目的和足球游戏迥然不同,WeKick团队采用了GAIL(生成对抗模拟学习)与人工设计的奖励结合的方式,在特征与奖励设计上进行了扩展和创新。
运用这个方案,WeKick可以从其它球队学习,拟合专家行为的状态和动作分布,再将GAIL训练的模型作为固定对手进行进一步Self-Play训练,进一步提升策略的稳健性。
上述的Self-Play强化学习方案,有一个尚未解决的缺憾,就是通过这个方案得到的模型很容易形成单一的风格。用足球比赛的说法就是打法一成不变,很容易被针对或遇上天生克制的阵型就不知所措。为了解决这个问题,WeKick团队采用了针对多智能体学习任务的 League(若干策略池)多风格强化学习训练方案,提升策略的多样性。
这种League多风格强化学习训练方案的主要流程,用一句话解释就是 由简入繁!
- 首先训练某一方面的基础模型,例如过人、盘带、传球、射门等。
- 根据基础模型训练出多个风格化模型,每个模型专注一种风格打法,训练过程中加入主模型作为训练对手,避免训练效果死板不变通。
- 再基于多个基础模型训练一个主模型,主模型可以将自己的历史版本作为训练对手,还可以加入所有风格化的模型作为不同的训练对商铺,使主模型遇上任何对手都有解决方案。
根据其内部能力评分系统显示,这种算法下的主模型,可以在基础模型的基础上提高200分,比最强的风格化打法高80分!
最后介绍下谷歌足球Kaggle竞赛
Kaggle创立于2010年,是全球最大的数据科学社区和数据科学竞赛平台。本届比赛是Kaggle首次针对足球AI领域发布的赛题。
由于足球运动团队策略要求在瞬息万变的赛场上,做出最正确的团队协作、实时决策和竞争策略,其中的难点,一直是困扰世界顶尖AI研究团队的难题。就像前文提到的,从绝悟进化到WeKick,控制的智能体各数从5v5提高到11v11,这中间强化学习的难度将随着智能体个数的增长呈现指数级的爆炸增长。
其实早在参加这个比赛之前,绝悟的开发团队早已经从足球比赛中的单个智能体控制转向多智能体同时控制、协同作战深入的研究方向。在先前参加的5v5形式的谷歌天梯比赛 Google Research Football League 中,绝悟已经赢得过冠军,这次可以说是再度升级版的夺冠。
从最早的围棋AI绝艺,到王者荣耀的MOBA游戏AI绝悟,再到如今的足球AI-WeKick,腾讯在人工智能的深度强化学习程度正在步步进化,未来很有可能运用于其他更广泛的行业中,真正做到人工智能为人类服务。
而此刻的我,只想什么时候能有机会和这个WeKick踢上(被虐)几场比赛,你也想和他过过招吗?
以上是 【Java】当会打王者荣耀的AI学会踢足球,一不小心拿下世界冠军! 的全部内容, 来源链接: utcz.com/p/93871.html