System Simulation: A Comprehensive Guide
Elements of a System
A system comprises entities, activities, resources, and controls. These elements define the who, what, where, when, and how of system processing.
Entities
Entities are the items processed within a system, such as products, customers, and documents. They can be classified into three types:
- Human or animated (clients, patients, etc.)
- Inanimate (parts, stationery, etc.)
- Intangibles (calls, emails, projects, etc.)
Activities
Activities are tasks performed within the system, such as filling, cutting, repair, customer service, etc. Activities have a duration and generally utilize resources.
Resources
Resources are the means by which activities are implemented. Examples include personnel, equipment, tools, energy, time, and money. Resources possess characteristics like capacity, speed, reliability, and cycle time. They also define who or what performs the activity and where.
Controls
Controls dictate how, when, and where actions are performed. They also determine the action taken when certain events occur or conditions are met. At the highest level, controls exist as policies, plans, or schedules. At a lower level, they take the form of procedures or programs.
Measuring System Performance
System performance is measured by its effectiveness and efficiency in achieving its intended objectives. In many cases, targets are set based on cost-effectiveness or the utility generated by the system. Data used to determine performance measures typically include prices, costs, and quantitative system characteristics. System objectives are met when performance measures reach desired levels.
Systems Approach
Due to the interdependence of system elements, it’s impossible to understand a system’s response to each element in isolation. A systems approach is required, which considers the system as a whole, including cause-effect relationships and decision-response mechanisms.
Models
Models are abstractions of systems used to design new systems and optimize existing ones. Experimenting with the actual system can be costly, disruptive, or even impossible. Therefore, a model must be sufficiently valid to support decisions similar to those made through direct experimentation. However, simulation results, while valid, are useless if the model lacks credibility. The challenge lies in building a model that is both valid (realistic) and credible (trustworthy).
Simulation models are primarily used for descriptive analysis of system behavior over time. This analysis helps determine the conditions under which the system operates most effectively and efficiently. However, simulation models are not designed to find optimal solutions. As an experimental technique involving random events, simulation evaluates various alternatives and supports decision-making based on result comparisons.
Due to the complexity of the systems they often represent, simulation models typically employ numerical analysis methods rather than analytical ones. Most simulation models are probabilistic and tailored to the specific client.
Types of Simulation Models
Time-Based
- Static: Represents a system at a particular point in time.
- Dynamic: Represents a system over a period of time.
Variable-Based
- Deterministic: Contains no random variables.
- Stochastic: Contains one or more random variables.
Models can also be discrete or continuous, with characteristics defined by the systems they represent.
Simulation as an Operations Research Tool
Simulation allows us to understand and analyze the behavior of real or proposed systems to determine appropriate courses of action: modify, accept, or reject. It involves building a descriptive model of a real system to study its behavior over time, offering advantages such as avoiding disruption, destruction, or premature construction.
Elements of a Successful Simulation Project
According to A.M. Law and M.G. McComas (cited in Hector Vargas’s “Simulation: More than just a tool,” Vanguardia Magazine, August 1994), a successful simulation project requires:
- Knowledge of simulation methodology, probabilistic models of operations research, probability theory, and statistics.
- Correct problem formulation.
- Adequate information on system operation.
- Proper modeling of system randomness.
- Appropriate software selection and utilization.
- Model validation and credibility assessment.
- Appropriate statistical procedures for interpreting simulation results.
- Effective project management techniques.
Simulation Process Steps
The following steps provide a general guide for conducting a simulation study. The time required for each step varies depending on the system being modeled, and some projects may require additional steps.
- Strategic and Tactical Planning: Establish experimental conditions for model use.
- Problem Formulation: Define the problem and objective.
- Model Construction: Abstract the problem and gather information.
- Data Collection: Identify, specify, and collect relevant data.
- Program Development: Prepare the model for processing.
- Verification: Ensure the program functions correctly.
- Validation: Establish correspondence between the model and reality.
- Experimentation: Use the model to obtain results.
- Analysis: Draw inferences and make recommendations based on the results.
- Implementation and Documentation: Use results for decision-making and document model operation and use.
Applications and Uses of Simulation
Simulation offers numerous advantages over other tools, leading to a wide range of applications, including:
- Cost reduction
- System analysis and development
- Computer programming
- System modeling
- Experimental trial and error
- Staff training
- Pilot training
- Financial analysis (budgeting, investment analysis, cash flow)
- Marketing analysis (media planning)
- Human resource management (job mobility, personnel selection, organizational structure)
Simulation has also been used in various fields, such as biology, economics, healthcare, business, production, transportation, social sciences, and urban planning.
Factors Contributing to Increased Simulation Use
- Continuous development of simulation languages and software.
- Flexibility of simulation modeling.
Versatile Applications of Simulation
- System design
- Systems administration
- Training and education
- Communication
- Public relations
These factors have made simulation a widely used technique in scientific management, operations research, and industrial engineering.
When to Use Simulation
According to Paul Fishwick (“Simulation Model Design and Execution: Building Digital Worlds,” Prentice-Hall, 1995), simulation is recommended when:
- The system under study is complex, involving numerous variables and interacting components.
- Relationships between variables are nonlinear.
- The model includes random variables.
- A dynamic representation of model results is required.
Caveats Regarding Simulation Use
- Simulation projects can be time-consuming.
- Simulation models often require extensive data.
- Results can be misinterpreted.
- Technical and human factors may be overlooked.
- Validating simulation models can be challenging.
Random Number Generation
Simulation models often analyze decisions under uncertainty, where the behavior of one or more factors can be represented by a probability distribution. This type of simulation is sometimes called the Monte Carlo method.
Monte Carlo Simulation
: Monte Carlo Method historically was viewed as a technique to solve models using random or pseudo-random numbers. Random numbers are basically independent random variables uniformly distributed in a range from 0 to 1. Actually, what we can achieve with an electronic computer is to generate a sequence of pseudorandom numbers (seemingly random, with each digit 0 through 9 occur with almost equal probability).
The term “Monte Carlo” was introduced by Von Neumann and Ulam during World War II as a code for a secret mission at Los Alamos. Monte Carlo is a city in Monaco, famous for its gambling houses, hence the name occurred to them. At that time, the method was applied to the problems related to the atomic bomb, whose experimental tests were made precisely in Los Alamos, New Mexico.
The Monte Carlo method is used not only for stochastic but deterministic problems. This method is currently the most powerful technique commonly used to analyze complex problems.
It is important to note some differences between the Monte Carlo method and stochastic simulation:
• In the Monte Carlo method the time is not as critical as in the stochastic simulation.
• In the Monte Carlo method the observations are independent. In contrast, stochastic simulation observations are serially correlated, as experienced in relation to time.
• In the Monte Carlo method the results can be expressed simply in terms of input stochastic variations. In contrast, stochastic simulation response is usually very complicated and can be expressed only by the program.
Random Number Generation: To generate random numbers, at first using manual methods as tossing a coin, a roulette wheel, among others. These physical methods were cumbersome for general use, moreover, the sequences generated by them could not be reproduced. With the advent of computers it was easier to get random numbers. John von Neumann suggested the method “mid-square” (the mean square) using the arithmetic of a computer. His idea was to take the square of the previous random number and make the digits located in the middle. For example, if we have the number 3456, so we square and we get 11,943,936, and now our new number is 9439, and so on. These numbers are not truly random, we just seem to be, and are called pseudo-or quasi-random. Hopefully not meet with zeros because then we’d be in trouble.
The efficiency of a method for generating random numbers can be measured depending on the occurrence of numbers, if they are uniformly distributed, statistically independent and reproducible. Moreover, a method is good if the generator is fast and takes up little memory space. The following example illustrates the application of Monte Carlo Method.