Similar to the previous post, the book is Winston, W. L., & Goldberg, J. B. (2004). Operations research: applications and algorithms (Vol. 3). Belmont^ eCalif Calif: Thomson/Brooks/Cole.
1. Single-Period Decision Models
A decision maker begins by choosing a value \(q\) of a decision variable. Then a random variable \(D\) assumes a value \(d\). Finally, a cost \(c(d, q)\) is incurred. The decision maker’s goal is to choose \(q\) to minimize expected cost.
Assuming a discrete random variable \(D\) with \(P(D = d) = p(d)\), let \(E(q)\) expected cost given \(q\), then \(E(q) = \sum_{d}p(d)c(d,q)\). Let \(q^\star\) be the optimized \(q\), i.e, \(E(q^\star)\) is minimized, then
\[\begin{equation} E(q^\star + 1) - E(q^\star) \geq 0 \text{ } \qquad \text{} (1) \end{equation}\]
2. News Vendor Problem
Let \(c_o\) be overstocking cost and \(c_u\) for understoking cost. \(f(d)\) be some term does NOT involved \(q\), then \[ c(d,q) = \left\{\begin{array}{ll} c_oq + f(d) &, d \leq q\\ -c_uq + f(d)&, d \geq q + 1 \end{array}\right. \]
A fraction \(P(D \leq q)\) of time, ordering \(q + 1\) will cost \(c_o\) more and \(1 - P(D \leq q)\) of time, ordering \(q + 1\) will cost \(c_u\) less. On average, ordering \(q + 1\) will cost \[c_oP(D \leq q) - c_u[1 - P(D \leq q)]\] Using the property of equation \((1)\), we have \[E(q+1) - E(q) = c_oP(D \leq q) - c_u[1 - P(D \leq q)] \geq 0 \Rightarrow P(D\leq q) \geq \frac{c_u}{c_o + c_u}\] Let \(F(q) = P( D \leq q)\), then \(F(q^\star) \geq \dfrac{c_u}{c_o + c_u}\). If \(F(q)\) is continuous, then \(F(q^\star) = \dfrac{c_u}{c_o + c_u}\)
3. Determination of Reorder Point and Order Quantity with Uncertain Demand
- \(K\) = ordering cost
- \(h\) = holding cost/unit/year
- \(L\) = leading time (known)
- \(q\) = order quantity
- \(D\) = random demand with mean \(E(D), \mathrm{Var}(D), \sigma_{D}\)
- \(c_B\) = cost for backlogged shortage
- \(c_{LS}\) = cost for lost sale
Let \(X\) be demand during lead time, then \[E(X) = LE(D) \qquad \mathrm{Var}(X) = L(\mathrm{Var}(D)) \qquad \sigma_X = \sigma_D\sqrt{L}\]
Let \(r\) is the re-order point, then \(r - E(X)\) is the amount of inventory held in excess of lead time demand to meet shortages that may occur before an order arrives. \(B_r\) be number of back orders during a cycle under re-order point \(r\). Assuming \(q^\star\) can be approximated by EOQ, \(D\) is continuous. The objective function is
\[ \begin{aligned} \text{objective: } TC(q, r) &= \text{ordering} + \text{holding} + \text{shortage}\\ &= KE(D)/q + h/2 \cdot (q+r-E(X) + r - E(X)) + c_BE(B_r)E(D)/q \end{aligned} \] Using marginal analysis, the increase of holding will reduce shortage, for increment \(\Delta\), which resulted the holding cost go up to \(h\Delta = h(q/2+r+\Delta-E(X))-H(Q/2+R-E(X))\) corresponds to \(\Delta E(X)c_B P(X\geq r)/q\), the reduction of shortage cost, it is optimized when increment equals reduction, i.e \(h\Delta = \Delta E(X)c_BP(X \geq r)/q \Rightarrow\)
- If the shortage are backlogged, then apprximated optimal solution (detail omitted) is,
\[EOQ = q^\star = \sqrt{\frac{2KE(D)}{h}} \qquad \text{ and } \qquad P(X \geq r^\star) = \frac{hq^\star}{c_BE(D)}\]
- If the shortage result in lost sales, then approximated optimal solution is,
\[EOQ = q^\star = \sqrt{\frac{2KE(D)}{h}} \qquad \text{ and } \qquad P(X \geq r^\star) = \frac{hq^\star}{hq^\star + c_{LS}E(D)}\] Note:
- We obtain the equation by setting \(\Delta = 1\)
- expected inventory in lost sales case = (expected inventory in back-ordered case) + (expected number of shortages per cycle).
4. Determination of Reorder Point: The Service Level Approach
Since it may be difficult to determine the exact cost of a shortage or lost sale, it is often desirable to choose a reorder point that meets a desired service level.
\(\text{SLM}_{1}\) the expected fraction (usually expressed as a percentage) of all demand that is met on time.
\(\text{SLM}_{2}\) the expected number of cycles per year during which a shortage occurs.
Using the same notation, we can express the expected shortage per cycle as \(E(B_r)\) and per year as \(E(B_r)E(D)/q\) and hence
\[1 - \text{SLM}_1 = \frac{\text{expected shortage per year}}{\text{expected demand per year}} = \frac{E(B_r)E(D)/q}{E(D)} = \frac{E(B_r)}{q}\]
Normal Loss function, \(\mathrm{NL}(y)\), is defined by the fact that \(\sigma_X\mathrm{NL}(y)\) is the expected number of shortage occuring duing a lead time if
(1). lead time demand is normal with mean \(E(X)\) and standard deviation \(\sigma_X\)
(2). re-order point is \(E(X) + y\sigma_X\)
The value of \(\mathrm{NL}(y)\) can be found on Table 13.
Note: theoretical computation of standard normal loss
\[\mathrm{NL}(Z) = \int_{Z}^{\infty}(t-Z)\phi(t)dt = \int_{Z}^{\infty}(t-Z)\cdot \frac{1}{\sqrt{2\pi}}\exp\left\{-\frac{t^2}{2}\right\}dt\]
An R
implementation is as follows, a nice post illustrate some applications.
# compute normal loss function
NL <- function(x) ifelse(x == Inf, 0, dnorm(x) - x * pnorm(x, lower.tail = FALSE))
# compute inverse of normal loss function
invNL <- function(y) uniroot(function(x) NL(x) - y, interval = c(-10,10))$root
A property of the normal loss function is: \(\mathrm{NL}(y) = \mathrm{NL}(-y) - y\).
For a EOQ quantity \(q\) (determination see later),
- If lead time is normally distributed, then for a desired value of \(\text{SLM}_1\), the re-order point \(r\) is found from
\[\mathrm{NL}\left(\frac{r-E(X)}{\sigma_X}\right) = \frac{q(1-\text{SLM}_1)}{\sigma_X}\]
- If lead time demand is continuous random variable, let desired \(\text{SLM}_2 = s_0\) shortages per year, the re-order point \(r\) is
\[P(X \geq r) = \frac{s_0\cdot q}{E(D)}\]
- If lead time is discrete, everthing is the same as previous, then the re-order point is the smallest value of \(r\) satisfying
\[P(X > r) \leq \frac{s_0\cdot q}{E(D)}\]
5. (R, S) Periodic Review Policy
On-order inventory level is the sum of on-hand inventory and inventory on order.
- \(R\) = time (in year) between reviews
- \(J\) = cost of reviewing inventory level
- \(D_{L+R}\) = (random) demand within during time interval of length \(L+R\)
- \(E(D_{L+R}), \sigma_{L+R}\) = mean and standard deviation accordingly
Every \(R\) units of time (e.g. year), we review the inventory level and place an order to bring our on-hand inventory level up to \(S\). Given a value of \(R\), we determine the value of \(S\), the objective function
\[ \begin{aligned} \text{objective: } TC(S) &= \text{reviewing} + \text{ordering} + \text{purchasing} +\text{holding} + \text{shortage}\\ &= J/R + K/R + pD + h \left[S - E(D_{L+R}) + \frac{E(D)R}{2} \right] + \text{shortage} \end{aligned} \]
For increment of \(S\) denoted by \(\Delta\) (increase from \(S\) to \(S+\Delta\)), holding cost increased by \(h\Delta\) and reduce of shortage is \((1/R)c_B\Delta P(D_{L+R} \geq S)\), it is minimized when increase equals decrease, i.e. \(h\Delta = (1/R)c_B\Delta P(D_{L+R}\geq S)\)
\[P(D_{L+R} \geq S) = \frac{Rh}{c_B} \qquad \text{ or } \qquad P(D_{L+S} \geq S) \geq \frac{Rh}{Rh+c_{LS}}\]
under differnet shortage result assumptions by setting \(\Delta = 1\).
The given value of \(R\) above can be determined by \(R = \dfrac{EOQ}{E(D)}\) with \(EOQ = \sqrt{\dfrac{2(K+J)E(D)}{h}}\).
6. ABC Classification
This is an Empirical Rules,
- the 5%–20% of all items accounting for 55%–65% of sales are Type A items;
- the 20%–30% of all items accounting for 20%–40% of sales are Type B items;
- the 50%–75% of all items that account for 5%–25% of all sales are Type C items.
By concentrating effort on Type A (and possibly Type B) items, we can achieve substantial cost reductions.
7. Exchange Curves
Exchange curves (and exchange surfaces) are used to display trade-offs between various objectives. For example, an exchange curve may display the trade-off between annual ordering costs and average dollar level of inventory. An exchange curve can be used to compare how various ordering policies compare with respect to several objectives.