English

You-Only-Randomize-Once: Shaping Statistical Properties in Constraint-based PCG

Artificial Intelligence 2024-09-04 v1 Logic in Computer Science

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.

Cite

@article{arxiv.2409.00837,
  title  = {You-Only-Randomize-Once: Shaping Statistical Properties in Constraint-based PCG},
  author = {Jediah Katz and Bahar Bateni and Adam M. Smith},
  journal= {arXiv preprint arXiv:2409.00837},
  year   = {2024}
}

Comments

Published in Foundations of Digital Games (FDG) 2024. 10 pages, 6 figures

R2 v1 2026-06-28T18:30:46.568Z