当前位置:甘肃生活都市网 >> 科技 >> 这个超级火的游戏 AI只用4个小时就完成了人类一年能达到的水平

这个超级火的游戏 AI只用4个小时就完成了人类一年能达到的水平

发布于:2020-12-29 来源:网络转载

肖骁来自奥菲寺

量子报告| QbitAI,微信官方账号

练习开赛车和空中投篮需要多长时间?

一般来说,一个普通球员要达到这个水平,必须至少练习一年。

这是国外流行的游戏《火箭联盟》(火箭联赛),玩家会操作一辆赛车,用各种方法把球“踢”进大门。

但是也有人开发了基于深度强化学习的赛车游戏环境RoboLeague。赛车通过环境训练不仅可以抓住机会射门;

经过4个小时的训练,可以长时间打球,保证车和球不落地:

这台机器人在红迪网2.7k爆炸

有网友嘲讽说,看到这些玩得比自己好的“AI玩家”,总是让他感到挫败。

那么,这个赛车游戏环境的优秀之处在哪里呢?

比现有的游戏环境要好

其实这并不是第一个基于《火箭联盟》的游戏环境。

有网友迅速指出,支持用定制赛车玩《火箭联盟》的RLBot取得了不错的效果。

在RLBot中,玩家也可以用自己的代码控制赛车。

而且玩家可以通过游戏场景的反馈反复调试代码,最终做出想要的机器人赛车。

事实上,作者在培训强化学习模式之前并没有考虑RLBot。

毕竟这个框架支持各种语言,让玩家可以写出想要的机器人赛车。

然而,在尝试了RLBot之后,作者决定开发一个基于Unity引擎的游戏环境。

主要有三个原因:

基于Unity引擎创建的环境,可以自己创建想要的游戏场景。

另外,在RLBot中,基于实时数据的AI模型训练速度并不快。但是如果游戏比较大,在RLBot中训练可能会有问题。

自创的游戏环境可以并行训练游戏中的多个实例。相比之下,RLBot基于《火箭联盟》,只能同时玩一个游戏,不能并行训练。

那么,如何在RoboLeague环境下培养这样一个“聪明”的代理呢?

基于强化学习的代理培训

训练前先了解一下《火箭联盟》有什么规则,球员如何投篮。

总的来说,这是一个玩家通过控制赛车来进球射门的游戏。

其中,这里的赛车和球符合一些物理规则:

球是有弹性的,可以从地面/墙壁反弹回来,并受到摩擦力和重力的影响

汽车可以在地面加速刹车,空中操控也符合物理条件

赛车的轮子有一定的粘性,可以在墙上移动而不会脱落

而《火箭联盟》中的一些高级球员通常会尽量不让自己和球落地,在球在空中的情况下完成投篮。

但是,要达到这个水平,不仅要对网站有很好的了解,还要在线操作。

其中,作者利用强化学习中的“奖励机制”来告诉代理人该做什么。

代理不需要基于先验知识完成操作,而是通过尝试各种随机行为来试图达到“奖励机制”的要求。

作者给出的唯一奖励机制就是保证赛车和球不落地,也就是“活”。

因为只要不落地,空中带球的条件就完成了。

经过反复尝试,经纪人发现,只要赛车尽量垂直立在空中,保持球的稳定,就可以保证“活着”。

也正是在这种奖励机制下,赛车只用了4个小时(约50M跑)就达到了目标。

如果想让特工完成更复杂的任务,比如空中带球投篮,只需要找到相应的奖励机制,通过强化学习和训练就可以实现。

目前,作者已经将RoboLeague作为开源软件进行了开放。

也就是说,如果想训练出符合自己要求的深度强化学习模式,可以用这个游戏环境进行训练。

关于作者

作者@Roboserg没有透露自己的真实姓名,但在此之前,他做过很多通过强化学习训练出来的小游戏实验。

例如,在各种球的撞击下保持平衡的飞机:

或者,两个球之间的“足球”比赛:

据作者透露,他还将计划开发一款穿越飞行圈的游戏。

这个游戏会训练代理通过飞环,和大神玩家的操作没什么区别。

也许,作者甚至可以用精读训练出一个完整的网站游戏?

标签: 游戏 环境 作者
最新文章
猜你喜欢
本类推荐
TOP 10