Enter your email to access the interactive algorithm comparison. Your computation runs securely on our servers; nothing about the underlying model is exposed in your browser.
Interactive visualization of demand prediction and inventory management strategies in clinical supply chain
Each patient's demand over 60 days. Past (solid bars) is known. Future (heatmap) shows the probability cloud — timing jitter (±1 day/visit, cumulating) AND dose uncertainty create a widening horizon of possibilities.
2 kits every ~7 days, starting Day 7. Quantity certain, timing ±1 day per visit (cumulating).
Enrolled Day 3. Weekly visits. Both dose (1, 2, or 4 kits) and timing are uncertain.
Poisson arrivals (λ=2/month). Each new patient becomes CUD. Chart shows expected demand rate from future enrollments.
Cumulative demand (sum of all patients) with uncertainty cone, plus four resupply algorithm simulations.
Cumulative kits dispensed. Past: known staircase. Future: expanding uncertainty cone from convolution of all patient distributions.
Starting from a given SAI on the selected day, how long until stockout? The uncertainty cone widens as demand uncertainty accumulates.
Send a shipment and watch the inventory bounce. Transit time is 5–8 days (uniform), so arrival itself is uncertain.
Static thresholds: when SAI ≤ min, order enough to reach max. Shipments take 5–8 days. The algorithm checks inventory daily and reorders automatically.
Zero buffer: IF SAI < Predicted/day × Short Window → order to Predicted/day × Long Window. Uses each patient's latest dose. No safety stock — stockouts are expected when demand is uncertain.
Dynamic thresholds move with patient load: IF SAI < Min Buffer + Predicted/day × Short Window → Order to Max Buffer + Predicted/day × Long Window. The most common algorithm across IRT/RTSM systems.
Drug expiry impact: Site starts with 15 short-expiry + 10 long-expiry kits. Under FEFO (First Expiry First Out), expiring kits are always dispensed first. At DNC (Do Not Count), remaining expiring kits are removed from SAI — triggering earlier resupply — while still physically dispensable until DND (Do Not Dispense), when they're destroyed.
| Algorithm | Approach | Threshold Type | When to Order | Strengths | Weaknesses |
|---|---|---|---|---|---|
| Min-Max | Static levels | Fixed min/max | SAI ≤ 8 | Simple, predictable | Ignores patient demand changes; can miss variability |
| Hybrid | Suvoda-style dynamic buffers | Latest dose × weeks | SAI below (4 + latest/wk×3) | Reacts to titration; balanced safety stock | Still relies on most recent dose; lags if dose jumps |
| Pure Predictive | 3-week forecast window | Zero buffer + predicted need | SAI < (predicted/wk × 3) | Efficient; minimal excess inventory | No safety margin; very sensitive to forecast errors |
| Combined + DNC | Dynamic thresholds + expiry events | Dynamic (same as Hybrid) | SAI drops below threshold after DNC removal | Handles drug expiry; prevents gap after kit removal | Requires accurate expiry tracking; extra shipments |
| KPI | Min-Max | Pure Predictive | Hybrid | Combined + DNC |
|---|---|---|---|---|
| Avg Shipments | — | — | — | — |
| Avg Kits Shipped | — | — | — | — |
| Avg Inventory (kit-days) | — | — | — | — |
| Stockout Days [P10 / P50 / P90] | — | — | — | — |
| E[Missed Units] | — | — | — | — |
| Avg Wasted Kits (DNC only) | n/a | n/a | n/a | — |