用程序搜索生成游戏关卡,自动提炼通用技巧提升效率。
Procedural Content Metageneration via Program Search and Continual Abstraction Discovery

- 通过语言模型变异与交叉进化生成完整关卡程序。
- 引入持续抽象发现机制,使程序自动提炼出可复用的实用模块。
- 适合对程序生成、进化算法感兴趣的开发者或研究者。
大型语言模型能生成可执行程序,使得可以直接在程序化内容生成器中进行搜索,而非单个关卡。我们在 Sokoban、Zelda、Dangerous Dave 和 Lode Runner 中研究此方法。每轮运行通过语言模型对完整 Python 生成器进行变异和交叉演化。我们提出持续抽象发现(CAD),将高适应度程序中的可复用原语提取到特定运行的辅助模块中。2x2 实验对比了是否使用固定手写领域 API。最终数据集包含 160 次完整运行,每个单元至少有十次 50 代运行。在所有八个领域与 API 的比较中,启用 CAD 的运行均显著提升平均最终最佳适应度。在所有启用 CAD 的运行中,学习到的库被大多数后期程序采用,并反复重现验证、可达性与结构化等实用性。结果表明,发现可复用原语能有效提升内容生成的进化程序搜索性能。
原文摘要 · Abstract (English)
Large language models can generate executable programs, which makes it possible to search directly over procedural content generators rather than individual levels. We study this approach in Sokoban, Zelda, Dangerous Dave, and Lode Runner. Each run evolves complete Python generators through language-model mutation and crossover. We introduce Continual Abstraction Discovery, or CAD, which extracts reusable primitives from high-fitness programs into a run-specific helper module. A 2x2 experiment crosses CAD with access to a fixed hand-written domain API. The completed data set contains 160 complete runs, with at least ten 50-generation runs in every cell. CAD raises mean final best fitness in all eight domain and API comparisons. Across all CAD runs, learned libraries are adopted by most later programs and repeatedly rediscover validation, reachability, and structural utilities. These results support that discovering reusable primitives improves evolutionary program search for content generators.
Thank you to arXiv for use of its open access interoperability. PaperDance 不是 arXiv 官方产品;中文卡片由大模型生成,请以原文为准。