covidcaremap / covid19-healthsystemcapacity

Open geospatial work to support health systems' capacity (providers, supplies, ventilators, beds, meds) to effectively care for rapidly growing COVID19 patient needs
https://www.covidcaremap.org
MIT License
97 stars 38 forks source link

Generate health care capacity load forecasting (Epi Modeling) #9

Open lossyrob opened 4 years ago

lossyrob commented 4 years ago

In order to perform the comparison analysis which identifies the care gap we need an estimation of effected population over time. More specifically, we want to know the projected number of active cases putting demand on the healthcare system in different locations at different times.

There are several open source approaches to this type of modeling, and the ideal case is to reuse other's work. For instance, perhaps there is an implementation of a SIR model that we could run at a county level based on census demographics to generate a per-county per-timepoint health system stress dataset. Or perhaps there is already someone publishing modeling data at an appropriate aggregation for our analysis that we can just use directly.

The goal of this issue is to:

Relavent Links:

Other notes:

lossyrob commented 4 years ago

Notes from a relevant effort at https://qventus.com/blog/predicting-the-effects-of-the-covid-pandemic-on-us-health-system-capacity/

(From https://gitter.im/covid19-healthsystemcapacity/community?at=5e6e448e467c854233083318)

lossyrob commented 4 years ago

Notes from FluSurge model, which would be a good candidate for this work:

https://gitter.im/covid19-healthsystemcapacity/community?at=5e6f0dbd034f6b7b24e4f192

one key shortcoming of the FluSurge model i noticed is that they project by week and we're likely going to need forecasts on the order of days based on how fast the growth rates are i also asked a friend who's great with excel to take a look at the model spreadsheet to see if we could recreate it in python unfortunately: "sorry I can't really help. The whole spreadsheet is protected (except for those white input cell). I can't get into the hidden sheets where all the calculations are. 😞 The documentation only tell how to use the spreadsheet but not how to create it. I can't really help." that sucks. maybe we will connect with the creator or someone who has the unlocked model but even if not, knowing the schema for data inputs, outputs and how it's visualized for decisionmakers is the most useful part for our needs

lossyrob commented 4 years ago

Relevant times article that performs spatial forecasting https://time.com/5801726/coronavirus-models-forecast/?xid=tcoshare

daveluo commented 4 years ago

https://gitter.im/covid19-healthsystemcapacity/community?at=5e71c1fec5f8ab54fcb09b07:

What do you think of this as a first pass epi model? https://github.com/coronafighter/coronaSEIR/blob/master/main_coronaSEIR.py

Yea, that looks promising and i'm glad to see all the references re: methodology...also just came across this: https://alhill.shinyapps.io/COVID19seir/ they made a Colab notebook! :clap: >https://github.com/alsnhll/SEIR_COVID19/blob/master/SEIR_COVID19.ipynb the creator of ^ is pretty legit: http://www.people.fas.harvard.edu/~alhill/

lossyrob commented 4 years ago

One option here is to help finish up https://github.com/CodeForPhilly/chime/issues/4 and then use chime integrated with our data in a notebook that calculates predictions at each regional level.

lossyrob commented 4 years ago

This PR sets up the CHIME python package for reuse: https://github.com/CodeForPhilly/chime/pull/249

I think getting county level parameters into here https://github.com/CodeForPhilly/chime/blob/develop/src/penn_chime/parameters.py and running the model here https://github.com/CodeForPhilly/chime/blob/develop/src/penn_chime/models.py will get us what we need (links may be broken if files move around but it should be finable)

Parameters:

class Parameters:
    """Parameters."""

    def __init__(
        self,
        *,
        current_hospitalized: int,
        doubling_time: float,
        known_infected: int,
        relative_contact_rate: float,
        susceptible: int,

        hospitalized: RateLos,
        icu: RateLos,
        ventilated: RateLos,

        as_date: bool = False,
        market_share: float = 1.0,
        max_y_axis: int = None,
        n_days: int = 60,
        recovery_days: int = 14,
    ):
        # ...

See https://codeforphilly.github.io/chime/GLOSSARY.html

https://code-for-philly.gitbook.io/chime/what-is-chime/parameters

https://code-for-philly.gitbook.io/chime/what-is-chime/the-outputs