2 SD METAMODEL
SD is an approach for modelling and simulation of
complex and dynamic (socio economical) systems.
Characteristic for SD is the emphasis on closed
cause and effect chains between system elements
which often lead to a counterintuitive behaviour of
the system (Forrester, 1969, p. 107 ff.). Through
simulation of the models, this counterintuitive be-
haviour can be revealed and taken into account for
possible decisions.
This section begins with an introduction to the
language concepts of the level/rate language. As
mentioned above, only the conceptual aspects of the
language should be considered, calculational and
implementational aspects must stand back. All ex-
planations refer to the type level of the language
which leads to a structural description of a model.
The following rationale refers to textual descrip-
tions of the level/rate language found in (Forrester,
1964, pp. 68-83; Forrester, 1972, pp. 140-145; Rob-
erts, 1981, pp. 19-20; Sterman, 2000, pp. 192-204.
2.1 Constructs
2.1.1 Node Types
Levels are containers, representing state values of
system elements. The value of a level changes over
time, being the accumulated difference between
inflows and outflows of content into, respectively
out of the level.
Rates control the flow between the levels of a
system, representing the activity inside a system.
The control of a flow is achieved via decision func-
tions which determine the amount of flow depending
on information about levels in the system.
Auxiliary variables do not belong to the original
concepts of the level/rate language. From a calcula-
tional point of view, auxiliary variables are equation
parts, unhinged from (comprehensive) rate equa-
tions. From a conceptual point of view, they are
informational concepts, having an independent
meaning. They influence the decision functions that
control the rates and are themselves influenced by
levels and / or other auxiliaries and constants (see
below). In sum, they are derivative concepts, intro-
duced for pragmatic reasons, for easing the commu-
nication and improving the clarity of the model.
Sources and sinks represent the boundaries of a
system model. Sources are the stocks from which a
flow coming from outside the model originates.
Respectively, sinks are the stocks taking flows
which leave the model.
Constants are state variables which do not or change
that slowly that they could be assumed constant for
the time scope of the model.
2.1.2 Edge Types
Flows are the edges connecting levels, representing
the inflow and outflow altering the level. Inflows are
pointing at the level, adding content to the level,
outflows are pointing away from the level, subtract-
ing content from the level.
Information links are immaterial and connect the
inputs for the decision function of a rate. Infor-
mation links may point to rates and auxiliary vari-
ables, but not to levels (may only be changed by
flows, see above), constants (do not change, see
above) and sources or sinks (beyond scope, see
above). However, information links may point away
from all element types (information take-off), except
sources or sinks (again: beyond scope).
2.2 Metamodel
The following section presents the metamodel of the
level/rate language. The reading order is from node
type to edge type. Additionally, the naming conven-
tion of the relationship types indicates the direction
of the edges, e.g. ‘Level precedes Flow’ describes a
flow edge, pointing away from a level node. A dia-
gram of the resulting metamodel is shown in Figure
1.
Levels.
(1) Levels are connected to flows pointing at or
pointing away from the level. This relationship can
be represented as a level succeeding or preceding a
flow.
(2) Forrester states that ‘A level may have any
number of inflows and outflows’, (Forrester, 1964,
p. 68, Footnote 2) which results in cardinalities of
(0, 1) on the level side and (0, m) on the flow side.
(3) It is declared that a level can only be changed
by flows. In particular no causal link can point di-
rectly into a stock. However, it is possible that a
causal link can point away from a stock (stock pre-
cedes causal link; see below).
Rates.
(1) It is stated that rates define the flows between
the levels of a system. Provided that node types
cannot directly connect to other node types, an edge
type has to be the intermediate. Here, the flow type
is the intermediate between a rate and a level. Be-
cause a flow is controlled by exactly one rate, the
cardinalities are (1, 1) on both sides (rate and flow).
ICEIS 2008 - International Conference on Enterprise Information Systems
296