Mobility data and geographic unit
Mobility data can provide important insights into how people move and how these patterns change during crisis situations [
17,
18]. We incorporated two different sources of mobility data from Facebook into our models: Facebook colocation data and Facebook movement data. Facebook users who have location services enabled on their smart phones contribute data to these data sets, with users’ locations categorized into Bing Tiles [
17,
18]. Facebook’s newly developed colocation matrices (
Facebook colocation data) give the probability that people from two different geographic units will be in the same 600 m × 600 m location for 5 minutes using data over the course of a week. Facebook’s regular movement data (
Facebook movement data) aggregates the number of trips Facebook users make between locations every 8 hours (Figure S
1) [
18]. Mobility data between January 26th and June 30th were used. Facebook movement data were disaggregated by weekdays (Monday to Friday), weekends, and holidays (Lunar New Year, Ching Ming festival, and Dragon Boat Festival). Facebook colocation data included weeks containing holidays and weeks containing only regular (i.e. non-holiday) days.
The geographic unit used in this study was at the centrally-governed level of “city” (here “city” indicates city, county or special municipality in Taiwan). Shape files were downloaded from Government open data platform (
https://data.gov.tw/dataset/7442). We excluded three cities outside of the main island of Taiwan from the analysis due to their low connectivity with the main island, leaving 19 cities.
We developed susceptible-latent-infectious-recovered (SLIR) models of the spread of COVID-19 throughout Taiwan. In order to understand the initial stages of disease spread, we ran the models stochastically using a continuous-time Markov chain process [
19]. The analogous deterministic formulation, which contains transition probabilities used in stochastic simulations, is described below. We ran the model until either (1) it reached
n cumulative infections or (2) the total number of infections became 0 and repeated simulations 1000 times to estimate the probability of having more than
n infections (denoted by
Pn,k, where
k represents the number of initial infections), the time it takes to reach
n infections (denoted by
Tn,k), and the standard deviation of infection numbers at
Tn,k (denoted by
Vn,k). To assess the initial stages of the outbreak, we used
n = 1000 and
k = 3 as our baseline values.
Let
Si,
Li,
Ii,
Ri be the number of susceptible, latent, infectious, and recovered individuals in location
i, respectively, and
Ni be the total population in location
i. Let
DL (=3.5) be the latent period, and
DI (=3) be the duration of infectiousness [
13]. Because transmission rates can change with non-pharmaceutical interventions, as shown in previous studies, we vary.
R0 in our model (
R0 = 2.4, 1.2, or 0.9) [
13,
20,
21].
We modified spatial models from previous studies [
22‐
25] and constructed two metapopulation models, a contact model and a residence model, with the former using Facebook colocation data and the latter using Facebook movement data. In the “contact model”, we assumed that contact rates (and therefore transmission rates) varied among locations and was proportional to colocation probabilities (
Cij, the probability that a person from location
i collocates with a person from location
j) from Facebook colocation data. We scaled
R0 by
Cij*
Nj (for
j not equal to
i) or
Cii*(
Ni-1), standardized to the average
Cii*(
Ni-1) across all 19 cities (denoted by
\( \overline{C_{ii}\left({N}_i-1\right)} \)). In rare cases where
R0ii was above 3.5, we set it to a maximum value of 3.5.
$$ \frac{d{S}_i}{dt}=-\sum \limits_{j\ include\ i}{S}_i\frac{I_j}{N_j}\frac{R_{0 ij}}{D_I} $$
$$ {R}_{0 ij}={R}_0\frac{C_{ij}{N}_j}{\overline{C_{ii}\left({N}_i-1\right)}} $$
$$ {R}_{0 ii}={R}_0\frac{C_{ii}\left({N}_i-1\right)}{\overline{C_{ii}\left({N}_i-1\right)}} $$
In the “residence model”, we first estimated the proportion of time people living in location
i spend in location
j (
Pij) based on Facebook movement data (see details in
Supplementary Text), and modeled the transmission dynamics by considering both that (1) non-travelers get infected by infectious visitors to their home location (the first part in the following equation) and that (2) susceptible travelers get infected when they travel (the second part in the following equation).
$$ \frac{d{S}_i}{dt}=-{S}_i{P}_{ii}\frac{R_0}{D_I}\frac{\ {\sum}_{j\ includes\ i}{I}_j{P}_{ji}}{\sum_{j\ includes\ i}{N}_j{P}_{ji}}-{S}_i\sum \limits_{j\ne i}{P}_{ij}\frac{I_j}{N_j}\frac{R_0}{D_I} $$
Because the difference between residence models with and without considering the interaction occurring between visitors from different cities inside another third city was minimal (see
Supplementary Text for details), for simplicity, we considered the model without the interaction occurring between visitors from different cities inside another third city. The remaining equations are the same across the two models.
$$ \frac{d{L}_i}{dt}=\frac{-d{S}_i}{dt}-\frac{L_i}{D_L} $$
$$ \frac{d{I}_i}{dt}=\frac{L_i}{D_L}-\frac{I_i}{D_I} $$
$$ \frac{d{R}_i}{dt}=\frac{I_i}{D_I} $$
$$ {N}_i={S}_i+{L}_i+{I}_i+{R}_i $$
In addition to using different movement data, the major difference between two models is that the transmission rate within each city (
R0/
DI) varies with colocation matrices in the contact model, while it remains constant in the residence model. In this sense, the contact model is similar to the traditional density dependent model, where contact rates (and therefore transmission rates) vary with population density, and the residence model is similar to the frequency dependent model [
26]. As it is unclear which is most appropriate for COVID-19, we used both and compared the results.
Risk of infection and regional importation
We defined three connectivity measures relevant for disease transmission, risk of infection, risk of regional importation, and source of importation. Using Facebook colocation data, we defined R0ii as intracity R0 and \( {\sum}_{j\ne i}{R}_{0 ij} \) as intercity R0 for location i. The sum of intracity R0 and intercity R0 reflects total risk of infection and was standardized to the highest value.
Risk of infection for location i = \( {\sum}_{j\ include\ i}{R}_{0 ij} \).
Similarly, using Facebook movement data, we defined \( \left({\sum}_{j\ne i}\frac{m_{ji}{N}_j}{q_j}\right)/{N}_i \) as risk of regional importation (i.e. importation from other cities within Taiwan) for location i, where qj represents the average number of subscribers in location j and mji represents the average number of people moving from location j to location i per unit of time in Facebook movement data. Source of importation was defined as the number of travelers from each location i and standardized to the highest value.
Source of importation for location i = \( {\sum}_{j\ne i}\frac{m_{ij}{N}_i}{q_i} \) .
Facebook colocation data from regular days were used to calculate risk of infection, and weekday movement data were used to calculate risk of regional importation and source of importation.
Modeling travel reduction
To assess the potential effect of travel restrictions at multiple levels, we modeled either intra-city travel reductions, inter-city travel reductions, or a combination of both travel reductions (“overall reduction” in texts and figures) for 1, 2, 3, or 6 months or for the whole period of time. Intracity travel reductions represent decreased contacts between people within the same city, which could be achieved through a combination of measures, such as individual quarantines or social distancing policies. Travel reductions started from the beginning of the simulations or when there were 10, 20, 30, 50, or 100 accumulated infections. The proportion of reduction is denoted by G. In the contact model, intracity reduction was modeled by R0ii*(1–G) for all i, and intercity reduction was modeled by R0ij*(1–G) for all i not equal to j. In the residence model, intracity reduction was modeled by R0*(1–G) and intercity reduction was modeled by Pij*(1–G) for all i not equal to j and Pii + (1–Pii)*G for all i.