In a continuous-review $(r,Q)$ inventory system under a type-1 service level constraint, if the demand per unit time is distributed as $N(\mu,\sigma^2)$ and the lead time, $L$, is a constant, then the lead-time demand also has a normal distribution. The optimal reorder point (under some simplifying assumptions) is given by

$$r = \mu L + z_\alpha\sigma\sqrt{L}$$

where $h$ and $p$ are the holding and stockout costs, $\alpha=p/(p+h)$, and $z_\alpha$ is the $\alpha$th quantile of the standard normal distribution.

Now suppose the lead time is also stochastic, with distribution $N(\mu_L,\sigma_L^2)$. It is well known that the lead-time demand distribution has mean and variance

$$\mu_{LTD} = \mu\mu_L$$

$$\sigma^2_{LTD} = \mu_L\sigma^2 + \mu^2\sigma_L^2$$

I believe this part.

My question is: is the lead-time demand normally distributed? I do not think it is. But many textbooks (including mine!) give the formula for the optimal reorder point as

$$r = \mu_{LTD} + z_\alpha\sigma_{LTD}. $$

This formula is only correct if the lead-time demand is normally distributed. If the LTD is not normally distributed, then this formula is at best an approximation.

  • 10
    $\begingroup$ LaTeX formatting has been enabled. $\endgroup$ May 30 '19 at 21:39
  • 1
    $\begingroup$ Larry, I like to think of the setup of models like this a bit differently. Consider a "demand process" that is a continuous-time non-decreasing stochastic process with stationary independent increments. Suppose now that the increments are normally-distributed with mean and variance proportional to the increment duration. Given a stochastic duration (lead time) L, the conditional distribution of demand is normal given L. It does not matter if L is normally distributed. To remove the condition on L, we either sum or integrate the conditional demand distribution preserving normality. $\endgroup$
    – alerera
    May 31 '19 at 2:34
  • 2
    $\begingroup$ @alerera I need to think about this more carefully, but in the meantime, would you move your comment to an answer? $\endgroup$
    – LarrySnyder610
    May 31 '19 at 2:49
  • $\begingroup$ I'll provide a written answer once I get off a major deadline. Here's an even simpler setup to consider. Suppose time is discretized, let's say into days, so that lead time is measured in days but is a random variable with some mean and variance. Now suppose that daily demand is (well-approximated) by a normal random variable. I'll take it from there... $\endgroup$
    – alerera
    May 31 '19 at 14:27
  • 1
    $\begingroup$ Just an update that I'm still thinking about this. Suppose demand is a Brownian motion with drift parameters \mu and \sigma^2. While we know that B(\ell) is normal for fixed leadtime \ell, I'm starting to doubt whether B(L) is normal for RV leadtime L even if independent of B(.)... $\endgroup$
    – alerera
    Jun 4 '19 at 16:34

I had the same doubt, and I arrived at the conclusion that the formula given in the textbooks is, at best, a practical approximation. The lead-time demand, in fact, is not normally distributed.

Let $L$ denote the lead-time and $d$ denote the demand per unit of time. Working under the assumption that both of them are normally distributed, then the random variable $L \cdot d$ can be written as:

$$L \cdot d = \frac{1}{4} (L + d)^2 - \frac{1}{4} (L - d)^2$$

If we further assume that $L$ and $d$ are independent (indeed, one could argue that the lead time of a supplier can be independent from the consumption rate of a product), then both $L + d$ and $L - d$ are normally distributed. In this case, then, $L \cdot d$ is a linear combination of two $\chi^2$ random variables, and therefore it's not a normal random variable! Furthermore, there is no known closed-formula expression for the distribution of a linear combination of $\chi^2$ random variables, even though the distribution can be approximated efficiently.

Update after Larry's answer

Below should be a Python code to check that $L \cdot d$ is not normal (assumes that both $L$ and $d$ are continuous):

import numpy as np
from scipy import stats
import matplotlib.pyplot as plt

samples = 10000
lead_times = np.random.normal(10, 2, samples)
demands = np.random.normal(100, 20, samples)
ltd = lead_times * demands


plt.hist(ltd, bins = 100);

I get a very low $p$-value from normaltest and, according to documentation, this is a D'Agostino-Pearson test with null hypothesis "The data comes from a normal distribution", so a low $p$-value allows me to reject the null hypothesis.

  • 1
    $\begingroup$ The null hypothesis is that the data comes from a normal distribution! I totally missed that. So indeed, although my histogram looks normal, it is not. Thanks for catching that. $\endgroup$
    – LarrySnyder610
    Jun 11 '19 at 17:55

I tried simulating lots of normally distributed lead times and the normally distributed demand in each. The lead time demand sure looks normal: enter image description here

But a normality test gives $p = 0$ to at least 9 decimal places. Edit: Since the null hypothesis for this test is “the data comes from a normal distribution,” this means we can conclude the lead-time demands are not normally distributed.

Here's my Python script in case anyone wants to play around with it (or check my work):

import numpy as np
from scipy import stats
import matplotlib.pyplot as plt

mu_D = 100              # mean demand per day
sigma_D = 20            # SD of demand per day
mu_L = 10               # mean lead time (days)
sigma_L = 2             # SD of lead time (days)
T = 10000000            # number of lead times to simulate

# simulate
LTDs = []
for t in range(T):
    # generate lead time
    L = int(max(0, np.round(np.random.normal(mu_L, sigma_L))))

    # simulate LTD
    LTD = np.random.normal(mu_D * L, sigma_D * np.sqrt(L))

    # add to list

k2, p = stats.normaltest(LTDs)
print("p-value = {:.9f}".format(p))

# draw histogram
plt.hist(LTDs, bins=100)
  • $\begingroup$ Yes, the normal approximation is a good one! I'm going to edit my answer with a few more ideas... $\endgroup$
    – alerera
    Jun 10 '19 at 14:37
  • $\begingroup$ But I'm simulating the actual lead-time demands, not an approximation of them. So doesn't that suggest that the LTD is normal, not that the normal distribution is a good approxation for it? $\endgroup$
    – LarrySnyder610
    Jun 10 '19 at 14:39
  • $\begingroup$ I'm not sure. I'm pretty sure for example that if you used $E[L]=0$ and $var(L)=10$ that it might not look so normal. This is a question about compound distributions, and I don't know whether even if you don't screen at zero whether the resulting distribution is normal. See my answer edits. $\endgroup$
    – alerera
    Jun 10 '19 at 15:13
  • $\begingroup$ You are taking (1) $L \sim \mathcal{N}(\mu_L, \sigma_L)$ and then (2) $L \cdot d \sim \mathcal{N}(L \mu_d, L \sqrt{\sigma_d})$ but I think this second step only makes sense if $L$ is a constant, not another random variable. I would take $D \sim \mathcal{N}(\mu_d, \sigma_d)$ and then check what happens to the "object" $L \cdot d$. $\endgroup$ Jun 11 '19 at 15:09
  • $\begingroup$ Editing my answer to reflect this answer... $\endgroup$ Jun 11 '19 at 15:12

I've thought about this for a bit, and I now believe that leadtime demand in most common situations is not normally distributed, although it may be as usual a good approximation.

Of course, we know that the normal distribution has infinite tails which means you could argue that it is not ever appropriate for non-negative random variables, like demand. This is a silly argument; after all, the Central Limit Theorem holds that the distribution of the sum of a large number of independent non-negative random variables tends to a normal distribution.

When modeling demand over time, I find it useful to think about a cumulative stochastic process $D(t)$ counting all demand from time zero to $t$ where $D(0)=0$. If this process has independent increments and if the distribution of $D(t)$ is assumed to be normal with mean $\mu_D t$ and variance $\sigma_D^2 t$, then it is a classic Brownian motion with drift coefficient $\mu$ (also assuming continuous paths in time, which is somewhat technical).

After some thought, I have realized that while $D(t)$ is a normal random variable for any fixed $t$, it is not true in general that $D(L)$ is a normal random variable for a stochastic lead time $L$. The simplest counterargument is to suppose that $L$ is a Bernoulli random variable; in this case, the probability density of $D$ would include a point mass of $p$ at zero mixed with a continuous density everywhere else. This is not any normal density of course.

The last important question is how good is a normal approximation in this case, with mean $\mu_D\Bbb E[L]$ and variance $\sigma_D^2 \Bbb E[L] + \mu^2 \operatorname{var}(L)$, for setting an appropriate reorder point.

Edit: Ideas after @LarrySnyder610 answer

Larry's answer shows that when we assume $L$ is nearly normally-distributed, the distribution of $D(L)$ also appears to be well-approximated by a normal distribution. In his answer, $L$ is a truncated non-negative normal random variable, taking value $0$ with probability $P(N(\mu_L, \sigma^2_L)\leq 0)$ but having a normal density for $L > 0$. When $\mu_L$ is large enough and $\sigma^2_L$ is small enough, my guess is that the normal approximation is a good one.

The idea we are exploring here is one of compounding distributions. A compound probability distribution $H$ results when a parametrized distribution $F$ is marginalized given a distribution for the parameter. In our case, we have a single parameter $L$ (univariate), and thus: $$f_D(t) = \int f_N(t \mid \ell) \; f_L(\ell) \, d\ell,$$ where $f_N(t \mid \ell)$ is normal with mean $\mu_D \ell$ and variance $\sigma_D^2 \ell$ and $f_L(\ell)$ is normal with mean $\mu_L$ and variance $\sigma^2_L$.

I don't know much about compounding distributions. From what I've read, compounding a normal distribution with a normally-distributed mean leads to a another normal distribution. In our case, we have a normally-distributed mean and normally-distributed variance and they depend on the same underlying normal parameter $\ell$. It would be exciting to find out that such a compounding led to a normal distribution.

  • $\begingroup$ I've edited given your answer and comments. $\endgroup$
    – alerera
    Jun 10 '19 at 15:25
  • $\begingroup$ Let's remove the truncation from the picture to avoid that complication. What if we allow $L$, $D$, and the LTD to be negative, i.e., we don't truncate at 0? Does that change anything? (I re-ran the simulation with that change; no change to the results, not surprisingly.) $\endgroup$
    – LarrySnyder610
    Jun 10 '19 at 21:15
  • $\begingroup$ It might, but my point is just that I'm not sure. Someone has to do the distribution compounding integration to see if resulting pdf is normal. $\endgroup$
    – alerera
    Jun 10 '19 at 21:49

I have done extensive analysis of procurement lead time distribution across industries. In my experience, I found most of the distribution are heavily skewed towards the left.

Yes, you are right! Most of the books talk about mathematical modeling by considering lead time as normally distributed. I have yet to see mathematical models that leverage actual distributions for demand and supply lead time. Another way to come out with reorder point/safety stock is to randomly generate demand and lead time based on actual distributions and compute safety stock.

In practical situations, direct usage of formula $\sigma^2_{LTD} = \mu_L\sigma^2 + \mu^2\sigma_L^2$ spikes up safety stock significantly and provide over protection from stock out situations. It is strongly recommended to look at variability in lead time and take measures to reduce variability.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.