Professional Documents
Culture Documents
Forrester Diagrams and Continuous Petri Nets A Comparative View
Forrester Diagrams and Continuous Petri Nets A Comparative View
J?K CTLNPOkl Qhn #Sb Gh:g 7TIi<VU: 6kj< m : 7 l : 6k6kjojh< < ' Ghg Ii: 6kjV< Ghg I: 6
j<
1. Infinite servers semantics. In this case, transitions are
where and
Ghg I: 6
jV<
fired with: , where
6kj : 6kjV< 6
j
The places of a PN system could be seen as the state vari- is the enabling degree of
baba:: 6R6kvwp
<< ll :: 6R6kvwp
<T<TqqxJ?#SK :C 7t< #S: 7sri<VUt #S: 7u<
problem). A way to try to overcome this problem, is to con- tics, the flow vector is:
tinuize the system, what allows the use of different math-
equations . . . ).
The usual PN system, , will be said to be dis-
crete so as to distinguish it from its continuous relaxation.
In a discrete PN the marking is restricted to be integer,
while in continuous PNs any non-negative real number is
7
.
same way, that is, a transition is enabled at iff for ev- p3
. The firing of in
. p4
t3
a certain amount leads to a new marking
. p1 3
The continuization of a net system is intended as an ap-
... t1
3
proximation. A first thing to point out is that not all net sys-
tems allow a “reasonable” continuization. Examples can be
shown for which the lack of relationship between the qual-
Figure 1: A continuous PN system
itative properties of the discrete and the continuous system
may certainly look surprising [15]. For example, deadlock-
freeness of the continuous systems is neither necessary nor
sufficient for deadlock-freeness of the discrete system (not 2. Finite servers semantics. In discrete PNs, the constraint
even under structural boundedness).
Different timing interpretations can be associated to a
on the number of servers can be made explicit by el-
{ Qn
ementary self-loops around each transition marked
with tokens, as many as the number of servers.
6j
(discrete) Petri net. One possibility is to assign a determin-
istic fixed delay to each transition (deterministic timed nets). However, the meaning of the “servers tokens” and the
Another one is to consider that the delay of each transition is “client tokens” is very different for continuous systems,
since the latter represent large populations while the
_# b ` ' ) _ #) _
tion. But, in continuous systems, the marking is continu- In continuous PNs terminology, infinite servers semantics
# G @aI # $
ously changing, so we may consider the derivative of with is “variable speed”; while finite servers semantics is named
respect to time. This way we obtain that , plus “constant speed” (see for instance [1]), what in fact corre-
the initial condition . Let us call , since sponds to a “bounded” speed.
B. A basic population model ~r ~f
k 20
Let us consider a simple version of the predator/prey model t1
of Volterra-Lotka. This is a so well-known model that, for t2
2
brevity reasons, is not explicitly introduced here (it can be α−1
r 20 20 f
found, for instance, in [3]).
The colored PN in Figure 2(a) represents the problem us-
ing a discrete model (more realistic hypothesis could be in- t3 α
troduced in a simple way, but providing a more elaborated
model is not our goal here). The use of colored PNs is sim-
ply methodological here, to reveal the existence of individ- Figure 3: Place/transition net model of a bounded preda-
uals that can be grouped in homogenous populations. To tor/prey system.
do that, the model has to be decoloured [6] and we have to
#S: <
obtain the firing rates of the new transitions. Let and #S: <
be the number of predators and preys (foxes and rab-
bits, for example). If we consider the colored transition
at a certain instant, it is enabled in #S: < ' #S: <
differently
6
y
l : 6 y < ' #S: < ' #S: < 6
y
colored ways. For this reason in the decoloured (discrete)
model (see Figure 2(b)) has an associated firing rate equal
#;: < @
to . Both discrete net systems in Figure 2
_# : < ll: 6 p < ' #S' : < l : 6kG yw< ' #S: ' < l ' #S: <' '
PN are the classical Volterra-Lotka equations: , and .
"_# : < : 6 v < #S: < & X r I : 6kyw< #S: < #S: < The continuous PN, which was intended to be an “approxi-
mation” of the discrete model, is deterministic, bounded and
live! One could imagine that boundedness and liveness are
t1 t1 t2
t2 due to a “certain equilibrium” between the non boundedness
β r <r> <r> β f <f> <f> 2 and the deadlocks of the discrete system. To deepen into
r Π ∆ f r 20 20 f this question, the discrete PN in Figure 2(b) has been trans-
<r> <f> formed into a bounded net system, just adding complemen-
t3
αf <f>
t3 α tary places to ( ) and ( ) (see Figure 3). Seen as dis-
αr <r>
Fu @ & { @
Figure 2: Colored and place/transition net model of a preda- Just as an exercise, Figure 4 shows the trajectories for the
#$
tor/prey system
6 v
which (by conservation) must be
[
u @
tem.
za{ @ uF@ @PUF_# t #;: < : `< za& @MU#St _# :: < < #Su[@ : <& {
equal to the flow at , ; and so .
Therefore
zP@PUFt In this methodology two graphical models are used:
, and so . (In fact, for Causal Diagrams, and Forrester Diagrams. A differential
, , from which the straight line in the equations based model is straightforwardly derived from the
figure.) later.
Some final remarks: Causal Diagrams (CD) qualitatively show the causal re-
lationships between the parts (subsystems), by means of ar-
If the starting point is a colored net, it is necessary first rows with a sign that indicates if the relationship is posi-
to decolour (from which large populations can be ob- tive (greater/less cause implies greater/less effect) or nega-
tained) and later to fluidify. The reverse, first fluidify tive (the opposite). In these diagrams it is not distinguished
and then decolour, does not make sense, specially con- if the parts will be state variables or another type of variables.
sidering that “addition” and “min” operations do not Special attention is paid to the feedback loops (a closed chain
commute. of causal relationships) because they provide a first idea of
If just infinite and finite-servers semantics are allowed, how the system will evolve dynamically: positive feedback
the continuous PN is in fact a set of switching linear loops (even number of negative relationships) “indicate” an
systems. The use of the product of the markings as exponential grow, and negative feedback loops indicate the
the firing rate allows to represent more complex be- possibility of balance and equilibrium.
haviours. However still the locality principle is pre- Certain recommendations exist for the construction of
served. That is, the rate depends only on the making Causal Diagrams: avoid the fictitious loops, use easily quan-
of the input places (i.e., a local precondition). tifiable elements, do not use twice the same relationship,
Del 1
Del 1 Figure 7: Causal Diagram of basic predator/prey model
N1
N1
TA
TA The FD obtained after further elaboration is shown in Fig-
ure 8. It can be realised that valve includes the effect of
N1 N1 births and deaths of rabbits for natural causes, and that
F1 F1 includes the effect of births and deaths of foxes for natu-
N1 N1
ral causes (excluding the captures effect). In both cases the
F1 =
TA
TA
F1 =
TA valves could be divided into two, one for each cause. Ob-
TA
serve that flow equations must be included in the FD to fully
describe the model. In this case, the equations correspond to
Figure 6: Material and information first order delays in For- a model that is equivalent to the PN model in Section II.B
rester Diagrams (Figure 2(a)), which comes from a discrete model.
Figure 9 corresponds to the PN model of Figure 3, where
The interest of the hydrodynamic analogy is that indicates the populations capacities are bounded. This limitation, or
that a FD model is equivalent to a first order (eventually any other one, can be introduced in models either through
non linear, time dependent) differential equation system, and the flow equation (for example in bounding the foxes level,
vice versa. The equations of the model are simply the ana- by ), or through its graph (or a chart of values) that de-
lytic representation of the FD, and allow not only simulation scribes the function (as in the limitation of the rabbits level,
of the model but also the application of modern control the- by ). Models in Figures 3 and 9 lead to the same system
ory techniques. The equations just correspond to the material of equations.
G 6
I G a@ I & Q G
balance in each deposit:
1I [6 IV A SIMPLE MANUFACTURING SYSTEM
G 6
I U a6
U a6 G I
order differential equations: Taking a part from a buffer takes 0.2 time unites, and each
operation needs 1 time unit. All buffers capacities are 3.
There is a limitation in the number of parts of the system,
represented by parameter k.
where represents the exogenous variables.
Buffer Machine Parts A
Mach. 2 1a 1a
Machine
B. A basic population model Product
3
Buffer 2
(assembler)
Buffer Machine
1b 1b Parts B
Let us consider the same very simple predator/prey model as
in Section II.B. The goal of this example is just instrumental,
to show the process of model construction, but not to provide Figure 10: Diagram of the Simple Manufacturing System
a real approximation by a complex model. The Causal Di-
agram of that system is shown in Figure 7. Note that in the This is a discrete system. A discrete PN model is shown
diagram the ‘Captures’ should influence the ‘Foxes’ through in Figure 11(a), where each element has been modelled by
the ‘Foxes births’ and the ‘Foxes deaths’ rates, (2) and (3), means of two places (a place and its complementary one).
instead of directly (1), but to simplify the model and make Therefore, it can be observed that the number of places is
r
rb rd
br - 1
7v ' 6 G r ' aG XI ' r I
l3
af
fb
f
fd
l2
1 - bf
G I
Figure 8: Forrester Diagram of a basic predator/prey model (equivalent to Figure 2(a))
700
600
r 500
rb lim_r rd 400
limr(rabbits)
300
200
100
Captures
0 5 10 15 20 25 30 35 40 45 50
l3
l1
a-1 if
then
fmax
p 7=' 6 G F' IG r X I
fb
f else
different from the number of state variables, because only a k Discrete Continuous Continuous
state variable is needed for each element. However, for large
markings, great computational effort is required to carry out
ur@@ u
Infinite servers
0.278
Finite servers
0.833
the simulation as discrete, and a continuous approximation
may be interesting. The model in Figure 11(a) can be inter-
preted as a continuous system, with infinite servers seman-
> t @ t[t 0.555
0.833
0.833
0.833
tics (usually used in this paper). The finite servers seman- Table 1: Comparing the throughput of the discrete and the
tics model can be built too, keeping in mind that a server continuous models (under infinite and finite servers seman-
(machine) cannot simultaneously load and unload parts, and tics) of the manufacturing system
therefore the two delays should be added. In this latter case
the system has a very similar interpretation to an hybrid sys-
strongly connected Marked Graphs.
tem, as it can be observed in Figure 11(b), where machines
have been represented as discrete places, and the remaining These values indicate that it is necessary to be careful
places, and all the transitions, are continuous. when analysing the behaviour of a model if approximations
are used. With the continuous approximations the computa-
{ r
Up to now we have seen that this discrete system can be tion is simplified but some accuracy may be lost. This dif-
analysed with a PN using a discrete deterministic model, a ference can be observed more clearly in the extreme case of
continuous model with infinite servers semantics, and a con- having a single part of each type ( ). In that case it is
tinuous model with finite servers semantics. We could won- evident that as deterministic discrete, the time for producing
der if they all will give “similar” results, and it is not really a new part, i.e., the inverse of the throughput, in steady-state
the case. The results of the referred cases are represented in is the sum of the times of the slowest branch, that is, 3.6
Table 1. It shows the throughput in steady-state for the ini- seconds. But as continuous with finite server semantics, the
tial marking shown in Figure 11, depending on k (the bound time is only that of the slowest transition, that is, 1.2 seconds.
on the number of parts in the system). Note that in this case Thus, a coefficient of three makes the difference (!).
continuous infinite servers and discrete deterministic mod- The behaviour of the system can also be simulated with
els provide the same production rates, a general result for Forrester Diagrams. When modelling the system by means
* MACH 1a
(a) (b)
I
Figure 11: PN model of a manufacturing system (can be seen as discrete or as continuous),
turing system under finite servers semantics
iI PN model of the manufac-
of FDs the machines are considered as material delays be- 1. Marking of places vs. levels. In FDs each level cor-
tween the levels, which are the buffers (Figure 12(a)). The responds, to a state variable. However, although in
' c
greater the order of the delay is, the more it may look like PNs places are essentially state variables, redundan-
'# '# $
the deterministic discrete system. Nevertheless, this is not cies may exist due to token conservation laws derived
crucial, because the usual procedure in FDs is to adjust the from P-flows ( is a P-flow iff , thus
time parameters in the delays to get the observed production ). Particular cases are structural im-
86 68 r
been briefly presented and some examples analysed from cycle. It can be demonstrated that these transformations
both points of view. Both provide a graphical support for can be made in general in nets that are conservative and
easy generation of systems of differential equations. A clear topologically state machines ( ). This
MACH 2
BUF 2a MACH 1a
Parts A
MACH 2
BUF 1a MACH 1a
Parts A l2a l1a
l3
MAX
MAX MACH 1
l1a BUF 1a
l3 BUF 2b MACH 1b
Parts B
BUF 1b MACH 1b
Parts B l1b
l2b
MAX
MAX MAQ 2
l1b BUF 2a
l6
l4
l5 MAX
MACH 3
l5
(a) (b)
Figure 12: I FD model of the manufacturing system, iI Translation of the PN in Figure 11(a) into a FD
l1 l2 l3 r ~r
p'1 p'2 p'3
15 15 21 21 35 35 rb rd
25 9 21
Captures
l1
a-1
l3
fb
(b) f ~f
I
' #S: 7 p < & t ' #;: 7 v < & 7 ' S# : 7y
<
fd
l2
Figure 13: PN with an implicit place and a conservative
component:
Reinterpretation of the PN, after removing
, and
7 iI
Figure 15: Translation from a PN model of a bounded
prey/predator system to a FD model (Figure 3)
All these cases show that a direct translation of the
PN into the FD will usually produce redundant equa-
tions. The FD in Figure 9, which corresponds to the
(the flow) takes place according to the information that
prey/predator model, is different from the FD obtained
valves receive of the whole system state, through the
by direct translation of the PN of Figure 3 (see Fig-
flow of information. The evolution of the PNs (the fir-
ure 15). Observe here that there are four levels but only
ing) takes place according to the information that each
two state variables (there exist only two independent
transition receives from its input places. That is, FDs
conservation laws).
separate the material and the information flows, and
2. Transitions vs. valves: flows. The evolution of FDs evolve according to global information of the system,
whereas PNs have only a flow of material that carries (b) Information. In FDs the information affects to the
the information implicitly, and evolve according to in- dynamics of the valves in a global way, as it has
formation that in standard uses is local to each transi- been already commented. Moreover it affects in
tion (its input places). Figure 16 makes explicit a hypo- a generic way, since arbitrary equations (includ-
thetical separation of material and information flows in ing any kind of non linearities) can be associated
the PN of Figure 2(b). to the valves. However, in PNs the information af-
fects to the dynamics (evolution) of the system not
t1 t2 t1 t2 only locally, but also according to a limited num-
2 ber of functions: basic functions depending on
r f r f
the semantics (like infinite servers semantics, or
finite server semantics) and additional functions
that may arise for example from the decoloration
t3 t3
a a-1 of a colored net. If basic semantics are kept, some
X]>+r
properties of the original discrete systems could
Figure 16: Hypothetical separation of flows in a PN ( ) subsist. But nothing prevents to define any other
global firing functions, and this way the graphical
tool that we obtain includes continuous PNs and
A more detailed comparison can be made between the
FDs.
flows:
3. On their typical application domains
(a) Material. In FDs material is strictly conservative
r Tr
around the valves, that is, the relationship among FDs have been traditionally used to model existing
input and output flow is always , but this does complex socio-technical and bio-ecological systems,
not imply the existence of conservative laws over whose behaviour has to be studied. Usually, those mod-
the set of levels. In this sense valves in FDs act els are used for the analysis, mainly by means of simu-
like stations in Jackson or Gordon-Newell Queu- lation. There exist several computer programs to create
ing Networks: identity of customers is preserved and simulate a FD, and are friendly enough to be used
when a service is provided. On the other hand, even by non experts in the subject.
in PNs weighted conservation is frequent, even if Continuous PNs have been mostly used in the design of
r
joins and forks exist. In a general case, around “technical” systems, and much effort has been made in
a transition with input arcs and output arcs,
r j
formal analysis techniques. The analysis has been done
ratios will exist, with , at two levels:
and (Figure 17).
G I
transformation is used in the interpretation of the VI REFERENCES
levels. Thus material connectivity is possible for
channels (see Figure 18(b)); simulta- [1] H. Alla and R. David. Continuous and hybrid Petri
neously the same quantity of valves (and clouds) nets. Journal of Circuits, Systems, and Computers,
is saved in the simulation. 8(1):159–188, 1998.
PIN 1 POUT 1 PIN 1 POUT 1 / b1
. a1 .
a1 . .
b1
. .
.
. .
. .
. .
. .
.
. .
POUT POUT m
m l
PIN n l PIN n
an bm an bm
(a) (b)
[2] J. Aracil. Bifurcations and structural stability in the dy- [13] T. Murata. Petri nets: Properties, analysis and applica-
namical systems modeling process. Systems Research, tions. Proceedings of the IEEE, 77(4):541–580, 1989.
3(4):243–252, 1986.
[14] L. Recalde and M. Silva. PN fluidification revisited:
[3] F. E. Cellier. Continuous System Modeling. Springer, Semantics and steady state. In J. Zaytoon S. Engell,
1991. S. Kowalewski, editor, ADPM 2000: 4th Int. Conf. on
Automation of Mixed Processes: Hybrid Dynamic Sys-
[4] J. M. Colom and M. Silva. Improving the linearly based tems, pages 279–286, Dortmund, 2000.
characterization of P/T nets. In G. Rozenberg, editor,
Advances in Petri Nets 1990, volume 483 of Lecture [15] L. Recalde, E. Teruel, and M. Silva. Autonomous con-
Notes in Computer Science, pages 113–145. Springer, tinuous P/T systems. In J. Kleijn S. Donatelli, edi-
1991. tor, Application and Theory of Petri Nets 1999, vol-
ume 1639 of Lecture Notes in Computer Science, pages
[5] R. David and H. Alla. Continuous petri nets. In 107–126. Springer, 1999.
EWATPN 1987: 8th European Workshop on Appli-
[16] M. Silva. Introducing Petri nets. In Practice of Petri
cation and Theory of Petri Nets, pages 275–294, Nets in Manufacturing, pages 1–62. Chapman & Hall,
Zaragoza, 1987.
1993.
[6] C. Dutheillet, G. Franceschinis, and S. Haddad. Anal- [17] M. Silva and J.M. Colom. On the structural computa-
ysis techniques for colored well-formed systems. In tion of synchronic invariants in P/T nets. In EWATPN
G. Balbo and M. Silva, editors, Performance Mod- 1987: 8th European Workshop on Application and
els for Discrete Event Systems with Synchronozations: Theory of Petri Nets, pages 237–258, Zaragoza, 1987.
Formalisms and Analysis Techniques, chapter 7, pages
233–284. Jaca, Spain, 1998. [18] M. Silva and L. Recalde. Réseaux de Petri et re-
laxations de l’integralité: Une vision des réseaux
[7] Jay W. Forrester. Industrial Dynamics. MIT Press, continus. In Conférence Internationale Francophone
Cambridge, Mass, 1961. d’Automatique (CIFA 2000), pages 37–48, Lille, 2000.
[8] Jay W. Forrester. Principles of Systems. Productivity [19] M. Silva and E. Teruel. A systems theory perspec-
Press, 1968. tive of discrete event dynamic systems: The Petri net
paradigm. In P. Borne, J. C. Gentina, E. Craye, and
[9] Jay W. Forrester. Urban Dynamics. Productivity Press, S. El Khattabi, editors, Symposium on Discrete Events
1969. and Manufacturing Systems. CESA ’96 IMACS Multi-
conference, pages 1–12, Lille, July 1996.
[10] K. Jensen. Coloured Petri Nets: Basic Concepts, Anal-
ysis Methods, and Practical Use. EATCS Monographs [20] M. Silva and E. Teruel. Petri nets for the design and
on Theoretical Computer Science. Springer, 1994. operation of manufacturing systems. European Journal
of Control, 3(3):182–199, 1997.
[11] K. Jensen and G. Rozenberg, editors. High-level Petri
Nets. Springer, 1991. [21] P. S. Thiagarajan. Elementary net systems. In
W. Brauer, W. Reisig, and G. Rozenberg, editors, Petri
[12] E. Mosekilde, J. Aracil, and P.M. Allen. Instabilities Nets: Central Models and their Properties. Advances
and chaos in nonlinear dynamic systems. Systems Dy- in Petri Nets 1986, Part I, volume 254 of Lecture Notes
namics Review, 4(1-2):14–55, 1988. in Computer Science, pages 26–59. Springer, 1987.