Arte SheetsLearn. Try. Understand.

Operations Research & Inventory Management

Scarf Distribution-Free Min-Max Newsvendor Formula

Hedge unknown demand tail shapes using Herbert Scarf’s (1958) distribution-free min-max newsvendor order Q* = mu + (sigma / 2) * (SQRT(beta / (1 - beta)) - SQRT((1 - beta) / beta)).

Protect perishable inventory orders when only demand mean mu and SD sigma are known

Standard Gaussian newsvendor formulas assume demand is Normal — a dangerous assumption for new product launches with skewed, bimodal, or heavy-tailed demand! Herbert Scarf (1958) and Gallego & Moon (1993) solved the exact distribution-free min-max order quantity against the worst-case distribution sharing mean mu > 0 and standard deviation sigma >= 0: given underage margin c_u = p - c > 0, overage loss c_o = c - s > 0, and critical fractile beta = c_u / (c_u + c_o), whenever sigma / mu <= SQRT(beta / (1 - beta)), optimal order quantity is Q_Scarf* = mu + (sigma / 2) * (SQRT(beta / (1 - beta)) - SQRT((1 - beta) / beta)) (and 0 if volatility exceeds that profitability ceiling)!

Verify with mean demand mu = 500 (B2), SD sigma = 100 (B3), underage margin c_u = 80 (B4), and overage loss c_o = 20 (B5 -> critical fractile beta = 0.8000): SQRT(0.80 / 0.20) = 2.0000 and SQRT(0.20 / 0.80) = 0.5000, giving Scarf’s safety-factor multiplier 0.5 * (2.00 - 0.50) = 0.7500 (more conservative than Gaussian z_0.80 = 0.8416!) and optimal order Q_Scarf* = 500 + 75 = 575.00 units, guaranteeing Gallego-Moon’s tight worst-case expected profit floor c_u * mu - sigma * SQRT(c_u * c_o) = 40,000 - 100 * 40 = 36,000.00!

Scarf Min-Max Metric (mu=500, sig=100, c_u=80, c_o=20)FormulaVerified Output
Critical Fractile (beta)c_u / (c_u + c_o)0.8000
Scarf Safety Multiplier (z_Scarf)0.5 * (SQRT(beta/(1-beta)) - SQRT((1-beta)/beta))0.7500 (vs Normal 0.8416)
Scarf Optimal Order (Q_Scarf*)IF(sig/mu > SQRT(beta/(1-beta)), 0, mu + z*sig)575.00 units
Guaranteed Worst-Case ProfitMAX(0, c_u * mu - sigma * SQRT(c_u * c_o))36,000.00

Scarf Distribution-Free Optimal Order Quantity Q_Scarf* Formula

Check the Gallego-Moon zero-order threshold sigma / mu > SQRT(c_u / c_o) first: when demand CV is so extreme that c_u * mu < sigma * SQRT(c_u * c_o), ordering 0 units uniquely guarantees 0 loss against the worst-case two-point distribution!

=LET(mu_d, B2, sd_d, B3, cu_m, B4, co_l, B5, IF(OR(mu_d <= 0, sd_d < 0, cu_m <= 0, co_l <= 0), "Invalid Newsvendor Input", IF(sd_d / mu_d > SQRT(cu_m / co_l), 0, LET(rt_uo, SQRT(cu_m / co_l), z_sc, 0.5 * (rt_uo - 1 / rt_uo), ROUND(mu_d + z_sc * sd_d, 4)))))

Gallego-Moon Distribution-Free Tight Worst-Case Expected Profit Bound Formula

Evaluate MAX(0, c_u * mu - sigma * SQRT(c_u * c_o)), the exact guaranteed profit floor over all distributions with mean mu and SD sigma.

=LET(mu_d, B2, sd_d, B3, cu_m, B4, co_l, B5, IF(OR(mu_d <= 0, sd_d < 0, cu_m <= 0, co_l <= 0), "Invalid Newsvendor Input", ROUND(MAX(0, cu_m * mu_d - sd_d * SQRT(cu_m * co_l)), 2)))

Try the example

Use the original values or change them to test your understanding.

Further reading