Module 8. Simulation
Module 8. Simulation
MODULE 8. SIMULATION
OVERVIEW:
Simulation is a powerful and widely used technique that involves creating an imitative
representation (a "model") of a real-world process, system, or phenomenon. The purpose of
simulation is to conduct experiments with this model to understand its behavior, predict outcomes,
test different scenarios, or evaluate various strategies without having to manipulate the real
system itself. This makes simulation an invaluable tool in a vast array of fields, from engineering
and manufacturing to science, economics, education, and even entertainment.
MODULE OBJECTIVES:
COURSE MATERIALS:
Simulation
A simulation is a model that mimics the operation of an existing or proposed system, providing
evidence for decision-making by being able to test different scenarios or process changes. This
can be coupled with virtual reality technologies for a more immersive experience.
Simulations can be used to tune up performance, optimize a process, improve safety, testing
theories, training staff and even for entertainment in video games! Scientifically modelling systems
allows a user to gain an insight into the effects of different conditions and courses of action.
Simulation can also be used when the real system is inaccessible or too dangerous to assess or
when a system is still in the design or theory stages.
Key to any simulation is the information that is used to build the simulation model and protocols
for the verification and validation of models are still being researched and refined, particularly
regarding computer simulation.
Simulation is used to evaluate the effect of process changes, new procedures and capital
investment in equipment. Engineers can use simulation to assess the performance of an existing
system or predict the performance of a planned system, comparing alternative solutions and
designs.
Simulation is used as an alternative to testing theories and changes in the real world, which can
be costly. Simulation can measure factors including system cycle times, throughput under
different loads, resource utilization, bottlenecks and choke points, storage needs, staffing
requirements, effectiveness of scheduling and control systems.
There are many examples of simulation across industry, entertainment, education, and more.
Here are a few notable examples:
Automotive
Simulation allows the characteristics of a real vehicle to be replicated in a virtual environment, so
that the driver feels as if they are sitting in a real car. Different scenarios can be mimicked so that
the driver has a fully immersive experience. These types of simulators can help train both new
Lambot St., Poblacion, Bansud, Oriental, Mindoro
Direct line: (043) 738-6561 | Cell phone: 0910-788-6089
Website: www.pup.edu.ph E-mail: bansud@pup.edu.ph
and experienced drivers, offering a route to teach driving skills that can reduce maintenance and
fuel costs and ensure the safety of the drivers themselves.
Biomechanics
Simulation can be applied to biomechanics to create models of human or animal anatomical
structures to study their function and design medical treatments and devices. Biomechanics
simulation can also be used to study sports performance, simulate surgical procedures, and
assess joint loads. An additional example is neuromechanical simulation that unites neural
network simulation with biomechanics to test hypotheses in a virtual environment.
Disaster Preparation
Simulations can replicate emergency situations, to help with disaster preparedness. This includes
training and designing responses to events such as natural disasters, pandemics or terrorist
attacks. Responses can be tracked and assessed through the simulation, highlighting potential
problems and areas where more training may be required for responders, as well as ensuring any
mistakes are made in a safe environment ahead of any real-life event.
Engineering Systems
Simulation is widely used for engineering systems to imitate operations and functions of
equipment, processes and procedures. Engineering simulations can combine mathematical
models and computer-assisted simulation for design or improvement of existing processes.
Ergonomics
Simulation can be used to analyze virtual products and working environments incorporating an
anthropometric virtual representation of the human, also known as a mannequin or Digital Human
Model (DHM). These DHMs can mimic the performance and capabilities of humans in simulated
environments. This type of simulation has applications ranging from assembly lines to disaster
management and video gaming to waste collection.
Flight Simulation
Flight simulators have been used for years to train new pilots in a safe environment. This not only
allows pilots to be assessed safely but can also test instrument failures and other problems
without risking the pilot, the instructor or the aircraft. You can also easily repeat the exact same
scenarios, such as approaching a runway to land, under different conditions, not to mention saving
fuel and other costs compared to actual flying time.
Military Applications
Sometimes referred to as ‘war games,’ military simulations can be used to test out military plans
in a virtual environment using computer models. These can also incorporate social and political
factors and are used by governments and military organizations around the world.
Network Systems
Simulations have been applied to network and distributed systems to test new algorithms and
protocols before they are implemented in live systems. These can be applied to applications
including content delivery networks, smart cities and the Internet of Things.
Project Management
Simulation can be used for project management analysis and training purposes. Whether training
managers or analyzing the outcomes of different decisions, simulation is frequently conducted
with software tools.
Robotics
Robotics simulations are used to mimic situations that may not be possible to recreate and test in
real life due to time, cost or other factors. The results of these tests can then be assessed and
transferred to real life robots.
Production Systems
Production systems can be simulated using methods such as discrete event simulation to assess
manufacturing processes, assembly times, machine set-up, and more.
Sales
Sales can be simulated to examine the flow of transactions and customer orders as well as costs,
labor times and more.
Sport
Statistics are widely used as part of sport simulation to predict the outcome of events and the
performance of individual sportspeople. Sports simulation can also be used to predict the
outcome of games and events as well as for fantasy sports leagues. Biomechanics models can
also be used to assist training, assess fatigue levels and their effect on performance and more.
Weather
Weather forecasting uses simulations based on past data to predict extreme weather conditions
such as hurricanes or cyclones.
https://www.twi-global.com/technical-knowledge/faqs/faq-what-is-simulation
Combined simulation refers to the integration of two or more types of simulation models
(discrete-event, continuous) to analyze complex systems. These models work together to address
challenges that individual simulations cannot solve effectively.
Example: Simulating a hospital’s workflow by combining patient flow (discrete event) and disease
progression (continuous).
3. Agent-Based Simulation (ABS): Models individual agents and their interactions within a
system.
Example: Traffic simulation combining vehicle flow (continuous) and driver behavior (agent
based)
https://blog.ptvgroup.com/en/modeling-planning/realistic-traffic-simulation-driving-behavior-is-
key/
https://www.anylogic.com/resources/articles/a-simulation-approach-for-multi-stage-supply-
chain-optimization-to-analyze-real-world-transportation/
Key Challenges
https://www.slideshare.net/slideshow/combined_simulation-and-some-other-detail-
about/274757311
Simulation plays a crucial role in digital system design, facilitating various stages from initial
concept to final implementation. It's used for performance prediction, algorithm development,
hardware refinement, verification of correctness, and ensuring performance targets are met. The
varying simulation objectives require different levels of modeling detail, allowing designers to
trade off performance for model detail.
• Improved Design Efficiency: Identifying faulty designs early and gaining insight into
circuit behavior before building.
• Cost and Time Savings: Reduces the need for physical prototypes and allows for faster
iteration and testing of designs, saving significant money and time.
• Enhanced Reliability and Performance: Enables optimization and identification of
potential issues, leading to more robust and higher-performing digital systems.
• Reduced Risk of Failure: Allows engineers to predict and fix problems before anything
is built, preventing costly mistakes and potential disasters.
• Increased Collaboration: Cloud-based simulation and immersive technologies facilitate
sharing designs and collaborating globally.
• Support for Sustainable Decisions: Simulation can help optimize resource-saving
processes and minimize energy consumption, contributing to environmentally friendly
designs.
https://ieeexplore.ieee.org/document/724553
https://www.esi-group.com/blog/what-is-system-simulation-software
https://www.ansys.com/simulation-topics/what-is-simulation
https://www.esi-group.com/blog/what-is-system-simulation-
software#:~:text=This%20approach%20is%20key%20to,interaction%20between%20hardware
%20and%20software.
Simulation is a powerful technique to model complex systems and processes, such as physics,
biology, engineering, or economics. However, simulation results can be hard to interpret and
communicate without effective visualization tools. Here are some of the most common ways to
visualize simulation results, and how they can help you understand.
https://www.linkedin.com/advice/0/what-most-common-ways-visualize-simulation-results-2scqe
https://www.solver.com/simulation-analysis
Interactive simulations are virtual environments that mimic the scenario or functioning of a real-
life system. They can be used to provide effective learning in an experiential form. When applied
to a learning system, simulations use technologies like augmented reality (AR) and virtual reality
(VR) to ensure a realistic experience. The interactive features of a simulated environment
augment the immersive experiences offered by it. Such environments create dynamic situations
that encourage learners to develop their understanding of the topic through interactions.
They are particularly effective in fields requiring complex decision-making, from healthcare to
engineering and beyond. By designing real-time feedback and adaptive learning paths into your
next learning experience, you can provide simulations that offer a safe environment for learners
to experiment and learn from both success and failure.
Benefits
• Enhances engagement and retention through active participation.
• Provides a safe environment for experiential learning.
• Fosters critical thinking and problem-solving skills.
• Enables personalized learning experiences through adaptive feedback.
Risks
• High development costs and resource intensity.
• Potential technical issues impacting user experience.
• Overly complex simulations can overwhelm learners.
• Misalignment with learning outcomes if not carefully designed.
Lambot St., Poblacion, Bansud, Oriental, Mindoro
Direct line: (043) 738-6561 | Cell phone: 0910-788-6089
Website: www.pup.edu.ph E-mail: bansud@pup.edu.ph
https://kitaboo.com/bringing-learning-to-life-with-interactive-simulations/
https://www.coursensu.com/blog/interactive-simulations-designing-learning-experiences-to-
connect-theory-and-practice
Virtual reality, or VR, is a simulated three-dimensional (3D) environment that lets users explore
and interact with a virtual surrounding in a way that approximates reality, as it's perceived through
the users' senses. The environment is created with computer hardware and software, although
users might also need to wear devices such as goggles, headsets or bodysuits to interact with
the environment. The more deeply users can immerse themselves in a VR environment -- and
block out their physical surroundings -- the more they can suspend their belief and accept it as
real, even if it's fantastical in nature.
The history of VR dates to the 1960s, when computer scientist Ivan Sutherland created a
prototype head-mounted display (HMD) that could display basic wireframe graphics. Since then,
VR technology has advanced significantly, with the development of more sophisticated HMDs,
motion tracking, and haptic feedback systems. Nowadays, there are various terms referring to the
creation of digital realities: Augmented reality (AR) vs. virtual reality (VR) vs. mixed reality. But
what is the difference?
Augmented reality (AR), virtual reality (VR), and mixed reality (MR) are often used
interchangeably, but they are distinct technologies:
• AR adds digital elements to the real world, while VR creates a completely immersive digital
environment
• MR combines elements of both AR and VR, overlaying digital objects onto the real world
while also allowing for interaction with virtual elements
• VR: While in AR an additional layer of information extends reality, this is not the case with
VR. Here, it is a matter of leaving the real world and using virtual reality glasses to immerse
oneself specifically in a separate universe
In terms of applications, AR is often used in fields such as advertising, retail, and gaming, while
VR is more commonly used in industries such as healthcare, architecture, and education. MR, on
the other hand, has applications in both entertainment and professional settings, such as virtual
product demonstrations or training simulations.
This simulation is strongly oriented to the real world. To adapt the digital world to the real world
as best as possible, modern AI algorithms are usually used. These have the task of projecting
new and familiar elements onto a mathematically defined surface. The result is a virtual world that
looks deceptively real to users.
The hardware typically includes a headset or display, motion controllers, and sensors that track
the user’s movements and gestures in real-time. The software involves creating a digital
environment using computer-generated graphics, audio, and other sensory inputs to simulate a
fully immersive experience.
1. One of the primary advantages of VR is its ability to create immersive experiences that
can help individuals learn, practice, and explore in a safe and controlled
environment. In the field of education, VR can be used to provide students with hands-
on experiences that would otherwise be too difficult, expensive, or dangerous to replicate
in real life. In a virtual reality simulator, specialists can pass on their knowledge in a
targeted manner to less experienced colleagues. At the same time, they can train their
own skills in the virtual environment. For this reason, the use of VR has already become
established in the aircraft and machine industry sector. Additionally, VR can be used in
the field of healthcare to simulate surgeries and train medical professionals
2. Virtual reality supports the personalization of virtual experiences. Haptic and audio
stimuli play a central role here. In the long term, VR should make it possible to tailor the
user experience to the individual user. This would open entirely new possibilities in the
areas of marketing, entertainment and education
3. Branding and product realization are also much easier in Virtual reality. The reason for
this is that projects can be implemented faster and more cost-effectively. At the same time,
experts can participate in meetings from different locations
4. Virtual reality makes it possible to hold meetings, training sessions or conferences in
virtual rooms. This eliminates the need to travel to the respective locations. Time flexibility
and location independence are the decisive factors here, making the technology more
important.
5. VR could make collaboration in companies much easier. At the same time, employees
from different locations would have the opportunity to meet directly in the digital space
6. Moreover, Virtual reality technology has the potential to transform the entertainment
industry, creating immersive gaming experiences that allow players to become fully
immersed in a virtual world.
Virtual reality (VR) is important because it has the potential to transform how we interact with
and experience the world around us. It provides a new way of experiencing information,
allowing individuals to learn, practice, and explore in a safe and controlled environment.
Additionally, VR can help to bridge the gap between physical and virtual experiences,
creating immersive experiences that can be used for training, therapy, entertainment, and more.
As technology continues to advance, virtual reality is poised to become an increasingly important
part of our lives, impacting everything from education and healthcare to gaming and
entertainment.
Possible challenges
Despite its many benefits, VR technology is not without its challenges. One of the biggest
obstacles to widespread adoption is the cost of equipment and development, which can be
prohibitive for many organizations and individuals. At the same time, VR technology is not yet
equally available in all countries around the world. This is also since research in this area has
not yet been fully completed.
In addition, there are concerns that VR can cause motion sickness or other adverse health
effects, especially for individuals who are prone to these ailments. Apart from that, immersion in
virtual worlds can only work properly with sufficient computing power and memory.
Resources:
https://www.teamviewer.com/apac/solutions/use-cases/virtual-reality-vr/
https://www.techtarget.com/whatis/definition/virtual-reality
Simulation experiments are powerful tools for industrial engineers to test and optimize complex
systems, such as manufacturing processes, supply chains, or service operations. Designing and
controlling simulation experiments is a critical aspect of effectively using simulation models to gain
insights and make informed decisions. It involves applying principles of experimental design,
typically borrowed from statistics to the unique challenges and opportunities presented by
computer simulations. Here’s how to design and conduct simulation experiments like a pro, using
a systematic and rigorous approach that will help you achieve valid and reliable results.
In simulation experiments, control refers to methods and techniques used to influence the
simulated system's behavior and ensure its stability and accuracy. The purpose is to manipulate
the simulation's variables in a controlled manner, influencing the outcome and enabling the study
of how the system responds to different conditions.
Examples:
Control systems: Simulating control systems (e.g., in power grids or robotics) and using control
algorithms to maintain stability and desired performance.
https://www.linkedin.com/advice/0/how-can-you-design-conduct-simulation-experiments
https://www.sciencedirect.com/topics/earth-and-planetary-sciences/control-
simulation#:~:text=Control%20Simulation%20%2D%20an%20overview%20%7C%20ScienceDir
ect,Definition
Model optimization in simulation, also known as simulation optimization, involves finding the best
input variable values for a simulation model to achieve the desired outcome or objective.
Simulation optimization can be defined as the process of finding the best input variable values
from among all possibilities without explicitly evaluating each possibility. The objective of
simulation optimization is to minimize the resources spent while maximizing the information
obtained in a simulation experiment. Optimization can deal with complex and nonlinear problems
and can incorporate multiple and conflicting criteria. Some examples of optimization are linear
programming, nonlinear programming, and multi-objective optimization.
Simulation optimization helps you make better resource allocation choices “here and now,” in
situations with uncertainty. You simply create a model that includes:
Example:
Consider a drunk person wandering on a divided highway.
dead if y != 1/2
Vital Status: 𝑓(𝑦) = {alive if y = 1/2
https://www.solver.com/simulation-optimization
https://people.orie.cornell.edu/shane/pubs/WSC2015TutSlides.pdf
https://www.informs-sim.org/wsc97papers/0118.PDF
https://www.linkedin.com/advice/0/how-do-you-choose-between-simulation-modeling
Pseudo Random Number Generator (PRNG) refers to an algorithm that uses mathematical
formulas to produce sequences of random numbers. PRNGs generate a sequence of numbers
approximating the properties of random numbers. A PRNG starts from an arbitrary starting state
using a seed state. Many numbers are generated in a short time and can also be reproduced
later, if the starting point in the sequence is known. Hence, the numbers are deterministic and
efficient.
With the advent of computers, programmers recognized the need for a means of introducing
randomness into a computer program. However, surprising as it may seem, it is difficult to get a
computer to do something by chance as computer follows the given instructions blindly and is
therefore completely predictable. It is not possible to generate truly random numbers from
deterministic things like computers, so PRNG is a technique developed to generate random
numbers using a computer.
Characteristics of PRNG
• Efficient: PRNG can produce many numbers in a short time and is advantageous for
applications that need many numbers
• Deterministic: A given sequence of numbers can be reproduced later if the starting point
in the sequence is known. Determinism is handy if you need to replay the same sequence
of numbers again at a later stage.
• Periodic: PRNGs are periodic, which means that the sequence will eventually repeat
itself. While periodicity is hardly ever a desirable characteristic, modern PRNGs have a
period that is so long that it can be ignored for most practical purposes
Linear Congruential Generator is most common and oldest algorithm for generating pseudo-
randomized numbers. The generator is defined by the recurrence relation:
We generate the next random integer using the previous random integer, the integer constants,
and the integer modulus. To get started, the algorithm requires an initial Seed, which must be
provided by some means. The appearance of randomness is provided by performing modulo
arithmetic.
Before looking at how we can construct pseudo-random numbers, let’s discuss some important
properties/considerations that need to be taken into account when generating pseudo-random
numbers:
• the random generation should be very fast. In practice, we want to use random numbers
to do other computations (for example simulate a little donut shop) and such computations
might be computationally intensive: if random generation were to be slow, we would not
be able to perform them.
• the cycle of random generated numbers should be long. The cycle is the length of the
sequence before numbers start to repeat themselves.
• the random numbers should be repeatable. Given a starting point of the algorithm, it
should be possible to repeat the exact same sequence of numbers. This is fundamental
for debugging and for reproducibility.
• and of course, most importantly, the random numbers should be independent and
uniformly distributed.
Applications of PRNG
PRNGs are suitable for applications where many random numbers are required and where it is
useful that the same sequence can be replayed easily. Popular examples of such applications
are simulation and modeling applications. PRNGs are not suitable for applications where it is
important that the numbers are unpredictable, such as data encryption and gambling.
https://www.geeksforgeeks.org/pseudo-random-number-generator-prng/
https://bookdown.org/manuele_leonelli/SimBook/generating-pseudo-random-numbers.html
In the context of simulation, stochastic models are computational models that incorporate
randomness and uncertainty into their structure. They allow for the simulation of systems where
outcomes are not deterministic but rather influenced by random variables, resulting in a range of
possible outcomes. These models are particularly useful when dealing with systems that exhibit
inherent variability or where certain parameters are not known with certainty.
For a model to be stochastic, it must have a random variable where a level of uncertainty exists.
Due to the uncertainty present in a stochastic model, the results provide an estimate of the
probability of various outcomes.
To estimate the probability of each outcome, one or more of the inputs must allow for random
variation over time. It results in an estimation of the probability distributions, which are
mathematical functions that show the likelihood of different outcomes.
For example, if you are analyzing investment returns, a stochastic model would provide an
estimate of the probability of various returns based on the uncertain input (e.g., market volatility).
The random variable typically uses time-series data, which shows differences observed in
historical data over time. The final probability distributions result from many stochastic projections
that reflect the randomness in the inputs.
Stochastic models must meet several criteria that distinguish them from other probability models.
First, stochastic models must contain one or more inputs reflecting the uncertainty in the projected
situation. Generally, the model must reflect all aspects of the situation to project a probability
distribution correctly.
Probabilities are correlated to events within the model, which reflect the randomness of the inputs.
The probabilities are then used to make predictions or to provide relevant information about the
situation
https://corporatefinanceinstitute.com/resources/data-science/stochastic-modeling/
https://www.investopedia.com/terms/s/stochastic-modeling.asp
The Monte Carlo simulation is a mathematical technique that predicts possible outcomes of an
uncertain event. Computer programs use this method to analyze past data and predict a range of
future outcomes based on a choice of action. For example, if you want to estimate the first month’s
sales of a new product, you can give the Monte Carlo simulation program your historical sales
data. The program will estimate different sales values based on factors such as general market
conditions, product price, and advertising budget.
The Monte Carlo simulation is a probabilistic model that can include an element of uncertainty or
randomness in its prediction. When you use a probabilistic model to simulate an outcome, you
will get different results each time. For example, the distance between your home and office is
fixed. However, a probabilistic simulation might predict different travel times by considering factors
such as congestion, bad weather, and vehicle breakdowns.
In contrast, conventional forecasting methods are more deterministic. They provide a definite
answer to the prediction and cannot factor in uncertainty. For instance, they might tell you the
minimum and maximum travel time, but both answers are less accurate.
The Monte Carlo simulation provides multiple possible outcomes and the probability of each from
a large pool of random data samples. It offers a clearer picture than a deterministic forecast. For
Lambot St., Poblacion, Bansud, Oriental, Mindoro
Direct line: (043) 738-6561 | Cell phone: 0910-788-6089
Website: www.pup.edu.ph E-mail: bansud@pup.edu.ph
instance, forecasting financial risks requires analyzing dozens or hundreds of risk factors.
Financial analysts use the Monte Carlo simulation to produce the probability of every possible
outcome.
John von Neumann and Stanislaw Ulam invented the Monte Carlo simulation, or the Monte
Carlo method, in the 1940s. They named it after the famous gambling location in Monaco
because the method shares the same random characteristic as a roulette game.
• Business
Business leaders use Monte Carlo methods to project realistic scenarios when making
decisions. For example, a marketer needs to decide whether it's feasible to increase the
advertising budget for an online yoga course. They could use the Monte Carlo
mathematical model on uncertain factors or variables such as the following:
o Subscription fee
o Advertising cost
o Sign-up rate
o Retention
• The simulation would then predict the impact of changes on these factors to indicate
whether the decision is profitable.
• Finance
Financial analysts often make long-term forecasts on stock prices and then advise their
clients of appropriate strategies. While doing so, they must consider market factors that
could cause drastic changes to the investment value. As a result, they use the Monte Carlo
simulation to predict probable outcomes to support their strategies.
• Online gaming
Strict regulations govern the online gaming and betting industry. Customers expect
gaming software to be fair and mimic the characteristics of its physical counterpart.
Therefore, game programmers use the Monte Carlo method to simulate results and
ensure a fair-play experience.
• Engineering
Engineers must ensure the reliability and robustness of every product and system they
create before making it available to the public. They use Monte Carlo methods to simulate
a product’s probable failure rate based on existing variables. For example, mechanical
engineers use the Monte Carlo simulation to estimate the durability of an engine when it
operates in various conditions.
The basic principle of the Monte Carlo simulation lies in ergodicity, which describes the statistical
behavior of a moving point in an enclosed system. The moving point will eventually pass through
every possible location in an ergodic system. This becomes the basis of the Monte Carlo
simulation, in which the computer runs enough simulations to produce the eventual outcome of
different inputs.
For example, a six-sided die has a one-sixth chance of landing on a specific number. When you
roll the die six times, you might not land the die on six different numbers. However, you will achieve
the theoretical probability of one-sixth for each number when you continue indefinitely rolling. The
result accuracy is proportional to the number of simulations. In other words, running 10,000
simulations produces more accurate results than 100 simulations.
The Monte Carlo simulation works the same way. It uses a computer system to run enough
simulations to produce different outcomes that mimic real-life results. The system uses random
number generators to recreate the inherent uncertainty of the input parameters. Random number
generators are computer programs that produce an unpredictable sequence of random numbers.
A Monte Carlo analysis consists of input variables, output variables, and a mathematical model.
The computer system feeds independent variables into a mathematical model, simulates them,
and produces dependent variables.
• Input variables
Input variables are random values that affect the outcome of the Monte Carlo simulation.
For example, manufacturing quality and temperature are input variables that influence a
smartphone's durability. You can express input variables as a range of random value
samples so Monte Carlo methods can simulate the results with random input values.
• Output variable
The output variable is the result of the Monte Carlo analysis. For example, an electronic
device’s life expectancy is an output variable, with its value being a time such as 6 months
or 2 years. The Monte Carlo simulation software shows the output variable in a histogram
or graph that distributes the result in a continuous range on the horizontal axis.
• Mathematical model
A mathematical model is an equation that describes the relationship between output and
input variables in mathematical form. For example, the mathematical model for profitability
is Profit = Revenue − Expenses.
The Monte Carlo software replaces revenue and expenses with probable values based on the
probability distribution type. Then it repeats the simulation to get a highly accurate result. The
Monte Carlo simulation can run for hours when the mathematical model involves many random
variables.
Probability distributions are statistical functions that represent a range of values distributed
between limits. Statistics experts use probability distributions to predict the possible occurrence
of an uncertain variable, which might consist of discrete or continuous values.
• Normal distribution
Normal distribution, also known as the bell curve, is symmetrically shaped like a bell and
represents most real-life events. The possibility of a random value at the median is high,
and the probability significantly decreases toward both ends of the bell curve. For
example, a repeated random sampling of the weight of students in a particular classroom
gives you a normal distribution chart.
• Uniform distribution
Uniform distribution refers to a statistical representation of random variables with equal
chance. When plotted on a chart, the uniformly distributed variables appear as a horizontal
flat line across the valid range. For example, the uniform distribution represents the
likelihood of rolling and landing on each side of a die.
• Triangular distribution
Triangular distribution uses minimum, maximum, and most-likely values to represent
random variables. Its probability peaks at the most-likely value. For example, companies
use triangular distribution to predict upcoming sales volumes by establishing the triangle's
minimum, maximum, and peak value.
• The Monte Carlo simulation is highly dependent on the input values and distribution. If
mistakes are made when electing the input and probability distribution, it can lead to
inaccurate results.
• It might take excessive computational power to perform Monte Carlo experiments.
Computing with the Monte Carlo method can take hours or days to complete on a single
computer.
https://aws.amazon.com/what-is/monte-carlo-simulation/
https://www.geeksforgeeks.org/what-is-monte-carlo-simulation/
Simulation systems are software tools designed to build, run, and analyze models that mimic the
behavior of real-world or hypothetical systems. They are invaluable for understanding complex
interactions, identifying bottlenecks, optimizing processes, and making informed decisions
without the cost or risk of experimenting with the real system.
In DES, the system's state changes only at discrete points in time, called "events."
Between events, the system's state remains unchanged. This paradigm is ideal for
modeling systems where items or entities move through a series of defined steps or
processes.
Common Applications:
• Manufacturing and Production: Production lines, factory layouts, assembly
processes, scheduling, capacity planning, bottleneck identification.
• Logistics and Supply Chain: Warehouse operations, transportation networks,
inventory management, distribution centers.
• Healthcare: Hospital patient flow, emergency room operations, appointment
scheduling, resource allocation.
• Service Systems: Call centers, customer queues, retail operations, banking.
ABM focuses on individual, autonomous "agents" (e.g., people, vehicles, cells, products)
that interact with each other and their environment based on a set of rules. Complex
system-level behaviors (emergent properties) arise from these individual interactions.
Common Applications:
• Social Sciences: Crowd dynamics, diffusion of innovations, market behavior,
opinion formation.
• Ecology and Biology: Animal population dynamics, disease spread
(epidemiology), cellular interactions.
• NetLogo: An excellent and widely used platform, particularly strong for educational
purposes and quickly prototyping ABMs due to its accessible programming
language.
• AnyLogic: As mentioned, it provides strong support for ABM, especially when
combined with DES or System Dynamics.
• Repast (Recursive Porous Agent Simulation Toolkit): A powerful and flexible open-
source toolkit (Java, Python, C++) for complex ABM development, often used in
academic research.
• MASON (Multi-Agent Simulator Of Neighborhoods): Another open-source,
Java-based toolkit focused on performance for large-scale ABMs.
• GAMA (GIS Agent-based Modeling Architecture): Focuses on spatially explicit
ABMs, often used in geographic and urban planning contexts.
• Mesa: A Python-based ABM framework that allows for rapid model creation,
visualization, and analysis using Python's data science ecosystem.
Common Applications:
Common Applications:
• Financial Modeling: Option pricing, risk assessment (e.g., Value at Risk), portfolio
optimization.
• Project Management: Project completion time and cost estimation (e.g., PERT
analysis).
• Engineering: Reliability analysis, design optimization, error propagation.
• Scientific Research: Statistical inference, complex integral approximation.
• Microsoft Excel (with add-ins): Widely used for basic Monte Carlo simulations.
Add-ins like @RISK (Palisade Corporation's DecisionTools Suite) and Crystal Ball
(Oracle) greatly enhance Excel's capabilities for defining distributions, running
simulations, and analyzing results.
• Python (with libraries like NumPy, SciPy): A powerful and flexible environment
for implementing custom Monte Carlo simulations.
• R: Another statistical programming language with excellent capabilities for Monte
Carlo simulations.
• MATLAB: Strong for numerical computation and statistical analysis, suitable for
Monte Carlo simulations.
• Specialized tools: Some simulation platforms like FlexSim or Simio might
incorporate Monte Carlo analysis for their discrete event models.
The choice of simulation system depends heavily on the nature of the system being modeled, the
objectives of the study, and the level of detail required. Often, complex problems benefit from a
"multi-method" approach, combining different simulation paradigms, which is supported by
platforms like AnyLogic.
https://www.autodesk.com/solutions/simulation/overview#:~:text=Today%2C%20you%20can%2
0analyze%20the,over%20time%20using%20simulation%20software
https://www.anylogic.com/use-of-simulation/
https://www.simio.com/what-are-the-differences-between-simulation-software-discrete-
continuous-and-agent-based/