We're sunsetting PodQuest on 2025-07-28. Thank you for your support!
Export Podcast Subscriptions
cover of episode Machine Learning + Procedural Content Generation with Julian Togelius and Sebastian Risi

Machine Learning + Procedural Content Generation with Julian Togelius and Sebastian Risi

2020/8/29
logo of podcast Last Week in AI

Last Week in AI

AI Deep Dive AI Chapters Transcript
People
J
Julian Togelius
S
Sebastian Risi
Topics
Julian Togelius: 程序化内容生成 (PCG) 是一种在游戏开发中广泛应用的技术,用于生成游戏中的各种内容,例如关卡、地形、任务等。它最初是为了解决游戏开发中内存和开发时间的限制而产生的,但现在已经发展成为一种强大的工具,可以用于创建适应玩家行为、内容无限的游戏。PCG 技术在过去几十年中不断完善,现在已经成为游戏开发的标准技术。学术界也开展了大量研究,探索如何扩展 PCG 技术以创造适应玩家的新型游戏。在游戏开发和机器学习训练环境的创建中,都应该使用搜索算法(例如贪婪搜索、随机算法、进化算法等),以优化多个标准并提高生成内容的多样性和质量。强化学习研究人员应该探索更丰富的算法(来自游戏开发和游戏研究),来改进环境变化,而不是仅仅使用简单的随机化方法。为了学习复杂的、普遍适用的行为,拥有合适的任务至关重要,而这些任务应该通过算法与解决方案共同生成,类似于地球上生命进化过程中的物种共同进化。可以使用机器学习方法学习现有内容(例如关卡)的表示,然后在该表示中使用搜索算法生成新的内容。可以使用强化学习训练关卡生成器,但需要采取措施防止过拟合,例如限制训练集长度和随机化起始位置。目前 PCG 系统还无法真正以开放式的方式创建内容,即使是像 Poet 这样的优秀系统,其生成内容也受到编码方式的限制。PCG 中的一个主要挑战是如何处理数据稀缺问题,尤其是在游戏内容中,需要考虑功能性约束,即生成的內容必须是可玩的。一种可能的解决方法是预训练,即先在一个大型数据集上预训练关卡生成器,然后在少量特定游戏数据上微调,以学习该游戏的风格和功能约束。 Sebastian Risi: PCG 和机器学习领域此前发展相对独立,但现在两者开始融合,相互促进。机器学习技术可以用于改进 PCG 算法,而 PCG 可以帮助解决机器学习中的过拟合问题。深度强化学习在游戏中的应用存在过拟合问题,即使是细微的改变也会导致模型失效,而 PCG 可以通过生成多种多样的环境来解决这个问题,从而训练出更通用的策略。一个很有前景的研究方向是同时生成学习环境和智能体,例如 Uber AI Labs 的 Poet 项目,该项目同时生成机器人二维环境和控制器,让环境难度随着智能体能力的提升而逐渐增加。AI 技术可以用于从现有内容中学习,例如使用数据驱动编码或潜在变量进化方法,从已有的关卡中学习,生成不同但相似的关卡。目前 PCG 系统还无法真正以开放式的方式创建内容,其生成内容也受到编码方式的限制。未来可能会出现更多利用机器学习技术设计的新型游戏,以及能够快速适应玩家行为的AI技术,例如元学习和结合进化算法的强化学习。

Deep Dive

Chapters
Procedural content generation (PCG) is a technique in game development that involves generating game content algorithmically. The paper discusses how PCG can benefit machine learning by providing diverse learning environments and how machine learning can enhance PCG.

Shownotes Transcript

查看类似主题的报道:www.skynettoday.com 主题:深思熟虑的思想 凯文·麦克劳德(incompetech.com)

<raw_text>0 你好,欢迎收听SkyNet Today的《让我们谈谈AI》播客,在这里你可以听到AI研究人员关于AI实际情况和哪些只是点击诱饵标题的讨论。我们每周发布AI新闻报道,并偶尔进行采访,比如今天的这一集。我是安德烈·卡连科夫,斯坦福视觉与学习实验室的三年级博士生,也是本集的主持人。

在这一集的采访中,我们将听到两位教授的声音,他们是公司Model.ai的联合创始人,该公司为视频游戏工作室提供AI工具,并结合游戏开发和机器学习的深厚知识,以加速游戏开发并增强玩家参与感。这两位教授还共同撰写了一篇论文《通过程序生成内容提高机器学习的通用性》,这将是我们对话的重点。

首先,我将介绍朱利安·托格利乌斯教授,他是纽约大学坦登工程学院计算机科学与工程系的副教授。他致力于人工智能技术,使计算机游戏更有趣,并研究游戏如何使人工智能更聪明。换句话说,他在问AI能为游戏做什么,以及游戏能为AI做什么。

他还是一本书《人工智能与游戏》和一本书《游戏中的程序生成内容》的合著者。我们还将听到塞巴斯蒂安·里西教授的声音,他共同领导哥本哈根IT大学的机器人、进化与艺术实验室(RIEL),旨在使机器更具适应性和创造性,这是一种专注于计算进化、深度学习和

众包的研究方式,应用于机器人、视频游戏、设计和艺术。他的工作探讨了这样的问题:我们能否创造出能够不断获取新知识和技能的学习机器?我们能否创造出能够从人类那里学习并与人类合作解决人类和机器都无法单独解决的任务的机器?再一次,这两位教授都是Model.ai公司的联合创始人。

非常感谢托格利乌斯教授和里西教授抽出时间参加这一集。谢谢你们邀请我们。是的,非常感谢邀请。

好的,太好了。让我们直接进入主题。你们都在很多有趣的事情上工作,但今天我们主要关注这篇最近的调查论文《通过程序生成内容提高机器学习的通用性》,该论文本月早些时候在《自然机器智能》上发表,版本也在Archive上公开可用。

在这篇论文中,你们回顾了现有的程序生成内容(PCG)工作及其与机器学习努力的当前重叠,以及一些有前景的新研究方向,例如程序生成的学习环境。因此,首先,也许你们可以用快速的解释来设定舞台,说明你们理解的程序生成内容是什么,并解释一下你们在这个时点上撰写这篇论文的动机。

是的,程序生成内容是一种实践和一套技术工具,自70年代末、80年代初以来就存在于游戏开发中。

基本上,想法是很多游戏出于某种原因,需要由游戏引擎本身生成游戏的某些部分。

这始于当时我们没有足够的内存来创建、存储完整的游戏世界,也没有足够的开发时间来创建这些游戏世界。例如,1980年由加州大学圣克鲁兹分校的两名学生创建的游戏《Rogue》,他们想在计算机上创建《龙与地下城》。

但他们不想自己编程冒险故事,并且没有足够的硬盘空间来存储这些冒险故事。因此,他们不得不想出一个算法来创建可以探索的新地牢,里面有各种敌人、宝藏、不同的布局等等。然后你创建了这个游戏,以便每次你玩时,你都有一个全新的冒险故事可以体验,这是你从未见过的。

因此,《Rogue》是一种地下热门游戏,它成为了一系列被称为“Roguelikes”的游戏的前身。还有其他游戏,例如1984年的《Elite》,你可以穿越成千上万的世界,

你是一个太空商人或太空冒险者、太空海盗。它真的是一个你可以在其中旅行的广阔星系。还有任务,还有其他种类的物种可以发现。你可以进行交易。

你可能会被太空警察和太空海盗追逐等等。这一切都适应了当时这些非常有限的机器的内存。因此,这基本上是因为每次你来到一个新的恒星系统时,它都是从一个随机种子生成的。

这些技术在过去的四十年左右得到了完善。现在我们有很多游戏在某种程度上都包含了某种生成的内容,无论是关卡、植被、地形、任务或其他东西。在学术界对此进行了大量研究。

在商业游戏开发中,各种形式的程序生成内容已经成为游戏开发的基本和标准形式。但在研究界,有很多工作在探索如何扩展这一点,创造全新的游戏,或创造能够适应人类玩家的游戏,创造在各种方式上是无尽的游戏。因此,是的,塞巴斯蒂安,也许你想谈谈与机器学习的联系。

是的,我可以这样做。因此,是的,我们撰写这篇论文的动机基本上是双重的。PCG社区和机器学习社区已经存在了一段时间,但它们基本上存在于这种平行的流中,PCG研究人员在工作,而机器学习也在工作,但两者之间的交集并不多。现在它们正在趋于融合。我们看到这两个社区基本上都可以从彼此中受益。

一方面,我们开始在我们的PCG算法中越来越多地融入机器学习技术。例如,我们与Model AI合作的工作是与公司King合作,从现有的Candy Crush关卡中自动学习,然后使用机器学习算法(如生成对抗网络)创建新关卡。这是使用机器学习在PCG中的一个原因。

另一个重要原因是解决机器学习中的过拟合问题。因此,我们在游戏中看到深度强化学习的令人印象深刻的结果,在Atari游戏中,在《星际争霸》等游戏中。但我们发现,其他研究人员也发现,

这些解决方案往往会严重过拟合于手头的任务。因此,如果你训练一个代理来玩《Breakout》,并且稍微改变踏板的大小,它将完全失败。或者如果你尝试让一个玩《星际争霸》的机器人在一个关卡上训练,如果你改变关卡,它将完全失败。因此,即使是轻微的修改也会破坏这些代理。

而研究表明,我们实际上可以利用PCG使这些系统更加通用。因此,例如,不是仅仅在一个关卡上训练,也许你可以程序生成关卡。每次代理玩时,你给代理一个新关卡。这基本上迫使代理学习更通用的策略。我们之前在游戏中看到了这些。

例如Atari。我们在更多的机器人任务中也看到了这些。因此,这种迫使代理无法利用领域中的某些元素,而是实际学习通用策略,PCG在这些方面帮助了很多。我们两人基本上都相信这两个领域可以从彼此中受益。文章的目的是启动这两个领域之间更紧密的对话,因为它们可以相互帮助,一方面使机器学习更加通用,另一方面通过结合机器学习方法来增强我们的PCG算法的能力。

我明白了。谢谢你。这是一个非常清晰的回答。对于听众,你们实际上可以通过谷歌搜索这篇论文。顺便提一下,里面有一些包含PCG的示例游戏,你可以在其中一个图中找到。总体而言,这是一篇相当易读的论文。所以我会说你们绝对可以自己深入研究。

其中提到的游戏之一实际上是《无人深空》,我在其中投入了相当多的时间,确实是一个很好的近期例子。是的,《无人深空》就像是,很多人对它不满意,因为他们认为它会是别的东西。它基本上是无限的质量效应。但它实际上是一个奇妙的艺术作品,不是吗?

是的,它是一个很棒的探索场所。是的。也许对于那些不知道《无人深空》是什么的人来说,它是一个关于太空探索和太空殖民的游戏,

其中有比任何人一生中能探索的行星还要多,因为它都是生成的,它们都有不同类型的动植物。它们有一些在其他世界上找不到的发现。它真的是一个生成的杰作。

确实,它在某种程度上是PCG的优缺点的一个很好的例子,你确实得到了无限的多样性。但与此同时,PCG的困难在于,正如我所理解的,你只能在一定程度上变化,因为你有一组可以变化的算法。

与手工制作关卡或类似的东西相比,你会得到更多的重复和更多类似主题的出现。我认为挑战基本上是你需要在可以轻松搜索空间之间取得某种平衡,但你也希望它具有表现力。

因此,当然,你包含的内容越多,你希望你的PCG生成器制作的内容越多,你需要搜索的空间就越大,同时你在那个空间中找到的垃圾也越多。这是你必须做的权衡之一。在这个意义上,我们现在所称的数据驱动编码或变量进化是一个有趣的例子,你可以从设计师创建的现有关卡中学习,并通过机器学习从中学习。这种方式缩小了你可能想在游戏中变化的内容的空间。

然后,当你这样做时,事情变得更加复杂,所以一些工作也许朱利安可以谈谈。实际上,朱利安做了一些工作,他甚至演变了游戏本身的规则,我觉得这很有趣。是的。是的。因此,有不同的雄心层次,越想让生成的内容能够给你带来惊喜,

搜索空间越大,你需要创建的开放式表示越大,搜索空间也越大。但这也使得控制变得非常困难。有趣的是,在《无人深空》中,尽我所知,他们实际上并没有进行太多的搜索。因此,推动生成的算法主要来自PCG算法的图形家族。

因此,有很多不同的噪声和分形算法。因此,来自80年代Ken Perlin著名噪声算法的背景的东西和其他分形。因此,我们在论文中真正想传达的信息是

对于从事游戏开发的人来说,他们应该真正开始关注执行某种搜索或约束求解的算法,并与其他方法结合使用。我和塞巴斯蒂安在这方面工作了很长时间,

一些是共同的,有些是分开的,使用搜索作为生成方法的方法。搜索可以是标准的简单贪婪搜索算法,也可以是更先进的随机算法、进化算法、粒子优化等,以在搜索空间中找到内容,优化可能是一整套标准。

最近,在质量多样性搜索方面有很多进展,例如,为此。有丰富多样的有趣搜索算法可以在这里使用,它们应该同时用于游戏开发和为机器学习创建新的训练环境。

特别是强化学习。如果你真的要进一步简化,对于从论文中进行强化学习的人来说,主要信息是什么?好吧,是的,许多人已经开始考虑环境变化,并使用简单的随机化器来随机化环境。

但有这么多更丰富和更有用的算法,无论是来自游戏开发还是游戏研究,都准备好为强化学习研究提供帮助。

我明白了。是的。作为一名从事机器人技术并跟踪强化学习的人,我确实看到你们引用的一些作品作为这种共同进化任务和试图学习任务的代理的演变趋势的例子。很多人,我会说相当多的人对这个方向非常兴奋。这也是你们在论文中涵盖的部分。是的。

你们当然涵盖了很多内容,所以我不会深入所有内容。因此,论文涵盖了PCG的历史,经典PCG涵盖了数据增强和领域组织。因此,也与机器学习有一些关系。

AI驱动的PCG和用于创建学习环境的PCG。再一次,听众可以继续谷歌搜索论文标题《通过程序生成内容提高机器学习的通用性》,如果你真的想深入了解所有内容。

但也许我们可以稍微缩小范围。我想问一下关于AI和PCG交集的问题,你刚才提到的RL和PCG作为一个例子。但如果你有任何其他类型的例子,或者一些你发现特别有趣和令人兴奋的具体结果或论文,在那个交集中的真正进展。

你也提到过,我认为这是一个非常有趣、非常有前景的方向,基本上是生成环境与代理本身一起的想法。因此,我认为一个非常有趣的例子是我们的一些同事。这是Uber AI Labs的PoET的工作,

它生成学习挑战,例如为机器人生成2D环境,以及控制器,朱利安在这项工作上进行了跟进,并将其扩展到游戏。我认为这是一个非常有趣的方向,因为通常我们总是为这些代理生成学习环境。

因此,我们必须确保这些环境具有正确的难度,对代理来说既不太简单也不太困难。然后我们手动可能需要制定一个课程,让深度强化学习允许这些系统学习越来越复杂的任务。

但在这些自动生成的想法中,算法本身将生成挑战,并以适合代理解决的方式设置挑战,因此你有一种支架,环境允许代理学习,然后你有越来越复杂的环境,因此你试图建立这种

共同进化系统。因此,类似于生成对抗网络,你有生成器生成环境,代理的控制随着时间的推移变得越来越复杂。作为实验者,你可以在某个时刻理想地放松,看到这两个系统变得越来越复杂,代理最终解决你可能甚至没有想到的挑战。

我认为这是一个非常有趣的挑战,不仅仅是针对游戏,也针对机器人任务,在那里

可以为代理设计新的机器人任务。我认为这也是我们看到的一个有趣的算法交集,来自进化计算的算法,朱利安和我在这方面都有很长的历史,这种算法自然适合生成这些挑战。然后你有一个机器学习系统,另一方面,可以尝试学习像强化学习那样的系统来解决这些挑战。因此,我认为在这个领域会有更多的进展,我们在论文中也回顾了一些内容。是的。我的核心想法是...

这在直观上是可理解的,并且对许多研究人员具有吸引力,即,为了学习复杂的行为,复杂的、一般性的能力行为,确实至关重要的是你有正确的任务。

那么,正确的任务从哪里来呢?在地球生命的发展过程中,实际上没有给我们提供任务。所有任务都来自自然环境的其余部分,这些环境共同进化。有许多物种共同进化,从某种意义上说,它们为彼此提供了任务。

因此,挑战在于我们不能仅仅重现地球上生命的进化,因为我们没有足够的CPU能力来做到这一点。而且我们可能永远也不会有。但你如何创建一个相对高效的算法来共同生成任务和解决方案?这就是PoET是众多可能答案之一的地方。

这里共同生成任务和解决方案的总体思路,当然与生成对抗网络本身有很多共同之处,听众中大多数人可能会熟悉。你训练一个生成器,你训练一个评论者,

生成对抗网络本身在某种意义上只是竞争性共同进化的一个变体,这种现象在生物学和进化计算中已经存在很长时间,你有两个或多个物种彼此处于对抗关系中。有一些非常酷的工作...

我们回到丹尼·希尔1991年的工作,关于共同进化排序问题和排序网络,例如,揭示了这种动态。我一直在尝试利用这项工作,例如用于游戏代理。我们有赛车神经网络,学习相互竞争并试图尽可能走得更远。因此,这种动态非常重要。我认为这里有一些非常深刻的东西,我们需要某种共同生成问题和环境的变体,以便获得更通用的智能。

因为我们自己在创建良好的任务和环境方面并不够好。我们没有资源来做到这一点。我们需要AI的帮助。但要让这一切开始,我的意思是,

GANs notoriously不稳定。你需要使用很多技巧来使GAN训练良好。竞争性共同进化,你也面临着非常相同的问题。因此,PoET通过引入某种多样性和匹配某些问题来匹配某些任务来处理这个问题。但我认为在这个领域还有很多东西可以发现。我明白了。

是的,确实如此。实际上,现在总是讨论PCG用于AI,这让我想起我在某种意义上使用了程序生成的

大量对象在机器人模拟中。我们已经使用过。我还曾是一个论文的共同作者,该论文使用程序生成的工具来学习工具使用。因此,我们有所有这些奇怪的锤子,提供了很多多样性。因此,我确实看到了这种兴奋,我自己也很兴奋,不必手工制作那么多相似的关卡。

在这一点上,我实际上很好奇。因此,这算是一个例子,说明PCG如何对AI有用,以及它如何通过创造更多的环境和学习上下文来进一步推动AI研究。

有没有任何相反的例子,或者说AI如何使PCG变得更强大、更容易或更快,利用机器学习和AI?绝对可以。你想先开始吗,斯宾塞?当然。

哦,是的,我可以开始。因此,朱利安提到的一个例子基本上是你可以在PCG中使用AI技术,从现有内容中学习。因此,现在有一类方法,有时称为数据驱动编码或潜变量进化,你基本上已经拥有大量内容,现在如何最好地

从这些内容中学习,以生成不同但仍然相似的内容。因此,在这里,你当然可以利用所有最近的机器学习技术,这些技术能够从现有内容中学习。因此,一种方法是

朱利安和他的一个学生发明的潜变量进化,你可以训练一个GAN,例如,在指纹上,或者我们在Mario关卡的工作中使用。然后GAN在这些关卡中学习到一些结构。当它能够生成这些关卡时...

你基本上训练这个生成器,然后你可以丢弃判别器。然后你有一个生成器,你可以输入一个随机向量,它输出一个随机的关卡片段,在Mario的情况下。然后你可以做的是,实际上使用搜索方法来搜索这个生成器学习到的空间。因此,你可以在GAN的空间内搜索,例如,使用人工进化等方法。

因此,你正在搜索一个特定的潜在向量,你输入到GAN中,然后它可以生成特定类型的关卡片段,具有某种类型的难度。因此,通过这种方式,你可以生成它。你不需要手动编码表示,而实际上是从数据本身学习的表示。你生成的每个关卡片段都是一个合理的关卡片段,而不是一些完全垃圾的片段。

通过这种方式,你在某种程度上受益于拥有这种机器学习系统,它可以学习这些关卡本身的规律。你可以将其应用于,我们将其应用于Mario,你可以将其应用于指纹,应用于Candy Crush关卡。这确实使这些PCG算法能够更容易地在有趣的内容和功能内容信息的空间中进行搜索。

因此,在生成面孔的情况下,也许如果有一个像素错误,这并不那么重要。但如果你尝试使用PCG,那么你可能必须确保你生成的内容在游戏的上下文中实际上是可玩的。因此,机器学习可以帮助你,而不是自己设计这些编码,你实际上可以从数据中学习,如果你已经有现有的关卡可用。

是的。因此,塞巴斯蒂安刚才提到的就是这种有趣的组合,你从现有内容(例如关卡)中学习表示。但我们通常谈论关卡,因为我们通常做关卡。这很好且简单且是2D的,但你也可以是,知道任务或角色或谜题或类似的东西。然后你在该表示内使用搜索。因此,技术上你在进化的邀请演讲中使用生成器作为基因型到表型编码。

但在许多情况下,你也可以在没有搜索的情况下做到这一点,实际上效果相对较好。因此,我们看到了一些例子,例如使用自动编码器生成《星际争霸》关卡的不同层次。因此,从拓扑上你可以训练一个自动编码器来预测资源的位置,取得了一些成功。我们还看到了一些简单的事情,例如使用n-gram生成Mario关卡。

将其重新表述为字符串生成问题。我们还看到LSTM网络以相同的方式用于Mario关卡。

这里使用纯机器学习生成游戏内容的最大问题是,你通常没有足够的游戏内容来进行训练。你没有5000个阶段。你只有20个Mario关卡或类似的东西。因此,有许多不同的尝试来解决这个问题。

我们最近发表了一篇论文,我们将一种生成对抗网络与自注意力结合在一起。我们还将其与自举算法结合在一起,如果你生成的新关卡符合某种可玩性标准,并且与已有的关卡有足够的不同,那么就会被添加回训练集中。

因此,你从只有五个关卡开始,然后突然可以创建大量多样化的关卡,所有这些关卡都是可玩的,看起来相当不错。因此,这是另一种使用监督学习解决关卡生成问题的方法。现在,我们最近采取的另一个方向是使用强化学习。

因此,你在这里重新表述内容生成问题的方式是,你现在控制关卡生成代理,并为关卡生成代理学习一个策略是一个强化学习问题。

我们成功地训练了生成器,例如,用于Sokoban关卡和一个简单版本的《塞尔达传说》。它们需要很长时间来训练,但然后它们生成得非常快。这个问题是你不...很容易得到一种崩溃,你训练的生成器只会一次又一次地生成相同的关卡。

因此,为此,你必须迫使它进行泛化。因此,我们在这里以一种奇怪的内涵方式,面对强化学习问题的过拟合问题,再次试图训练能够创建环境的代理,以减少强化学习中的过拟合。抱歉,这句话有些循环。

但你可以做到这一点。使这一切成为可能的主要技巧之一是将剧集长度限制为非常短的剧集,并大幅随机化起始位置。你正在训练一个代理,而不是创建完整的关卡,而是通过训练它从任何给定位置进行小的改进。

然后你可以得到一些实际上相当通用的代理。因此,正如我们总结的那样,我们可以谈论监督学习和无监督学习,有或没有搜索。我们还可以使用强化学习进行生成。因此,这里有很多内容。

我明白了。是的,听到关于AI如何被利用于BCG的概述非常有趣。听起来在这方面确实取得了进展,并且在这项工作中开辟了新的道路。

你们还在论文中概述了五个主要的开放挑战或机会。因此,正如你们所指出的,确实存在一些问题或困难。因此,你们提到的一些挑战。

在论文中,从有限数据中学习,生成完整的游戏,终身生成以实现终身学习,基于PCG的RL基准,以及从模拟到现实世界。作为一名机器人专家,最后一个,从模拟到现实世界,确实是有道理的。因此,可能我们不能深入探讨所有这些挑战,但...

<context>机器学习 + 程序生成内容与朱利安·托格利乌斯和塞巴斯蒂安·里西

查看类似主题的报道:www.skynettoday.com 主题:深思熟虑 凯文·麦克劳德(incompetech.com)

<raw_text>0 我想问一下,当那些没有接触过程序生成内容的人看到像Poet或OpenAI的魔方结果这样新奇的事物时,你认为他们在PCG创建更多环境和学习机会的挑战和局限性方面错过了什么?

所以我认为我们目前还没有的一个系统是真正能够以开放式的方式创造事物。

所以我认为即使是Poet,我觉得它真的很酷,但当然你仍然在类型上受到限制,比如Poet可以制作的关卡类型,像地形之类的。它不会突然创建一个3D世界或其他东西,因为它受到你使用的编码类型的限制。所以我认为这是一个问题,这也是一个很大的...

或者像许多进化社区的人对这种开放式进化、开放式创造感兴趣。我们能否真正创建一个系统,以开放的方式创造新的、更具挑战性的任务和能够设计自己表示和编码的代理?所以这绝对是...

我们绝对还没有达到这个目标。在这个领域有一些非常有趣的工作,但距离基本解决方案还很远,像创建一个系统,它也能创造出这种真正的大多样性,同时仍然保持一定的可处理性。我认为这是一个非常有趣的研究挑战。而这种开放性理念也是一个挑战。我认为像...

肯·斯坦利这样的人花了很长时间与他合作。他的一些有趣的主题演讲倡导了这个挑战。所以在这里有很多有趣的研究空间。是的,我认为这不是一个我们会完全解决的挑战。这不是那种我们会有解决方案的问题。这就像人工智能。我是说,显然,我们永远不会

解决人工智能。我是说,不比我们已经做过的多。因此,开放性就像是一个巨大的元问题,创造代理可以真正学习的空间,他们可以学习的行为的复杂性没有尽头。而环境生成是其中的一个关键问题。

我喜欢这个,我希望在某种程度上在我死的那天之前继续研究这个。如果我们看看更可处理的问题,如何使用机器学习来改善程序生成内容的一个大问题是我们...

如何处理数据稀缺。如果我们想让这对游戏开发者可用,或者即使我们想让这对...我们有设计师,但我们也有为强化学习设计学习环境的人,例如。

所以你想做的是基本上草拟两个或三个不同的游戏工件,比如关卡或任务之类的。然后你想要为他们制作更多更多的类似内容。问题是我们目前的大多数自监督学习算法期望成千上万的数据实例来训练它们。

你如何可靠地捕捉某种风格,以及从三个例子中判断它的重要性?所以这是一个很大的挑战。当然,在少样本学习方面有很多工作。

在整个机器学习领域。但在尝试使用机器学习,特别是监督学习和自监督学习来生成游戏内容时,一个很大的区别是游戏内容通常具有

某种功能要求。所以如果你训练你的GAN生成面孔,而你的面孔稍微有点偏差,它们仍然看起来像面孔。它们只是稍微偏差。眉毛不见了,或者耳朵不对称,或者类似的东西。

如果你生成一个超级马里奥兄弟的关卡,突然出现一个你无法越过的墙,或者一个太宽的间隙,那么这个关卡就不是稍微偏差。它是不可玩的。它的价值不仅仅是99分中的100分。它的价值是零。

因此,学习、教导模型尊重功能约束是一个非常非常困难的问题,我认为在仅仅从几个例子中学习这些功能约束方面还有很多进展可以做。我不知道该怎么做,但这是一个相关的研究问题。

我认为前进的一种方式是某种预训练。所以如果你看看语言模型,你通常会谈到预训练然后微调。我希望看到的一件事是能够在...

来自100个不同平台游戏的关卡上预训练一个关卡生成器。我们从任天堂NES抓取所有内容,然后我们在其中一个上进行微调,比如《小天使》或类似的,或者《洛克人》。然后仅仅从几个例子中,我们学习该特定游戏的风格和具体功能约束。我认为这对游戏开发和机器学习研究都非常有用。而且这仍然是未解决的。

说得通。是的,看到一些在一堆游戏上预训练的东西会非常酷。然后你真的可以仅凭一个例子或几个例子,为特定类型的游戏制作大量新内容。这绝对是我想阅读的论文。

现在,你提到这种事情可能对游戏开发有用。所以也许我们可以在这里稍微转换一下话题,结束时我想知道你是否能分享一些关于你们在Model.ai公司在研究之外所能做的具体事情,关于实际构建工具和

为游戏开发者利用AI或PCG或两者结合的新技术。如果你能给出任何例子。我们非常兴奋的一件事,我认为是这个想法。我们在Twitter上发布了一些关于这种故障查找器的内容。

或者我们有时称之为灵活的游戏轨迹,基本上是这个想法,你能否自动测试一个大型游戏,其中有很多不同的可能性可以做。因此,我们也,比如说,你想知道如果你改变了代理的某些东西,它是否仍然可以完成关卡?你改变了关卡的某些东西,代理是否仍然可以完成?

你有一个赛车游戏,你改变了摩擦力,你想测试你的一百辆车,它们是否仍然可以完成赛道?

这就是我们拥有的一个产品,它使用进化和机器学习技术的组合自动测试这些游戏,以快速探索空间,看看游戏是否仍然可玩,否则向设计师报告。这里有一个问题。你改变了某些东西,现在关卡就不好了。

而且我们看到对这些工具的兴趣很大,因为它们确实可以减少你在调试系统上花费的小时数,以及你必须进行的游戏测试小时数,至少有一部分是自动化的。是的。

我认为我们可以谈论的另一个有趣项目是,我们有一堆东西不幸的是还不能谈论。与游戏开发者打交道的风险是我们在使用塞巴斯蒂安之前谈到的潜变量进化方法与《糖果传奇》的工作。

所以我们一直在做《糖果传奇》这款游戏。我想每个人都知道这款游戏,因为它非常受欢迎。它仍然非常受欢迎。这个游戏有超过4000个关卡,许多人会认为这已经足够了。

但这还不够,因为人们不断玩《糖果传奇》,并且不断要求新的关卡。所以我们一直在努力,我们有一篇论文实际上在今年的游戏会议上发表,正在进行中。

我们正在研究一种从现有的《糖果传奇》关卡中学习以生成新的《糖果传奇》关卡的方法。这非常令人兴奋,因为这些关卡经过了一系列内部游戏测试,开发者对此感到满意。关卡的难度适中。它们有正确的...

它们有正确的模式等等。这个用例是,内部的开发者基本上会向系统请求新的关卡草图,然后他们会稍微编辑一下,然后再发布给游戏玩家。能够为这样一款成功的游戏构建解决方案真是太酷了。

绝对是。是的,非常酷。我认为如果听众中有玩《糖果传奇》或《糖果传奇》粉丝的人,听到这个消息会很兴奋。现在,我想我再抛出一个最后的更有趣的问题,这更个人化,作为一个玩了很多视频游戏甚至涉足游戏开发的人,我常常想知道的是,现在大多数游戏都有

角色,你知道,非玩家角色,他们有,让我们说,静态的AI。所以他们使用各种AI技术,但它们是为某些行为预先编码的。它们不一定会使用任何形式的机器学习、强化学习进行进化。就我所见,这在游戏开发中大多没有被使用。所以我很好奇你们中的任何一个是否可以谈谈你们是否认为也许

随着人工智能的进步,这将变得更加普遍?人们会开始更多地尝试吗?还是这只是太难了,你知道,任何涉及学习的事情都是太混乱的,这就是为什么它可能不会发生?我对此有很多看法。是的。我认为很长一段时间,

任何涉及学习的AI,甚至更高级形式的搜索,状态搜索,在商业游戏中几乎没有出现,特别是在控制NPC方面,主要是因为当前的游戏设计思维和当前的游戏设计模式不允许这样做。

所以我们相对较长一段时间能够训练出可以进入各种类型视频游戏的行为,但我们没有为此设计。

所以很多设计是基于缺乏AI。如果你看看我们玩的所有主要游戏类型,从实时战略到第一人称射击到回合制战略或角色扮演游戏等等,它们都是在我们没有足够的AI方法的情况下开发的。

来训练代理或构建代理。我是说,我们在搜索方面也取得了巨大的进展,比如他们所称的树搜索,仅在过去15年左右。因此,我的意思是...

在许多游戏中没有真正的用途。以标准的射击游戏为例,标准射击游戏的战役模式,你通常会看到屏幕上的NPC大约五秒钟左右,没有任何智能的空间。使用强化学习在这里实际上是浪费能量。

或者如果你拿其他游戏,基本上在游戏过程中发生的强化学习实际上会...

危及游戏的整体设计,因为设计师无法预测的行为可能会非常糟糕,并可能使游戏失去平衡。所以我认为我们需要,现在我们有了这些机制,并且对它们有了更好的理解,我们需要一种新的设计,建立在现实存在的基础上。这是我的主要目标。

对此的反馈。我认为我们在游戏中没有看到这一点的主要原因。但事情即将改变。塞巴斯蒂安,你是否有可能的补充观点?

是的。所以我也认为,我的意思是,设计完全新游戏与这些机器学习技术结合,我认为这是一个非常令人兴奋的领域。例如,我认为非常令人兴奋的一件事是像AI Dungeon这样的游戏,你无法想象,如果没有它,这将是可能的。但我也认为,我们将拥有更好的AI技术用于现有游戏,可以快速适应玩家。就像有这个

我的意思是,我可以想象最近在元学习领域的进展,基于少数例子学习,可能允许游戏中的代理从人类的少数例子中学习以适应。

然后还有我们实验室的一些最近工作,我实际上非常兴奋,实际上是从机器人技术开始的。但我可以看到这非常适用于游戏,我们基本上将机器学习、强化学习与进化结合在一起,我们给这些代理赋予不应执行的动作的本能。

所以你作为一个人知道,你知道,有一种本能,你知道执行这个动作可能不会导致积极的结果。所以我可以想象在这些视频游戏中,你可以给代理共同进化这种本能,这将...

你知道,阻止他们以某种方式破坏游戏,比如杀死主要角色或做一些基本上会结束游戏的事情,然后仍然允许他们学习,但以一种安全的方式进行强化学习探索。所以我认为

这是一种我可以想象的方式,我们之前在机器人任务中应用过,可以在游戏中使用,以允许代理学习,但以一种不会破坏游戏流程的安全方式进行学习。但总的来说,我同意朱利安的看法,我们需要重新思考

我们如何使用这些AI技术设计游戏?因为我们可以制作如此多酷的新游戏,而我们现在却陷入了不断制作相同游戏的困境,而通过这些新技术,我们实际上可以创造一些真正创新的东西,我对此非常兴奋。

我明白了。是的,这完全有道理。希望AI工具的民主化将使一些独立开发者或年轻游戏开发者能够尝试一些真正激进的新事物,看看我们是否可以在游戏中实际利用AI。

因此,我们将结束这一集。再次感谢您收听Skynet Today的《让我们谈谈AI》播客。您可以查找与今天类似主题的文章,并订阅我们的每周通讯或类似内容,网址为skynettoday.com。请在您获取播客的地方订阅我们,如果您喜欢这个节目,请不要忘记给我们留下评分。务必收听未来的节目。