Professional Documents
Culture Documents
1 Abstract
Recently, the interest in Computer Aided Engineering
of complex systems has increased 1]. This increase is
mainly due to the growing complexity of systems under
study. This article focuses on systems characterised,
not so much by a large number of components, but
rather by the diversity of the components. A simplied example of an environmental system is presented.
For the analysis and design of such complex systems, it
is no longer su cient to study the diverse components
separately, using the speci c formalisms these components were modelled in. Rather, it becomes necessary
to answer questions about properties (most notably
behaviour) of the whole system.
This article discusses in an informal manner, the concept of \formalism" which is the key to expressing semantics of models. Those models can be represented
using di erent modelling languages. It is shown how
di erent modelling languages are related to one another, enabling meaningful model exchange and re-use.
Some particular model representations are suited for
use by a \solver", allowing the model to be simulated.
The general architecture of simulators is presented.
In certain cases, it is possible to describe a mathematical relationship between di erent formalisms. This
mapping may be implemented as a translator between
modelling languages. Transformation between formalism has di erent uses. Firstly, certain questions about
a system can only be answered in certain formalisms,
necessitating model transformation to the appropriate
formalism. Secondly, to elicit the meaning of a coupled
model consisting of sub-models in di erent formalisms,
transformation of these sub-models to a common formalism is appropriate. This transformation process
will be demonstrated.
Research Fellow at CERC, the Concurrent Engineering Research Center, WVU, Morgantown, USA
2 Introduction
The analysis, design and control of complex systems
(hardware, software and hybrid) involves the manipulation of di erent abstract representations or \models" of these systems. Typical abstractions or formalisms used in physical systems modelling are bond
graphs, Petri-nets, di erential equations and queueing
networks. In software systems, abstractions include nite state automata and entity relationship diagrams.
The representation and manipulation of system models using di erent formalisms has been a task allotted
to the experienced modeller, who traverses the modelling life-cycle, from goals, through multiple abstract
models, into a concrete implementation. This process
has hitherto remained internalised (i.e., the modeller's
experience), limiting the chances of its successful automation.
Due to the continuing integration of hardware and software, there is a growing need for integrated modelling
support. It is suggested that a rigorous multi-paradigm
modelling methodology will provide a backbone for
complex decision-making.
One of the main advantages of explicit model representation are the resulting simulations. At di erent
levels of abstraction, experiments can be performed on
the model through simulation. This provides quantitative insight into the (analysed, designed, controlled)
system. Through simulations, chances of propagating
errors throughout the design are greatly reduced and
insight into the dynamics of the system is enhanced.
In the sequel, the term \formalism" will be used
rather than the more vaguely de ned \paradigm". A
paradigm is a way to view things (e.g., functional,
object-oriented, . . . ). A formalism is a rigorous, mathematical framework. We will loosely de ne a paradigm
as a set of similar formalisms.
WWTP
Fish Farm
s +1 = (s )
DAE
polluted
effluent
purified
effluent
algae
System Dynamics
Discrete Event
paper
fish
landfill
3 Semantics of Models
As in denotational semantics 2] of programming languages, we will formalise the meaning of a system
model by describing its relationship to a mathematical
framework: a \formalism". As an extremely simplied example, we present the Finite State Automaton
(FSA) formalism:
FSA =< S; >
where S is a nite set of sequential states and
:S!S
model trafficlights
{
red -> green;
green -> yellow;
yellow -> red;
}
green
red
yellow
mathematics
formalism
computer science
end-user
internal
representation
languages
- semantic checks
- "writing" out
- closure
- optimisation
MSL-intern
MSL-extern
existing languages ...
solver
(simulation kernel)
DR and level always occur together. Levels may in uence each other by in uencing each other's BR and DR.
Figure 7 depicts the structure of a System Dynamics
model component.
"solver-level"
(DSblock) language
source
sink
level/stock
flow
birth
rate
death
rate
API
imposed by the formalism. Also, the (iterative) speci cation of the state trajectory in the formalism serves as
a formal speci cation of a \solver" or simulation kernel. It is possible to design a modelling language for
a formalism with a well-de ned Application Programmer's Interface (API) which is suited for linkage with
the solver. Di erent language belonging to the \formalism" category may exist. MSL-intern stands for a
machine-oriented dump of the internal representation.
MSL stands for Model Speci cation Language.
formalism
computer science
internal
representation
- semantic checks
- "writing" out
end-user
languages
lex/parse
language 1
language 2
solver
(simulation kernel)
Process Interaction
Discrete Event
Finite State Automata
DEVS
data
Figure 8: Formalisms
Figure 9 gives an example of a very particular formalism: the \network" or \coupled model" formalism.
When we observe a structured model such as the one
presented in the introduction, we can only make meaningful assertions about its structure, NOT about its
behaviour. In particular, the only knowledge we have
about the model is the set of sub-models it is composed of and a graph describing the coupling between
the sub-models.
5 Formalism Transformation
Often, a (mathematical) relationship exists between
di erent formalisms. Based on this mapping, translation of a model in one formalism to the same model
described in another formalism becomes possible. An
mathematics
computer science
internal
representation I1
formalism F1
CouplingGraph
mathematical
mapping
Msub_1
syntax
directed
translation
Msub_2
internal
representation I2
formalism F2
CoupledModel
end-user
languages
F1 - L1
F1 - L2
...
languages
F2 - L1
F2 - L2
...
example of a transformation between a System Dynamics model and its DAE representation is given in
Figure 10. Often, translation involves a loss of infor-
sink
level/stock
flow
birth
rate
death
rate
Formalism: DAE
dL
-- = Birth_rate - death_rate
dt
Q: linear system ?
Q: trajectory ?
System Dynamics
System Dynamics
System Dynamics
DAE
DAE
data
As previously mentioned, a coupled model only provides information about its components and their interconnection (Figure 9). If all the sub-models are of
the same formalism F , it may be possible to transform
the coupled model into one atomic model of type F .
The ability to do this within a formalism F is called
the closure property 4] of F (which has to be proven
mathematically for each F ). This process is illustrated
in Figure 13.
x
m1
y
m2
x
y
NAME UNIFICATION
M = < {m1, m2},
m1: x -> m1.x; y -> m1.y
{M.x-m1.x, m1.y-m2.x, m2.y-M.y}>
m2: x -> m2.x; y -> m2.y
m1: y:=f(x)
CLOSURE of DAE formalism
m2: y:=g(x)
m1.x := M.x
m1.y := f(m1.x)
m2.x := m1.y
m2.y := g(m2.x)
M.y := m2.y
System Dynamics
?
DAE
Bond Graph
Process Interaction
Discrete Event
Finite State Automata
DEVS
data
7 Conclusions
Discussions within the Simulation in Europe ESPRIT
Basic Research Working Group 5] have clearly shown a
need for multi-formalism modelling. This article gives
an informal description of an approach which is intuitively appealing, yet rigorously correct. Preliminary
implementations of the framework were successful and
will be pursued. It is believed the correctness and standardisation of modelling and simulation environments
will greatly improve if due attention is paid to the
meaning of models by means of rigorously described
formalisms.
8 Acknowledgements
The authors wish to express their gratitude to Dr.
Y.V. Reddy, director of the Concurrent Engineering
References
1] Hans Vangheluwe and Ghislain Vansteenkiste.
Computer-aided modelling of complex systems. In
Proceedings of the ADIUS Sixteenth Annual Conference (Seattle), 3800 Stone School Rd., Ann Arbor, Michigan 48108-2499 USA, June 1995. Applied
Dynamics International.
2] Hanne Riis Nielson and Nielson Flemming. Semantics with Applications: A Formal Introduction. Wiley Professional Computing. John Wiley & Sons,
Chichester, England, 1992.
3] Alfred Aho, Ravi Sethi, and Je rey Ullman. Compilers, Principles, Techniques, and Tools. AddisonWesley, 1986.
4] Bernard P. Zeigler. Theory of Modelling and Simulation. Robert E. Krieger, Malabar, Florida, 1984.
5] Eugene J.H. Kerckho s, Hans L. Vangheluwe,
Ghislain C. Vansteenkiste, and Philippe Geril.
Improving the modelling and simulation process.
Progress Report 1994:1, ESPRIT Basic Research
Working Group 8467, BIOMATH Department,
University of Gent, Coupure 653, B-9000 Gent,
Belgium, 1994.