This repository contains code to create, train, and test an Artificial Neural Network (ANN) model that predicts where a line exists at a specific polling location using transaction log data from ePollbooks.
The model input data must include a timestamp, device ID, and location ID for each time a voter completes the check-in process. The ANN model analyzes data within a moving window and outputs a binary (yes/no) value indicating whether a significant queue of voters existed during that timeframe. A probability of uncertainty about the prediction is also provided.
This repository also includes a basic SimPy simulation model that can be used to generate training and testing datasets. Here, the model inputs are the total voter turnout, a time-varying arrival rate table, and the number of parallel check-in stations. The model outputs the following information for each simulated voter: a timestamp when they completed the check-in process, the station ID where the check-in occurred, and the queue length of voters waiting to check in at that time.