cmu博士用机器学习做出能够通关《超级马里奥兄弟》的人工智能 | 36氪
卡内基梅隆大学博士tom murphy写了一个可以通关《超级马里奥兄弟》等任天堂经典游戏的程序。这个程序可以玩基本上所有的任天堂游戏,但是它不一定每个都能够打赢。
这种程序算是一种比较简单的人工智能,它的算法是机器学习的一种。nes游戏主机只有2kb的内存,其中会主要记录游戏的状态,包括游戏分数和人物所在位置。murphy通过记录nes游戏主机内存在玩游戏中的演变,以提升游戏的分数为目标,训练人工智能做出正确的选择或操作。它的决策方法也包括一些贪婪法类的算法。
经过几次迭代之后,murphy的程序可以打通《超级马里奥兄弟》的前两关,世界1-1和世界1-2。因为这个人工智能的设计,它会做所有加分的行为,比如吃币。murphy还发现在无形之中,这个人工智能发现了很多他以前都不知道的《超级马里奥兄弟》中的小bug,而且自动开始利用这些bug去通关。比如,你知道mario如何可以用头去干掉敌人吗?人工智能知道:mario在跳起后的下降时是无敌的,所以头和脚都可以干掉敌人。人工智能能够如此精准地发现而且利用其它程序中的漏洞,很明显,未来的黑客大战将是人工智能对人工智能,因为毕竟人工智能的第一语言就是机器语言。
murphy也试着让这个程序去打其它的任天堂游戏,比如《俄罗斯方块》。虽然它不能赢,但是效果还是很有趣的。在它快要输的时候,人工智能会把游戏暂停,因为这是它在那时能做的最好的选择。看来人工智能也会耍赖。
这是tom murphy论文的全文和视频,大约在6分钟开始打《超级马里奥兄弟》,用头在第10分钟:
via: techcrunch.com