工程师花5万小时训练AI游玩《宝可梦》红版 突破第一道馆但走不出月见山

图/撷取自 YouTube@Peter Whidden

在经历长达 5 万小时的训练与学习后,一位工程师成功让一套 AI 模块学会如何游玩《宝可梦:红版》,创造出能够自行探索游戏,组成宝可梦队伍,并成功击败第一道馆的算法。 然而,这套 AI 一直到计划结束时依然无法顺利走出前往第二道馆的月见山,或学会不要花钱买鲤鱼王。 即使如此,这项实验依然让玩家一窥机器学习技术的运作方式。

根据工程师 Peter Whidden 分享的流程视频,这套 AI 能够在模拟器上以打破常规的输入方式与游戏进行互动,那就是能够像人类一样先按下一个操作按键后才观察会发生什么事。 在实验的开头,Whidden 设置一段长约两小时游戏时间的学习流程,并利用模拟器的加速功能将其缩短到现实时间的 6 分钟左右。 在正式展开后,他更进一步让 40 个测试情境同步进行。

由于机器算法在本质上并不在乎「全破」一款游戏,因此 Whidden 为 AI 算法设计一套在完成特定目标时能够获得奖励的系统。 为了鼓励 AI 在《宝可梦:红版》中进行探索,只要能够在地图上看到一些之前没有看过的东西,就能够获得奖励点数。 最终 AI 顺利从真心镇出发,穿过常盘森林,来到深灰市挑战第一道馆。

在那之前,AI 还需要更加完善的奖惩系统。 在学会看到新事物能够获得奖励后,虽然 AI 会开始不断向前迈进,但完全不在乎收服宝可梦或进行对战,而是在遇到野生宝可梦时立刻逃走。 因此,Whidden 为奖励系统加入更多内容,依照 AI 宝可梦队伍的等级总和给予奖励,让它开始有动力去练等和捕捉宝可梦。

图/撷取自 YouTube@Peter Whidden

只不过在某一次的演算中,AI 走进宝可梦中心时意外开启 PC,并在其中存放几只宝可梦。 由于 AI 获得的奖励点数是依照队伍等级总和而定,这个行为导致 AI 获得的分数瞬间骤降。 为了避免重蹈覆辙,AI 在那之后的所有演算中都选择避开宝可梦中心,完全不敢进去为宝可梦补血,这让 Whidden 不得不再次插手调整。

这套 AI 算法最基本的运作方式,其实就是随机在《宝可梦:红版》中走动与游戏进行互动,直到发现能够以最有效率的方式获得最多奖励的路径,并将经验保留到下一次的演算中。 在挑战的过程中,AI都只会使用最基本的攻击招式撞击来进行对战,直到该招式的 PP 用完后才会使用其他选择。 某次演算中,AI终于发现杰泥龟的泡沫攻击能够对小刚的宝可梦造成大量的伤害,最终顺利击败这位道馆馆主。

图/撷取自 YouTube@Peter Whidden

即使 AI 在对于游戏的理解与逻辑上依然比不上人类,但这场实验发掘了一些更加深层的细节。 根据 Whidden 的发现,AI 在经历一段时间的演算后就开始固定以看似不寻常的路径从真心镇出发,直到遇到第一只野生宝可梦。 然而,这一系列的操作其实能够保证 AI 能够一球抓到遇见第一只宝可梦。 也就是说,AI 发现一个 Speedrun 玩家可能要花上好几年的时间研究才有机会注意到的系统漏洞。

这套 AI 算法在成功突破第一道馆时基本上已经达成了 Whidden 最初设定的目标,但 Whidden 决定要让 AI 的《宝可梦:红版》冒险继续下去,看看目前的奖励机制到底能让它走多远。 可惜的是,第一和第二道馆之间的月见山对于看到新事物就能加分的 AI 来说实在是太过于容易分心,因此一直到 Whidden 决定让实验告一段落前都无法顺利抵达华蓝市。

除此之外,AI似乎非常喜欢从鲤鱼王大叔手中购买鲤鱼王,因为这样的行为能够让AI宝可梦队伍的等级总和立刻多出五等,因此到实验结束前,AI在其中1万次的演算中都跑去买了鲤鱼王。 另外值得注意的是,AI 有一次将抓来的小拉达命名为了「AI」,让人细思极恐。

(0)
打赏 微信扫一扫 微信扫一扫

相关推荐

发表评论

登录后才能评论