没有合适的资源?快使用搜索试试~ 我知道了~
1学习使用GameGANSeung Wook Kim1,2,3周 宇浩2 <$Jonah Phalba1,2,3Antonio Torralba4Sanja Fidler1,2,31NVIDIA2多伦多大学3Vector Institute4 MIT@nvidia.comtorralba@mit.eduhenryzhou@cs.toronto.edu摘要仿真是任何机器人系统的关键组成部分为了正确模拟,我们需要编写复杂的环境规则:动态代理的行为,以及每个代理的行为如何影响其他代理的行为。在本文中,我们的目标是通过简单地观察代理与环境的交互来学习模拟器。我们专注于图形游戏作为真实环境的代理我们介绍GameGAN,一个生成模型,学习在训练过程中通过输入剧本和键盘动作来视觉模仿所需的游戏。只要智能体按下一个键,GameGAN就会使用精心设计的生成对抗网络“渲染”下一个屏幕。我们的方法提供了优于现有工作的关键优势:我们设计了一个记忆模块,它建立了一个内部的环境地图,允许代理返回到以前访问过的位置,具有高度的视觉一致性。此外,GameGAN能够在图像中分解静态和动态组件,使模型的行为更具可解释性,并与需要对动态元素进行显式推理的下游任务相关。这使许多有趣的应用程序,如交换游戏的不同组件,以建立新的游戏,不存在。我们将发布代码,使人类玩家能够使用我们的GameGAN玩生成的游戏。1. 介绍在部署到现实世界之前,人工智能体需要在具有挑战性的模拟环境中进行广泛的测试因此,设计好的模拟器非常重要。传统上,这是通过编写程序模型来生成有效和多样化的场景,以及复杂的行为树来完成的,这些行为树指定场景中的每个演员如何对其他演员(包括自我代理)做出的动作做出反应。然而,编写包含大量不同场景的模拟器是非常耗时的,并且需要高度熟练的图形专家。学习-电子邮件:{seungwookk,sfidler}@ nvidia.com†YZ在NVIDIA实习期间参与了该项目。图1. 如果你看左边的照片,你可能会认为她在玩岩谷彻的吃豆人,但她不是!她实际上是在玩GAN生成的Pacman版本。在本文中,我们介绍了GameGAN,它通过观察大量的游戏回合来学习再现游戏。此外,我们的模型可以从动态对象中分离背景,使我们能够通过交换组件来创建新的游戏,如中心和右侧图像所示。通过简单地观察真实世界的动态来进行模拟是最具可扩展性的方法。现有的大量工作旨在学习行为模型[2,28,16,3]。然而,这些通常需要大量的监督,例如访问代理的地面实况轨迹。我们的目标是通过简单地观察代理与环境的交互来学习模拟器。为了简化问题,我们将其框定为2D图像生成问题。给定观察到的图像帧序列和代理采取的相应动作,我们希望模拟图像创建,就像从对代理的动作做出反应的真实动态环境中“渲染”一样我们专注于图形游戏作为真实环境的代理。我们的目标是在测试时替换图形引擎,通过使用学习模型在视觉上模拟游戏。这是一个具有挑战性的问题:不同的游戏具有不同数量的组件以及不同的物理动力学。此外,许多游戏需要在环境中保持长期的一致性。例如,想象一个游戏,其中一个智能体在迷宫中导航。当智能体离开并稍后返回到一个位置时,它期望场景看起来与它之前遇到的一致。在视觉SLAM中,已知检测循环闭合(返回到先前位置)是具有挑战性的,更不用说生成循环闭合了。最后但并非最不重要的是,决定性和随机性行为通常存在于游戏中,并且后者的建模被认为是特别困难的。在本文中,我们介绍了GameGAN,一个生成12311232学习模仿所需游戏的模型。GameGAN在训练过程中输入剧本和键盘动作,并通过对动作的调节来预测下一帧,即。代理人按下的键。它直接从图像和动作对的展示中学习,而无需访问底层游戏逻辑或引擎。我们对最近引入的世界模型[11]做了一些改进,旨在解决类似的问题。虽然[11]采用了简单的条件解码器,但GameGAN具有精心设计的架构。特别是,我们提出了一个新的内存模块,鼓励模型建立随机 噪声t记忆卡���图像处理存储器普雷特动态引擎阿勒特渲染引擎图像加1环境的内部地图,允许代理以高视觉舒适度返回到先前访问的位置。此外,我们介绍了一个专门设计的解码器,学习解开静态和动态的图像内的组件。这使得模型的行为更具可解释性,并进一步允许我们通过交换不同的组件来我们在修改后的Pacman和VizDoom环境[17]上测试了GameGAN,并提出了几个定量和定性评估的合成任务。我们还引入了一个回家的任务来测试学习的模拟器的长期一致性。请注意,GameGAN支持多种应用程序,例如将给定游戏从一个操作系统转移到另一个操作系统,而无需重写代码。我们的GameGAN将提供给人类玩家,使他们能够使用GAN玩游戏,并以创造性的方式修改它们。2. 相关工作生成对抗网络:在GAN [9]中,生成器和控制器玩一个adverserial游戏,鼓励生成器产生现实的输出。为了获得对生成的输出的期望控制,分类标签[23]、图像[15,21]、标题[29]或掩码[27]作为生成器的输入提供。作品如[33]通过使用循环一致性损失将源的风格转移到目标视频来合成新视频[35,18]。请注意,这是一个比我们工作中考虑的问题更简单的问题,因为提供了目标视频的动态内容,只需要修改视觉风格。在本文中,我们考虑生成动态内容本身。我们采用GAN框架,并使用用户提供的动作作为生成未来帧的条件据我们所知,我们是第一个使用动作调节GAN来模拟游戏模拟器的工作视频预测:我们的工作与视频预测的任务相似,视频预测的目的是在给定先前帧的序列的情况下预测未来帧。几个作品[31,5,26]训练循环编码器以解码未来帧。大多数方法都是用重建损失来训练的,图 2.概述 的 GameGAN: 的 动力学 发动机需要at、zt、mt-1和xt作为输入,以在时间t更新隐藏状态。可选地,它可以写入外部存储器模块M和从外部存储器模块M读取(在虚线框中)。最后,渲染引擎用于解码输出图像xt+1。所有模块都是神经网络,并经过端到端的训练。误差典型地随时间累积并导致低质量的预测。EST-LSTM模型[5,26]成功地将生成的图像缩放到更高的分辨率,但不能处理像Pacman这样的环境中存在的复杂随机性。最近,[11,7]提出了基于VAE的框架来捕获任务的随机性。然而,生成的视频是模糊的,并且生成的帧往往会忽略某些细节。GAN损失以前已经在几个工程中使用[8,20,32,6]。[8]使用对抗性损失从不同视频的内容中分离出姿势。在[20]中,VAE-GAN [19]公式用于生成视频的下一帧我们的模型与这些作品的不同之处在于,除了生成下一帧之外,GameGAN还学习环境的内在动态。世界模型: 在基于模型的强化学习中,一个人利用与环境的互动来学习动态,ICS模型World Models [11]利用学习的模拟环境来训练RL代理。最近,世界模型已被用于生成雅达利游戏在一个并行的工作[1].这些模型的主要区别在于架构的设计:我们引入了一个内存模块,以更好地捕捉长期的一致性,和一个精心设计的解码器,解开游戏的静态和动态组件。3. GameGAN我们感兴趣的是训练一个游戏模拟器,它可以模拟环境的确定性和随机性。 特别是,我们专注于一个动作条件模拟器在图像空间中,其中存在自我中心的代理,其在时间t根据给定动作atA移动并生成新的观察xt+1。我们假设还有一个随机变量zt<$N(0; I),它对应于环境中的随机性。鉴于历史对于图像x1:t以及at和zt,GameGAN预测下一个图像xt+1。 GameGAN由三个主要的在产生模糊帧的确定性过程中,通常不能很好地处理随机行为https://www.bandainamcoent.com/landing/pac-man1233世界模型GameGAN-MGameGANt ttt=T时间t=T+7图3. 一个人玩GameGAN的截图,在正式版的吃豆人2上训练。 GameGAN学习制作一个视觉上一致的模拟,以及学习的动态游戏很好。在最下面的一行,玩家消耗了一个胶囊,使鬼魂变成紫色。请注意,幽灵在吃胶囊之前接近Pacman,然后逃跑。时间t=0 t=6模块。 动态引擎(第3.1节),它维护一个内部状态变量,将at和zt作为输入,并更新当前状态。对于需要长期一致性的环境,我们可以选择使用外部存储器模块(第3.2节).最后,渲染引擎(第3.3节)生成给定动态状态生成的图像存储器位置动作左下右左左上发动机它可以实现为一个简单的卷积解码器,也可以与存储器模块耦合,以在确保长期一致性的同时解开静态和动态元素。我们使用对抗性损失以及提出的时间周期损失(第3.4节)来训练GameGAN。与一些使用顺序训练来稳定的作品不同,GameGAN是端到端训练的我们在补充材料中提供了每个模块的更多细节。3.1. 动态引擎GameGAN必须了解环境的各个方面如何根据给定的用户操作而变化。例如,它需要知道某些行为是不可能的(例如,穿过墙壁),以及其他对象如何作为该动作的结果而表现。我们将学习这种转换的主要组件称为动态引擎(参见图2中的插图)。它需要访问过去的历史以生成一致的模拟。因此,我们选择将其实现为动作条件LSTM [13],其动机是Chiappa等人的设计。【5】:vt=ht−1 <$H(at,zt,mt−1),st=C(xt)(1)it=σ(Wivvt+Wisst),ft=σ(Wfvvt+Wfsst),o=σ(Wovv+Woss)(2)图4. 视觉化被关注的记忆位置α:标记中心的红点被放置以帮助视觉化。请注意,我们学习了内存移位,因此用户操作并不总是与内存移位的方式一致。在这种情况下,Right将α向左移动,Left将α向右移动。它还学会了在给出无效动作时不移位。图像的编码xt. H是MLP,C是卷积编码器,W是权重矩阵。表示Hadamard乘积。发动机保持标准状态LSTM的变量ht和ct,它们包含关于时间t时当前环境的各个方面的信息。它计算给定at、zt、mt−1和xt的状态变量。3.2. 存储器模块假设我们有兴趣模拟一个环境,其中有一个代理在其中导航。这需要长期的一致性,其中模拟场景(例如,建筑物、街道)不应在代理稍后回到相同位置时改变。对于RNN等典型模型来说,这是一项具有挑战性的任务,因为1)模型需要记住它在隐藏状态下生成的每个场景,2)设计一个强制执行这种长期一致性的损失是不平凡的。我们建议使用外部存储器模块,其动机是神经图灵机(NTM)[10]。存储器模块具有存储器块M∈RN×N ×D,时刻t的关注点αt∈RN×N.ct=ft<$ct−1+it<$tanh(Wcvvt+Wcsst)(3)ht=ottanh(ct)(4)其中ht、at、zt、ct、xt是时间步t处的隐藏状态、动作、随机变量、单元状态、图像。mt−1是前一步中检索到的内存向量(如果使用了记忆模块),it,ft,ot是输入门、遗忘门和输出门。at,zt,mt−1和ht融合成1234vt,st是M包含N×N个D维向量,其中N是块的空间宽度和高度。直观地说,αt是自我中心主体当前所在的位置。M用随机噪声N(0,I)初始化,α0用0初始化,除了中心位置(N/2,N/2)被设置为1。在每个时间步,存储器模块计算:w=softmax(K(at))∈R3×3(5)1235softmaxsoftmax/sigmoid拉克ηh阿勒特布勒姆布ηm布勒布维姆∑拉克什拉ηh普雷拉塞拉克k=1静态动态VizDoom Pacman空间掩蔽转置Conv/MLP重复Concat/Split for黑桃关于StackSpatial Softmax输入/输出张量静态+动态图5. 示例显示了静态和动态元素如何在VizDoom和Pacman游戏中与GameGAN分离。静态组件通常包括环境对象,例如墙壁。动态元素通常是可以随着游戏进展而改变的对象,例如食物和其他非玩家角色。g=G(ht)∈R(6)αt=g·Conv2D(αt−1,w)+(1−g)·αt−1(7)M=write(αt,E(ht),M)(8)mt=read(αt,M)(9)其中K、G和E是小MLP。w是一个学习到的移位核,它取决于当前的动作,该核用于移位αt−1。 在某些情况下,这种转变不应该发生(例如不能在死胡同里前进)。在ht的帮助下,我们还学习了一个门控变量g∈[0,1],它决定了α是否应该移动。E学习从隐藏状态中提取最后,写和读操作软访问由α指定的存储位置,类似于其他神经存储模块[10]。使用这种基于移位的存储器模块允许模型不受块M的大小的限制 因此,我们可以使用任意大小的块,测试时间图4展示了学习记忆转移。由于模型可以自由地将动作分配给不同的内核,因此学习到的转变并不总是与人类的行为相对应我们可以看到右被赋值为左移位,因此左被赋值为右移位。使用门控变量g,它还学习在给定无效动作(例如穿墙)时不移位在我们的例子中,强制长期一致性指的是记住生成的静态元素(例如,背景),并在需要时适当地检索它们。因此,使用存储器模块的益处将来自于在其内部存储静态信息。除了一个新的循环损失(第3.4.2节),我们还在渲染引擎的架构中引入了归纳偏差(第3.3节),以鼓励静态和动态元素的分离。加1草图阶段属性阶段最终渲染阶段图6. 渲染引擎,用于分离静态和动态组件。详见第3.3节。通过学习产生分离的场景来保持一致性。在第4节中,我们比较了每种架构的优点。专用渲染引擎采用向量c={c1,.,cK}作为输入。在这项工作中,我们让K=2,和c ={mt,ht}。 每个向量ck对应于一种类型的实体,并经历以下三个阶段(参见图6)。首先,将 ck输入卷积网络,生成属性映射Ak∈RH1×H1×D1和对象映射Ok∈RH1×H1×1. 它也被馈送到线性层以得到第k个分量的类型向量vk∈RD1 所有分量的O被连接在一起,并通过sigmoid来确保0≤Ok[x][y]≤1或spa-ΣK因此,对于所有情况,O k [ x ][ y ]=1,x,y。生成的对象映射乘以类型向 量 vk 在 每 一 个 位 置 , 并 送 入 一 个 convnet 产 生Rk∈RH2×H2×D2。这是放置第k类物体的位置的粗略草图。但是,每个对象可以具有不同的属性,例如不同的样式或颜色。因此,它经历了属性阶段,其中张量被SPADE层[27,14]转换,其中掩码属性映射Ok<$Ak作为上下文信息给出。它进一步通过几个转置卷积层馈送,最后经过一个注意该过程类似于粗略草图阶段,在粗略草图阶段中,关联的组件通过空间softmax以获得精细遮罩。直觉是,在绘制单个对象之后,它需要决定要绘制的对象的“深度”排序,以便考虑遮挡。让我们把精细掩码记为ηk,最后的张量记为Xk。Af-在此过程之后,通过求和来获得最终图像,3.3. 渲染引擎所有组件,x=Kk=1 ηk<$Xk. 因此,(神经)渲染引擎负责渲染给定状态ht的模拟图像xt+1。它可以简单地用标准转置卷积层实现。然而,我们还引入了一个专门的渲染引擎架构(图6),以确保长期1236我们的神经渲染引擎的架构鼓励它借助时间周期丢失,从记忆向量和隐藏状态中提取不同的信息(第3.4.2节)。我们还在补充材料的第A.5节中介绍了一个具有更大容量的版本,可以生成更高质量的图像1237不3.4. 培训GameGAN对 抗 训 练 已 成 功 用 于 图 像 和 视 频 合 成 任 务 。GameGAN利用对抗训练来学习环境动态并产生逼真的时间相干模拟。对于某些情况下,需要长期的一致性,我们提出了时间周期损失,解开静态和动态组件,学习记住它所产生的。3.4.1对抗性损失有三个主要组成部分:单一图像鉴别器,动作鉴别器和时间鉴别器。单个图像缩放:为了确保每个生成的帧都是真实的,单个图像渲染器和GameGAN模拟器进行对抗游戏。无条件反射:GameGAN必须如实反映代理人采取的行动。我们给出三对动作条件反射:(x,x,a),(x,x,a<$)和(x,x,a)。x表示图7. 在这项工作中研究的数据集的样本。对于Pacman和Pacman-Maze,训练数据由部分观察到的状态组成,如红框所示左:吃豆人,中:Pacman-Maze,右:VizDoom所述存储器模块和所述渲染引擎用于将静态元素与动态元素分开。在运行一些时间步长T之后,存储器块M填充有来自动态引擎的信息使用存储器位置历史αt,我们可以检索存储器向量mt,如果位置αt处的内容已经被修 改 , 则该 存 储器 向 量 mt 可 以 不 同 于 mt 现 在 ,c={mt,0}被传递到渲染引擎以产生Xm t,其中0是零向量,并且Xmt是输出com。t t+1tt t+1tt t+1t t真实图像,x∈t生成的图像,a∈t∈Aa sam-pledn eg at iv eactiona<$t/=at. TheJobofthe对应于m的分量。我们使用以下机翼损失:ΣT是判断两个帧是否一致,行动上因此,为了愚弄玩家,GameGANL循环=||(十)||(10)不以产生反映动作的现实的未来帧。时间性:环 境 中 的 不同实体可以表现出不同的行为,也可以在部分观察状态下出现或消失。为了模拟节奏一致的环境,在生成下一个状态时必须考虑过去的信息因此,我们采用了一个时间序列,这是实现为3D卷积网络。 它将几个帧作为输入,并决定它们是真实的还是生成的序列。由于已知条件GAN架构[22]用于学习忽略潜在代码[34,30]的简化分布,因此我们添加信息正则化[4],其最大化潜在代码zt和对(xt,xt+1)之间的互信息I(zt,φ(xt,xt+1))。为了帮助动作条件熵,我们添加了一个项,该项使at和apred=f(xt+1,xt)之间的交叉熵损失最小化。φ和φ都是MLP,除了最后一层之外,它们与动作条件下的φ共享层。最后,我们发现在图像和特征空间中添加一个小的重建损失有助于稳定训练(对于特征空间,我们减少了生成的和真实帧的单个图像重建特征之间的距离)。详细的介绍-补充材料中提供了这些信息。3.4.2比丢失基于RNN的生成器能够跟踪最近的过去以生成相干帧。然而,它很快就忘记了遥远的过去发生了什么,因为它只是为了产生现实的下一个观察结果。为了确保静态元素的长期一致性,我们利用作为动态元素(例如在吃豆人中的移动幽灵)不会在时间上保持相同,因此鼓励引擎将静态元素放入内存向量中以减少L周期。从而实现长期的一致性。为了防止模型试图ig的平凡解决方案在存储器组件之前,我们使用了一个均衡器,它从隐藏状态向量中最小化精细掩码minηh中所有位置的和,使得Xmt必须包含coni。帐篷另一个简单的解决方案是,如果所有动作的移位核都被学习为永远不会与其他动作的方向相反。 在这种情况下,m_t和m_t将总是相同的,因为相同的存储器位置将永远不会被重新访问。因此,我们提出了一个约束,即对于具有负对应物a的动作a(例如,上下),a等于水平和垂直翻转的K(a)。以来大多数需要长期一致性的模拟器包括导航任务,找到这样的对应物是微不足道的3.4.3培训计划GameGAN是端到端训练的。我们采用了一个预热阶段,在最初的几个时期将真实帧送入动态引擎,然后慢慢将真实帧的数量减少到1(始终给定初始帧x0我们分别使用18帧和32帧在Pacman和Vizddom环境中训练GameGAN。4. 实验我们提出了定性和定量的实验。我们主要考虑四种模式:1)LSTM:1238时间t=0t=11LSTM世界模型GameGAN-MGameGAN图8.从同一初始屏幕推出模型。使用重建损失训练的LSTM生成没有细化细节的帧(例如,食物)。世界模型很难保持时间一致性,导致偶尔出现显著的不连续性。GameGAN可以产生一致的模拟。模型训练仅具有重建损失,其本质上类似于[5],2)世界模型[11],3)GameGAN-M:我们的模型没有内存模块,具有简单的渲染引擎,以及4)GameGAN:完整的模型与内存模块和渲染引擎的解纠缠。在以下三个数据集上进行实验(图7):Pacman:我们使用Pacman游戏3的修改版本,其中Pacman代理从完整的14x14环境中观察到一个以自我为中心的7x7网格。附件是为每个事件随机生成的这是测试模拟器质量的理想环境,因为它既具有确定性(例如,游戏规则视点移动)和高度随机的分量(例如,食物和墙壁的游戏布局;游戏动态与移动的幽灵)。剧集中的图像是84x84,空间是A={left,right,up,down,stay}。提取长度大于或等于18的45K集,并且提取40K集。用于训练。 训练数据是通过使用经过训练的DQN [25]代理生成的,该代理观察具有高熵的完整环境,以允许探索不同的动作序列。每一集都由一系列以吃豆人为中心的7x7网格和动作组成。吃豆人迷宫:这款游戏类似于Pacman EX。只是它没有重影,并且它的壁是从迷宫生成算法随机生成的,因此结构更好。与Pacman使用相同数量的数据。Vizdoom:我们遵循Ha和Schmidhuber [11]的实验设置,使用Viz- Doom平台的接管模式[17]。训练数据由使用随机策略提取的10k集组成剧集中的图像为64x64,动作空间为A={left,right,stay}4.1. 定性评价图8显示了不同模型在Pac- man数据集上的展示。LS-LSTM,它只通过重新训练。3http://ai.berkeley.edu/projectoverview.html构造损失产生模糊图像,因为它不能捕获多模态未来分布,并且误差快速累积。世界模型[11]为VizDoom生成逼真的图像,但它在模拟高度随机的Pacman环境时遇到了麻烦。特别是,它有时会遭受大的意想不到的不连续性(例如,t=0至t=1)。另一方面,GameGAN产生时间一致和逼真的锐利图像。GameGAN仅由几个卷积层组成,以大致匹配World Model的参数数量。我们还提供了一个版本的GameGAN,可以在补充材料第A.5节中生成更高质量的图像。分解静态&动态元素:我们的GameGAN与内存模块的训练,以区分静态元素从动态元素。图5显示了Pacman环境中的墙壁和VizDoom环境中的房间是如何与诸如幽灵和火球之类的动态对象分离的。有了这个,我们可以创建有趣的环境,其中每个元素都与其他对象交换。而不是令人沮丧的房间Viz- Doom,敌人可以放置在用户我们可以交换背景,而无需修改原始游戏的代码。我们的方法将游戏视为一个黑盒子,并学习复制游戏,使我们能够轻松地修改它。解开的模型也开辟了许多有前途的未来方向,这是不可能与前模型。一个有趣的方向是学习多个解开的模型并交换某些组件。当动态引擎学习环境的规则并且渲染引擎学习渲染图像时,简单地从一个模型的隐藏状态学习线性变换以利用另一个模型的渲染引擎可以工作。Pacman-Maze生成:Pacman-Maze上的GameGAN在每个时间步产生一个部分网格,可以连接以生成完整的迷宫。它可以1239动态Pacman +房间远近景时间t=0t=10静态吃豆人+马里奥动态VizDoom+字段静态VizDoom +马里奥图9.GameGAN在Pacman和VizDoom上使用随机图像交换背景/前景请注意,这是一个具有挑战性的部分观察强化学习任务,其中智能体观察7x7网格。代理使用带有LSTM组件的A3C [24]进行训练VizDoom:我们使用协方差矩阵自适应进化策略[12]来训练RL代理。在[11]之后,我们使用相同的设置与相应的模拟器。图10.通过在GameGAN模型上使用pacman代理遍历生成迷宫大多数迷宫都是现实的。右图显示了未正确闭合回路的故障情况。生成逼真的墙壁,由于环境足够小,GameGAN还可以学习地图的粗略大小,并在大多数情况下正确绘制矩形边界。图10的右下角显示了一个失败案例,它无法闭合循环。4.2. 任务1:训练RL Agent定量测量环境质量是一个挑战,因为未来是多模态的,而地面真实的未来并不存在。测量它的一种方法是通过在模拟环境中学习强化学习代理模拟环境应该足够接近真实环境,以便在真实环境中表现良好。它必须学习真实环境中存在的动态、规则和随机性。来自与真实环境非常相似的更好的模拟器的代理应该得分更高。我们注意到这与基于模型的RL密切相关。由于GameGAN内部没有表示游戏得分的机制,我们训练了一个外部分类器。分类器被给予N个先前的图像帧和当前动作以产生输出(例如,赢/输)。吃豆人:对于这个任务,吃豆人代理必须通过吃食物(+0.5奖励)和捕获旗帜(+1奖励)来获得高分。当被鬼吃掉或使用最大步数(40)时,表 1. 数 字 报 告 为 平 均 评 分 ± 标 准 差 。 越 高 越 好 。 对 于Pacman,在真实环境中训练的智能体达到3.02± 2.64,这可以被视为上限。当得分达到750分时,VizDoom被认为已解决。表1示出了结果。对于所有实验,分数都是在100个测试环境中计算的,我们报告了平均分数和标准差。在EST-LSTM模拟器中训练的代理与随机策略的代理表现相似,这表明模拟与真实情况相差甚远。在Pacman上,GameGAN-M表现最好,而GameGAN和WorldModel 的 得 分 相 似 。 当 得 分 达 到 750 分 时 ,VizDoom被认为已解决,GameGAN解决了游戏。请注意,World Model获得了更高的分数,但GameGAN是第一个使用GAN框架训练的作品,可以解决游戏。此外,GameGAN可以进行端到端的训练,而不像WorldModel那样采用顺序训练来保持稳定性。一个有趣的观察是,GameGAN在吃豆人环境中表现出比GameGAN-M更低的性能。这是由于在训练模型时具有额外的复杂性,其中环境不需要长期一致性以获得更高的分数。我们发现,在训练神经网络模块的同时优化GAN目标在这种情况下,我们发现GameGAN一些-PacmanVizDoom随机策略-0.20 ±0.78210 ±108LSTM [5]-0.09 ±0.87280 ±104世界模型[11]1.24 ±1.821092 ±556GameGAN−M1.99 ±2.23724 ±468GameGAN1.13 ±1.56765 ±4821240t=0t=28时间t=14向前LSTM落后向前世界模型落后向前GameGAN-M落后向前GameGAN落后图11.回家任务展开。向前的行显示从初始位置到目标位置的路径。向后的行显示返回到初始位置的路径只有完整的GameGAN才能成功恢复初始位置。S和S的墙壁。因此,s是一个84x84的二进制图像,如果像素为蓝色,则其像素为我们将度量d定义为sum(ab s(s-s))D=总和+1(十一)图12.回家指标的箱形图。越低越好。作为参考,从同一集随机选择的一对帧给出1.17 ± 0.56的分数虽然GameGAN-M近乎完美,但很多次都未能阻止特工穿墙而过。这导致RL代理发现了一个喜欢撞墙的策略,在现实环境中,这通常会导致过早死亡。在下一节中,我们将展示长期一致性如何在某些情况下有所帮助。4.3. 任务二:回家该任务评估Pacman-Maze环境中模拟器的长期一致性。Pacman从一个随机的初始位置(xA,yA)开始,状态为s。它被赋予K个随机动作(a1,...,aK),结束于位置(xB ,yB)。 使用反向操作(例 如 , a)( 例 如 , ak=Down , ak=Up ) , 它 回 到 初 始 位 置(xA,yA),导致状态sk。现在,我们可以测量s和s之间的距离d,以评估长期的consideration(d= 0的真实环境)。作为除壁之外的元件(例如,食物)可以改变,我们只比较其中sum()计算1的个数。因此,d测量改变的像素的数量与像素的初始数量的图12显示了结果。我们再次观察到世界模型中偶尔出现的大的不连续性,这对性能有很大的影响。当K较小时,性能差异相对较小。这是因为其他模型也通过RNN实现了短期一致性。然而,随着K值的增大,带内存模块的GameGAN的性能稳定地优于其他型号,并且差距越来越大,这表明GameGAN可以有效地利用内存模块。图11显示了Pacman-Maze环境中不同模型的展开。可以看出,没有内存模块的模型不记得它以前生成的内容这表明GameGAN不仅为游戏模拟器开辟了有希望的方向,而且作为一个可以模仿现实世界的通用环境模拟器。5. 结论我们提出了GameGAN,它利用对抗训练来学习模拟游戏。GameGAN通过观察剧本和用户的动作来训练GameGAN具有新的内存模块,以确保长期一致性,并经过训练以分离静态和动态元素。全面的消融研究展示了GameGAN的建模能力在未来的工作中,我们的目标是扩展我们的模型,以捕捉更复杂的现实世界的环境。1241引用[1] 匿名的基于模型的Atari强化学习。在提交给国际会议学习代表,2020年。正在审查中。2[2] 兰德尔D啤酒和约翰C加拉格尔。进化动态神经网络的自适应行为。适应行为,1(1):91-122,1992。1[3] Dian Chen,Brady Zhou,Vladlen Koltun,and PhilippKr aühenbuühl. 通过作弊来学习。在机器人学习会议(CoRL)上,第6059-6066页1[4] Xi Chen,Yan Duan,Rein Houthooft,John Schulman,Ilya Sutskever,and Pieter Abbeel. Infogan:通过信息最大化生成式对抗网络进行可解释的表示学习神经信息处理系统的进展,第2172-2180页,2016年5[5] SilviaChiappa , Se'bastienRacaniere , DaanWierstra 和Shakir Mohamed 。 循 环 环 境 模 拟 器 。 arXiv 预 印 本arXiv:1704.02254,2017。二三六七[6] 艾丹·克拉克杰夫·多纳休凯伦·西蒙尼安复杂数据集上的高 效 视 频 生 成 。 arXiv 预 印 本 arXiv : 1907.06571 ,2019。2[7] 艾米丽·丹顿和罗伯·费格斯具有学习先验的随机视频生成。arXiv预印本arXiv:1802.07687,2018。2[8] 艾米丽·丹顿和维格内什·比罗德卡。无监督学习- ing从视频中分离表示。在重症盖永联合V. Luxburg,S. Bengio,H.瓦拉赫河Fergus,S.Vish-wanathan和R. Garnett,编辑,Advances in NeuralInformation Processing Systems 30 , 第 4414-4423 页 。Curran Associates,Inc. 2017. 2[9] 伊恩·古德费洛、让·普盖特-阿巴迪、迈赫迪·米尔扎、许冰、大卫·沃德-法利、谢尔吉尔·奥扎尔、阿伦·库维尔和约舒亚·本吉奥。生成性对抗网。 在神经信息处理系统的进展,第26722[10] Alex Graves Greg Wayne和Ivo Danihelka神经图灵机。arXiv预印本arXiv:1410.5401,2014。三、四[11] D a vidHa和JürgenSchmidhube r. 反复出现的世界模式促进了政策的演变。神经信息处理系统的进展,第2450-2462页,2018年。 二三六七[12] 尼古拉斯·汉森和安德烈亚斯·奥斯特迈尔。进化策略中的完全去随机化自适应。演化计算,9(2):159-195,2001. 7[13] SeppHochreiter和JürgenSchmidhube r. 长短期记忆。神经元计算,9(8):1735-1780,Nov. 1997. 3[14] Minyoung Huh , Shao-Hua Sun , and Ning Zhang.Feedback Adversarial Learning : Spatial feedback forimproving generative adversarial networks.在IEEE计算机视觉和模式识别,2019。4[15] Phillip Isola,Jun-Yan Zhu,Tinghui Zhou,and Alexei A.埃夫 罗斯 使用 条件 对抗 网络的 图像 到图 像翻 译。CoRR,abs/1611.07004,2016。2[16] Ajay Jain,Sergio Casas,Renjie Liao,Yuwen Xiong,Song Feng,Sean Segal,and Raquel Urtasun.离散剩余流行人行为概率预测。arXiv预印本arXiv:1910.08041,2019。1[17] Michael Kempka、Marek Wydmuch、Grzegorz Runc、Jakub Toczek和Wojciech Jas 'kowski。Vizdoom:一个基于Doom的人工智能视觉强化学习研究平台。2016年IEEE计算智能与游戏会议(CIG),第1-8页。IEEE,2016. 二、六[18] Taeksoo Kim、Moonsu Cha、Hyunsoo Kim、Jung KwonLee和Jiwon Kim。学习发现跨域关系与生成对抗网络。第34届机器学习国际会议,第1857-1865页。JMLR。org,2017. 2[19] Anders Boesen Lindbo Larsen ,Søren Kaae Sønderby,Hugo Larochelle,and Ole Winther.使用学习的相似性度量对像 素之外的像素 进行自动编 码。arXiv预印本arXiv:1512.09300,2015。2[20] 亚历克斯·X Lee、Richard Zhang、Frederik Ebert、PieterAbbeel、Chelsea Finn和Sergey Levine。随机对抗视频预测。CoRR,abs/1804.01523,2018。2[21] Ming-Yu Liu,Thomas Breuel,and Jan Kautz.无监督图像到图像翻译网络。CoRR,abs/1703.00848,2017年。2[22] Mehdi Mirza和Simon Osindero条件生成对抗网。arXiv预印本arXiv:1411.1784,2014。5[23] 宫人武和小山正则。带有投影鉴别器的cGAN。在2018年国际学习代表会议上。2[24] Volodymyr Mnih , Adria Puigdomenech Badia , MehdiMirza,Alex Graves,Timothy Lillicrap,Tim Harley,David Silver,and Koray Kavukcuoglu.深度强化学习的异步方法。在机器学习国际会议上,第1928-1937页,2016年。7[25] Volodymyr Mnih,Koray Kavukcuoglu,David Silver,Alex Graves,Ioannis Antonoglou,Daan Wierstra,andMartin Riedmiller.用深度强化学习玩雅达利。arXiv预印本arXiv:1312.5602,2013。6[26] Junhyuk Oh,Xiaoxiao Guo,Honglak Lee,Richard LLewis,and Satinder Singh.在Atari游戏中使用深度网络进行有条件视频预测。In C. Cortes,N. D. Lawrence,D.D.李,M。Sugiyama和R. Garnett,editors,Advances inNeuralInformationProcessingSystems28 , pages2863Curran Associates,Inc. 2015. 2[27] Taesung Park , Ming-Yu Liu , Ting-Chun Wang , Jun-Yan Zhu.具有空间自适应归一化的语义图像合成。在IEEE计算机视觉和模式识别会议论文集
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 平尾装配工作平台运输支撑系统设计与应用
- MAX-MIN Ant System:用MATLAB解决旅行商问题
- Flutter状态管理新秀:sealed_flutter_bloc包整合seal_unions
- Pong²开源游戏:双人对战图形化的经典竞技体验
- jQuery spriteAnimator插件:创建精灵动画的利器
- 广播媒体对象传输方法与设备的技术分析
- MATLAB HDF5数据提取工具:深层结构化数据处理
- 适用于arm64的Valgrind交叉编译包发布
- 基于canvas和Java后端的小程序“飞翔的小鸟”完整示例
- 全面升级STM32F7 Discovery LCD BSP驱动程序
- React Router v4 入门教程与示例代码解析
- 下载OpenCV各版本安装包,全面覆盖2.4至4.5
- 手写笔画分割技术的新突破:智能分割方法与装置
- 基于Koplowitz & Bruckstein算法的MATLAB周长估计方法
- Modbus4j-3.0.3版本免费下载指南
- PoqetPresenter:Sharp Zaurus上的开源OpenOffice演示查看器
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功