Scheduling issues, and more generally optimization issues, are often met more than expected when building industrial simulation models.
When you imagine a manufacturing simulation model, you usually think of rather deterministic production programs, combined with conveying and handling issues. The manufacturing operation itself can be described as a sequence of tasks needing some resources, some storing space and some operators with variable shifts. An automotive assembly line or an aircraft manufacturing workshop will not be considered as difficult when regarding the scheduling perspective, since the products respect defined manufacturing sequences and are almost all identical. The purpose of production simulation in those cases is often related to cycle time affected by the resource constraints.
But there are industrial simulation models for which production scheduling is the main stake. The general effectiveness of such models is often directly linked to the skills of the person (or piece of software) having to decide what to do at what time. Here are some cases we had to achieve.
Recipee => Stock => Packing Lines
In this detergent plant, a tower elaborates the different washing product formulas. For each manufacturing phase, the global duration must be sufficient to make an important tuning time profitable. It can be required to clean equipment when changing products, depending on which reference is being finished and which other will be next.
The various products are stored and packed in quantities calculated to be the closest to demand, on multiple packing lines dealing with boxes, capsules and other packaging units.
N ovens => one mill
In metalwork industry (steel, aluminum, titanium, etc.) we often find that forming machines (mill, stamper, extruder) require products to be heated before transformation, according to a precise heating curve. The heating operation is in general much longer than the mechanical transformation following it. Thus we find an armada of ovens feeding a mill or a stamper. Simulation will use complex decision rules to choose which products will be routed through which ovens, so that the mill is always busy but at the same time minimizing energy-consuming overtime stays in ovens.
Boats transporting plant "modules" to be put together in Siberia
When building a new petrochemical site, it is common to have components manufactured in various distant sites and then transported to the final destination using costly means. When the target site is difficult to reach, sea transport costs may reveal decisive and will require tricky decisions trying to observe the construction planning while using a limited fleet efficiently.
For each of these cases, there may exist a mathematical way of finding THE optimal solution. We note that the optimization software that can be found (directly or through Operational Research consulting companies) are not able to take into account the specific constraints of each situation. We do not live in a randomless world where everything can be represented by a linear stress field of the first order!
Our approach using simulation seeks to play a scenario and to define an algorithm making a decision on the fly every time a decision is needed during the simulation time. This method is close to what is called a “voracious” algorithm in operational research. It means a way of taking decisions when necessary, without looking back on decisions already taken, and in general with little or no anticipation at all.
The method is appreciated with some contempt by Scheduling specialists: they consider that it as an easy way of looking for a local solution neglecting a global optimum. It is true, but we could argue that all scheduling methods looking for a global optimum are constrained to simplify the real situation in order to make it fit for a specific mathematical formalism and to keep acceptable computing times. The problem is that it offers a solution that is impossible to apply to real-world issues…
Obtaining a production schedule using simulation (and a local decision algorithm) is obviously not the best solution possible, but it is a way of getting the schedule while applying all the meaningful constraints. On the other hand, the rules used for the "on-the-fly" decisions are in general rather easy to formulate and explain, and therefore may be used afterwards by the person in charge of the scheduling in the plant. It is then possible to test and compare several sets of rules, and to decide which one should be chosen.
Another benefit of this kind of voracious algorithm comes precisely from local decisions taken in relation to a context: the whole decision process is not greatly affected by random phenomena.
By using such algorithms we could notice that our customers often had in mind rather complex rules hoping to optimize their decisions. They are well-intentioned in their desire to enhance the existing process, but we have experienced that simple rules were usually giving better results, and were more able to face hazards and changes in product mix.