We're more than 6 months into the COVID-19 pandemic and PPE shortage is still an alarming crisis.
Experts predict that without a strategic plan in place, PPE shortage may persist through 2022, and this will further increase the disparity among underserved communities. Everyone deserves access to life-saving resources, so we must ensure equity in the distribution of PPE, or we risk having a disproportionate rise of COVID-19 related deaths among under-resourced facilities such as nursing homes, homeless shelters, and health clinics.
We can solve this problem by visualizing where the inequities are, and predicting where the PPE needs to go before it is requested.
Our model
What we accomplished so far
Our approach to this problem led us to simply Calculate PPE usage based on burn rate and incidence rate. We achieved this by taking a dataset with over 180 data points from John Hopkins to analyze the amount of total cases and the rise in cases per week to calculate the “burn-rate”, or the amount of PPE being used per week, of PPE units. This information is then used to train an algorithm that takes that burn rate and amount of cases to predict how many PPE are being used per week on a state by state basis. We also divided this predicted value by the GDP Per Capita of each state to indicate their need for PPE relative to their affordability. Using this base model, we can then track the distribution data to these locations to visualize inequity.
for i in range(58):
init_num = 0;
for j in range(61):
if(j%7==0):
init_num = ir[j,:,i]
else:
ir[j,:,i] = init_num
for i in range(58):
lr = LinearRegression()
lr.fit(ir[:,:2,i], ir[:,2,i])
state = ['Alaska', 'Arizona' ,'Arkansas', 'California', 'Colorado' ,'Connecticut', 'Delaware' ,'Diamond Princess', 'District of Columbia', 'Florida' ,'Georgia', 'Grand Princess', 'Guam', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa' ,
'Kansas', 'Kentucky', 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota' ,'Mississippi' ,'Missouri' ,'Montana', 'Nebraska', 'Nevada', 'New Hampshire', 'New Jersey' ,'New Mexico', 'New York' ,'North Carolina',
'North Dakota', 'Ohio' ,'Oklahoma', 'Oregon' ,'Pennsylvania' ,'Puerto Rico' ,'Rhode Island', 'South Carolina', 'South Dakota' ,'Tennessee' ,'Texas','Utah' ,'Vermont' ,'Virginia', 'Washington', 'West Virginia' ,'Wisconsin', 'Wyoming',
'American Samoa', 'Northern Mariana Islands', 'Recovered', 'Virgin Island']
ppes = [7104.08 , -96.37, 0.50, 14.28, -12264.80, -20.99, -6.58, -3874.10, 0.74, 28.02, 1061.15, -3.04, 221.20, 20.86, -8.12, 88.52, 1357.55, -3.71, 2665.72, -5879.17, -55.80, 5678.01, -12798.39, 0.47, 943.36, 36275.67, 9.39, 74.14, 9222.82, 0.70, 2301.90, -31505.60, 0.19, 797.27, 225.60, -1.70, 4134.63,
1294.18, 115.37, 16.56, 8527.54, 0.00, 1934.13, -12127.59, 4.55, 1512.96, -11114.68, 23.81, 6080.52, 11469.13, -1.05, 148.96, -32686.25, 74.16, 2030.84, 8558.06, 1093.87, 2442.97]
fig, ax = plt.subplots()
# the size of A4 paper
fig.set_size_inches(117, 827)
ppes = np.absolute(ppes)
df = pd.DataFrame({'State':state, 'PPE':ppes})
plot = sns.barplot(x='State', y='PPE', data=df)
[graph below shows the PPE usage by state]

What's next?
We seek to improve on our solution by creating a model with high precision that will potentially solve the general problem of PPE allocation. Our main focus is to be able to predict based on accurate data and track most importantly where there is disparity in resource allocation. We then use this information to better estimate the downstream demand for PPE in healthcare institutions and communicate such information to the state government for immediate action. WHO estimates that the PPE manufacturing industry must increase production by 40 percent, and this indicates that more workers will be needed to support the production of these equipment. Our model will help estimate based on the weekly amount of PPE consumption, the workforce needs incorporating the impact of production lead time and the lives of healthcare practitioners.
Built With
- github-api
- pandas
- python
- scikit-learn
- seaborn
Log in or sign up for Devpost to join the conversation.