Tutorials › Quantitative Systems Pharmacology (QSP) › Common Errors in Tumor Growth and Resistance Models

Oncology: Tumor Growth and Therapy Response · Tutorial 271 of 799

Common Errors in Tumor Growth and Resistance Models

Check tumor growth and resistance models for consistent states, drug effects, units, and resistant-cell dynamics before interpreting their predictions.

Advanced 12 min read

What You'll Learn

  • Distinguish tumor volume from sensitive and resistant cell counts, and convert between them only under an explicit assumption.
  • Assign growth and drug-kill terms to the appropriate cell states.
  • Check that rate constants and time increments use compatible units.
  • Quantify how omitting resistant-cell growth can bias predicted tumor burden.
  • Use dimensional and trajectory checks to detect common implementation errors.
  • Compare simple clone-specific models with aggregate models and state their limitations.

Why Model Bookkeeping Matters

Tumor growth and resistance models can be mathematically simple and still produce misleading predictions if their states or units are inconsistent. A simulated tumor may shrink for the wrong reason because treatment kill was applied to resistant cells, or appear to grow slowly because resistant cells were left unchanged. These are not minor coding details: they alter the biological meaning of the model and the interpretation of treatment response.

The checks in this tutorial use a simple two-clone model. The purpose is not to select a particular biological mechanism, but to make the bookkeeping explicit: identify what each state measures, state which growth and kill terms act on it, and verify that the rate units match the time scale.

Start With the State Variables and Their Units

Definition: A model state is a quantity that changes over time and is represented by a variable in the model. In a two-clone tumor model, \(S(t)\) may denote the number of drug-sensitive cells and \(R(t)\) the number of drug-resistant cells at time \(t\). If both are measured in millions of cells, then \(S(t)+R(t)\) is a total cell count in millions of cells. Tumor volume is a different quantity, with units such as \(\text{mm}^3\), and cannot be added directly to a cell count.

Volume and cell count may be related, but they are not interchangeable. A conversion requires an explicit assumption about effective cell density or volume per cell. Even then, the conversion is an approximation: measured tumor volume can include extracellular material, fluid, and other components not represented by a tumor-cell count. If a model is fitted to volume data, its states and observation equation should make clear how the modeled cells map to measured volume.

The same care applies to rates. A per-day growth rate must be multiplied by elapsed time in days, not by an unconverted number of hours. In a differential equation, the derivative’s units are state units per unit time; every term added to that derivative must have those same units.

Worked Example: Converting a Cell Count to Tumor Volume

Suppose a hypothetical model has \(S=80\) million sensitive cells and \(R=20\) million resistant cells. For an illustrative conversion only, assume both populations occupy the same tumor-cell density, \(q=0.8\) million cells per \(\text{mm}^3\), and that the tumor volume is fully represented by those cells.

The modeled cell count is \(S+R=80+20=100\) million cells. Under the stated density assumption, the corresponding volume is \(V=(S+R)/q=100/0.8=125\ \text{mm}^3\).

The expression \(V+S+R\) would add \(\text{mm}^3\) to millions of cells, so it has no meaningful unit or interpretation. The conversion also does not establish that a real tumor has this density; it only shows how an explicit mapping can be used consistently.

Put Growth and Drug Kill on the Intended State

For a basic clone-specific model, let \(g_S\) and \(g_R\) be per-day growth rates, and let \(k_S(t)\) and \(k_R(t)\) be per-day treatment-kill rates. A simple exponential model is

$$ \frac{dS}{dt}=[g_S-k_S(t)]S,\qquad \frac{dR}{dt}=[g_R-k_R(t)]R. $$

This form assumes each clone’s net per-capita rate acts on that clone’s own cell count. It also assumes rates are specified over the modeled interval and that there is no explicit transition between states, density limitation, or interaction between clones. Resistance does not universally mean zero drug effect. In the examples below, “resistant” is defined by the simplifying assumption \(k_R(t)=0\); a partially sensitive resistant population would require a nonzero \(k_R(t)\).

Applying a kill term to the total \(S+R\) implicitly assumes the same per-capita kill rate acts on both populations. That may be appropriate for a drug with equal modeled effect on both clones, but it is not appropriate merely because total tumor burden is the measured outcome. The action of a treatment belongs in the state equations according to the model’s biological assumptions, not according to which quantity is easiest to observe.

Worked Example: Applying Kill Only to the Sensitive Clone

Consider a hypothetical treated tumor with \(S(0)=80\) million cells and \(R(0)=20\) million cells. Let \(g_S=g_R=0.02\) per day, \(k_S=0.07\) per day, and \(k_R=0\). Assume these rates remain constant for 10 days. The sensitive clone’s net rate is \(0.02-0.07=-0.05\) per day, while the resistant clone grows at \(0.02\) per day.

For a constant net rate \(a\), the solution of \(dX/dt=aX\) is \(X(t)=X(0)e^{at}\). Therefore, \(S(10)=80e^{-0.05(10)}=80e^{-0.5}\approx48.52\) million cells, and \(R(10)=20e^{0.02(10)}=20e^{0.2}\approx24.43\) million cells.

The correctly specified total is approximately \(48.52+24.43=72.95\) million cells. If the same kill rate were mistakenly applied to the resistant clone, its net rate would be \(0.02-0.07=-0.05\) per day and its predicted count would also decline. That result would contradict the stated resistance assumption. More generally, applying kill to the wrong state changes the model’s biological meaning even if the resulting total appears numerically plausible.

Check Rate Units Against the Time Step

A rate such as \(0.06\) per day has units of inverse days. In the exponential solution, the product of rate and time must be dimensionless. Thus, for \(t\) expressed in days, \(0.06t\) is dimensionless; if time is expressed in hours, the rate must first be converted to per hour or the interval must be converted to days.

This check is useful in both written calculations and simulation code. A program may accept a numerical time step without knowing whether it represents hours or days. The code can therefore run without error while producing a trajectory corresponding to a different treatment duration than intended.

Worked Example: A Per-Day Kill Rate in a Six-Hour Simulation Step

Suppose a hypothetical sensitive-cell population begins at 50 million cells and has a constant net kill rate of \(0.06\) per day, with no growth term. The planned simulation uses four equal steps of six hours each, totaling one day.

Each six-hour step is \(6/24=0.25\) day. The correct per-step exponent is \(-0.06(0.25)=-0.015\). After four steps, the prediction is \(S(1)=50e^{-0.06(4)(0.25)}=50e^{-0.06}\approx47.09\) million cells.

If the numerical value \(0.06\) is incorrectly treated as a per-step kill amount, the calculation instead gives \(50e^{-0.06(4)}=50e^{-0.24}\approx39.33\) million cells. This erroneous result applies four days’ worth of the stated per-day rate during a one-day interval. The discrepancy is a unit error, not a consequence of the biological model.

Do Not Freeze a Resistant Population Without Justification

Resistance to a treatment is a statement about the treatment effect represented in the model; it is not a statement that the resistant population cannot grow or decline. If resistant cells grow under treatment, their state equation still requires a growth term. Setting \(dR/dt=0\) assumes that the resistant count remains constant, which is a separate biological assumption and should not be introduced merely to simplify the calculation.

Worked Example: Effect of Omitting Resistant-Cell Growth

Assume a hypothetical tumor has \(S(0)=99\) million sensitive cells and \(R(0)=1.00\) million resistant cells. During 30 days of treatment, let the sensitive population have a net rate of \(-0.040\) per day and the resistant population have a growth rate of \(0.025\) per day, with no drug kill of resistant cells. These constant-rate assumptions give

$$ S(30)=99e^{-0.040(30)}=99e^{-1.2}\approx29.82\ \text{million cells}, \qquad R(30)=1.00e^{0.025(30)}=e^{0.75}\approx2.117\ \text{million cells}. $$

The modeled total is approximately \(29.82+2.117=31.94\) million cells. If resistant-cell growth is incorrectly omitted by holding \(R\) fixed at 1.00 million cells, the predicted total is instead \(29.82+1.00=30.82\) million cells. The omission underpredicts the modeled total by about \(1.117\) million cells, or \(1.117/31.935\approx3.50\%\) of the correctly modeled total. The difference is consequential despite the resistant population starting at only 1.00 million cells.

A Short Derivation and Model Checks

The constant-rate solution used above follows directly from the state equation. For one population \(X(t)\) with constant net per-capita rate \(a\), begin with \(dX/dt=aX\). For positive \(X\), divide by \(X\) and integrate from time 0 to \(t\):

$$ \frac{1}{X}\frac{dX}{dt}=a,\qquad \int_{X(0)}^{X(t)}\frac{1}{X}\,dX=\int_0^t a\,du, \qquad \log\!\left(\frac{X(t)}{X(0)}\right)=at. $$

Exponentiating gives \(X(t)=X(0)e^{at}\). This derivation also shows why units matter: \(a\) has units of inverse time and \(t\) has units of time, so \(at\) is dimensionless. With time-varying rates, the corresponding solution is \(X(t)=X(0)\exp(\int_0^t a(u)\,du)\), provided the scalar equation remains of this form.

The total count \(N=S+R\) does not generally follow one exponential rate. Differentiating gives \(dN/dt=(g_S-k_S)S+(g_R-k_R)R\). Unless the two net rates are equal, the total’s instantaneous rate depends on the current composition of the tumor. A single fitted net rate can summarize a particular interval, but should not be mistaken for a clone-specific mechanism.

Several practical checks can reveal implementation errors before a model is interpreted:

  • Unit check: list the units of every state, rate, dose input, and time step. Each term in a state derivative must have units of that state per time.
  • State check: verify whether an observation is volume, total cells, or a clone-specific count. Confirm that any observation equation maps model states to the measured quantity.
  • Term check: inspect which states multiply each growth, kill, or transition rate. For example, a clone-specific kill term \(k_SS\) should not silently become \(k_S(S+R)\).
  • Boundary check: with nonnegative initial counts and a model without sources that create negative values, simulated states should remain nonnegative. Negative cell counts often indicate a numerical or equation error.
  • Limiting-case check: set treatment kill to zero and confirm that the model reduces to its stated untreated growth equations. Set a clone’s initial count to zero and confirm whether the equations preserve zero or include a defined source into that clone.

Alternatives, Limitations, and a Common Mistake

A clone-specific model tracks \(S\) and \(R\) separately, making it possible to assign different growth and treatment effects and to compute the total as \(S+R\). An aggregate model tracks only total burden and may be adequate when clone composition is not needed and the effective net rate is suitable for the question. However, aggregate burden alone generally cannot identify the separate sensitive and resistant trajectories: different clone compositions can produce the same total at a given time.

ApproachUseful whenMain caution
Clone-specific statesDifferent growth or drug effects by clone are central to the question.More parameters and states require data or defensible assumptions to identify them.
Aggregate tumor stateOnly overall burden is needed over a limited setting.A fitted total-burden rate can conceal changing clone composition.
Cell-count states with a volume observation equationMechanistic cell counts are modeled but measurements are tumor volume.The mapping from cells to volume must be specified and may be uncertain.

The simple exponential equations assume constant per-capita rates within the interval and do not include carrying capacity, spatial gradients, changing drug exposure, or switching between phenotypes. If any of these processes matter, the model may need additional structure. More complexity is not automatically better: added states and parameters should be tied to the scientific question and supported by data.

Common mistake: “The resistant clone is not killed by treatment, so its amount can be held constant.” This reasoning confuses absence of drug kill with absence of all change. The correction is to write the full state balance: resistant-cell growth, any resistant-cell kill, and any transitions into or out of the resistant state. A constant resistant count follows only if the combined processes give zero net change under the stated conditions.

Key takeaway: Before interpreting a tumor trajectory, verify that every state has a clear biological meaning and unit, each treatment effect acts on its intended state, each rate is paired with time in compatible units, and every modeled clone has an explicit growth or balance equation.

Check Your Understanding

Answer each question using the stated units and assumptions.

  1. A model has \(S=12\) million cells and \(R=3\) million cells. Can their sum be reported as \(15\ \text{mm}^3\) without an additional assumption?
  2. A sensitive population has net rate \(-0.02\) per day and starts at 40 million cells. What is its predicted count after 5 days under a constant-rate model?
  3. A resistant population has growth rate \(0.01\) per day and no drug kill. Does “no drug kill” imply that its count is constant?
  4. A rate of \(0.08\) per day is used over a 12-hour interval. What dimensionless exponent should be used for exponential change?
  5. Why might a total-burden model fail to distinguish two tumors that have the same volume today but different sensitive and resistant fractions?

Solutions: (1) No. The sum is 15 million cells; converting to volume requires a specified cell-density or observation assumption. (2) \(40e^{-0.02(5)}=40e^{-0.1}\approx36.19\) million cells. (3) No. With the stated positive growth rate and no other processes, \(R(t)=R(0)e^{0.01t}\), so it grows. (4) Twelve hours is 0.5 day, so the exponent is \(-0.08(0.5)=-0.04\) for a net loss rate of \(0.08\) per day. (5) Total burden does not by itself reveal composition; different clone fractions can have the same sum but respond differently to treatment.

Clinical Biostats