# Efficient Simulation of the Spatial Transmission Dynamics of Influenza
###### tags: `articles`
[Link to the paper](https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0013292)
[Relative paper](https://www.pnas.org/doi/full/10.1073/pnas.0601266103)
## Introduction
This research is based on [Mitigation strategies for pandemic influenza in the United States](https://www.pnas.org/doi/full/10.1073/pnas.0601266103)
which applies **stochastic spatial transmission model** to simulate the pandemic.
Moreover, it provides a efficient algorithm to perform simulation.
## Model
The model is a highly connected network representing the 23 million people living in Taiwan
### Structure of the Network
#### Node (Individual)
Attributes:
1. **contact group**: A close association of individuals, every member is connected to all other members in the group. (community, high school, ... , work group) </br> Noted that a individual can belong to several contact groups.
2. **age group**: Each individuals is a member of a age group
3. **resident information**
#### Edge (Connection)
Weight:
The probability of close contact that could result in the successful transmission
> The probability depends on the contact group and age group of these two nodes
### Example
Taiwan consists of 358 census tracts
In one **census tract**, each 2000 people form a **Community**
- black: a census tract
- red: the grouping

Some contact groups are age-specified, like **High School**
- black: one census tract
- orange: 4-18 years old
- blue: the grouping

**Worker Group** is the only class that can cross census tract, based on **worker flow**
- black: two census tract
- blue: 18-64 years old
- red: the grouping

## Transition Diagram
- infectious population
- symptomatic
- asymptomatic
## Simulation
Composed of three modules

### Initialization Module
* Inputs
* Number of communities in each towns
* Number of people in different ages
* Family structures and the number of families of that structures
* Town-to-town worker flow
* Taiwan Demographics
* Individual are stochastically created, assigned an age, resident info and multiple contact groups according to the inputs
Once the Initialization module generates a mock population, the social network (daily contact patterns) among individuals is fixed.
Each individual belongs to one of the age groups, belongs to multiple contact groups according to his/her daytime and nighttime activities
### Simulation Module
* Inputs
* Data generates from initialization module
* influenza parameters
* Select index cases to initiate the epidemic (initial adopters)
* The module runs in cycles with two 12-hours periods (daytime and nighttime), noted that contact groups of a individuals might be changed in these two periods
* For each infected individuals, running through all his contact groups, flip a coin for each susceptibles in that group to decide whether the infection is success
#### Naive Algorithm


- $O(S)$ for each infector
#### Improved Algorithm



- $O(K)$ for each infector $u$
- $p_{max}=\max_{v\in S}p_{uv}<<1$
- $|K|\approx p_{max}\cdot|S|$
$$
\frac{|K|}{|S|}\cdot\frac{p_{uv}}{|K|/|S|} = p_{uv}
$$
Complexity
| Naive Algorithm | Improved Algorithm |
|:---------------:|:------------------:|
| $O(N^2G\alpha)$ | $O(NG(\alpha + K))$ |
Noted that $\alpha$ is average number of people in contact groups and that $K \ll N$
> Details of improved algorithm could be found in [here](https://ftp.iis.sinica.edu.tw/file/entry/8051/FULLTEXT/zh/tr10002.pdf)
### Algorithm Comparison

### $R_0$ comparison
- theoretical $R_0$
- compute the expect number of infection for each node
- sample a subset of node and take average
- simulate the influenza and compute $R_0$ by formula
$$
R_0\approx-\frac{\ln(1-R)}{R},\quad R=\frac{A}{N}
$$

### Visualization Module
Visualize the results of simulation
## Differences
| | U.S. | Sinica | Ours |
|:-----------------------:|:---------------------------------------------------:|:----------------------------------------:|:--------------------------------------:|
| Target | Compare different **mitigation** strategies | Provide a efficient simulation algorithm | Find the best **vaccination** strategy |
| Country | U.S. | Taiwan | Taiwan |
| Data | 2000 U.S. Census data | Taiwan Census 2000 Data | Taiwan Census 2020 Data |
| Algorithm | Naive | Improved | Modified from Sinica's |
| Virus | H5N1 | H1N1 | COVID-19 |
| Vaccination | :exclamation: <br> (mentioned, but not delved into) | :x: | :heavy_check_mark: |
| Intervention Strategies | :heavy_check_mark: | :x: | :exclamation: <br> (NPI only) |
| incubation period | :heavy_check_mark: | :heavy_check_mark: | :x: <br> (would be added soon) |