Title: Lecture 3 Simulation Languages
1Lecture 3 Simulation Languages
- Simulation Languages for discreet systems e.g.
GPSS, SIMSCRIPT) - Simulation Languages for continuous systems
- Statistical considerations of experiments
2The Physical Model
The Physical/Deployment Model provides a detailed
model of the way components will be deployed
across the system infrastructure. It details
network capabilities, server specifications,
hardware requirements and other information
related to deploying the proposed
system. Deployment View
3The Physical Model (contd.)
The physical model shows where and how system
components will be deployed. It is a specific map
of the physical layout of the system. A
deployment diagram illustrates the physical
deployment of the system into a production (or
test) environment. It shows where components
will be located, on what servers, machines or
hardware. It may illustrate network links, LAN
bandwidth etc.
4The Physical Model (contd.)
5The Physical Model (contd.)
A node is used to depict any server, workstation
or other host hardware used to deploy components
into the production environment. You may also
specify the links between nodes and assign
stereotypes (such as TCP/IP) and requirements to
them. Nodes may also have performance
characteristics, minimum hardware standards,
operating system levels etc. documented. The
screen below illustrates the common properties
you can set for a node.
6Discrete Systems
A discrete system or discrete-time system, as
opposed to a continuous-time system, is one in
which the signals are sampled periodically. It is
usually used to connote an analog sampled system,
rather than a digital sampled system, which uses
quantized values.
7Simulation Languages
A computer simulation language describes the
operation of a simulation on a computer. There
are two major types of simulation continuous and
discrete-event though more modern languages can
handle combinations. Most languages also have a
graphical interface and at least simple
statistical gathering capability for the analysis
of the results. An important part of
discrete-event languages is the ability to
generate pseudo-random numbers and variates from
different probability distributions.
8Simulation Languages
- Discrete-event simulation languages, viewing the
model as a sequence of random events each causing
a change in state. - AutoMod
- GASP
- GPSS
- SIMAN, a language with a very good GUI (Arena)
developed by Rockwell Automation, Inc. - SimPy, an open-source package based on Python
- SIMSCRIPT II.5, a well established commercial
compiler - Simula
9Simulation Languages
- Continuous simulation languages, viewing the
model essentially as a set of differential
equations. - Advanced Continuous Simulation Language (ACSL),
which supports textual or graphical model
specification - Dynamo
- Simulation Language for Alternative Modeling
(SLAM) (There used also be a Simulation Language
for Analogue Modelling (SLAM)) - VisSim, a visually programmed block diagram
language
10Simulation Languages
- Hybrid, and other.
- EcosimPro Language (EL) - Continuous modelling
with discrete events - Saber-Simulator - Continuous and discrete event
capability. It simulates physical effects in
different engineering domains (hydraulic,
electronic, mechanical, thermal, etc.) - Simulink - Continuous and discrete event
capability - SPICE - Analog circuit simulation
- Z simulation language
- Scilab contains a simulation package called
Scicos - XMLlab - simulations with XML
- Flexsim 4.0 powerful interative software for
discrete event and continuous flow simulation.
11Simulation Languages
The Advanced Continuous Simulation Language, or
ACSL (pronounced "axle"), is a computer language
designed for modelling and evaluating the
performance of continuous systems described by
time-dependent, nonlinear differential equations.
It is a dialect of the Continuous System
Simulation Language (CSSL), originally designed
by the Simulations Council Inc (SCI) in 1967 in
an attempt to unify the continuous simulations
field.
12Simulation Languages for continuous systems
We define a continuous function in Mathematics to
mean a function for which, intuitively, small
changes in the input result in small changes in
the output. Otherwise, a function is said to be
discontinuous. A continuous signal or a
continuous-time signal is a varying quantity (a
signal) that is expressed as a function of a
real-valued domain, usually time. The function of
time need not be continuous. The signal is
defined over a domain, which may or may not be
finite, and there is a functional mapping from
the domain to the value of the signal. The
continuity of the time variable, in connection
with the law of density of real numbers, means
that the signal value can be found at any
arbitrary point in time. A typical example of an
infinite duration signal is f(t) Sin(t) ,
t?R A finite duration counterpart of the above
signal could be f(t) Sin(t) , t?-?, ? and
f(t) 0 otherwise.
13Introduction to Simulation Languages
Early effort in a simulation study is concerned
with defining the system to be modeled and
describing it in terms of logic flow diagrams and
functional relationships. But eventually one is
faced with the problem of describing the model in
a language acceptable to the computer to be
used. Most digital computers operate in a binary
method of data representation, or in some
multiple of binary such as octal or hexadecimal.
Since these are awkward languages for users to
communicate with, programming languages have
evolved to make, easier to converse with the
computer. Unfortunately, so many general and
special purpose programming languages have been
developed over the years, that it is a nearly
impossible task to decide which language best
fits or is even a near best fit to any particular
application.
14Introduction to Simulation Languages (contd)
Consequently, the usual procedure is to use a
language known by the analyst, not because it is
best, but because it is known. It should be
stated that any general algorithmic language is
capable of expressing the desired model however,
one of the specialized simulation languages may
have very distinct advantages in terms of ease,
efficiency and effectiveness of use. This class
will not teach how to program in any of the
languages described, nor to discuss
implementation techniques. What we do hope to
accomplish is to make us aware of the
characteristics of some of the more popular
languages, their strengths and weaknesses.
15Introduction to Simulation Languages (contd)
- The major differences between special purpose
simulation languages in general are - the organization of time and activities,
- the naming and structuring of entities within
the model, - the testing of activities and conditions between
elements, - the types of statistical tests possible on the
data and - the ease of changing model structure.
16Introduction to Simulation Languages (contd)
Characteristics, Strengths and Weaknesses
17Introduction to Simulation Languages (contd)