Let's consider an industrial manufacturing example where we will build a model which has numerical, not graphical, output. Terms such as ``computer-integrated manufacturing" (CIM) and ``flexible manufacturing" guide the development of more productive plant configurations for building products from raw material. We introduce the following categories and definitions:
Figure 3 shows a sample manufacturing system containing nine parts. This type of drawing is essentially a schematic defining the overall structure of the system but lacking details on dynamics and geometry. The raw stock arrives from the left via a central conveyor. At this point, the material stock is a cylinder shape. The cylinder parts are loaded into a spiral accumulator (A) which holds parts for the pick-and-place robot (R) until both it and the lathe (L) are ready. Once both are ready to work with the part, the cylinder is turned into a barbell shape by the lathe and sent on toward a second spiral accumulator using a conveyor belt. A second robot also performs a pick-and-place operation and hands the barbell part to a drill machine (D) which punches a longitudinal hole through the part. That is the final product part, which proceeds to a small storage bin taken by the AGV which runs around a closed track while dropping the bin contents into longer-term storage. This type of application involves discrete parts flowing through a network of resources. The resource constraints and network flow suggests the use of a Petri net to model the system as in Fig. 4.
Figure 3: Manufacturing line with two robots and two machines..
Figure 4: Petri net model for manufacturing line.
Figure 4 is the mathematical model for the system and is categorized as a declarative model (i.e., the Petri net sub-states and events are visible and emphasized in the model structure). In a nutshell, a Petri net operates by having tokens (the black circles) flow through the network while encountering resources (lathe,drill press, robot arm, AGV). Each resource operates or ``processes" a token as it passes by. This is the specification that we need to encode in the form of a program and then execute on a computer. There are many Petri net simulators to be found. One such simulator is a tool within SimPack (See section SIMPACK SIMULATION TOOLKIT), which is a toolkit for exploring mathematical modeling and simulation. Once simulated, this Petri net can yield data which is subject to analysis (the third sub-field of computer simulation). The types of analysis methods for simulations are plentiful. For our manufacturing example, we may simply want to analyze the throughput of the system as a whole to determine how many parts can be processed in one hour. Actually, we pre-determined our use of a Petri net model because we knew ahead of time that we wanted throughput information. If we had wanted, say, information on the stability of the robot arm controller then a Petri net would not have served our purpose. Moreover, if our Petri net model has a stochastic element (i.e., it uses random variates) then it is vital to make many simulation runs of the same model but with different samples; otherwise, we will not know the accuracy (measured by a confidence interval) associated with the simulation output.