Introduction to Simulations
What is a Simulation?
In general, simulation models are digital imitations of a business system. Using FlexSim, you can either build a simulation model that imitates your business system as it currently exists today or you can build a prototype of your future business system to predict its performance in the real world. (See Current State vs. Future State Models for more information about the pros and cons of building a current-state model or a future state-model.)
The purpose of a simulation model is to help you gain a deeper understanding of your business system and work on improving it holistically. Ideally, once you have built your simulation model, you will be able to experiment with different variables in order to better optimize your system. You could also use your simulation model to test how your business system responds to changing conditions.
However, you might find that even going through the work of gathering data to create your simulation model will give you some valuable insights in their own right. In the process of gathering data about your system, you will get a first-hand view of your system by making real observations in real time talking to real people. Those insights alone might help you identify ways to optimize your business system in a way you hadn't been able to see before.
What are Discrete Event Simulations?
FlexSim uses the discrete event simulation paradigm. Discrete event simulations are represented by a series of chronological events, which cause corresponding changes to the state of objects in the system. These events occur in real time (in the simulation) during a simulation run. You can then measure these events and states to gather useful metrics (statistics and other data) about the system that you are simulating. You can use this information to measure the effectiveness of possible changes to your business system.
For example, imagine you are building a simulation of an assembly line for car steering wheels and you are interested in determining whether your assembly line is running at its optimal efficiency level. In this simulation, a series of parts will arrive at a welding station. You might represent the welding station using a processor (a type of 3D object that simulates the time it takes to process a particular product) and an operator (the employee who needs to operate the welding machine).
The arrival of the parts at the welding station would be an event. This event triggers the processor and operator to begin welding the parts together. Before the parts arrive, both the processor and operator might be idle, which is the specific state they are in before the parts arrive. After the parts arrive and the processor begins to weld the parts, the processor's state changes to processing (because it is processing the parts) and the operator's state changes to utilize (because the employee is being used). After the processor and operator finish welding the parts, the processor and operator return to their idle state.
You can use then use these states to gather useful metrics about the efficiency of the assembly line. Perhaps you've decided that the key metrics you are interested is the frequency that the processor and operator were idle as opposed to how frequently they were being utilized or processing. These metrics can help you determine whether your welding station and your employees were being under- or over-utilized:
- If your welding station and employees are being under- or over-utilized, it could mean that you haven't yet found the most efficient balance of resources in your business system to match customer demand.
- If your resources are over-utilized, you could have a bottleneck at that point in the assembly line.
You could then experiment by increasing the number of welding stations and employees. If your resources are under-utilized, you could analyze your business system to determine if there are bottlenecks earlier in the assembly line or if there are currently too many welding stations or employees.
What Simulations Can and Can't Do
In summary, it's important to have realistic expectations for what simulations can and cannot accomplish. Simulations can:
- Help you see your business system more holistically, overcoming the silo effect that plagues many business operations.
- Generate useful metrics (statistics, data, and other useful outputs) that can help you make key business decisions.
- Help you experiment with different variables or conditions in your simulation model to determine the optimal configuration.
But simulations cannot:
- Reverse engineer the solution to your business system.
- Identify which key metrics (outputs) are important to determining whether your business system is succeeding or not.
At the end of the day, it's important for you to determine your project goals and identify the key metrics you will use to evaluate your simulation model. These topics and other best practices will be discussed in more detail in the next topics.