Modelleringsoppgave: Smittemodellering#

Løs oppgaven ved å enten bruke diskrete eller kontinuerlig modeller.

Smittespredning#

Vi utforsker her en modelle for smittesprendning av sykdommer. Vi kan tenke oss at antall smittede indivier I (“Inceptibles”) utvikler seg slik:

\[I_{t+1} = I_n + aI_n\]

En kontinuerlig modell som representerer det samme, kan se slik ut:

\[I'(t) = aI(t)\]

Bildet nedenfor viser spike-proteinet som ligger på overflaten til coronaviruset, og som gir viruset dets karakteristiske form:

You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
jupyter labextension install jupyterlab_3dmol

<py3Dmol.view at 0x1da9c8dbb50>

Oppgave 1#

  • Forklar for hverandre med ord hva modellen sier. Hva betyr de ulike symbolene i likningen?

  • I hvilke sammenhenger kan det være hensiktsmessig å bruke en slik modell? Hvilke begrensninger har modellen?

  • Lag et program som simulerer smitteutviklingen over 48 uker i en populasjon med 157759 individer og en kontaktrate på 0.2 per uke. Hvis du trenger hjelp, kan du trykke på hintet nedenfor.

  • Beskriv utviklingen. Varier systematisk a og antall smittede til å begynne med. Kommenter hva som skjer.

  • Hvorfor er det viktig at kontaktraten har en enhet?

Oppgave 2#

Vi utvider modellen ved å innføre en kategori for de som er mottakelige, S (“susceptibles”). Det vil si at de som allerede er smittet, ikke kan bli smittet igjen. Vi modifiserer da modellen for de smittede, slik at den også tar hensyn til den nye kategorien:

\[I_{t+1} = I_n + aI_nS_n\]

En kontinuerlig modell kan beskrives slik:

\[I'(t) = aI(t)S(t)\]
  • Forklar hva som er endret i modellen. Hvorfor kan vi gjøre dette?

  • Lag en modell for S (mottakelige) basert på modellen for I. Hint: Når en person er smittet, hva skjer med antall mottakelige?

  • Utvid programmet ditt til å beregne og plotte antall mottakelige og smittede i samme koordinatsystem. Bruk merkelapper (labels og legend) slik at vi ser hvilken kurve som beskriver hva. Beskriv grafen med ord.

  • Varier systematisk a og antall smittede til å begynne med. Kommenter hva som skjer.

  • I hvilke sammenhenger kan det være hensiktsmessig å bruke en slik modell? Hvilke begrensninger har modellen?

Oppgave 3#

Vi legger nå til muligheten for å bli frisk (hurra!). Da trenger vi også å innføre en bedringsrate, b. Et uttrykk for antall smittede kan nå være:

\[I_{t+1} = I_n + aI_nS_n - bI_n\]

En kontinuerlig modell kan beskrives slik:

\[I'(t) = aI(t)S(t) - bI(t)\]
  • Forklar alle leddene i modellen for smittede. Hva er betydningen til b? Hva kan være en ok størrelse for b i dette tilfellet? Diskuter.

  • Lag en modell for antall friske med utgangspunkt i modellen ovenfor.

  • Simuler og plott utviklingen. Hvis grafen ikke ser fornutftig ut, bør du eksperimentere med andre verdier av b.

  • Beskriv grafen med ord.

  • I hvilke sammenhenger kan det være hensiktsmessig å bruke en slik modell? Hvilke begrensninger har modellen?

Det er vanskelig å fastsette parametrene a og b. Ofte fastsettes de ved å løpende sammenlikne modellene med reelle data fra observasjoner eller eksperimenter. I fila ‘influensa.txt’ (se “Datafiler” i sidemenyen) finner du en oversikt over antall smittede av influensaviruset H3N2 i en populasjon med 157 759 personer.

  • Les av fila og plott dataene sammen med modellen og prøv å variere a og b slik at modellen stemmer så godt som mulig med dataene.

  • Diskuter om modellen kan si noe mer generelt om smittespredning enn akkurat dette tilfellet.

Ekstra: Oppgave 4#

Vaksiner kan redusere antall mottakelige betraktelig.

  • Hvordan kan du utvide modellen slik at den tar hensyn til vaksinering?

  • Lag et program der du utforsker effekten av ulike grader av vaksinasjon (i %).

Rapport#

Skriv en rapport i Jupyter notebook der du redegjør gradvis for de ulike modellene dine. Lag også en konklusjon.