Skip to main content
Log in

Circulation of Respiratory Viruses in the City: Towards an Agent-Based Ecosystem model

  • Original Article
  • Published:
Bulletin of Mathematical Biology Aims and scope Submit manuscript

Abstract

Mathematical models play an important role in management of outbreaks of acute respiratory infections (ARI). While such models are generally used to study the spread of a solitary virus, in reality multiple viruses co-circulate in the population. These viruses have been studied in detail, including the course of infection and immune defense mechanisms. We developed an agent-based model, called ABM-ARI, assimilating heterogeneous data and theoretical knowledge into a biologically motivated system, that allows to reproduce the seasonal patterns of ARI incidence and simulate interventions. ABM-ARI uses city-specific data to create a synthetic population and to construct realistic contact networks in different activity settings. Characteristics of infection, immune protection and non-specific resistance were varied between individuals to account for the population heterogeneity. For the calibration, we minimised the normalised mean absolute error between simulated and observed epidemic curves. ABM-ARI was built based on the quantitative assessment of features of predominant respiratory viruses and epidemiological characteristics of the population. It provides a good fit to the observed epidemic curves for different age groups and viruses. We also simulated one-week school closures when student absences were at or above 10%, 20% or 30% and found that only 10% and 20% thresholds resulted in a reduction of the incidence. ABM-ARI has a great potential in tackling the challenge of emerging infections by simulating and evaluating the effectiveness of various interventions.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

Data availability

The datasets generated during and analysed during the current study are available from the corresponding author on reasonable request.

Notes

  1. Influenza A and B, rhinovirus, respiratory syncytial virus, adenovirus, parainfluenza and common human coronavirus.

  2. The incidence data was based on the fact that employees are entitled to a sick leave allowance which increases the reliability of the data.

  3. Employees are entitled to a sick leave allowance paid by the employer and by the Social Insurance Fund of the Russian Federation. Sick leave allowance can also be granted to an employee taking care of a sick child or sick relative.

References

Download references

Acknowledgements

This work was carried out with the financial support of the Moscow Center of Fundamental and Applied Mathematics at INM RAS (Agreement with the Ministry of Education and Science of the Russian Federation No.075-15-2022-286).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to A. I. Vlad.

Ethics declarations

Conflict of interest

The authors have no competing interests to declare that are relevant to the content of this article.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix A: Detailed Description of the Model

The following sections provide a detailed description of the model, called ABM-ARI, following the ODD (Overview, Design concepts, Details) protocol for describing individual- and agent-based models (Grimm et al. 2006), as updated by Grimm et al. (2020).

1.1 A.1 Purpose and Patterns

The purpose of ABM-ARI is to provide a realistic description of the epidemiology of acute respiratory infections (ARI), taking into account virological and immunological processes associated with the co-circulation of different respiratory viruses modulated by social and climatic factors and the dynamics of the incidence of ARI with realistic values of parameters associated with the viruses. Virus transmission occurs when there is a contact, defined as a physical contact or a face-to-face conversation in close proximity, between susceptible and infectious agents in the same activity setting at the same time step, which is modeled using contact networks represented as complete graphs for households, and Barabasi-Albert graphs for school groups and workplaces. We evaluate the model by its ability to reproduce the pattern observed in Moscow, Russia, in 1996–2002: an epidemic curve, representing the number of weekly diagnoses of acute respiratory infections, has three distinct peaks, in October, December and February, the latter one being the highest. The curve also closely reflects the periods of school and public holidays.

1.2 A.2 Entities, State Variables, and Scales

The following entities are included in ABM-ARI: agents, households, schools, workplaces, viruses and the environment (Tables 56, 7). There are 10 million agent entities representing people with state variables that include demographic, socio-economic, epidemiological and immunological properties. School entities include three types of educational institutions: daycares, schools and colleges. Viruses consist of seven entities: influenza A (FluA) and B (FluB) viruses, respiratory syncytial virus (RSV), rhinovirus (RV), adenovirus (AdV), parainfluenza (PIV) virus and common human coronavirus (CoV). The environment contains all other entities and has global variables that change over time. The time step is equal to one day and state variables are updated at the end of each step. ABM-ARI also has a spatial representation in the form of geographic coordinates for households and schools.

Table 5 Agent entity and its state variables
Table 6 Entities and their state variables. Variables do not change over time except for the variables of the environment
Table 7 Virus entity and its state variables. Variables do not change over time

1.3 A.3 Process Overview and Scheduling

We simulate the dynamics of the virus transmission throughout a year from August 1 to July 31 with the time step equal to one day. The process goes as follows:

  1. 1.

    We determine if it is a holiday for each activity. National holidays and Sundays are holidays for all activities. Daycares have summer vacation, schools have summer, autumn, winter and spring vacations and colleges have winter and summer vacations. Saturdays are holidays for workplaces and daycares. College students can skip classes on each step with the probability of 0.33.

  2. 2.

    Going over each agent in arbitrary order we search for infectious ones. For each such agent we go over all agents connected to it in activity settings for which there is no holiday on the current step and, if we find an agent who is susceptible to the virus, we sample their contact duration from the assigned distribution (Table 8) (Valle et al. 2009). When sampling a contact duration within the household, we choose the shortest average duration between two agents according to the activity types assigned to them. Then the “infect” submodel (“Infect” section) is executed in which there is the probability of transmitting the virus.

  3. 3.

    Going over each agent in arbitrary order we execute its “update” submodel (“Update” section).

  4. 4.

    The environment updates its date variables and reads in the new value of air temperature variable from the input data (“Input data” section).

Table 8 Distributions of contact durations (in hours) for different activity settings. Normal (\({\mathcal {N}}\)) and gamma (\(\Gamma \)) distributions were selected to represent the variation in contact durations

1.4 A.4 Design Concepts

1.4.1 A.4.1 Basic Principles

The general concept underlying ABM-ARI is that infectious disease spread is driven by contacts between infected and susceptible agents in the same local environment. The probability of the transmission is defined as the product of five main factors: infectivity of infectious agent, innate immunity level and specific immunity level of susceptible agent, duration of their contact and air temperature. Agents can be in one of the four main states: susceptible, exposed, infectious or recovered. Susceptible agents can become exposed after being infected with the virus. Exposed agents are infected agents that cannot transmit viruses to other agents. Infectious agents are able to transmit the virus to susceptible agents. Recovered agents, while in that state, cannot become infected. To keep viruses in circulation throughout the year we use infections of unknown sources with random respiratory viruses among susceptible agents.

1.4.2 A.4.2 Emergence

There are two types of the results we aim to obtain. The first one consists of parameter values emerging from the calibration. The second one consists of the weekly number of diagnosed cases of infection for different age groups and viruses emerging from the simulation.

1.4.3 A.4.3 Adaptation

The only adaptive behavior of agents is self-isolation after symptom onset. An agent decides whether to stay at home or to spend a day within its assigned activity depending on its age and the number of days after symptom onset. This behavior is modeled using stochastic rules based on frequencies obtained from literature (Elveback et al. 1976).

1.4.4 A.4.4 Objectives

There are no adaptive behaviors that use direct objective-seeking.

1.4.5 A.4.5 Learning

The learning is implemented through the process of the calibration using the simulation optimisation that minimises the normalised mean absolute error between simulated and observed epidemic curves using an adaptation of the Metropolis–Hastings algorithm (see Sect. 2.3 of the article).

1.4.6 A.4.6 Prediction

While there is no prediction in the baseline scenario, we also used our model to simulate additional scenarios. In the first type of scenarios, we used the model to predict the effect of school and class closures on the infection dynamics. In the second type of scenarios, we predicted the possible impact of global warming by increasing daily average air temperatures.

1.4.7 A.4.7 Sensing

Agents are able to sense the variables of the environment, therefore on each step they know if they do not need to do the assigned activity. In addition, an agent can sense the presence or absence of other connected agents in the assigned activity. Interactions between agents can only happen when they are both present in the same local environment. For the interactions within households, the contact duration depends on the presence or absence of agents in their respective activities.

1.4.8 A.4.8 Interaction

There are local interactions between agents that can only happen in close proximity. Agents interact directly with connected agents by making a contact and having the probability to transmit the infection. The viruses interactions are mediated by agents in such way that, while an agent is infected by one virus, he is no longer susceptible to other viruses until becoming susceptible.

1.4.9 A.4.9 Stochasticity

Stochasticity is embedded in all of the processes. First, ABM-ARI is initialised in such way that all state variables of agents are stochastic (Sect. A.5). Second, the process of virus transmission is also stochastic (Section A.7.1). Finally, there is a probability of infection of an unknown source (Section A.7.2).

1.4.10 A.4.10 Collectives

Collectives are represented as activity settings: households, schools (daycares, schools and colleges) and workplaces. Schools contain a set of groups of agents, representing classes in different years. Daycares contain 5 years, schools have 11 years and colleges have 6. Each agent is assigned to one household and can also be assigned to one other activity. Workers are assigned to workplaces. Collectives are included in the model because people usually interact with the same people throughout a day.

1.4.11 A.4.11 Observation

The number of diagnosed cases of infections is recorded every step for different age groups and viruses. It is used for the calibration, evaluation, visualisation of the results and for the estimation of the effects of interventions.

1.5 A.5 Initialisation

Demographic and socio-economic state variables of agents are initialised according to multiple data sources: the data of the Census of 2010 for administrative districts of Moscow (Federal State Statistics Service 2015) is used together with the data for the age difference in couples (U.S. Census Bureau 2017) and the data for the mean age of mothers at childbearing (Federal State Statistics Service 2017). We continue to draw their values until they satisfy all assigned probabilities. We also assign immunoglobulin levels for agents according to their age based on the available literature (Lock and Unsworth 2003; Bayram et al. 2019). We use geographic data to assign coordinates to households and schools (Moscow City Government 2013). The initial number of infected agents and agents with immunity were estimated according to the input data (Section A.6), the probabilities of having symptoms (Galanti et al. 2019) and the probabilities of being diagnosed (Table 9) (Elveback et al. 1976).

Table 9 Probabilities of self-isolation and becoming diagnosed for different activities depending on the number of days after symptom onset

1.6 A.6 Input Data

There are three different types of input data. The first one is the data for the average weekly number of diagnosed cases of upper respiratory tract infections observed in Moscow over the period 1996–2002 (Romanyukha et al. 2011). The second one is the data for the dynamics of detected cases of respiratory infections of different etiology by PCR in Russia over the period 2014–2016 (Karpova et al. 2018). They are used together for the calibration and evaluation. The third one is the data for the average daily air temperature (\(^{\circ }\)C) over the period 1981–2010 in Moscow (Hydrometeorological Centre of Russia 2012) that is used in simulation to represent the change in the air temperature.

1.7 A.7 Submodels

1.7.1 A.7.1 Infect

Infect submodel is executed when two agents make a contact. Probability that infected agent i will transmit the virus v to susceptible agent j in activity setting c in the step m is

$$\begin{aligned} P_{ijvcm} = I_{iv} \cdot S_{jv} \cdot R_{jv} \cdot D_{ijc} \cdot T_{mv}, \end{aligned}$$
(1)

where \(I_{iv}\) is the infectivity of agent i with the virus v (Fig. 10a), \(S_{jv}\) is the innate susceptibility of agent j to the virus v (Figs. 10c and 10d), \(R_{jv}\) is the specific susceptibility of agent j to the virus v (Fig. 10g), \(D_{ijc}\) is the duration influence of the contact between agents i and j within collective c (Fig. 10c), \(T_{mv}\) is the temperature influence in the step m on the virus v (Fig. 10e and f).

Fig. 10
figure 10

Main factors influencing the probability of disease transmission. Figures were made using calibrated parameter values from the model (Color figure online)

1.7.2 A.7.2 Update

Update submodel is executed at the end of each step after all contacts have been made.

  1. 1.

    If an agent is susceptible: there is a very small chance that an agent might have been exposed to a virus on the current step. The virus is chosen randomly and an agent becomes exposed depending on the specific immunity level to that particular virus.

  2. 2.

    If an agent is exposed: we sample the durations of incubation and post-incubation periods from the Erlang distribution, set the state of agent to be infectious by setting the counter for the number of days in the infected state to one, and find whether the infection will be asymptomatic.

  3. 3.

    If an agent is infectious: we check if it should recover on the current step in which case an agent stops possible self-isolation, changes the state to recovered by setting the counter for the number of days in the recovered state to one and gains immunity to the virus. If there was a supporter on parent leave, we check if the supporter still needs to care for its other dependents.Footnote 3 If an agent does not recover, we add one day to the counter for the number of days in the infected state. If it becomes one, two or three and there are the symptoms, agent can self-isolate until recovery and become diagnosed. In addition, if an isolated agent is younger than 13 year-olds and there is no adult agent without the assigned activity that can care for the sick, the parent agent takes a leave from work.

  4. 4.

    If an agent is in recovered state: if the counter for the number of days in the recovered state is equal to the duration of recovered state, an agent becomes susceptible. Otherwise, we add one day to the counter.

  5. 5.

    For an agent with the immunity to any of the viruses: for each virus, we check if immunity expires on the current step. If it does not expire, we add one day to the counter for the number of days with immunity to the virus.

Appendix B: Contact Patterns

See Fig. 11.

Fig. 11
figure 11

Validation of the contact matrices. The mean number of contacts per day for different age groups and activity settings in the model compared to the data from Prem et al. (2017) for Russia with the normalised mean absolute error (nMAE) (Color figure online)

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Vlad, A.I., Romanyukha, A.A. & Sannikova, T.E. Circulation of Respiratory Viruses in the City: Towards an Agent-Based Ecosystem model. Bull Math Biol 85, 100 (2023). https://doi.org/10.1007/s11538-023-01203-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s11538-023-01203-x

Keywords

Navigation