Discrete-event Simulation
What is Discrete-event Simulation?
Discrete-event simulation is a powerful analytical modeling technique used to simulate and analyze complex systems where events occur at distinct points in time. Each event—such as customer arrivals, machine breakdowns, or task completions—represents a change in the system's state. This method is widely used in industries like manufacturing, logistics, healthcare, and service management to optimize processes, predict outcomes, and improve efficiency.1
The Basic Idea
You’re sitting at the airport, watching the stream of frantic passengers drop their checked bags on seemingly infinite conveyor belts, rush towards security, form disorderly lines, get yelled at by grumpy TSA officers, and eventually board their planes, which all somehow manage to take off and land without running into each other. You can’t help but wonder, how do all of these complicated processes manage to go (somewhat) smoothly? Each of these activities represents an event that alters the airport's complex operations. To understand how each event in the airport system functions and to see how potential changes to the system might improve the generally chaotic airport experience, it would be helpful to recreate the system virtually.
Discrete-event simulation is one method used to virtually model and analyze systems or processes (such as the frenzy of activity at an airport) where changes happen at specific, distinct points in time. The core idea behind discrete-event simulation is to represent a system as a collection of entities with attributes, such as passengers and their boarding times, and simulate how distinct events affect how these attributes change over time. The state of the system is represented by the combination of all attributes at any moment, such as the number of people waiting in line or planes on the runway. Events like a new passenger arriving or a plane taking off trigger changes in the overall state. By observing these transitions, discrete-event simulation provides insights into how systems function and where bottlenecks or inefficiencies might arise.1,2
One of the key advantages of discrete-event simulation is its flexibility: it can model virtually any system where there are distinct events happening at particular moments rather than continuously. Businesses often use these simulations to optimize operations.1 For example, a retail store might simulate customer flow during peak hours to decide how many cashiers are needed, and healthcare systems could use simulations to improve patient wait times in emergency rooms. By experimenting with different scenarios using a simulation, decision-makers can test ideas virtually before they take risks that could disrupt real-world operations.
While this may sound complex to configure, user-friendly software has made these tools accessible even to those of us who aren’t technically oriented. These tools allow you to define the system's components, set rules for how events occur, and visualize results through graphs or animations. The power of discrete-event simulation lies in its ability to mimic real-life variabilities—like random customer arrivals or equipment breakdowns—and provide data-driven solutions. This makes it a vital tool for improving efficiency and understanding dynamic processes across industries.1
- Over the last decades, Discrete Event Simulation has conquered many different application areas. This trend is, on the one hand, driven by an ever wider use of this technology in different fields of science and, on the other hand, by an incredibly creative use of available software programs through dedicated experts.
- — Steffen Bangsow, author of Use Cases of Discrete Event Simulation3
Key Terms
Entity: A distinct object or component within the system that interacts with other components or evolves over time. Entities can include physical objects (e.g., machines, people) or conceptual items (e.g., orders, tasks).2
Attribute: A property or characteristic of an entity or the system as a whole. For example, if a customer is considered an entity in the system, they may have attributes such as their arrival time or service time, which is the total length of time the customer spends inside the process.2
System: A collection of entities with certain attributes that interact with one another. In discrete-event simulation, the system represents the real-world process or operation being simulated (e.g., a hospital, factory, or customer service queue).2
State: A collection of attributes representing the system's entities at a specific point in time. The state of the system changes as events occur, reflecting updates in conditions or statuses.2
Event: An occurrence at a specific point in time that may alter the system’s state. For example, this could be an equipment failure, a new request for service, or a traffic light change. Events are the primary drivers of state changes in discrete-choice simulations.2
Queue: A waiting line where entities temporarily reside until a specific condition is met or a resource becomes available. This could be a literal line that people wait in to check out at a store or patients awaiting their next medication injection while at a hospital. Queues are often used to model delays or bottlenecks in the system.2
Simulation Clock: A virtual clock used to track the progression of time within the simulation. It determines the sequence of events and the intervals between them.2
Resource: A component or asset required for entities to progress or complete tasks. Examples include personnel, machines, or service stations.2
Performance Metrics: Quantitative measures used to evaluate the efficiency or effectiveness of the system being simulated. Common metrics include average waiting time, resource utilization, and throughput.1
History
In most accounts of the history of discrete-event simulation, its development is split into four distinct periods: pioneering, innovation, revolution, and evolution.
The Pioneering Period (1950s-1960s)
Early software developers first laid the foundations for digital simulations in the mid-twentieth century. The 1950s introduced the first generation of computers, and thus, the first simulations were developed in machine code. By the 1960s, the capabilities of computers and their programming languages were already improving rapidly, improving the intricacy of simulations.1
Around this time, computer scientist Keith Douglas Tocher published the three-phase simulation approach, which is still used by a number of computer scientists today. Without getting too technical, this simulation-coding framework includes the initialization phase (establishing the initial state of the system, defining all entities, their attributes, and the event order), the execution phase (the main simulation loop where events are processed in chronological order), and the termination phase (the simulation reaches a specified time or condition and the final results are analyzed). This framework was vital for the further development of specialist simulation software, which included some of the first GPS programming languages and even computer animation, both of which have become ubiquitous in our modern world.1
The Innovation Period (1970s)
As computing technology advanced, including the introduction of the first microcomputers, simulation software continued to improve. New programming languages were developed, and simulations began to tackle animation and more interactive options. In 1976, R.D. Hurrion published his PhD thesis describing the potential for visual interactive simulation, which brought attention to the possibilities of simulation technology.4
The Revolution (1980s)
Simulation technology gained popularity in the following decade, but the need for expensive hardware and specialist computing skills limited its commercial application. Fortunately, when IBM introduced personal computers to the market, reasonably powerful microcomputers (and eventually microchips) became more and more commonly available in business organizations and even people’s homes. As software improved, decision-makers at organizations could be more involved in the modeling process, using simulation as a tool for making decisions by playing around with theoretical choices and their probable outcomes.1
The Evolution (1990s to the Present)
While the last 35 years of evolution have likely seen too many changes to be classified as one distinct era, the throughlines of the most recent decades of simulation technology are increasing computing power and expanding accessibility. With the widespread adoption of Windows technology, the falling price of personal computers, their increasing processing power, and the expansion of the World Wide Web, larger-scale simulation models could be processed more quickly and by more people.1
Throughout the 1990s, the role of simulations within a business context shifted from mainly the manufacturing sector to the service sector as well. Models were developed for airport facilities, call centers, business processes, fast food restaurants, and health care clinics. Mathematicians like Lawerence D. Stone even applied the discrete-event simulation model to the world of military logistics. Eventually, simulation technologies were used for more visual interactive modeling, simulation optimization, virtual reality, and software integration, with simulation models now coming pre-installed in some Windows packages.1
behavior change 101
Start your behavior change journey at the right place
People
R.D. Hurrion
A British researcher and lecturer in the field of industrial and business studies, most notable for his work at the University of Warwick, England, where he focused on applying simulation and artificial intelligence to industrial maintenance operations.4
Keith Douglas Tocher
A British computer scientist known for his contributions to the field of computer simulation. Most notably, Tocher published the three-phase simulation approach and developed the first discrete-event simulation package, called the General Simulation Program (GSP). This program used a common structure to execute a range of simulations and is still used today.5
B. P. Zeigler
Often regarded as a foundational figure in discrete-event simulation, Canadian-born computer engineer Zeigler developed the Discrete Event System Specification (DEVS) formalism, which provides a mathematical framework for modeling and simulating discrete event systems. His work has significantly influenced both theoretical and practical aspects of simulation, making it easier to analyze complex systems.6
Lawrence D. Stone
As an American mathematician and business leader, Stone is recognized for his work on the applications of discrete-event simulation in military operations and logistics. His research has focused on improving decision-making processes through simulation, demonstrating the practical utility of discrete-event simulation in complex environments.7
Impacts
Discrete-event simulations are primarily used to help us optimize systems, which could involve almost any organization or process imaginable. Although discrete-event simulation is focused on mapping discrete or distinct events, most processes, when divided into small enough moments, can be roughly separated into a series of individual events. Breaking down and defining the moments in complex and interconnected systems and then plugging these into discrete-event simulation software has the power to help us improve a huge array of processes.
Inventory Management
Perhaps one of the most intuitive uses of discrete-event simulation is to guide inventory management, as each event in the production process clearly affects the next. Although no one can predict precisely how the market will change, it’s vital that businesses know how to most effectively satisfy the changing demand for their products. Managers can use simulations to track potential demand fluctuations and map out the necessary amount of inventory needed to satisfy that demand. Then, when they start getting product orders, they can follow the processes they mapped out in their simulation. Knowing how much inventory they expect to need not only helps them ensure they have enough product but also minimizes the amount of wasted space, labor, and energy consumed if they were to make excess products.8
Queue Optimization
Queues are everywhere—clothing stores, banks, restaurants, and healthcare centers, to name a few examples. In any of these contexts, it’s important that the entities (in this case, the patrons or patients) move through their events as quickly and efficiently as possible. For example, a busy restaurant is a system where any queue bottleneck can cause major issues. If hungry customers come into the restaurant faster than they’re being served, it will cause long wait times to be seated and likely encourage some potential diners to head to a different restaurant. On the other hand, if customers feel rushed through their meal, they may not want to come back, and the restaurant will miss out on repeat business.9
Discrete-event simulations can take metrics like the frequency of new customers, the processing time of orders, and the number of servers and calculate what adjustments the restaurant can make to run more efficiently. Even a standalone restaurant has a plethora of variables to consider, but software designed to simulate these systems can compute the processes involved quickly, running various potential combinations in the background and spitting out a solution with the optimal series of events. Obviously, more complex systems like major hospitals (which might have hundreds or even thousands of entities, including patients, nurses, machines, beds, etc.) stand to benefit even more from the power of digital discrete-event simulation. The value of an algorithm that can almost instantaneously analyze the many steps involved in a complex system and figure out where the biggest bottlenecks are likely to occur is undeniable. Particularly in systems where the stakes are high, pinpointing where the most errors or inefficiencies are likely to occur can even save lives.9
Computer Network Optimization
Just as simulations can be used to improve physical queue efficiency, discrete-event simulation can help optimize computer network queues. When computer programs or code are inefficiently designed, the networks they run on can be slowed down or even crash. Simulations can help businesses assess their network capacity vs. demand, estimate bandwidth, and identify bottlenecks in their programs.10 Computer engineer B. P. Zeigler has been highly influential in the development of computer programs that use discrete-event simulation properties to optimize network capacity. His work has focused on designing programming languages and frameworks based on discrete-event simulation principles.
Controversies
Although discrete-event simulations have the power to help us map and understand complex and interconnected systems, they are far from perfect models, sometimes excluding important perspectives and nuances of human life.
Simplification of Complex Systems
Designing simulations requires making many simplifications and assumptions about real-world systems. In order to program discrete-event simulations, specific events must be defined, data must be entered, and the infinite possibilities of real life have to be narrowed down to a finite amount of variables. Although these shortcuts are necessary to develop meaningful models, discrete-event simulations are sometimes criticized for oversimplifying entities and events.11 For example, discrete-event simulations require that events are discrete and separated into distinct stages. The real world, however, is often more disorganized.
Imagine a simulation of a customer service center: shoppers come into the store, wait in a line, and then eventually speak with a representative and ask their questions or complete their transactions. Although a discrete-event simulation might conceptualize the stages of waiting in the queue and speaking to the representative as completely separate events occurring in a particular sequence, in a real store, there is the possibility that if the line is long enough, some customers might resort to asking each other their technical questions while they wait, or leave because they don’t have the time. Thus, the longer the wait time is, the higher the chance that customers might actually reduce their own expected time in the queue. This type of paradoxical outcome is unlikely to be captured by a computer-generated discrete-event simulation, but human nature, organizational culture, and the environment are all incredibly nuanced.
This is why critics argue that oversimplified models can be risky because they might produce misleading results, potentially causing decisions based on these simulations to adversely impact real-world stakeholders.11
Economic and Social Biases
Unfortunately, like many instances of algorithms being applied to human behavior, there is a risk that the design and implementation of discrete-event simulations can unintentionally reinforce economic and social biases. For instance, a simulation designed to optimize customer service might prioritize high-value customers: those who spend more should be helped more quickly, as they bring the most money to the company. To an algorithm, this makes sense, but prioritizing the customers with the “highest value” will likely inadvertently marginalize low-income individuals. Theoretically, biases like this could be mitigated with more inclusive design practices, but the reality is that this requires additional effort and resources that aren’t always prioritized.11 As long as humans are designing and using the technology, a level of human bias will always be present. We must be careful how we interpret the results of these simulations.
Resistance to Implementation
The recommendations that come from discrete event simulations often challenge the status quo. Although stakeholders in major organizations often seek out advice as to how to improve, the status quo bias is strong, and leaders and employees alike are often resistant to change. Just as managers sometimes ignore the advice of their consultants, suggestions from simulations may also face pushback. Particularly if the data suggests any significant operational changes like layoffs or expensive mechanical upgrades, these recommendations may not be well-received.11 While some critics argue that simulations often fail to address the political or social dynamics involved in implementing change, it’s important to remember that discrete-event simulations are merely a tool for directing change and, like any tool, must be combined with appropriate oversight and direction.
Case Studies
Cost-Effectiveness Analysis of Alzheimer’s Disease Treatment
In 2020, researchers in Thailand used discrete-event simulations to evaluate patients with Alzheimer’s disease. The researchers’ goal was to understand how different patients with diverse demographic and disease characteristics selected their treatment options and to determine which option was most cost-effective. Although all of the participants in the study were from the same country, the patients (considered “entities” in the simulation) had unique backgrounds in terms of demographic factors like age, gender, and relationship status, and equally unique health statuses, as Alzheimer’s disease affects every person differently.12
Despite the differences between each subject, the researchers’ use of discrete-event simulations allowed them to track each patient’s cognitive, behavioral, and functional status, tracking not only how their disease progressed but also how their treatments affected them. These simulations required intensive data collection for each patient, but the complex computer processing of the simulation created a model that uncovered valuable information that wouldn’t have otherwise been apparent. The results suggested that for almost all patients, prescribing donepezil (a drug used to treat early signs of Alzheimer’s) was the most cost-effective.12 Particularly in lower-income countries like Thailand, identifying the most affordable yet effective treatment options can be incredibly valuable for families, and the power of discrete-event simulations to model this cost-effectiveness is necessary to gain public funding for such important treatments.
Optimizing Fitness Machine Manufacturing
In another study, researchers were interested in optimizing the manufacturing of exercise machines at a warehouse in Germany. These fitness machines, used in gyms and hospitals, require all sorts of machines themselves; their manufacturing process involves saws, turning stations, a machining center, drilling machines, welding stations, and a powder painting station. The researchers analyzed each event, monitoring real production over two months by recording processing, setup, and waiting times. Then, a discrete-event simulation model was created to analyze the current state of production and test various improvement scenarios.13
The researchers, with the help of their discrete-event simulation, found several key issues. First, the overall lead time for production was considered too long, prompting the need for further analysis and improvement. Second, the scheduling was done intuitively by production supervisors without concrete criteria, which led to a number of inefficiencies. There were a lot of machine operators around the warehouse who were being under-utilized, often left for periods of time without work to do, contributing to even more inefficiencies in the production process.13
The bottlenecks identified by the discrete-event simulation also came with actionable suggestions for improvement, which the researchers adopted. Particularly because the simulation allowed for a detailed analysis of the production process, the workout equipment company was able to adopt a more structured approach to manufacturing and had real, data-driven guidelines for how to improve. Ultimately, implementing these changes resulted in a reduction of lead times by one-third, and the average waiting times were reduced from 6.8 days to 3.5 days.13 Now, that’s how you get your manufacturing back in shape!
Related TDL Content
How Behavioral Science Can Make Airports Less Miserable
Agent-based modeling (ABM) is similar to discrete-event simulation in that it’s an algorithmic method of creating multiple independent entities (“agents”) that react to stimuli according to predefined conditions. This article explores how the power of algorithmic models like this can be used to improve efficiency in organizations as complex as the airline industry.
Using Behavioral Science to Improve Team Dynamics
The Decision Lab team took on the challenge of understanding how biases affect project prioritization in team settings. The team combined a Discrete Choice Survey and an Implicit Association Test and discovered important insights into the intricacies of team dynamics. Explore this article to learn more about the approach, findings, and recommendations for leveraging behavioral science to improve group dynamics.
Sources
- Collins, A. J., Sabz Ali Pour, F., & Jordan, C. A. (2023). Past challenges and the future of discrete event simulation. The Journal of Defense Modeling and Simulation, 20(3), 351–369. https://doi.org/10.1177/15485129211067175
- SoftwareSim. (2022, March 12). A gentle introduction to discrete event simulation. Retrieved December 3, 2024, from https://softwaresim.com/blog/a-gentle-introduction-to-discrete-event-simulation/
- Bangsow, Steffen. (2012). Use Cases of Discrete Event Simulation. 10.1007/978-3-642-28777-0.
- Hurrion RD (1976). The Design, Use and Required Facilities of an Interactive Visual Computer Simulation Language to Explore Production Planning Problems. PhD Thesis, University of London.
- Tocher KD (1963). The Art of Simulation. The English Universities Press: London
- Nance, Richard E. (1993). A History of Discrete Event Simulation Programming Languages. https://doi.org/10.1145/155360.155368
- INFORMS. (n.d.). Stone, Lawrence D. Retrieved December 3, 2024, from https://www.informs.org/Explore/History-of-O.R.-Excellence/Biographical-Profiles/Stone-Lawrence-D
- Bottani, E., Mantovani, M., Montanari, R., & Vignali, G. (2017). Inventory management in the presence of inventory inaccuracies: an economic analysis by discrete-event simulation. International Journal of Supply Chain and Inventory Management, 2(1), 39-73.
- Choi, B. K., & Kang, D. (2013). Modeling and simulation of discrete event systems. John Wiley & Sons.
- Harahap, E., Nurrahman, A., & Darmawan, D. (2017). A modeling approach for event-based networking design using MATLAB-SimEvents. Proceedings of 2nd International Multidisciplinary Conference 2016, Jakarta, Indonesia, 1(1). 327-331
- Collins, A. J., Sabz Ali Pour, F., & Jordan, C. A. (2023). Past challenges and the future of discrete event simulation. The Journal of Defense Modeling and Simulation, 20(3), 351–369. https://doi.org/10.1177/15485129211067175
- Kongpakwattana, K., & Chaiyakunapruk, N. (2020). Application of discrete-event simulation in health technology assessment: a cost-effectiveness analysis of Alzheimer’s disease treatment using real-world evidence in Thailand. Value in Health, 23(6), 710-718.
- Gatsou, A., Gogouvitis, X., Vosniakos, G.-C., Wagenknecht, C., & Aurich, J. C. (2009). Discrete event simulation for manufacturing system analysis: An industrial case study. Flexible Automation and Intelligent Manufacturing, 1309–1316.
About the Author
Annika Steele
Annika completed her Masters at the London School of Economics in an interdisciplinary program combining behavioral science, behavioral economics, social psychology, and sustainability. Professionally, she’s applied data-driven insights in project management, consulting, data analytics, and policy proposal. Passionate about the power of psychology to influence an array of social systems, her research has looked at reproductive health, animal welfare, and perfectionism in female distance runners.