1

I run an infectious disease spread model similar to "VIRUS" model in the model library changing the "infectiousness".

I did 20 runs each for infectiousness values 98% , 95% , 93% and the Maximum infected count was 74.05 , 73 ,78.9 respectively. (peak was at tick 38 for all 3 infectiousness values)

[I took the average of the infected count for each tick and took the maximum of these averages as the "maximum infected".]

I was expecting the maximum infected count to decrease when the infectiousness is reduced, but it didn't. As per what I understood this happens, because I considered the average values of each simulation run. (It is like I am considering a new simulation run with average infected count for each tick ).

I want to say that, I am considering all 20 simulation runs. Is there a way to do that other than the way I used the average?

user4157124
  • 2,809
  • 13
  • 27
  • 42
Lawan
  • 13
  • 3
  • 1
    This doesn't sound like a programming question. Are you sure it's on topic for Stack Overflow? There may be another site within the Stack Exchange network that it's more suitable for. – BigBen Jan 28 '21 at 21:47
  • @BigBen Yes. This is a programming question. It is related to Agent Based Modelling with Netlogo. Do you have any other suggestions on where I can post this? – Lawan Jan 29 '21 at 02:29
  • You should check out [the BehavioSpace tool](http://ccl.northwestern.edu/netlogo/docs/behaviorspace.html) that is a part of NetLogo, it lets you do many model runs varying parameters to see results. Also you could consider posting your question in [the NetLogo users Google group](https://groups.google.com/g/netlogo-users) if you don't get a good response here. – Jasper Jan 29 '21 at 03:17
  • I'm not sure it's a programming question per se, but it's a question about how to understand a program. Given the small number of NetLogo questions here, and the friendliness of the NetLogo people here, I think it's OK to ask it. With ABM's, there's not a clear line between debugging and trying to understand a model. Sometimes a model behaves in an unexpected way, and it's only after you are sure there is no bug, that you realize that you didn't understand the implications of your model--which is one reason why ABMs are good. It would be better if Lawan had provided more information, though. – Mars Jan 29 '21 at 05:15
  • Thank you very much @Mars . Your answer is very helpful. I was trying to validate my disease spread model by saying that, the curve of the infected count flattens when the infectiousness is reduced. – Lawan Jan 29 '21 at 13:04
  • @Mars , I believe my model works the way you have explained. The only difference is that the total population may vary a little due to the mortality rate of the infected and the reproduction rate. I will check out the blog post and Lotka Voltera. My objective is to create an Agent Based simulation for COVID 19 transmission. ( I am not using GIS extension) – Lawan Jan 29 '21 at 13:13
  • Lawan, given your interested in COVID-19 transmission, I added a note in my answer about a paper that suggest that the kind of "island" dynamics I mentioned might be characteristic of COVID-19. – Mars Jan 29 '21 at 18:50

1 Answers1

2

In the Models Library Virus model with default parameter settings at other values, and those high infectiousness values, what I see when I run the model is a periodic variation in the numbers three classes of person. Look at the plot in the lower left corner, and you'll see this. What is happening, I believe, is this:

  1. When there are many healthy, non-immune people, that means that there are many people who can get infected, so the number of infected people goes up, and the number of healthy people goes down.

  2. Soon after that, the number of sick, infectious people goes down, because they either die or become immune.

  3. Since there are now more immune people, and fewer infectious people, the number of non-immune healthy grows; they are reproducing. (See "How it works" in the Info tab.) But now we have returned to the situation in step 1, ... so the cycle continues.

If your model is sufficiently similar to the Models Library Virus model, I'd bet that this is part of what's happening. If you don't have a plot window like the Virus model, I recommend adding it.

Also, you didn't say how many ticks you are running the model for. If you run it for a short number of ticks, you won't notice the periodic behavior, but that doesn't mean it hasn't begun.

What this all means that increasing infectiousness wouldn't necessarily increase the maximum number infected: a faster rate of infection means that the number of individuals who can infected drops faster. I'm not sure that the maximum number infected over the whole run is an interesting number, with this model and a high infectiousness value. It depends what you are trying to understand.

One of the great things about NetLogo and some other ABM systems is that you can watch the system evolve over time, using various tools such as plots, monitors, etc. as well as just looking at the agents move around or change states over time. This can help you understand what is going on in a way that a single number like an average won't. Then you can use this insight to figure out a more informative way of measuring what is happening.

Another model where you can see a similar kind of periodic pattern is Wolf-Sheep Predation. I recommend looking at that. It may be easier to understand the pattern. (If you are interested in mathematical models of this kind of phenomenon, look up Lotka-Volterra models.)

(Real virus transmission can be more complicated, because a person (or other animal) is a kind of big "island" where viruses can reproduce quickly. If they reproduce too quickly, this can kill the host, and prevent further transmission of the virus. Sometimes a virus that reproduces more slowly can harm more people, because there is time for them to infect others. This blog post by Elliott Sober gives a relatively simple mathematical introduction to some of the issues involved, but his simple mathematical models don't take into account all of the complications involved in real virus transmission.)

EDIT: You added a comment Lawan, saying that you are interested in modeling COVID-19 transmission. This paper, Variation and multilevel selection of SARS‐CoV‐2 by Blackstone, Blackstone, and Berg, suggests that some of the dynamics that I mentioned in the preceding remarks might be characteristic of COVID-19 transmission. That paper is about six months old now, and it offered some speculations based on limited information. There's probably more known now, but this might suggest avenues for further investigation.

If you're interested, you might also consider asking general questions about virus transmission on the Biology Stackexchange site.

Mars
  • 8,689
  • 2
  • 42
  • 70