只要挂科100次,你就能考100分了。

差友们,你们听说过去年 Dota 2 职业玩家 DENDI 被 openAI 单挑打赢的故事吗?

除了 Dota 2,连围棋这种古老的游戏也被 AI 攻陷了。。。
其实 AI 在玩儿 Dota 2 等游戏时是可以计算出成功方法的,比如技能弹道飞行时间,碰撞提及等等。
但现实生活中的复杂场景用到的 AI,例如图像识别等等,其实是靠样本加大量试错训练出来的。
油管上一个 Up 主 Code Bullet 写了一个 AI 尝试攻克一个名为 “ 世界上最难的游戏 ”。
这个游戏有的差友也许玩儿过,长这样↓

游戏目的很简单,用键盘操纵红色方块,使其从左端的绿色区域跑到右端的绿色区域,碰到蓝色小球就算输掉。
上图看起来不难,实际操作起来很令人炸毛,因为红色方块的速度很慢。
而且那只是第一关而已,随着关卡提升难度可以上升到这种↓

个别关卡还需要玩家操作方块,吃掉如下图右下角的小黄球,再跑到绿块儿才算过关。

如果交给 AI 呢?
为了训练这个 AI,首先需要搭建一个场景。
这个场景很简单,就是一堆线条和色块。

加上一些来回移动的蓝色小球。

最后加上方块,设置一下目的地。
。。。就会发现红块儿直接穿过墙和蓝点就到达了终点,好的任务完成。

呃,但是这样做完全没有了意义:没有游戏规则的游戏是不完整的游戏。
规则一:红块儿不能跑出黑线。
因此要给边线加上 “ 碰撞 ” 的逻辑。

规则二:红块儿碰到蓝球算失败。

接着就是重头戏,如何训练 AI 。
基本思路是这样的:让方块按照随机方向移动一段距离,如果死了,那下一次就不能走同样的路径。
首先,让每个 AI 玩家移动 100 次,为了训练效率,同时放出 500 个 AI 玩家重复玩这个游戏,“ 死 ” 光了换下一轮,并且回避上一轮的错误操作。

但是玩儿了很久也没啥进展,只有个别运气好的跑得远了一些。
成绩最好的小方块用绿色标注了出来

这套 AI 只学会了避错,没有进步,这不能算是在学习。
因此改进一下:
1. 一开始只让 AI 移动 10 次。
2. 10 次以后,直接 “ 杀 ” 死没有到达终点的玩家。
3. 每进行 5 轮,就多给 AI 移动 5 次的机会,也就是说 6 - 10 轮可以移动 15 次,11 - 15 轮可以移动 20 次。
这样一来,AI 不光要避开会撞蓝点的路线,还要避开花费移动次数较多的路线。
随着训练的进行,可以看到大部分红块都能跑出出发点了~

大概经过 50 轮迭代,红块最终走完了第一关。。。

用差不多的方法,更难的关卡也能用风骚的走位搞定~

“ 失败是成功之母 ” 算是这个训练过程的中心思想了。。。
其实这个不算是真正的 AI。
这个电脑控制的玩家只是在记路线,并不像人类一样理解规则在玩儿。
但是这种训练方式充分利用了计算机记性好,不怕累等特点。
这种方式我们称作机器学习,看起来不那么 “ 聪明 ”,其实生活中的大部分 AI 应用都是这么训练出来的。
其实高科技背后的原理也并不复杂。
图片来源
1. DENDI 1v1 vs BOT AI - TI7 DOTA 2
2. AI Learns to play the Worlds Hardest Game
资料参考
1. AI Learns to play the Worlds Hardest Game
“ AI:我怕被看穿吓到人类,演失败演得累死了 ”

关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
关注网络尖刀微信公众号随时掌握互联网精彩
- 1 立德少年时 树人天地间 7904188
- 2 女子罕见被控迷信罪 “供奉”2.1亿 7808984
- 3 人民币再次升值 7711792
- 4 中国继续成为全球增长的重要引擎 7618571
- 5 16岁少年靠一只烤鸡日入过万 7523635
- 6 中央财办:扩大内需是明年首位任务 7425809
- 7 吴秀波被执行6200万 7332123
- 8 山东东营一对新人用1000元办了婚礼 7238594
- 9 “天价救护车”涉事医院被罚五千元 7140572
- 10 海南自贸港18日正式启动全岛封关 7046967







差评
