SlideShare a Scribd company logo
1 of 22
Download to read 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!

More Related Content

What's hot

GAN(と強化学習との関係)
GAN(と強化学習との関係)GAN(と強化学習との関係)
GAN(と強化学習との関係)Masahiro Suzuki
 
Topological Data Analysis of Complex Spatial Systems
Topological Data Analysis of Complex Spatial SystemsTopological Data Analysis of Complex Spatial Systems
Topological Data Analysis of Complex Spatial SystemsMason Porter
 
学振特別研究員になるために~2019年度申請版
学振特別研究員になるために~2019年度申請版学振特別研究員になるために~2019年度申請版
学振特別研究員になるために~2019年度申請版Masahito Ohue
 
cvpaper.challenge 研究効率化 Tips
cvpaper.challenge 研究効率化 Tipscvpaper.challenge 研究効率化 Tips
cvpaper.challenge 研究効率化 Tipscvpaper. challenge
 
Discovery of Linear Acyclic Models Using Independent Component Analysis
Discovery of Linear Acyclic Models Using Independent Component AnalysisDiscovery of Linear Acyclic Models Using Independent Component Analysis
Discovery of Linear Acyclic Models Using Independent Component AnalysisShiga University, RIKEN
 
PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門tmtm otm
 
Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析Hiroaki Sengoku
 
とある金融屋の統計技師が時系列解析してみた
とある金融屋の統計技師が時系列解析してみたとある金融屋の統計技師が時系列解析してみた
とある金融屋の統計技師が時系列解析してみたNagi Teramo
 
レプリカ交換モンテカルロ法で乱数の生成
レプリカ交換モンテカルロ法で乱数の生成レプリカ交換モンテカルロ法で乱数の生成
レプリカ交換モンテカルロ法で乱数の生成Nagi Teramo
 
多項式あてはめで眺めるベイズ推定 ~今日からきみもベイジアン~
多項式あてはめで眺めるベイズ推定~今日からきみもベイジアン~多項式あてはめで眺めるベイズ推定~今日からきみもベイジアン~
多項式あてはめで眺めるベイズ推定 ~今日からきみもベイジアン~ tanutarou
 
PRML輪読#8
PRML輪読#8PRML輪読#8
PRML輪読#8matsuolab
 
Exponential distribution (指数分布)
Exponential distribution (指数分布)Exponential distribution (指数分布)
Exponential distribution (指数分布)Taro Tezuka
 
U-Net: Convolutional Networks for Biomedical Image Segmentationの紹介
U-Net: Convolutional Networks for Biomedical Image Segmentationの紹介U-Net: Convolutional Networks for Biomedical Image Segmentationの紹介
U-Net: Convolutional Networks for Biomedical Image Segmentationの紹介KCS Keio Computer Society
 
【DL輪読会】Is Conditional Generative Modeling All You Need For Decision-Making?
【DL輪読会】Is Conditional Generative Modeling All You Need For Decision-Making?【DL輪読会】Is Conditional Generative Modeling All You Need For Decision-Making?
【DL輪読会】Is Conditional Generative Modeling All You Need For Decision-Making?Deep Learning JP
 
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323Matlantis
 
統計的因果推論 勉強用 isseing333
統計的因果推論 勉強用 isseing333統計的因果推論 勉強用 isseing333
統計的因果推論 勉強用 isseing333Issei Kurahashi
 
楽しい研究のために今からできること 〜新しく研究を始める皆さんへ〜
楽しい研究のために今からできること 〜新しく研究を始める皆さんへ〜楽しい研究のために今からできること 〜新しく研究を始める皆さんへ〜
楽しい研究のために今からできること 〜新しく研究を始める皆さんへ〜諒介 荒木
 
Explanation in Machine Learning and Its Reliability
Explanation in Machine Learning and Its ReliabilityExplanation in Machine Learning and Its Reliability
Explanation in Machine Learning and Its ReliabilitySatoshi Hara
 

What's hot (20)

GAN(と強化学習との関係)
GAN(と強化学習との関係)GAN(と強化学習との関係)
GAN(と強化学習との関係)
 
Topological Data Analysis of Complex Spatial Systems
Topological Data Analysis of Complex Spatial SystemsTopological Data Analysis of Complex Spatial Systems
Topological Data Analysis of Complex Spatial Systems
 
学振特別研究員になるために~2019年度申請版
学振特別研究員になるために~2019年度申請版学振特別研究員になるために~2019年度申請版
学振特別研究員になるために~2019年度申請版
 
cvpaper.challenge 研究効率化 Tips
cvpaper.challenge 研究効率化 Tipscvpaper.challenge 研究効率化 Tips
cvpaper.challenge 研究効率化 Tips
 
Discovery of Linear Acyclic Models Using Independent Component Analysis
Discovery of Linear Acyclic Models Using Independent Component AnalysisDiscovery of Linear Acyclic Models Using Independent Component Analysis
Discovery of Linear Acyclic Models Using Independent Component Analysis
 
深層強化学習と実装例
深層強化学習と実装例深層強化学習と実装例
深層強化学習と実装例
 
PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門
 
Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析
 
とある金融屋の統計技師が時系列解析してみた
とある金融屋の統計技師が時系列解析してみたとある金融屋の統計技師が時系列解析してみた
とある金融屋の統計技師が時系列解析してみた
 
レプリカ交換モンテカルロ法で乱数の生成
レプリカ交換モンテカルロ法で乱数の生成レプリカ交換モンテカルロ法で乱数の生成
レプリカ交換モンテカルロ法で乱数の生成
 
多項式あてはめで眺めるベイズ推定 ~今日からきみもベイジアン~
多項式あてはめで眺めるベイズ推定~今日からきみもベイジアン~多項式あてはめで眺めるベイズ推定~今日からきみもベイジアン~
多項式あてはめで眺めるベイズ推定 ~今日からきみもベイジアン~
 
PRML輪読#8
PRML輪読#8PRML輪読#8
PRML輪読#8
 
Exponential distribution (指数分布)
Exponential distribution (指数分布)Exponential distribution (指数分布)
Exponential distribution (指数分布)
 
Convex optimization
Convex optimization Convex optimization
Convex optimization
 
U-Net: Convolutional Networks for Biomedical Image Segmentationの紹介
U-Net: Convolutional Networks for Biomedical Image Segmentationの紹介U-Net: Convolutional Networks for Biomedical Image Segmentationの紹介
U-Net: Convolutional Networks for Biomedical Image Segmentationの紹介
 
【DL輪読会】Is Conditional Generative Modeling All You Need For Decision-Making?
【DL輪読会】Is Conditional Generative Modeling All You Need For Decision-Making?【DL輪読会】Is Conditional Generative Modeling All You Need For Decision-Making?
【DL輪読会】Is Conditional Generative Modeling All You Need For Decision-Making?
 
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323
 
統計的因果推論 勉強用 isseing333
統計的因果推論 勉強用 isseing333統計的因果推論 勉強用 isseing333
統計的因果推論 勉強用 isseing333
 
楽しい研究のために今からできること 〜新しく研究を始める皆さんへ〜
楽しい研究のために今からできること 〜新しく研究を始める皆さんへ〜楽しい研究のために今からできること 〜新しく研究を始める皆さんへ〜
楽しい研究のために今からできること 〜新しく研究を始める皆さんへ〜
 
Explanation in Machine Learning and Its Reliability
Explanation in Machine Learning and Its ReliabilityExplanation in Machine Learning and Its Reliability
Explanation in Machine Learning and Its Reliability
 

Similar to Temporal network epidemiology: Subtleties and algorithms

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 Networkstiphainepn
 
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)Esteban Moro
 
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 networksUltraUploader
 
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 ...aciijournal
 
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)writwik mandal
 
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 TheoryAndino Maseleno
 
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.pdfjkcs20004
 
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 matlabSneheshDutta
 
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...IJCNCJournal
 
Spreading Phenomena in Social Networks
Spreading Phenomena in Social NetworksSpreading Phenomena in Social Networks
Spreading Phenomena in Social NetworksManojit Chakraborty
 
Timing attacks - Rambus
Timing attacks - RambusTiming attacks - Rambus
Timing attacks - RambusRambus
 
Poisson distribution assign
Poisson distribution assignPoisson distribution assign
Poisson distribution assignAbdul Kader
 
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 cityJean-Luc Caut
 
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 FrameworkSachin Dev Duggal
 
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
 
Social Event Detection
Social Event DetectionSocial Event Detection
Social Event DetectionVincent Traag
 
An immune agents system for
An immune agents system forAn immune agents system for
An immune agents system forcsandit
 

Similar to 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
 

More from Petter Holme

Spin models on networks revisited
Spin models on networks revisitedSpin models on networks revisited
Spin models on networks revisitedPetter Holme
 
History of social simulations
History of social simulationsHistory of social simulations
History of social simulationsPetter Holme
 
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 
networksPetter Holme
 
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 graphsPetter Holme
 
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 graphsPetter Holme
 
Spreading processes on temporal networks
Spreading processes on temporal networksSpreading processes on temporal networks
Spreading processes on temporal networksPetter Holme
 
Dynamics of Internet-mediated partnership formation
Dynamics of Internet-mediated partnership formationDynamics of Internet-mediated partnership formation
Dynamics of Internet-mediated partnership formationPetter Holme
 
Disease spreading & control in temporal networks
Disease spreading & control in temporal networksDisease spreading & control in temporal networks
Disease spreading & control in temporal networksPetter Holme
 
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...Petter Holme
 
Emergence of collective memories
Emergence of collective memoriesEmergence of collective memories
Emergence of collective memoriesPetter Holme
 
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 epidemiologyPetter Holme
 
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...Petter Holme
 
From land use to human mobility
From land use to human mobilityFrom land use to human mobility
From land use to human mobilityPetter Holme
 
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?Petter Holme
 
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 organizationsPetter 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 backPetter Holme
 
Exploring spatial networks with greedy navigators
Exploring spatial networks with greedy navigatorsExploring spatial networks with greedy navigators
Exploring spatial networks with greedy navigatorsPetter Holme
 

More from 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
 

Recently uploaded

BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.PraveenaKalaiselvan1
 
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...D. B. S. College Kanpur
 
GenAI talk for Young at Wageningen University & Research (WUR) March 2024
GenAI talk for Young at Wageningen University & Research (WUR) March 2024GenAI talk for Young at Wageningen University & Research (WUR) March 2024
GenAI talk for Young at Wageningen University & Research (WUR) March 2024Jene van der Heide
 
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptxSTOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptxMurugaveni B
 
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)User Guide: Pulsar™ Weather Station (Columbia Weather Systems)
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)Columbia Weather Systems
 
Thermodynamics ,types of system,formulae ,gibbs free energy .pptx
Thermodynamics ,types of system,formulae ,gibbs free energy .pptxThermodynamics ,types of system,formulae ,gibbs free energy .pptx
Thermodynamics ,types of system,formulae ,gibbs free energy .pptxuniversity
 
CHROMATOGRAPHY PALLAVI RAWAT.pptx
CHROMATOGRAPHY  PALLAVI RAWAT.pptxCHROMATOGRAPHY  PALLAVI RAWAT.pptx
CHROMATOGRAPHY PALLAVI RAWAT.pptxpallavirawat456
 
Topic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxTopic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxJorenAcuavera1
 
Speech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxSpeech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxpriyankatabhane
 
Pests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdfPests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdfPirithiRaju
 
Microphone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptxMicrophone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptxpriyankatabhane
 
trihybrid cross , test cross chi squares
trihybrid cross , test cross chi squarestrihybrid cross , test cross chi squares
trihybrid cross , test cross chi squaresusmanzain586
 
User Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather StationUser Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather StationColumbia Weather Systems
 
User Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather StationUser Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather StationColumbia Weather Systems
 
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTX
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTXALL ABOUT MIXTURES IN GRADE 7 CLASS PPTX
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTXDole Philippines School
 
Harmful and Useful Microorganisms Presentation
Harmful and Useful Microorganisms PresentationHarmful and Useful Microorganisms Presentation
Harmful and Useful Microorganisms Presentationtahreemzahra82
 
basic entomology with insect anatomy and taxonomy
basic entomology with insect anatomy and taxonomybasic entomology with insect anatomy and taxonomy
basic entomology with insect anatomy and taxonomyDrAnita Sharma
 
Pests of safflower_Binomics_Identification_Dr.UPR.pdf
Pests of safflower_Binomics_Identification_Dr.UPR.pdfPests of safflower_Binomics_Identification_Dr.UPR.pdf
Pests of safflower_Binomics_Identification_Dr.UPR.pdfPirithiRaju
 
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptxTHE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptxNandakishor Bhaurao Deshmukh
 

Recently uploaded (20)

BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
 
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
 
GenAI talk for Young at Wageningen University & Research (WUR) March 2024
GenAI talk for Young at Wageningen University & Research (WUR) March 2024GenAI talk for Young at Wageningen University & Research (WUR) March 2024
GenAI talk for Young at Wageningen University & Research (WUR) March 2024
 
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptxSTOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
 
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)User Guide: Pulsar™ Weather Station (Columbia Weather Systems)
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)
 
Thermodynamics ,types of system,formulae ,gibbs free energy .pptx
Thermodynamics ,types of system,formulae ,gibbs free energy .pptxThermodynamics ,types of system,formulae ,gibbs free energy .pptx
Thermodynamics ,types of system,formulae ,gibbs free energy .pptx
 
CHROMATOGRAPHY PALLAVI RAWAT.pptx
CHROMATOGRAPHY  PALLAVI RAWAT.pptxCHROMATOGRAPHY  PALLAVI RAWAT.pptx
CHROMATOGRAPHY PALLAVI RAWAT.pptx
 
Topic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxTopic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptx
 
Speech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxSpeech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptx
 
Pests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdfPests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdf
 
Microphone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptxMicrophone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptx
 
trihybrid cross , test cross chi squares
trihybrid cross , test cross chi squarestrihybrid cross , test cross chi squares
trihybrid cross , test cross chi squares
 
User Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather StationUser Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather Station
 
User Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather StationUser Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather Station
 
Volatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -IVolatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -I
 
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTX
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTXALL ABOUT MIXTURES IN GRADE 7 CLASS PPTX
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTX
 
Harmful and Useful Microorganisms Presentation
Harmful and Useful Microorganisms PresentationHarmful and Useful Microorganisms Presentation
Harmful and Useful Microorganisms Presentation
 
basic entomology with insect anatomy and taxonomy
basic entomology with insect anatomy and taxonomybasic entomology with insect anatomy and taxonomy
basic entomology with insect anatomy and taxonomy
 
Pests of safflower_Binomics_Identification_Dr.UPR.pdf
Pests of safflower_Binomics_Identification_Dr.UPR.pdfPests of safflower_Binomics_Identification_Dr.UPR.pdf
Pests of safflower_Binomics_Identification_Dr.UPR.pdf
 
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptxTHE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
 

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.