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

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

首页角色扮演Code AI 2更新时间:2024-04-09

差友们,你们听说过去年 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 应用都是这么训练出来的。

其实高科技背后的原理也并不复杂。

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved