Bacterial Infection models
2024-07-17
Basic bacteria infection model
\[
\begin{aligned}
\dot{B} & = g B(1-\frac{B}{B_{max}}) - d_B B - kBI\\
\dot{I} & = r BI - d_I I
\end{aligned}
\]
- Can also be other extracellular organisms. Probably not ideal for intra-cellular bacteria (e.g., TB).
Extended bacteria infection model
\[\begin{align}
\dot B &= g B (1-\frac{B}{B_{max}}) - d_B B - k_I B I - k_A B A \\
\dot I &= r_I B (1 -\frac{I}{I_{max}} ) - d_I I \\
\dot A &= r_A \frac{\log(I)}{h+\log(I)} A - d_A A
\end{align}\]
Model uses
Model Exploration
- Looking at the dynamics (time-series) of a model can be useful.
- Often, we are not mainly interested in the time series, but instead some more specific quantity, e.g. total number of pathogen/infected cells, steady state values, etc.
- We usually want to to know how such outcome(s) of interest vary with some parameter(s).
- What do we need to do to answer that question?
Model Exploration
- Choose some parameter values.
- Run the simulation model.
- Record quantities/outcomes of interest.
- Choose another set of parameter values (usually we only vary one at a time).
- Repeat steps 2-4 until you got all parameter-outcome pairs of interest.
- Report (e.g. plot) your findings.
Model Exploration example 1
- Question: How dose the antigen dose for a killed (influenza) vaccine affect antibody levels post vaccination?
- Approach: Build a simple model and explore (after Handel et al 2018 PCB).
\[
\begin{aligned}
\dot V &= - d_V V - k_A AV \\
\dot F &= p_F - d_F F + \frac{V}{V+ h_V}g_F(F_{max}-F) \\
\dot B & = \frac{F V}{F V + h_F} g_B B \\
\dot A & = r_A B - d_A A - k_A A V
\end{aligned}
\] (This is a simpler version of the virus and immune response DSAIRM model.)
Model Exploration example 1
Run model for different antigen doses (\(V_0\)).
Model Exploration example 1
- Run model for different \(V_0\), record antibodies \(A\) at end of each simulation for each \(V_0\).
- Use this equation to compute protection as a function of antibody level. \(P= 1 - \frac{1}{e^{k_1(\log(A)-k_2)}}\)
Back to bacteria
- Assume we think this model is a good approximation for a real system we are interested in.
- We want to explore/predict the peak burden of bacteria if we were able to increase the induction of the immune response (parameter \(r\)), e.g. by giving a drug.
\[
\begin{aligned}
\dot{B} & = g B(1-\frac{B}{B_{max}}) - d_B B - kBI\\
\dot{I} & = r BI - d_I I
\end{aligned}
\]
Model Exploration
- Choose some parameter values.
- Run the simulation model.
- Record quantities/outcomes of interest. Here: \(B\) at peak.
- Choose another set of parameter values (usually we only vary one at a time). Here: \(r\).
- Repeat steps 2-4 until you got all parameter-outcome pairs of interest.
- Report (e.g. plot) your findings.
Exploration exercise
- We could do the model exploration by hand through the DSAIRM GUI for the “Basic Bacteria Model” (or any other) app.
- The Bacteria Model Exploration apps allows you to do some exploration graphically.
- We could write R code that loops over parameters and repeatedly calls the underlying model (‘Level 2’ of the DSAIRM package tutorial).
Exploration exercise
Start an R script. Write code that implements a loop over a parameter of your choice, for each value calls the simulate_basicbacteria_ode()
model function, and computes some outcome of interest.
You can copy/paste/modify the solution from task 6 you looked at as homework.
If you want more of a challenge, use the Extended Bacteria Model app and write some R code to loop over parameters of your choice and plot the results (whatever outcome you consider interesting to explore).