Gabi Seifert
she/her
Physics PhD student at the University of Colorado Boulder specializing in atomic, molecular, and optical physics.
Physics PhD student at the University of Colorado Boulder specializing in atomic, molecular, and optical physics.
In 2022, I took Computational Science and Engineering at Scripps College, a class focused on using computational methods in scientific computing software Maple and MATLAB to solve real-world physics problems too difficult to do by hand.
For the final project, I decided to model a silly but complicated real-world situation in MATLAB: the dining halls at the Claremont Colleges. The Claremont Colleges are a consortium of five colleges, all located within a 1-square-mile campus just outside of Los Angeles. There are six dining halls available to students, one at each college with two at Pomona. Students are free to eat at any dining hall, which each have their own styles of food as well as reputations, so I wanted to predict the dining hall popularity over the course of a semester.
I wanted to see if I could write a complex script in MATLAB, incorporating user input, 3-dimensional data sets, complicated variables, and useful visualizations.
The script goes through each day (time loop), each college, and every student. Every student decides which dining hall to go to by finding a “value” (desirability) of each dining hall and then going to the dining hall with the highest value. If no value is high enough, the student just stays home.
The code to determine the “value” of a college (in this case the Pitzer dining hall for a non-Pitzer student) is:
Pval = randi(1000) + Pqual - 50*Dist(C, 3) - .05*Ptot(6, t-1) + .5*Ptot(C, t) - 5000/(t);
Users can rate the importance of four variables and MATLAB plots out what the dining hall trends would be if everyone agreed with these inputs. If the user inputs are outside the acceptable range, MATLAB will reject them. The scaling modifiers in front of each term were determined by asking my friends which factors were most important in deciding which dining hall to go to.
Here are some of the graphs produced. The exact graphs change slightly every time the code is run because of the user input and the random factor, but these particular graphs are fairly average.