426. Graves-Willems

The guaranteed-service multi-echelon inventory model (Graves & Willems 2000). Each stage promises a service time (max lead time it’ll deliver in) to its downstream customer. Safety stocks are placed to make those service times achievable given bounded demand.

Used by Procter & Gamble, Hewlett-Packard, Intel, and most modern supply-chain network design software.

426.1. Setup

A network of stages (general topology — serial, assembly, distribution, or mixed). For each stage 𝑖:

Customer-facing stages have 𝑠=0 (instant fulfillment) typically.

426.2. Net replenishment time

Stage 𝑖’s net replenishment time — how long it must cover with safety stock:

𝜏𝑖=𝑆𝑖+𝑇𝑖𝑠𝑖

— inbound time + processing time − outbound promise time. If you can absorb supplier and processing delays without breaking your downstream promise, 𝜏𝑖 is small (less safety stock needed).

Constraint: 𝜏𝑖0 (can’t promise faster than the work takes).

426.3. Safety stock at each stage

Assume demand at the customer-facing stage is bounded by some upper-tail quantile (typical: 𝜇+𝑧𝜎 over the relevant interval). Then safety stock at stage 𝑖:

SS𝑖=𝑧𝜎𝑖𝜏𝑖

— the standard square-root-of-lead-time form, but with 𝜏𝑖 (net replenishment time) instead of pure lead time. The sqrt comes from the variance of demand over a time interval scaling linearly.

Total safety-stock cost across the network:

𝐶=𝑖𝑖𝑧𝜎𝑖𝜏𝑖

426.4. Optimization

Decision variables: the inbound / outbound service times 𝑠𝑖,𝑆𝑖 at every stage.

Constraints:

Objective: minimize 𝑖𝜏𝑖.

Algorithm:

426.5. Geometric intuition

Two extreme strategies for each stage:

Optimal placement: tradeoff 𝜏𝑖 costs across all stages — concentrate inventory where holding is cheap (upstream, low 𝑖) and decoupling pays off most.

426.6. Risk pooling appears naturally

If two downstream stages share an upstream stage, the upstream stage’s safety stock covers their combined variability — naturally captures risk pooling.

426.7. When to use

426.8. Limitations vs Clark-Scarf

426.9. See also