Epidemiology is the study of spread of diseases among the group of population. If not controlled properly, the epidemic would cause an enormous number of problems and lead to pandemic situation. Here in this paper we consider the situation of populated areas where people live in patches. A dynamic cellular automata model for population in patches is being proposed in this paper. This work not only explores the computing power of cellular automata in modeling the epidemic spread but also provides the pathway in reduction of computing time when using the dynamic cellular automata model for the patchy population when compared to the static cellular automata which is used for a nonpatchy homogeneous population. The variation of the model with movement of population among the patches is also explored which provides an efficient way for evacuation planning and vaccination of infected areas.
Computation in epidemics helps us to understand various important factors during the epidemic spread. Computation that results in the form of simulated environment gives us the focus on how an evacuation strategy could be planned [
A substantial number of problems relating to differential equations have been solved by the cellular automata model which includes Diffusion equation [
Modeling epidemic spread using cellular automata has been done by many researchers [
The main objective of cellular automata models is how to get a global behavior from the local behavior [
In this paper we begin introducing the techniques of modeling the epidemic spread in population of patches using the differential equations in Section
The study of epidemic spread in patchy population is of importance because in normal case the population is taken to be homogeneous but the disease spread is never being homogeneous. Moreover, in any geographical environment whether it is urban or rural general tendency of population would be living in patches. Epidemic spread would not be similar in all the patches at all time and the rate of spread in one patch may be different from other patches.
Let us consider the simple SIR (susceptible-infective-recovered) [
A Cellular automaton is one kind of universal Turing machine which could perform parallel computation with ease [
At a single time step all the cells in the cellular automaton get updated in parallel. This concept helps us to model the real world behavior such as forest fire spread, epidemic spread, and reaction diffusion systems.
In homogeneous cellular automata model all the cells in the automata are assumed to have an equal amount of population and the rules applicable in each cell would be unique. The cellular automata environment is as in Figure
Neighborhood of a cell.
The green colored cell is one which is the current cell. The current cell state would be updated based on the current states of the neighboring cells colored in orange. Each cell will be having the CSW (cell status word) which is in Figure
Structure of the cell status word.
The CSW has five parameters, namely,
(i) | Number of patches | 0 |
(ii) | Cellular array size | Defined by the user |
(iii) | Number of persons in each cell | 100 |
(iv) |
|
0 for all cells |
(v) |
|
0 for all cells |
(vi) | Infection time | Defined by the user as it would be different for the various types of diseases |
(v) |
|
0 because we do not allow movement in this configuration |
Critical population value (CPV) would be calculated at each time step in the following way:
Depending on the type of diseases we deal with the time period for infection and the time period for recovery would be used. The total number of iterations/generations depends on the user. The size of the cellular array and the number of generations would be a tradeoff between the computation time taken for the completion of the process and the size of the cellular automata.
In dynamic cellular automata model for patchy population we consider only those cells which are belonging to patches during the rule evaluation. So a considerable amount of computation time is reduced when compared to homogeneous model. Here we divide the entire grid into one or more patches and the rules of those cells which belong to patches only would be running throughout the number of generations required. The diagrammatic notation is given in Figure
Patch environment of dynamic cellular model.
(i) | Number of patches | 2 |
(ii) | Cellular array size | Defined by the user |
(iii) | Number of persons in each cell | Varies cell to cell |
(iv) |
|
0 for all cells |
(v) |
|
0 for all cells |
(vi) | Infection time | Defined by the user as it would be different for the various types of diseases |
(v) |
|
0 because we do not allow movement in this configuration |
Cell status word for patchy model.
Slight modification would be done in CSW for the patchy model since we need to differentiate the cells that belong to the patch and those which do not. In order to do that we include an Enable field which takes the value 1 if the cell falls within the boundary of the patch or it takes the value 0 if it does not.
In this model we assume that the epidemic spreads in patches and movement of population is allowed from the patch and to the patch. The population distribution has been assumed to be in group of patches and there may be certain pathways that come in and go out from patches. This is in similarity with localities in cities or rural areas where one locality is connected to a highway or to other locality by means of lanes or streets.
For movement of the population in the cellular automata model instead of using the Moore neighborhood concept, we use the extended neighborhood [
So let us take these assumptions to our model, and we need to give movement to the population from the patch; for that the following situations need to be addressed. Which cells are allowed for the population to move? When the population are allowed to move? What quantity of population will move? What is the distance of movement?
The first criterion would be on deciding which cells are allowed for movement of population. We could create certain pathways similar to the lanes or streets in urban or rural area connecting the patches and outside the patches. The cells which are in these pathways would be the cells which allow the movement and those cells’ CSWs
The second criterion is the critical one when we are going to allow the population to move. There are two important ways to handle it; one is that randomly sets the generation count and during this count the population in the
The third criterion is the amount of population, that is, the number of maximum individuals that can move whether they are infected or susceptible. The maximum value we set is 5% of the cell population and it can vary from 0 to 5% in random selection of individuals in order to get a mix of susceptible and infectives.
The fourth criterion is how much distance we allow the individuals to move from one cell. Here we select on the basis of whether the movement is inside the patch or outside. If the pathway starts from inside the patch and crosses the patch, then the situation would be like this: until the patch boundary is reached, the movement is 1 cell per generation and after the patch boundary has been crossed, then the movement is 2 cells per generation.
See Figure
Patch environment with movement paths between them.
The simulation has been done in MATLAB Ver R2013 (64 bit). The processor used is Intel Core i5 and the RAM capacity is 8 GB.
From Figure
Behavior of epidemic spread across various generations in homogeneous model.
The simulation has been done in Matlab taking
The snapshots in Figure
Epidemic spread in patchy environment.
Graphs showing the SIR individual behavior in respective patches.
The computation time that has been calculated across various population counts and the number of generations has been listed out in Tables
Computation time in seconds for homogeneous population.
Total cells | Generations | |||
---|---|---|---|---|
50 | 75 | 100 | 150 | |
5000 | 23.2 | 34.6 | 42.8 | 49.9 |
7500 | 32.1 | 41.2 | 48.2 | 62.4 |
10000 | 45.4 | 52.3 | 59.1 | 72.5 |
12500 | 56.2 | 60 | 67.8 | 87.3 |
15000 | 62.1 | 68.2 | 74.7 | 92.4 |
Computation time in seconds for patchy population.
Total cells | Generations | |||
---|---|---|---|---|
50 | 75 | 100 | 150 | |
5000 | 15.3 | 28.3 | 37.7 | 44.7 |
7500 | 26.2 | 36.4 | 41.8 | 58.9 |
10000 | 38.7 | 44.8 | 52.6 | 67.1 |
12500 | 48.6 | 50.2 | 63.4 | 81.2 |
15000 | 53.5 | 62.3 | 69.2 | 87.1 |
We can observe from Tables
In regard to the effect of lattice size, the decision to be made is between the time taken and the accuracy of the result. The more the size of the lattice, the more the time taken, and the more the accuracy. The less the size of the lattice, the accuracy will be less.
Figure
Epidemic spread behavior with movement of population across patches.
The leftmost figures which is the situation of spread before the movement across the pathway is not enabled. We enable the pathways after certain period of time. The second or the middle one shows how the susceptible population moves across the pathway and after a certain time period has gone, the pathway becomes infected which is shown on the third figure.
This model with movement configuration will help us find the time period when the effect of epidemic spread in one particular patch in a geographical region will be on the other patches in the region closer to them. This would help us develop an effective evacuation strategy during the epidemic situation and it would also help us find out an effective way for vaccination program to contain the epidemic situation.
Three models for epidemic spread based on cellular automata have been considered first the homogeneous model where all the population in the cells are constant and the rules are applied everywhere and second the patchy model where we assume the population would live only in patches and the cellular automata rules would be only applied on to those patches. This dynamic applicability of rules as well as nature of a different amount of population has considerably reduced the computation time when compared to the homogeneous model. Then the patchy model with movement of population is considered and shows that in a typical living environment there is a possibility of population movement across the locations. If movement is possible, then there is a scope to study that the epidemic may spread to other locations due to this movement. Effective analysis of this spread during movement may lead a pathway to develop various strategies for evacuation situation in case of any emergency during the epidemic spread and we can also contain the epidemic by blocking those pathways where the chance of infection spread due to movement is high. We can also predict the amount of time it takes for the spread of infection to reach from one patch to another patch population across various pathways. Dynamism in cellular automata is imparted in a way that not only the rules are run on the desired cells in automaton, but also the number of individuals in each cells may also differ according to the specification.
The future scope of this study would be on how effectively the boundaries of the cellular array and the boundaries of each patch are handled. The boundary factor if handled properly could give us more enhanced results in computation. Three important boundary conditions like Dirichlet boundary condition, Neumann boundary condition, and Robin boundary condition could be explored and compared for patch boundaries as well as the cellular array boundary.
The authors declare that there is no conflict of interests regarding the publication of this paper.