老司机养成:教神经网络变身《马里奥赛车》高手 | 论文+代码

本文来自AI新媒体量子位(QbitAI)

老司机养成:教神经网络变身《马里奥赛车》高手 | 论文+代码

神经网络持续在游戏界立功,这次拿下的是经典游戏:《马里奥赛车64》,而且只需要很小的计算力就能完成。

先来看看成果,这段视频是训练两天半之后的表现,神经网络已经变成老司机了,漂移、撞车都玩得666~


这套玩转《马里奥赛车64》的AI,是一个在BizHawk模拟器中基于NEAT算法搭建的神经网络,使用Lua语言。

所谓NEAT算法,全名是NeuroEvolution of Augmenting Topologies,增强拓扑神经网络。这是一种使用遗传算法进化人工神经网络的方法。NEAT的理念是从小型、简单的网络开始,然后逐渐向复杂的网络进化升级。

老司机养成:教神经网络变身《马里奥赛车》高手 | 论文+代码

NEAT的交流讨论页在此:

https://www.cs.ucf.edu/~kstanley/neat.html

关于NEAT的更多细节,可以参考这篇论文《Evolving Neural Networks through Augmenting Topologies》:

http://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf

回到这次的《马里奥赛车64》,作者还把代码公开在GitHub上了。要想尝试这个代码,需要在某一等级的开头创建一个存档,代码默认存档名称为“BB150.state”,不过你可以通过改变第54行代码(state_file = "BB150.state")进行调整。

记得确保存储状态的文件在Lua文件夹里哈。

GitHub代码在此:

https://github.com/nicknlsn/MarioKart64NEAT

老司机养成:教神经网络变身《马里奥赛车》高手 | 论文+代码

本文作者:问耕 
原文发布时间:2017-08-27
上一篇:最新软件外包平台有哪些


下一篇:PFQ —— 支持多语言的高性能网络监控框架