When Items Compete for a Scarce Resource

Manuel D. Rossetti, PhD P.E.

Agenda

  • Three ways items stop being independent
  • Checking whether the constraint binds, which is free
  • Moving a constraint into the objective
  • What the multiplier means, in dollars
  • Why a budget rescales and floor space reallocates

Everything So Far Decided One Item

The general cycle kept every assumption that made an item easy, and the easiest of them all was that each item could be decided on its own.

Take that away and items couple. There are three ways, and they need three different kinds of mathematics.

Coupling What is shared How it is solved
Shared resource A budget, a floor, a dock Move the constraint into the objective
Shared setup One order, one truck Impose structure on the schedule
Echelon structure One stock replenishes another Fix the accounting first

Today: the first.

Writing the Problem Down

  • \(n\) items, indexed \(j\)
  • \(\lambda_j\), \(c_j\), \(k_j\), \(h_j = ic_j\) as before
  • \(Q_j\), what we are choosing

\[ \min\ C = \sum_{j=1}^{n}\left[\frac{k_j\lambda_j}{Q_j} + \frac{h_j Q_j}{2}\right] \]

Subject to a limit on something shared:

\[ \sum_{j=1}^{n} a_j Q_j \le A \]

\(a_j\) is what one unit of item \(j\) consumes of the scarce resource.

Two Constraints, One Derivation

Space. \(a_j\) is the floor space one unit occupies and \(A\) is the space available, because immediately after a replenishment there are \(Q_j\) units on the floor.

Budget on average investment. The average on-hand level is \(Q_j/2\) and its value is \(c_jQ_j/2\), so

\[ a_j = \frac{c_j}{2} \]

Same form, different coefficients. One derivation covers both.

One Constraint That Is Different

A limit on replenishments is not linear:

\[ \sum_{j=1}^{n} \frac{\lambda_j}{Q_j} \le A \]

Consumption falls here as the quantities rise, instead of growing with them.

Different problem. We take it up once the linear case is settled, and the answer turns out to be pleasantly similar.

Step Zero, Which Is Free

The objective is separable: a sum of terms, each involving one item’s quantity. Each term is convex, and a sum of convex functions is convex.

So in the absence of the constraint, each item is just an EOQ.

  1. Solve the unconstrained problem, item by item
  2. If \(\sum_j a_j Q_j^{*} \le A\), stop. The constraint is inactive and the unconstrained answer is the answer
  3. Otherwise solve with the constraint imposed as an equality

Step 2 is easy to skip and expensive to skip. A constraint that does not bind changes nothing, and all the machinery that follows is needed only when the resource runs out.

Why We May Use Equality

The objective is convex.

If the unconstrained optimum violates the limit, then the constrained optimum sits on the boundary of the feasible region.

On that boundary the inequality holds with equality.

So the problem we actually solve is an equality-constrained one, which is what makes Lagrange multipliers apply.

Moving the Constraint Into the Objective

Attach a single scalar \(\theta\) to the constraint, whatever the number of items:

\[ L(\vec{Q}, \theta) = \sum_{j}\left[\frac{k_j\lambda_j}{Q_j} + \frac{h_j Q_j}{2}\right] + \theta\left[\sum_{j} a_j Q_j - A\right] \]

The bracketed term is zero whenever the constraint holds as an equality.

So at any feasible point on the boundary, \(L\) and \(C\) agree, and minimizing \(L\) is a legitimate substitute for minimizing \(C\).

Setting the Derivatives to Zero

\[ \frac{\partial L}{\partial Q_j} = -\frac{k_j\lambda_j}{Q_j^{2}} + \frac{h_j}{2} + \theta a_j = 0 \]

Solving for each quantity:

\[ Q_j(\theta) = \sqrt{\frac{2k_j\lambda_j}{h_j + 2\theta a_j}} \]

That is the ordinary EOQ with \(h_j\) replaced by \(h_j + 2\theta a_j\).

The multiplier acts as a surcharge on holding, charged in proportion to how much of the scarce resource a unit consumes.

Finding the Multiplier

Substitute back into the constraint and you have one equation in one unknown:

\[ R(\theta) = \sum_{j} a_j\sqrt{\frac{2k_j\lambda_j}{h_j + 2\theta a_j}} - A \]

Every term decreases as \(\theta\) increases, so \(R\) is strictly decreasing.

At \(\theta = 0\) it is positive, because that is precisely the case where the unconstrained quantities violate the limit. It tends to \(-A\) as \(\theta\) grows.

So there is exactly one root \(\theta^{*} > 0\), and bisection finds it.

The whole procedure is a one-dimensional search wrapped around a formula.

Three Items, One Capital Account

Each costs $50 to order; carrying charge 30% per year.

Item \(\lambda_j\) \(c_j\) \(h_j\) \(Q_j^{*}\) unconstrained
1 12,000 $20 $6.00 447.21
2 25,000 $10 $3.00 912.87
3 8,000 $15 $4.50 421.64

Relevant cost $7,319.26 a year, and average investment

\[ 20\frac{447.21}{2} + 10\frac{912.87}{2} + 15\frac{421.64}{2} = \$12{,}198.77 \]

Does It Bind?

Management will fund $10,000.

\[ \$12{,}198.77 > \$10{,}000 \]

Active. The unconstrained answer is not available.

Under a budget, \(a_j = c_j/2\), so the surcharge \(2\theta a_j\) becomes \(\theta c_j\):

\[ Q_j(\theta) = \sqrt{\frac{2k_j\lambda_j}{h_j + \theta c_j}} \]

Bisection, and the Answer

\[ \theta^{*} = 0.14643 \]

Item \(Q_j\) Ordering Holding
1 366.61 $1,636.64 $1,099.82
2 748.33 $1,670.39 $1,122.50
3 345.64 $1,157.28 $777.69
Total $4,464.30 $3,000.00

The Arithmetic Check

Notice the holding total is exactly $3,000.

\[ 0.30 \times \$10{,}000 = \$3{,}000 \]

The constraint fixed the investment, so it fixed the holding cost with it. The two numbers must agree.

Perform that check every time a budget constraint is solved. It catches an error in either the multiplier or the quantities immediately.

And the investment itself comes to exactly $10,000, as an active constraint requires.

A Property That Will Not Hold

Ordering and holding are no longer equal: $4,464.30 against $3,000.00.

At an unconstrained optimum they are equal. That fails here, as it must, because these quantities do not minimize the unconstrained cost.

If you check a constrained solution by looking for balanced costs, you will conclude wrongly that something is broken.

What the Limit Costs

Relevant cost rises to $7,464.30.

\[ \$7{,}464.30 - \$7{,}319.26 = \$145.04, \text{ or } 1.98\% \]

That is the price of holding $2,199 less in stock.

When someone proposes tightening or relaxing the working capital account, $145.04 is the figure that belongs in the conversation.

Be prepared to supply it, rather than merely complying with the limit.

A Budget Rescales, and Does Not Reallocate

With \(h_j = ic_j\), every constrained quantity is the unconstrained one times the same factor:

\[ \frac{Q_j(\theta)}{Q_j^{*}} = \sqrt{\frac{i}{i + \theta}} \]

Here: \(\sqrt{0.30/0.44643} = 0.8198\), and

\[ \frac{366.61}{447.21} = \frac{748.33}{912.87} = \frac{345.64}{421.64} = 0.8198 \]

The unconstrained solution already had the items in the right proportion. The constraint asks only that everything be smaller.

That Is Specific to a Budget

It happens because the constraint’s coefficients, the \(c_j\), are the same things that already appear in the holding term.

A space constraint’s coefficients have nothing to do with value. It reallocates.

So does a limit on replenishments, because a constant added to unequal ordering costs changes them unequally. Which we can now show.

The Same Items, a Different Limit

Same demands, same unit costs, same carrying charge. This time the items differ in what they cost to order, and the limit falls on the receiving dock.

Item \(\lambda_j\) \(k_j\) \(Q_j^{*}\) Orders per year
1 12,000 $50 447.21 26.83
2 25,000 $20 577.35 43.30
3 8,000 $80 533.33 15.00
Total 85.13

The dock can process 50. Active.

The Multiplier Enters Somewhere Else

Under a limit on replenishments, \(\theta^{*}\) is added to the ordering cost, not to the holding rate, and it carries units of dollars per order.

\[ \theta^{*} = \$64.33 \text{ per order} \]

Item Effective \(k_j + \theta^{*}\) \(Q_j\) Orders \(Q_j/Q_j^{*}\)
1 $114.33 676.25 17.74 1.5122
2 $84.33 1,185.53 21.09 2.0534
3 $144.33 716.36 11.17 1.3432
Total 50.00

Read the Last Column

Every quantity has grown, as ordering less often requires.

But they have not grown together.

Item 2, whose $20 ordering cost is most changed by an addition of $64.33, more than doubles. Item 3 grows by only a third.

The dock’s capacity has redistributed the quantities as well as lengthening them. That is reallocation, and it is what a budget constraint does not do.

The check is the same shape: each \(Q_j\) is an ordinary EOQ computed with the effective ordering cost in column two.

\[ \sqrt{\frac{2(114.33)(12{,}000)}{6}} = 676.25 \quad\checkmark \]

What the Dock Limit Costs

Annual cost rises to $7,621.27.

\[ \$7{,}621.27 - \$6{,}815.33 = \$805.93, \text{ or } 11.83\% \]

One more replenishment per year would save about $64.

That is the figure you carry to whoever decides whether to add capacity at the dock.

The Multiplier Is the Economics

\(\theta^{*}\) is a shadow price: the rate at which relaxing the limit reduces cost.

It says what another dollar of budget, or another square foot, or another dock slot, is worth.

And it says when it stops being worth asking for: when \(\theta^{*}\) falls to zero, the constraint has stopped binding.

Where It Enters Depends on the Constraint

Constraint Where \(\theta^{*}\) goes Its units
Limit on stock Added to the holding rate per year
Limit on replenishments Added to the ordering cost dollars per order
Fixed investment target, no holding cost in the objective It becomes the carrying charge per year

Keep these three separate. The third case surprises people: where management fixes an investment target and holding cost never appears, the multiplier is the implied carrying charge, and reading it tells you what the organization’s own behavior asserts about the cost of capital.

What We Did Today

Three kinds of coupling, three kinds of mathematics. Today was the shared resource.

Check whether it binds first. It is free, and skipping it is expensive.

The multiplier is a surcharge on holding, proportional to what a unit consumes of the scarce thing.

A budget rescales; space and dock limits reallocate. 0.8198 three times over, against 1.51, 2.05, and 1.34.

\(\theta^{*}\) is a price. $145 a year for a $10,000 cap. $64 for one more order slot.

For Next Time

Read before next session: The Exchange Curve.

Next session we stop solving for a point and look at the whole frontier.

  • What an operating point implies about a firm’s own costs
  • Why aggregate investment and order frequency cannot be chosen separately
  • Reading a firm’s practice backwards to recover the cost ratio it is asserting
  • The variety index, and what it says about a portfolio

The multiplier you met today is about to become an axis.

⌂ Index