Classifying Inventory Systems, and Describing Their State

Manuel D. Rossetti, PhD P.E.

Agenda

  • There is no single inventory model, and classification is how the machinery is found
  • Nine questions, and which cost parameters each answer makes matter
  • The criterion for choosing a classification
  • The state: on hand, on order, backordered, net inventory, inventory position
  • Why every policy watches the position and not the shelf, walked through a trace
  • Time averages, Little’s law three ways, stockout indicators, and the demand process

Classification Is How You Find the Machinery

A hospital stocking a drug that expires, a distributor replenishing a fast consumable from a supplier three weeks away, and a manufacturer scheduling components against next quarter’s build plan are all managing inventory, and almost nothing carries from one to the next. They share the questions, how much and when, not the machinery that answers them.

Each dimension that follows is a question whose answer eliminates some models and selects others. Notice that most modeling errors in practice are not arithmetic errors: they are a model applied to a system it does not fit.

A property of the system, not of the model

A supplier’s lead time has a distribution whether or not your model represents it as a constant. Treating it as constant is an approximation made deliberately, having judged that the decision is insensitive to the difference. It is not a discovery that the lead time is constant.

The First Two Questions

Where does demand come from? Independent demand arises outside the system, must be observed, and where uncertain is described by a distribution. Dependent demand is implied: a component’s demand follows from the schedule for the assembly that consumes it, which is already known. It should be calculated, not forecast. Answer “dependent” and the treatment is requirements planning, however the other questions fall.

Is demand known or uncertain? This is the dividing line of the course. Deterministic demand is known in advance: known does not mean constant, only that no distribution is needed. Stochastic demand must be described by a distribution, and the question changes from “what will demand be” to “how much protection against what it might be”.

No real demand is deterministic. Deterministic models are used legitimately when variability is small relative to the decision, or when the model sits inside a larger deterministic plan. The justification is the quality of the approximation, never a claim that demand is actually known.

The Remaining Seven

Dimension Alternatives What turns on it
Behavior over time Constant / time-varying; stationary / non-stationary A single order quantity, or a schedule
Review Continuous / periodic Whether an order can be placed at any instant
Lead time Zero / constant / random Exposure between ordering and receiving; order crossing
Unmet demand Backordered / lost / partial Whether net inventory can go negative
Horizon Single period / finite / infinite Whether leftover stock has a future
Items One / many independent / many coupled Whether items must be solved jointly
Locations One / multi-echelon Whether a warehouse sees customer demand or orders

Read it as a questionnaire, not a taxonomy: the left column is the question you ask of the system in front of you. Only the certainty of demand splits the course itself; review, lead time and unmet demand each appear on both sides of that split.

Which Costs the Classification Implies

If the system is… The costs that decide the answer are…
Deterministic, no shortages permitted \(k\) and \(h\) only
Deterministic, shortages permitted \(k\), \(h\), and \(b\)
Single period Overage and underage: \(c\), the salvage value, and \(\pi\); one order, so \(k\) is irrelevant
Stochastic, backordering \(k\), \(h\), and \(b\), or a service target standing in for \(b\)
Stochastic, lost sales \(k\), \(h\), and \(\pi\)
Multi-location All of the above at every location, and \(f\) where whether to stock is in question

Notice that the first row names only two parameters: a system that never runs short never realizes a shortage, so no care spent estimating one changes the answer. Notice also that \(\pi\) and \(b\) never share a row: a demand that is lost is not also backordered.

The criterion

Choose the simplest classification that preserves what the decision is sensitive to. When unsure whether a distinction matters, model it both ways and compare the recommendations.

The State: Three Counts

The state is what an observer with a clipboard could measure, knowing nothing about how replenishment is controlled. Let

  • \(I(t)\) represent the inventory on hand, units physically present and available;
  • \(\mathit{IO}(t)\) the inventory on order, ordered but not yet arrived;
  • \(B(t)\) the backorders, demanded but not yet supplied.

All three are counts and none can be negative. Two composites:

\[ \begin{aligned} \mathit{IN}(t) &= I(t) - B(t) &&\text{net inventory: ahead or behind}\\ \mathit{IP}(t) &= I(t) + \mathit{IO}(t) - B(t) &&\text{inventory position: adds what is already coming} \end{aligned} \]

On hand and backordered are never both positive

Arriving replenishments fill outstanding backorders first, so if \(I(t) > 0\) then \(B(t) = 0\), and if \(B(t) > 0\) then \(I(t) = 0\). Thus, \(I(t) = [\mathit{IN}(t)]^{+}\) and \(B(t) = [\mathit{IN}(t)]^{-}\), and no unit is ever charged both holding and backorder cost.

Lost Sales

Under lost sales, a demand that cannot be filled departs and does not return. Nothing is owed:

\[ B(t) \equiv 0, \qquad \mathit{IN}(t) = I(t) \ge 0, \qquad \mathit{IP}(t) = I(t) + \mathit{IO}(t). \]

The state collapses to two counts, and the backorder cost has nothing to multiply. In its place, let \(\lambda_\ell\) represent the rate of lost demand, and \(\overline{\mathit{FR}}_u\) the fraction of units demanded that are filled from stock:

\[ \lambda_{\ell} = \lambda\left(1 - \overline{\mathit{FR}}_{u}\right). \]

Lost demand is a flow of units past the system; backorders are a population sitting inside it. That is why the stockout price multiplies a rate while the backorder price multiplies a level.

Why Not Just Watch the Shelf?

Suppose a system reorders whenever on-hand inventory falls to some level. Stock runs down, the level is reached, an order is placed. The lead time has not elapsed, so on hand keeps falling, the trigger is still breached, and the rule orders again, and again, each time for a shortfall the first order is already covering. By the time the shipments arrive, the system is grossly overstocked.

Including \(\mathit{IO}(t)\) prevents this. Placing an order raises the position immediately, so the system orders again only when what is outstanding is no longer enough. The position is what the system will eventually have; on hand is only what it has now. Every policy in the course triggers on \(\mathit{IP}(t)\).

An \((r, Q)\) policy orders \(Q\) units whenever the position falls to the reorder point \(r\). Let \(r\) and \(Q\) be in units; the position then sawtooths between \(r\) and \(r + Q\).

An \((r, Q)\) System Over Time

Dashed: position. Solid: net inventory. Both fall at the demand rate, and they coincide while nothing is on order.

The position reaches \(r\), an order is placed, and the position jumps by \(Q\) while net inventory does not move. The two run apart for exactly one lead time \(L\).

Net inventory keeps falling through that interval and crosses zero: the shaded region is the backorders accumulating in transit. The receipt lifts net inventory by \(Q\), filling backorders first.

Thus, \(r\) does not determine when the system runs out; \(r\) measured against demand over the lead time does. Here net inventory bottoms out at \(r - \lambda L = 5 - 2(5) = -5\).

Averages Are Time Averages

Each state variable is time-persistent: it holds a value over an interval. Over an observation interval of length \(T\),

\[ \bar{I} = \frac{1}{T}\int_{0}^{T} I(t)\,\mathrm{d}t, \qquad \bar{B} = \frac{1}{T}\int_{0}^{T} B(t)\,\mathrm{d}t, \]

and likewise \(\overline{\mathit{IO}}\), \(\overline{\mathit{IN}}\), \(\overline{\mathit{IP}}\). Integration is linear and \(\mathit{IN}(t) = I(t) - B(t)\) at every instant, so \(\overline{\mathit{IN}} = \bar{I} - \bar{B}\).

These integrals are where the two halves of the course meet. In a deterministic model the integral is the area of a triangle: \(\bar{I} = Q/2\) is the area of a sawtooth divided by its base. In a stochastic model it is an expectation, or an estimate from a simulation. The quantity does not change; only the method does.

Little’s Law, Three Ways

For any system in steady state, the average number inside equals the arrival rate times the average time each spends there. Choosing what counts as “inside” generates three results:

\[ \begin{aligned} \overline{\mathit{IO}} &= \lambda\,\overline{L} &&\text{inside the pipeline for one lead time}\\ \bar{B} &= \lambda\,\overline{W} &&\text{inside the backorder queue for the customer's wait}\\ \bar{I} &= \lambda\,\overline{T}_{s} \;\Longleftrightarrow\; \mathit{TO} = \frac{\lambda}{\bar{I}} = \frac{1}{\overline{T}_{s}} &&\text{on the shelf: turnover} \end{aligned} \]

where \(\overline{W}\) is the average wait of a demanded unit, counting zero for units filled at once, and \(\overline{T}_s\) the average time a unit spends on hand.

Pipeline: no policy appears, so no policy can reduce it. Backorders: average backorders and average waiting are two views of one quantity, so a tolerable wait converts into what \(b\) multiplies. Turnover: “we turn this item four times a year” and “a unit sits here \(12/4 = 3\) months” are the same statement.

Stockout Indicators and the Demand Process

Let the stockout indicator \(\mathit{SO}(t) = 1\) when \(I(t) \le 0\) and 0 otherwise, and the ready indicator \(\mathit{RR}(t) = 1 - \mathit{SO}(t)\). Their time averages:

\[ \overline{\mathit{SO}} = \frac{1}{T}\int_{0}^{T} \mathit{SO}(t)\,\mathrm{d}t, \qquad \overline{\mathit{RR}} = 1 - \overline{\mathit{SO}}, \]

the fractions of time out of stock and in stock. \(\overline{\mathit{RR}}\) is not the fraction of demand filled, although the two are often reported as though it were.

Demand arrives as transactions: let \(t_i\) represent the time of the \(i\)th and \(D_i\) the units it requests. Over a window of length \(T\) with \(n\) transactions,

\[ \lambda = \frac{1}{T}\sum_{i=1}^{n} D_i \text{ units per unit time}, \qquad \frac{n}{T} \text{ transactions per unit time.} \]

500 units a year in five orders of 100 is a different system from 500 orders of one, with the same \(\lambda\): the first spends most of its time well stocked or badly short.

What We Did Today

Classification finds the machinery: nine questions, of which the origin of demand comes first and its certainty splits the course.

The classification says which costs matter, so settle it before estimating anything; choose the simplest one that preserves what the decision is sensitive to.

Three counts give net inventory and position; on hand and backorders are never both positive.

Policies watch the position, because watching the shelf reorders repeatedly for one shortfall.

Averages are time averages, and Little’s law turns them into pipeline stock, customer waiting and turnover.

For Next Time

Read before next session: Cost Parameters.

Today’s material was Classifying Inventory Systems and The State of an Inventory System.

Next session:

  • A rule has no cost; its behavior does: price times quantity
  • The marginality test, and which costs belong in the holding charge
  • The fixed order cost, the shortage costs, and the stocking position cost
  • How accurate the parameters need to be, and the uncomfortable half of the answer

Every cost next session multiplies one of today’s state variables. Bring them.

⌂ Index