Child of CoVid19-abm
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
WHAT IS IT?
CoVid19-abm is an agent based model for epidemic dynamics of covid19 desease in urban centers or megalopolis it aims to simulate transmission and desease dynamics and also medicare dynamics.
HOW IT WORKS
Agents represents people. There are four zones where these people 'lives' the size of each of 4 populations is N
Individuals are in 1 of four classes:
- Healthy-susceptible
- Infected-symtomatic
- Infected-asymptomatic
- Cured
The dynamics of the model are basedon local rules. A 8-neighborhood its used.
A healthy-susceptible person may be infected by an infected (symptomatic or asymptomatic) neighbor with some probability P.
An infected may show symptomatic desease only for a fraction of infected.
There is a switch for studying theoutcome of a quarantine strategy:
- Strategy 1 consist on restricting movility only of symptomatic infected
- Strategy 2 consist on restricting movility of aproximate 30 % of people
- Strategy 3 consist on restricting movility of approximate 80 % of people
HOW TO USE IT
Just choose a population size N, if running quarantine mode, choose an strategy.
THINGS TO NOTICE
When running in qurantine mode there are two things to notice:
Death by desease
duration of outbreak
THINGS TO TRY
It can be modified for include more than 4 patches of population. The rule of infection is local for first neighbors. But it can be changed for spreading the desease on second neighbors, this is not a CoVid19 behaviour but it may be useful for some other desease.
EXTENSIONS
The movility algorithm althoug showing local features it's very limited. It can be a desired extension looking for network-based movility.
RELATED MODELS
ABM_VPH
CREDITS AND REFERENCES
Author: Augusto Cabrera-Becerril.
CoVid19_abm is licensed under the GNU General Public License v3.0
Comments and Questions
globals[] turtles-own[edad is-healthy? is-sick? ti tc is_symptomatic?] breed[personas persona ] to setup clear-all setup-personas setup-patches reset-ticks end to setup-patches ask patches [let k count personas-here set pcolor cyan + 0.1 * k] end to setup-personas create-personas N [set xcor random-poisson random 40 set ycor random-poisson random 40 ] create-personas N [set xcor -40 - random-poisson random 40 set ycor -40 - random-poisson random 40 ] create-personas N [set xcor -40 - random-poisson random 40 set ycor random-poisson random 40 ] create-personas N [set xcor random-poisson random 40 set ycor -40 - random-poisson random 40 ] ask personas[set shape "person" set color green set edad random-poisson 36 set tc precision (36 + random-float 3) 2 set is-sick? false set is-healthy? true set is_symptomatic? false set ti 0] ask up-to-n-of (0.1 * N) personas [set is-sick? true set is-healthy? false set ti ti + 1 ifelse random 100 <= 8 [set is_symptomatic? true set color red][set is_symptomatic? false set color pink]] end to go ask personas [ move if is-sick?[infect set ti ti + 1 muere clear-out] colorear-personas ] ask patches [colorear-parche] tick end to move ifelse quarantine [ ifelse strategy = 1 [ifelse is-sick? and is_symptomatic? [ ][rt random 180 lt random 180 fd random-gamma 80 80]] [ifelse strategy = 2 [ask n-of (0.3 * ( count personas )) personas [ fd 0]][if strategy = 3 [ask n-of (0.8 * (count personas)) personas [fd 0] ]]] ] [rt random 180 lt random 180 fd random-gamma 80 80] end to colorear-personas ifelse is-healthy? [set color green][ ifelse is-sick? [ifelse is_symptomatic? [set color red][set color pink]][set color black]] end to colorear-parche let k count personas-here set pcolor pcolor + 0.1 * k end to infect let s count personas-on neighbors ask up-to-n-of 2.5 personas-on neighbors [if random 100 < 25 [set is-sick? true set is-healthy? false set ti ti + 1]] end to show_symptoms if ti >= 3 [ifelse random 100 < 20 [set is_symptomatic? true set tc 38 + random-float 1][set is_symptomatic? false] ] end to clear-out if ti >= 20 and random 100 <= 80[set is-healthy? false set is-sick? false set ti 0] end to muere if ti > 15 and random 100 <= 1 [die] end
There is only one version of this model, created over 5 years ago by Augusto Cabrera-Becerril.
Attached files
No files