Industry: Manufacturing Product: ModelRisk Application: Lean Manufacturing — sizing pull-system kanban and JIT buffers under variability
A Tier-1 automotive components plant had been running a single-piece-flow cell for eighteen months, with kanban loops sized by the textbook formula K = (D × LT × (1 + α)) / C, where D was the average daily demand, LT the supplier lead time in days, α a safety-stock multiplier of 10 %, and C the container size. On paper, the cell was a model of lean discipline. In practice, 34 % of customer release-windows missed their delivery slot in Q3, and the line was running two paid weekend recovery shifts a month at $42,000 each. The lean dashboard said the system was 95 % efficient. The customer-service dashboard said it was 66 % on time.
The two dashboards were both right. They were measuring different moments of the same distribution. The kanban formula collapsed demand, lead time and yield to their averages, ignored the correlation between demand spikes and supplier delays during quarterly automotive build-outs, and used a flat 10 % safety factor that had no probabilistic meaning. The team rebuilt the JIT model in ModelRisk as a stochastic pull-system simulator — one that prices the cost of stockouts against the cost of inventory and returns a kanban count that actually hits the contracted service level.
The curve above is the whole argument in one picture. The lean formula's K = 91 cards leaves a 40 % stockout probability per replenishment cycle — directly consistent with the 34 % missed-window rate seen in production once partial substitutions are netted out. The kanban count that actually delivers the contracted 98 % service level is K = 236 cards, more than double what the deterministic formula prescribed. Sizing kanban for the average of demand and lead time, rather than their joint distribution, is what put the line two recovery shifts a month behind.
The kanban formula assumes everything in the equation is a constant. Three of the four inputs are random variables, and one of them is correlated with another.
Daily demand. Customer pull from the OEM final-assembly line was being modelled as Normal(1,000 ± 150). Fifteen months of order data fitted instead to a LogNormal(μ_log = 6.85, σ_log = 0.28) — mean 982 units/day, but with a P95 of 1,496 and rare quarter-end spikes above 2,000. A Normal fit understates the upper tail of demand, which is exactly the tail kanban must absorb.
Supplier lead time. Contract lead time was 4 days; realised lead time fitted to Gamma(shape = 4.5, scale = 1.1 days) — mean 5.0 days, P90 of 8.1 days, occasional 10-day deliveries during port congestion. Using contract lead time hides the right half of this distribution.
Yield at the upstream feeder cell. Per-batch yield was being treated as a constant 96 %. Real yield was Beta(α = 38, β = 2) — mean 95 %, P5 of 87 % on bad-material days. Using mean yield over-states usable arrivals.
Demand–lead-time correlation. End-of-quarter automotive build-outs simultaneously raised demand and extended supplier lead times (because every plant in the supply base was simultaneously pulling). Modelled via a Gaussian copula with rank correlation ρ = 0.42 between demand and lead time. Treating these as independent under-prices the worst weeks of the year.
For a Class-A part with D = 982 units/day, LT = 5 days, C = 60 units/container, α = 10 %, the textbook formula returned K = 91 cards. The Monte Carlo simulation, with the four corrected assumptions, said the kanban count that delivers the contracted 98 % service level was K = 236 cards — more than double what the lean formula prescribed.
At K = 91, the simulation gave a stockout probability of 40 % per replenishment cycle — directly consistent with the 34 % missed-window rate seen in production once you account for partial substitutions. At K = 128 stockout probability is still 20 %, at K = 144 it is 14 %, and only at K = 236 does it reach the 2 % target. The curve is steep through 130 cards and flattens out only in the 200s: the lean-purist instinct to drive kanban down was, in this geometry, costing far more in weekend recovery than it saved in WIP.
The same simulation was rerun under three macro scenarios.
Holding the kanban at the K = 236 needed for 98 % service, the three scenarios price out very differently in the tail. Under the baseline quarter, expected annual cost (holding + stockout penalty) per part is $45k/yr, with a P99 of $782k driven by the rare deep-stockout cycle. Under the build-out quarter (correlated demand spike + lead-time extension), expected cost jumps to $203k/yr and the P99 to $4.4M. Under a smooth-pull scenario (OEM levels its take to a stable rate), expected cost falls to $26k/yr with no material stockout tail — a P99 of $21k, the bare holding floor. The curves overlap below the 95th percentile and fan apart in the right tail: it is the build-out tail that determines kanban sizing, and averaging across the year is what produced the failing K = 91.
The demand/lead-time copula correlation ρ ranks second behind only the lead-time scale parameter. Two operational moves followed from this ranking: (1) the procurement team negotiated a lead-time cap of 6 days on the dominant supplier with an over-stock penalty above that, compressing the lead-time tail directly; (2) the OEM customer-collaboration team obtained a two-week firm forecast window at quarter-end, which decoupled demand from the supplier-side congestion shock and effectively halved the copula ρ from 0.42 to ~0.20.
Lean is the right philosophy, not the right formula. K = (D × LT × (1 + α)) / C is a deterministic answer to a stochastic question; ModelRisk turned a 95 %-efficient, 34 %-late line into a 98 %-on-time line by sizing the kanban for the distribution of demand and lead time rather than for their averages.