For three sessions the purchase term \(c\lambda\) has been inert. Identical under every policy, so it could not influence the choice among them.
That rested on one thing: \(c\) was a constant.
Once the supplier prices in tiers, \(c\) depends on \(Q\).
The purchase term is now exactly what the decision moves, and it is far larger than the ordering and holding costs put together.
The cost rate is no longer smooth. Under an all-units schedule it jumps down at each break point.
So differentiating no longer finds the answer. You cannot set a derivative to zero on a function with jumps in it.
The answer is instead selected from a candidate list.
And the flatness we relied on last session does not rescue you here. Flatness is a statement about the relevant cost. The purchase term is not in it.
Reach the break point, and the whole order is priced at the lower figure.
An item has \(\lambda = 8000\) per year, \(k = \$30\), \(i = 0.30\).
| Order quantity | Unit price |
|---|---|
| \(0 \le Q < 500\) | $10.00 |
| \(Q \ge 500\) | $9.00 |
Four steps: compute a candidate at each price, test feasibility, add the break points, evaluate.
With \(h_j = ic_j\):
\[ Q_1^{*} = \sqrt{\frac{2(30)(8000)}{10(0.3)}} = \sqrt{160{,}000} = 400 \]
\[ Q_2^{*} = \sqrt{\frac{2(30)(8000)}{9(0.3)}} = \sqrt{177{,}778} = 422 \]
Two candidates. Now the important part.
\(Q_1^{*} = 400\) must lie in \([0, 500)\). It does. Feasible at $10.
\(Q_2^{*} = 422\) must lie in \([500, \infty)\). It does not.
You cannot buy 422 units at $9. That candidate is discarded.
An economic order quantity computed at a price you are not entitled to is not an option. It is arithmetic about a world that does not exist.
The $9 curve is still decreasing at 500.
So the best available quantity at that price is the break point itself.
500 joins the candidate list.
This is what makes all-units different. The discontinuity means the optimum can sit exactly at a break, and no derivative will ever find it.
\[ \mathit{TC}(400) = 8000(10) + \frac{30(8000)}{400} + \frac{(0.3)(10)(400)}{2} \]
\[ = 80{,}000 + 600 + 600 = \mathbf{\$81{,}200} \]
\[ \mathit{TC}(500) = 8000(9) + \frac{30(8000)}{500} + \frac{(0.3)(9)(500)}{2} \]
\[ = 72{,}000 + 480 + 675 = \mathbf{\$73{,}155} \]
Order 500.
Buying a quarter more than the EOQ at the $10 price saves $8,045 a year.
Almost all of it on the purchase term:
\[ 8000 \times (\$10 - \$9) = \$8{,}000 \]
The holding cost does rise, from $600 to $675.
Seventy-five dollars of extra holding against eight thousand dollars of price reduction is not a contest.
When a discount is worth taking at all, it is usually worth taking exactly at the break point and no further.
An order of size \(Q\) pays \(c_1\) for the first tier, \(c_2\) for the next, and \(c_j\) only for the units above the last break crossed.
Let \(R_j\) be the cost of filling all the intervals below \(j\) completely:
\[ R_j = \sum_{i=2}^{j} c_{i-1}\left(q_i - q_{i-1}\right), \qquad R_1 \equiv 0 \]
\[ C(Q) = R_j + c_j\left(Q - q_j\right) \]
Unlike the all-units case, this is continuous. Crossing a break changes the slope of the purchase cost, not its level.
Holding cost is charged on the value of what is held, and the average price per unit now depends on \(Q\).
Substituting and collecting terms in \(Q\):
\[ \mathit{TC}(Q) = \frac{k_j\lambda}{Q} + \frac{h_j Q}{2} + \underbrace{c_j\lambda + \frac{i\left(R_j - c_j q_j\right)}{2}}_{\text{independent of } Q} \]
\[ k_j = R_j - c_j q_j + k, \qquad h_j = ic_j \]
The \(Q\)-dependent part has exactly the form of the ordinary EOQ, with an effective ordering cost \(k_j\) in place of \(k\).
\[ Q_j^{*} = \sqrt{\frac{2k_j\lambda}{h_j}} \]
\(\lambda = 3000\) per year, \(k = \$50\), \(i = 0.30\).
| Interval | Break \(q_j\) | Price \(c_j\) |
|---|---|---|
| 1 | 0 | $3.00 |
| 2 | 500 | $2.97 |
| 3 | 1500 | $2.95 |
\[ R_1 = 0, \quad R_2 = 3.00(500) = 1500, \quad R_3 = 1500 + 2.97(1000) = 4470 \]
\[ k_1 = 0 - 3.00(0) + 50 = 50 \]
\[ k_2 = 1500 - 2.97(500) + 50 = 65 \]
\[ k_3 = 4470 - 2.95(1500) + 50 = 95 \]
The effective ordering cost rises with the discount level.
That is the mechanism by which incremental discounting encourages larger orders. Reaching a deeper level means having already paid for everything below it, and that paid amount behaves exactly like a larger fixed charge.
\[ Q_1^{*} = \sqrt{\frac{2(50)(3000)}{0.3(3.00)}} = 577.4 \]
\[ Q_2^{*} = \sqrt{\frac{2(65)(3000)}{0.3(2.97)}} = 661.6 \]
\[ Q_3^{*} = \sqrt{\frac{2(95)(3000)}{0.3(2.95)}} = 802.5 \]
\(Q_1^{*} = 577.4\) must lie in \([0, 500)\). No.
\(Q_3^{*} = 802.5\) must lie in \([1500, \infty)\). No.
\(Q_2^{*} = 661.6\) lies in \([500, 1500)\). Yes.
\[ \mathit{TC} = \frac{65(3000)}{661.6} + \frac{0.891(661.6)}{2} + 2.97(3000) + \frac{0.3\left(1500 - 2.97(500)\right)}{2} \]
\[ = 294.74 + 294.74 + 8{,}910 + 2.25 = \mathbf{\$9{,}501.73} \]
Notice the first two terms are $294.74 each.
The effective ordering cost substitution turned this into an ordinary EOQ, so the balance property still holds. Check it every time: it confirms both \(k_j\) and the quantity computed from it.
| All-units | Incremental | |
|---|---|---|
| What reprices | Every unit | Only units above the break |
| Purchase cost at a break | Jumps down | Continuous, slope changes |
| Break points are candidates | Yes | No |
| Effect on order size | Pulls toward breaks | Pulls up gently |
| Typical optimum | At a break point | Interior to an interval |
Incremental generally produces the smaller order, because the average unit cost falls slowly with \(Q\) and there is little to be gained by buying past a break.
There is no jump to exploit.
Back to the general cycle from two sessions ago. We computed four segments and two averages.
We claimed then that the service measures would come for free, because they are ratios of segment lengths we had already computed.
Time to collect.
Recall: \(\lambda = 100\), \(p = 250\), \(Q = 400\), \(\hat{B} = 30\), giving \(T = 4\) years, segments \(0.2, 1.4, 2.1, 0.3\), and \(\bar{I} = 91.875\), \(\bar{B} = 1.875\).
Order frequency. One order per cycle:
\[ \overline{N} = \frac{\lambda}{Q} = \frac{100}{400} = 0.25 \text{ orders per year} \]
Turnover.
\[ \mathit{TO} = \frac{\lambda}{\bar{I}} = \frac{100}{91.875} = 1.09 \text{ turns per year} \]
Fraction of time out of stock. The system is short over \(T_4\) and \(T_1\):
\[ \overline{\mathit{SO}} = \frac{T_1 + T_4}{T} = \frac{0.2 + 0.3}{4} = 0.125 \]
Ready rate, the complement:
\[ \overline{\mathit{RR}} = 1 - 0.125 = 0.875 \]
Rate of unfilled demand. Demand arrives at a constant rate, so
\[ \lambda\overline{\mathit{SO}} = 100(0.125) = 12.5 \text{ units per year arrive to an empty shelf} \]
Average customer wait.
\[ \overline{W} = \frac{\bar{B}}{\lambda} = \frac{1.875}{100} = 0.01875 \text{ year} = \mathbf{6.8} \text{ days} \]
The system is out of stock one eighth of the time, which sounds poor.
A customer who is made to wait waits about a week.
Whether that is acceptable is not a question the model answers.
Here the ready rate of 87.5% and the fill rate are the same number.
Demand arrives continuously at a constant rate, so the fraction of demand arriving during a stockout equals the fraction of time in stockout.
Treat that equality as a consequence of the deterministic assumption, not as a general fact. It survives into stochastic models only under Poisson demand arriving one unit at a time.
A price schedule changes the problem in kind. The purchase term stops being inert and becomes the thing the decision moves.
All-units jumps, so break points are candidates. 500 beat 400 by $8,045, and $8,000 of that was price.
Incremental is continuous, so they are not. The effective ordering cost rises with the level, which is how it encourages larger orders.
The service measures were free. Five of them, all ratios of segments computed two sessions ago.
Read before next session: When Items Stop Being Independent, and A Constrained Lot Sizing Problem.
That closes the single-item deterministic model. Next we keep every assumption about demand and remove the one that made it easy: that items can be decided independently.
Next session:
Check first whether the constraint binds. It is the free step, and it is the one most often skipped.