Adrienne Lai

Class of 2019


Adrienne Lai is a rising junior at St. Stephen’s and St. Agnes School in Alexandria, Virginia. She is a creative scholar, especially in math and science. Adrienne completed the Virginia Space Coast Scholar program and was chosen and is attending the Summer Academy at Wallops Flight Facility! She furthers her love of math by competing on the school’s math team, where she is consistently a top scorer. She also loves programming and knows Python and Java along with some HTML and CSS. Adrienne uses her programming skills to make projects like Conway’s Game of Life and Barnsley’s Fern and is the head programmer on her FTC robotics team. To pursue practical applications of technology, Adrienne is a leader of the school’s theater tech team, where she works positions in lighting, sound, run crew, and set construction. Adrienne is a member of her school’s quizbowl team, Hispanic Honor Society, mission art team, and literary magazine staff. In her free time, Adrienne is learning Morse code and performs magic.

Project: 3D Cellular Automata


The 3D cellular automata project uses machine learning to classify the general shape of 3D models generated by cellular automata and specifically looks for irregular shapes. In addition, it would see how different starting configurations with the same set of rules generate different models.

Summary of Results

The 3D cellular automata project has a machine-learning function that can classify 3D cellular automata iterations as cubes, spheres, less interesting irregulars and interesting irregulars with 83% accuracy. The classification is specifically for iterations for rules 2–254 going up in steps of 4 with the k value being 2. This means that each cell can be in two different states. Also, there is a function that displays only the cellular automata with a particular classification. For example, one could see only the cubes in a set. To make classifying cellular automata easier for the user, the program has many different functions that can be used to classify rules. There is a function that classifies values for a rule number, for a specific rule number and iteration or for a rule number and a range of iterations.

Future Work

In the future, the 3D cellular automata project would be able to classify for different states other than 2. This would mean that k could equal 3 or 4 for example. Furthermore, the current model classifies based on shapes created when one cell is live in the beginning and the rest are null. In the future, the classification would include figures created with more than one cell live at the start so that different cellular automata from different starting configurations of the same rule can be compared. Additionally, more classes would be included in future classification functions like rectangular prisms.