# Time Series Model for Birmingham Parking Occupancy Using Python and ARIMA Part 2

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a time series prediction model and document the end-to-end steps using a template. The Birmingham Parking Occupancy dataset is a time series situation where we are trying to forecast future outcomes based on past data points.

INTRODUCTION: The problem is to forecast the hourly number of parking occupancy for a parking facility in Birmingham. The dataset describes a time-series of parking occupancy over three months between October 2016 and December 2016, and there are 1834 hourly observations. We used the first 90% of the observations for training various models while holding back the remaining observations for validating the final model.

From iteration Part1, we trained and validated an ARIMA model using just one facility, BHMBCCMKT01, within the dataset.

In this Part2 iteration, we will train and validate an ARIMA model for each one of the facilities within the dataset.

ANALYSIS: The baseline prediction (or persistence) for the parking facility BHMBCCMKT01 resulted in an RMSE of 46. After performing a grid search for the most optimal ARIMA parameters, the final ARIMA non-seasonal order was (2, 0, 1) with the seasonal order (2, 0, 0, 24). Furthermore, the chosen model processed the validation data with an RMSE of 22, which was better than the baseline model as expected.

Parking structure: BHMBCCPST01

• RMSE for the persistent model is: 38
• Final Non-season order: (0, 0, 1) Final Seasonal Order: (1, 0, 1, 24)
• RMSE from the validation data is: 20

Parking structure: BHMBCCSNH01

• RMSE for the persistent model is: 157
• Final Non-season order: (2, 0, 1) Final Seasonal Order: (0, 0, 2, 24)
• RMSE from the validation data is: 75

Parking structure: BHMBCCTHL01

• RMSE for the persistent model is: 84
• Final Non-season order: (0, 0, 0) Final Seasonal Order: (1, 0, 1, 24)
• RMSE from the validation data is: 24

Parking structure: BHMNCPPLS01

• RMSE for the persistent model is: 32
• Final Non-season order: (4, 0, 0) Final Seasonal Order: (1, 0, 0, 24)
• RMSE from the validation data is: 16

Parking structure: BHMBRCBRG02

• RMSE for the persistent model is: 189
• Final Non-season order: (0, 1, 3) Final Seasonal Order: (0, 0, 2, 24)
• RMSE from the validation data is: 95

Parking structure: BHMBRCBRG03

• RMSE for the persistent model is: 78
• Final Non-season order: (2, 1, 0) Final Seasonal Order: (0, 0, 2, 24)
• RMSE from the validation data is: 41

Parking structure: BHMBRTARC01

• RMSE for the persistent model is: 109
• Final Non-season order: (1, 0, 0) Final Seasonal Order: (1, 0, 0, 24)
• RMSE from the validation data is: 120

Parking structure: BHMEURBRD01

• RMSE for the persistent model is: 77
• Final Non-season order: (1, 0, 4) Final Seasonal Order: (2, 0, 1, 24)
• RMSE from the validation data is: 24

CONCLUSION: For this dataset, the chosen ARIMA model achieved a satisfactory result, and we should consider using ARIMA for further modeling.

Dataset Used: Parking Birmingham Data Set

Dataset ML Model: Time series forecast with numerical attribute

Dataset Reference: https://archive.ics.uci.edu/ml/datasets/Parking+Birmingham

The HTML formatted report can be found here on GitHub.