0% found this document useful (0 votes)
42 views

Fuzzy Timed Petri Net Definitions, Properties, and Applications

Uploaded by

fatiha
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views

Fuzzy Timed Petri Net Definitions, Properties, and Applications

Uploaded by

fatiha
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

Available online at www.sciencedirect.

com MATHEMATICAL
AND
8O,'NOm ~O,RICT" COMPUTER
MODELLING
ELSEVIFR Mathematical and Computer Modelling 41 (2005) 345-360
www.elsevier.com/locate/mcm

Fuzzy Timed Petri Net


Definitions, Properties, and Applications
ZOUHUA DING
Computer Science and Engineering Department, University of South Florida
Tampa, FL 33620-5350, U.S.A.
H. BUNKE
Department of Computer Science, University of Bern
Neubrueckstr. 20, CH - 3012 Bern, Switzerland
M. SCHNEIDER
School of Computer Science, Netanya College
Netanya, 42365, Israel
A. KANDEL
Computer Science and Engineering Department, University of South Florida
Tampa, FL 33620-5350, U.S.A.

(Received and accepted February 2003)

A b s t r a c t - - W e present a new fuzzy timed Petri net model. Each transition firing in our model
is associated with a fuzzy number; during transition, firings tokens are removed from input and
added to output places. We consider the marks changing rate in each place as constant, and our
performance analysis is based on the reachability state graph. Our model has fuzzy differential
equations incorporated with it. Finally, we present the capabilities of the model by examples. (~) 2005
Elsevier Ltd. All rights reserved.

1. I N T R O D U C T I O N
Petri nets were originally developed in the 1960s and the 1970s, and they were soon recognized
as one of the most adequate and sound languages for description and analysis of synchronization,
communication, and resource sharing between concurrent processes. In the late 1970s, high-level
Petri nets and in the late 1980s hierarchical Petri nets were introduced to remove two serious
drawbacks.
1. The lack of d a t a manipulation concepts. Because of that, the models often became ex-
cessively large, since all data manipulation had to be represented directly into the net
structure (i.e., by means of places and transitions).
2. The lack of hierarchy concepts. It was not possible to build a large model via a set of
separate submodels with well-defined interfaces.
In order to study performance aspects of Petri net models, we have to include the duration
of activities into the model specifications. Several types of Petri nets "with time" have been

0895-7177/05/$ - see front matter (~) 2005 Elsevier Ltd. All rights reserved. Typeset by .A.A45-TEX
doi:10.1016/j.mcm.2003.02.015
346 Z. DINe et al.

proposed by assigning "firing times" to the transitions, or places, or arcs of a net. The firing
times of transitions may be deterministic, random variables described by a probability distribution
function, fuzzy variables described by a fuzzy interval, or fuzzy time stamps defined by fuzzy
possibility distribution.
The earliest timed Petri net models to consider are Ramchandani's [11 and Merlin [21 time
Petri nets model. The first one is derived from Petri nets by associating a firing duration with
each transition of the net and it has been used mainly for performance evaluation. The second
one associated each transition with a crisp time interval to model an uncertain occurrence of the
transition. It has been proved very convenient for expressing most of the temporal constraints.
Some of these constraints were difficult to express only in terms of firing durations. Hence, the
second one is more general than first one. Zuberek [3] associated a fixed time interval with each
transition to model the performance of computer systems. Sifakis [4] associated a fixed time
interval with each place so that tokens were considered as unavailable for that time.
Marsan et al. [5] assigned a random variable to represent the firing delay of each transition
and considered all the enabled transitions to be in the process of firing (incurring delay). The
result was a stochastic Petri net model with exponentially, or geometrically distributed delays,
which are isomorphic to homogeneous Markov chains.
There has been an increasing interest in incorporating fuzzy time with Petri nets. In a time
fuzzy Petri net, Valette et al. [6] extended the imprecise enabling duration from Merlin's to
a fuzzy duration defined by a possibility distribution. Also based on possibility distribution,
Murata et al. [7] introduced fuzzy time-stamp, fuzzy enabling time, fuzzy occurrence time, and
fuzzy delay. The resulting fuzzy-timing high-level Petri net model could be used to simulate
communication protocols. By associating with each transition a fuzzy interval, Kunzle et al. [8]
tried to develop behavior predications or explanations, avoiding combinatorial complexity and
unmanageable increase of imprecision. Cardoso et al. [9] proposed a new timed fuzzy Petri
net model by attaching a fuzzy enabling duration to the transition. The fuzzy duration was
delimited by two fuzzy dates. Their model allows the flexible control of a time schedule and
describes causality relations between the events.
In this paper, we propose a new fuzzy timed Petri net. Each transition has been assigned a
fuzzy number which represents the firing time. When a transition gets enabled, it starts firing.
The marks change rate in the input and output places can be approximated by constant speed.
Associated with each place is a time dependent marks distribution function. Fuzzy differential
equations are introduced to solve all these distribution functions. Because of imprecision and
continuous time involved, the existing model might hit infinity of states in a temporal reachability,
but in our model, we avoid this problem since after a finite time, reachability states will repeat.
The performance analysis is based on reachability states.
This paper is organized in four main sections. Section 2 introduces definitions for fuzzy timed
Petri nets. In Section 3, we give the existence result to a class of fuzzy differential equations. In
Section 4, we show how to compute reachability graph and do performance analysis. In the last
section, we give an example to illustrate the capabilities of the model.

2. D E F I N I T I O N S FOR FUZZY TIMED PETI:tI NETS


Let R n be the finite space with dimension n, and N be the set of all natural numbers including 0.
Let A = [0, K] C R 1, where K can be any arbitrarily large number. Furthermore,
E n =- {u: R n --~ [0, 1] }u satisfies (i)-(iv) below},
where
(i) u is normal, i.e., there exists an xe E R n such that u ( x o ) = 1,
(ii) u is fuzzy convex,
(iii) u is upper semicontinuous,
(iv) [u]° = {x e R ~ : u ( x ) > 0} is compact.
Petri Net 347

Especially, if n = 1, E 1 is the set of fuzzy numbers defined in R 1.


Based on (i), (iii), and (iv) and the extension principle, we have the following result. For
Vu, v E E 1, 0 < ~ < 1, the a-set operations are

2. [~ - ~l" = [~1" - [vl ~ = ( ~ - b: ~ e [~1", b e [v]"},


a. [~vl" = [~1 ~[v]" = { ~ b : ~ e [u] ~, b e [~l ~ },
a. [~/~]" = [~]~/[v] ~ = { a b : a e [~]°, b e [~]"}.
REMARK 2.1. If one of u and v is a crisp value, these equations are also true.
Considering Convexity (ii), we can assume that for each u E E 1, the a-set has the form
[u~(l),u~(r)],u~(l),u~(r) e R 1.
DEFINITION 2.1. For u , v E E 1 with a-set [u~(l),ua(r)], [v~(1),v~(r)], we say that u > v if and
only if
u~(Z) __ , " ( l ) , ~ ( ~ ) _> v~(r).
This definition is reasonable based on the argument in [10, p. 69].
DEFINITION 2.2. A fuzzy timed Petri net is a tuple F T P N = (P, T, Apre, Apost, w, d)~ where
1. P = {Pl,P2, ...,Pn} is a finite nonempty set of places,
2. T = {tl, t2, ..., try} is a finite nonempty set of transitions,
3. Apre ~-- {p --~ t} is a set of directed arcs which connect places with transitions, Apost =
{t ~ p} a set of directed arcs which connect transitions to places,
4. w : Apre [AApost -'~ E l is a mapping to assign a weight to each arc,
5. d : T --* E 1 is a mapping to assign a firing time to each transition.
For each transition t, let I(t) and O(t) be the input and output places, respectively. For each
place p, let I(p) and O(p) be the input and output transitions, respectively.
DEFINITION 2.3. Let mi : A --* E 1, i = 1 , 2 , . . . , n be a set of mappings. A fuzzy marking of a
fuzzy timed Petri Net F T P N = (P, T, Apre, Apost, w, d) is a mapping

m : A -~ (-~l,m2,... , , ~ ) , ,~(~) = (,~(~), m2(~),... ,m~(~)),


where each m~ is associated with place p~.
DEFINITION 2.4. A marked fuzzy timed Petri net is a 2-tuple (N, Mo) where
- N is a fuzzy timed Patti net,
- M0 = (ml(0), m 2 ( 0 ) , . . . , ran(O)) is its initial marking.
REMARK 2.2. At the very beginning, the marking is precise. In this paper, we assume that the
mark in each place can be a fuzzy number in order to study mark distribution. Also, token and
mark are different. One mark can he split into many tokens.
DEFINITION 2.5. A transition t i of an F T P N is said to be fuzzy enabled for marking re(T) at
time ~" if and only ifVpij e I(ti), mi~(T) >_ w(pi~ ---* ti), j ~- 1 , 2 , . . . k i .
Only enabled transitions can be fired. We assume that as soon as a transition gets enabled, it
starts to fire. Firing is based on two indivisible primitives.
(1) Removal of the tokens from the input places and insertion of the tokens in the output
places (two transitions which do not share any places can be fired independently).
(2) Determination of the new mark distribution function in both input and output places
after firing. How the new marks are computed will be presented in Section 4.
While a transition is firing, it will meet two situations.
(a) If one of the input places has no more tokens, then the firing will stop.
(b) If a new transition gets enabled and the old one is continuing firing, we call the old one a
continuing firing transition.
348 Z. DING et al.

In either case, the net will reach a new marking, or a new state. In this state, three quantities
come out:
(1) new marking,
(2) new enabled transitions,
(3) continuing firing transitions.
This is formally captured in the next definition.
DEFINITION 2.6. Let us consider an FTPN. We say that mark M' is directly reachable from
mark M ff 3 % r' such that re(T) = M, m(v') = M', T' - v > 0 and at time v' either a new
transition gets enabled or a continuing firing transition stops.
Let $new and t¢ont represent a new enabled transition and a continuing firing transition, respec-
tively.
DEFINITION 2.7. We say that marking M' is generally reachable from marking M, if there
exists a sequence of new enabled transitions and continuing firing transitions si = {tnew, tcont},
i = 1 , 2 , . . . , k + 1 and a sequence of points in time T1, T2,..., "rk such that M = m(T1) sl m(~r2)'
re(T2) - ~ m(v3),...,m(T~) sk m(~k+l) = M'.
DEFINITION 2.8. The reachability set of a fuzzy marked FTPN N is the set R(N, Mo) such that
(VM E R(N, Mo)) ~ (Ss = sls2...sk,r, Mo & re(T) = M).
DEFINITION 2.9. The reachabi/ity graph of a marked F T P N (N, M0) is a graph G(V, C), where
V is a set of vertices which is equal to the set of reachable states R(N, Mo), and C is a set of
directed arcs connecting two vertices, such that if ci E C connecting Mi and Mi+l, then M~+I is
directly reachable &om Mi. Moreover, th/s arc contains the time from Mi to Mi+l.

3. F U Z Z Y N U M B E R S A N D F U Z Z Y E Q U A T I O N S
Let A and B be two nonempty subsets of R 1. The distance between A and B is defined by the
Hausdorff metric
d H ( A , B ) - - m a x kaeA(supb~Binfd(a,b),supbeB i n f d(a,b) } ,

where d denotes the usual distance in R 1. Let

Pf(¢) (R 1) = {A C R I : A is nonempty, dosed (convex)}.

If we endow P f ( R 1) with the distance dH, then (PI(R1), dH) is a complete and separable metric
space [11].
Let u E E 1. We assume that u has left and right shapes with shape function L and R,
respectively, [12], and u has a single support point. We use/~1 (L, R) to represent all such fuzzy
numbers. For 0 < a <_ 1, denote [u] a = {x e R 1 :u(x) >_ a}. Obviously, [u] ~ e PIe(R1). Define
D : E l x E 1 - . R+ U {0} by

D(u,v) = sup dH ([u] ~, IriS).


O<a<l

PROPOSITION 3.1. (/~1 (L, R), D) is a metric space.


PRooF.
(i) D(u, v) = 0 implies dH([U]~, Iv]~) = 0 for each a > 0, and this implies [u] ~ = Iv] ~, a > 0,
which implies u = v. (Recall that [u] ~ and [v]~ are compact.)
(ii) Obviously, D(u, v) = D(v, u).
(iii) The triangle inequality D(u, v) < D(u, w) + D(w, v) follows from the corresponding in-
equality for dH.
Petri Net 34g

Furthermore, we can prove (/~I(L, R), D) is complete [11].


Now we define addition and scalar multiplication i n / ~ I ( L , R) as the following:
- addition @: ~ @ ~ - - u +'~, V fi, ~ e / ~ I ( L , R),
- scalar multiplication: ®: A ® fi = A~'u,A E R 1, fi • / ~ l ( L , R).
With this d e f i n i t i o n , / ~ ( L , R) is a vector space. In fact, for Vfi, ~ • / ~ I ( L , R), A • R 1, we have

Based on this definition, we can define subtraction as

As the direct result of this definition, we can find ~ ~ [ l l ( L , R ) and y • R 1 such that the
following axe true:
~@:~ = ~5, y®~>~.

Actually, for the first one, we observe

and for the second one,


V
y ® ~ ~ ~=~ ~d > 9 ~ y x u ~_v =~y >_ - .
U

Furthermore, we define multiplication of two fuzzy vectors and a fuzzy unit vector as

U U

This provides the second way to solve the above inequality:

y>_-=~®==~®-=
U U U

Now y is a fuzzy number in/~1 (L, R).


PROPOSITION 3.2. I f ~, ~, ~ E El1(L, R) and fi @ 5J = ~5@ ~, it follows that u = v.
PROOF. Since ~ @ ~ = u + w and 9 @ ~ = v + w, we conclude that u + w -- v + w. Notice that
all fuzzy numbers i n / ~ I ( L , R) have the same shape. Hence, we get u + w = v + w, which implies
u = v and fi = 9.
PROPOSITION 3.3. I f fi, ~, ~ e /~1 (L, R), then D(~ ~ ~, ~ ~ ~ ) = D(~, ~).
PROOF. From the definition of D, we know that

= , = dH ([u] ~, [v]~) •

The next theorem gives an embedded result.


THEOREM 3.1. There ex/sts a normed space X such that [~1 (L, R) can be embedded isometrically
into X .
PROOF. This follows from Propositions 3.2 and 3.3, and Theorem 1 in [13].
Now we are going to build a fuzzy integral.
350 Z. DING et al.

DEFINITION 3.2. Let F : A ~ RI(L,R) be a fuzzy mapping, and f : A --. R 1 a function such
that f(t) = F(t). The fuzzy integral of F over A denoted by fT F(t) dt is defined by

i F(~) d~: i s(t) d~.


This integral is well defined since/~I(L, R) is a complete vector space. Let f F be fT F(t)dr,
then we have the following properties about fuzzy integral.
PROPERTIES. Let F, G : A --*/~I(L, R) be fuzzy mappings which have fuzzy integrals and A C R.
Then, we have the following.
1. f F G G - - - f F @ f U .
2. f A ® F = A ® f F .
3 Let o,b,c ~ ~, then S:F-- Z F e Z F
4. Let F , : A ~ ~tl(L,R),n = 1 , 2 , . . . , be fuzzy mappings which have fuzzy integrals and
F , D_,F, t h e n f F , D _ , f F .
PROOF.
1. There exist f,g, h : A ~ R 1 such that ] = F,~ = G, h = F~BG. We claim that h = f + g .
In fact, F ~BG = ] @ ~ = f + g = h, this implies that f + g = h. Hence,
/

S.°.: S,: S-;:,: S: i . : f ,. S.° i..


2. Using the same argument, we have

3. There exists f : A --* R 1 such that ] = F. It follows that

,+ ,= "+ '<

4. For every Fn, there exist fn : A ~ R 1 such that ]~ = F~. Based on the definition of D,
we imply that f~ --* f if Fn ~ F. Thus, f f~ --* f f and f-]-~ D_~ ~'~f due to the same
shape of fuzzy numbers. Finally, we get

ocs..,s.): o (/,-,/,)_+o.
DEFINITION 3.3. A fuzzy mapping x : A -~ ~ l (L, R) is differential at to E A, if there exists a
X'(tO) C Ftl(L, R) such that limits

lim -h
h-~O+ 1 ® (x(to + h) ~3 x(to))

and
lira h1 ® (X(to) ~3 X(to - h))
h--.0+

ex/st and are equal to x'(to).


Let F : A x / l l (L, R) --~/~1 (L, R). Consider the fuzzy differential equation

x' = F(% x), x(T0) = xo 6/~I (L, R). (1)


Petri Net 351

DEFINITION 3.4. A mapping x : A --. ~I(L, R) is a weak fuzzy solution to equation (1) if it is
continuous and satisfies the integral equation

x(~-) = x 0 . F ( s , x ( s ) ) d~, VreA.

It is ca//ed strong solution if it satisfies (1).


REMARK 3.2. If F(., .) is continuous, then the weak solution is also the strong solution. In fact,

1 1
® (~(~ + h) e ~(~)) = ( x ° @ f T~-o
+hF(s'x(s))ds@x°@ f~ F(s'x(s))ds

1
® F(s, x(s)) ds
h .IT

'r+h
1
h
® f I(~, ~(s)) ds.

From Property 3, we have


N

® (x(~ + ~) e x(~) = ~ ~ JT :(~, ~(s)) a, = :(~,x(~)) = F(~,x(~)).

Next we consider the following proposition.


PROPOSITION 3.4. If fz is a fuzzy set in RI(L, R), then ]~ rids = (T -- TO) ® ~.
PROOF. Actually, we have
N

ds =
l
d T0
u ds = u = (r - to) ® £.

Finally, we get our expected result. For the differential equation

x'(~) = u, x(~0) = v,

where u, v E/~1 (L, R), the (strong) solution is

x(r) = v @ uds=v@((Z-ro)®U).

4. C O M P U T A T I O N AND ANALYSIS
In this section, we develop a method to compute reachable states of fuzzy timed Petri nets
and perform analysis based on the teachability graph. All the fuzzy numbers are in the space
/~1 (L, R). We use + and × to represent fuzzy number addition ~ and scalar multiplication ®.
In [14], David and Alla studied timed continuous Petri nets. In their work, a timed continuous
Petri net, with firing speed associated with transitions, can be obtained from a timed discrete
Petri net by means of an approximation. Two kinds of approximation are proposed; one with
constant firing speeds and another with variable firing speeds. The functionality of their model
is decomposed into different phases. Each one is characterized by a set of enabled transitions
and a firing speeds vector. The evolution of the marking is obtained by computing the balance
marking of each place. The changing of firing speeds vector occurs when the marking of a place
becomes zero. The time evolution is then characterized by a finite number of phases. Motivated
by this technique, we will study the time and marking evolution of the fuzzy timed Petri net.
352 Z. DING et al.

tl t 2 t 3

Pl w(pl->tl)
__] w(tl->p2) w(p2->t2) ~-- ,

w(t3->pl)

Figure 1. C o n s t a n t s p e e d approach.

The idea behind our approach is that when tokens are removed from input places, the marks
changing rates in the input places are constants. The same is true when new tokens are added
to output places, the marks changing rates are constants. Based on this method, we can get
reachability states. Now we use the following net as an example to explain this method.
In Figure 1, we have three places pl, p2, and P3 and three transitions tl, t2, and t3. Let m1(1"),
mS(T), and m3('r) be the marks in the places pl, ps, and P3 at time r. The initial marking is
m(0) = (ml(0), 0, 0). For each transition, there is a fuzzy number associated with it, denoted as
dl, d2, and d3 representing firing time. For each arc, there is a weight associated with it, denoted
as w ( p l --* tl), w(p2 --* t2), w(pa --~ t3), w ( t l --* P2), w(t2 --* P3)- At the very beginning, if
ml(O) >_ w ( p l -* tl), then tl is enabled and starts firing. Tokens will be removed from pl. The
marks change rate is m~(v), the derivative of ml(~-), which is equal to a constant - v l -- - 1 / d l .
Hence, we get
mi('r ) = - 1 / d l .
Thus,
ml(T) = ml(O) - vl ds = rot(0) - vl~.

In the meantime, some new tokens are added to p2, the marks change rate in P2 is m~(T), the
derivative of m2(~'), which is equal to
W(tl --* P2).
v2 = '(pl - :

Thus,
= .2.

This gives us
m2(T) ----m2(0) -b
fo r w(tl
w(pl
p2) w(tl ps)
~ ~1) vl ds - w ( p l --~ t l ) VlT.

We have to distinguish two cases here.


1. m2(r) gets accumulated such that m2(T) = VsT >_ w(p2 --* ts), while m l ( r ) is stin bigger
than 0. Using the first way to solve this inequality, we get a solution, say ~-1, at this
moment, t2 gets enabled and starts firing. Using the second way to solve this inequality,
we get ~1, the time to reach the first state. Now, in this state,
- marking is ( m l ( T 1 ) , m2(7"1), 0),
- new firing transition is t2,
- the continuing firing transition is tl.
2. ml(~-) reaches 5 before m2(T) reaches w(ps --~ t2). Then tl stops firing. Use ~-1 to record
this moment and ~1 the time to reach this state:
- marking is (0, m2(T1), 0).
Now assume that Case 1 occurs. When t2 fires, tokens will be removed from P2 in the rate
Vs = 1/d2, while some tokens will be added to P2 in the rate (w(tl --* p 2 ) ) / ( w ( p l --* t l ) ) v l . Thus,
the marks change rate for p2 is
= (tl ps)
¢o(p I --~ t l ) V l - - V2.
Petri Net 353

It follows t h a t

m2(T) =m2(T1)-4- 1 ~kw(pl --+tl) v l - v 2 ) ds=m2(T°)+ ~,w(pl-~tl--)) v l - v 2 --

During the firing of t2, P3 will get new tokens. The mark change rate is ml3(T), which is equal to
v3 = 1/d3, i.e.,
1
m~(T) = ~33"
It follows that
~ 1
m3(T) = m3(T1) +
jfr 1
v~ ds = - - ( T - T1).
d3
If at time T2, we have m3(T3) > w ( p l --* t3), then t3 gets enabled and starts firing. It turns out
we come to another state with time ~2. In this state,
- ma~king is (ml(T~), m~(T~), m~(T~)),
- new firing transition: t3,
- continuing firing transitions: tl,t2.
We then use the same method as above to determine new markings, new firing transitions, and
continuing firing transitions. We need to address the special case where all of tl, t2, and t3 are
firing. Here the mark change rates in Pl, P2, P3 are

w(p3 --+ t3) d3 dl'


ml2(T) -:- w ( t l --* P2) 1 1
W(pl --* tl) dl d2'
m~(T) = ~(t2 -~ p~) 1 1
w(p2 ~ t2) d2 d3"
Solving this group of equations, we get mark distributions ml (7), m2(v), m3(T), and so on.
To give an example, let us assume

dl = 0.1, d2 = 0.2, d3 = 0.4,

~(t~ -~ p~) = w(t~ -~ w ) = 5.

The initial marking is m(0) = (4, 0, 0). Obviously, at the very beginning, only tl is enabled.
1. When T = 0, the marks change rate for Pl is

0.1
Solving this equation, we get

ml(T) =- ml(O) -- ~1/0 d T = 4 -- -10T.

For P2, we have the rate change as

m~(T) = w(tl -~ p2) 1


w(pl -~ tl) 65"
Solving this equation, we get

-
m2(T) ----m2(0) -4- dT ---- 10T.
354 Z. DING et al.

In order to enable t2, we need to have 1~'6~- > i or ~- > 1/10. At r = 1/10, m1(1/10) =
4 - 1"6(1/10) = 3. This is the first reachable state. In this state,
new firing transition: t2,
-

- continuing firing transition: tl,


- m 1 ( 1 / l o ) = ~, m 2 ( 1 / I O ) = i, , ~ 3 ( I / 1 0 ) = o.

2. When r = 1/10, t2 starts to fire, in the meantime tl continues to fire. The rate change for p2
is
m ~ ( r ) = ~ ( t , -~ p2) 1 1 = i"6 - ~ = 8.
~o(vl -~ t l ) 6 5 0."~
Solving these equations, we get

m2(r) = m2 + dr = 1 + 5 r - .
/lO

P3 starts to get tokens, so the marks rate change is

w(p2 ~ t2) 0:2

Solving the above, we get

m3(T) = 0 q - 5 dT =5 7-- .
/lo

We need 5 ( r - 1/10) > i to get t3 enabled. We can choose r >_ 3/10 to satisfy this inequality.
Now we reach the second reachable state. In this state,
- new firing transition: t3,
- continuing firing state: tl, t2,
- m1(3/10) = 1, m2(3/10) = 2, m3(3/10) = i.
3. Right now at time r = 3/10, all the transitions are firing. Therefore, the marks changing rate
for Pl, p2, and P3 are

mi(r) ~ 1 I __.~-z,¥o
0.4 0.1
m~(~-) = I ~1 = ~,
0.1 0.2
. ~ ( r ) _ ~1 __1 _ 2.~.

0.2 0.4
B y solving this group of equations, we obtain

m l ( r ) = 3.2--5 - 7."5r, m2(r) -----0.~'-5+ 5r, m 3 ( r ) = 0.25 + 2.5T.

At time r = 13/30, we reach a new reachable state:


- continuing firing: t2, t3,
- m1(13/30) = O, m2(13/30) = 2 2/3, m3(13/30) = 1 1/3.
4. In this state, Pl receives tokens from t3, while P2 removes tokens from t2. P3 receives tokens
from t2 and sends tokens to t3 at same time. Using the same calculations as above, at time
T = 5/6, we come to a new reachable state:
- new firing transition: tl,
- continuing firing transitions: t2, t3,
- m1(5/6) = 1, m2(5/6) = 2/3, m3(5/6) = 2 1/3.
Petri Net 355

5. In this state, all transitions are firing. At time T = 29/30~ we come t o a new reachable state:
- continuing firing: t2, t3,
- m1(29/30)=0, m 2 ( 2 9 / 3 0 ) = 1 1/~"-3,m 3 ( 2 9 / 3 0 ) = 2 ~ .
Continuing this process, we get the following.
6. At time T = 37/30, the system comes to a new state:
- continuing firing: tl, t3,
- m , (37/30) = 2/3, m2 (37/30) = 0, m3 (37/30) = 3 I/~'-3.
7. At time ~" - 41/30, the system comes to a new state:
- new firing transition: tl,
- continuing firing: t3,
- m1(41/30) = i, m2(41/30) = 0, m3(41/30) = 3.

8. At time T = 44/30, the system comes to a new state:


- new firing transition: t2,
- continuing firing transitions: tl, $3,
- m1(44/30) = 1/4, m2(44/30) = i, m3(44/30) = 23/'~.

9. At time T = 45/30, the system comes to a new state:


- continuing firing transitions: t2, t_33,
- m1(45/30) = 0, m2(45/30) = 1 1 / 6 , m3(45/30) = 25/~-'6.
10. At time r = 52/30, the system comes to a new state:
- continuing firing transitions: tl, ta,
- m1(52/30) = 7/12, m (52/30) = o, m 3 ( 5 2 / 3 0 ) = 3 5 / 1 2 .

11. At time T = 57/30, the system comes to a new state:


- new firing transition: tl,
- continuing firing transition: t3.
- m1(57/30) : i, m2(57/30) = 0, m1(57/30) = 3.
12. At time r = 60/30, the system comes to a new state:
- new firing transition: t2,
- continuing firing transitions: tx, t3,
- m1(60/30) = 1/4, m2(60/30) = i, m3(60/30) = 2 3/~'4.
13. At time v = 61, 30, the system comes to a new state:
- continuing firing transitions: t2,
t.~a,
- m1(61130) = 0, m2(61/30) = 1 1/6 , m3(61/30) = 2
14. At time T = 68/30, the system comes to a new state:
- continuing firing transitions: tl, t3,
- m l ( 6 S / 3 0 ) = 7/12, m2(6S/30) = 0, m3(68/30) = 3 5/12.
15. At time ~- = 73/30, the system comes to a new state:
- new firing transition: tl,
- continuing firing transition: t3,
- m i ( 7 3 / 3 0 ) ---- i, rn2(73/30 ) : 0, m3(73/30) : 3.

F r o m the above calculations, we conclude the following.


- Marking (i,_~0,3) will repeat at time 41/30, 57/30, 7 3 / 3 0 , . . . . T h e time step is 16/30.
- Marking (1/4, i, 2 3/"'~) will repeat at time 44/30, 60/30, 7 6 / 3 0 , . . . . T h e time step is 16/30.
356 Z. DINe et al.

- Marking (5,1 1/~'-6,2 5/"-'-6) will repeat at time 45/30,61/30,77/30,.... The time step is
16/30.
- Marking (7"-~,0,3"~i'2) will repeat at time 52/30,68/30, S4/30, . . . . The time step is
16/30.

m(4,0,0) m(3, 1,0) m(1, 2, 1) m(O, 8/3, 4/3)


new firing: tl new firing: t2 new firing: t3 continuing firing: t2,t3
continuing firing: tl continuing firing: tl, t2 112~30

I
~ 4/30 ~

re(l, O, 3)
new firing: tl
ra(213, O, 10/3) m(0~4/'37~S~ rod, ~3, 7~)
continuing firihg: t3 continuing firing: t2,t3 new firing: tl
continuing firing: t3 continuing firing: t2,t3

3~ 1/~0 ~_~ 7/~0 ~

m(l~l, 1", 11~) m(O, 7/6, 17/6) m(7/1-2,O, 41/i'2)


new firing: t2 continuing firing: t2,t3 continuing firing: t3
continuing firing: tl,t3

s/~0
Figure 2. Reachability graph.

Figure 2 represents our reachability graph. Even when the time is infinite, our reachable states
are finite since reachable states are repeated after State 8. Notice that the marks in places p3
are 3, 11/4, 17/6, 41/12, and the average mark is 3. The reason is that the transition t3 takes
the longest time to process tokens. It could be a bottleneck in the network. In places Pl and P2,
the average marks are 0.46 and 0.54, respectively. Obviously, Pl and p2 are not using their full
resources. In particular, p2 is doing very little for almost half of the time, since its marks are 0,
1, 7/6, 5.

5. C O N F L I C T S
This section deals with some conflicting cases. A conflict occurs when there are more than two
input places for a transition, or there are more than two transitions for a place.
1. More than two input places for a transition (Figure 3).
Let tl and t2 be enabled, then
1
~i(~)=-d-7'
w(pl ~ h)
1
m;(~-) = - d 2 '
Petri Net 357

t1
G w(pl->tl) w(tl->p3)
t4
d, w(t3->pS) m O w(gS->t4)
t2

Figure 3. Two input places.

w(pl Z~l) 2(Tj"


In order to enable ta, we need to have the following condition satisfied at the same time:

?n3(T) ~__w(ps ~ ts), m4(7) _> w(p4 --~ t3).

However, one of them might come earlier to satisfy this condition, say, P3. Then P3 has to wait
for a while until P4 reaches the enabling condition. Assume that at time TO, both inequalities are
satisfied. Then t3 gets enabled and starts firing immediately. Some markings are added to ps,
while some are removed from P3 and P4. The marks change rates for p3, pa, and ps are

rn~(r) --- w(tl -4 P3) 1 1


w(pl ~ tl) d~ d3'
IT~I4(T)= w(t2 --~ P4) 1 - - Z
w(p2 -"* t2) d2 d3 '
{ w(t3 --* ps) 1 w(t3 --* ps) 1 }
m~(T) = min w(ps --~ ts) d 3 ' w ( p 4 --'* t3) d~

If tl, t2, and t3 all can fire from ~'0, then the mark state for P5 can be obtained from two subnets.
The first subnet is {p~, tl,P3, t3,ps} and the second is {p2,t2,P4,t3,Ps}. From the first subnet,
we get a mark distribution ml(T), m3(v), m~etl(7), and from the second, we get m2(T), m4(T),
m]et2(T). Then the marks state for Ps is ms(T) = min{m]etl(T), rn~¢t2(~-)}.
More than two output places for a transition (Figure 4).
When tl is firing, p2 and P3 are getting tokens at the same time. The marks change rates axe

-4(T) = (tl - v2) 1


w(pl ~ tl) dl'
= (tl ;3) 1
W(pl --~ tl) dl"

Pl
tI . ~ , ~ C
© w(pl->tl)

Figure 4. Two output places.


358 Z. DING et al.

t I

wO2->p3)"~0

Figure 5. Two output transitions.

3. More than two output transitions for a place (Figure 5).


(a) Priority is associated with each arc and token.
Let us assume that arc Pl --~ tl has the highest priority. The token with the highest
priority in place Pl has to be larger than w(pl -~ tl), then tl starts to fire. For the same
reason, the token with lowest priority also needs to be larger than w(pl ~ t2), then t2
fires. When tz and t2 are both firing, the marks change rate in pl is

(b) No priority.
Assume that w(pl -~ tl) ~_ w(pl -~ t2). When the marks get accumulated in Pl such
that m l ( r ) >_ w(pl -~ t2), then t2 gets enabled and starts firing. If the accumulated rate of
the marks in pl is larger than the decreasing rate, then the condition ml(V) >_ w(pl -~ tl)
might be reached. As the result of this, tl fires. This can be used to model frame loss
when hitting heavy traffic. When tl and tu are both firing, the marks change rate in Pl is

4. One place with more than two input transitions (Figure 6).
If only one transition, say tl, is firing, then the marks change rate in Pa is
= (tl p3) 1
W(pl ~ tl) dl"
Otherwise, if all transitions are firing, the rate change is

mt3(T) = w ( t l --* P3) 1 w(t2 --+ P3) 1


w(pl ~ tl) dl ÷ w(p2 --* t2) d2"

t 1
Pl
© w(pl->tl) J

p~
© w(p2->t2)

d,
Figure 6. Two input transitions.
Petri Net 359

Pl

t7 a, t1 d2 ts --'~ cls

P
6

P
4

Figure 7. Data and voice.

6. P R A C T I C A L EXAMPLE
We consider running voice and data over ATM as an example (Figure 7). P3 is an integrated
access device running data and voice over SHDSL. It contains PowerPC with SAR, voice pro-
cessor, packet processor, routing and bridging mechanism, etc. Data from Pl are sent through
Ethernet to Pa. Voice from P2 is sent through analog line to Ps.
tl represents a LAN with CSMA/CD scheme transmitting data. t2 represents an analog trans-
mission line. Two fuzzy numbers dl and d2 are associated with tl and t2, respectively, to represent
firing time. P3 contains ATM cells, and uses SHDSL as a media for transmitting frames, t3 repre-
sents the transmission, and its the last mile to pass data from the user to the central office. There
is a fuzzy number d 3 associated with t3. P4 represents DSLAM and ATM switch, which send
d a t a and voice separately to router Ps and voice gateway Ps. We assume that there is zero firing
time associated with t6 and t4. ts and t7 represent a PSTN voice network, and a data network,
respectively. Finally, voice comes back through t5 and data through fT. Two fuzzy numbers d7
and d5 are associated with t7 and ts, respectively,. Let all the weights be zero and dl = 0.08,
d2 = 0.0"-2, d3 = 0."2, d4 = {), d5 = 0."4, d6 = 0, d~ = 0.'4. In real life, we can determine different
type of fuzzy numbers by choosing the shape functions L and R. As an exercise, we can compute
that it takes about 0.26 and 0.44 time for voice and data to come back.

7. S U M M A R Y AND CONCLUSIONS
Based on fuzzy differential equations, we have studied the timed Petri net with fuzzy number
associated with each transition. Performance analysis is based on the reachability graph. When
building the reachability graph, we assume that the firing speed is a fuzzy constant for each
transition. Now we have two problems left: calculate the maximum states for each fuzzy timed
Petri net, and use a variable fuzzy speed approach in the firing. We will address these problems
in our future work.
360 Z. DING et al.

REFERENCES
1. C. Ramchandani, Analysis of asynchronous concurrent systems by timed Petri nets, Massachusetts Inst.
Tech. Project MAC, Tech. Rep. 120, (February 1974).
2. P. Merlin and D.J. Faber, Recoverability of communication protocols, IEEE Trans. Commun. C O M - 2 4 (9),
(September 1976).
3. W.M. Zuberek, Timed Petri nets and preliminary performance evaluation, In Proc. 7th Annual Syrup. Corn-
put. Architecture, pp. 88-96, (1980).
4. J. Sifakis, Measuring, Modeling, and Evaluation Computer Systems, pp. 75-93, North-Holland, (1977).
5. M.A. Marsan, G. Balbo and G. Conte, A class of generalized stochastic Petri nets for the performance
evaluation of multiprocessor systems, In Proc. Performance 83, ACM Sigmetrics, October 1983, pp. 198-
199.
6. R.. Valette, J. Caxdoso and D. Dubois, Monitoring manufacturing system by means of Petri nets with imprecise
marking, In IEEE International Symposium on Intelligent Control, pp. 233-238, Albany, NY, Septembeer
25-26, 1989.
7. T. Murata, T. Suzuki and S.M. Shatz, bSazzy-timing high-level Petri nets (FTHNs) for time-critical systems,
In Fuzziness in Petri Nets, Studies in Fuzziness and Soft Computing, Volume.P~, pp.88-114, (1999).
8. L.A. Kunzle, R. Valette and B. Pradin-Chezalviel~ Temporal reasoning in fuzzy time Petri nets, In Fuzziness
in Petri Nets, Studies in Fuzziness and Soft Computing, Volume ~ , pp. 146--173, (1999).
9. J. Cardoso, R. Valette and D. Dubois, Fuzzy Petri nets: An overview, In 13th World Congress of IFAC, V.I:
Identification II, Discrete Event Systems, San Francisco, CA, June 30-July 5, 1996, pp. 443-448.
10. A. Kaufmann and M.M. Gupta, Fuzzy Mathematical Models in Engineering and Management Science, (1988).
11. M.L.Puri and D.A. Ralescu, Fuzzy random variables, J. Math. Anal. Appl. 114, 409-422, (1986).
12. I-I..l. Zimmermann, Fuzzy Set Theory and its Applications, Third edition, (1996).
13. H.Radstrom,, An embedding theorem for spaces of convex sets, Proc. Amer. Math. Soc. 3, 165-169, (1952).
14. R. David and H. Alla, Continuous Petri nets, In 5¢h European Workshop on Application and Theory of Petri
Nets, Saragosse(E), June 1987, pp. 275-294.
15. R.J. Aumann, Integrals of set-valued functions, J. Math. Anal. Appl. 12, 1-12, (1965).
16. M.L. Purl and D.A. Ralescu, Differentials for fuzzy functions, J. Math. Anal. Appl. 91, 552-558, (1983).

You might also like