You are on page 1of 25


Performance Evaluation 33 (1998) 175-199

A modelling and analysis tool for discrete events systems: continuous Petri net
Hassane Alla *, Rem5 David ’
Laboratoire d’Automatique de Grenoble (INPG-UJF-CNRS), B.l? 46, 38402 Saint-Martin-d’Ht%-es,France

Received 14 April 1993; received in revised form 15 December 1997


Autonomous and timed continuous Petri nets are defined. The autonomous model is presented as a limit case of autonomous discrete Petri nets and thus preserves most of the properties of classical Petri nets. A timed continuous Petri net, with constant firing speeds associated with transitions, is obtained from a timed discrete Petri net. This model has interesting properties such as marking and firing invariants, but its main interest is the construction of the evolution graph. This graph represents the behaviour of the system and contains a finite number of nodes, which allows very short simulations duration in comparison with discrete model simulations. The approximation given by the continuous model is often satisfactory, especially in the case of large markings. 0 1998 Elsevier Science B.V. All rights reserved.
Keywords: Continuous Petri net; Continuous marking; Firing speed; Modelling; Continuous systems; Discrete event systems

1. Introduction
Petri nets. In a Petri net (PN), the marking of a place may correspond either to the Boolean state of a device (for example a resource is available or not), or to a number (for example the number of messages in a buffer). When a PN contains a large number of tokens (or marks), the number of reachable states explodes. It is a practical limitation of the use of Petri nets [l]. To illustrate this point, consider an initial example of a system composed of a data processor with an entrance buffer (buffer 1) and an exit buffer (buffer 2) with respective finite capacities, N1 and N2. This system can be modelled by the PN of Fig. 1. For example, in this model place Pl represents the number of data in buffer 1 and place P2 vacant places in this buffer. Firing of transition Tt consists in loading buffer 1 by a new datum. The number of reachable states of this model is N = (Ni + l)(N;? + 1)2. For Nt = N2 = 10, then N = 242. For a set composed of 10 buffers and 9 processors, N is greater than 1013 states!
* Corresponding author. Tel. :+33 4 76 82 62 34; fax: +33 4 76 82 63 88; e-mail: ’ E-mail: 0166-5316/98/$19.00 0 1998 Elsevier Science B.V. All rights reserved. PII: SO166-5316(98)00016-9 This paper provides a new modelling tool derived from classical discrete Petri nets: Continuous


H. Alla, R. David/Per$otmance Evaluation 33 (1998) 175-199

Data in

Data in buffer 2

Vacant places

Processing data Fig. 1. A simple system.

Vacant places

This statement led us to define a continuous modelling. The idea of continuous modelling has been used by certain authors [2,3] and provides a very good approximation for discrete systems. Consider the second example given in Fig. 2(a). An hourglass is initialized at time to. Its behaviour from to may be described by the PN of Fig. 2(b). This PN is transition timed (T-timed), which means delays are associated with transitions [4,5]. Another kind of timed PN, P-timed, considers the delays associated with the places [6]. In the timed PN of Fig. 2(b), the tokens in places P1 and in P2 represent the number of grains in the upper part and in the lower part of the hourglass, respectively. The delay dl corresponds to the average time between two successive passings of grains from the upper part to the lower part. Place P3 and its marking model the passing of grains one at a time. When a place similar to P3 is associated with any transition, it may be conventional that the place is implicit, then it is not represented. Let m 1(to) = C and m2(to) = 0 the initial marking of places P1 and P2. The number of reachable states of this net is equal to C + 1 and then is approximately proportional to C. Now consider the passing of grains as a continuousj~w with a frequency U1 = l/d1 . This functioning can be modelled by the continuous Petri net of Fig. 2(c) in which the markings of places PI and P2 are non-negative real numbers at any time. A firing speed IJ~ is associated with the transition Tl. That means that the quantity of marks passing from PI to P2 between time t and t + dt is VI dt. The comparison of models of Figs. 2(b) and (c) is represented in Fig. 2(d). For both models all the marks have passed from P1 to P2 at time tl = C/ U1. Two phases can be considered in the evolution of the continuous markings. The first one lasts from to to tl and is characterized by a firing speed ~1 = U1 and the second one, whose duration is infinite by a firing speed ~1 = 0. Each phase is defined by a constant speed vector composed here of one component because there is only one transition in the net. The knowledge of these two speeds and the initial marking are sufficient for determining the complete behaviour of the net. The number of phases of the continuous model, 2 (independent of C), is to be compared with the number of states of the discrete model: C + 1. These remarks form the basic idea which led us to define the continuous Petri net with a constant speed vector per phase. It is called constant speed continuous Petri net (CCPN). This tool may be useful for modelling continuous systems such as handling of fluids. It may also model discrete event systems: in this case the model forms an approximation as it can be shown in Fig. 2(d) [7,8]. Section 2 is devoted to the presentation of autonomous continuous PN (no time is involved in this model). It is defined as a limit case of an autonomous discrete PN. The basic properties are presented as counterparts of basic properties of the discrete model.

The only difference is the way to define the instantaneous deterministic firing speeds associated with the transitions. Several continuous models have been defined [9.H.) is a finite. the construction of the evolution graph of a CCPN will be very useful for evaluating the performance evaluation of discrete event systems. . The autonomous model defined in this paper constitutes a common basis from which continuous models can built. T. (d) comparison of the two models. David/Pelformance Evaluation 33 (1998) 175-199 177 -b- J. Alla. P fl T = 0. It is the basic model which is presented here [ 111. Pre. (a) Hourglass.10]. .= l/d1 d Continuous-PN model -dDiscrete timed-PN tO t f Cd l=C/U I Fig. T2. . T = {Tl. (c) continuous PN model. (b) discrete timed PN model. Pn) is a finite. T. set of places. In particular. not empty. and Post: P x T -+ (0. Autonomous continuous Petri nets Definition 1. the sets P and T are disjoint. .e. . Pre: P x T -_. 1) is the input incidence application. A Petri net is a quadruple R = (P. Post ) where P = {PI. . . the CCPN is obtained from a T-timed discrete PN. R. set of transitions. l} is the output incidence application. 2. In Section 3. 2. i. P2. . not empty. . A formal definition and the main properties are given. {0.

g . From automonous discrete Petri net to autonomous continuous Petri net. M(4)> . A PN can be represented by a graph [ 12-161. _ gradient of marking rel ‘vetoT. . Pre( Pi. . An example is presented in Fig. 3(a).178 H. . 9} is the set of places. T = {Tl . : T2+T1 i T2%Tl I . . M > . .h . . T2+Tlm1 2 O 0 I 0 0 - 1 2 f markings of <R.markings of( R.M> CR. In this example P = {PI. David/Performance Evaluation 33 (1998) 175-199 -b- -C- < R. . . %! 2 T. i . L- . . . q) and Post( Pi. . M’(k)> I m2 4 2 ++. . q) defined the weights of arcs Pi + q and q + Pi. T&UT.markings of< R. .I T2k++l. respectively. Alla. M’(kq (zyy$ed expressed in “marks” expressed in “tokens” -dreachable markings <R. R. . ~ ..W T. T2+T.M(co)) Fig..“J> for -e- reachable markings fo <R. i i . 3. T2j is the set of transitions. .

3(b) leads to the marking M’(k) = (2k. R. a similar splitting (of parts) has been used in [17]. However. i. E T ) PoSt(Pi. (0. blT. (a. it corresponds to an integer number of tokens. Now for the Petri net (R. Tj) > 0} = set of output places of Tj. Firing of Tl leads to marking (1. M( PI) = 2 and M(P2) = 0. The possible markings are presented in Fig. 3(e).0). the markings of the Petri net in Fig. The set of reachable markings is {(2. 3(h). Then mi = rnj / k. then M = (2. Pi” = {Ti E T 1Pre( Pi. M(P2). When each mark is split into k = 2 tokens (Fig. The marked Petri net in Fig. the set of markings becomes infinite. Ml = (1. 3(d). Fig. as shown in Fig.2)). firing of Tl from marking (2k. a marked Petri net is transformed into another net by splitting tokens. Alla. 4. The marking M = (2. Another example is presented in Fig. 0. 3(b).O).0). the marking of a place is no more an integer but a real number. for which both Tl and T2 are enabled and so on. 0) in Fig. 3. This transformation results in a new Petri net (R. It can be represented by the segment of a line. M’(4)). l).e. When k + 00. q) > 0) = set of input transitions of Pi. . When k tends towards infinity. rni (k) = kM( Pi): marking expressed in tokens.H. M’(k)) such that M’(k) = (kM(Pl). . 4(a) has four reachable markings. A marking is a vector2 M = (M(Pl).2) and M3 = (0.0). 3(f) shows the set of possible markings and the corresponding transition firings (i. as illustrated in Fig. the coverability graph) in the plane defined by m 1 and m2. The terms “token” and “mark” are usually synonymous. 2 In order to simplify the notation.e. .0). . transition Tl is enabled since there is at least one mark in the input place PI. Tjo = (Pi E P 1Post( Pi. 3(e). This number is an integer greater than or equal to 0 in the classical (discrete) Petri nets. The coverability graph is illustrated in Fig. M’(k)) in Fig. M2 = (0. In Fig. When the marking is (2. o Pi = (q In the following section. the transposed matrix is represented in parenthesis. . As far as the marking of (R. In order to introduce a continuous model for a manufacturing system. l). 0) leads to (2k . 3(g) for (R. 3(c). (1. 4(c).1.0. 4(c).1. In order to simplify. the set of reachable markings corresponds to all points in the shaded triangle in Fig. 3(c) are expressed by a rational number of “marks”. MO) where Mu denotes an initial marking. as shown in Fig.). The coverability graph for the Petri net (R. M’(k)) is expressed in tokens. In this paper we consider the transformation such that a mark is split into k tokens (then mark and token are synonymous when k = 1). 2. kM(P2). 1) and so on. M) in Fig. there are nine reachable states which are also illustrated in Fig. 0. . 4(d). b) = [a. namely MO = (2.O) in Fig. 4(b)).Tj)>O}=setofinputplacesofTj. Notation 2. if we come back to the initial unit. In an autonomous continuous PN. . let us use the following notations: l l mi = M (Pi): marking expressed in marks (initial or transformed PN). 0 ‘Tj={PiePI l l l Pre(Pi. 3(c). Reachable markings A marked Petri net is defined by a pair (R. Tj) > 0) = set of output transitions of Pi. 3(b) is shown in Fig. David/Performance Evaluation 33 (1998) 175-199 179 Notation 1. l).) such that M (Pi) is the number of tokens in place Pi.

..’ 0 0 2 1 m .... Alla.180 H. -d- -e- Fig.... Illustration of gradients of markings and trajectories. ..........._.... 4... David/Petiormance Evaluation 33 (1998) 175-199 T2 3 P 2 6 _A_ T 3 -a- : a T2 4$! 3 p2 T 3 -b- m 18 m 3 -c- 0 11 3 m . R..

Consider a firing of Tl from the marking of the Petri net in Fig. In other words. Firing of the single transition Tl is a particular sequence St = Tl . The following can be written: AM=Ml-MO= W. 3(b). Let Mt denote the marking obtained after S. In other words. [ 1 .(k) defined by M. Tj). 0). 1). 3(b).‘].H.S. we obtain the marking M. The characteristic vector of S is denoted S = (2. The transition sequence S = Tl Tl T2 can be obtained from Mu in Fig. 3(c) MA(k) = (2k.]=[2k. This means that there are two firings of Tl and 1 firing of T2 in the transition sequence (note that transition sequence T1 T2T1 has the same characteristic vector). S1 which corresponds to the first column of W since Sl = (1. a firing expressed in tokens is equivalent to 1/k firing expressed in marks.Pre( Pi. Let dtt = 1/k denote this quantity of firing when k tends towards infinity. R. The modification due to this firing is given by W . 3(c) is equivalent to one firing of Tl in Fig. Alla. Marking Ml is obtained from MO as a result of the fundamental equation: Ml =Mo+W. Gradient of marking and trajectory The incidence matrix of PN in Fig.O).(k)=[Zgk]+[.2. 2(a) is: TI T2 A term in W is defined by wij = Post( Pi. from Mu. Tj) . As far as the markings are expressed in marks.’ !l][. In that case the above equation can be rewritten as dM = W . [l/k 1 o “0” It is clear that a sequence of k firings of Tl in Fig. (1) Then AM = W . Now if we convert tokens into marks. we obtain Then AM expressed in marks is given by AM=W . a column of W corresponds to a marking modification when the corresponding transition is fired in a marked PN. David/Performance Evaluation 33 (I 998) 175-I 99 181 2. Using the token as a unit. S corresponds to the marking modification due to S. some quantity of$ring l/k can be considered.S.

0) leads to the marking Mt = (1.2 + 0. Alla. The incidence matrix of this generalized Petri net is For some marking A (see Fig. T2 and T3. P2 and PI. For example. The arrow labelled Tl in Fig. T3 cannot be fired since na2 = 0.0. 4. Then the partial derivatives of A4 can be defined with respect to tt and r2 G1 = EC [ 1’ 1 . some transitions cannot be fired.5 = 1 for T3). = S3 = (T~)0~6(T2)0~4(T3)0~3(T2)0~2(T~)0~4(T3)0~2(T2)0~4(T3)o~5. In a discrete PN. -l). For this marking.O. When the marking corresponds to a vertex. the firing sequence S1 = Tl T2T3 from marking Mu = (2. 1) are obtained. 4(d)) Gt = (-l. For marking D. 4. and (2) at any time in these sequences the total quantity of firings N(Tl). N(T2) and N(T3) are such that N(T2) I N(Tl). 0. In particular for marking E. in Fig.6+0. David/ Perjknance Evaluation 33 (I 998) 175-I 99 Consider now marking A4 in Fig. a firing sequence implies a string of successive markings. For marking C. either Tl or T2 can be fired.2 + 0. the length of S4 becomes infinite. 3(h).4 + 0. G3 = (1. For marking B. neither Tl nor T2 can be fired since m 1 = 0. 1 G2=:= 2 1. These marking gradients are illustrated by the arrows labelled Tl .4 = 1 for T2. When k tends towards infinity.4 = 1 for Tl. since (1) the total quantity of firing is 1 for the 3 transitions in each of these sequences (for S3 : 0. 3(h) is an illustration of Gt at this point. Nevertheless.3 + 0. any firing sequence of any length s6 = Oi)“(T#‘U#~~~ (T~“(TI)~(T~~ . The sequence $7 may be generalized for any positive integer k: S4 = ((T#‘k)k((T2)1’k)k((T3)1’k)k.5)2((T3)o. However. the sum of the exponents of each S4 is always equal to 1 for the three transitions. the following firing sequences are possible for the continuous PN: S2 = (T~)“~5(T~)o~5(T~)o~5(T~)o~5(T3)o~s(T3)o~5 ((Tl)o. a firing sequence implies a trajectory (corresponding to a string of successive markings) in the state space. only the firings corresponding to both corresponding sides are possible.3. N(T3) 5 N(T2) and N(T1) + N(T2) ( 2 + N(T3) (which are implied by initial markings of P3. 1).5)2. T2 cannot be fired since m3 = 0. one can observe that there is a deadlock since ml = m2 = 0. To reach A41from Mu. R. Now when the marking corresponds to some bound of the domain of reachable markings. from a marking M. 0.5)2((T2)o. -3.182 H. Consider now the examples in Fig. G2 = (-1. from a marking M. respectively). 1) for the discrete PN. IY1 -1 Remark 1. In a continuous PN. it is not represented in full size so as to obtain clearer figures (scale is about l/4). The gradient corresponds to the tangent of the trajectory. and 0. More generally.

Trajectory H1 may be obtained by a firing sequence S1 such that B=A+ W. pure. S2 (which does not imply that St = S2). . T-invariants. c . free-choice.a . the sequences with infinite lengths are not used in practical cases. 2.b ? 0. liveness can easily be generalized. G:! and G3. structurally alive. Consider for example Fig. . with priorities) can be used for both autonomous discrete PNs and autonomous continuous PNs. Y = 0. Some abbreviations (places with bounded capacity. S1 = W . in an autonomous continuous PN. 3(a): X = (1. W = 0. From this marking. a < 2. the gradient of marking must be a weighted sum of Gl. Alla.3. . the number of marks is less than 3. Y = (1. without conflict. are non-negative numbers which may be infinitely Small). .b > 0 and 2 .3. 2. an event graph. in an autonomous discrete PN. deadlock freeness. PN with predicates) and some extensions (with inhibitor arcs. 3(a) is bounded and live. there is no firing sequence S3 able to produce trajectory H3 because at any point of the trajectory. The aim of the explanations given above is to show that firing sequences of continuous PNs are counterparts of firing sequences of discrete PNs. . leads the net back to the initial marking. etc. b. . N(T3) 5 N(T2) and N(T1) + N(T2) ( 2 + N(T3). Some examples of structural properties are given below: (1) A Petri net may be a state graph.Sl Similarly. 1) is a T-invariant since W . Pz} is constant. Classical properties Any structural property is true both for autonomous discrete or continuous PNs since a structural property is a property of a PN without marking. 3(a). The notion of trajectory is easier to use. However.0. The PN of Fig. (3) P-invariants. and any trajectory containing the same quantity of firings for Tl and T2. it is possible to highlight interesting properties of an autonomous continuous PN. c 5 b. That means that any transition sequence from the initial marking which contains the same number of firings for Tl and T2. 4(e) illustrates three trajectories from marking A to marking B. a . Properties of autonomous continuous Petri nets Through the formal definition given in the previous section. (2) Structurally bounded. Consider the Petri net R in Fig. H2 may be obtained by a firing sequence S2 such that W . David/Performance Evaluation 33 (1998) 175-199 183 is possible from Mu as long as N(T2) 5 N(Tl). 4(a) is bounded because for any reachable marking and for any place. coloured PN. 4(d). 1) is a P-invariant since XT .e. It is clear that all the properties of this PN are independent of the marking. Fig. simple. That means that the total number of marks in the set of places {PI. These properties are the counterparts of the same ones of autonomous discrete PNs [12-171.H. This net is not deadlock free since the marking (0. (a. On the other hand. R. no transition is firable.2) is a deadlock. This is not possible according to Fig. i. The notions of boundedness. I. For example the PN in Fig.

Transition T3 is O.e.4 -1 -2 1 1 -b-aFig.1.5 litres and is fed by the other two tanks. the quantity of firing is r such that r is a real number. Definition 2. A transition is enabledif for any place Pi in ‘Tj. Tj) may be real numbers instead of integers.01 mark is added to P3. assuming that no other transition is fired.2. r 5 q.4 in Fig. Assume it is 0. 5. Pre(Pi . The behaviour of this system is modelled by the autonomous continuous Petri net of . the marking of a place is a real number instead of an integer. 5)) > 0. The weights of arcs i. then 0. An autonomous continuous Petri net. P2) = 0. Tl and T3 are enabled. 5(a). Pj E “q That means that the maximum “quantity of firing” for rj. while 0.1. David/Pe$orrnance Evaluation 33 (1998) 175-199 [ -1 0 1 -0. The quantity of marks taken from or added to the places is defined by the incidence matrix.4 and Pre(P3. 6(a). For example m 1 = 2.2 in Fig. Tj) > 0 . It now seems interesting to present the notion of q-enabling introduced in [9.01 mark is added to P1 and 0. In Fig. Alla. 5(a). Examples 2. A transition Tj in a continuous Petri net is q-enabled if 4 = +Il(mi/Pre(Pi. This expression is the same as for discrete PNs.2/2 = 0. 5) and Post(Pi . T2) = 3.1-enabled. Tank 3 has a finite capacity of 12. The only difference is that “> 0” means “2 1” for a discrete PN. For example Post(P2. R.01. In fact this can be written M( Pi)/Pre(Pi . the quantity of firing of T3 (before another transition is fired) is at the most 0.13]. is q.4 3.184 H. When a transition is fired.l-enabled since m2/Pre(T3. 5(a).3. 2.1 and m2 = 0. T2) = mark is taken out of P2. Notion of q-enabling In a continuous PN.4. Transition T1 is 2. In Fig. 5(a). while “> 0” corresponds to any positive real number for a continuous PN. 2. M( Pi) > 0. A continuous system Consider the tank system given in Fig.

David/Performance Evaluation 33 (1998) 175-199 18. .5 Tank1 Tank 2 and W2 Ik 3 is full -aFig. -b- p1 20 c? Processor 1 ps T1 % 0 Fig. Tank system. Shared variables between four processors.H. Alla. 6. 7. R.

6(b). respectively. R. David/Performance Evaluation 33 (1998) 175-199 Fig. transitions Tl and T: are enabled at t = 0. The markings of P1 and P2 (i. Each processor has an input buffer where the variables waiting for a treatment are stored. respectively. Timed continuous Petri nets Timed Petri nets with constant times associated either with places or with transitions are used in order to model various systems. means that there are 20 discrete tokens in the place PI ). a periodical functioning is reached.1 litres in tank 2. 3. A discrete system A local network links four processors sharing s common variables. reserved or not. 10.4). The timed PN is assumed to work at its maximum speed. In Fig. The autonomous discrete PN of Fig. This is naturally a discrete PN (whose behaviour will be approximated by a continuous PN in Section 3.25 variables are.2 and 3 respectively. m 1 and m2) correspond to all the marks. while tank 3 is empty.). Times dl = 1 and d2 = 3 are associated with transitions T1 and T2.4 lines in tank 1. 7 models the route of the variables in the system. In this PN. When it has been updated in processor number i. a question arises: Is it possible to define timed continuous Petri nets as a limit case of timed discrete Petri nets? It is known that a Petri net with delays associated with transitions can be transformed into a Petri net (describing the same behaviour) with delays associated with places and vice versa. . for example. 0. at time t = 1. From discrete timed PNs to continuous timed PNs Consider the timed PN in Fig. this is modelled by places P5-Pg. a variable is directed towards processor number i + 1 (modulo 4). The number of shared variables is constant and at the initial time. The weights 2 mean that for each volume unit withdrawn from tank 1 and from each volume unit withdrawn from tank 2. P2. while place P4 models the empty part of tank 3. then a mark is reserved in PI.186 H. Although the capacity of the buffers is assumed to be infinite.4. The markings of places P3 and P4 remain constant. and so on. 8(c) (discrete model). nevertheless the number of variables in a buffer is bounded by the total number of variables.. 8(a).e. available in the buffers of processors 1.2. a transition is fired as soon as it can be fired. Since these tools are widely admitted for modelling and performance evaluation [4-61. 3.1. For our purpose a Petri net with timed transition is more suitable. in these places. Alla.e. 6(b).2. The marking in Fig. the period is A = 3. 20. here 55. Each processor can work with only one variable at the same time. 68. 8(a). in P3 in P2 and in P4 in order to fire these transitions. P2 and P3 represent the contents of tanks 1. At time t = 1 transition Tl is fired: this means that the reserved marks are taken away from P1 and P3 and non-reserved marks are put into P2 and P3 which are the output places of Tl . After time t = 2. 8(a) corresponds to time t = 0. Then.3 and 4 (20 (. i. P3 and P4 represent the buffers and the transitions Tl. T3 and T4 are associated with processing. T2. 2. places Pr . 2 volume units are added to tank 3. Transition Tl will be fired again at t = 2 and T2 will be fired at time t = 3. places PI. transition Tl is enabled again (enabling is due to non-reserved marks: the marks needed to fire these transitions are reserved). assuming that initially time there are 87. In Fig. The corresponding behaviour is illustrated in Fig.

8.H..) d2 -dFig. Speeds VI = U1 and V2 = U2 are known as the maximal jiring speeds associated with the two transitions. Then place P3 corresponds to explicit Zimitution to one firing of Tt at the same time.. it is possible to construct a continuous model by replacing each delay dj by a firing frequency Uj = l/dj . . (c) behaviour of both models. P4 corresponds to an explicit limitation to one firing of T2 at the same time. because there is only one mark in P3. . This gives the CCPN of Fig. David/Pelfanance Evaluation 33 (1998) 175-199 187 l/d1 = 1 T2~+ -a- U2= l/d:!= l/3 -b- A ml Kri=iss. . 8(a). . (d) evolution graph. (b) a continuous Petri net. . It may be observed that at any time there is at the most one mark reserved in Pt . respectively. The values vt (t) and v2(t) are called. R. Starting from the initial time. . (a) A timed Petri net. . 8(b). . Alla. Similarly. . the instantaneous jiring speeds of the transitions Tl and T2 at time t .crrnodel MO= (2 1) 3 . the evolution of the markings of the two places is governed . From the discrete PN of Fig. tO= o 0 2 4 6 8 time 3 2 / IF / I 4 .

Alla. I I Fig. The terminal node represents the steady speed vector. 9 can arise if a unique buffer. At all times t 2 tl. l/3)). We can observe that there are two kinds of enabling. One solution consists in giving priority to a transition.V2)dt. A conflict situation.Vz>dt. The behaviour of the CCPN can be represented by an evolution graph. A conflict situation. The relation ml + rn2 = 3 is a marking invariant. David/Per&onnance Evaluation 33 (I 998) i 75-199 by the following equation system in the interval [0. from time tl . Transition Tl is weakly enabled: enabled because vl > 0. there is an effective conflict since at least one of the transitions T2 or T3 cannot have its maximal speed. we have vi(t) Q(t) = v2 = l/3): ml(t + = VI = 1 and dt) = ml(t) . . In this graph. while another consists in sharing the flows proportionally to the maximal speeds. weakly because m 1 = 0 then ul < VI. the speed vector (~1. the speed vector becomes (~1. has to supply two stations modelled by T2 and T3. Transition T2 is strongly enabled since m2 > 0. t + dt]. IQ) = (1. The dynamic marking balance of each place is zero. we have u1 = 2~2= V2 = l/3 and ml(t) = 0 and m2(t) = 3. A steady state is said to have been reached. transition T2 is fired at the speed uZ(t) = V2 = l/3 because m2(t) > 0.(VI . 8(d) that the sum of the markings of places PI and P2 is always equal to 3. modelled by PI. and the instantaneous firing speed q(t) is equal to V2. IQ) = (l/3. 9. Transition Tl supplies the place P1 with a quantity zll dt during dt (~1 may be equal to or less than VI). v3 _( V3 and 212 ug = ur . Thus.v2) and with each transition is associated the marking whose occurrence produces a changeover from one speed vector to another.e. v2/ V2 = u3/ V3. each node corresponds to a constant speed vector (ut. This means that the quantity (V2 + V3)dt is taken away from the marking ml during dt (irrespective of the quantity added by firing of Tl). l/3) is associated with the initial marking and when marking Mt is reached.V2) = 3. given in Fig. In the interval [t. If ~1 is such that 0 < 2rl < V2 + V3. represented in the form of a Petri net. These equations remain true as long as ml(t) > 0 and mz(t) > 0. The behaviour is deterministic ifthe conJlict is solved + a priori. tt) (in this interval. R. As long as ml > 0 there is no effective con$ict since both transitions can be fired at their maximal speeds. i. presented in Fig. Let us now consider the case m 1 = 0. m2(t + dt) = q(t) + (VI . 8(d). This quantity may then pass through Tl. Then. the firing of T2 deposits a “quantity of marks” V2dt in place Pl. We may also note in Fig. The behaviour of the continuous PN is such that v2 5 V2. Place P1 becomes empty at time tl = ml (O)/(Vl .188 H.

T. .{Tl. A transition Tj is enabled at a time t if all places Pi of ‘q satisfy at least one of the following two conditions: (1) mi(t) > 0. Mu). (2) mi(t) = 0. a place having a zero marking can enable an output transition. An effective conflict is said to have a positive solution if and only if for all transitions Tk of set {T1. . V is an application of the set T of transitions of R in the set of numbers R+ U [ 00). Pre. T. Tk. Alla.1. . . (2) Pi is supplied.. TU}. . The speeds Vi of Definition 4 may correspond to the maximal speeds vk. . . Definition 6. Tk. A value V’k< Vk may be obtained if an input place of Tk other than Pi. knowing that M(t) denotes the marking at time t. The transition is strongly enabled if all the places of ‘Tj satisfy the first condition. Post are similar to those of discrete PNs. . R. . ‘7 with j such that Tj E ‘Pi. Post..k’.2. . . AconflictK = (Pi. Definition4. IJk(t) > 0 is obtained. T. MO is the initial marking. The speed V (5) = Vj corresponds to the maximal firing speed of transition Tj . .H. . The definitions of P. . VL is the maximal instantaneous firing speed if place Pi is not taken into account.2. + V’k + . This section is only concerned with CCPNs with weights of arcs equal to 0 or 1. is supplied with a speed i. Pre.1. A practical method for determining the set of enabled transitions consists in using Boolean variables defined . Enabled transition As discussed in Section 3. . . . David/Performance Evaluation 33 (1998) 175-I 99 189 3.. Definition 5. . M(t)) is an eflective conjict if the following three conditions are met: (1) Pi is an input place of the transitions Tl. when it is supplied by an enabled input transition. .e (3) 0 < cj Uj(t> < V’l + . CCPN. . with zero marking. T. . The recursive form of Definition 6 does not allow us to know whether or not a transition is enabled. It is a vector of positive or zero real numbers which may also be written as MO = M (0). where VI = Vk if no place other than Pi limits the firing speed of Tk. MO is the initial marking of the continuous PN. . T. . Formal presentation Definition 3. or possibly to lower speeds if the constraints imposed by places other than Pi forbid the firing of Tk at a speed greater than VL. which are enabled by M(t). real positive numbers are associated with arcs. . However generalized CCPNs may also be considered.}. .As a general rule. 3. In this case. A place Pi is supplied at a time t if and only if there is at least one transition Tj in “Pi which is enabled. V. . and weakly enabled otherwise. A constant speed continuous PN is a sextuple R = (P.

E’) then let Y = Y + 1. . Remark 2. 0. If (A’+‘. . . . . E) with A = (al. 1. Example 1. only the zero components of vector X should be considered at the following steps.O). eq). e.O). Indeed ai = 1 since the corresponding place is marked. we use a series iteration mode. e. A’+’ = F(E’). . aj. Step 4. ei = ai = 1. .i = 0. Step 2. Let us place X = (A. 0. Mode F is defined as follows: A’+l = F(E’). 0. e$ = 0. el. and the vector dimension. a. otherwise Algorithm 1. ai = max(ey. . i. . The iteration vector is X = (al. (first time). E’+l = F(Ar+l). e2. = u: = 0. otherwise min{Ui/ Pi E 5’). ui = ei = 0. and Algorithm 1 converges in a finite number of steps (because the variables are discrete.) and E = (el. Step 1. X1 = (1. . otherwise ai = 0. Go to Step 2. It is a fixed point calculation. uir+t = I 1 if Pi is marked. ei = ai = 0. 0. . 0. On the other hand. 0. a. otherwise max{ej’/Tj i. a~. . min{al+‘/Pi E “Tj}. eg. . ej = 1 if the proposition otherwise e. Initialization. Function F is an increasing function. E’+’ ) # (A’.) is a Boolean vector of dimension IZ+ m.0. ai = i otherwise max{ej/ Tj E ‘Pi]. David/Performance Evaluation 33 (1998) 175-l 99 by the following propositions: Ui: place Pi is marked or supplied. On the other hand. 0. . is true. E’+l = F(A’+‘). .. Step 1. X0 = (0. ej = 1 if ‘Tj is empty. The set of enabled transitions corresponds to components ej = 1.190 H. By agreement ai = 1 if the proposition is true. which converges quickly. .).e. Since F is an increasing function. We finish up with a system of equations of the fixed point: 1 if Pi is marked. e.e. and places 9 and P3 have a zero marking. Step 2. R. Step 3. . Let us consider the CCPN given in Fig. Calculation of the set of enabled transitions of a CCPN for a given marking. E ‘Pi}. e: = a! = 0 and e. i This system is of the type X = F(X) where X = (al. 0. IZ+ m. 10 and let us calculate the set of enabled transitions by Algorithm 1. Alla. In order to calculate the set of enabled transitions. is finite) [l 11. el.r+t = J 1 if ‘Ti is empty. ej: transition Tj is enabled. Place P1 has a non-zero marking.

Step2 uz= max(ef ._z 1. vj(t) = Vj. Property 1. T3 and T4 are enabled. 1. then Bi = 0 in this interval. We shall note that Bi -c 0 can only be obtained if place Pi has a non-zero marking. Vk . = ^ _ (thirdtime). X2 = (l. We have in this case et = e2 = e3 = eq = 1. speed of a transition Tj strongly enabled at a time t is equal to its Prior to considering the firing speed of a weakly enabled transition.1). i. The instantaneous jring maximal speed. m Tk) .1. 3. t2).e.1.O. if mi = 0 in the interval [tl. ei = “32= 1. T2. 1.1. The instantaneous Jiring speed of a transition Tj weakly enabled relation: vi(t) = min [ Vj. transitions Tt. 1). 10.X~=(1.O. l. et = u.) .1. David/Pe$onnance Evaluation 33 (1998) 175-199 191 F 5@ T VI=4 1 P p20 T v2= 2 V2’ 1 i?z 0 3 Y- T3 *4 V4’ 3 Fig. Example of a CCPN. and that if we have B. We shall observe that the set of enabled transitions depends on the set of marked places. is given by the 1 with i such that Pi E ‘Tj and mi (t) = 0. ei) = 1 and e. Step 2 (second time). Indeed ai = ei = 0.H.1. the marking of Pi does not remain zero. Firing speed of a transition Since a CCPN functions at “maximal speed”. but not on the number of marks in these places. Since the components of vector X3 are all equal to. . this enables the instantaneous firing speeds of the enabled transitions to be calculated (this can be compared with the property of a timed discrete PN: if it works at maximal speed. R. Therefore. the convergence vector is reached (Remark 2). vk The value of Bi corresponds to the increase (possibly negative) in number of marks in T’i per time unit (Bi also corresponds to a mm-king gradient).0. let us introduce the notion of dynamic balance Bi : m Bi = c k=l POSt (Pi. I$II(B~ + vj(t)) at a time t.Indeeda~=e~=1ande~=a~=1. = at = 0. Property 2.2. Alla. the firing frequencies can be calculated).2. T. I.c k=l PR (pi.

This is true for all places Pi which are empty.(t) . (t) . Step 2. Alla.:+‘+~w. If u’+’ # v’ then let r = Y + 1 and go to Step 2. calculation is performed. . where u is a vector of real numbers of dimension equal to that of the set of transitions enabled at a time t. taking into account the fact that certain speeds have been updated at step r + 1. 11.. Calculation of u’+l by relation (2). E o Pi and Tb E Pi”. where Wjk is an element of the incidence matrix: I ‘. for a place Pi with a zero dynamic balance. the following Let Y = {Tl. Vector v is the limit of the iteration mode G.& Ub(t) + Uj(t). The number VJ is the value of speed uj obtained at the iteration step number Y. If all the input places Pi of rj have a positive dynamic balance (all the Bi > 0).v3-VI) Fig.v2 1 . a distribution rule must be defined between the transitions in conflict (for example priority or proportionality to Vj).v3) vZ=min(V2..~+~~)] lotherwise (2) with i such that Pi E OTj and mi (t) = 0. It clearly appears that the only case which may restlt in an uncertainty is the conflict situation (Fig.(~) with T. then none of these places can remain empty and r+(t) = Vj is obtained. The formula mini [..] of relation (2) corresponds to the equation of Property 2. Step 3. In order to remove this uncertainty.v3-v2) v1 = min (VI .v2) vl=min(Vl. Otherwise.n~~~~k. Algorithm 2. .v2+v3) v =min(V1. Calculation of the firing speeds. Step 1. we then have Uj(t) = c.. v. R.. Since Tj belongs to Pi”. Calculation of the instantaneous$ring speeds of the transitions enabled at a time t.. . The expression of v(t) in Property 2 can be interpreted in the following way. David/Petiornmnce Evaluation 33 (1998) 17. Ts} be the set of transitions enabled at a time t. At each step. 11 gives examples for calculating speeds in four different configurations where the input places of the transition considered have a zero marking (Property 2).+I= I$ if rj is strongly enabled. 21. Fig. Initialization u” = 0 and r = 0. 1 l(d) where vt is a function of ZQand vice versa). hence the function mini.Tz.. min [. The calculation of the instantaneous firing speeds is also a fixed point calculation of the type u = G(v). we can write Bi = 0 = C.5-199 v1=min(V1.‘& IQ.192 H.

. ~3.(t)). then vi = min( V3.. a transition Tj such that vi(t) > 0. we choose to give priority to transition T3 over transition TJ.2): [ hl k3 ri22 I[ = -1 0 1 -101 -1 0 1 1 -1 ][I 0 4 2 : =l. The marking of the PN is M(t) = (ml(t).2. There is a structural conflict between transitions T3 and T4.3). vi) = min(l. 1. . 1. Fundamental relation In a CCPN. v(t) = (q(t). In this step. T3 and T4 are weakly enabled.2. Algorithm 2 may be used when there is IZUcon. m. Alla. Initialization LJ’ = (0 0 0 0) Step 2 (first time). only the firing speed of transition T2 is modified.n.e. i. . v3 = (4. vi) = min(2. . the transitions in Pi* are arranged according to decreasing priorities (the transitions in conflict will be numbered one after the other). Step 2 (third time). ~2. Remark 3. relation dM dt = w * v(t). T2 is not enabled. R. David/Pe$ormance Evaluation33 (1998) 175-199 193 Example 2.~7. . T2.3t. Step 2 (second time). [1 -3 2 = 2t. is continuously t + dt is deduced from the marking at time t by the relation mi(t+dt)=mi(t)+&(t)*dt. Indeed we have: Tl is strongly enabled. u2 = (4. .6. since vi = min( V2. T3. 3. v. 4) = 1 and vi = min(V4. mj(t) .3). the expression of the marking M is obtained as a function of the time (this calculation is simple since the speed vector is constant) ml(t) = 9 . ~4). 3).3) = 2. m2(t) = t. and u = (v 1. T4} (Section 3.1). By integrating these equations. u{ . then v2 is the limit vector (convergence obtained in a finite number of steps). dt The marking M(t) of the CCPN of Fig. u1 = (4.3) has been calculated in Section 3. Step 1.) = min(3..3..2. Vector u3 is equal to v2.(t)).2. Let us reconsider the CCPN given in Fig.2.H. vi) = 0. 10 and calculate the instantaneous firing speeds of the enabled transitions: Y = {Tt. for a conflict relating to a place Pi. where W is the incidence matrix of the continuous PN and v(t) the instantaneous firing speed vector at time t. 1. Let thefundamental - fired. In this case. We shall write dmi =tii. The marking of a place Pi at time i=l..ict or when the resolution of the effective conflict is carried out by priorities.3) = 3. . Indeed. 10 is given by the system of equations (the vector v(t) = (4. then vi = VI = 4. . vg = min(V2. 1.2.

The interval Ak characterizes an invariant behaviour state (IB-state). this invariant behaviour state corresponds to a functioning phase. In a CCPN. we have found (Section 2. the pOSitiOn Of a new Vahe 0 corresponds to the place which is the reason for the change in speed vector.2. are similar to those of the discrete PNs.e.194 H. David/Petiormance Evaluation 33 (1998) 17. the time tk Of change Of speed Vector and the marking at this time rk. the marking evolves in a continuous manner.e. In this marking. The above equations are thus valid as from the initial time and until one of the markings becomes zero. such as marking invariants. Ak = tk . a marking vector implies a speed vector if there is no effective conflict or if these conflicts are solved in a deterministic manner. Others are specific to the model. After time t2 = 9. 12 gives the evolution graph associated with the CCPN of Fig. An evolution graph is a graph in which a node is associated with an IB-state (in this state. Certain of these. mi (&_I) > 0 and Bi (tk-1) < 0. 10. the marking of a place is a continuous function of time. Evolution graph In a continuous PN.3.3) that the only place with a positive marking and a negative dynamic balance is PI. We indicate on an arc connecting a node k to a node k + 1. We observe that it is the changeover of m 1 to the value 0 which causes the changeover from the first IB-state to the second.2. Properties Using the fundamental relation (3). In fact. Here the balances of the four places are zero. This will be studied in the following section. .3.5-199 It is clear that a marking cannot be negative. Alla.1. i. Fig. Remark 4. i. R. We thus have At = 9/3 = 3. according to relation (3)). several properties can be found for CCPNs. These conditions change when the marking of a place becomes zero. 3. The state of a CCPN at a time t is completely defined by its marking and by its speed vector. However. The speed vector is constant over a certain period for a CCPN and is sufficient for obtaining information on the dynamic behaviour of a continuous PN.t&t is given by The min function is taken on all the places Pi having a non-zero marking at the time t&l and having a strictly negative dynamic balance. In the case of the CCPN of Fig.3t cannot be verified for t > 3. a final firing speed vector is reached and the markings of the three places are constant. 10.3. Invariant behaviour state The instantaneous$ring speeds determined by Algorithm 2 are calculated at a time t and remain constant as long as the enabling conditions do not change. The terminal node of a graph is obtained as soon as the speed balances Bi are positive or zero for all the places. 3. 3. a characteristic quantity of the functioning of a CCPN is the instantaneousJiring speed vector which remains constant in an IB-state. The duration of an interval of time [tk_l. It is a period of time during which all the instantaneous firing speeds are constant. tk) is determined by the first place whose marking becomes zero. The changeover from one IB-state to the following one occurs when the marking of a place becomes zero. It is then difficult to construct a graph of reachable markings in the general case. thus equation m 1(t) = 9 . such as invariant behaviour state and evolution graphs for the CCPNs. but the number of markings is infinite.

3. Starting out from a P-invariant X. Property 3. Y = 0. Invariants of a CCPN If we observe the fundamental relation (3). 1j which gives the following invariant: ml(t) + m2(t) + mj(t) = 9. This property is derived from the fact that each IB-state (except for the last one) has a finite duration. 10. P-invariants and T-invariants are defined in the same way.tGO Vt. if we multiply relation (3) by XT to the left. We finally obtain dM = 0 and M(t) dt = ikf(tk) Vt ) tk . David/Perforrnunce Evaluation 33 (1998) 175-199 195 MO = (9. we note that its form is similar to that of the discrete PNs.0. Evolution graph of the CCPN of Fig.H.invariant XT = (1. (4). we obtain X~~=X%v. A T-invariant verifies W. Alla. we have one P. 1. we have: XT. given by Eq. and that the number of IB-states is finite (each new IB-state being the consequence of the changeover to value 0 of the marking of a place). For example in the case of the CCPN of Fig. Let us assume that there is a firing speed vector at a time tk which verifies the relation W. Thus the marking no longer changes (no place can have a marking which becomes zero). Indeed. V(tk) = 0. This means that the dynamic balances Bi are all zero at time tk.3. Every CCPN without effective conjlict converges to ajnal ZB-state in aJinite time. 10. M(t) = XT * M(0). a marking invariant is deduced. 12. By integrating the two members of this relation. 3. R. Then.0) -r tO=o Fig.

At the initial time. the marking remains constant if and only if the jinal Jiring speed vector is a T-invariant (the case where all the instantaneous firing speeds are zero is a trivial case of T-invariant). the processing times for one variable in the processors. then the PN is unbounded.5. . a final IB-state Processor 1 VI = 5 Processor2 v2=3 3 Processor3 = (0. this occurring at time tl = 8. Transition T3 is weakly enabled then ~3 = min(v2. 12 is a T-invariant of the CCPN of Fig.5. In order to obtain a CCPN. Then the CCPN of Fig. Example Let us take again the example presented in Section 2. V3 = 1 and V4 = 4 are associated with the transitions of the discrete PN of Fig. V2 = 3. corresponds to a real number). the final firing speed vector of the evolution graph of Fig. i. place P4 is the first place whose marking becomes zero. For example. 10. 1/ V2. 7. where marking of place PI is zero. David/Per$ormance Evaluation 33 (1998) 175-199 Property 4.3. The values l/ VI. (b) Evolution graph. This functioning phase will last until = the buffer of station 4 is emptied. (a) In the final IB-state.2. Finally after time t3 = 27. 3. R. T2 and T4 are strongly enabled then q = 5. for example.e. maximal firing speeds VI = 5. 3. Shared variables system between four processors.196 H.5.4. 0) Processor4 _a_ -b(a) CCPN model. 13. Fig. The end of the second phase occurs at time t2 = 11.33.25. After time tl a new firing speed v = (5.2. 1. v2 = 3 and 7~4 4. V3) = 1.3. 13(a) is obtained (here the marking 20 in PI. transitions Tt. 1) is obtained. (b) If the final firing speed vector is not a T-invariant. Alla. l/ V3 and l/ V4 represent. respectively. 22.

For the discrete model. 14. 14. Alla. m2(t) = mg(t) = mq(t) = 0. 13(b) and the time evolution of the markings for the continuous model and for the corresponding discrete model are represented in Fig.0 18. This is a characteristic property of event graphs (an event graph is such that each place has only an input and an output transition). This system has been simulated on a SUN computer.001 s. Its evolution graph of this example is given in Fig. while the duration of the continuous model simulation remains less than 0. the continuous time evolution of the markings is a good approximation of the discrete time evolution. The duration of the simulation of both the models has been measured. 13(b) gives information about both the steady state behaviour and the transient behaviour.0 9.001 s. David/Performance Evaluation 33 (1998) 175-I 99 197 60 54 48 42 36 30 24 8 6. Fig. For the following initial marking: m 1(t) = 1000.0 12. Fig. As it can be seen in Fig.0 30. R. It is the slowest processor which imposes its speed on the others and all the variables wait in the input buffer of processor 3. After time f3. is reached where all the firing speeds of the transitions are equal. in order to have significant results.H. 240 events are considered while only three events are sufficient in the evolution of the continuous model. Therefore. the number of variables has been increased.0 24. In particular. Time evolution of the marking of the shared variables system between four processors.0 21. the duration of the discrete model simulation is about 1 s.0 15. Concluding remarks Continuous Petri nets (autonomous and timed) have been defined and the CCPN has been shown to have interesting properties. but with the initial marking of Fig. 14. the finite number of functioning phases allows very short simulation . the steady state is reached. 4. 13(a) these durations are less than 0.0 27.

1980. 275-294. in: Proc. Rozenberg (Ed. Technical report MIT LIDS-R-1032. IEEE 77 (4) (1989) 541-580. 3rd Int. R. David. 1988. Schick.K. Dubois. Alla. 1lth Int. 1050-1056. Alla. and hybrid automata on the other hand contitutes a very promising research. X. 1973. David. on Application and Theory of Petri nets. Appl. Sifakis. [ 121 G. Peterson. Alla.. Amsterdam.). [ 181 J. H. [19] KS. 1985. on CAD/CAM. Nevertheless. Prentice-Hall. Alla. Productivite et en-cours moyens d’un ensemble de deux machines separees par un stock. Alla. H. 1993. Measuring. Lecture Notes in Computer Science. Ph. R. References [l] M. IEEE International Conference on Robotics and Automation. Some authors have considered hybrid models with stochastic timings of discrete transitions [ 19.). Autonomous and Timed continuous Petri nets.D. [lo] J.). Le Bail. 367-386.10] have been defined. Gershwin. [8] H. [7] H. Beilner. Xie. 1991. Le Bail. MIT. 1988. Continuous model of an unreliable two-stage material flow system with a finite interstage buffer.L. For a discrete system. Springer.G. Fast bounds for stochastic Petri nets. Las Redes de Petri en la Automatica y la Inforrnatica. [ 131 R. [ 1l] R. R. pp. Modelisation de production/gestion par rseaux de Petri continus. These d’Etat. Nice. AC. Alla. Murata. stochastic. For the discrete part. pp.. it constitutes an approximation which is often satisfactory. pp. Silva. Conf. 1984 to 1990. David. [9] R.-P. [4] P. Paris. pp. Use of Petri nets for performance evaluation. The link between continuous PN and hybrid PN on one hand. Advances in Petri nets. Chretienne. H. Y. FSPNs: Fluid stochastic Petri nets. 1992. [3] R. Congres Afcet-Automatique. [ 141 T. Hybrid Petri nets with a stochastic discrete part. Alla. R.C. Grenoble. Proc. 75-93. David/Per$ormance Evaluation 33 (1998) 175-l 99 duration in comparison with discrete model simulations. CARS and FOF88. Les reseaux de Petri temporises. David. [ 161 M. 8th European Workshop on Application and Theory of Petri Nets. E. 1977. USA. Madrid. Math. 106-l 15. on Application and Theory of Petri Nets. Petri Net Theory and the Modelling of Systems. Revue RAIRO Automatique 16 (2) (1982) 105-132. IMA J. hybrid PNs with a continuous part and a discrete part have been introduced [ 181. pp. in: Proc. 2nd European Control Conf. [5] C. Trivedi. in: Proc. International Workshop on Timed Petri Nets. USA. 1993. Gelenbe (Eds. Grenoble. 14th Int.B. Berlin. Properties of continuous models of transfer lines with unreliable machines and finite buffers. . Hybrid Petri nets. Rarnchandani. pp. [ 171 S. in order to improve the quality of the approximation. pp. A CCPN can model either a discrete system or a continuous system. Universite Paris VI. etc. analysis and applications. Petri nets and Grafcet: Tools for Modelling Discrete Event Systems. [6] J. Englewood Cliff. Dallery. Saragosse (E). Dubois. In order to associate discrete variables and a continuous model. 1987. European Control Conf. [15] J. Conf. In a continuous Petri net. Petri nets: Properties. Molloy. I. Prentice-Hall. V. Ed. Torino (I). David. the synchronization phenomena have a different form which is weaker than in a discrete Petri net. H. the continuous model may be any classical PN model (timed. [2] D. North-Holland. Analysis of asynchronous concurrent systems by timed Petri nets. Continuous Petri nets. R. David.198 H. David.201. H. David. 1983. other continuous models [9. Kulkani. NJ. in: Proc.. Conf. Chicago. J. Groningen. H. in: H. 244-249. Alla. Research on hybrid systems has recently grown with new modeling tool such as hybrid automata. 1992. Alla. London. 1993. Modelling of production systems by continuous Petri nets. Asymptotic continuous Petri nets: An efficient approximation of discrete event systems. Forestier. 1990. in: Proc. Modelling and Evaluating Computer Systems. 344-348. Detroit. temporal. Business Industry 6 (1990) 281-308. [20] E.

He is now Directeur de Recherche at the Centre National de la Recherche Scientifique.5-199 199 Hassane Alla was born in Ain-Sefra. In 1965 he received the Automatic Control Engineering degree at the University of Grenoble and in 1969 he received the Doctorat d’Etat es-Sciences degree at the same university. in 1939. He is the author of Random Testing of Digital Circuits: Theory and Application (Marcel Dekker. Paris. testing of digital circuits. He is one of the creators of Grafcet and the creator (together with H. New York. Algeria. London. working at the Laboratoire d’Automatique de Grenoble (in Institut National Polytechnique de Grenoble). David/Performance Evaluation 33 (1998) 17. Beijing. 1992). R. modelling and performance evaluation of manufacturing systems. Alla) of continuous Petri nets. In 1963 an accident stopped his work and left him paraplegic. He received the diploma of Automatic Control engineering from the Ecole Nationale Sup&ieure d’IngCnieurs Electriciens de Grenoble. 1998). He received the Engineering Degree in 1962 at the Ecole Nationale Sup&ieure d’Arts et Metiers. France. Rene David and Hassane Alla are co-authors of Du Grafcet azu rkseaux de Petri (Hermes. France.H. this book was translated into Chinese (Machinery Press. . His works covers design of logic controllers. 1989) and Petri Nets and Grafcet: Tools for Modelling Discrete Event Systems (Prentice-Hall. Alla. He was Deputy Director of this laboratory from 1987 to 1990. Continuous and Hybrid Petri nets) and their application to the manufacturing systems. The main used tools are Petri nets (ordinary. 1996). and the Doctorat d’Etat es-Sciences degree in 1987 from the Institut National Polytechnique de Grenoble. He is currently a professor at the University of Grenoble and Deputy Director of the Laboratoire d’Automatique de Grenoble (in Institut National Polytechnique de Grenoble). Ren6 David was born in Saint-Nazaire. His research interests concern the analysis and control of discrete event systems. in 1952.