SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
Petter


Holme




Temporal


network


epidemiology:


Subtleties


and


algorithms
Temporal networks
i j t
1 2 0
1 2 5
2 3 7
1 2 8
3 4 9
⋮ ⋮ ⋮
0
2
3
4
Time
10
1
5
SIR on static graphs
‣Infection rate β → Infection across an SI link* is a Poisson process for its
duration.


‣ . . . *Edge in a static graph.


‣Constant recovery rate ν → Exponentially distributed durations of infection.


‣One seed chosen at random among all vertices.
‣Gillespie


‣Event-driven algorithm (Kiss, Miller, Simon, 2017), a.k.a. Next-reaction


‣Composition / rejection (St-Onge, Comp. Phys. Comm. 2019)
Algorithms
SIR on temporal graphs
‣Realism | After all, the goal is to simulate reality


‣Continuity | It should be possible to reduce the time dimension and get static
network epidemiology.


‣Simplicity | Keep the same level of abstraction throughout the modeling.


‣Generalizability | It should be easy to extend the model.


‣Speed | As a tiebreaker among design principles.
Design principles:
P Holme, 2021. Fast and principled simulations of the SIR model on temporal
networks. PLoS ONE 16(2): e0246961.
Algorithmic model formulation
‣Initialization | Initialize all individuals to susceptible.


‣Seeding | Pick a random individual i and a random time ti in the interval [0,T). At
time ti, infect i.


‣Recovery | Whenever a node becomes infected, let it stay infected for an
exponentially distributed time δ before it recovers.


‣Contagion | If i got infected at time ti and is still infected at time t > ti, and j is
susceptible at time t, then a contact (i,j,t) will infect j with probability β.
Straightforward algorithm
1. Initialize all nodes as susceptible.


2. Run through the contacts in increasing order of time.


3. If a there is a contact between a susceptible and infectious node, then infect the
susceptible node with probability β.


4. Whenever a node gets infected (including the source), then draw its time to recovery
from an exponential distribution, and change its state to I.


5. Stop the simulation when there are no infectious nodes.
0
2
3
4
Time
10
1
5
1. Bisection search to
fi
nd the
fi
rst contact that can spread the disease. 


2. Stop the simulations when all infected nodes are no longer active.
Could be sped up with several tricks:
0
A
B
5 10 15 20
a
b
c
d
Time
a:
b
c
d
19
2 15
0 4 6
10
b: a 0 4 6 c: a
d
19
2 15
13 16
d: c 13 16
a 10
Internal representation of the temporal network
Contact lists ordered in decreasing order of the last element.
Event-based algorithm
Event-based algorithm
1. Use bisection search to
fi
nd the smallest index k of tij such that ti < tij(k).
Where tij(k) denotes the k’th contact of tij.


2. Add a random number K generated by log(1–X) / log(1–β) to k and
denote the sum by k′. (The probability of the k’th event of a Bernoulli process
occurring.) X is a uniform random number in [0,1).


3. If k′ is larger than tij’s number of elements, then return some out-of-bounds
value (to signal that no contact will spread the disease). Otherwise, return k′
—the contact between i and j that could be contagious.
Contagious contact


Finding what contact between two nodes i and j that would spread the disease, if
any.
a:
b
c
d
19
2 15
0 4 6
10
b: a 0 4 6 c: a
d
19
2 15
13 16
d: c 13 16
a 10
Event-based algorithm
1. Pop the individual i with the earliest infection time from the heap.


2. Iterate through the neighbors j of i.


a. If j is susceptible, get the time tj when it would be infected by i (by calling
contagious-contact).


b. If it simultaneously holds that


i. There is no earlier infection event of j on the heap.


ii. i’s recovery time is not earlier than tj.


then put the contagion (i infects j at time tj) on the heap.
Infect


Handling the infection of one node i.
Event-based algorithm
Taken together:
1. Read the network and initialize everything.


2. Infect the source node.


3. While there are any nodes left on the heap, call infect.


4. Reset the simulation.


5. Go to 2 until you have enough averages.


6. Evaluate the output.
Transmission probability
10
0.1
1
0.01 0.1 1
Recovery
rate
Outbreak
size
2
4
6
8
10
12
14
16
18
Example output: SocioPatterns Gallery day 1
1
2
3
4
5
6
7
0.1 1 10
Outbreak
size
Infection rate
Analytical
Straightforward algorithm
Event-based algorithm
A B
Validation of the program
A graph with complex behavior w.r.t SIR
7
1 6 7
5
1 6 7
5
1 6
1
2
3
4
5
0.1 1 10
1
2
3
4
5
6
7
0.1 1 10
0
0.2
0.4
0.6
0.8
1
1.2
1.4
0.1 1 10
3
2
6
3 2 5
3
2
7
5
Sentinel
surveillance
Vaccination
Influence
maximization
Ω Ω
τ
2
1
4 5
6 7
3
β β
β
P
Holme,
Phys.
Rev.
E
96,
062305
(2017).
Complexity
N = number of nodes


M = number of edges (node pairs with at least one contact)


C = number of contacts


Straightforward algorithms: O(N + C)


Event-driven algorithm: O(L log N log C)
5
10
15
1 10 100 1000
5
10
15
10 100
5
10
15
Relative
speed-up
1000
1 10
Relative
speed-up
Relative
speed-up
Average degree, z Number of nodes, n
Avg. no. contacts per edge, c
B
A C
z = 2
n = 100
c = 100
n = 100
c = 100
z = 2
0 0 0
Speed-up relative to the straightforward algorithm of
arti
fi
cial networks
Speed-up relative to the straightforward algorithm
Transmission probability
Recovery
rate
0
10
20
30
40
Speed-up
1000
100
10
1
0.1
0.1 1
0.01
0.001
1
10
100
1000
10000
1000 10000 100000 1×106
1×107
Number of contacts
Relative
speed-up
Speed-up relative to the straightforward algorithm
SIR with
fi
xed infection-duration
Everything like before, except the disease lasts a
fi
xed duration T.


Could we then compute the infection probability of a node for all β at once?
Work
in
progress
SIR with
fi
xed infection-duration
Everything like before, except the disease lasts a
fi
xed duration T.


This makes the problem more structured and should be much faster. For
example, we then compute the infection probability of a node for all β at once?


Naïve algorithm idea:


1. For every node i, let a variable xi representing the minimum value of T
needed to reach i.


2. Go through every contact (i,j,t) in increasing t. Update xi to max(xi,tj+xj) where
tj is the time since j was infected, and similarly for xj.
The catch
1
2
3
4
5
6
7
1
2
3
4
5
6
7
time
time
S I R
T
petterhol.me


Code: github.com/pholme/tsir/
Thank you!

Mais conteúdo relacionado

Mais procurados

次元圧縮周りでの気付き&1細胞発現データにおける次元圧縮の利用例@第3回wacode
次元圧縮周りでの気付き&1細胞発現データにおける次元圧縮の利用例@第3回wacode次元圧縮周りでの気付き&1細胞発現データにおける次元圧縮の利用例@第3回wacode
次元圧縮周りでの気付き&1細胞発現データにおける次元圧縮の利用例@第3回wacode
Hirotaka Matsumoto
 

Mais procurados (20)

創発インタラクションの意義:機能分化に対する変分原理と数理モデル
創発インタラクションの意義:機能分化に対する変分原理と数理モデル創発インタラクションの意義:機能分化に対する変分原理と数理モデル
創発インタラクションの意義:機能分化に対する変分原理と数理モデル
 
P J S: 音素バランスを考慮した日本語歌声コーパス
P J S: 音素バランスを考慮した日本語歌声コーパスP J S: 音素バランスを考慮した日本語歌声コーパス
P J S: 音素バランスを考慮した日本語歌声コーパス
 
LINEでビデオ通話してくれる妹を作ってみた
LINEでビデオ通話してくれる妹を作ってみたLINEでビデオ通話してくれる妹を作ってみた
LINEでビデオ通話してくれる妹を作ってみた
 
脳波解析のための相互情報量 Analyzing Neural Time Series Data 29章
脳波解析のための相互情報量 Analyzing Neural Time Series Data 29章脳波解析のための相互情報量 Analyzing Neural Time Series Data 29章
脳波解析のための相互情報量 Analyzing Neural Time Series Data 29章
 
SNS とゲーム理論 ~人はなぜ投稿するのか?~
SNS とゲーム理論~人はなぜ投稿するのか?~SNS とゲーム理論~人はなぜ投稿するのか?~
SNS とゲーム理論 ~人はなぜ投稿するのか?~
 
項目反応理論による尺度運用
項目反応理論による尺度運用項目反応理論による尺度運用
項目反応理論による尺度運用
 
The Basics of Social Network Analysis
The Basics of Social Network AnalysisThe Basics of Social Network Analysis
The Basics of Social Network Analysis
 
次元圧縮周りでの気付き&1細胞発現データにおける次元圧縮の利用例@第3回wacode
次元圧縮周りでの気付き&1細胞発現データにおける次元圧縮の利用例@第3回wacode次元圧縮周りでの気付き&1細胞発現データにおける次元圧縮の利用例@第3回wacode
次元圧縮周りでの気付き&1細胞発現データにおける次元圧縮の利用例@第3回wacode
 
ネットワークメタ分析入門
ネットワークメタ分析入門ネットワークメタ分析入門
ネットワークメタ分析入門
 
確率統計-機械学習その前に
確率統計-機械学習その前に確率統計-機械学習その前に
確率統計-機械学習その前に
 
自己対照研究デザインの概要
自己対照研究デザインの概要自己対照研究デザインの概要
自己対照研究デザインの概要
 
StanとRで折れ線回帰──空間的視点取得課題の反応時間データを説明する階層ベイズモデルを例に──【※Docswellにも同じものを上げています】
StanとRで折れ線回帰──空間的視点取得課題の反応時間データを説明する階層ベイズモデルを例に──【※Docswellにも同じものを上げています】StanとRで折れ線回帰──空間的視点取得課題の反応時間データを説明する階層ベイズモデルを例に──【※Docswellにも同じものを上げています】
StanとRで折れ線回帰──空間的視点取得課題の反応時間データを説明する階層ベイズモデルを例に──【※Docswellにも同じものを上げています】
 
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみたFacebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
 
「あなたがいま読んでいるものは文字です」~画像情報学から見た文字研究のこれから
「あなたがいま読んでいるものは文字です」~画像情報学から見た文字研究のこれから「あなたがいま読んでいるものは文字です」~画像情報学から見た文字研究のこれから
「あなたがいま読んでいるものは文字です」~画像情報学から見た文字研究のこれから
 
介入研究の質のアセスメント
介入研究の質のアセスメント介入研究の質のアセスメント
介入研究の質のアセスメント
 
データサイエンス概論第一 6 異常検出
データサイエンス概論第一 6 異常検出データサイエンス概論第一 6 異常検出
データサイエンス概論第一 6 異常検出
 
データベース時代の疫学研究デザイン
データベース時代の疫学研究デザインデータベース時代の疫学研究デザイン
データベース時代の疫学研究デザイン
 
Major Types of Research
Major Types of ResearchMajor Types of Research
Major Types of Research
 
Introduction to Social Network Analysis
Introduction to Social Network AnalysisIntroduction to Social Network Analysis
Introduction to Social Network Analysis
 
「生態学における統計的因果推論」という大ネタへの挑戦:その理論的背景と適用事例
「生態学における統計的因果推論」という大ネタへの挑戦:その理論的背景と適用事例「生態学における統計的因果推論」という大ネタへの挑戦:その理論的背景と適用事例
「生態学における統計的因果推論」という大ネタへの挑戦:その理論的背景と適用事例
 

Semelhante a Temporal network epidemiology: Subtleties and algorithms

A unified prediction of computer virus spread in connected networks
A unified prediction of computer virus spread in connected networksA unified prediction of computer virus spread in connected networks
A unified prediction of computer virus spread in connected networks
UltraUploader
 
Bayesian inference for mixed-effects models driven by SDEs and other stochast...
Bayesian inference for mixed-effects models driven by SDEs and other stochast...Bayesian inference for mixed-effects models driven by SDEs and other stochast...
Bayesian inference for mixed-effects models driven by SDEs and other stochast...
Umberto Picchini
 
This project will investigate the SIR model and use numeric methods t.pdf
 This project will investigate the SIR model and use numeric methods t.pdf This project will investigate the SIR model and use numeric methods t.pdf
This project will investigate the SIR model and use numeric methods t.pdf
jkcs20004
 
Poisson distribution assign
Poisson distribution assignPoisson distribution assign
Poisson distribution assign
Abdul Kader
 
STRIP: stream learning of influence probabilities.
STRIP: stream learning of influence probabilities.STRIP: stream learning of influence probabilities.
STRIP: stream learning of influence probabilities.
Albert Bifet
 

Semelhante a Temporal network epidemiology: Subtleties and algorithms (20)

Properties and Impact of Vicinity in Mobile Opportunistic Networks
Properties and Impact of Vicinity in Mobile Opportunistic NetworksProperties and Impact of Vicinity in Mobile Opportunistic Networks
Properties and Impact of Vicinity in Mobile Opportunistic Networks
 
Temporal dynamics of human behavior in social networks (ii)
Temporal dynamics of human behavior in social networks (ii)Temporal dynamics of human behavior in social networks (ii)
Temporal dynamics of human behavior in social networks (ii)
 
A unified prediction of computer virus spread in connected networks
A unified prediction of computer virus spread in connected networksA unified prediction of computer virus spread in connected networks
A unified prediction of computer virus spread in connected networks
 
Cryptanalysis of Key Exchange Method Using Computational Intelligence Guided ...
Cryptanalysis of Key Exchange Method Using Computational Intelligence Guided ...Cryptanalysis of Key Exchange Method Using Computational Intelligence Guided ...
Cryptanalysis of Key Exchange Method Using Computational Intelligence Guided ...
 
Computer Network Assignment Help
Computer Network Assignment HelpComputer Network Assignment Help
Computer Network Assignment Help
 
Markov chain and SIR epidemic model (Greenwood model)
Markov chain and SIR epidemic model (Greenwood model)Markov chain and SIR epidemic model (Greenwood model)
Markov chain and SIR epidemic model (Greenwood model)
 
Avian Influenza (H5N1) Expert System using Dempster-Shafer Theory
Avian Influenza (H5N1) Expert System using Dempster-Shafer TheoryAvian Influenza (H5N1) Expert System using Dempster-Shafer Theory
Avian Influenza (H5N1) Expert System using Dempster-Shafer Theory
 
Bayesian inference for mixed-effects models driven by SDEs and other stochast...
Bayesian inference for mixed-effects models driven by SDEs and other stochast...Bayesian inference for mixed-effects models driven by SDEs and other stochast...
Bayesian inference for mixed-effects models driven by SDEs and other stochast...
 
This project will investigate the SIR model and use numeric methods t.pdf
 This project will investigate the SIR model and use numeric methods t.pdf This project will investigate the SIR model and use numeric methods t.pdf
This project will investigate the SIR model and use numeric methods t.pdf
 
Encoder for (7,3) cyclic code using matlab
Encoder for (7,3) cyclic code using matlabEncoder for (7,3) cyclic code using matlab
Encoder for (7,3) cyclic code using matlab
 
A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...
A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...
A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...
 
Spreading Phenomena in Social Networks
Spreading Phenomena in Social NetworksSpreading Phenomena in Social Networks
Spreading Phenomena in Social Networks
 
Poission distribution
Poission distributionPoission distribution
Poission distribution
 
Timing attacks - Rambus
Timing attacks - RambusTiming attacks - Rambus
Timing attacks - Rambus
 
Poisson distribution assign
Poisson distribution assignPoisson distribution assign
Poisson distribution assign
 
Modelisation of Ebola Hemoragic Fever propagation in a modern city
Modelisation of Ebola Hemoragic Fever propagation in a modern cityModelisation of Ebola Hemoragic Fever propagation in a modern city
Modelisation of Ebola Hemoragic Fever propagation in a modern city
 
Covid-19 Spread Detection, Containment Mapping & Vaccine Delivery Framework
Covid-19 Spread Detection, Containment Mapping & Vaccine Delivery FrameworkCovid-19 Spread Detection, Containment Mapping & Vaccine Delivery Framework
Covid-19 Spread Detection, Containment Mapping & Vaccine Delivery Framework
 
STRIP: stream learning of influence probabilities.
STRIP: stream learning of influence probabilities.STRIP: stream learning of influence probabilities.
STRIP: stream learning of influence probabilities.
 
Social Event Detection
Social Event DetectionSocial Event Detection
Social Event Detection
 
An immune agents system for
An immune agents system forAn immune agents system for
An immune agents system for
 

Mais de Petter Holme

From temporal to static networks, and back
From temporal to static networks, and backFrom temporal to static networks, and back
From temporal to static networks, and back
Petter Holme
 
Exploring spatial networks with greedy navigators
Exploring spatial networks with greedy navigatorsExploring spatial networks with greedy navigators
Exploring spatial networks with greedy navigators
Petter Holme
 

Mais de Petter Holme (18)

Spin models on networks revisited
Spin models on networks revisitedSpin models on networks revisited
Spin models on networks revisited
 
History of social simulations
History of social simulationsHistory of social simulations
History of social simulations
 
Optimizing
 sentinel
 surveillance 
in
 static
 and 
temporal 
networks
Optimizing
 sentinel
 surveillance 
in
 static
 and 
temporal 
networksOptimizing
 sentinel
 surveillance 
in
 static
 and 
temporal 
networks
Optimizing
 sentinel
 surveillance 
in
 static
 and 
temporal 
networks
 
Important spreaders in networks: Exact results for small graphs
Important spreaders in networks: Exact results for small graphsImportant spreaders in networks: Exact results for small graphs
Important spreaders in networks: Exact results for small graphs
 
Important spreaders in networks: exact results on small graphs
Important spreaders in networks: exact results on small graphsImportant spreaders in networks: exact results on small graphs
Important spreaders in networks: exact results on small graphs
 
Netsci 2017
Netsci 2017Netsci 2017
Netsci 2017
 
Spreading processes on temporal networks
Spreading processes on temporal networksSpreading processes on temporal networks
Spreading processes on temporal networks
 
Dynamics of Internet-mediated partnership formation
Dynamics of Internet-mediated partnership formationDynamics of Internet-mediated partnership formation
Dynamics of Internet-mediated partnership formation
 
Disease spreading & control in temporal networks
Disease spreading & control in temporal networksDisease spreading & control in temporal networks
Disease spreading & control in temporal networks
 
Modeling the evolution of the AS-level Internet: Integrating aspects of traff...
Modeling the evolution of the AS-level Internet: Integrating aspects of traff...Modeling the evolution of the AS-level Internet: Integrating aspects of traff...
Modeling the evolution of the AS-level Internet: Integrating aspects of traff...
 
Emergence of collective memories
Emergence of collective memoriesEmergence of collective memories
Emergence of collective memories
 
A paradox of importance in network epidemiology
A paradox of importance in network epidemiologyA paradox of importance in network epidemiology
A paradox of importance in network epidemiology
 
How the information content of your contact pattern representation affects pr...
How the information content of your contact pattern representation affects pr...How the information content of your contact pattern representation affects pr...
How the information content of your contact pattern representation affects pr...
 
From land use to human mobility
From land use to human mobilityFrom land use to human mobility
From land use to human mobility
 
Why do metabolic networks look like they do?
Why do metabolic networks look like they do?Why do metabolic networks look like they do?
Why do metabolic networks look like they do?
 
Modeling the fat tails of size fluctuations in organizations
Modeling the fat tails of size fluctuations in organizationsModeling the fat tails of size fluctuations in organizations
Modeling the fat tails of size fluctuations in organizations
 
From temporal to static networks, and back
From temporal to static networks, and backFrom temporal to static networks, and back
From temporal to static networks, and back
 
Exploring spatial networks with greedy navigators
Exploring spatial networks with greedy navigatorsExploring spatial networks with greedy navigators
Exploring spatial networks with greedy navigators
 

Último

Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
PirithiRaju
 
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Lokesh Kothari
 
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...Chemical Tests; flame test, positive and negative ions test Edexcel Internati...
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...
ssuser79fe74
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdf
PirithiRaju
 
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
PirithiRaju
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptx
gindu3009
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Sérgio Sacani
 

Último (20)

Botany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsBotany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questions
 
Zoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfZoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdf
 
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
 
Nanoparticles synthesis and characterization​ ​
Nanoparticles synthesis and characterization​  ​Nanoparticles synthesis and characterization​  ​
Nanoparticles synthesis and characterization​ ​
 
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICESAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
 
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
 
Chemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdfChemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdf
 
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...Chemical Tests; flame test, positive and negative ions test Edexcel Internati...
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...
 
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
 
Botany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdfBotany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdf
 
Green chemistry and Sustainable development.pptx
Green chemistry  and Sustainable development.pptxGreen chemistry  and Sustainable development.pptx
Green chemistry and Sustainable development.pptx
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdf
 
COST ESTIMATION FOR A RESEARCH PROJECT.pptx
COST ESTIMATION FOR A RESEARCH PROJECT.pptxCOST ESTIMATION FOR A RESEARCH PROJECT.pptx
COST ESTIMATION FOR A RESEARCH PROJECT.pptx
 
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls AgencyHire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
 
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptx
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on Io
 
VIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C PVIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C P
 
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
 

Temporal network epidemiology: Subtleties and algorithms

  • 2.
  • 3. Temporal networks i j t 1 2 0 1 2 5 2 3 7 1 2 8 3 4 9 ⋮ ⋮ ⋮ 0 2 3 4 Time 10 1 5
  • 4. SIR on static graphs ‣Infection rate β → Infection across an SI link* is a Poisson process for its duration. ‣ . . . *Edge in a static graph. ‣Constant recovery rate ν → Exponentially distributed durations of infection. ‣One seed chosen at random among all vertices. ‣Gillespie ‣Event-driven algorithm (Kiss, Miller, Simon, 2017), a.k.a. Next-reaction ‣Composition / rejection (St-Onge, Comp. Phys. Comm. 2019) Algorithms
  • 5. SIR on temporal graphs ‣Realism | After all, the goal is to simulate reality ‣Continuity | It should be possible to reduce the time dimension and get static network epidemiology. ‣Simplicity | Keep the same level of abstraction throughout the modeling. ‣Generalizability | It should be easy to extend the model. ‣Speed | As a tiebreaker among design principles. Design principles: P Holme, 2021. Fast and principled simulations of the SIR model on temporal networks. PLoS ONE 16(2): e0246961.
  • 6. Algorithmic model formulation ‣Initialization | Initialize all individuals to susceptible. ‣Seeding | Pick a random individual i and a random time ti in the interval [0,T). At time ti, infect i. ‣Recovery | Whenever a node becomes infected, let it stay infected for an exponentially distributed time δ before it recovers. ‣Contagion | If i got infected at time ti and is still infected at time t > ti, and j is susceptible at time t, then a contact (i,j,t) will infect j with probability β.
  • 7. Straightforward algorithm 1. Initialize all nodes as susceptible. 2. Run through the contacts in increasing order of time. 3. If a there is a contact between a susceptible and infectious node, then infect the susceptible node with probability β. 4. Whenever a node gets infected (including the source), then draw its time to recovery from an exponential distribution, and change its state to I. 5. Stop the simulation when there are no infectious nodes. 0 2 3 4 Time 10 1 5 1. Bisection search to fi nd the fi rst contact that can spread the disease.  2. Stop the simulations when all infected nodes are no longer active. Could be sped up with several tricks:
  • 8. 0 A B 5 10 15 20 a b c d Time a: b c d 19 2 15 0 4 6 10 b: a 0 4 6 c: a d 19 2 15 13 16 d: c 13 16 a 10 Internal representation of the temporal network Contact lists ordered in decreasing order of the last element. Event-based algorithm
  • 9. Event-based algorithm 1. Use bisection search to fi nd the smallest index k of tij such that ti < tij(k). Where tij(k) denotes the k’th contact of tij. 2. Add a random number K generated by log(1–X) / log(1–β) to k and denote the sum by k′. (The probability of the k’th event of a Bernoulli process occurring.) X is a uniform random number in [0,1). 3. If k′ is larger than tij’s number of elements, then return some out-of-bounds value (to signal that no contact will spread the disease). Otherwise, return k′ —the contact between i and j that could be contagious. Contagious contact Finding what contact between two nodes i and j that would spread the disease, if any. a: b c d 19 2 15 0 4 6 10 b: a 0 4 6 c: a d 19 2 15 13 16 d: c 13 16 a 10
  • 10. Event-based algorithm 1. Pop the individual i with the earliest infection time from the heap. 2. Iterate through the neighbors j of i. a. If j is susceptible, get the time tj when it would be infected by i (by calling contagious-contact). b. If it simultaneously holds that i. There is no earlier infection event of j on the heap. ii. i’s recovery time is not earlier than tj. then put the contagion (i infects j at time tj) on the heap. Infect Handling the infection of one node i.
  • 11. Event-based algorithm Taken together: 1. Read the network and initialize everything. 2. Infect the source node. 3. While there are any nodes left on the heap, call infect. 4. Reset the simulation. 5. Go to 2 until you have enough averages. 6. Evaluate the output.
  • 12. Transmission probability 10 0.1 1 0.01 0.1 1 Recovery rate Outbreak size 2 4 6 8 10 12 14 16 18 Example output: SocioPatterns Gallery day 1
  • 13. 1 2 3 4 5 6 7 0.1 1 10 Outbreak size Infection rate Analytical Straightforward algorithm Event-based algorithm A B Validation of the program
  • 14. A graph with complex behavior w.r.t SIR 7 1 6 7 5 1 6 7 5 1 6 1 2 3 4 5 0.1 1 10 1 2 3 4 5 6 7 0.1 1 10 0 0.2 0.4 0.6 0.8 1 1.2 1.4 0.1 1 10 3 2 6 3 2 5 3 2 7 5 Sentinel surveillance Vaccination Influence maximization Ω Ω τ 2 1 4 5 6 7 3 β β β P Holme, Phys. Rev. E 96, 062305 (2017).
  • 15. Complexity N = number of nodes M = number of edges (node pairs with at least one contact) C = number of contacts Straightforward algorithms: O(N + C) Event-driven algorithm: O(L log N log C)
  • 16. 5 10 15 1 10 100 1000 5 10 15 10 100 5 10 15 Relative speed-up 1000 1 10 Relative speed-up Relative speed-up Average degree, z Number of nodes, n Avg. no. contacts per edge, c B A C z = 2 n = 100 c = 100 n = 100 c = 100 z = 2 0 0 0 Speed-up relative to the straightforward algorithm of arti fi cial networks
  • 17. Speed-up relative to the straightforward algorithm Transmission probability Recovery rate 0 10 20 30 40 Speed-up 1000 100 10 1 0.1 0.1 1 0.01 0.001
  • 18. 1 10 100 1000 10000 1000 10000 100000 1×106 1×107 Number of contacts Relative speed-up Speed-up relative to the straightforward algorithm
  • 19. SIR with fi xed infection-duration Everything like before, except the disease lasts a fi xed duration T. Could we then compute the infection probability of a node for all β at once? Work in progress
  • 20. SIR with fi xed infection-duration Everything like before, except the disease lasts a fi xed duration T. This makes the problem more structured and should be much faster. For example, we then compute the infection probability of a node for all β at once? Naïve algorithm idea: 1. For every node i, let a variable xi representing the minimum value of T needed to reach i. 2. Go through every contact (i,j,t) in increasing t. Update xi to max(xi,tj+xj) where tj is the time since j was infected, and similarly for xj.