Modeling and Simulation(An Introduction)
The Nature of Simulation • Conceptions • Application areas • Impediments
Conceptions • Simulation course is about techniques for using computers to imitate or simulate the operations of various kinds of real world facilities or processes. • A simulation is the imitation of the operation of a real-world process or system over time. Steps include • Generating an artificial history of a system • Observing the behavior of that artificial history • Drawing inferences concerning the operating characteristics of the real system
Conceptions • Use the operation of a bank as an example: • Counting how many people come to the bank; how many tellers, how long each customer is in service; etc. • Establishing a model and its corresponding computer program. • Executing the program, varying parameters (number of tellers, service time, arrival intervals) and observing the behavior of the system. • Drawing conclusions: increasing number of tellers; reducing service time; changing queuing strategies; etc.
Conceptions • The behavior of a system as it evolves over time is studied by developing a simulation model. • A model is a set of entities and the relationship among them. For the bank example: entities would include customers, tellers, and queues. Relations would include customers entering a queue; tellers serving the customer; customers leaving the bank. • Once developed, a model has to be validated. There are many different ways to validate a model: observation (measurement); analytical model comparison (analysis).
Application areas • Designing and analyzing manufacturing systems • evaluating military weapons systems or their logistics requirements • determining hardware requirements or protocols for communication networks • Determining hardware and software requirements for a computer system • Designing and operating transportation systems such as airports, freeways, ports and subways
Application areas • Evaluating designs for service organizations such as call centers, fast-food restaurants, hospitals, and post offices. • Reengineering of business processes • Determining ordering polices for an inventory system • Analyzing financial or economic systems.
Impediments • Models used to study large-scale systems tend to be very complex, and writing computer programs to execute them can be an arduous task indeed. (excellent software products) • Large amount of computer time is sometimes required. (cheaper and faster computer) • An unfortunate impression that simulation is just an exercise in computer programming, albeit a complicated one. (attitude, simulation methodology)
Systems, Models & Simulation • System is defined to be a collection of entities, e.g., people or machines, which act and interact together toward the accomplishment of some logical end. • System depends on the objectives of a particular study. • State of a system: collection of variables necessary to describe a system at a particular time, relative to the objectives of a study. (the number of busy tellers, the number of customers in the bank, the time of arrival of each customer in the bank) • Types of systems: Discrete and continuous.
Continue... • discrete system: the state variables change instantaneously at separated points in time. (a bank, e.g., the number of customers in the bank) • continuous system: the state variables change continuously with respect to time. (an airplane moving through the air, e.g., position and velocity ) • Many systems are partly discrete, partly continuous • Study on a system: try to gain some insight into the relationships among various components, or to predict performance under some new conditions being considered. • Ways to study a system:
Example • One study on a bank to determine the number of tellers needed to provide adequate service for customers who want just to cash a check or make a savings deposite, the system can be defined to be that portion of the bank consisting of the tellers and the customers waiting in line or being served. • If the loan officer and the safety deposite boxes are to be included, the definition of the system must be expanded in an obvious way.
Systems, Models & Simulation • Classification of simulation models • Static vs. dynamic • Deterministic vs. stochastic • Continuous vs. discrete • Most operational models are dynamic, stochastic, and discrete – will be called discrete-event simulation models
Types of Simulation
Model Classifications • deterministic (input and output variables are fixed); • stochastic (at least one of the input or output variables is probabilistic); • static (time is not taken into account); • dynamic (time-varying interactions among variables are taken into account).
System Terminology: • State: • A variable characterizing an attribute in the system such as level of stock in inventory or number of jobs waiting for processing • Event: • An occurrence at a point in time which may change the state of the system, such as arrival of a customer or start of work on a job.
System Terminology: • Entity: • An object that passes through the system, such as cars in an intersection or orders in a factory. Often an event (e.g., arrival) is associated with an entity (e.g., customer). • Queue: • A queue is not only a physical queue of people, it can also be a task list, a buffer of finished goods waiting for transportation or any place where entities are waiting for something to happen for any reason.
System Terminology: • Creating: • Creating is causing an arrival of a new entity to the system at some point in time. • Scheduling: • Scheduling is the act of assigning a new future event to an existing entity.
System Terminology: • Random Variable: • is a quantity that is uncertain, such as interarrival time between two incoming flights or number of defective parts in a shipment. • Random Variate: • is an artificially generated random variable.
System Terminology: • Distribution: • is the mathematical law which governs the probabilistic features of a random variable.
Example: • Building a simulation gas station with a single pump served by a single service man • assume that the arrival of cars as well as their service times are random
Solution (1): • At first identify the: • states • events • entities • queue • random realizations • distributions
Solution (1): • after identification of the different system requirements, you will come up with the different values: • states: • Number of cars waiting for service, number of cars served at any moment • events: • Number of cars, start of service, end of service • entities: • cars
Solution (1): • queue • The queue of cars in front of the pump, waiting for services • random realizations: • inter-arrival times, service times • distributions: • assume exponential distribution for both inter-arrival time and service time
Solution (2): Arrival Routine
Solution (2): Departure Routine