TOC in Operations – Advanced · Lesson 2 of 12

When the mix moves the constraint

A weaving plant takes orders as they come, and its products flow at different speeds. A small change in mix moves the constraint, and every quoted date goes wrong. Split the constraint into sub-constraints by a healthy mix, then deal with the case where two resources together decide the output.

22 min · Not completed yet

The situation

A textile plant works mostly to order. As in most make-to-order businesses, sales can’t choose its orders: it books them as they come. And the products don’t all flow at the same speed. A linen order takes five times as long on the warping machines as a cotton order; on the looms it takes twice as long.

The plant implemented the standard solution. Weaving was identified as the constraint, due dates were quoted by loading the looms chock-a-block, the release was choked and buffer management ran every day. On-time delivery rose. Then it began to swing: good for a few weeks, bad for a few, though nobody had stopped following the procedures.

At the original 80:20 mix, both resources are loaded about 90% and weaving is slightly ahead: weaving is the constraint, and the dates are quoted from its load. At 70:30 warping needs 220 hours out of 200. The constraint has moved, and nobody was told. Dates quoted from the looms’ load are now too optimistic, orders queue at warping, and the buffer colours go red for reasons that have nothing to do with the floor.

Pause and think: sales can’t refuse orders and can’t choose the mix. Is there any mix the plant can protect?

  • Its output: the plant can keep each week’s output near a healthy mix, even if orders arrive in another
  • No: the plant can only follow whatever sales books, so the constraint will always move with the orders
  • Only the mix of its raw materials, which is decided by purchase at the start of each month

Orders arrive in any mix; the plant decides what it loads. If the load is planned to a mix that keeps the constraint in one place, the queue absorbs the variation, and quoted dates become longer for whichever family is in excess.

Sub-constraints

The solution has three parts.

  1. Decide a healthy mix: one that doesn’t shift the constraint. Here, 80:20.
  2. Divide the constraint’s capacity into sub-constraints, one per product family, in that mix. Of the looms’ 130 hours a week, about 90 go to cotton and 40 to linen.
  3. Keep a separate front-of-load for each sub-constraint, assign each order to one, and quote its date from that sub-constraint’s load.
Load Capacity Load in days Quoted date
One constraint, one load
Weaving 390 h 130 h a week 21 today + half buffer + 21
Two sub-constraints
Weaving, cotton 230 h 90 h a week 18 today + half buffer + 18
Weaving, linen 160 h 40 h a week 28 today + half buffer + 28

With one load, a linen order is promised in 21 days though linen work alone has four weeks of looms booked. With two, cotton customers get a shorter date and linen customers a longer but honest one. Orders still arrive in any mix, but the plant’s output stays close to 80:20, and the constraint stays where the plan assumes it is.

The negative branch: an idle sub-constraint

Dividing capacity creates a new risk. When there are no linen orders for a while, the 40 linen hours sit idle, and constraint time lost is lost for the whole plant.

The answer is dynamic release, driven by the short-term planned load: the work already released but not yet through the constraint. Watch it for each sub-constraint every day. When one runs low, release the other family’s next orders earlier, so the looms never starve. Keep a healthy short-term planned load in every sub-constraint and starvation doesn’t happen; the split governs the quoted dates, not the looms’ hour-by-hour work.

When two resources decide the output together

A maker of storage racks had a different version of the same problem. Its flow ran from cutting through metal forming and welding to two paint booths; part of the work went to subcontractors.

  • The paint booths were treated as the constraint. Dates were quoted by loading their capacity, and releases were set from the due date minus the buffers.
  • But the beam-forming machine, one of the metal-forming machines, kept stopping: about 1.5 hours of set-up for every change of beam profile; no trolleys free to hold the formed beams; welded beams out of step with the paint booth’s colour slots.
  • The beam line decided most of the month’s tonnage, so every stoppage hit output.

Neither resource was the constraint on its own. The output depended on the beam-forming machine and its synchronisation with the paint slots: an interactive constraint. Releasing beams by date alone kept either flooding or starving the line.

The solution kept the dates and changed the rope for one line only:

  • Due dates still came from the paint booths’ front-of-load.
  • Other lines and the subcontractors were released daily by their release dates.
  • The beam line was released by a work-in-process limit: a constant 1,200 beams released to cutting and not yet past welding. Every beam that left welding allowed one new beam in.

Output rose about 30%, from 1,600 to 2,100 tons a month, and due-date performance from 20% to over 85%.

Pause and think: why release the beam line by a fixed number of beams in process, rather than by the date?

  • Because the beams are all the same, so their due dates don’t matter to anyone
  • Because the paint booth needs exactly 1,200 beams a day to fill its colour slots
  • Its rate varies, so a fixed quantity in process keeps it fed without flooding it

When a resource’s rate is unpredictable, a date-based rope releases at the planned rate, not the real one. A constant work-in-process limit ties release to actual output, which is the essence of a rope.

Check your understanding

Answer all five. Get four right to complete the lesson.

1. On-time delivery swings although every procedure is followed. A likely cause is…

  • Operators ignoring the colour priority
  • A product-mix change that moved the constraint
  • A buffer that is far too long for this plant
  • Too many daily meetings

Dates quoted from the old constraint’s load are wrong once the constraint moves.

2. A sub-constraint is…

  • A second machine bought to support the constraint
  • A resource with a little less load than the constraint, ready to take over
  • A smaller buffer inside the shipping buffer
  • A share of the constraint’s capacity set aside for one product family

Each sub-constraint has its own front-of-load and quotes its own dates.

3. With sub-constraints, a linen customer is quoted 28 days instead of 21. Why is this better?

  • The 28 days reflect the linen work already booked, so the date can be kept
  • Linen customers are less important
  • Longer dates always look more professional and reduce the customer’s complaints
  • It forces linen customers to order earlier

An honest date beats a short one that the plant cannot keep.

4. A sub-constraint has no orders for a week. What prevents lost constraint time?

  • Closing that share of the looms until orders return
  • Moving the healthy mix every week to match the orders
  • Dynamic release, watching each sub-constraint’s short-term planned load
  • Building linen stock to a forecast, so the linen share of the looms is always busy

Release the other family earlier when one runs short, so the constraint never starves.

5. In the storage-racks plant, the beam line was released by…

  • The paint booths’ colour slots for the week
  • A constant work-in-process limit of 1,200 beams
  • Release dates, like the other lines
  • The tonnage target for the month

An interactive constraint with an unpredictable rate is roped by quantity in process, while dates still come from the paint booths.