5.7 Analytic Results for the Base-Stock Policy
5.7 Analytic Results for the Base-Stock Policy
In this section, we establish a set of formulas to compute performance measures for the single-item base-stock inventory system of Section 2.5.1This way, we do not have to simulate to see how performance depends on the order-up-to level \(S\).
We introduce some notation: The period demands \(\{D_{i}\}_{i=1}^{\infty}\) are assumed to be iid rvs2Why did we not need to make this assumption earlier?; for notational ease we take \(D_{i} = 0\) for \(i\leq 0\). Write
\begin{align*} D(i, j] &= \sum_{k=i+1}^{j} D_k, & D[i, j] &= D_{i} + D(i, j], & D[i, j) &= D[i, j] - D_{j}, \end{align*}and likewise for \(Q(i, j]\) for the total outstanding reorders.
We assume that the lead time \(\leadtime\) is constant and a multiple of the period duration. Define \(F_X(x) = \P{\sum_{i=1}^{\leadtime} D_{i} \leq x}\); write \(X\sim F_X\) for the lead-time demand, \(G_X = 1 -F_X\) for the survivor function, and \(f_{X}\) for the pmf. Clearly, \(\E X = \leadtime \E D\). Since the period demands are iid rvs, all rvs \(\{D[k-\leadtime, k)\}_{k=\leadtime+1}^{\infty}\) have the same distribution \(F_X\).
We use the recursions of Section 2.5 to derive expressions for the long-run performance measures. The first step is to relate the outstanding orders to the demand.
Lemma 5.7.1.
Under a base-stock policy with order-up-to level \(S\), \(Q(1, k] = D[1, k)\) for all periods \(k\geq 1\).
Proof
Using the recursions for the inventory position under the base-stock policy repeatedly,
\begin{align*} \IP_k &= \IP_{k-1}'+ Q_k = \IP_{k-1} -D_{k-1}+ Q_k \\ &= \IP_{k-1} -D[k-1, k) + Q(k-1, k] \\ &= \IP_1 - D[1, k) + Q(1, k]. \end{align*}The proof is finished by noting that \(\IP_{k} = S\) for all \(k\geq 1\).
We can use this lemma to express \(I_{k}\) in terms of \(S\) and the lead-time demand.
Lemma 5.7.2.
Under a base-stock policy, if \(\IL_{1} = S\) and there are no outstanding orders of period \(k \leq 1\), then for all periods \(k\geq 1\),
\begin{align*} \IL_k&= S - D[k-\leadtime, k), & \IL_k'&= \IL_{k} - D_{k} = S - D[k-\leadtime, k]. \end{align*}Proof
Using the recursion for the inventory level and the assumptions,
\begin{align*} \IL_{k} &= \IL_{k-1} -D_{k-1}+ Q_{k-\leadtime} \\ &= \IL_{k-1}- D[k-1, k) + Q(k-\leadtime-1, k-\leadtime] \\ &= \IL_{1}- D[1, k) + Q(1-\leadtime, k-\leadtime] \\ &\stackrel1= S - D[1, k) + Q(1, k-\leadtime] \\ &\stackrel2= S - D[k-\leadtime, k); \end{align*}1 uses the assumptions, 2 follows from the above lemma and \(D[k-\leadtime, k) = D[1, k) - D[1, k-\leadtime)\).
This next theorem, which allows us to define the inventory level as an rv \(\IL\), follows directly from the above lemmas.
Theorem 5.7.3.
The rvs \(\{\IL_{k}\}_{k=\leadtime+1}^{\infty}\) are identically3But not necessarily independent. distributed as the rv
\begin{equation*} \IL = S - X. \end{equation*}Proof
As observed earlier, each rv \(D[k-\leadtime, k) \sim X\). As \(S\) is constant, the rvs \(I_{k} = S - D[k-\leadtime, k) \sim S - X\) for all \(k\geq \leadtime+1\).
Now that we have characterized the distribution of \(\IL\) in terms of the control parameter \(S\) and the lead-time demand \(X\), we can find expressions for the performance measures. First, for the ready rate,
\begin{equation*} \alpha \stackrel1= \P{I'\geq 0} \stackrel2= \P{I - D \geq 0} \stackrel3= \P{S-X - D\geq 0} = \P{X+D\leq S}, \tag{5.7.1} \end{equation*}where 1 follows from the definition of \(\alpha\), 2 from \(I' = I- D\), 3 from \(I=S-X\). Second, for the fill rate, by taking expectations in (2.5.4), we obtain
\begin{equation*} \beta = \frac{\E{\min\{D, I^{+}\}}}{\E D}. \tag{5.7.2} \end{equation*}For the third performance measure, the cycle service level, I have not yet tried to find a simple expression in terms of expectations.
The mean inventory level is
\begin{equation*} \E{\IL} = \E{S-X} = S - \E X = S - \leadtime\E D. \end{equation*}Next, noting that \(I^+ - I^- = I\), the average on-hand inventory can be expressed in terms of the average backlog:
\begin{equation*} \E{\IL^+} = \E{I} + \E{I^-} = S - \leadtime \E D + \E{I^-}. \tag{5.7.3} \end{equation*}From the definition of the backlog,
\begin{equation*} \E{\IL^-} = \E{[-I]^{+}} = \E{[X-S]^{+}} = \sum_{k=0}^\infty (k- S)^+f(k). \tag{5.7.4} \end{equation*}This summation runs to \(\infty\) if the support of \(D\) is unbounded. For numerical purposes, we rewrite it as follows.
Lemma 5.7.4.
The average backlog is equal to
\begin{equation*} \E{\IL^-} = \leadtime \E D - \sum_{j=0}^{S-1} G_X(j). \end{equation*}Proof
Since \(\sum_{j=0}^\infty \1{j< k} = k\), we find from (5.7.4)
\begin{align*} \sum_{k=S}^\infty (k-S) f(k) &= \sum_{k=S}^\infty\sum_{j=0}^\infty \1{j < k-S}\, f(k) = \sum_{j=0}^\infty \sum_{k=S}^\infty \1{k > j +S}\, f(k)\\ &= \sum_{j=0}^\infty G_X(j+S) = \sum_{j=0}^\infty G_X(j) - \sum_{j=0}^{S-1} G_X(j). \end{align*}Since \(\sum_{i=0}^\infty G_X(i) = \leadtime \E D\), the claim follows.
Recall from Th. 5.7.3 that \(I\), hence \(I^{+ }\) and \(I^{-}\), are functions of the reorder level \(S\). Therefore, the average inventory cost \(c(S) = h \E{I^{+}} + b \E{I^-}\) is also a function of \(S\).
For the Lighthouse Company case of Section 2.5, Alg. 5.7.4 computes the ready rate, the fill rate and the cost for various values of \(S\) of the base-stock policy. It relies heavily on the algorithms of Section 1.4.
\begin{algorithm}
\caption{Compute the ready rate of a base-stock policy.}
\begin{algorithmic}[1]
\State \textbf{Input:} inventory and demand pmf maps \(p_I,p_D\)
\State \textbf{Output:} ready rate
\Procedure{ReadyRate}{\(p_I,p_D\)}
\State \(p_{I-D}\gets\pr{Subtract}\rb{p_I,p_D}\)
\Return \(\pr{Expectation}\rb{p_{I-D},\lambdafun{z}{\1{z\geq0}}}\)
\EndProcedure
\end{algorithmic}
\end{algorithm}
\begin{algorithm}
\caption{Compute the fill rate of a base-stock policy.}
\begin{algorithmic}[1]
\State \textbf{Input:} inventory and demand pmf maps \(p_I,p_D\)
\State \textbf{Output:} fill rate
\Procedure{FillRate}{\(p_I,p_D\)}
\State \(p_{I^+}\gets\pr{PositivePart}\rb{p_I}\)
\State \(p_{\min\{D,I^+\}}\gets\pr{Minimum}\rb{p_D,p_{I^+}}\)
\Return \(\pr{Mean}\rb{p_{\min\{D,I^+\}}}/\pr{Mean}\rb{p_D}\)
\EndProcedure
\end{algorithmic}
\end{algorithm}
\begin{algorithm}
\caption{Compute the average cost of a base-stock policy.}
\begin{algorithmic}[1]
\State \textbf{Input:} inventory pmf map \(p_I\), costs \(h,b\)
\State \textbf{Output:} average inventory cost
\Procedure{InventoryCost}{\(p_I,h,b\)}
\State \(p_{I^+}\gets\pr{PositivePart}\rb{p_I}\)
\State \(p_{I^-}\gets\pr{NegativePart}\rb{p_I}\)
\Return \(h\pr{Mean}\rb{p_{I^+}}+b\pr{Mean}\rb{p_{I^-}}\)
\EndProcedure
\end{algorithmic}
\end{algorithm}
\begin{algorithm}
\caption{Evaluate a base-stock policy.}
\begin{algorithmic}[1]
\State \textbf{Input:} demand pmf map \(p_D\), lead time \(\leadtime\), costs \(h,b\), base-stock level \(S\)
\State \textbf{Output:} ready rate \(\alpha\), fill rate \(\beta\), and average cost \(c\)
\Procedure{EvaluateBaseStock}{\(p_D,\leadtime,h,b,S\)}
\State \(p_X\gets\pr{Convolution}\rb{p_D,\leadtime}\)
\State \(p_I\gets\pr{Subtract}\rb{\pr{Constant}\rb{S},p_X}\)
\State \(\alpha\gets\pr{ReadyRate}\rb{p_I,p_D}\)
\State \(\beta\gets\pr{FillRate}\rb{p_I,p_D}\)
\State \(c\gets\pr{InventoryCost}\rb{p_I,h,b}\)
\Return \(\alpha,\beta,c\)
\EndProcedure
\end{algorithmic}
\end{algorithm}
| \(S\) | \(\alpha(S)\) | \(\beta(S)\) | \(c(S)\) |
|---|---|---|---|
| 5 | 0.34 | 0.33 | 15.84 |
| 6 | 0.47 | 0.47 | 9.42 |
| 7 | 0.60 | 0.61 | 5.65 |
| 8 | 0.72 | 0.74 | 4.08 |
| 9 | 0.82 | 0.84 | 3.54 |
| 10 | 0.89 | 0.91 | 3.63 |
| 11 | 0.94 | 0.95 | 4.30 |
Thus, as a function of \(S\), the service levels increase, but the cost first decreases and then increases.4High service levels do not come for free.
TF 1.
In a base-stock model, the ready rate is given by \(\alpha = \P{I-D\geq0}\). Claim: \[ \alpha=\P{S-X-D\geq0}=F_{X+D}(S). \]
Solution
Did you actually try? Write your solution down first for comparison.
Show the solution
True. Since \(I=S-X\), the event \(I-D\geq0\) is the same as \(X+D\leq S\).
TF 2.
Claim: In a base-stock model with lead-time demand \(X\), the backlog is given by \(\E{[S-X]^+}\).
Solution
Did you actually try? Write your solution down first for comparison.
Show the solution
False. The backlog is \(\E{[X-S]^+}\), not \(\E{[S-X]^+}\). The expression \([S-X]^+\) is the on-hand inventory, see (5.7.4).
TF 3.
Claim: Increasing the order-up-to level \(S\) always decreases the average inventory cost \(c(S) = h\E{\IL^+} + b\E{\IL^-}\).
Solution
Did you actually try? Write your solution down first for comparison.
Show the solution
False. Increasing \(S\) reduces backlog cost \(b\E{\IL^-}\) but increases holding cost \(h\E{\IL^+}\). Since \(c(S)\) is convex, there is an optimal \(S^*\) beyond which the cost increases.
TF 4.
Claim: For the base-stock model, \(\E{\IL} = S - \leadtime \E D\) can be negative.
Solution
Did you actually try? Write your solution down first for comparison.
Show the solution
True. If \(S\) is small relative to the lead-time demand, then \(\E{\IL} < 0\), meaning that on average there is a backlog.
TF 5.
Claim: Under a base-stock policy, \(\IL^+ - \IL^- = \IL\).
Solution
Did you actually try? Write your solution down first for comparison.
Show the solution
True. By definition, \(\IL^+ = \max\{\IL, 0\}\) and \(\IL^- = \max\{-\IL, 0\}\), so \(\IL^+ - \IL^- = \IL\).
Exercise 6.
Suppose \(\leadtime=0\). What values do \(X\), \(\E\IL\), \(\E{\IL^{+}}\) and \(\E{\IL^{-}}\) take?
Exercise 7.
Why does the definition of \(\beta\) follow from (2.5.4)?
Solution
Did you actually try? Write your solution down first for comparison.
Show the solution
\(D_{k}\) and \(I_{k}\) are independent, but \(D_{k}\) and \(I_{k}'\) not.
The cost function \(S \mapsto c(S)\) is convex and coercive.5A function \(f\) is coercive if \(\lim_{x\to \pm \infty} f(x) = \infty\).
Exercise 8.
Prove that there exists an order-up-to level \(S^{*}\) that minimizes the average cost.
Hint
Use the following properties for convex functions.
- \(f\) convex, \(\alpha\geq 0\) \(\implies\) \(\alpha f\) convex.
- \(f, g\) convex \(\implies\) \(f+g\) convex.
- \(f\) convex, \(R(x) = -x\) \(\implies\) \(f\circ R\) convex.
Solution
Did you actually try? Write your solution down first for comparison.
Show the solution
Fix \(i\). The function \(S\to [S-i]^{+ }\) is convex. Since a weighted sum of convex functions is still convex, \(\sum_{i=0}^{\infty} f(i) [S-i]^{+}\) is also convex. But \(\sum_{i=0}^{\infty} f(i) [S-i]^{+} = \E{[S-X]^{+}} = \E{I^{+}}\), and therefore \(h\E{I^{+}}\) is a convex function of \(S\). Similarly, \(S\to [i-S]^{+}\) is convex, and therefore \(\E{I^{-}}\) is convex. Consequently, \(c(S)\), being the sum of two convex functions, is convex. As \(\E{I^{+}} \to \infty\) when \(S\to\infty\), and \(\E{I^{-}} \to \infty\) when \(S\to-\infty\), \(c(\cdot)\) attains a minimum.