A spooky PCG at a distance

Hi, I’m Tom Doan. This summer, I am working with Professor Presser on Procedural Content Generation (PCG) in the Quantum Game. PCG refers to creating game content automatically, usually via artificial intelligent algorithms.

The Quantum Game
In this project, we work on The Quantum Game, an online laboratory project by Quantum Flytrap team that simulates quantum mechanics phenomena interactively and intuitively. The link to the project is quantumgame.io

The landing page of the Quantum Game project at quantumgame.io

The online laboratory has two main parts, a Virtual Lab, where users have a sandbox to customize the setting of the optical table and the Quantum Game, an introduction of the simulations.

The game serves as an introduction to people with little to no prior exposure to quantum mechanics. As a person who only learned little about quantum mechanics in theory. I find this introduction a great way to understand the laboratory setup that illustrates quantum mechanics experiments. As I got interested in the game, I find that the game only has a limited number of levels, and I wanted to create more levels for the game; so in this research we decided to use PCG techniques to generate new levels for the game.

How we gonna do it
The Quantum Game is grid-based, which means that the game pieces are placed in a grid order. However, in a level of the game, the structure that the player(s) build and interact with is the structure of the light ray(s). The two following pictures illustrate the grid-based setup, and the light ray(s) graph-like structure of a level of the game.

The grid-based setup of the above level
The light ray graph of the above level

In my program that generates new levels for this game, we make use of both of these ways of representation to create levels.

The approach we are taking also uses a context-free grammar (CFG) to develop light ray graphs that can be translated into grid-based setup. To generate a “good” set of levels, we also use an algorithm called evolution algorithm that can be combined with CFG, as described in the work of O’Neill and Ryan (DOI: 10.1109/4235.942529).

So far, we have created pseudocode for the project and is on track to produce the fully functional PCG for the Quantum Game by the end of this summer. Below is a level that is generated from using the pseudocode and throwing dice.

A new level generated by our pseudocode

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s