基于碰撞的敌人形态生成探索
摘要
本文探讨了三种新颖的程序化生成敌人形态(身体结构和碰撞信息)的方法,这些方法特别以玩家碰撞交互为条件。研究发现,所有方法均优于从机器人学领域改编的进化基线。
arXiv:2606.02832v1 公告类型:新
摘要:尽管先前有大量关于程序化内容生成(PCG)的研究,但相对较少的工作探索了为视频游戏生成敌人。特别是,几乎没有关于生成敌人形态(游戏内敌人的基本身体结构或碰撞信息)的工作,尽管在机器人学中存在相关的形态生成研究。在本文中,我们探索了三种不同的新颖方法,基于玩家碰撞信息生成敌人形态。我们发现每种方法都有不同的优缺点,但所有方法的表现均与从先前机器人学形态工作改编的进化基线相当或更优。
查看缓存全文
缓存时间: 2026/06/03 09:41
# 基于碰撞的敌人形态生成探索
来源: https://arxiv.org/html/2606.02832
Johor Jara Gonzalez, Matthew Guzdial
阿尔伯塔机器智能研究所 (Amii)
阿尔伯塔大学计算科学系
{jaragonz, guzdial}@ualberta\.ca
(2018年)
###### 摘要。尽管程序化内容生成 (PCG) 已有大量研究,但探索为电子游戏生成敌人的工作相对较少。特别是,几乎没有人研究生成敌人形态(即游戏中敌人的基本身体结构或碰撞信息),尽管机器人学中已有相关的形态生成工作。在本文中,我们探索了三种不同的新颖方法,基于玩家碰撞信息来生成敌人形态。我们发现每种方法都有不同的优势和劣势,但所有方法的性能都等同于或优于从先前机器人学形态工作改编而来的进化基线。
PCG, 敌人形态, 电子游戏
††版权:acmlicensed
††期刊年份:2018
††DOI:XXXXXXX.XXXXXXX
††会议:请从您的权利确认邮件中确认正确的会议名称;2018年6月3-5日;纽约州伍德斯托克
††ISBN:978-1-4503-XXXX-X/2018/06
††CCS:计算方法 人工智能
††CCS:计算方法 机器学习
††CCS:计算方法 强化学习
参见图注说明
图1. 来自不同生成器的敌人形态表示输出,以及艺术家以此为灵感进行构思的概念图。我们叠加了艺术家创作的图像和生成器的输出。
## 1. 引言
程序化内容生成 (PCG) 指的是使用算法技术自动创建游戏内容,如关卡、地图和角色,而不是手动创作资源 (Zhang et al., 2022 (https://arxiv.org/html/2606.02832#bib.bib19); Hendrikx et al., 2013 (https://arxiv.org/html/2606.02832#bib.bib20); Guzdial et al., 2025 (https://arxiv.org/html/2606.02832#bib.bib21))。在这个广泛的领域中,敌人生成关注的是自动构建玩家在游戏战斗中面对的对手,包括它们的行为、统计数据和空间配置。在本文中,我们专注于敌人形态:即决定敌人角色与玩家角色之间直接交互的身体结构和碰撞信息。尽管形态生成在机器人学和虚拟生物领域已被广泛探索,其中进化和基于学习的方法同时构建身体和控制器 (Song et al., 2024 (https://arxiv.org/html/2606.02832#bib.bib15); Ha, 2019 (https://arxiv.org/html/2606.02832#bib.bib16); Lehman and Stanley, 2011 (https://arxiv.org/html/2606.02832#bib.bib36); Sims, 2023 (https://arxiv.org/html/2606.02832#bib.bib37)),但据我们所知,在游戏中几乎没有任何关于敌人形态生成的工作,尤其是没有以明确基于这些敌人如何与玩家交互的方式生成。
我们工作的一个自然起点可能是将机器人学中的形态生成方法改编到游戏中。然而,这些方法是围绕一个不同的优化问题构建的。在进化机器人学和虚拟生物中,形态是针对智能体自身进行优化的,身体进化的目标是最大化运动质量、稳定性或任务性能 (Song et al., 2024 (https://arxiv.org/html/2606.02832#bib.bib15); Ha, 2019 (https://arxiv.org/html/2606.02832#bib.bib16); Lehman and Stanley, 2011 (https://arxiv.org/html/2606.02832#bib.bib36); Sims, 2023 (https://arxiv.org/html/2606.02832#bib.bib37))。这些系统中的“玩家”就是进化的智能体,评估通常基于它移动或生存的能力。相比之下,游戏敌人旨在塑造一个独立的玩家角色的体验,该角色的特征由游戏设计固定。我们的目标不是最大化敌人自身的性能,而是构建玩家必须采取何种行动才能击败它的结构。例如,机器人学的工作通常不会优化机器人的形态使其更容易(或更难)被另一个机器人摧毁:而在游戏中,玩家与敌人之间的这种关系是核心。所有这些都使得直接转移这些方法变得不充分。
在缺乏形态生成技术的情况下,敌人生成转而关注其他方面:行为生成 (Gutiérrez-Sánchez et al., 2021 (https://arxiv.org/html/2606.02832#bib.bib1); Zook and Riedl, 2014b (https://arxiv.org/html/2606.02832#bib.bib12); Halina and Guzdial, 2022 (https://arxiv.org/html/2606.02832#bib.bib32); Ponton et al., 2025 (https://arxiv.org/html/2606.02832#bib.bib39))、优化敌人特征 (Pereira et al., 2021 (https://arxiv.org/html/2606.02832#bib.bib18); Cabrera et al., 2015 (https://arxiv.org/html/2606.02832#bib.bib10)) 和机制 (Zook and Riedl, 2014a (https://arxiv.org/html/2606.02832#bib.bib38))。与我们最接近的工作仍然没有生成新的敌人形态。Butler 等人设计了Boss战遭遇和攻击模式,但假设形态是固定的、由设计师创作的 (Butler et al., 2017 (https://arxiv.org/html/2606.02832#bib.bib13))。Cook 和 Colton 的 A Rogue Dream 生成了新的精灵图,为现有实体重新换皮,但不改变它们的碰撞信息 (Cook and Colton, 2014 (https://arxiv.org/html/2606.02832#bib.bib40))。因此,大多数工作都是在固定的敌人形态上操作——改变行为、参数和外观,但形态本身不变。
为了说明我们的方法,考虑一个假设的游戏开发中期情况:一个类银河城平台跳跃游戏,已经实现了若干移动机制(例如,墙跳、空中冲刺等)。在这个阶段,设计师可能希望有只能通过特定机制才能击败的敌人——既是为了教授这些机制,也是为了限制进入世界新区域的路径。设计师必须探索大量可能的敌人形态和放置方案,同时确保目标机制在现实情况下能够可靠地击败敌人,而其他机制不能轻易绕过或让战斗变得过于简单。一个系统能够基于观察到的交互数据(而非手动指定的适应度函数或繁琐的试玩测试)提出满足如“可由机制A击败但不能由机制B击败”这类约束的敌人形态,可以大大减轻这一负担,并为设计师提供一个新的表达控制维度,即生成满足约束的敌人建议,作为迭代的具体起点。
在本文中,我们将敌人生成视为一个由玩家-敌人交互数据驱动的形态设计问题。我们开发了一个基于网格的2D环境用于敌人生成,其中敌人由其在离散网格上的碰撞信息表示,具有不同机制的玩家角色与它们进行交互。我们探索了三种优化策略:基于强化学习、A*搜索和神经网络,这些策略从玩家-敌人交互数据中学习。为了对这些方法进行背景化,我们实现了一个进化算法基线,灵感来源于机器人学和虚拟生物的形态生成工作 (Song et al., 2024 (https://arxiv.org/html/2606.02832#bib.bib15))。我们在一个案例研究上评估所有方法,其中设计目标是生成可由一组机制击败但不能由另一组机制击败的敌人,使用了从先前研究中提取的生成机制。在我们的实验中,我们发现所有三种交互驱动的方法都实现了与进化基线相当或更好的性能,同时表现出不同的权衡。本文的贡献如下:
- • 一个基于网格的敌人生成环境,以碰撞信息表示敌人形态,并记录详细的玩家-敌人交互轨迹¹¹¹https://github\.com/Harcurio/Enemy\-Morphology\-Generation。
- • 三种交互驱动的敌人形态生成方法,分别基于强化学习与神经网络、A*搜索以及纯强化学习。
- • 一个进化形态生成基线,从机器人学形态生成研究中改编而来,适用于我们的问题。
- • 一个实证评估,证明我们的方法可以生成封锁特定机制的敌人(可由一种机制击败但不能由另一种机制击败),并分析它们各自的优缺点。
## 2. 相关工作
程序化内容生成 (PCG) 指的是使用算法自动创建游戏内容,如关卡、物品或地图 (Zhang et al., 2022 (https://arxiv.org/html/2606.02832#bib.bib19); Hendrikx et al., 2013 (https://arxiv.org/html/2606.02832#bib.bib20); Guzdial et al., 2025 (https://arxiv.org/html/2606.02832#bib.bib21))。在这项工作中,我们关注 PCG 的一个特定实例:敌人生成,特别是它们的形态。为此,我们将本节集中在与我们工作最相关的两个方向:先前关于敌人生成的 PCG 研究和机器人学中的形态生成。
### 2.1. 敌人生成
关于 PCG 的综述、论文和教科书通常优先处理关卡、规则、物品、故事和任务,敌人往往被附带地作为 NPC 难度平衡或遭遇设计的更广泛讨论的一部分 (Zhang et al., 2022 (https://arxiv.org/html/2606.02832#bib.bib19); Hendrikx et al., 2013 (https://arxiv.org/html/2606.02832#bib.bib20); Guzdial et al., 2025 (https://arxiv.org/html/2606.02832#bib.bib21))。因此,现有的敌人生成研究分散在三个大致独立的方面:行为(敌人如何行动和适应)、特征(它们的数值参数)和机制(与它们相关的规则以及它们在游戏中的能力)。
在行为方面,大量工作将敌人视为学习智能体,其策略通过强化学习进行优化,或者最近由大型语言模型引导。基于RL的方法使用敌人(或代理智能体)来探索和适应游戏情境。Gutiérrez-Sánchez 等人将RL与行为树结合,自动测试潜行AI变体,并量化设计变化如何影响检测和挑战 (Gutiérrez-Sánchez et al., 2021 (https://arxiv.org/html/2606.02832#bib.bib1))。Merrick 和 Maher 的动机化RL智能体学习不断演变的行为模式,用于持久在线世界,而不是依赖固定规则集 (Merrick and Maher, 2006 (https://arxiv.org/html/2606.02832#bib.bib3))。商业引擎中更具应用性的工作,例如 Nämerforslund 的 Unity ML-Agents 对手 (Nämerforslund, 2021 (https://arxiv.org/html/2606.02832#bib.bib2)) 和 Maurya 等人RL优化的NPC (Maurya et al., 2025 (https://arxiv.org/html/2606.02832#bib.bib4)),训练敌人的导航和战斗策略动态适应玩家行为和关卡布局。在LLM方面,研究人员越来越多地尝试将LLM作为NPC和对手的高级控制器或协同设计者,在运行时生成上下文敏感的动作、对话甚至代码级行为 (Gallotta et al., 2024 (https://arxiv.org/html/2606.02832#bib.bib5); Maleki and Zhao, 2024 (https://arxiv.org/html/2606.02832#bib.bib6))。诸如 Jennings 和 Hartmann 的 GROMIT 原型等系统使用 GPT-4 根据自然语言提示和语义场景图按需合成新的 Unity 行为,实际上在游戏过程中生成敌人和对象行为作为代码 (Jennings and Hartmann, 2024 (https://arxiv.org/html/2606.02832#bib.bib7))。Hassan 和 Aboulhassan 提出了一个以LLM为中心的框架,将玩家行为分析与LLM驱动的推荐结合起来,调整叙事节拍和对手类型以维持参与度 (Hassan and Aboulhassan, 2024 (https://arxiv.org/html/2606.02832#bib.bib8))。这些方法展示了RL和基于LLM的技术如何生成敌人行为,但它们都假设敌人是固定的、由设计师创作的。相比之下,我们主要将基于学习和搜索的智能体作为交互轨迹的来源,以驱动新的敌人形态生成,而不是将其本身作为优化的主要对象。
对于敌人特征,如生命值、伤害、速度和武器配置,工作通常使用基于搜索的程序化内容生成 (PCG):进化算法、蒙特卡洛式搜索和其他启发式搜索,以生成和平衡敌人特征,并通过建模有效性或难度的适应度函数进行优化 (Togelius et al., 2010 (https://arxiv.org/html/2606.02832#bib.bib23), 2014 (https://arxiv.org/html/2606.02832#bib.bib9); Cabrera et al., 2015 (https://arxiv.org/html/2606.02832#bib.bib10); Zohaib, 2018 (https://arxiv.org/html/2606.02832#bib.bib11); Sorochan and Guzdial, 2022 (https://arxiv.org/html/2606.02832#bib.bib31); Wood and Summerville, 2019 (https://arxiv.org/html/2606.02832#bib.bib33))。对于敌人机制——新的动作、能力或单位规则集,决定敌人如何移动、攻击、协调和响应玩家——研究倾向于程序合成和符号方法,其中系统从底层引擎原语、规范或示例中自动合成游戏机制,或通过搜索和合成生成代码级行为。这些包括 Zook 和 Riedl 的机制生成、Butler 等人的程序合成即PCG方法,以及像 Mechanic Maker 这样的较新工具 (Zook and Riedl, 2014b (https://arxiv.org/html/2606.02832#bib.bib12); Butler et al., 2017 (https://arxiv.org/html/2606.02832#bib.bib13); Sumner et al., 2024 (https://arxiv.org/html/2606.02832#bib.bib27); Cook et al., 2013 (https://arxiv.org/html/2606.02832#bib.bib41))。这些方法创建新的行为,但同样假设敌人底层的碰撞感知形态由设计师固定。
### 2.2. 机器人学中的形态生成
在游戏之外,形态生成在机器人学和虚拟生物领域已被广泛研究,其中算法根据任务性能联合优化形态和控制器 (Song et al., 2024 (https://arxiv.org/html/2606.02832#bib.bib15); Ha, 2019 (https://arxiv.org/html/2606.02832#bib.bib16); Sims, 2023 (https://arxiv.org/html/2606.02832#bib.bib37); Lehman and Stanley, 2011 (https://arxiv.org/html/2606.02832#bib.bib36))。在这种设定下,形态被表示为关节肢体、基于体素的结构或其他组合编码。通常,进化算法同时更新形态和控制,以最大化诸如运动速度、稳定性或任务成功等目标。评估是从进化智能体自身的角度进行的。一个形态被认为是好的,如果它提高了智能体在给定环境中移动或完成任务的能力。相比之下,我们专注于利用视频游戏特有的玩家-敌人交互信息来优化敌人形态。
## 3. 问题定义
参见图注说明
图2. Unity中的环境表示,智能体与代表敌人形态的网格进行交互。智能体将随机出现在敌人的左侧或右侧。
现在我们正式定义生成封锁特定玩家机制的敌人形态的任务。我们在一个简化的2D Unity平台跳跃环境中研究这个问题,该环境旨在收集碰撞交互,同时方便访问Unity的ML-Agents,并且模拟速度快且易于可视化。这种抽象使我们能够专注于敌人形态的空间,而不受复杂关卡几何或多个敌人等混杂因素的影响。
每个敌人被实例化为一个固定的4x4网格单元。敌人网格中的每个单元有三种类型之一,定义与玩家碰撞时的特定交互:
- • weak, vuln
(注意:由于用户输入中断,原文未完整。根据上下文,应继续列表。但用户提供的文本在此处结束。我们只能根据已有内容进行翻译。如果用户需要完整翻译,请提供完整原文。目前我们按收到的内容进行翻译。)相似文章
CreativeGame:面向机制感知的创意游戏生成
CreativeGame 是一个多智能体系统,通过程序化奖励与谱系记忆,在版本迭代中显式规划、追踪并演化游戏机制,持续生成 HTML5 游戏。
基于Map-Elites的第一人称射击游戏地图程序化生成
本文应用MAP-Elites质量多样性算法来程序化生成多样化且高质量的第一人称射击游戏地图,并引入了新的地图表示方法和度量指标。
通过大型模型的演化
本论文证明了在代码上训练的大型语言模型可以显著增强遗传编程的变异算子,使得能够在 Sodarace 领域中生成数十万个功能性 Python 程序用于机器人设计,且无需预训练数据。该方法称为演化通过大型模型(ELM),将 LLM 与 MAP-Elites 相结合,为上下文特定的制品生成引导新的条件模型。
生长中的 Neural Cellular Automata
本文探讨了 Neural Cellular Automata 作为一种计算模型,其灵感来源于生物形态发生和再生,展示了简单的局部规则如何导致复杂的全局行为。
RoboEvolve:在有限数据下实现机器人操作的计划器与模拟器协同进化
RoboEvolve是一个框架,它协同进化VLM规划器和VGM模拟器用于机器人操作,仅用500张无标签种子图像就实现了数据效率以及鲁棒的持续学习。