Interactive demos
Explore the research, hands-on
Live models you can steer. Some are simulations and optimizers re-built directly from my published papers; the rest are illustrative stand-ins for each research pillar — the same demos that run on the home and research pages, here in full and interactive.
Built from published research
Agentic procedural content generation →
A generator and a critic agent evolve a random draft into a well-formed role-playing quest — building an intro, a rising difficulty arc, a boss, and a reward. Tune the length, difficulty, and variety, and watch the quality climb.
Game refinement & the engagement zone →
An abstract game plays itself; its game-refinement value GR = √B ⁄ D drifts across the “comfortable zone” (~0.07–0.08) where engaging games — chess, Go, soccer — cluster, with live thrill and addiction readouts. Tune the complexity, pace, and balance.
Assembly line balancing →
An artificial immune system assigns precedence-constrained tasks to workstations under a cycle-time limit, rebalancing the line to raise efficiency and shrink the bottleneck. Tune the cycle time, task count, and mutation rate, and watch stations and efficiency trade off.
Crowd evacuation →
A shopping-mall concourse clears through adjustable exits. A navigation field routes the crowd; congestion and panic reshape the flow — the “faster-is-slower” effect. Tune the crowd, panic, and exits, and edit walls live.
Production scheduling →
Jobs flow across machines in a flexible manufacturing system, working around maintenance windows. An artificial immune system reorders operations to compact the Gantt chart and minimize the makespan. Tune the jobs, machines, maintenance, and mutation rate.
Research-pillar demos
This interactive is an illustrative stand-in — a simplified model built to convey the idea and behaviour behind this research area for teaching. It is not a specific published method, dataset, or result.
A field that self-organizes →
Particles drift along a hidden sinusoidal flow, forming and dissolving connections as they pass — emergence as a stand-in for the generative process. On the full demo, move your cursor to perturb the field.
A search solving a maze →
A perfect maze is carved, then breadth-first search floods outward from the start (teal) cell by cell until it reaches the exit (coral) — and traces the guaranteed shortest path back. The search restarts on a fresh maze each cycle.
A swarm foraging a landscape →
A flock of agents forages a multimodal fitness landscape — brighter regions are higher fitness. Local flocking rules combine with a particle-swarm pull toward each agent’s own best and the globally best-known peak, so the swarm converges on high ground without any agent seeing the whole map.
Emergence you can disturb →
Flocking with no leader: each agent follows just three local rules — align with neighbours, steer toward their centre, and avoid crowding — and coherent flocks emerge on their own. On the full demo, sweep the cursor to scatter the flock and click to seed more agents.
A level from nothing →
A roguelike level built from nothing: non-overlapping rooms are scattered across the grid, then stitched together with L-shaped corridors so every room is reachable. Every roll is unique. On the full demo, click or hit Regenerate to roll a new one.