We do not need to remember at each point in time how much material we have of each possible
age. We can assume that a first-in first-out stock policy will be adopted at the plant.
With that assumption, we just need to ensure that the amount of material in stock at any time
could have been made within the shelf-life previous to that time.
For example, given a material that expires after 3 time periods (as in the diagram above) these
additional constraints are sufficient:
(Note that initial stocks are ignored here.) We have reduced the numbers of variables and
constraints, but the new constraint will have many non-zero entries if shelf-lives are many
periods long. We can avoid this by tracking maximum permitted stock over time with a new
This maximum stock variable is applied as a variable upper bound to the stock variable.
So far we have not considered the impact of downgrading. Since downgrading is purely a
relabelling activity, which does not consume any productive capacity, we can assume that all
downgrading must occur immediately a product is made. We define a new "adjusted
production" variable, which is constrained to equal production minus the total of downgrades
out of the material, plus the total of downgrades into the material.
The new variable is bounded below by zero, which enforces the immediate downgrade rule.
Adjusted production is used in place of the production variable in the maximum stock definition
constraint above, so the appropriate shelf-life is imposed on each material from the date it was
The new model is compact and efficient.