MGSurvE
A Python Package to Optimize the Surveillance of Genetically-Engineered Mosquitos Released in the Field





Héctor M. Sánchez C.

[Press spacebar to move through the slides or arrows to explore the slides grid]


I. Mosquito-Borne Diseases


1) Current Status

2) Gene Drives

3) Surveillance in the Field

1) Current Status



2) Gene Drives



3) Surveillance in the Field

Given a heterogeneous environment and a limited number of traps, where should we place them?



II. Landscape Analysis


1) Migration Network

2) Migration Network with Traps

3) Fitness Cost

1) Migration Network


Given a function that transforms distances into migration probabilities
$$\alpha(s_i\to s_j)= \kappa(D(s_i\to s_j), \rho_{bio}) * \lambda(\hat{s}_i, \hat{s}_j)$$

we can calculate the migration matrix of the whole landscape
$$ \tau_{\{s_n,s_n\}} = \begin{Vmatrix} \alpha({s_1\to s_1}) & \alpha({s_1\to s_2}) & ... & \alpha({s_1\to s_{n-1}}) & \alpha({s_1\to s_n}) \\ \alpha({s_2\to s_1}) & \alpha({s_2\to s_2}) & ... & \alpha({s_2\to s_{n-1}}) & \alpha({s_2\to s_n}) \\ \vdots & & \ddots & & \vdots \\ \alpha({s_{n-1}\to s_1}) & \alpha({s_{n-1}\to s_2}) & ... & \alpha({s_{n-1}\to s_{n-1}}) & \alpha({s_{n-1}\to s_n}) \\ \alpha({s_n\to s_1}) & \alpha({s_n\to s_2}) & ... & \alpha({s_n\to s_{n-1}}) & \alpha({s_n\to s_n}) \end{Vmatrix} $$

2) Migration Network with Traps


To incorporate the traps' effects we can follow a similar process but split in three parts
$$ \begin{align*} \delta(s_i\to t_j) &= \hat{\eta}(D(s_i\to t_j), \hat{\rho}_{trap}) * \phi(\hat{s_i}, \hat{t_j}) &\Rightarrow \nu_{\{s_n,t_n\}}\\ \delta(t_i\to s_j || t_i\to t_j |_{i\neq j}) &= 0 &\Rightarrow 0_{\{t_n,s_n\}}\\ \delta(t_i\to t_i) &= 1 &\Rightarrow I_{\{t_n,t_n\}} \end{align*} $$
With this in hand, we assemble the traps' migration matrix
$$ \chi_{\{s_n+t_n, s_n+t_n\}} = \begin{Vmatrix} \tau_{\{s_n,s_n\}} & \nu_{\{s_n,t_n\}} \\ 0_{\{t_n,s_n\}} & I_{\{t_n,t_n\}} \end{Vmatrix} $$
3) Fitness (or cost) Function


This allows is to get the Markov fundamental matrix
$$F_{\{s_n,s_n\}}=(I-\tau_{\{s_n,s_n\}})^{-1}$$
which tells us how much time we spend in any site, given that we started in any other site, before we fall into a trap.
Finally, we can calculate the average maximum time it would take for us to trap a mosquito from anywhere in the landscape

$$ \begin{align*} \varphi_{\{s_n\}} &=Max^{j}(F_{\{s_n,s_n\}}(i, j))\\ \phi &= Mean(\varphi_{\{s_n\}}) \end{align*} $$

III. Trap Placement Optimization


1) Fitness Function?

2) Genetic Algorithm

3) STP Demo

1) Fitness Function?


2) Optimization Cycle






3) São Tomé Demo





IV. Current Status and Future Work


1) Project's Status

2) The Future

1) Project's Status




       





Proof of concept is working and pypi package is under development!
(base code ~90%, docs ~75%, paper ~30%)




2) The Future



Team, and Questions




Héctor M. Sánchez C.
Elijah Bartolome, Ayden Salazar, Lillian Weng, Xingli Yu, Joanna Yoo
John Marshall, David L. Smith
(sanchez.hmsc@berkeley.edu | chipdelmal.github.io)

Thanks to Conversations with: Tomas León, Jared Bennett