{"title":"You-Only-Randomize-Once: Shaping Statistical Properties in Constraint-based PCG","authors":"Jediah Katz, Bahar Bateni, Adam M. Smith","doi":"arxiv-2409.00837","DOIUrl":null,"url":null,"abstract":"In procedural content generation, modeling the generation task as a\nconstraint satisfaction problem lets us define local and global constraints on\nthe generated output. However, a generator's perceived quality often involves\nstatistics rather than just hard constraints. For example, we may desire that\ngenerated outputs use design elements with a similar distribution to that of\nreference designs. However, such statistical properties cannot be expressed\ndirectly as a hard constraint on the generation of any one output. In contrast,\nmethods which do not use a general-purpose constraint solver, such as Gumin's\nimplementation of the WaveFunctionCollapse (WFC) algorithm, can control output\nstatistics but have limited constraint propagation ability and cannot express\nnon-local constraints. In this paper, we introduce You-Only-Randomize-Once\n(YORO) pre-rolling, a method for crafting a decision variable ordering for a\nconstraint solver that encodes desired statistics in a constraint-based\ngenerator. Using a solver-based WFC as an example, we show that this technique\neffectively controls the statistics of tile-grid outputs generated by several\noff-the-shelf SAT solvers, while still enforcing global constraints on the\noutputs.1 Our approach is immediately applicable to WFC-like generation\nproblems and it offers a conceptual starting point for controlling the design\nelement statistics in other constraint-based generators.","PeriodicalId":501208,"journal":{"name":"arXiv - CS - Logic in Computer Science","volume":"75 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Logic in Computer Science","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2409.00837","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
In procedural content generation, modeling the generation task as a
constraint satisfaction problem lets us define local and global constraints on
the generated output. However, a generator's perceived quality often involves
statistics rather than just hard constraints. For example, we may desire that
generated outputs use design elements with a similar distribution to that of
reference designs. However, such statistical properties cannot be expressed
directly as a hard constraint on the generation of any one output. In contrast,
methods which do not use a general-purpose constraint solver, such as Gumin's
implementation of the WaveFunctionCollapse (WFC) algorithm, can control output
statistics but have limited constraint propagation ability and cannot express
non-local constraints. In this paper, we introduce You-Only-Randomize-Once
(YORO) pre-rolling, a method for crafting a decision variable ordering for a
constraint solver that encodes desired statistics in a constraint-based
generator. Using a solver-based WFC as an example, we show that this technique
effectively controls the statistics of tile-grid outputs generated by several
off-the-shelf SAT solvers, while still enforcing global constraints on the
outputs.1 Our approach is immediately applicable to WFC-like generation
problems and it offers a conceptual starting point for controlling the design
element statistics in other constraint-based generators.