Table of Contents
Fetching ...

Punch Out Model Synthesis: A Stochastic Algorithm for Constraint Based Tiling Generation

Zzyv Zzyzek

TL;DR

Punch Out Model Synthesis (POMS) addresses Constraint Based Tiling Generation by employing a stochastic grid-level approach that progressively realizes sub-blocks and uses erosion-based backtracking to resolve indeterminate regions. By leveraging Tile Arc Consistent Correlation Length (TACCL) as a pre-processing heuristic and a Breakout Model Synthesis (BMS) block solver, POMS scales to large grids while mitigating solution bias. The study analyzes five tile sets, showing that finite correlation-length constraints are tractable under appropriate block strategies, while long-range correlations pose significant challenges; boundary conditions and block-scheduling policies play a critical role. The work provides a libre reference implementation and offers practical insights into the interplay between TACCL, constraint propagation, and stochastic backtracking for CBTG beyond prior methods like MMS and WFC.

Abstract

As an artistic aid in tiled level design, Constraint Based Tiling Generation (CBTG) algorithms can help to automatically create level realizations from a set of tiles and placement constraints. Merrell's Modify in Blocks Model Synthesis (MMS) and Gumin's Wave Function Collapse (WFC) have been proposed as Constraint Based Tiling Generation (CBTG) algorithms that work well for many scenarios but have limitations in problem size, problem setup and solution biasing. We present Punch Out Model Synthesis (POMS), a Constraint Based Tiling Generation algorithm, that can handle large problem sizes, requires minimal assumptions for setup and can help mitigate solution biasing. POMS attempts to resolve indeterminate grid regions by trying to progressively realize sub-blocks, performing a stochastic boundary erosion on previously resolved regions should sub-block resolution fail. We highlight the results of running a reference implementation on different tile sets and discuss a tile correlation length, implied by the tile constraints, and its role in choosing an appropriate block size to aid POMS in successfully finding grid realizations.

Punch Out Model Synthesis: A Stochastic Algorithm for Constraint Based Tiling Generation

TL;DR

Punch Out Model Synthesis (POMS) addresses Constraint Based Tiling Generation by employing a stochastic grid-level approach that progressively realizes sub-blocks and uses erosion-based backtracking to resolve indeterminate regions. By leveraging Tile Arc Consistent Correlation Length (TACCL) as a pre-processing heuristic and a Breakout Model Synthesis (BMS) block solver, POMS scales to large grids while mitigating solution bias. The study analyzes five tile sets, showing that finite correlation-length constraints are tractable under appropriate block strategies, while long-range correlations pose significant challenges; boundary conditions and block-scheduling policies play a critical role. The work provides a libre reference implementation and offers practical insights into the interplay between TACCL, constraint propagation, and stochastic backtracking for CBTG beyond prior methods like MMS and WFC.

Abstract

As an artistic aid in tiled level design, Constraint Based Tiling Generation (CBTG) algorithms can help to automatically create level realizations from a set of tiles and placement constraints. Merrell's Modify in Blocks Model Synthesis (MMS) and Gumin's Wave Function Collapse (WFC) have been proposed as Constraint Based Tiling Generation (CBTG) algorithms that work well for many scenarios but have limitations in problem size, problem setup and solution biasing. We present Punch Out Model Synthesis (POMS), a Constraint Based Tiling Generation algorithm, that can handle large problem sizes, requires minimal assumptions for setup and can help mitigate solution biasing. POMS attempts to resolve indeterminate grid regions by trying to progressively realize sub-blocks, performing a stochastic boundary erosion on previously resolved regions should sub-block resolution fail. We highlight the results of running a reference implementation on different tile sets and discuss a tile correlation length, implied by the tile constraints, and its role in choosing an appropriate block size to aid POMS in successfully finding grid realizations.
Paper Structure (14 sections, 6 figures, 2 tables, 3 algorithms)

This paper contains 14 sections, 6 figures, 2 tables, 3 algorithms.

Figures (6)

  • Figure 1: Examples outputs of Punch Out Model Synthesis (POMS) run on different tile sets. From left to right, the Pill Mortal tile set, the Forest Micro tile set, the Overhead Action RPG Overworld tile set and the Brutal Plum tile set
  • Figure 2: a) A block is chosen in the partially resolved grid, based on a block choice scheduler b) Once the block is chosen, the boundary is pinned if not on the a grid boundary and the center put into an indeterminate state. c) The block level solver attempts to find a solution for the block, with any pinned boundary restrictions d) If successful, the block is incorporated back into the grid. e) If the block solver algorithm failed to resolve, after some maximum iteration count, say, then the grid is restored to its previous state and resolved boundaries are eroded based on an erosion choice scheduler. f) If the block solver algorithm failed to start because the block could not be put into an arc consistent state given the tiles pinned on the boundary, the block area in the grid is reverted to an indeterminate state.
  • Figure 3: A slideshow of POMS run on the Pill Mortal tile set. The block size is 32x32 and the grid size is 64x64 with a block choice policy that chooses block centers uniformly at random from the available unresolved cell locations in the grid.
  • Figure 4: a) Exemplar image with a single tile and its neighbors highlighted. b) The packed image inferred tile set with the relevant tile highlighted. c) The catalog of 2x2 super tiles used to create the tile constraints from the 1x2 tile overlap, suitably rotated. The same tile highlighted in a) and b) has been highlighted here for comparison.
  • Figure 5: Tile Arc Consistent Correlation Length (TACCL) plots, source exemplar image and example output for four 2D tile sets as listed in Table \ref{['table:tilesets']}. The TACCL, exemplar image and example 64x64 output using a block size of 8x8 for the Pill Mortal tile set are shown in a), b) and c) respectively. The TACCL, exemplar image and an example 256x256 output using a block size of 50x70 for LUNARSIGNALS' Overhead Action RPG Overworld are shown in d), e) and f) respectively. The TACCL, exemplar image and an example 128x128 output using a block size of 48x48 for Woźniak's Forest Micro tile set are shown in g), h) and i) respectively. The TACCL, exemplar image and an example 128x128 output using a block size of 48x48 for 0x72's Two Bit Micro Metroidvania tile set are shown in j), k), l) respectively.
  • ...and 1 more figures