Next Article in Journal
Time Stable Reduced Order Modeling by an Enhanced Reduced Order Basis of the Turbulent and Incompressible 3D Navier–Stokes Equations
Next Article in Special Issue
Suppression of Phase Synchronization in Scale-Free Neural Networks Using External Pulsed Current Protocols
Previous Article in Journal
Symplectic Model Order Reduction with Non-Orthonormal Bases
Previous Article in Special Issue
Investigation of Details in the Transition to Synchronization in Complex Networks by Using Recurrence Analysis
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Finite Symmetries in Agent-Based Epidemic Models

by
Gilberto M. Nakamura
1,2,
Ana Carolina P. Monteiro
1,
George C. Cardoso
1 and
Alexandre S. Martinez
1,2,*
1
Faculdade de Filosofia, Ciências e Letras de Ribeirão Preto (FFCLRP), Universidade de São Paulo (USP), Avenida Bandeirantes 3900, 14040-901 Ribeirão Preto, São Paulo, Brazil
2
Instituto Nacional de Ciência e Technologia de Sistemas Complexos (INCT-SC), Rua Dr. Xavier Sigaud 150, Urca, 22290-180 Rio de Janeiro, Brazil
*
Author to whom correspondence should be addressed.
Math. Comput. Appl. 2019, 24(2), 44; https://doi.org/10.3390/mca24020044
Submission received: 1 March 2019 / Revised: 10 April 2019 / Accepted: 21 April 2019 / Published: 23 April 2019
(This article belongs to the Special Issue Dynamics Days Latin America and the Caribbean 2018)

Abstract

:
Predictive analysis of epidemics often depends on the initial conditions of the outbreak, the structure of the afflicted population, and population size. However, disease outbreaks are subjected to fluctuations that may shape the spreading process. Agent-based epidemic models mitigate the issue by using a transition matrix which replicates stochastic effects observed in real epidemics. They have met considerable numerical success to simulate small scale epidemics. The problem grows exponentially with population size, reducing the usability of agent-based models for large scale epidemics. Here, we present an algorithm that explores permutation symmetries to enhance the computational performance of agent-based epidemic models. Our findings bound the stochastic process to a single eigenvalue sector, scaling down the dimension of the transition matrix to o ( N 2 ) .

1. Introduction

In recent years, the emergence of Zika and Ebola viruses have attracted much attention from the scientific community after reports of their aggressive effects, respectively, microcephaly in newborns [1] and high mortality rate [2,3,4]. Despite their intrinsic differences concerning transmission mechanisms and pathogen-host interaction, both viruses spread in a population starting from a few infected individuals, based on their geographic location and network of contacts. Contact tracing and proper clinical care planning are critical parts of the WHO strategic plan [5] to mitigate ongoing transmissions and incidence cases, requiring the correct spatiotemporal dissemination of the disease. This assertion has renewed the interest in agent-based epidemic models (ABEM).
ABEM are mathematical models that describe the evolution of infectious diseases among a finite number N of agents over time (see Reference [6] for an extensive review). For that purpose, agents are labeled using integer numbers k = 0 , 1 , , N 1 , whereas contacts between agents are mapped via an adjacency matrix A. The matrix elements are A i j = 1 if the j-th agent connects to the i-th agent and otherwise vanishes. Accordingly, the set formed by agents and their interconnection is expressed as a graph, as depicted in Figure 1. In this way, heterogeneity arises naturally since the individuality of agents is taken into account, distinguishing ABEM from compartmental epidemic models [7,8,9].
The susceptible-infected-susceptible model (SIS) is the simplest ABEM. It considers only two health states for agents, infected | 1 or susceptible | 0 , and the occurrence of the following events during a time interval δ t [10,11]. An infected agent may undergo a recovery event and return to susceptible state with probability γ ; an infected agent may infect a susceptible agent with transmission probability β if and only if both agents are connected; or remains unchanged, as Figure 2 illustrates. Therefore, the SIS ABEM is inherently a Markov process in discrete time. The time interval δ t is often chosen so that sequential recovery-recovery or transmission-recovery events are unlikely within the available time window. This is the so-called Poissonian hypothesis [12,13,14,15].
Following Reference [16], any configuration of N agents is obtained by direct composition of individual agent states. Let μ be an integer that labels the μ -th configuration so that:
| μ | n N 1 n 1 n 0 ,
with n k = 0 , 1 and μ = n N 1 2 N 1 + + n 0 2 0 . A simple example for N = 4 is | 8 | 1000 , which represents the configuration where only the agent k = 3 is infected. From this scheme, it is already clear that there exist 2 N configurations in total since there are two available states for each agent. In what follows, we employ the notation: Latin indices enumerate agents 0 , 1 , , N 1 , while Greek indices enumerate configuration states 0 , 1 , , 2 N 1 .
Let | π ( t ) be the probability vector and π μ ( t ) = μ | π ( t ) the probability of observing the configuration | μ at time t [17,18]. The master equation for the general Markov process reads:
d d t π μ ( t ) = ν H μ ν π ν ( t ) ,
H ^ = ( 𝟙 T ^ ) / δ t is the step operator, whereas T ^ stands for the transition matrix [19]. The transition matrix T ^ encodes all transitions available between any two configuration vectors. Its matrix elements T μ ν are constructed from much simpler rules. These rules are model dependent and fully characterize the stochastic model, as we shall see in details later. If a representation of T ^ is known, the solution of the master equation provides the instantaneous values of the probabilities π μ ( t ) , i.e., the entire probability distribution function. Therefore, it becomes possible to calculate any relevant statistics of the problem at any instant of time, including those that may not be easily accessible or accurate by other numerical methods, such as the instantaneous Shannon entropy or the characteristic function.
Luckily, for time independent T ^ , the solution is well known:
| π ( t ) = e H ^ t | π ( 0 ) .
Despite the existence of this exact solution, the applicability of Equation (3) at this stage is limited to small population sizes N O ( 20 ) . The reason is the exponential growth of the underlying vector space with N. Here, we present algorithms to generate the operators T ^ and H ^ using finite symmetries or, equivalently, permutation symmetries via Cayley’s theorem [20]. These algorithms are usually applied to condensate matter physics [21,22], but they may also be employed in epidemiology studies, due to recent developments in the disease spreading dynamics [16]. For pedagogical reasons, we first show how to build the complete 2 N vector space and the corresponding transition matrix. Next, we explore cyclic permutations to construct the cyclic vector space, in which T ^ is broken down into N smaller blocks. Lastly, we consider the most symmetric cases, which reduce the problem to O(N). These instances correspond to the mean field or averaged networks. The iteration of sparse T ^ over | π ( t ) produces the desired disease evolution among agents. Relevant steps are shown in Algorithm A1.

2. Transition Matrix

The transition matrix T ^ for an SIS model considering N two-state agents is [16]:
T ^ = 𝟙 β k j A j k ( 1 n ^ j σ ^ j + ) + Γ δ k j ( 1 σ ^ j ) n ^ k ,
where Γ = γ / β , δ k l is the Kronecker delta, n ^ k | n k = n k | n k , is the local number operator ( n k = 0 , 1 ), and σ ^ k + | n k = δ n k , 0 | 1 k , σ ^ k | n k = δ n k , 1 | 0 k are the Pauli raising and lowering local operators, respectively. Local algebraic relationships are [ n ^ k , σ ^ k ± ] = ± δ k k and [ σ ^ k + , σ ^ k ] = δ k k ( 2 n ^ k 𝟙 ) . Inspection of Equation (4) readily shows T ^ is not Hermitian. This means left- and right-eigenvectors are not related by Hermitian conjugation. In this scenario, the correct time evolution of π μ ( t ) using Equation (3) requires the complete eigendecomposition, i.e., 2 N eigenvalues accompanied by 2 N right-eigenvectors and 2 N left-eigenvectors. This is often the main criticism against ABEM [12].
However, the scenario described above is not entirely correct. The rationale behind it assumes all eigenstates are equally relevant, which is incorrect whenever A exhibits invariance upon the action of a particular group (sets of transformations). Symmetries allow the matrix representation of T ^ to be in block diagonal form, as depicted in Figure 3. Eigenvectors related to each block share the same eigenvalue (degeneracy), as usual in quantum mechanics [23]. Therefore, the trick to simplify problems involving the transition matrix lies in the selection of the appropriate basis in respect to a given symmetry, creating matrix representations with smaller blocks. The computational performance using this methodology surpasses that of working with the full matrix because each block can be treated separately, reducing memory storage and access. In particular, if only a few blocks are relevant to the analysis, the remaining blocks can be neglected. This property often produces massive reductions in the typical dimensions of the problem, enhancing computation times.
In the SIS model, recovery events result from actions of one-body operators, σ ^ k n ^ k σ ^ k , on configuration vectors. Infection events are two-body operators: one infected agent may transmit the communicable disease to a susceptible agent after interaction between them, in the time interval δ t . Interestingly, the resulting interaction also depends on symmetries available to the adjacency matrix A. The symmetries available to A may be further explored to assemble the initial vector space, reducing T ^ to its block diagonal form.
Group operations over A are always finite transformations. One may explore the isomorphism between finite groups and the permutation group via Cayley theorem [20] to build permutation invariant subspaces. To that end, one must select the finite group and the corresponding symmetry. For graphs, the circular representation provides a convenient context to explore the existing symmetries, as Figure 4a depicts. From Figure 4b, connections among agents remain unchanged after cyclic permutation of agents, hence, A exhibits invariance under cyclic permutations. Cyclic permutations form a subset of permutation group and often represent geometric transformations, such as rotations and translations.
Vectors with N agents and invariant by cyclic permutations are built as follows. Consider the representative vector:
| μ p 1 N μ k = 0 N 1 e 2 i π p / N P ^ k | μ ,
where N μ is the normalization and P ^ is the single step cyclic permutation with p = 0 , 1 , , N 1 . The eigenvalues e 2 i π p / N are derived from P ^ N = 𝟙 . Eigenvalues can be associated with invariant subspaces, or sectors, spanned by their corresponding eigenvectors. For the sake of convenience, the integer p labels the eigenvalue sector. The representative vector | μ p describes the linear combination of N-agent configurations related to | μ by cyclic permutations. For instance, | 3 0 = | 011 + | 110 + | 101 / 3 corresponds to the representative vector for μ = 3 , with N = 3 in the p = 0 sector. By construction, the vectors | μ p satisfy the eigenvalue equation P ^ | μ p = e 2 i π p / N | μ p . They are also useful to identify symmetries, as they never change link distributions, only node labels. If T ^ is symmetric under cyclic permutations, T ^ and P ^ commute with each other [ T ^ , P ^ ] = 0 , meaning they share a common set of eigenvectors. Thus, T ^ can be written using | μ p and, more importantly, transitions between eigenvectors with distinct eigenvalues are prohibited. This feature leads to a block diagonal form to the matrix representation of T ^ .

3. Cyclic Vector Space

The complete picture of infection dynamics generated by the SIS model requires the utilization of 2 N configuration vectors. For completeness sake, we discuss the algorithm to obtain the vector space using both string and numeric representations. Matrix elements of T ^ in Equation (4) are calculated from an adjacency matrix and user input dictionary (lookup table) based on off-diagonal transition rules.
According to Equation (1), the configuration vector | μ is obtained from the binary representations of the labels μ , as exemplified in Figure 5. There are two common equivalent routes to implement the configuration in computer codes. The first method employs string objects whereas the second method makes use of discrete mathematics. The second approach tends to be more efficient for two-state problems as optimized and native libraries for binary operations are widely available. For pedagogical purposes and generalization for more than two-states, we avoid exclusive binary operations in favor of usual discrete integer division and modulo operations.
In Python programming language, classes provide a convenient mechanism to enable both formalisms for each instanced object (vector). Here, the custom class SymConf is used to encapsulate two instance variables: label stores the string representation of N agents, while label_int stores the corresponding integer number. In addition, the custom class also encapsulates three global class variables, base, dimension, and basemax, whose default values are 2, N, and 2 N . Base corresponds to the number of available states per agent. The class main method generates the eigenvectors | μ p with eigenvalue exp ( 2 i π p / N ) , relative to the cyclic permutation operator P ^ using Equation (5).
In what follows, we address four relevant points regarding the permutation eigenvectors | μ p , namely, the criteria used to label eigenvectors; normalization; number of infected agents; and the permutation operation.
Labels. Equation (5) claims permutation eigenvectors are a linear combination of all configuration vectors related by cyclic permutations. Here, we set the convention to adopt the smallest value μ present in the linear combination to label the representative vector. As examples, consider the following representatives of μ = 1 , N = 4 , and p = 0 , 1 , 2 , 3 :
| 1 0 = | 0001 = 1 + | 0010 = 2 + | 0100 = 4 + | 1000 = 8 4 .
| 1 1 = | 1 + i | 2 | 4 i | 8 4 .
| 1 2 = | 1 | 2 + | 4 | 8 4 .
| 1 3 = | 1 i | 2 | 4 + i | 8 4 .
The order convention is necessary to calculate the relative phase between configurations related by permutations in non-trivial linear combinations. For instance, consider the vector | ϕ = P ^ | μ p = ( 1 / N μ ) k ( e 2 i π p / N P ^ ) k P ^ | μ . Since | μ p and | ϕ are related by a single cyclic permutation, they differ by a phase factor: | ϕ = e 2 i π p / N | μ p . Note that the linear combination P ^ | μ p + | μ p = ( 1 + e 2 i π p / N ) | μ p vanishes for p = N / 2 . Despite the simplicity of the previous example, it already illustrates the relevance of phase difference among cyclic vectors.
Normalization. According to Equation (5), the squared norm of representative vectors is:
μ p | μ p = 1 N μ k = 0 N 1 e 2 i π p k / N μ | P ^ k | μ p = N N μ μ | μ p .
The evaluation of the scalar product μ | μ p follows directly from Equation (5). One notices the configuration | μ may appear only once for several linear combinations | μ p , so that μ | μ p = 1 / N μ . For instance, this is the case of 1 | 1 p . However, a given configuration | μ may contribute more than once if there exists an integer 1 r N such that P ^ r | μ = | μ , i.e., after r cyclic permutations the configuration repeats itself. Since P ^ N = 𝟙 , it follows N / r is the number of times the configuration | μ appears in | μ p . Each contribution adds e 2 i π p m / N / N μ ( m = 0 , 1 , , N / r 1 ) in Equation (7). This result is conveniently summarized using the repetition number:
R μ , p = m = 0 N / r 1 ( e 2 i π p r / N ) m ,
where the primed sum indicates N / r in the upper limit is an integer number. Therefore, μ | μ p = R μ , p / N μ and one obtains N μ = N R μ , p from Equation (7).
We now show two examples to consolidate the discussion around R μ , p and N μ , for N = 4 and two infected agents. The configuration state | 3 = | 0011 requires N cyclic permutations to repeat itself, so that R 3 , p = 1 for any p and the corresponding normalization for | 3 p is simply N 3 = N , as expected. The first non-trivial case arises for | 5 p because the base configuration | 5 = | 0101 satisfies P ^ 2 | 5 = | 5 . According to Equation (8), R 5 , p = 1 + e 4 i π p / N and assume only values: R 5 , 0 = R 5 , 2 = 2 and R 5 , 1 = R 5 , 3 = 0 . Thus, depending on p, certain linear combinations are forbidden because they produce vectors with null norm, ensuring the correct dimension of vector space. The remaining non-null states for N = 4 are shown in Table 1 for further reference.
Number of Infected Agents. The number of infected agents using representative vectors is calculated as:
n ^ μ = k μ p | n ^ k | μ p .
In the string representation, native string methods, such as count(’x’), count the number agents with health state x = 0 , 1 , 2 . If native methods are unavailable, one may always perform a comparative loop over the string. Algorithm A2 explains the standard procedure to count bits in the integer representation. It is worth mentioning that the operator k n ^ k commutes with P ^ .
Permutation. Cyclic permutations are the core transformations here. In the string representation, cyclic permutations consist of one copy and one concatenation call, as exemplified in Figure 6a.
Meanwhile, in the integer representation, cyclic permutations are obtained using modulo and integer division: μ = ( 2 μ % 2 N ) + ( 2 μ μ / / 2 N ) , the new configuration μ is obtained from configuration μ taking the modulo of 2 μ by 2 N in addition to the result of the integer division 2 μ by 2 N . Multiplication by the number of available states translates bit fields to the left. The modulo operation crops contributions larger than those available to N-bit fields. Integer division 2 μ / 2 N selects the bit associated to largest binary position and shifts it to the lowest binary position (see Figure 6b).
Next, we focus our attention on the sector with p = 0 , which plays an important role in epidemic models (see Section 5 for further discussion). This invariant subspace holds only symmetric linear combinations of configuration vectors. Incidentally, that also means that configurations with short cycles—or large repetition numbers—can only have representative vectors with non-vanishing norms iff p = 0 . The most important cases are: a) the all-infected configuration | 111 1 , and b) disease-free configuration | 000 0 . This occurs because these two configurations are invariant by every cyclic permutation available, including a single cyclic permutation (short cycle). As a direct consequence, the probability of disease eradication, π 0 ( t ) , and the probability that the disease has infected each element of the population, π 2 N 1 ( t ) , can only be evaluated at p = 0 . Moreover, this sector holds the largest dimension being the worst scenario for numerical computations.
To construct the vectors for this particular sector, consider each integer μ in [ 0 , 2 N ) as a potential candidate to assemble the symmetric vector spaces for fixed p. By performing N 1 cyclic permutations over | μ , one determines the representative state | μ p in Equation (5), as well as the number of repetitions R μ , p , hence the norm N μ . Algorithm A3 calculates the representative vector | μ p associated with configuration | μ . Due to the order convention adopted here, the string representation must be converted to the integer representation at the if-clause test. The representative configurations are then stored either in a list or dictionary. As an additional benefit, since vector spaces are independent of the problem at hand, the set of representatives may also be stored in a database for further use in different problems, as long as they are subjected to the same symmetry.

4. Matrix Elements

The next step is the evaluation of the transition matrix in the sector p = 0 . Infection and recovery dynamics are the main actors in this context, as they inform the way representative vectors | μ 0 interact with each other, T ^ | μ 0 = { ν } T ν μ | ν 0 . The prime indicates the sum runs over all eigenvectors in the p = 0 sector, while cyclic permutation invariance implies:
T ^ | μ 0 = 1 N μ k = 0 N 1 P ^ k T ^ | μ .
Equation (10) tells us the action of T ^ on the linear combination | μ 0 is calculated from the simpler operation T ^ | μ . The resulting vectors are then permuted, producing the corresponding matrix elements. The practical advantages of this method come from the order of the operations: By doing the transitions first and then finding the respective representatives, one divides the workload by a factor N. If the normal ordering were used instead, one would evaluate the transitions for each element of the linear combination and then find the corresponding representative, hence N times the number of operations required with transition first. For instance, consider T ^ | 7 0 for N = 3 :
T ^ | 7 0 = 1 N 7 k = 0 2 P ^ k T ^ | 7 = γ N 7 k = 0 2 P ^ k | 3 + | 5 + | 6 = γ N 7 k = 0 2 P ^ k | 3 + P ^ | 3 + P ^ 2 | 3 = 3 γ N 3 N 7 | 3 0 = 3 γ | 3 0 .
The relevant data structure for T ^ are the off-diagonal transitions, which are further subdivided into two categories: one or two-body contributions. This is illustrated in Figure 7 for the SIS model. The finite set of transition rules are passed as a lookup table or, if available, a dictionary. Data is organized as follows: Each entry represents a one or two-body configuration whose value corresponds to one tuple. Each tuple holds two immutable values: the configuration to which the entry transitions to and the assigned coupling strength.
With off-diagonal transition rules in hand, one-body actions are evaluated by scanning each agent and applying the corresponding transition rule in Algorithm A4. The resulting one-body transitions are stored in the outcome variable. Figure 8 depicts an example for N = 3 and one infected agent at k = 1 . Two-body operators differ from their one-body counterparts due to the fact they require two agent loops and information from the adjacency matrix A, as seen in Algorithm A5. Figure 9 exhibits an example for N = 3 . After both one- and two-body transitions are computed, the diagonal element is obtained via probability conservation: T μ μ = 1 μ ν T μ ν . The process is iterated until all eigenvectors and their respective transitions are accounted.

5. Casimir Vector Space

The recent advances in the disease spreading dynamics in realistic populations are intimately linked to network theory [12,24]. Networks are traditionally associated with graphs holding a large number of nodes and links [25]. The graph must be large enough to produce a degree distribution, which describes the probability distribution of links per node. The degree distribution, or alternatively its statistical moments, characterizes the network type and its properties. However, some networks, including random networks, require an ensemble of graphs to provide an accurate picture. Thus, a graph becomes a sample or realization of the network. Statistical properties of networks are derived for each graph, followed by ensemble average and deviation. In practice, when graphs in the ensemble are large enough ( N 1 ) and representatives, statistics may also be evaluated for each graph and extrapolated as those of the network.
Two cases hold particular importance for applications of network theory in epidemic models: the mean field and random networks. In the first case, all agents are connected, meaning one infected agent may potentially infect anyone. Hence, the disease tends to spread faster than in constrained networks. Furthermore, all graphs in the mean field ensemble share the same adjacency A MF . In the other case, the connection between agent i and j occurs with fixed probability ρ . However, graphs in the random network ensemble differ from each other. Here, we only consider ensemble averages as a way to extract statistical properties, which is equivalent to set A i j random = ρ ( 1 δ i j ) = ρ A i j MF . Thus, all relevant symmetries lie only in the mean field adjacency matrix A MF . Naturally, A MF remains invariant under cyclic permutations, enabling the application of the algorithm explained in the previous sections. However, A MF is also symmetric under the action of any permutation, which drastically reduces the diagonal blocks of T ^ from O ( 2 N / N ) to O ( N ) .
Here, our primary concern is to employ the cyclic permutation eigenvectors | μ p to generate the eigenvectors of the complete permutation group, | s , m ; p . The eigenvectors | s , m ; p reduce T ^ in mean field or random networks to block diagonal form with dimension O ( N ) . The indices s and m may assume the following values s = N / 2 , N / 2 1 , with s > 0 and m = s , s + 1 , , s , respectively. The relationship between s and m are the same as those observed for quantum spin operators. The explanation goes as follows. As shown in Reference [16], Equation (4), in either mean field or random networks, contains operators S ^ ± k σ ^ k ± and n ^ k n ^ k . From the important relation n ^ = S ^ z + N / 2 , one retains spin operators and the upper bound s = N / 2 , as expected from the combination of N 1 / 2 -spin particles.
In what follows, we only consider the p = 0 sector. First, let S ^ 2 = ( S ^ z ) 2 + ( S ^ + S ^ + S ^ S ^ + ) / 2 be the Casimir operator, so that [ S ^ 2 , S ^ α ] = [ P ^ , S ^ α ] = 0 for α = z , ± and S ^ 2 | s , m ; 0 = s ( s + 1 ) | s , m ; 0 . Accordingly, [ S ^ 2 , T ^ ] = 0 and s and p are good quantum numbers. In general, the eigenvector | s , m ; p may always be expressed as:
| s , m ; p = μ c μ s m p | μ .
Clearly, c μ s m p = 0 if the number of infected agents in the configuration μ , n μ = k μ 0 | n ^ k | μ 0 , fails to satisfy the constraint n μ = m + N / 2 . The idea is to write Equation (12) as a linear combination of representative vectors | μ p with m + N / 2 infected agents, ensuring all available permutations are accounted for. The implications for numerical codes is quite obvious: it allows the reuse of numerical codes to obtain eigenvectors | μ p .
The most relevant sector for epidemic models contains the configuration with all (none) infected agents. According to previous sections, this implies p = 0 while m = ± N / 2 requires s = N / 2 . In the ( s = N / 2 , p = 0 ) sector, the desired linear combination is:
| s = N / 2 , m , p = 0 = 1 N { μ } R μ , 0 1 / 2 | μ 0 ,
with normalization | N | 2 = μ | R μ , 0 | 1 . The prime indicates the sum is subjected to the constraint n μ = m + N / 2 for m = N / 2 , , N / 2 . The result in Equation (13) agrees with the standard theory of spin addition. Generalization for p and s is straightforward and omitted. It is worth mentioning the formalism adopted here already accounted for forbidden states in p 0 sectors.
Examples are available to appreciate Equation (13) for increasing values of N. We begin considering N = 4 . This translates into s = 2 and m = 2 , , 2 . The relevant representative eigenvectors | μ 0 are expressed in Table 2. The only non-trivial correspondence occurs for m = 0 ,
| 2 , 0 ; 0 = 2 | 3 0 + | 5 0 3 = | 0011 + | 1001 + | 1100 + | 0110 + | 0101 + | 1010 6 .
Next, consider N = 6 which fixes s = 3 and m = 3 , , 3 . The eigenvector | 3 , 0 ; 0 holds contributions from four cyclic eigenvectors or, equivalently, 20 configurations:
| 3 , 0 ; 0 = 3 | 7 0 + 3 | 11 0 + 3 | 19 0 + | 21 0 10 = | 000111 + | 100011 + | 110001 + | 111000 + | 011100 + | 001110 20 . + | 001011 + | 100101 + | 110010 + | 011001 + | 101100 + | 010110 20 . + | 010011 + | 101001 + | 110100 + | 011010 + | 001101 + | 100110 20 . + | 010101 + | 101010 20 .

6. Discussion

The algorithms presented in this study assumed only two health states for each agent. Generalization for q number of states is readily available by changing to the integer representation μ = a N 1 q N 1 + + a 0 q 0 , with a k = 0 , 1 , , q 1 , concomitant with additional off-diagonal transitions. For instance, the susceptible-infected-recovered-susceptible (SIRS) ABEM generalizes the SIS model as it introduces the removed (R) health state for agents. This additional state often means the agent has recovered from the illness and developed immunity, has been vaccinated, or has passed away. In any case, once removed, the agent takes no part in the dynamics of disease transmission, hindering infection events [12]. As such, recovery with immunization or death events produce the transition I R , with probability γ while vaccination S R occurs with probability ξ . If death events are excluded, temporary immunization is achieved via R S with probability η . Therefore, the vectors | n N 1 n 0 with n k = 0 , 1 or 2 describe configurations of the SIRS model. However, the algorithm to explore cyclic permutations remains unchanged as it explores symmetries of the underlying network. As a result, eigenvalues and number of sectors are the same, but degeneracy and eigenvectors change to accommodate the increased number of health states.
Parallelism merits further discussion. The computation of representative vector space may be performed in parallel by dividing the set of q N integers among Q processes. Each process runs one local set of representative vectors which, posteriorly, is compared against the sets from the remaining processes. The union of all Q sets produces the desired representative vector space. Parallelism is also obtained at the evaluation of T ^ : Columns ( | μ p ) are distributed among Q processes and the corresponding matrix elements are calculated for each process. The union of all matrix elements from each process produces the complete description of T ^ in the representative vector space. Lastly, parallelism is also available for sparse products T ^ | π ( t ) necessary to execute the time evolution.
We also emphasize the algorithms explained here are most useful to evaluate quantities within a single permutation sector of T ^ . This is likely the case whenever the probability for disease eradication or complete population contamination are concerned. Another relevant situation occurs when the initial condition itself falls within a single sector. For instance, the initial probability vector | π ( 0 ) = ( 1 / 3 ) ( | 001 + | 010 + | 100 ) states only one among N = 3 agents is infected. However, the identity of the infected agent is unknown a priori, so that configurations with one infected agent occurs with equal probability 1 / N . Now, the decomposition of | π ( 0 ) in the | μ p basis results in | π ( 0 ) = ( 1 / 3 ) | 1 0 . Thus, the time evolution of | π ( 0 ) by the action of T ^ is again restricted to a single permutation sector.
Without loss of generality, the initial condition can always be written as | π ( 0 ) = { μ } k = 0 N 1 π μ k P ^ k | μ , where the primed sum runs only over the indices μ , which also labels the representative vectors. The cyclic permutation P ^ k generates the remaining configurations related to | μ whereas the coefficients π μ k are the corresponding initial probabilities. Using the eigenvalue equation for P ^ , one calculates the scalar product:
ν p | π ( 0 ) = { μ } k = 0 N 1 π μ k ν p | P ^ k | μ = { μ } k = 0 N 1 π μ k e 2 i π p k / N ν p | μ = N π ˜ ν p R ν p N μ ,
where π ˜ μ p = N 1 / 2 k π μ k e 2 i π p k / N is the discrete Fourier transform of π μ k . Using the previous example, with one infected among N = 3 agents, | π ( 0 ) = k = 0 2 π 0 k P ^ k | 0 + k = 0 2 π 1 k P ^ k | 1 + k = 0 2 π 3 k P ^ k | 3 + k = 0 2 π 7 k P ^ k | 7 , with π μ k = δ μ 1 / 3 so that R 1 p = 1 , π ˜ 1 p = δ p 0 / 3 , and the previous result is recovered.
Now we address the case where the evaluation of the desired statistics requires several permutation sectors. In the worst case scenario, every permutation sector contributes equally to the computation. Therefore one must diagonalize each block in order to obtain the relevant eigenvalues and eigenvectors. As a crude approximation, one may consider that the N blocks have the same dimension d / N for a d-dimensional vector space. The complexity of diagonalization methods in the LAPACK library range from O ( ( d / N ) 2 ) up to O ( ( d / N ) 3 ) for each block [26], whereas the complexity range for full diagonalization is [ O ( d 2 ) , O ( d 3 ) ] . Thus diagonalization of N blocks reduces the total complexity from N 1 up to N 2 . More importantly, blocks can be diagonalized in different processors because they are disjointed.
The algorithms presented here are most suitable for networks with invariance by cyclic permutations. However, they are also convenient whenever the algebraic commutator can be approximated by [ T ^ , P ^ ] = O ^ , where the operator O ^ is symmetric under cyclic permutations, [ O ^ , P ^ ] = 0 . In particular, O ^ = q 0 𝟙 + q 1 P ^ y + β = z , ± q β S ^ β , with constant q j ( j = 0 , 1 , z , ± ) and y R , creates interesting disease-spreading dynamics, such as a localized disease source for q β = q δ β , 0 .
Finally, we compare performances of the SIS ABEM using the transition matrix method with and without our algorithm. Numerical experiments were performed using Python on an Intel-PC i7-7700 3.8 GHz. The decision to pick up Python instead of a more performance-oriented language was based on the ability to quickly disseminate the method. For data intensive research, we strongly recommend performance-oriented languages, such as C or high-performance Fortran. The results are summarized in Table 3. As expected, cyclic permutations greatly improve computation times, most noticeable for large populations sizes. For N = 20 , the improved numerical code runs two orders of magnitude faster, while only consuming a fraction—about 6%—of the original memory. We reiterate methods involving the transition matrix to compute the probabilities of each configuration available to the system π μ ( t ) , with μ = 0 , 1 , , 2 N 1 , up to numerical errors (floating point and rounding errors), often around O ( 10 12 ) . Because they include all configurations, they can provide accurate statistics and data predictions along the evolution of the epidemics. However, direct Monte Carlo methods (DMCM) are far more efficient if one is solely interested in a few statistical moments of relevant variables, not in the entire joint pdf [27,28]. There are mainly two flavors of DMCM, depending on whether the time interval is fixed or distributed according to a given PDF [29]. The latter case is more commonly known as the Gillespie algorithm [30,31,32], and it has been successful to simulate epidemics. In DMCMs, execution times are directly related to the number of independent runs m, with error scaling as m 1 / 2 . Usually, m O ( 10 6 ) produces errors around O ( 10 3 ) . Smaller errors can be obtained by increasing m. Regardless, DMCM are always more efficient if the joint PDF is not required, as they probe the configurations that are more likely to occur. Indeed, computation times of DMCM with N = 20 , τ = 0.19 s, are far lower than the 41 s obtained previously. Furthermore, DMCM hold small memory footprint and can simulate ABEM with N O ( 10 4 ) .

7. Conclusions

ABEM describe the stochastic dynamics of disease-spreading processes in networks. Direct investigation of epidemic Markov processes is often hindered due to the exponential increase of the dimension of the vector space with the number of agents. By exploiting cyclic permutation symmetries, relevant elements of the dynamics are confined to a single permutation sector, significantly reducing computational efforts. In practical terms, by selecting a single cyclic permutation eigensector, one selects only relevant information from the stochastic process. The p = 0 sector holds particular importance, as it contains configurations where none or all agents are infected, with dimension scaling as O ( N ) for highly connected networks. Our findings show that using symmetric basis significantly improves computation times and reduces memory usage, providing a detailed picture of the joint probability distribution function. This development allows for a more detailed investigation of fluctuations and correlation functions in epidemics. For global statistics that describe the evolution of the epidemic, DMCM provide much faster computation times subjected to a given statistical error. In closing, the inclusion of finite symmetries brings down ABEM to the same footing of compartmental models regarding the number of agents but does not neglect the role played by fluctuations.

Author Contributions

A.S.M. and G.M.N. designed the research; A.C.P.M. and G.M.N. performed the research and wrote computational codes; A.C.P.M. verified numerical results; G.M.N. wrote the paper; G.C.C. and A.S.M. edited the paper. All authors reviewed the manuscript.

Funding

G.M.N. thanks CAPES/PNPD 88887.136416/2017-00, A.S.M. holds grants from CNPq 307948/2014-5, G.C.C. acknowledges funding from CAPES 067978/2014-01 and A.C.P.M. acknowledges grant CNPq 800585/2016-0.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

   The following abbreviations are used in this manuscript:
ABEMAgent-based epidemic model
NPDFNetwork probability distribution function
SISSusceptible-infected-susceptible
SIRSSusceptible-infected-recovered-susceptible
WHOWorld health organization

Appendix A. Algorithms

Appendix A.1. Time Evolution

Algorithm A1. Time Evolution
  • Require:  p N , matrix A and off-diagonal transitions
  • S = { }                                ▹ Basis
  • for μ = 0 to μ < 2 N do
  •       ψ , N ψ calculates eigenvector and norm from μ
  •      Add ψ to S
  • end for                         ▹p invariant eigensector
  • for ψ in S do
  •      for k = 0 to k < N do
  •           ψ off diagonal transitions from k - th component of ψ
  •          Evaluate T ψ ψ                        ▹ Sparse storage
  •      end for
  • end for
  • π initial condition
  • for t = 0 to t < t max do
  •       π T ^ × π
  • end for                          ▹ End time evolution

Appendix A.2. Number of Infected Agents

Algorithm A2. Number of Infected Agents
1:
functioncount( μ ,count)
2:
    c μ
3:
    count ← 0
4:
    for k = 0 to k < N do
5:
        count ← count + c % 2
6:
        c ← c // 2
7:
    end for
8:
end function

Appendix A.3. Representative Vectors

Algorithm A3. Representative Vectors
1:
functionrepresentative( μ , ψ , r )
2:
     ψ μ
3:
     r 1
4:
    for k = 0 to k < N 1 do
5:
         μ P ^ μ
6:
        if μ < ψ then
7:
            ψ μ
8:
        else if μ = ψ then
9:
            r r + 1
10:
        end if
11:
    end for
12:
end function

Appendix A.4. One-Body Off-Diagonal Transitions

Algorithm A4. One-Body Off-Diagonal Transitions
1:
functiononebody(label,rules,output)
2:
    for k = 0 to k < N do                   ▹ Loop over agents
3:
        if label[k] in rules then
4:
           new ← label with label[k] ← rule[label[k]][0]
5:
           output[new] ← coupling
6:
        end if
7:
    end for
8:
end function

Appendix A.5. Two-Body Off-Diagonal Transitions

Algorithm A5. Two-Body Off-Diagonal Transitions
1:
functiontwobody(L,A,rules,outcome)
2:
    for j = 0 to j < N do
3:
        for i = 0 to i < N do
4:
            q ( L j L i )
5:
           if q in rules then
6:
                x L
7:
                x j rules [ q ] 00
8:
                x i rules [ q ] 01
9:
                output [ x ] output [ x ] + A j i
10:
           end if
11:
        end for
12:
    end for
13:
end function

References

  1. Mlakar, J.; Korva, M.; Tul, N.; Popović, M.; Poljšak-Prijatelj, M.; Mraz, J.; Kolenc, M.; Resman Rus, K.; Vesnaver Vipotnik, T.; Fabjan Vodušek, V.; et al. Zika Virus Associated with Microcephaly. N. Engl. J. Med. 2016, 374, 951–958. [Google Scholar] [CrossRef] [PubMed]
  2. Maganga, G.D.; Kapetshi, J.; Berthet, N.; Kebela Ilunga, B.; Kabange, F.; Mbala Kingebeni, P.; Mondonge, V.; Muyembe, J.J.T.; Bertherat, E.; Briand, S.; et al. Ebola Virus Disease in the Democratic Republic of Congo. N. Engl. J. Med. 2014, 371, 2083–2091. [Google Scholar] [CrossRef] [PubMed]
  3. Team, W.E.R. West African Ebola Epidemic after One Year—Slowing but Not Yet under Control. N. Engl. J. Med. 2015, 372, 584–587. [Google Scholar] [CrossRef]
  4. Van Kerkhove, M.D.; Bento, A.I.; Mills, H.L.; Ferguson, N.M.; Donnelly, C.A. A review of epidemiological parameters from Ebola outbreaks to inform early public health decision-making. Sci. Data 2015, 2, 150019. [Google Scholar] [CrossRef]
  5. Team, W.E.R. After Ebola in West Africa — Unpredictable Risks, Preventable Epidemics. N. Engl. J. Med. 2016, 375, 587–596. [Google Scholar] [CrossRef] [PubMed]
  6. Willem, L.; Verelst, F.; Bilcke, J.; Hens, N.; Beutels, P. Lessons from a decade of individual-based models for infectious disease transmission: A systematic review (2006–2015). BMC Infect. Dis. 2017, 17, 612. [Google Scholar] [CrossRef]
  7. Keeling, M.; Eames, K. Networks and epidemic models. J. R. Soc. Interface 2005, 2, 295–307. [Google Scholar] [CrossRef] [PubMed]
  8. Djurdjevac Conrad, N.; Helfmann, L.; Zonker, J.; Winkelmann, S.; Schütte, C. Human mobility and innovation spreading in ancient times: a stochastic agent-based simulation approach. EPJ Data Sci. 2018, 7, 24. [Google Scholar] [CrossRef]
  9. Holme, P. Three faces of node importance in network epidemiology: Exact results for small graphs. Phys. Rev. E 2017, 96, 062305. [Google Scholar] [CrossRef] [PubMed]
  10. de Espíndola, A.L.; Bauch, C.T.; Cabella, B.C.T.; Martinez, A.S. An agent-based computational model of the spread of tuberculosis. J. Stat. Mech. Theor. Exp. 2011, 2011, P05003. [Google Scholar] [CrossRef]
  11. Gómez, S.; Arenas, A.; Borge-Holthoefer, J.; Meloni, S.; Moreno, Y. Discrete-time Markov chain approach to contact-based disease spreading in complex networks. Eur. Phys. Lett. 2010, 89, 38009. [Google Scholar] [CrossRef]
  12. Pastor-Satorras, R.; Castellano, C.; Van Mieghem, P.; Vespignani, A. Epidemic processes in complex networks. Rev. Mod. Phys. 2015, 87, 925–979. [Google Scholar] [CrossRef]
  13. Van Mieghem, P. The N-intertwined SIS epidemic network model. Computing 2011, 93, 147–169. [Google Scholar] [CrossRef]
  14. Van Mieghem, P.; Cator, E. Epidemics in networks with nodal self-infection and the epidemic threshold. Phys. Rev. E 2012, 86, 016116. [Google Scholar] [CrossRef] [PubMed]
  15. Wang, H.; Li, Q.; D’Agostino, G.; Havlin, S.; Stanley, H.E.; Van Mieghem, P. Effect of the interconnected network structure on the epidemic threshold. Phys. Rev. E 2013, 88, 022801. [Google Scholar] [CrossRef] [PubMed]
  16. Nakamura, G.M.; Monteiro, A.C.P.; Cardoso, G.C.; Martinez, A.S. Efficient method for comprehensive computation of agent-level epidemic dissemination in networks. Sci. Rep. 2017, 7, 40885. [Google Scholar] [CrossRef]
  17. Alcaraz, F.C.; Rittenberg, V. Directed Abelian algebras and their application to stochastic models. Phys. Rev. E 2008, 78, 041126. [Google Scholar] [CrossRef]
  18. Alcaraz, F.; Droz, M.; Henkel, M.; Rittenberg, V. Reaction-Diffusion Processes, Critical Dynamics, and Quantum Chains. Ann. Phys. 1994, 230, 250–302. [Google Scholar] [CrossRef]
  19. Reichl, L. A Modern Course in Statistical Physics; Wiley: New York, NY, USA, 1998. [Google Scholar]
  20. Hamermesh, M. Group Theory and Its Application to Physical Problems; Courier Corporation: North Chelmsford, MA, USA, 1962. [Google Scholar]
  21. Alcaraz, F.C.; Nakamura, G.M. Phase diagram and spectral properties of a new exactly integrable spin-1 quantum chain. J. Phys. A Math. Gen. 2010, 43, 155002. [Google Scholar] [CrossRef]
  22. Nakamura, G.M.; Mulato, M.; Martinez, A.S. Spin gap in coupled magnetic layers. Phys. A Stat. Mech. Appl. 2016, 451, 313–319. [Google Scholar] [CrossRef]
  23. Sakurai, J.J.; Tuan, S.F. Modern Quantum Mechanics; Addison-Wesley: Boston, MA, USA, 1994. [Google Scholar]
  24. Bianconi, G. Interdisciplinary and physics challenges of network theory. Eur. Phys. Lett. 2015, 111, 56001. [Google Scholar] [CrossRef]
  25. Newman, M.E.J. The Structure and Function of Complex Networks. SIAM Rev. 2003, 45, 167–256. [Google Scholar] [CrossRef]
  26. Demmel, J.W.; Marques, O.A.; Parlett, B.N.; Vömel, C. Performance and accuracy of LAPACK’s symmetric tridiagonal eigensolvers. SIAM J. Sci. Comput. 2008, 30, 1508–1526. [Google Scholar] [CrossRef]
  27. Nakamura, G.; Gomes, N.; Cardoso, G.; Martinez, A. Robust Parameter Determination in Epidemic Models with Analytical Descriptions of Uncertainties. arXiv 2018, arXiv:1807.05301. [Google Scholar]
  28. Nakamura, G.M.; Gomes, N.D.; Cardoso, G.C.; Martinez, A.S. Numerical data and codes for: Improved SIS epidemic equations based on uncertainties and autocorrelation functions. OSF Digital Repository 2019. [Google Scholar] [CrossRef]
  29. Thijssen, J. Computational Physics; Cambridge University Press: Cambridge, UK, 2007. [Google Scholar]
  30. Gillespie, D.T. A general method for numerically simulating the stochastic time evolution of coupled chemical reactions. J. Comput. Phys. 1976, 22, 403–434. [Google Scholar] [CrossRef]
  31. Fennell, P.G.; Melnik, S.; Gleeson, J.P. Limitations of discrete-time approaches to continuous-time contagion dynamics. Phys. Rev. E 2016, 94, 052125. [Google Scholar] [CrossRef] [PubMed]
  32. Vestergaard, C.L.; Génois, M. Temporal Gillespie Algorithm: Fast Simulation of Contagion Processes on Time-Varying Networks. PLOS Comput. Biol. 2015, 11, 1–28. [Google Scholar] [CrossRef] [PubMed]
Figure 1. Agent network. Agents (vertices) and their interconnections (edges) are expressed as a graph. The graph representation introduces heterogeneity among the agents, which must be accounted for during disease spreading.
Figure 1. Agent network. Agents (vertices) and their interconnections (edges) are expressed as a graph. The graph representation introduces heterogeneity among the agents, which must be accounted for during disease spreading.
Mca 24 00044 g001
Figure 2. Susceptible-infected-susceptible model (SIS) transition events. Infected agents (red dotted) undergo recovery events with probability γ and change to susceptible (empty) health status. Infected agents may also infect additional susceptible agents with probability β , as long they are connected.
Figure 2. Susceptible-infected-susceptible model (SIS) transition events. Infected agents (red dotted) undergo recovery events with probability γ and change to susceptible (empty) health status. Infected agents may also infect additional susceptible agents with probability β , as long they are connected.
Mca 24 00044 g002
Figure 3. Reduction of the transition matrix to block diagonal form. (a) In the configurational vector space, { | μ } , the matrix representation of T ^ lacks an explicit mathematical pattern. (b) The emergence of organizational patterns are observed whenever symmetries of T ^ are correctly addressed by employing the eigenvectors { ψ } and eigenvalues { λ } corresponding to the symmetry group considered. Under the invariant basis { ψ } , the matrix representation of T ^ is brought to a block diagonal form, with blocks labeled by eigenvalues { λ } .
Figure 3. Reduction of the transition matrix to block diagonal form. (a) In the configurational vector space, { | μ } , the matrix representation of T ^ lacks an explicit mathematical pattern. (b) The emergence of organizational patterns are observed whenever symmetries of T ^ are correctly addressed by employing the eigenvectors { ψ } and eigenvalues { λ } corresponding to the symmetry group considered. Under the invariant basis { ψ } , the matrix representation of T ^ is brought to a block diagonal form, with blocks labeled by eigenvalues { λ } .
Mca 24 00044 g003

 
a) b)
Figure 4. Regular graph in circular representation for N = 8 and single infected agent (red dotted). (a) The infected agent lies at node k = 0 . (b) Graph obtained from cyclic permutation of nodes k k + 1 and N 1 0 . Connections remain unchanged.
Figure 4. Regular graph in circular representation for N = 8 and single infected agent (red dotted). (a) The infected agent lies at node k = 0 . (b) Graph obtained from cyclic permutation of nodes k k + 1 and N 1 0 . Connections remain unchanged.
Mca 24 00044 g004
Figure 5. Agent configurations using binary representation for μ = 3 and 5 with N = 4 . For | μ = 3 = | 0011 , whereas | μ = 5 = | 0101 . In both configurations, two agents are infected (red dotted).
Figure 5. Agent configurations using binary representation for μ = 3 and 5 with N = 4 . For | μ = 3 = | 0011 , whereas | μ = 5 = | 0101 . In both configurations, two agents are infected (red dotted).
Mca 24 00044 g005
Figure 6. Cyclic permutation for configuration μ = 9 with N = 4 . (a) String representation executes one copy and one concatenation operation; (b) integer representation requires both integer division and modulo operation by 2 N .
Figure 6. Cyclic permutation for configuration μ = 9 with N = 4 . (a) String representation executes one copy and one concatenation operation; (b) integer representation requires both integer division and modulo operation by 2 N .
Mca 24 00044 g006
Figure 7. Off-diagonal transitions in the SIS model. Data structure follows the income-outcome convention. Data entries represent the current one-body (two-body) health state, whereas the corresponding data values, organized as tuples, express the outcome one-body (two-body) configuration and coupling strength.
Figure 7. Off-diagonal transitions in the SIS model. Data structure follows the income-outcome convention. Data entries represent the current one-body (two-body) health state, whereas the corresponding data values, organized as tuples, express the outcome one-body (two-body) configuration and coupling strength.
Mca 24 00044 g007
Figure 8. Recovery operator action on configuration vector | 2 , in the SIS model with N = 3 . Non-vanishing transition is observed only for agent k = 1 , which is infected, producing | 0 .
Figure 8. Recovery operator action on configuration vector | 2 , in the SIS model with N = 3 . Non-vanishing transition is observed only for agent k = 1 , which is infected, producing | 0 .
Mca 24 00044 g008
Figure 9. Infection operator action on configuration vector | 2 , in the SIS model with N = 3 and mean field network. Disease transmission events are evaluated for each pair of agents. Whenever the pair health state differs, and the pair also shares one connection expressed by the adjacency matrix, the configuration changes to contemplate the recently infected individual. For | 2 , k = 1 agent contaminates k = 0 ( k = 2 ) agent, producing the configuration | 3 ( | 6 ).
Figure 9. Infection operator action on configuration vector | 2 , in the SIS model with N = 3 and mean field network. Disease transmission events are evaluated for each pair of agents. Whenever the pair health state differs, and the pair also shares one connection expressed by the adjacency matrix, the configuration changes to contemplate the recently infected individual. For | 2 , k = 1 agent contaminates k = 0 ( k = 2 ) agent, producing the configuration | 3 ( | 6 ).
Mca 24 00044 g009
Table 1. Cyclic permutation eigenvectors with N = 4 agents. The first column shows the number of infected agents in the eigenvector. Each remaining column corresponds to a permutation sector p, and each row the corresponding state | μ p . The cross symbol indicates null-normed vector and the dimension of the vector space is d = 2 4 .
Table 1. Cyclic permutation eigenvectors with N = 4 agents. The first column shows the number of infected agents in the eigenvector. Each remaining column corresponds to a permutation sector p, and each row the corresponding state | μ p . The cross symbol indicates null-normed vector and the dimension of the vector space is d = 2 4 .
n p = 0 p = 1 p = 2 p = 3
0 | 0 0 ×××
1 | 1 0 | 1 1 | 1 2 | 1 3
2 | 3 0 | 3 1 | 3 2 | 3 3
2 | 5 0 × | 5 2 ×
3 | 7 0 | 7 1 | 7 2 | 7 3
4 | 15 0 ×××
Table 2. Eigenvectors | μ 0 with N = 4 .
Table 2. Eigenvectors | μ 0 with N = 4 .
μ 0 R μ , 0 m | μ
04 2 | 0000
11 1 | 0001
310 | 0011
520 | 0101
711 | 0111
1542 | 1111
Table 3. Computation times and memory usage of time evolution of the SIS agent-based epidemic models (ABEM) for various population sizes, with (block) and without (full matrix) cyclic permutations.
Table 3. Computation times and memory usage of time evolution of the SIS agent-based epidemic models (ABEM) for various population sizes, with (block) and without (full matrix) cyclic permutations.
NTime (s)Memory (MB)
BlockFull MatrixBlockFull Matrix
10 0.02 ( 9 ) 0.45 ( 7 ) 23.3 ( 0 ) 24.7 ( 1 )
12 0.10 ( 0 ) 2.91 ( 4 ) 23.9 ( 8 ) 32.3 ( 9 )
14 0.41 ( 1 ) 19.59 ( 6 ) 26.5 ( 2 ) 62.4 ( 8 )
16 1.76 ( 6 ) 132.31 ( 5 ) 34.8 ( 1 ) 201.0 ( 8 )
18 8.38 ( 4 ) 837.86 ( 9 ) 66.4 ( 5 ) 784.6 ( 8 )
20 41.93 ( 1 ) 4529.09 ( 7 ) 184.0 ( 4 ) 3251.0 ( 7 )

Share and Cite

MDPI and ACS Style

Nakamura, G.M.; Monteiro, A.C.P.; Cardoso, G.C.; Martinez, A.S. Finite Symmetries in Agent-Based Epidemic Models. Math. Comput. Appl. 2019, 24, 44. https://doi.org/10.3390/mca24020044

AMA Style

Nakamura GM, Monteiro ACP, Cardoso GC, Martinez AS. Finite Symmetries in Agent-Based Epidemic Models. Mathematical and Computational Applications. 2019; 24(2):44. https://doi.org/10.3390/mca24020044

Chicago/Turabian Style

Nakamura, Gilberto M., Ana Carolina P. Monteiro, George C. Cardoso, and Alexandre S. Martinez. 2019. "Finite Symmetries in Agent-Based Epidemic Models" Mathematical and Computational Applications 24, no. 2: 44. https://doi.org/10.3390/mca24020044

Article Metrics

Back to TopTop