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 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.
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.