AI已经可以学会看主播视频,来教自己打游戏了( 二 )


并且MineDojo在部分时刻依然要借助修改游戏数据才能达到目的,比如攻略末影龙的时候,只有“作弊”让末影龙站在原地挨打才能通关 。

AI已经可以学会看主播视频,来教自己打游戏了




手足相残的残忍录像
不过,MineDojo依然呈现出了AI可以通过现有视频、资料进行学习的能力 。唯一遗憾的是,目前还没有看到多少MineDojo实装后的反馈,因此实际效果如何也存在一定的疑问 。好处是它供所有人免费下载,当作AI入门的免费资料试试未尝不可 。
2

得益于当代互联网的发展,AI能从视频资料中获取自己想要的知识 。人类也是如此,制作一个会玩游戏的AI,有时候看视频就够了 。
视频比教科书更进一步的是,哪怕观众什么也不明白,不知道python语言、架构、蒙特卡洛算法是什么,每个人依然能从视频里得到乐趣,随后潜移默化地了解知识 。
在这一领域起代表性作用的,是那些致力于设计游戏AI的视频制作者们 。
首先要提到的是人们或许更为熟知的“遗传算法”,一个在上个世纪的六十年代提出,被这个世纪所发扬广大的技术 。
它类似生物学意义上的进化论,具体来说,就是通过系统生成一堆什么也不懂的婴儿,让他们在大自然(程序)世界里尝试各种操作,通过选择表现更好的子代,达到不断优化AI表现的目的 。
用油管上一条《AI学习玩JUMP KING》的视频举例,大致场景就是这样的 。
AI已经可以学会看主播视频,来教自己打游戏了




先生500个孩子试试
视频作者Code Bullet(下文简称CB)已经用这个算法成功制作出了不少AI通关游戏的视频,《吃豆人》《Flappy Bird》这类强调优化AI行动的游戏都可以沿着类似的思路走下去 。
思路是清晰的,做起来也很“简单” 。翻阅一下CB大部分制作AI的视频,都可以看到他的过程主要分为了三个部分 。
AI已经可以学会看主播视频,来教自己打游戏了




“制作一个会玩游戏的AI仅需要三步”
重做游戏的原因我们稍后再进行讨论,CB视频中展现的精髓部分在于遗传算法的“筛选”功能 。不同于物竞天择的大自然,这里我们才是负责挑选AI的上帝 。
刚出生的AI当然是什么也不懂得的小婴儿,给它们添加行动指令,AI也不会懂得往哪里行动有什么意义 。因此常见的做法是给随机行动的AI设置奖励和惩罚,例如跳跃一次加1分、达到下一关加2分、左右移动加0.5分,向下跌落则扣1分 。
AI已经可以学会看主播视频,来教自己打游戏了




“往上走就好,往下是坏,这很简单”
每代AI只有五次行动机会,五次行动结束后,跳跃高度最高的AI就会成为下一代的模范,此后的每一代AI都会遵循上一代摸索出最好的路径前进——这就是很简单的进化了 。
不过这么简单的规则还没有办法解决某些“思考”问题,如果某关需要先下降,再向上跳跃的话,死脑筋的AI就会因为扣分原则而拒绝往下跳 。
解决办法可以是在降落地点设置同样可以提供奖励的收集品,引导AI通过收集奖励,前往更高的场景 。
AI已经可以学会看主播视频,来教自己打游戏了




跟游戏引导玩家的方式其实很像
等所有程序都准备好之后,只要让AI自己跑起来就行了,它们自然会一代代地找到最好走的路线,最终完成游戏通关的任务 。
AI已经可以学会看主播视频,来教自己打游戏了

推荐阅读