I ran across an interesting article in the National Provisioner about Optimization. While the article has a lot of truth to it, it is in a lot of ways incorrect and misleading. It starts already with the definition of Optimization as stated in the article. The optimal use of a resource or material is actually the optimum or the result of an optimization, but an optimization is the (mathematical) process of finding the best solution for a given problem.
We all like to optimize and it is always a key buzzword in management meetings and software presentations. There is nothing wrong with optimization, but the biggest challenge for optimization is a lot of times not the software, it is the definition of the problem itself. Let me illustrate this at an example: to get from San Diego to L.A., the fastest way will be a direct line of about 100 miles. This is true as long as I don’t through other constraints on the problem. If the constraint is ‘by car’, I need to use roads, which naturally means I cannot use the straight line, because no road like that exists (except in North Dakota). I can also add other goals to the optimization, such as ‘fastest’ instead of ‘shortest’ which will take a longer road to get to the destination quicker.
The challenge for any optimization is that you can only optimize one goal (fastest or shortest, you can artificially balance the two, but it would be still only one goal), based on a set of (unlimited) constraints and a set of (unlimited) possibilities. It easy can happen, that an optimization cannot be solved, because the constraints limit a possible solution outside of the possibilities (available solutions). This are the key principles of optimization software. Certain standard software algorithms like the Simplex Algorithm are well described and popular mathematical approaches for these problems. Software that has such an algorithm is sometimes referred to as ‘Optimization Engine’.
What you feed into these optimization engines is entirely up to you or your software vendor. Whether the optimization software looks into the rearview mirror or through the windscreen on what is coming, is entirely up to the problem definition. The key problem of inventory optimization is already in the term itself. If you optimize inventory, your options are already pretty limited. If something is in your inventory already, your options are: storing more, consuming, selling, using or worse like reworking or discarding. The best optimization options at this point are already eliminated, since you cannot optimize purchasing (spent less) or optimize manufacturing processes (make more effective use). In any case, you can define optimization problem that tell you best solutions for the future, such as what raw materials I should buy to make a certain sausage at least costs (least cost formulation software).
Another common issue is, that people try to optimize things that cannot sometimes be optimized, like costs. Costs for commodities are a given, and the only thing you may be able to optimize is profitability by optimizing sales prices in conjunction with your product mix. I normally flush these ideas out of food companies when I discuss reporting: If you have reports that do not lead to deterministic action, kill the report. Don’t even think about optimization.
The issue with optimization software is not that the software does not exist. The problem is the people and organizations that optimize the symptoms, not the underlying issues and problems.