This project investigates the performance of several machine learning models in predicting wait times for Space Mountain using historical data. We created our own dataset stemming from data from Queue Times. In addition to features we gathered from this website on wait times, date, time, etc. our project works on enhancing this dataset with holiday / weather information, in addition to incorporating lag features to capture the time series aspect of our dataset. With this, we achieved models predicting wait times within 15 minutes of actual values. The following explains the files and folders you can find in this code base. All results can be generated by running each corresponding Jupyter notebooks in completion.
data_enhancement: folder containing files to add features to create the enhanced dataset tested. Includes files to add holiday, lag, and weather features.
pred_err: folder containing prediction errors for our baseline, linear regression, and linear regression with lag models for use in comparison of datasets.
statistical-baseline.ipynb: file containing code to test our statistical baseline model, which predicts wait times by averaging wait times per 30 minute interval across all days of the week over all availabe months and years.
linear-regression.ipynb: file containing code to test our standard linear regression model.
linear-with-regularization.ipynb: file containing code to test our standard linear regression model with L1 regularization.
xg-boost.ipynb: file containing code to test our xgboost regressor model, using grid search to select hyperparameters
nn-v1.ipynb: file containing code to build and test a multilayer perceptron model architecture, using grid search to select hyperparameters.
space_mountain.csv: our original, baseline dataset containing Date, Time, Day of Week, Month, Time of Day, and Wait Time (target).
space_mountain_with_holiday_weather_lag_new.csv: our enhanced dataset, that includes original features along with various holiday features (capturing current date holiday and adjacency to holidays), weather features (temperature and percpitation), and lag features (capturing wait times from previous days in addition to previous 30-minute and 60-minute interval)
mlp_hyperparameter_search.csv: contains data on how our mlp was performing with the over 1,000 combinations of hyperparameters used to tune the model.
Irika Katiyar (@irika-katiyar) Jeremy Pogue (@jpogue2)