Tutorials › Quantitative Systems Pharmacology (QSP) › Bacterial Population Growth Under Innate Immune Pressure

Infectious Disease and Viral Dynamics · Tutorial 400 of 799

Bacterial Population Growth Under Innate Immune Pressure

Learn how density-dependent bacterial growth and innate immune killing jointly determine whether bacterial burden expands, persists at a controlled level, or declines toward clearance.

Advanced 9 min read

What You'll Learn

  • Formulate logistic bacterial growth with a constant per-capita innate killing rate.
  • Derive the burden threshold separating expansion from decline.
  • Solve the model for positive and zero initial burdens.
  • Distinguish immune control at a positive equilibrium from decline toward zero.
  • Recognize assumptions, identifiability limits, and signs that the model is inadequate.

Modeling Growth and Innate Killing

A bacterial burden can increase because bacteria replicate and decrease because innate defenses remove them. Density dependence adds a further constraint: growth slows as the burden approaches the environment's capacity to support it. A useful first model combines these effects while making clear what is held fixed and what its trajectories can establish.

Let \(B(t)\) denote viable bacterial burden at time \(t\), measured here in CFU/mL. The model treats bacterial replication as logistic growth and innate killing as a constant per-capita loss:

$$ \frac{dB}{dt}=rB\left(1-\frac{B}{K}\right)-cB =(r-c)B-\frac{r}{K}B^2,\qquad B(0)=B_0\geq 0. $$
Definition: \(r>0\) is the intrinsic bacterial growth rate in day\(^{-1}\); \(K>0\) is the carrying capacity in CFU/mL in the absence of immune killing; and \(c\geq 0\) is an effective innate killing rate in day\(^{-1}\). The term \(cB\) means that the number killed per unit time is proportional to burden, so the per-bacterium killing hazard is constant. \(B_0\) is the initial burden.

This is a deterministic, well-mixed, single-population model. Its parameters and environment are constant over the interval considered. There is no bacterial immigration, no explicit immune-cell population or immune activation dynamics, and no stochastic extinction. Density dependence represents the net reduction in per-capita growth as burden rises; it does not identify a particular nutrient, tissue-space, or host mechanism. The model is intended for viable burden, not a measurement that also counts nonviable bacterial material.

Thresholds and Trajectories

Write \(\lambda=r-c\) for the net per-capita rate at low burden and \(a=r/K\) for the density-dependence coefficient. Then \(dB/dt=\lambda B-aB^2\). Equilibria are values of \(B\) at which the derivative is zero. One equilibrium is always \(B=0\). If \(c<r\), a second equilibrium is \(B^*=\lambda/a=K(1-c/r)>0\).

$$ B^*=\frac{r-c}{r/K}=K\left(1-\frac{c}{r}\right),\qquad c<r. $$

For positive \(B\), the sign of the derivative is the sign of \(\lambda-aB\). When \(c<r\), positive burdens below \(B^*\) rise, and burdens above \(B^*\) fall toward it. The zero burden is also an equilibrium: if \(B(0)=0\), it remains zero rather than rising. When \(c\geq r\), there is no positive equilibrium and every positive burden declines toward zero. Thus \(c<r\) permits persistence at a positive controlled burden; \(c\geq r\) produces decline toward zero in this model. Neither statement alone establishes a clinical outcome or finite-time eradication.

The trajectory can be derived by taking the reciprocal \(y=1/B\) for positive burden. Differentiating gives \(dy/dt=-\lambda y+a\), a linear equation. For \(\lambda\neq 0\), solving it gives \(y(t)=y(0)e^{-\lambda t}+(a/\lambda)(1-e^{-\lambda t})\), and therefore:

$$ B(t)=\frac{B_0e^{\lambda t}} {1+\dfrac{aB_0}{\lambda}\left(e^{\lambda t}-1\right)} \qquad (B_0>0,\ \lambda\neq 0). $$

When \(\lambda>0\), this is equivalently the logistic form \(B(t)=B^*/[1+(B^*/B_0-1)e^{-\lambda t}]\). The latter expression requires \(B_0>0\), because it divides by \(B_0\). For \(B_0=0\), the solution is \(B(t)=0\) for all \(t\). At the threshold \(c=r\), \(\lambda=0\), and the reciprocal equation becomes \(dy/dt=a\); hence positive burdens follow \(B(t)=B_0/(1+aB_0t)\). This is algebraic decline, slower at late times than exponential decline.

Key result: The low-burden threshold is \(c=r\). If innate killing is weaker than intrinsic growth, density dependence limits growth to a positive equilibrium for every positive initial burden. If killing matches or exceeds intrinsic growth, positive burdens decline toward zero. The exact zero burden remains zero in either case.

Worked Example: Expansion Toward a Controlled Burden

Suppose \(r=1.0\) day\(^{-1}\), \(c=0.40\) day\(^{-1}\), \(K=1.0\times10^8\) CFU/mL, and \(B_0=1.0\times10^5\) CFU/mL. Find the equilibrium and burden after 2 days.

Here \(\lambda=r-c=0.60\) day\(^{-1}>0\), so \(c<r\) and the positive equilibrium is \(B^*=K(1-c/r)=(1.0\times10^8)(1-0.40/1.0)=6.0\times10^7\) CFU/mL. The initial burden is positive and below that equilibrium, so it should rise toward \(B^*\).

Using the logistic solution, \(B^*/B_0=600\), and \(e^{-0.60(2)}=e^{-1.2}\approx0.301194\):

$$ B(2)=\frac{6.0\times10^7} {1+(600-1)e^{-0.60(2)}} =\frac{6.0\times10^7}{1+599(0.301194)} =\frac{6.0\times10^7}{181.415} \approx 3.307\times10^5\ \mathrm{CFU/mL}. $$

The increase from \(1.0\times10^5\) to approximately \(3.307\times10^5\) CFU/mL is consistent with growth below the equilibrium. It is not an estimate of an observed infection; the values are hypothetical.

Worked Example: Killing Exceeds Low-Burden Growth

Suppose \(r=0.80\) day\(^{-1}\), \(c=1.10\) day\(^{-1}\), \(K=1.0\times10^8\) CFU/mL, and \(B_0=2.0\times10^6\) CFU/mL. Calculate the burden after 3 days.

Now \(\lambda=r-c=-0.30\) day\(^{-1}\) and \(a=r/K=8.0\times10^{-9}\) mL/(CFU·day). Since \(\lambda<0\), positive burden declines toward zero. Using the general solution and \(e^{-0.90}\approx0.406570\):

$$ B(3)=\frac{(2.0\times10^6)(0.406570)} {1+\left(\frac{(8.0\times10^{-9})(2.0\times10^6)}{-0.30}\right)(0.406570-1)} =\frac{8.1314\times10^5}{1.03165} \approx7.882\times10^5\ \mathrm{CFU/mL}. $$

The burden declines by about \(1.212\times10^6\) CFU/mL over the 3-day interval. Under this deterministic model it approaches zero asymptotically; it does not become exactly zero at a finite time. At very low counts, stochastic extinction or measurement limits may matter, but neither is represented by this calculation.

Worked Example: Decline Under Control Is Not Clearance

Let \(r=1.0\) day\(^{-1}\), \(c=0.60\) day\(^{-1}\), \(K=1.0\times10^8\) CFU/mL, and \(B_0=8.0\times10^7\) CFU/mL. The net low-burden rate is \(\lambda=0.40\) day\(^{-1}\), and the positive equilibrium is \(B^*=K(1-0.60/1.0)=4.0\times10^7\) CFU/mL. Because \(B_0>B^*\), the initial trajectory declines, but the model predicts convergence to a positive burden rather than to zero.

After 5 days, \(e^{-0.40(5)}=e^{-2}\approx0.135335\), and \(B^*/B_0=0.5\):

$$ B(5)=\frac{4.0\times10^7}{1+(0.5-1)(0.135335)} =\frac{4.0\times10^7}{0.9323325} \approx4.290\times10^7\ \mathrm{CFU/mL}. $$

This is a decrease from the initial burden, but it remains near a positive equilibrium. Calling this trajectory clearance would confuse a declining burden with a model state that tends to zero.

Interpreting the Model and Its Limits

The parameterization separates processes only in a limited sense. At low burden, the observed per-capita slope is approximately \(r-c\), because the density term \(rB/K\) is small. A burden trajectory restricted to that range may therefore estimate the net rate without separately identifying bacterial replication and innate killing. Independent information, measurements of immune activity, or perturbations that change one process more than the other may be needed to distinguish them. Near higher burdens, the curvature contains information about density dependence, but estimates of \(K\) also depend on observing enough of the approach to its equilibrium.

The constant \(c\) is an effective killing rate, not a mechanistic description of a specific innate cell or pathway. If innate activity changes over time, a fixed \(c\) may fail. If immune killing saturates with burden, proportional killing may also be inappropriate; one alternative is a loss term \(V_{\max}B/(H+B)\), where \(V_{\max}\) is the maximum killing rate in burden units per time and \(H\) is a half-saturation burden. That alternative changes the threshold behavior and must be analyzed on its own terms. Likewise, replacing logistic growth with exponential growth removes the carrying-capacity feedback and cannot produce a positive density-limited equilibrium.

Useful diagnostics include plotting burden against time on both ordinary and logarithmic scales, comparing observed slopes with model predictions, and checking whether residuals show systematic curvature or time trends. A persistent mismatch in the decline rate may indicate changing immune pressure or another unmodeled process. A plateau far from the model's predicted equilibrium, or a rebound after decline, likewise signals that constant parameters and a single bacterial population may be insufficient. Near zero, discrete counts, assay detection limits, and stochastic events make a continuous deterministic trajectory less reliable.

The model's central distinction is therefore specific: a positive equilibrium means control at a nonzero burden, while a trajectory tending to zero means asymptotic decline under the stated assumptions. It does not establish why killing has a particular value, whether a burden is clinically acceptable, or whether it will be eradicated in a finite host. Those conclusions require data and biological structure beyond this minimal formulation.

Check Your Understanding

Answer each question, then compare your reasoning with the solutions below.

  1. For \(r=0.90\) day\(^{-1}\), \(c=0.20\) day\(^{-1}\), and \(K=5.0\times10^7\) CFU/mL, find \(B^*\). What happens initially if \(B_0=1.0\times10^6\) CFU/mL?
  2. When \(c=r=0.50\) day\(^{-1}\), \(K=1.0\times10^8\) CFU/mL, and \(B_0=1.0\times10^6\) CFU/mL, what is \(B(2)\)?
  3. What does the model predict if \(B_0=0\) and \(c<r\)?
  4. Why can low-burden observations alone have difficulty distinguishing \(r\) from \(c\)?

Solutions. (1) \(B^*=K(1-c/r)=(5.0\times10^7)(1-0.20/0.90)=3.889\times10^7\) CFU/mL. Since \(B_0>0\) and is below \(B^*\), it initially rises. (2) Here \(a=r/K=0.50/(1.0\times10^8)=5.0\times10^{-9}\) mL/(CFU·day) and \(\lambda=0\). Thus \(B(2)=B_0/(1+aB_0t)=(1.0\times10^6)/[1+(5.0\times10^{-9})(1.0\times10^6)(2)]=1.0\times10^6/1.01\approx9.901\times10^5\) CFU/mL. (3) Zero is an equilibrium, so \(B(t)=0\) for all \(t\); the formula for positive initial burden does not apply. (4) At low burden, the density-dependent term is small and the per-capita slope is approximately \(r-c\). The trajectory therefore mainly informs the difference between growth and killing, not each rate separately.

Clinical Biostats