Predictive Performance
Vancomyzer’s Bayesian engine evaluated against a synthetic ICU cohort whose “true” pharmacokinetics are generated from a different published popPK model (Goti 2018). Methodology mirrors Sheiner–Beal 1981 and matches the table-3 convention of Bai et al. 2025 so the numbers below are directly comparable to the three programs in that study.
Result · seed 42 · n = 200
rBias
-4.96%
✓ within ±20% (Sheiner–Beal)
rRMSE
18.86%
precision (lower is better)
Bias
-1.03 mg/L
mean absolute
RMSE
3.34 mg/L
root mean squared
200 of 200 posterior fits succeeded. Predictions evaluated at a held-out timepoint — trough 0.5 h before the next dose — not at the levels used to fit the posterior.
Comparison vs. Bai 2025 a posteriori
Side-by-side with the four-program × real-ICU-patients table from Bai et al. Direct numerical comparison is not valid — we ran synthetic patients with one sampling protocol; Bai ran real patients with mixed sampling. The point of the table is order-of-magnitude reasonability: Vancomyzer’s synthetic stress-test rBias and rRMSE land within the same range as commercial programs running on real ICU data.
| Engine | rBias | rRMSE | Source |
|---|---|---|---|
| Vancomyzer (Colin 2019 prior) — synthetic Goti truth | -4.96% | 18.86% | synthetic stress test (this page) |
| SmartDose (He model) — real ICU patients | −8.73% | 37.64% | Bai 2025 |
| Pharmado (Yasuhara model) — real ICU patients | −6.60% | 27.69% | Bai 2025 |
| PrecisePK (Rodvold model) — real ICU patients | −16.03% | 34.84% | Bai 2025 |
| PrecisePK (Goti model) — real ICU patients | +0.10% | 34.56% | Bai 2025 |
Bai 2025 reference: rBias range -16.03% to 0.10%, rRMSE range 27.69% to 37.64%. Source: Bai et al. Ther Drug Monit. 2025;47:594–602, Table 3 (a posteriori).
Methodology
- Generate n = 200 synthetic ICU patients with demographics matched to Bai 2025 Table 2 (age 61.71 ± 14.78, 63.1% male, weight ~65 kg, SCr ~0.66 mg/dL). The patient set is fixed and reproducible, so the cohort is identical every time the analysis runs.
- For each patient, sample “true” PK parameters from the Goti 2018 model (CL = 4.5 × (CrCl/120)0.8 × (WT/70)0.75 L/h, V1 = 58.4 × WT/70 L, Q = 6.5 × (WT/70)0.75 L/h, V2 = 38.4 × WT/70 L) plus log-normal BSV (ωCL = 0.4, ωV1 = 0.3, ωQ = 0.5, ωV2 = 0.4).
- Apply a fixed regimen (15 mg/kg q12h, 1.5 h infusion, rounded to nearest 250 mg, capped 500–3000 mg) and simulate steady-state concentrations from the patient’s Goti truth.
- Sample a peak (~1.5 h post-infusion-end after dose 4) and a trough (~0.5 h before dose 5). Add combined residual error: proportional 20% CV + additive 1.0 mg/L SD.
- Feed the two noisy levels into Vancomyzer’s a posteriori Bayesian engine (which uses the Colin 2019 prior — NOT Goti). The engine recovers a posterior {CL, V1, Q, V2}.
- Predict the concentration at a held-out timepoint (trough 0.5 h before the next dose) from Vancomyzer’s posterior. Compare to the patient’s Goti truth at that same timepoint.
- Aggregate predicted–vs–observed pairs across the cohort. Compute the Sheiner–Beal relative bias (accuracy) and relative root-mean-squared error (precision).
The analysis is fully reproducible: the same fixed patient set produces the same results every time.
Limitations
Synthetic ≠ real
Goti+BSV truth captures population-level PK variability but not unmodeled ICU physiology — fluid shifts in sepsis, drug-drug interactions, third spacing, hypoalbuminemia, or assay-batch noise. Real-world rRMSE will be higher; the Bai 2025 27.69–37.64% range is the realistic target.
Best-case sampling protocol
We give the engine BOTH a peak and a trough at steady state — the highest-information protocol per ASHP/IDSA 2020. Real practice often has trough-only or a pre-steady-state level, which would degrade both rBias and rRMSE. The harness should be re-run with trough-only and pre-SS variants before any claim about robustness.
Goti BSV values are literature-typical, not transcribed
The raw OMEGA matrix from Goti 2018 isn't openly published. We used ω = 0.40 / 0.30 / 0.50 / 0.40 — within the range of published adult vancomycin popPK models. Tightening or widening BSV will move both metrics; the sensitivity has not been formally quantified.
HD and ARC patients excluded
Matches Bai's exclusion criteria and Vancomyzer's published scope. Continuous renal replacement, ECMO, and augmented renal clearance subpopulations are NOT covered by this validation. Performance there is unknown.
Held-out point is one steady-state trough
Predicting a peak from a peak+trough fit is mechanically easier than predicting a far-future concentration with covariate drift (changing SCr, weight). Multi-point and longitudinal validation is a future-work item.
Validation roadmap
Stage 1 · ✓ Shipped (this page)
Synthetic Goti-truth stress test
Model-misspecification validation against published popPK truth, n=200, deterministic seed.
Stage 2 · ○ Planned
Retrospective de-identified ICU cohort
Partner with an academic medical center. Run Vancomyzer, Tucuxi (Colin + Goti + Thomson models), ideally PrecisePK on a real de-identified TDM dataset. Target journal: Therapeutic Drug Monitoring or Pharmacotherapy.
Stage 3 · ○ Planned
Prospective ICU validation
Multi-year program modeled on Ter Heine 2020 (InsightRX prospective validation, Dutch ICU). The bar for Hospital-tier credibility.