Who Do You Know? A Simulation Study of Infectious Disease Control Through Contact Tracing Benjamin Armbruster and Margaret L. Brandeau Stanford University
Dec 20, 2015
Who Do You Know?A Simulation Study of Infectious Disease
Control Through Contact Tracing
Benjamin Armbruster and Margaret L. Brandeau
Stanford University
Contact Tracing
Health care provider’s perspective:1. Infected person found (index case)2. Treated3. Asked for list of contacts4. Contacts found and tested5. If contact infected go to step 1.
• Standard practice for Tuberculosis (TB)• Common for HIV and other STDs
– called partner notification
1
54
susceptible
infected
? being tested
2
76
3
node 2 infected
Contact Tracing
5
1
4
susceptible
infected
? being tested
2
76
3
node 2 infects nodes 1,4,5
Contact Tracing
5
1
4
susceptible
infected
? being tested
2
76
3
node 4 gets tested (maybe has symptoms)
?
Contact Tracing
5
1
4
susceptible
infected
? being tested
2
76
3
node 4• tests positive, gets treated• becomes a contact tracing index case• names nodes 1,2,3,6,7 as contacts
nodes 1,2,3,6,7 scheduled to be tested
?
??
??
Contact Tracing
5
1
4
susceptible
infected
? being tested
2
76
3
node 3 tests negative
??
??
Contact Tracing
5
1
4
susceptible
infected
? being tested
2
76
3
node 6 tests negative
?
??
Contact Tracing
5
1
4
susceptible
infected
? being tested
2
76
3
?
??
node 1• tests positive, gets treated• becomes a contact tracing index case• names nodes 2,4 as contacts
node 4 already testedtesting node 2 gets higher priority as named by both nodes 1,4
Contact Tracing
2
5
1
4
susceptible
infected
? being tested
76
3
?
?
node 2• tests positive, gets treated• becomes a contact tracing index case• names nodes 1,4,5 as contacts
nodes 1,4 already testednode 5 scheduled to be tested
Contact Tracing
2
5
1
4
susceptible
infected
? being tested
76
3
?node 5• tests positive, gets treated• becomes a contact tracing index case• names node 2 as a contact
node 2 already tested
Contact Tracing
2
5
1
4
susceptible
infected
? being tested
76
3
node 7 tests negative
Contact Tracing
Outline
• Details of the simulation• What is the optimal contact tracing policy?• Does spending more money help?
• Conclusions• Limitations and future work
Simulation Dynamics
t1
90 dayst2
30 dayst3
90 dayst4,t
55 days
η 1/9000 new cases/day/person
di = number of infected neighbors of node i
IT
RST
S
S
S
I
S
SST
S
S
I
I
R
S
Network
A small-word graph with n nodes:
1. Create nodes 0,...,n-1
2. Connect node i to i±1,2 (mod n)
3. Add link (i,j) with probability 1/n
n=500 people
Simulation Details
Each prevalence data point is the• Average over many (400-1600) runs• Error bars show 95% confidence interval
• Steady-state prevalence in a run:1.Infect a random node2.Simulate for 5 years3.Average the prevalence
at the end of day 181, day 182, ...
Contact Tracing Policy
• Budget B
Currently tracing1. Tutankhamen2. Frederic Chopin3. Eleanor Roosevelt…B empty slot
5
1
4
2
7
6
3
?
?
?
? ?
9
8
10
5
9
8
Contact Tracing Policy
• Budget B• New index case: choose
k contacts to trace
1
4
2
7
6
3
10
10
5
9
8
Contact Tracing Policy
• Budget B• New index case: choose
k contacts to trace
1
4
2
7
6
3
Once we have time1. Niels Abel2. node 23. node 34. node 75. …
Contact Tracing Policy
• Budget B• New index case: choose k
contacts to trace• If we have resources, then
trace from top of list
Currently tracing1. Tutankhamen2. Frederic Chopin3. Eleanor Roosevelt…B empty slot
Once we have time1. Niels Abel2. node 23. node 34. node 75. …
Contact Tracing Policy
• Budget B• New index case: choose k
contacts to trace• If we have resources, then
trace from top of list
Currently tracing1. Tutankhamen2. Frederic Chopin3. Eleanor Roosevelt…B Niels Abel
Once we have time1. node 22. node 33. node 74. …
Nothing Random Most Named List Length
0.01
0.015
0.02
0.025
0.03
0.035
prev
alen
ce
k=5B=8
Which Policy is Best?
0 2 4 6 80
0.005
0.01
0.015
0.02
0.025
0.03
prev
alen
ce
k
How Many Contacts to Trace per Index Case?
Increasing the Budget
0 2 4 6 8 100.01
0.015
0.02
0.025
0.03
0.035
prev
alen
ce
budget
0 10 20 30 40 50 60
0
5
10
15
budget [$1000/year]
pers
ons
infe
cted
on
aver
age
What is the Best Level of Contact Tracing?
α=$10,000 n = 500
Choosing α
Resource allocation problem– total budget Btotal
– budget bi for program is.t. b1+ · · · +bm ≤ Btotal
– benefit fi(bi)
max f1(b1)+ · · · +fm(bm)
s.t. b1+ · · · +bm ≤ Btotal
Cost Effectiveness
Resource allocation problem– total budget Btotal
– budget bi for program is.t. b1+ · · · +bm ≤ Btotal
– benefit fi(bi)
– cost effectiveness 1 / fi′(bi)
min maxi 1 / fi′(bi)
s.t. b1+ · · · +bm ≤ Btotal
α=
0 10 20 30 40 50 600
5
10
15
budget [$1000/year]
pers
ons
infe
cted
on
aver
age
Budget Allocation
1. Choose α large2. For each program
– find bi s.t. α = 1 / fi′(bi)– if doesn't exist, then set bi =0
3. Calculate money spent b1+ · · · +bm
4. If >Btotal, then 1. decrease α a bit2. go to step 2
5. Else at optimal allocation
Conclusions
• First detailed model of contact tracing
• Found a better prioritization of contacts
• Diminishing returns to scale
• Cost-effectiveness should play a role when choosing a budget
Limitations / Future Work• Dynamics are missing
– a latent or asymptomatic stage– the male-female distinction– variety of exogenous infections
• Network stylized:
– pairs, pair-formation needed for HIV / STDs• Policy gives no priority to vulnerable contacts• Genotype information• Dynamic control