前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >GAN版马里奥创作家来了:一个样本即可训练,生成关卡要素丰富 | 开源

GAN版马里奥创作家来了:一个样本即可训练,生成关卡要素丰富 | 开源

作者头像
量子位
发布2020-08-11 15:59:59
4900
发布2020-08-11 15:59:59
举报
文章被收录于专栏:量子位量子位
鱼羊 发自 凹非寺 量子位 报道 | 公众号 QbitAI

对超级马里奥的关卡太熟悉,想玩点刺激的?

现在,汉诺威大学的研究人员推出了一个新的GAN,能够生成船新、可玩的超级马里奥关卡。

画风完美统一,难点出其不意:

并且,仅需要一个示例,就可以进行训练。

比起我这样的马里奥乱造家,看上去有逻辑多了。

并且,他们已经把代码开源啦。

GAN版马里奥创作家

在《超级马里奥制造2》这款游戏里,玩家可以组合不同的关卡零件,凭借自己的灵感创作超级马里奥关卡。

事实上,这只名为TOAD-GAN的AI生成关卡的逻辑也与之类似。

TOAD-GAN是基于SinGAN架构的扩展,能够生成基于token的超级马里奥关卡。

所谓token长这样:

通过使用级联的生成器和判别器,SinGAN可以仅凭单一图像,训练生成模型。

基于这个架构,在训练中,一个关卡被采样为N个不同的尺寸。

N的选择标准,是生成器和判别器中卷积滤波器的感受野能够覆盖最小尺寸下关卡高度的至少一半。

这样一来,既可以确保关卡中较大的结构被正确建模,也能保障其全局位置的变化。

在空间下采样的过程中,一些小但重要的结构可能会丢失。为此,研究人员提出了一种保留重要token的下采样方法。

具体步骤如下:

首先,在单样本编码的训练关卡上,使用双线性下采样来创建所选尺寸的基础关卡。

针对每个尺寸中的每个像素,选择值大于0的token。并从该列表中,保留层次结构中等级最高的token,将其余token设置为0。

然后,在每个像素的所有通道上应用Softmax。

接着,还需要对较小尺寸的输出进行双线性上采样。

这样,TOAD-GAN就可以通过将预定义输入注入到生成器级联中,来执行关卡编写。

研究人员表示,这种应用对于程序内容生成而言十分有趣,因为给定token,设计者只需指定参考关卡或布局,生成器就会自动创建其变体,对数据量的要求并不高

实验结果

研究人员对TOAD-GAN生成的结果进行了定性对比。

可以看出,与超级马里奥的原生关卡相比,TOAD-GAN生成的关卡在保留了风格的基础上,产生了不同的元素组合方式。

与此前的其他方法不同的是,TOAD-GAN是一个生成器对应一个关卡。这也就避免了不同类型的关卡风格被混合到一起,造成混乱。

并且,也不会因为依赖于小样本的问题,而导致(p)中出现的重复情况。

所以,TOAD-GAN生产成本的游戏关卡在视觉效果上,更加令人信服。

研究人员还用Baumgarten等人提出的马里奥通关AI,验证了生成关卡的有效性。通关AI能在65%的随机生成关卡中取胜。在原生关卡中,其胜率是52%。

不只是超级马里奥

其实,不只是超级马里奥,研究人员也通过实验证明,TOAD-GAN可以生成任何基于token的游戏的关卡,比如超级马里奥赛车。

TOAD-GAN只用原生赛道样本进行训练。

对布局进行种子化处理,就可以保证赛车轨道的连接性和可玩性,还能让轨道结构与原始样本产生明显的不同。

研究人员还表示,下一步他们还会将游戏机制揉进生成过程中,并将TOAD-GAN应用于Minecraft这样的像素游戏,或具有非线性关卡结构的迷宫游戏。

传送门

论文地址: https://arxiv.org/abs/2008.01531

GitHub项目地址: https://github.com/Mawiszus/TOAD-GAN

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-08-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 量子位 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • GAN版马里奥创作家
  • 实验结果
  • 不只是超级马里奥
  • 传送门
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档