Introduction To Modelling and Simulation
Introduction To Modelling and Simulation
Introduction
Modelling is the process of representing a model which includes its construction and working.
This model is similar to a real system, which helps the analyst predict the effect of changes to
the system. In other words, modelling is creating a model which represents a system including
their properties. It is an act of building a model.
Simulation of a system is the operation of a model in terms of time or space, which helps
analyse the performance of an existing or a proposed system. In other words, simulation is the
process of using a model to study the performance of a system. It is an act of using a model for
simulation.
History of Simulation
The historical perspective of simulation is as enumerated in a chronological order.
1940 − A method named ‘Monte Carlo’ was developed by researchers (John von
Neumann, Stanislaw Ulan, Edward Teller, Herman Kahn) and physicists working on a
Manhattan project to study neutron scattering.
1960 − The first special-purpose simulation languages were developed, such as
SIMSCRIPT by Harry Markowitz at the RAND Corporation.
1970 − During this period, research was ini ated on mathema cal founda ons of
simulation.
1980 − During this period, PC-based simulation software, graphical user interfaces and
object-oriented programming were developed.
1990 − During this period, web-based simulation, fancy animated graphics, simulation-
based optimization, Markov-chain Monte Carlo methods were developed.
1
Step 6 − Create a document of the model for future use, which includes objectives,
assumptions, input variables and performance in detail.
Step 7 − Select an appropriate experimental design as per requirement.
Step 8 − Induce experimental condi ons on the model and observe the result.
2
Simulation results are difficult to translate. It requires experts to understand.
Simulation process is expensive.
Additionally, it is used to study the internal structure of a complex system such as the
biological system. It is used while optimizing the system design such as routing algorithm,
assembly line, etc. It is used to test new designs and policies. It is used to verify analytic
solutions.
3
In continuous-event model, the system state variables are defined by differential
equation results whose value changes continuously over time.
Classification of Models
A system can be classified into the following categories.
Discrete-Event Simulation Model − In this model, the state variable values change only
at some discrete points in time where the events occur. Events will only occur at the
defined activity time and delays.
Stochastic vs. Deterministic Systems − Stochas c systems are not affected by
randomness and their output is not a random variable, whereas deterministic systems
are affected by randomness and their output is a random variable.
Static vs. Dynamic Simulation − Sta c simula on include models which are not affected
with time. For example: Monte Carlo Model. Dynamic Simulation include models which
are affected with time.
Discrete vs. Continuous Systems − Discrete system is affected by the state variable
changes at a discrete point of time. Its behavior is depicted in the following graphical
representation.
Continuous system is affected by the state variable, which changes continuously as a function
with time. Its behaviour is depicted in the following graphical representation.
4
Modelling Process
Modelling process includes the following steps.
Step 1 − Examine the problem. In this stage, we must understand the problem and choose its
classification accordingly, such as deterministic or stochastic.
Step 2 − Design a model. In this stage, we have to perform the following simple tasks which
help us design a model −
Collect data as per the system behaviour and future requirements.
5
Analyse the system features, its assumptions and necessary actions to be taken to make
the model successful.
Determine the variable names, functions, its units, relationships, and their applications
used in the model.
Solve the model using a suitable technique and verify the result using verification
methods. Next, validate the result.
Prepare a report which includes results, interpretations, conclusion, and suggestions.
Step 3 − Provide recommenda ons a er comple ng the en re process related to the model. It
includes investment, resources, algorithms, techniques, etc.
Validation and verification are the two steps in any simulation project to validate a model.
Validation is the process of comparing two results. In this process, we need to compare
the representation of a conceptual model to the real system. If the comparison is true,
then it is valid, else invalid.
Verification is the process of comparing two or more results to ensure its accuracy. In
this process, we have to compare the model’s implementation and its associated data
with the developer's conceptual description and specifications.
6
Techniques to Perform Verification of Simulation Model
Following are the ways to perform verification of simulation model −
By using programming skills to write and debug the program in sub-programs.
By using “Structured Walk-through” policy in which more than one person is to read the
program.
By tracing the intermediate results and comparing them with observed outcomes.
By checking the simulation model output using various input combinations.
By comparing final simulation result with analytic results.
Step 2 − Test the model at assump ons data. This can be achieved by applying the assump on
data into the model and testing it quantitatively. Sensitive analysis can also be performed to
observe the effect of change in the result when significant changes are made in the input data.
Step 3 − Determine the representa ve output of the Simula on model. This can be achieved
using the following steps −
Determine how close is the simulation output with the real system output.
Comparison can be performed using the Turing Test. It presents the data in the system
format, which can be explained by experts only.
Statistical method can be used for compare the model output with the real system
output.
7
with. Hence, we have to use a hypothetical system based on assumptions. Following useful
pointers will help in making it efficient.
Subsystem Validity − A model itself may not have any exis ng system to compare it
with, but it may consist of a known subsystem. Each of that validity can be tested
separately.
Internal Validity − A model with high degree of internal variance will be rejected as a
stochastic system with high variance due to its internal processes will hide the changes
in the output due to input changes.
Sensitivity Analysis − It provides the informa on about the sensi ve parameter in the
system to which we need to pay higher attention.
Face Validity − When the model performs on opposite logics, then it should be rejected
even if it behaves like the real system.
Parameters
Following is the list of parameters used in the Queuing System.
Symbol Description
λ Denotes the arrival rate which is the number of arrivals per second
Ts Denotes the mean service time for each arrival excluding the waiting time
in the queue
ρ Denotes the server time utilization, both when it was idle and busy
9
Tw Denotes the mean waiting time of all items
Td Denotes the mean waiting time of the items waiting in the queue
mx(y) Denotes the yth percentile which means the value of y below which x
occurs y percent of the time
10
Queuing Relationships
The following table shows some basic queuing relationships.
General Terms Single Server Multi server
Tr = Tw + Ts r = w + Nρ
Continuous Simulation
A continuous system is one in which important activities of the system completes smoothly
without any delay, i.e. no queue of events, no sorting of time simulation, etc. When a
continuous system is modelled mathematically, its variables representing the attributes are
controlled by continuous functions.
11
Why Use Continuous Simulation?
We have to use continuous simulation as it depends on differential equation of various
parameters associated with the system and their estimated results known to us.
Application Areas
Continuous simulation is used in the following sectors. In civil engineering for the construction
of dam embankment and tunnel constructions. In military applications for simulation of missile
trajectory, simulation of fighter aircraft training, and designing & testing of intelligent
controller for underwater vehicles.
In logistics for designing of toll plaza, passenger flow analysis at the airport terminal, and
proactive flight schedule evaluation. In business development for product development
planning, staff management planning, and market study analysis.
This method was first used by scientists working on the atom bomb in 1940. This method can
be used in those situations where we need to make an estimate and uncertain decisions such
as weather forecast predictions.
12
Monte Carlo Simulation ─ Advantages
Easy to implement.
Provides statistical sampling for numerical experiments using the computer.
Provides approximate solution to mathematical problems.
Can be used for both stochastic and deterministic problems.
13
Modelling and Simulation - Databases
The objective of the database in Modelling & Simulation is to provide data representation and
its relationship for analysis and testing purposes. The first data model was introduced in 1980
by Edgar Codd. Following were the salient features of the model.
Database is the collection of different data objects that defines the information and
their relationships.
Rules are for defining the constraints on data in the objects.
Operations can be applied to objects for retrieving information.
Initially, Data Modelling was based on the concept of entities & relationships in which the
entities are types of information of data, and relationships represent the associations between
the entities.
The latest concept for data modelling is the object-oriented design in which entities are
represented as classes, which are used as templates in computer programming. A class having
its name, attributes, constraints, and relationships with objects of other classes.
Its basic representation looks like −
Data Representation
Data Representation for Events
A simulation event has its attributes such as the event name and its associated time
information. It represents the execution of a provided simulation using a set of input data
associated with the input file parameter and provides its result as a set of output data, stored
in multiple files associated with data files.
14
Neural Networks in Modelling & Simulation
Neural network is the branch of artificial intelligence. Neural network is a network of many
processors named as units, each unit having its small local memory. Each unit is connected by
unidirectional communication channels named as connections, which carry the numeric data.
Each unit works only on their local data and on the inputs they receive from the connections.
History
The historical perspective of simulation is as enumerated in a chronological order.
The first neural model was developed in 1940 by McCulloch & Pitts.
In 1949, Donald Hebb wrote a book “The Organization of Behavior”, which pointed to the
concept of neurons.
In 1950, with the computers being advanced, it became possible to make a model on these
theories. It was done by IBM research laboratories. However, the effort failed and later
attempts were successful.
In 1959, Bernard Widrow and Marcian Hoff, developed models called ADALINE and MADALINE.
These models have Multiple ADAptive LINear Elements. MADALINE was the first neural
network to be applied to a real-world problem.
In 1962, the perceptron model was developed by Rosenblatt, having the ability to solve simple
pattern classification problems.
In 1969, Minsky & Papert provided mathematical proof of the limitations of the perceptron
model in computation. It was said that the perceptron model cannot solve X-OR problem. Such
drawbacks led to the temporary decline of the neural networks.
In 1982, John Hopfield of Caltech presented his ideas on paper to the National Academy of
Sciences to create machines using bidirectional lines. Previously, unidirectional lines were
used.
When traditional artificial intelligence techniques involving symbolic methods failed, then
arises the need to use neural networks. Neural networks have its massive parallelism
techniques, which provide the computing power needed to solve such problems.
Application Areas
Neural network can be used in speech synthesis machines, for pattern recognition, to detect
diagnostic problems, in robotic control boards and medical equipment.
15
A = {(x,μA(x))| x ∈ X}
Case 1 − The func on μA(x) has the following properties −
∀x ∈ X μA(x) ≥ 0
sup x ∈ X {μA(x)} = 1
Case 2 − Let fuzzy set B be defined as A = {(3, 0.3), (4, 0.7), (5, 1), (6, 0.4)}, then its standard
fuzzy notation is written as A = {0.3/3, 0.7/4, 1/5, 0.4/6}
Any value with a membership grade of zero doesn’t appear in the expression of the set.
16