Table of Contents
Fetching ...

(Perlin) Noise as AI coordinator

Kaijie Xu, Clark Verbrugge

TL;DR

Experiments show that coordinated noise fields provide stable activation statistics without lockstep, strong spatial coverage and regional balance, better diversity with controllable polarization, and competitive runtime.

Abstract

Large scale control of nonplayer agents is central to modern games, while production systems still struggle to balance several competing goals: locally smooth, natural behavior, and globally coordinated variety across space and time. Prior approaches rely on handcrafted rules or purely stochastic triggers, which either converge to mechanical synchrony or devolve into uncorrelated noise that is hard to tune. Continuous noise signals such as Perlin noise are well suited to this gap because they provide spatially and temporally coherent randomness, and they are already widely used for terrain, biomes, and other procedural assets. We adapt these signals for the first time to large scale AI control and present a general framework that treats continuous noise fields as an AI coordinator. The framework combines three layers of control: behavior parameterization for movement at the agent level, action time scheduling for when behaviors start and stop, and spawn or event type and feature generation for what appears and where. We instantiate the framework reproducibly and evaluate Perlin noise as a representative coordinator across multiple maps, scales, and seeds against random, filtered, deterministic, neighborhood constrained, and physics inspired baselines. Experiments show that coordinated noise fields provide stable activation statistics without lockstep, strong spatial coverage and regional balance, better diversity with controllable polarization, and competitive runtime. We hope this work motivates a broader exploration of coordinated noise in game AI as a practical path to combine efficiency, controllability, and quality.

(Perlin) Noise as AI coordinator

TL;DR

Experiments show that coordinated noise fields provide stable activation statistics without lockstep, strong spatial coverage and regional balance, better diversity with controllable polarization, and competitive runtime.

Abstract

Large scale control of nonplayer agents is central to modern games, while production systems still struggle to balance several competing goals: locally smooth, natural behavior, and globally coordinated variety across space and time. Prior approaches rely on handcrafted rules or purely stochastic triggers, which either converge to mechanical synchrony or devolve into uncorrelated noise that is hard to tune. Continuous noise signals such as Perlin noise are well suited to this gap because they provide spatially and temporally coherent randomness, and they are already widely used for terrain, biomes, and other procedural assets. We adapt these signals for the first time to large scale AI control and present a general framework that treats continuous noise fields as an AI coordinator. The framework combines three layers of control: behavior parameterization for movement at the agent level, action time scheduling for when behaviors start and stop, and spawn or event type and feature generation for what appears and where. We instantiate the framework reproducibly and evaluate Perlin noise as a representative coordinator across multiple maps, scales, and seeds against random, filtered, deterministic, neighborhood constrained, and physics inspired baselines. Experiments show that coordinated noise fields provide stable activation statistics without lockstep, strong spatial coverage and regional balance, better diversity with controllable polarization, and competitive runtime. We hope this work motivates a broader exploration of coordinated noise in game AI as a practical path to combine efficiency, controllability, and quality.
Paper Structure (36 sections, 8 equations, 17 figures, 3 tables)

This paper contains 36 sections, 8 equations, 17 figures, 3 tables.

Figures (17)

  • Figure 1: Behavior parameterization. Left: low-frequency heading field $\theta(\mathbf{x}, t)$. Middle: independent speed field $v(\mathbf{x}, t)$. Right: AgentUpdater output after blending previous state with Perlin targets; arrows show local headings and colors encode speeds.
  • Figure 2: Temporal modulation along a 1D spatial slice of our 2D Perlin field. Left: Perlin values $u(x)$ sampled along a line in space. Middle: hazard mapping $\lambda(x)=\lambda_0[\varepsilon+(1-\varepsilon)u(x)]$. Right: mixed activation probability over cycle time and this spatial coordinate; in practice this mapping lets an agent's position determine when within each cycle it is expected to activate or take actions. In the full system the field is defined over $\mathbf{x}\in\Omega\subset\mathbb{R}^2$; we show a 1D slice here for clarity.
  • Figure 3: Spawn policies. Top: Perlin-A (space$\rightarrow$time) samples candidate locations (dots), reads their Perlin values, and maps them to phase bins $\tau$ (dot colours); when the cycle time reaches $\tau$, those locations are proposed for spawns. Bottom: Perlin-B (time$\rightarrow$space) takes the current cycle time, selects an iso-band of positions with similar Perlin value (orange points), and picks well-separated B-Far sites (white circles), so a spawn front sweeps across the map as time advances.
  • Figure 4: Single-feature sampling. Panel (a) shows the density gate derived from $N_{\mathrm{feat}}$. Panel (b) visualizes the discrete mask (eligible biome and low danger). Panel (c) overlays the surviving resource points, showing how one feature class is produced by intersecting the continuous gate with the discrete belts.
  • Figure 5: Discrete branch. Each categorical layer (factions, biomes, danger) samples an independent low-frequency Perlin stack (top row) and applies region-aware quantile or threshold mappings (bottom row), producing contiguous belts that satisfy design histograms.
  • ...and 12 more figures