INTRODUCTION TO SIMULATION Jerry Banks Brooks Automation, AutoSimulations Division Atlanta, GA 30067, U.S.A.
ABSTRACT This introduction begins with an example of simulation done by hand. Modeling concepts in simulation are then introduced based on the example. Next, theadvantages and disadvantages of simulation are discussed. The introduction ends with a discussion of the steps in a simulation study. 1 DEFINITION OF SIMULATION
Simulation is the imitation of the operation of a real-world process or system over time. Simulation involves the generation of an artificial history of the system, and the observation of that artificial history to draw inferences concerningthe operating characteristics of the real system that is represented. Simulation is an indispensable problem-solving methodology for the solution of many real-world problems. Simulation is used to describe and analyze the behavior of a system, ask “what if” questions about the real system, and aid in the design of real systems. Both existing and conceptual systems can be modeled with simulation. 2SIMULATION EXAMPLE
Consider the operation of a one-teller bank where customers arrive for service between one and ten minutes apart in time, integer values only, each value equally likely. The customers are served in a time between one and six minutes, also integer valued, and equally likely. Restricting the times to integer values is an abstraction of reality, since time is continuous, butthis aids in presenting the example. The objective is to simulate the bank operation, by hand, until twenty customers are served, and to compute measures of performance such as the percentage of idle time, the average waiting time per customer, and so on. Admittedly, twenty customers is far too few to draw conclusions about the operation of the system for the long run, but by following this example,the stage is set for further presentations in the introductory tutorials at WSC. To simulate the process, random interarrival and service times need to be generated. Assume that the
interarrival times are generated using a spinner that has possibilities for the values 1 through 10. Further assume that the service times are generated using a die that has possibilities for the values 1 through 6.Table 1 is called an ad hoc simulation table. The setup of the simulation table is for the purpose of this problem, but does not pertain to all problems. Column 1, Customer, lists the 20 customers that arrive to the system. It is assumed that Customer 1 arrives at time zero, thus a dash is indicated in Row 1 of Column 2, Time between Arrivals. Rows 2 through 20 of Column 2 were generated usingthe spinner. Column 3, Arrival Time, shows the simulated arrival times. Since Customer 1 is assumed to arrive at time 0, and there is a 5 minute interarrival time, Customer 2 arrives at time 5. There is a 1 minute interarrival time for Customer 3, thus, the arrival occurs at time 6. This process of adding the interarrival time to the previous arrival time is called bootstrapping. By continuing thisprocess, the arrival times of all 20 customers are determined. Column 4, Service Time, contains the simulated service times for all 20 customers. These were generated by rolling the die. Now, the simulation of the service process begins. At time 0, Customer 1 arrived, and immediately began service. The service time was 2 minutes, so the service period ended at time 2. The total time in the systemfor Customer 1 was 2 minutes. The bank teller was not idle since the simulation began with the arrival of a customer. The customer did not have to wait for the teller. At time 5, Customer 2 arrived, and immediately began service as shown in Column 5. The service time was 2 minutes so the service period ended at time 7 as shown in Column 6. The bank teller was idle from time 2 until time 5, so 3...