不开玩笑,他们玩《侠盗猎车手》是为了测试自动驾驶

2017-07-11 20:27:30文章来源:126下载热度:

按照常理,那些有勇气直播自己玩游戏的人应该都是些高手,至少也要风趣幽默才行。但在 Twitch 的一个直播间里,一个一言不发、技术很差的「主播」却吸引了很多人的围观。

这位「主播」名叫 Charles,此时他正在 GTA V (俗称侠盗猎车手 5)游戏里开着一辆跑车在城市横冲直撞——他时而撞上路灯,时而又冲进了花坛里,简直「不能更菜了」。

dims.jpeg

(Charles 经常会被这样鄙视,图片来自 Engadget)

当 Charles 偏离正常路线并径直冲进海里时,围观群众兴奋了起来,在弹幕中刷起了「Water!」、「Finally!」等评论,就像期待了很久的事情终于发生了一样。

当你不知道 Charles 的背景时,一定会对他嗤之以鼻,「这样的技术也好意思出来直播?」但如果告诉你他其实是一个 AI 程序时,你会不会对它另眼相看呢?

实际上,Charles 是程序员 Harrison Kinsley 用 Python 语言编写的一个 AI 程序,结合了当下非常热门的神经网络技术(Neural Networks),让他可以基于游戏内的物理环境进行实时运算。

屏幕快照 2017-07-07 上午9.36.38.png

(Harrison Kinsley 的直播间)

Charles 的目标很简单,就是希望在 GTA V  游戏里做一名「老司机」。为了让更多人看到他是如何运作的,Harrison Kinsley 想到了游戏直播网站 Twitch。

我第一次知道 Charles 是今年 5 月份,那时它的表现就和文章开头描述的一样,仿佛是一个醉汉驾着车在城市游荡。由于早期的算法还无法识别海洋的存在,所以 Charles 经常出现一头扎进水里的情况,最后竟然变成了一个令人期待的「保留节目」。

fve8xzs5ssj7itifrgcm.png

(掉进水里的 Charles,图片来自 kotaku)

Charles 的另一个「保留节目」是被警察通缉。在 GTA V 游戏中会根据犯罪的严重程度给出五种不同的通缉等级,「莽撞」的 Charles 经常会吸引到警察的注意,但据说最高等级的「五星通缉」还没有出现过。

时隔几个月后,我再看 Charles 的直播时发现他「守规矩」了许多——大多时候他都在正确的车道上狂奔,发生一些碰撞后也能及时回到正轨。而让很多观众失望的是,Charles 已经能够识别出海洋的存在了。

2017-07-08 12_54_00.gif

根据 Harrison Kinsley 介绍,Charles 所有的决策都是基于像素信息(pixel data )进行即时演算的,「你们看到的和他是一样的」。这意味着 Charles 在里程积累后,必须进行版本更新才能变得更加聪明。

Charles 最新的版本是 V0.06(speedometer),速度计的加入让他可以更加从容地转向和规避障碍物,也能在更加复杂的道路环境里正常行驶。Harrison Kinsley 还表示未来会考虑为它加入短时记忆(short-term memory,STM),帮助他更好地在驾驶中进行决策。

虽然 Harrison Kinsley 目前开发 Charles 更多是出于 Python 语言的推广,他并没有计划就此进入自动驾驶行业。但不得不说,通过在仿真环境下进行测试,通过累计数据提升自动驾驶 AI 能力已经是业界比较普遍的做法了。Charles 还在不断地「进化」,未来当他足够聪明时,进入现实生活中也并非只是「天方夜谭」。

实际上,这不是 GTA V 游戏第一次被用于测试自动驾驶技术了。例如去年 9 月,MIT Technology Review 曾报到过 Intel 实验室和德国达姆施塔特工业大学正在使用 GTA V 游戏去验证其研发的自动驾驶技术;普林斯顿大学的 DeepDrive 项目在开发时也选择了在 GTA V  进行测试。

屏幕快照 2017-07-08 上午11.57.46.png

Google 一下,这样例子还能找到很多,为什么 GTA V 被自动驾驶「盯上了」呢?

玩过 GTA 游戏的人应该都知道,游戏中的城市布局往往都能在现实中找到原型,而 GTA V 的城市(Los Santos)简直就是洛杉矶的翻版,圣莫妮卡海滩、日落大道、好莱坞……这些地标都能在游戏里一一找到对应。

更为重要的是,GTA V 拥有一个拟真程度很高的开放世界,游戏中天气会发生变化,交通环境也非常复杂。虽然玩家们常常为了完成任务选择在城市横冲直撞,但只要你愿意,也可以盯着红绿灯和行人在游戏里做一个「守法公民」的(我有一个朋友就是这么做)。

353c51-Map01.png

编辑:poster