Skip to main content
Springer Nature - PMC COVID-19 Collection logoLink to Springer Nature - PMC COVID-19 Collection
. 2020 Jul 31;66(5):1195–1209. doi: 10.1007/s00466-020-01886-2

An agent-based computational framework for simulation of global pandemic and social response on planet X

T I Zohdi 1,
PMCID: PMC7394477  PMID: 32836599

Abstract

The increase in readily available computational power raises the possibility that direct agent-based modeling can play a key role in the analysis of epidemiological population dynamics. Specifically, the objective of this work is to develop a robust agent-based computational framework to investigate the emergent structure of Susceptible-Infected-Removed/Recovered (SIR)-type populations and variants thereof, on a global planetary scale. To accomplish this objective, we develop a planet-wide model based on interaction between discrete entities (agents), where each agent on the surface of the planet is initially uninfected. Infections are then seeded on the planet in localized regions. Contracting an infection depends on the characteristics of each agent—i.e. their susceptibility and contact with the seeded, infected agents. Agent mobility on the planet is dictated by social policies, for example such as “shelter in place”, “complete lockdown”, etc. The global population is then allowed to evolve according to infected states of agents, over many time periods, leading to an SIR population. The work illustrates the construction of the computational framework and the relatively straightforward application with direct, non-phenomenological, input data. Numerical examples are provided to illustrate the model construction and the results of such an approach.

Keywords: Pandemic, Agent-based, Simulation

Introduction

The COVID-19 pandemic of 2020 has led to a significant increase in research in the area of modeling and simulation of infectious diseases. There are numerous aspects associated with this epoch-changing event that is now facing humanity. Macroscale (planetary) disease propagation, in addition to the related issues of logistical and political responses, is a central issue. Accordingly, the objective of this work is to develop a computationally-amenable agent-based model to investigate the behavior of an infected population by directly working at the individual-to-individual level of interaction. The wide-spread availability of computational power now raises the possibility that robust agent-based modeling can play a significant role in the analysis of infectious disease propagation. The key feature of agent-based modeling is that discrete entities (agents) are used to directly represent a population (Fig. 1). This enables the detailed analysis of epidemiological population dynamics and the ability to investigate the emergent structure SIR-type (Susceptible-Infected-Removed/Recovered) populations, as well more complex extensions, due to initially localized infections within a population on a global planetary scale, including the effects of social responses.

Fig. 1.

Fig. 1

A model problem of a “planet” with a population, which experiences sudden localized infections. Left: a model schematic and right: a computational model (blue representing currently uninfected and green representing infected)

Classical basic models

Before proceeding with the construction of an agent-based approach, it is useful to review basic concepts in the analysis of population dynamics, which dates back over two centuries to the work of Thomas Malthus. In 1798, he postulated that a population, denoted p, at a future time (t+Δt), is related to the current population (at time t) by

p(t+Δt)=λp(t), 1.1

where λ=1+(b-d)Δt, where b is a birth rate parameter and where d is a death rate parameter. One may write

p(t+Δt)-p(t)=(λ-1)p(t), 1.2

leading to, in the limit as Δt0,

Δpp=(b-d)Δtdpp=(b-d)dt. 1.3

Integrating and applying the initial condition p(t=0)=p(0) yields

ln(p(t))=c+(b-d)tp(t)=ec+(b-d)tp(t)=p(0)e(b-d)t. 1.4

Variants/extensions of this simple model include interacting subpopulations. One family of models are of particular interest in this work, namely the so-called SIR-type (Susceptible-Infected/Infectious-Removed/Recovered), described next. Subsets of the population are assigned either S, I, or R status. The genesis of such models is the paper from 1927 of Kermack and McKendrick [35].

SIR sub-population models

SIR models identify three subpopulation classes of individuals, with an assumption that the overall population is constant, since the pandemic/epidemic time scales are faster than birth time scales. The following are key:

  • S “Susceptible”, that can contract diseases,

  • I = “Infected”, that can transmit the disease and who are infected and

  • R = “Recovered/Removed” (dead or immune), where the typical assumptions include: (a) the gain in the infected class is at a rate proportional to the number of infected and susceptible, that is k1SI, k1>0 (b) the rate of removal of the infected is proportional to the number of infected, k2I, k2>0 and (c) the incubation period is short enough to be negligible.

  • In addition, if it is assumed that the various classes are uniformly mixed, where for the susceptible population:
    dSdt=-k1SI, 1.5
    while for the infected subpopulation
    dIdt=k1SI-k2I, 1.6
    and for the removed population
    dRdt=k2I. 1.7
  • Adding all of the populations together yields
    dSdt+dIdt+dRdt=0, 1.8
    where
    S+I+R=p, 1.9
    where p is the total population, S(0)=So>0, I(0)=Io>0, R(0)=0, k1>0 is the infection rate and k2>0 is the death rate.

A crucial question is, under what conditions does an infection grow, i.e. an “epidemic” occur? From Eq. 1.6, if

k1SI-k2I>0k1SI>k2Ik1k2S>1, 1.10

and thus

dIdt>0. 1.11

Equation 1.10 provides the threshold for the susceptible population

k1k2S>1S>k2k1 1.12

to allow growth to occur. The parameter k2/k1 is sometimes called the infectious contact rate, while its reciprocal is called the recovery/removal rate. This simple model is one of the most basic to describe epidemics. For reviews, we refer the reader to Murray [42].

Generalization of the SIR family of models

The basic SIR model can be extended in the following ways:

  • The SIS model: Susceptible-Infected-Susceptible (again), typified by the common cold.

  • The SIRD model: Susceptible-Infected-Recovered-Deceased, which distinguished between recovered and dead.

  • The MSIR model: Maternal-Susceptible-Infected-Recovered, where the “M class” stands for immunity derived from the mother.

  • The SEIR model: Susceptible-Exposed-Infected-Recovered, which distinguishes between “infected” and “exposed”.

  • The SEIS model: Susceptible-Exposed-Infected-Susceptible (again), typified by the common cold, yet distinguishes between “infected” and “exposed”.

  • The MSEIR model: Maternal-Susceptible-Exposed-Infected-Recovered, which incorporates features of the models above.

  • The MSEIRS model: Maternal-Susceptible-Exposed-Infected-Recovered-Susceptible, which incorporates all of the features of the models above.

For overviews and details on these various models, we refer the reader to Kermack and McKendrick [35], Murray [42], Hethcote[30, 31], Harko et al. [29], Baily [3], Altizer and Nunn [1], Miller [40], Miller [41], Osemwinyen and Diakhaby [44], Brauer and Castillo [12] Anderson [2], Barlett [5], May and Anderson [38], Capasso [15] and Vynnycky and White [48]. Various features can be included, such as

  • Variable contact rates,

  • Adult vaccinations,

  • Child vaccinations,

  • Newborn vaccinations,

  • Effects of age and

  • Vector transmission (for example from mosquitos).

Virtually all subsequent, more complex spatio-temporal extensions construct homogenized continuum (PDE-based) models, incorporating the above models. These approaches require extensive, complex, discretization techniques and are of limited value for studies on population dynamics with underlying complex interaction between subpopulations (Fig. 2). Such models have limited predictive capability and are computationally expensive, due to the extremely fine discretization needed to achieve tolerable numerical accuracy. Independent of the numerical difficulties, such modeling approaches attempt to develop continuum type field equations, by passing to the spatio-temporal limit as Δt0, Δx0 make somewhat unrealistic assumptions in order to obtain tractable partial differential equations to enable qualitative estimates of the true population behavior. One must question the process of first homogenizing an inherently discrete population’s characteristics in order to develop PDE-based continuum models and then re-discretizing them into nodal values. This process is not bijective, in other words, one does not recover the original discrete system (Fig. 2). Information is lost in this process. Also, because of the simplifying assumptions on interaction, births, age structuring, etc., that are typically made, in order to obtain tractable field equations, the resulting discrete equations are not as physically meaningful as the true discrete population interaction that it is based upon. Essentially, in dealing with small subpopulations, or populations with complex mixing and high heterogeneity, the assumptions behind regularization techniques leading to continuum models may be difficult to justify. This motivates developing agent based methods, which are based on direct accounting of interactions between individuals or population subgroups.

Fig. 3.

Fig. 3

A schematic of the growth of subpopulations

Fig. 2.

Fig. 2

The classical process of developing a continuum model from an inherently discrete system, which is then re-discretized into nodes. Information is lost in this “homogenization” process (Zohdi [53])

Agent-based models and objectives

Agent based models attempt to model the interaction between individuals directly, incorporating stochastic methods and have been used across many different disciplines, such as: biology, business, economics, social sciences, robotics and technology. The objective is to obtain deeper insight into the connection between micro-interaction and emergent macroscale behavior. The method first appeared in the 1940’s, but was computationally infeasible until the 1990’s. Although there are many forms of agent-based models, computationally, they are quite similar to particle interaction models in mathematical physics. The use of the term agent is often attributed to Holland and Miller’s 1991 paper “Artificial Adaptive Agents in Economic Theory” [33]. The 1990’s and early 2000’s led to many approaches, often correlated to the concepts of swarms of agents and aggregate movement. For reviews of the literature, see Bonabeau [11]. The attractive features of the approaches are the ability to model individual interactions nonphenomenologically, and to allow the system to evolve autonomously. The utility of such approaches is that one can trivially modify the “rules of engagement”, population sizes, reproduction rates, etc, and provide quantitative spatial and temporal information. Clearly, such a computational technique is easy to implement, and it is no extra effort to increase the number of population character parameters. We refer the reader to Zohdi [49, 50, 5355], for reviews. Our objective in the current paper is to apply similar concepts to pandemic modeling, where the interaction is via infection transmission. Specifically, we develop a robust agent-based computational framework to investigate the emergent structure of Susceptible-Infected-Removed/Recovered (SIR)-type populations and more complex extensions on a global planetary scale, where each agent on the surface of the planet is initially uninfected. Infections are then seeded on the planet in localized regions. Contracting an infection depends on the characteristics of each agent—i.e. their susceptibility and contact with the seeded, infected, agents. Agent mobility on the planet is dictated by social policies, for example such as “shelter in place”, “complete lockdown”, etc. The global population is then allowed to evolve according to infected states of agents, over many time periods, leading to an SIR population. The work illustrates the construction of the computational framework and provides numerical examples.

Remarks: In the related field of astro-biology, there are concerns about Earth-based microbes potentially infecting other worlds, by being carried on spacecraft missions. The recent discovery of water on Mars (as well as the moons of Saturn and Jupiter) has heightened such concerns. It has been reported that, on Mars, liquid water can possibly form seasonally in locations where snow is present on soils, in the presence of saline, producing brine (Martinez and Renno [37]). Since terrestrial bacteria can grow brine, infection of the Marian biosphere could be possible. The reverse is also true, since returning spacecraft from Mars could bring back non-terrestrial organisms back to Earth. NASA and other space agencies have consistently reported that Bacillus spores, subjected to years vacuum in space, cosmic radiation and extreme temperatures, can survive, if they are shielded by the exterior of a spacecraft. We refer readers to Beaty [6], Fischer et al. [23], Martinez and Renno [37], Summons et al. [46], Michalski [39] and Debus [18] for details.

Direct agent-based interaction models

Following Zohdi [53], we now construct a model problem based on discrete rule-driven interaction between agents of subpopulations. One can consider an agent as an individual or a small group of individuals (a “meta-individual”).

Agent-to-agent interaction and rules of engagement

Consider the following construction, for the “rules of engagement” for intermeshed infected and uninfected subpopulations, which are in close proximity to one another (Fig. 4):

  • If two agents of the subpopulations, denoted (I=infected) and (U=uninfected), come within a certain distance,
    ||ri(I)-rj(U)||dIU, 2.1
    then two are said to engage in “contact”.
  • If the uninfected agent is susceptible, then the agent becomes infected.

  • The “susceptibility” of the uninfected subpopulations is heterogeneous (preset at the beginning of the simulation).

  • The incubation period for an infected agent to either recover or die is TI.

  • Once an agent of the population perishes or becomes immune, it cannot affect the rest of the population.

Fig. 5.

Fig. 5

Spherical coordinates used for agent placement. In this example, agent high-density concentration centers are at the (z-poles)

Fig. 4.

Fig. 4

The infection zone and flow chart

Algorithm

The algorithm is as follows:

  • Step 1: Select:

  • (a) The number of agents (Na) in the populations.

  • (b) The infection distance.

  • (c) The susceptibility of the agents.

  • (d) The total simulation time T.

  • (e) The cycle time = Δt. The number of time-periods is TΔt.

  • Step 2: Generate the initial population locations on the globe.

  • Step 3: For each population, loop over each agent in the infection radius. If so, according to the “rules of engagement” in the previous section, compute the interaction of the pair.

  • Step 4: Compute the survivors and deaths of the existing agents for the time period.

  • Step 5: Repeat steps 2–4 for the next time period until the overall simulation time is complete.

The relative ease at which one can generate such a population, and step it through several time periods, is rather obvious.

Computational acceleration

There are a variety of techniques to accelerate the computations. The primary computational expense is neighbor-to-neighbor contact checks (an O(Na2) operation). To mitigate this, one can construct so-called “interaction” or “Verlet” lists of neighboring agents that an agent may be in contact with at any given time. One can retain this Verlet list for a preset number of time steps and then update it when appropriate. The approach is relatively straightforward to implement and can speed up the computations dramatically (see Pöschel and Schwager [45] and Zohdi [51, 52]). Alternative computational acceleration approaches can be achieved via sorting and binning methods, which proceed by partitioning the whole domain into bins. The agents are sorted by the bins in which they reside. The agent interaction proceeds, bin by bin, where the agents within a bin potentially only interact with agents within their bin or neighboring bins. Parallel processing is a further acceleration that can be employed whereby groups of agents or bins are sent to each processor and updated periodically, sharing the agent information between processors every few time-steps. In this work, we only implemented the Verlet list algorithm.

A model problem

As an example, consider a population with 20,000 agents (Fig. 6). We consider six cases of increasingly mobile subpopulations that are initially uniformly mixed across the globe, with agents being infected or uninfected and being susceptible or not susceptible. We employed the following parameters:

  • Globe radius, R=1.

  • Total simulation time: T=30.

  • The infection distance: dIU=0.01R.

  • The population initially infected = 1%.

  • The population that is susceptible = 25%.

  • The incubation period for an agent to either recover or die is TI=5.

  • Update cycle time = Δt=0.1.

  • The location of each agent was achieved using a random spherical coordinate scheme (see Fig. 9), whereby θ (inclination angle) is a random number between 0θπ and ϕ (azimuth angle) is a random number between 0ϕ2π, yielding the following in Cartesian coordinates:
    rx=Rsin(θ(t=0))cos(ϕ(t=0)), 3.1
    and
    ry=Rsin(θ(t=0))sin(ϕ(t=0)), 3.2
    and
    rz=Rcos(ϕ(t=0)). 3.3
  • The mobility is given by (the location at an instant of time later)
    rx=Rsin(θ(t+Δt))cos(ϕ(t+Δt)) 3.4
    and
    ry=Rsin(θ(t+Δt))sin(ϕ(t+Δt)) 3.5
    and
    rz=Rcos(ϕ(t+Δt)). 3.6
    This produces dense population centers at the z-poles. The updated values for the angles are given by
    Inclination mobility:θ(t+Δt)=θ(t)+Δθ, 3.7
    where Δθ=Aθ×β, β being a random number between -1β1 and Aθ is a mobility amplitude parameter and
    Azimuthal mobility:ϕ(t+Δt)=ϕ(t)+Δϕ, 3.8
    where Δϕ=Aϕ×γ, γ being a random number between -1γ1 and Aϕ is a mobility amplitude parameter.

Figure 6 illustrates, starting from left to right and top to bottom, the progressive growth of SIR subpopulations. Shown are results at t = 0, t = 0.2T, t = 0.4T, t = 0.6T, t = 0.8T and t = T time, with mobility parameters: Aϕ=0.004 and Aθ=0.004. Figure 7 shows the evolution of infected and dead/recovered with mobility parameters: 0.0Aϕ0.005 and 0Aθ0.005. With increases in mobility, there is an immediate and direct impact on the spread of the infection, emanating primarily from the dense population centers at the z-poles. The utility of the presented computational approach is that one can trivially modify the “rules of engagement”, population sizes, etc., and provide quantitative spatial and temporal information. Clearly, such a computational technique is easy to implement, and it is no extra effort to increase the number of population character parameters. This is straightforward to implement. Numerous additional features can be added easily. For example, one could add population growth in a variety of ways, such as, algorithmically:

  • If an agent of a population survives beyond a certain number of time periods, it then produces offspring, and then perishes.

  • The offspring are placed within an “offspring” radius, centered at the spatial location of the parent. The number of children possible that an individual can have, at maturity, is given by
    offspring=integer(ϕ×M) 3.9
    where 0ϕ1 is a random number and where M is the maximum number of children possible. The function “integer” extracts the nearest integer from (ϕ×M).
  • After giving birth to the offspring once, the agent cannot have offspring again.

Fig. 6.

Fig. 6

Starting from left to right and top to bottom, the progressive growth of at SIR population. Shown are after t = 0, t = 0.2T, t = 0.4T, t = 0.6T, t = 0.8T and t = T time, with mobility parameters: Aϕ=0.004 and Aθ=0.004

Fig. 9.

Fig. 9

Agent-obstacle-target model problem

Fig. 7.

Fig. 7

Evolution of infected and dead/recovered with mobility parameters: Aϕ,Aθ=0.000,0.001,0.002,0.003,0.004 and 0.005

We note that, if desired, incorporation of “forbidden regions” i.e. “uninhabitable zones” within the domain is relatively easily to enforce by checking at each time step whether an individual has entered such an area (Fig. 8). If so, then the individual is moved back outside, and a new position is recalculated with a different trajectory. Another extension to the overall modeling is to provide more detail on the movement of the agents. For example, as described at the outset of this paper, we could have allowed for them (as well as the parents) to move according to more physical rules, based on pandemic events and stimuli. It is here where one can draw on swarm movement models discussed earlier in the paper. This is discussed further next.

Fig. 8.

Fig. 8

Creating a “forbidden” zone

Extensions

One direction in which to extend this research is in the swarm-like movement of agents in response to pandemic events. The origins of swarm modeling are in the description of biological groups (flocks of birds, schools of fish, crowds of human beings, etc.) responses to predators or prey (Breder 1952 [13]). Early approaches that rely on decentralized organization can be found in Beni [8], Brooks [14], Dudek et al. [20], Cao et al. [16], Liu and Passino [36] and Turpin et al [47]. Usual models incorporate a tradeoff between long-range interaction and short-range repulsion between individuals, dependent on the relative distance between individuals (see Gazi and Passino [2426], Bender and Fenton [7] or Kennedy and Eberhart [34]). The most basic model is to treat each individual as a point mass (Zohdi [49]), which we adopt here, and to allow the system to evolve, based on Newtonian mechanics, using a combination of short-range and long-range interaction forces (Gazi and Passino [24], Bender and Fenton [7], Kennedy and Eberhart [34] and Zohdi [49, 50, 5355]).1 For some creatures, the “visual field” of individuals may play a significant role, while if the agents are robots or Unmanned Autonomous Vehicles (UAVs) the communication can be electronic. However, in some systems, agents interact with a specific set of other agents, regardless of whether they are far away (Feder [21]). This appears to be the case for Starlings (Sturnus vulgaris). In Ballerini et al. [4], the authors concluded, that such birds communicate with a certain number of birds surrounding it and that that interactions are governed by topological distance and not metric distance. Interested readers are referred to Ballerini et al. [4]. We refer the reader to Zohdi [49, 50, 5355] for reviews and provide an example of such a formulation next.

An example of a swarm formulation

In order to illustrate how swarm movement is modeled, following Zohdi [49, 50, 5355], we treat the agents as point masses, i.e. we ignore their dimensions. For each agent (Ns in total) the equations of motion are

miv˙i=mir¨i=Ψitot=F(Niat,Niao,Niaa), 4.1

where the position of a point (agent) in space is given by the vector ri, the velocity is given by vi=r˙i, the acceleration is given by ai=v˙i=r¨i, and where Ψitot represents the total forces acting on an agent i, Niat represents the interaction between agent i and desired targets, Niao represents the interaction between agent i and obstacles and Niaa represents the interaction between agent i and other agents. In the context of a pandemic, examples of targets could be hospitals, food distribution centers, etc., while obstacles could be physical barriers, such as buildings.

Agent-target interaction

Consider agent-target interaction

||ri-Tj||=(ri1-Tj1)2+(ri2-Tj2)2+(ri3-Tj3)21/2=defdijat, 4.2

where Tj is the position vector to target j and the direction to each target is

nij=Tj-ri||ri-Tj||. 4.3

For each agent (i), we compute a weighted direction to each target

n^ij=(wt1e-a1dijat-wt2e-a2dijat)nij, 4.4

where the wti are weights reflecting the importance of the target, ai are decay parameters, which is summed (and normalized later in the analysis) to give an overall direction to move towards

Niat=j=1Ntn^ij. 4.5

Agent-obstacle interaction

Now consider agent-obstacle interaction

||ri-Oj||=(ri1-Oj1)2+(ri2-Oj2)2+(ri2-Oj2)21/2=defdijao, 4.6

where Oj is the position vector to obstacle j and the direction to each obstacle is

nij=Oj-ri||ri-Oj||. 4.7

For each agent (i), we compute a weighted direction to each obstacle

n^ij=(wo1e-b1dijao-wo2e-b2dijao)nij, 4.8

where the woi are weights reflecting the importance of the obstacle, bi are decay parameters, which is summed (and normalized later in the analysis) to give an overall direction to move towards

Niao=j=1Non^ij. 4.9

Agent–agent interaction

Now consider agent(i)–agent(j) interaction

||ri-rj||=(ri1-rj1)2+(ri2-rj2)2+(ri3-rj3)21/2=defdijaa, 4.10

and the direction to each agent

nij=rj-ri||ri-rj||. 4.11

For each agent (i), we compute a weighted direction to each agent

n^ij=(wa1e-c1dijaa-wa2e-c2dijaa)nij, 4.12

where the wai are weights reflecting the importance of the agents, ci are decay parameters, which is summed (and normalized later in the analysis) to give an overall direction to move towards

Niaa=j=1Nan^ij. 4.13

Summation of interactions

We now aggregate the contributions by weighting their overall importance with weights for agent/target interaction, Wat, agent/obstacle interaction, Wao and agent/agent interaction, Waa:2

Nitot=WatNiat+WaoNiao+WaaNiaa, 4.14

normalize the result

ni=Nitot||Nitot||. 4.15

The forces are then constructed by multiplying the thrust force available by the propulsion system (foot, bicycle, car, etc.), Fi, by the overall normal direction

Ψitot=Fini. 4.16

We then integrate the equations of motion:

miv˙i=Ψitot, 4.17

yielding

vi(t+Δt)=vi(t)+ΔtmiΨitot(t) 4.18

and

ri(t+Δt)=ri(t)+Δtvi(t). 4.19

Note that if

||vi(t+Δt)||>vmax, 4.20

then we define viold(t+Δt)=vi(t+Δt) and the velocity is rescaled

vinew(t+Δt)=vmaxviold(t+Δt)||viold(t+Δt)||, 4.21

with vi(t+Δt)=vinew(t+Δt).

An algorithm for movement in a region

Consider the following algorithm:

  1. Initialize the locations of the targets: Ti=(Tx,Ty,Tz)i, i = 1, 2,...NT = targets.

  2. Initialize the locations of the obstacles: Oi=(Ox,Oy,Oz)i, i = 1, 2,...NO = obstacles.

  3. Initialize the locations of the agents: ri=(rx,ry,rz)i, i = 1, 2,...Na = agents.

  4. For each agent (i), determine the distance and directed normal to each target, obstacle and other agents.

  5. For each agent (i), determine interaction functions Niat, Niao, Niaa and ni.

  6. For each agent (i), determine force acting upon it, Ψitot=Fini.

  7. For each agent (i), integrate the equations of motion (checking constraints) to produce vi(t+Δt) and ri(t+Δt).

  8. Determine if any targets have been reached by checking the distance between agents and targets
    ||ri-Tj||Tolerance. 5.1
    For any Tj, if any agent has satisfied this criteria, then immobilize i (fix ri).
  9. The entire process is then repeated for the next time step.

Preliminary numerical example

As a preliminary example, consider the following parameters:

  • Mass = 75 kg,

  • 100 agents,

  • 1 target,

  • 10 obstacles,

  • T=2000 s,

  • Δt=0.001 s,

  • Initial agent velocity, vi(t=0)=0 m/s,

  • Initial agent domain (10, 10, 0) m,

  • Thrust force available by the system, Fi=107 Nt,

  • Domain of (500, 500, 0) m,

  • Maximum velocity agent vmax=2 m/s.

The vector of system parameter inputs is

Λi=def{Λ1,Λ2...ΛN}={Wma,Wao,Waa,wt1,wt2,wo1,wo2,wa1,wa2,a1,a2,b1,b2,c1,c2} 5.2

was given by a test parameter vector

Λi=def{10.00,5.00,7.50,0.25,0.50,0.60,0.80,0.30,0.85,0.15,0.50,1.00,0.75,0.90,0.60}, 5.3

selected within the following intervals:

  • Overall weights: 0Wat,Wao,Waa10,

  • Target weights: 0wt1,wt21,

  • Obstacle weights: 0wo1,wo21,

  • Agent weights: 0wa1,wa21 and

  • Decay coefficients: 0a1,a21, 0b1,b21, 0c1,c21.

Figure 10 illustrates the results of this parameter choice.

Fig. 10.

Fig. 10

Starting from left to right and top to bottom, the progressive movement of a group of agents (blue) avoiding obstacles (green) to get to the target (red)

Parameter estimation via machine-learning

There are many parameters in the system, warranting the use a Machine Learning Algorithm. Here we follow Zohdi [50, 54, 55] in order to optimize behavior by minimizing a cost function. For example, let us consider minimizing the following cost function

Π(Λ)=(Ntot-Na)Ntot 5.4

where Na represents the number agents that reached the target within a specific time and Ntot represents the total number of agents in the system. In other words, the system is being driven to the parameters generating the best case scenario (all agents reaching the target). The design vector of system parameters is:

Λ={Λ1,Λ2...ΛN}={Wmt,Wmo,Wmm,wt1,wt2,wo1,wo2,wm1,wm2,a1,a2,b1,b2,c1,c2}. 5.5

Cost functions associated with optimization of complex behavior are oftentimes nonconvex in design parameter space and often nonsmooth, as is the case for the system of interest. Their minimization is usually difficult with direct application of gradient methods. This motivates nonderivative search methods, for example those found in Machine Learning Algorithms (MLA’s). One of the most basic MLA’s are so-called Genetic Algorithms (GA’s). Typically, one will use a GA first in order to isolate multiple local minima, and then use a gradient based algorithm in these locally convex regions or reset the GA to concentrate its search over these more constrained regions. GA’s are typically the simplest scheme to start the analysis, and one can, of course, use more sophisticated methods if warranted. For a review of GA’s, see the pioneering work of John Holland (Holland [32]), as well as Goldberg [27], Davis [17], Onwubiko [43] and Goldberg and Deb [28]. The GA approach is extremely well-suited for nonconvex, nonsmooth, multicomponent, multistage systems, and involves the following essential concepts:

  1. Population generation: Generate system population: Λi=def{Λ1i,Λ2i,Λ3i,Λ4i,...,ΛNi}={interactionparameters,...,etc.}i

  2. Performance evaluation: Compute fitness/performance of each genetic string: Π(Λi) and rank them (i=1,...,N)

  3. Mating process: Mate pairs/produce offspring: λi=defΦ(I)Λi+(1-Φ(I))Λi+1 where 0Φ1 (Fig. 11)

  4. Gene elimination: Eliminate poorly performing genetic strings, keep top parents and generated offspring

  5. Population regeneration: Repeat the process with the new gene pool and new random genetic strings

  6. Solution post-processing: Employ gradient-based methods afterwards in the local “valleys”-if smooth enough

Fig. 11.

Fig. 11

The basic action of a machine learning-based genetic algorithm (Zohdi [55])

Algorithmic specifics

Following Zohdi [50, 54, 55], the algorithm is as follows:

  • Step 1:   Randomly generate a population of S starting genetic strings, Λi,(i=1,2,3,...,S):
    Λi=def{Λ1,Λ2...ΛN}={Wmt,Wmo,Wmm,wt1,wt2,wo1,wo2,wm1,wm2,a1,a2,b1,b2,c1,c2}.
  • Step 2:   Compute fitness of each string Π(Λi), (i = 1, ..., S)

  • Step 3:   Rank genetic strings: Λi, (i = 1, ..., S)

  • Step 4:   Mate nearest pairs and produce two offspring, (i = 1, ..., S)
    λi=defΦ(I)Λi+(1-Φ(I))Λi+1,λi+1=defΦ(II)Λi+(1-Φ(II))Λi+1
  • Step 5:   Eliminate the bottom M<S strings and keep top K<S parents and top K offspring (K offspring + K parents +M=S)

  • Step 6:   Repeat steps 1–6 with top gene pool (K offspring and K parents), plus M new, randomly generated, strings

  • Note:   Φ(I) and Φ(II) are random numbers, such that 0Φ(I)1, 0Φ(II)1, which are different for each component of each genetic string

  • Option:   Rescale and restart search around best performing parameter set every few generations

  • Remark: The system parameter search is conducted within the constrained ranges of Λ1(-)Λ1Λ1(+), Λ2(-)Λ2Λ2(+) and Λ3(-)Λ3Λ3(+), etc. These upper and lower limits would, in general, be dictated by what is physically feasible.

As another example, one can use such algorithms to search for parameter sets that yield subpopulations (such as infected (I) and recovered (R)) having similar stable sizes after many time-periods. Mathematically speaking, this can be expressed by writing minΛΠ(Λ), where

Π(Λ)=|I-R|I+R, 5.6

and where Λ=def{dIU,Aϕ,Aθ,TI,etc.}, after a set number of time periods for a given Λ. Clearly, there are numerous possibilities. Typically, for populations with a finite number of agents, there will be slight variations in the performance for different random starting configurations. In order to stabilize the objective function’s value with respect to the randomness of the starting configuration, for a given parameter selection (Λ), a regularization procedure is applied within the genetic algorithm, whereby the performances of a series of different random starting configurations are averaged until the (ensemble) average converges, i.e. until the following condition is met:

1Z+1i=1Z+1Π(i)(ΛI)-1Zi=1ZΠ(i)(ΛI)TOL1Z+1i=1Z+1Π(i)(ΛI), 5.7

where index i indicates a different starting random configuration (i=1,2,...,Z) that has been generated and Z indicates the total number of configurations tested. In order to implement this in the genetic algorithm, in step 2, one simply replaces compute with ensemble compute, which requires a further inner loop to test the performance of multiple starting configurations. Development of such stochastic Machine Learning Algorithms for complex, multiscale, systems is currently under investigation by the author.

Footnotes

1

There are other modeling paradigms, for example mimicking ant colonies (Bonabeau et al. [9]) which exhibit foraging-type behavior and trail-laying-trail-following mechanisms for finding food sources (see Kennedy and Eberhart [34] and Bonabeau et al. [9], Dorigo et al. [19], Bonabeau et al. [9], Bonabeau and Meyer [10] and Fiorelli et al. [22]).

2

The parameters in the model will be optimized shortly.

The original version of this article was revised: The sentence “If we assume that everyone in the beginning is susceptible (S(t=0)=1), then Eq. 1.10 implies that k1/k2>1 (1.13) is the condition for growth.” which includes the Eq. 1.3 under the section “1.2 SIR sub-population models” has been removed from the article.

Publisher's Note

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

Change history

9/12/2020

In the original publication of the article, the sentence “If we assume that everyone in the beginning is susceptible (S(t = 0) = 1).

References

  • 1.Altizer S, Nunn C. Infectious diseases in primates: behavior, ecology and evolution. Oxford series in ecology and evolution. Oxford: Oxford University Press; 2006. [Google Scholar]
  • 2.Anderson RM, editor. Population dynamics of infectious diseases: theory and applications. London: Chapman and Hall; 1982. [Google Scholar]
  • 3.Bailey Norman TJ. The mathematical theory of infectious diseases and its applications. 2. London: Griffin; 1975. [Google Scholar]
  • 4.Ballerini M, Cabibbo N, Candelier R, Cavagna A, Cisbani E, Giardina I, Lecomte V, Orlandi A, Parisi G, Procaccini A, Viale M, Zdravkovic V. Interaction ruling animal collective behavior depends on topological rather than metric distance: evidence from a field study. PNAS. 2008;105(4):1232–1237. doi: 10.1073/pnas.0711437105. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 5.Bartlett MS. Measles periodicity and community size. J R Stat Soc Ser A. 1957;120(1):48–70. doi: 10.2307/2342553. [DOI] [Google Scholar]
  • 6.Beaty D, Buxbaum K, Meyer M, Barlow N, Boynton W, Clark B, Deming J, Doran PT. Findings of the mars special regions science analysis group. Astrobiology. 2006;6(5):677–732. doi: 10.1089/ast.2006.6.677. [DOI] [PubMed] [Google Scholar]
  • 7.Bender J, Fenton R. On the flow capacity of automated highways. Transp Sci. 1970;4:52–63. doi: 10.1287/trsc.4.1.52. [DOI] [Google Scholar]
  • 8.Beni G (1988) The concept of cellular robotic system. In: IEEE international symposium on intelligent control, pp 57–62
  • 9.Bonabeau E, Dorigo M, Theraulaz G. Swarm intelligence: from natural to artificial systems. New York: Oxford University Press; 1999. [Google Scholar]
  • 10.Bonabeau E, Meyer C. Swarm intelligence: a whole new way to think about business. Harv Bus Rev. 2001;79(5):106–114. [PubMed] [Google Scholar]
  • 11.Bonabeau E. Agent-based modeling: methods and techniques for simulating human systems. Proc Natl Acad Sci USA. 2002;99:7280–7287. doi: 10.1073/pnas.082080899. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 12.Brauer F, Castillo-Chavez C. Mathematical models in population biology and epidemiology. New York: Springer; 2001. [Google Scholar]
  • 13.Breder CM. Equations descriptive of fish schools and other animal aggregations. Ecology. 1954;35(3):361–370. doi: 10.2307/1930099. [DOI] [Google Scholar]
  • 14.Brooks RA (1991) Intelligence without reason. In: Proceedings of the international joint conference on artificial intelligence (IJCAI-91), pp 569–595
  • 15.Capasso V. Mathematical structure of epidemic systems. Berlin: Springer; 1993. [Google Scholar]
  • 16.Cao YU, Fukunaga AS, Kahng A. Cooperative mobile robotics: antecedents and directions. Auton Robots. 1997;4(1):7–27. doi: 10.1023/A:1008855018923. [DOI] [Google Scholar]
  • 17.Davis L (1991) Handbook of genetic algorithms. Thompson Computer Press
  • 18.Debus A. Estimation and assessment of Mars contamination. Adv Space Res. 2005;35(9):164853. doi: 10.1016/j.asr.2005.04.084. [DOI] [PubMed] [Google Scholar]
  • 19.Dorigo M, Maniezzo V, Colorni A. Ant system: optimization by a colony of cooperating agents. IEEE Trans Syst Man Cybern B. 1996;26(1):29–41. doi: 10.1109/3477.484436. [DOI] [PubMed] [Google Scholar]
  • 20.Dudek G, Jenkin M, Milios E, Wilkes D. A taxonomy for multi-agent robotics. Auton Robots. 1996;3:375–397. doi: 10.1007/BF00240651. [DOI] [Google Scholar]
  • 21.Feder T. Statistical physics is for the birds. Phys Today. 2007;60:28–29. [Google Scholar]
  • 22.Fiorelli E, Leonard NE, Bhatta P, Paley D, Bachmayer R, Fratantoni DM (2004) Multi-auv control and adaptive sampling in monterey bay. In: Autonomous underwater vehicles, 2004 IEEE/OES, pp 134–147
  • 23.Fischer E, Martinez GM, Elliott HM, Renno NO. Experimental evidence for the formation of liquid saline water on Mars. Geophys Res Lett. 2014 doi: 10.1002/2014GL060302. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 24.Gazi V, Passino KM (2002) Stability analysis of swarms. In: Proceedings of the American control conference. Anchorage, AK May 8-10
  • 25.Gazi V, Passino KM. Stability analysis of swarms. IEEE Trans Autom Control. 2003;48(4):692–697. doi: 10.1109/TAC.2003.809765. [DOI] [Google Scholar]
  • 26.Gazi V, Passino KM. A class of attraction/repulsion functions for stable swarm aggregation. Int J Control. 2004;77(18):1567–1579. doi: 10.1080/00207170412331330021. [DOI] [Google Scholar]
  • 27.Goldberg DE. Genetic algorithms in search, optimization and machine learning. Boston: Addison-Wesley; 1989. [Google Scholar]
  • 28.Goldberg DE, Deb K. Special issue on genetic algorithms. Comput Methods Appl Mech Eng. 2000;186(2–4):121–124. doi: 10.1016/S0045-7825(99)00380-1. [DOI] [Google Scholar]
  • 29.Harko T, Lobo FSN, Mak MK. Exact analytical solutions of the susceptible-infected-recovered (SIR) epidemic model and of the SIR model with equal death and birth rates. Appl Math Comput. 2014;236:184–194. doi: 10.1016/j.amc.2014.03.030. [DOI] [Google Scholar]
  • 30.Hethcote H. The mathematics of infectious diseases. SIAM Rev. 2000;42(4):599–653. doi: 10.1137/s0036144500371907. [DOI] [Google Scholar]
  • 31.Hethcote Herbert W. Three basic epidemiological models. In: Levin Simon A, Hallam Thomas G, Gross Louis J, editors. Applied mathematical ecology: biomathematics. Berlin: Springer; 1989. pp. 119–144. [Google Scholar]
  • 32.Holland JH. Adaptation in natural and artificial systems. Ann Arbor: University of Michigan Press; 1975. [Google Scholar]
  • 33.Holland JH, Miller JH. Artificial adaptive agents in economic theory (PDF) Am Econ Rev. 1991;81(2):365–371. [Google Scholar]
  • 34.Kennedy J, Eberhart R. Swarm intelligence. Burlington: Morgan Kaufmann Publishers; 2001. [Google Scholar]
  • 35.Kermack WO, McKendrick AG. A contribution to the mathematical theory of epidemics. Proc R Soc A. 1927;115(772):700–721. doi: 10.1098/rspa.1927.0118. [DOI] [Google Scholar]
  • 36.Liu Y, Passino KM (2000) Swarm intelligence: literature overview. Technical report, Ohio State University
  • 37.Martinez GM, Renno NO. Water and brines on Mars: current evidence and implications for MSL. Space Sci Rev. 2013;175:29–51. doi: 10.1007/s11214-012-9956-3. [DOI] [Google Scholar]
  • 38.May Robert M, Anderson Roy M. Infectious diseases of humans: dynamics and control. Oxford: Oxford University Press; 1991. [Google Scholar]
  • 39.Michalski JR, Cuadros J, Niles PB, Parnell J, Rogers DA, Wright SP. Groundwater activity on Mars and implications for a deep biosphere. Nat Geosci. 2013;6(2):133–138. doi: 10.1038/ngeo1706. [DOI] [Google Scholar]
  • 40.Miller JC. A note on the derivation of epidemic final sizes. Bull Math Biol. 2012;74(9):2125–2141. doi: 10.1007/s11538-012-9749-6. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 41.Miller JC. Mathematical models of SIR disease spread with combined non-sexual and sexual transmission routes. Infect Dis Model. 2017;2(1):33–55. doi: 10.1016/j.idm.2016.12.003. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 42.Murray JD. Mathematical biology. 3. Berlin: Springer; 2004. [Google Scholar]
  • 43.Onwubiko C. Introduction to engineering design optimization. Upper Saddle River: Prentice Hall; 2000. [Google Scholar]
  • 44.Osemwinyen A, Diakhaby A. Mathematical modelling of the transmission dynamics of ebola virus. Appl Comput Math. 2015;4:313–320. doi: 10.11648/j.acm.20150404.19. [DOI] [Google Scholar]
  • 45.Pöschel T, Schwager T. Computational granular dynamics. Berlin: Springer; 2004. [Google Scholar]
  • 46.Summons RE, Amend JP, Bish D, Buick R, Cody GD, Des Marais DJ, Dromart G, Eigenbrode JL, et al. Preservation of Martian organic and environmental records: final report of the Mars Biosignature Working Group. Astrobiology. 2011;11(2):157–181. doi: 10.1089/ast.2010.0506. [DOI] [PubMed] [Google Scholar]
  • 47.Turpin M, Michael N, Kumar V. Concurrent assignment and planning of trajectories for multiple robots. Int J Robot Res. 2014 doi: 10.1177/0278364913515307. [DOI] [Google Scholar]
  • 48.Vynnycky E, White RG, editors. An introduction to infectious disease modelling. Oxford: Oxford University Press; 2010. [Google Scholar]
  • 49.Zohdi TI. Computational design of swarms. Int J Numer Methods Eng. 2003;57:2205–2219. doi: 10.1002/nme.762. [DOI] [Google Scholar]
  • 50.Zohdi TI. Mechanistic modeling of swarms. Comput Methods Appl Mech Eng. 2009;198(21–26):2039–2051. doi: 10.1016/j.cma.2008.12.029. [DOI] [Google Scholar]
  • 51.Zohdi TI. A direct particle-based computational framework for electrically-enhanced thermo-mechanical sintering of powdered materials. Math Mech Solids. 2014;19(1):93–113. doi: 10.1177/1081286513505472. [DOI] [Google Scholar]
  • 52.Zohdi TI. Additive particle deposition and selective laser processing: a computational manufacturing framework. Comput Mech. 2014;54:171–191. doi: 10.1007/s00466-014-1012-6. [DOI] [Google Scholar]
  • 53.Zohdi TI. An agent-based computational framework for simulation of competing hostile planet-wide populations. Comput Methods Appl Mech Eng. 2016 doi: 10.1016/j.cma.2016.02.035. [DOI] [Google Scholar]
  • 54.Zohdi TI. Multiple UAVs for mapping: a review of basic modeling, simulation and applications. Ann Rev Environ Resour. 2018 doi: 10.1146/annurev-environ-102017-025912. [DOI] [Google Scholar]
  • 55.Zohdi TI. The game of drones: rapid agent-based machine-learning models for multi-UAV path planning. Comput Mech. 2019 doi: 10.1007/s00466-019-01761-9. [DOI] [Google Scholar]

Articles from Computational Mechanics are provided here courtesy of Nature Publishing Group

RESOURCES