StochasticPetriNets PDF
StochasticPetriNets PDF
AN ELEMENTARY INTRODUCTION
M. Ajmone Marsan
Dipartimento di Scienze dell' Informazione
UniversitA di Milano, Italy
ABSTRACT - Petri nets in which random firing delays are associated with transitions whose
firing is a n atomic opemtion are known under the name "stochastic Petri nets". These models are
discussed, with the purpose of ezplaining why they were proposed in the performance evaluation
field, why random delays with negative ezponential probability density functions are mainly used,
and what are their strong and weak points. A n effort is made t o summarize the lines of research
that are currently being pursued, and to ezplain what new results would be regarded as breakthroughs
and have the most impact o n the use of this modeling technique in the application field.
KEY WORDS - Stochastic Petri nets, Performance evaluation, Markov chains, Queues.
CONTENTS
1 INTRODUCTION
2 PERFORMANCE EVALUATION
2.1 Stochastic Processes
2.2 Continuous-time Markov chains
2.3 Queues
2.4 Queuing networks
3 STOCHASTIC PETRI NETS
3.1 The Basic Model
3.2 Performance Indices
3.3 Generalized SPN
3.4 , Generally Distributed Firing Times
3.5 Relations with Other Models
3.6 Structural Analysis of SPN
.3.7 Current Research Activities
3.8 Open Problems
4 CONCLUSIONS
5 ACKNOWLEDGMENTS
1 INTRODUCTION
J
Petri nets (PN) [1,2,3],in their various shapes and sizes, have been used for the study of the
qualitative properties of systems exhibiting concurrency and synchronization characteristics.
The use of PN-based techniques for the quhntiLtioe analysis of systems requires the introduction
of temporal specifications in the basic, untimed models.
This fact has been recognized since a fairly long time, and several different proposals for the
introduction of temporal specifications in PN have appeared in the literature. The main alternatives
that characterize the different proposals concern
the semantics of the firing in the case of timed transitions (either atomic firing or firing in
three phases),
In this paper we consider P N models that are augmented with a ,temporal specification by
associating a firing delay with transitions. The transition firing is atomic, i.e., tokens are removed
from input places and put into output places with a single, indivisible operation. The specification
of the firing delay is of probabilistic nature, so that either the probability density function (pdf)
or the probability distribution function (PDF) of the delay associated with a transition needs to
be specified. In the simplest case we assume that all delays have negative exponential pdf, but we
also briefly consider the case of general pdf.
The class of models that we consider are normally referred to with the name Stochastic PN
(sPN).'
The goal of the paper is to discuss several points related to SPN, including
why exponential pdf are mainly used for the specification of timing,
what would be the most important breakthrough results in the SPN field.
This paper is addressed to PN experts who are not familiar with the stochastic performance
modeling field. For this reason, a brief overview of the classical approach to the performance
evaluation of systems in a probabilistic framework is included in Section 2, where some elementary
notions about stochastic processes, and queueing theory are summarized.
Section 3 contains the discussion on the various types of SPN models that were presented in the
literature, together with some illustrative examples. Comments on the present and future research
efforts are also included in this section.
Finally, Section 4 provides the concluding remarks.
In spite of the author's efforts to provide an objective overview of the SPN field, the discussion
in the paper is probably biased, due to his particular background and experience. It is thus possible
that some classes of SPN that were proposed by the author with his colleagues are presented with
more emphasis than they deserve. On the other hand, in a paper like this one, it is necessary to
express personal opinions, and to make a selection of the models to be presented. As regards the
selection, it naturally favors the models with which the author is more familiar. As regards personal
opinions, normally researchers tend to highly value their own work (says an italian proverb: "every
cockroach is beautiful to his mothern). Readers interested in the use of SPN models are thus
adviced to carefully compare the original proposals in order to develop their own opinions about
the suitability of the various modeling approaches to their particular apptcation field.
2 PERFORMANCE EVALUATION
The performance evaluation area can be initially subdivided into two subareas. The first one
relates to mea~uring,and comprises three distinct fields that can be called
measurements,
benchmarks,
prototypes.
Measurements are performed on a real system under real operating conditions. They provide the
actual system performance in the particular condition in which the system is observed. However,
measurement results have very little generality, since they are heavily dependent upon the detailed
characteristics of the measured system, and on the particular workload imposed on the system
during the measurement.
When the performances of two systems, say two supercomputers, have to be compared, it is
not sufficient to rely upon measurements, since nothing guarantees that the operating conditions
under which measurements are performed are equivalent. The comparison would thus be unfair.
:
In order to overcome this problem, benchmarks were developed. They provide an artificial work-
load for the system, such that observations can be performed in equivalent operating conditions,
and meaningful comparisons can be made.
Both measurements and benchmarks require the availability of the system to be studied, so that
it can be observed. In the (many) cases in which the performance study concerns a system that is
not available (maybe because it is not yet operational), it is necessary to develop a representative
approximation of it, either in hardware or in software. Such approximations, which need to be
fairly detailed, are normally called prototypes (the term emulator is also .often used when the
approximation is implemented in software). Observations are then made on such prototypes,
possibly using benchmarks as artificial workloads.
In all three cases, the system performance is obtained by observing the behaviour of the system,
or its approximations, in operation, i.e., when loaded by either the actual user requests, or the
benchmark.
The study of the performance of a system, however, is not only an important task during and
after the system implementation, but also during the early design stages, in order to compare
possible alternate architectural choices. This is true in particular when the development of new
systems is mainly motivated with the request for ever-increasing performance, like in the computer
field.
During the design process, measurements on real systems are obviously not possible, and also
prototype implementations present insormountable difficulties due to the necessity of specifying
many details that are far from being decided.
The second subarea of performance evaluation thus comes into play: modeling. It can be
partitioned into two fields:
simulation models,
analytical models.
In both cases the performance study is carried out using a description that includes only some
Uimportantn characteristics of the system. In the case of simulation models, the description is
given by means of a computer program, whereas in the case of analytical models the description
is given in mathematical terms.
Models (both simulative and analytical) can be either deterministic or probabilistic. While it
is clear that most systems of interest exhibit a deterministic behaviour (we tend to like the fact
that by running twice the same program with the same input data we obtain the same results),
it may be simpler to describe a very large number of complex, detailed deterministic phenomena
by means of macroscopic probabilistic assumptions. This is often done because details are not
known, and even when they are, their inclusion may lead to very complex models. Furthermore,
the probabilistic approach may be advantageous because it may provide sufficient accuracy, while
yielding more general results, and it may permit the study of sensitivity to parameter variations.
It should be noted that a key element in the development of a model is the selection of the
level of abstraction (also called level of detail). This amounts to selecting the system features
to be included in the model. No precise rule exists for this selection, that rests mainly on the
experience and ingenuity of the performance analyst. On the other hand, the level of abstraction
is th&.'elementthat differentiates a model from a prototype or an emulator. Simulation lends itself
better to the development of more detailed models, whereas analytical models are normally more
abstract.
An ,important characteristic of models concerns the representation of the system behaviour
along the time scale. While it is obvious that any instrument for the measurement of time operates
according to a discrete time scale, due to its finite precision, and that most interesting modern
systems, being digital in nature, intrinsically use a discrete time scale, models often use a continuous
time scale. The reason for this discrepancy lies in the greater simplicity of continuous time models.
Indeed, if the time axis is discrete, the model has to consider the fact that multiple events may occur
between two consecutive time marks, and explore the effect of all possible combinations among
these events. Ln the continuous time scale, instead, using appropriate probabilistic assumptions, it
is possible to univocdy order events, so that it is always possible to take into consideration only
one event at a time.
In this paper we deal with models of a probabilistic nature operating with a continuous time
scale.
The mathematical framework underlying this class of models, be they simulative or analytical,
is the .theory of stochastic processes.
lim Fx(x) = 0
04-w
-and
lim FX(x) = 1
2-+w
.
Alternatively, the random variable X can be described by its pdf
In the case of random variables assuming values in a discrete set, instead of considering their
pdf, which is a generalized function, we consider their probability mass function ( p d )
holds. Hence, at any time instant, the residual sojourn time in a state does not depend on the
time already spent in the state (i.e., on the history), but only on the present state, as require,d by
the Markovian property.
Note that the average of an exponentially distributed random varjable with parameter p is p-',
Figure 2: State transition rate diagram and infinitesimal generator for a CTMC with two states.
These considerations imply that for the complete probabilistic description of a CTMC it is
sufficient to give the pmf over the state space S at the initial time (typically 0), as well as the
parameters of the negative exponential pdf describing the sojourn times in all states in S, and the
probabilities of moving from one state to another.
In practice, a CTMC is described through either a d a t e tran~itionrate diagram or a transition
rate matrix, also called infinitedirnal genemtor and denoted by Q. The state transition rate diagram
is a labeled directed graph whose vertices are labeled with the CTMC states, and whose arcs are
labeled with the rate of the exponential distribution associated with the transition from a state to
another. The infinitesimal generator is a matrix whose elements outside the main diagonal are the
rates of the exponential distributions associated with the transitions from state to state, while the
elements on the main diagonal make the sum of the elements of each row equal to zero.
The two descriptions are shown in Figure 2 for a CTMC with two states (closed and open door
in our previous example), for which the average sojourn time in state 1 is A-', and the average
sojourn time in state 2 is p-'.
The solution of a CTMC model consists of the computation of the pmf over the state space
S either at any arbitrary time instant t or in equilibrium conditions. When an equilibrium or
~teady-statepmf exists, and is independent of the initial state, the CTMC is said to be ergodic
[4,5,61.
Denoting by
~ ( t =) P{X(t) = i)
the probability that the CTMC is in state i at time t, and by
Furthermore, letting
T;= lim P{X(t) = i)
:--roo
a when the lamp is on, either it can be turned off, or the bulb can fail,
a when the lightbulb fails, it is replaced by a new one, after switching off the lamp.
In order to obtain a CTMC model we need to introduce temporal specifications such that the
evolution in the future depends only on the present state, not on the history. To this purpose we
assume that:
a the time periods during which the lamp is turned off are exponentially distributed with
parameter p,
a the time periods during which the lamp is turned on are exponentially distributed with
parameter a,
a the lightbulb lifetime (sum of the durations of the on periods before a fault) is exponentially
distributed with parameter p,
The state transition rate diagram of the resulting CTMC is depicted in Figure 3, and the
infinitesimal generator is
Q= [ -P
a
X
P
-(a+p)
0
P
- AO I
1
The CTMC is ergodic, and the steady-state distribution is easily computed by solving the
system of linear equations:
obtaining
Note that the first three equations of the system above can be interpreted as equalities of the
flow into and out of a given state, where the probability flow over an arc is the product of the
steady-state probability of the state from which the arc originates times the arc label. Thus for
example in the case of state 1 we get
[X?r3]-' = [ p ~ z ] -is
' the average time between two consecutive failures,
+ - ~p
[(a , U ) T ~ ] = ~ ~is the
] - average
~ time between two consecutive instants at which the
lamp is turned on.
Another simple example of a CTMC is provided by the Poisson process. In this case the state
space comprises all nonnegative integers, and transitions are possible only from state i to state i + 1
for all i 2 0. Sojourn times in states are independent random variables with negative exponential
pdf, and mean independent of the state. The parameter of such exponential pdf is the rate of the
Poisson process. T h e Poisson process obviously never reaches an equilibrium condition and hence
is not ergodic. T h e pmf at time t of a Poisson process with rate X comprises probabilities
assuming that
~ ~ ( =0 1) .
These probabilities form a Poisson p d .
Constructing models directly at the CTMC level is generally difficult, mainly due to the need
of choosing an appropriate state definition. For this reason, more abstract probabilistic modeling
tools were proposed. The main such tools are based on queuing theory.
Customer Customer
Arrivals Departures
Service
Waiting
Room
Figure 4: Pictorial representation of a queue.
2.3 Queues
A queue [7,8,9,10,11,12,13] is a!system to which customer^ arrive to receive service by a service
station. The service station may comprise one or more servers. When all servers are busy, cus-
tomers are forced to wait in a waiting room. At the end of service, customers leave the queue. A
pictorial representation of a queue is given in Figure 4.
A queue is a compact description of a probabilistic model in which users (customers) share
resources (servers). The probabilistic characterization of the model is comprised of the stochastic
process describing the arrival of customers, and the random variables describing the customer
service times. Other parameters of a queuing model are:
The simplest queue is known with the acronym M/M/l. The first symbol M denotes the arrival
process as a Markovian one, and'precisely as a Poisson process with a fixed rate, say A. The second
symbol M identifies the service time distribution as being Markovian (negative exponential pdf);
an average service time p-l is considered. The symbol 1 refers to the presence of only one server
in the service station. ~urthermore,the size of the waiting room and the customer population are
taken to be unlimited, and the first-come-first-served disclipline is used for the selection of the next
customer to be served among those in the waiting room.
The CTMC corresponding to the M/M/1 queue has the state transition rate diagram depicted
in Figure 5, which corresponds t a the infinitesimal generator
The solution of the M/M/1 queue in steady-state can be obtained in closed form when the
underlying CTMC is ergodic, that is in the case X < p:
Many queuing models exist with more elaborate characteristics for what concerns
Figure 5: State transition rate diagram of the CTMC generated by the M/M/1 queue.
L J
In particular, for what concerns the first and the second items, many variations have been
considered, trying to capture in the pdf of the interarrival and service times the increased com-
plexity of models of realistic systems. This approach led to very complex service stations with
several servers, and load-dependent service rates, whose analysis must be performed with more
sophisticated tools than CTMC. The drawback of this tendency lies in the increased solution com-
plexity, and in the hiding of the peculiar system characteristics into one pdf, thus complicating the
model construction, and cancelling several aspects of the model which could provide insight into
the system behaviour.
To correct this tendency, queuing network models were proposed.
splitting of customers,
and to the fact that these common features of distributed systems destroy the product-form char-
acteristic, so that even a simple queuing model must b e translated into its corresponding CTMC
for the solution phase.
Stochastic Petri nets come into play in this environment, where they are equivalent to queuing
models from the point of view of the solution, but offer a much greater descriptive power.
The fact that all firing delays have exponential pdf permits t o &rite a simple expression for
the probability that a given transition, say tk, samples the minimum delay instance, and hence
determines the! change of marking 'by firing:
The memoryless property of the negative exponential pdf allows a different and more useful
interpretation of SPN models. Whenever a change of marking enables a transition that was not
previously enabled since its last firing, this transition samples an instance of the firing delay from
the associated negative exponential pdf, and sets a timer at the value of the sampled delay instance.
While the transition is enabled, the timer is decreased at a (possibly marking-dependent) constant
speed. If the transition is disabled by the firing of a conflicting transition, the timer stops, and the
decrement resumes (possibly with a different speed) when the transition is enabled again. When
the timer reaches the value zero the transition fires.
The greater usefulness of the latter interpretation stems from the fad that we may now associate
activities with transitions. These activities can be started and interrupted during the dynamics of
FAILED
the model, and when they are completed, they induce a change of state. The same association was
not possible with the former interpretation, since the resampling would have implied that activities
were restarted in each marking and had a different duration at each restart.
Other interpretations can also be shown equivalent to the mentioned two, due to'the memoryless
property of the exponential pdf. When we shall mention SPN with generally distributed firing
delays this equivalence will not hold any more.
It should be noted that the association of a random firing delay with continuous pdf with each
transition results in a null probability for two transitions being scheduled to fire at exactly the
same instant. An SPN model thus evolves by firing transitions one by one.
The reachability set of an SPN is identical to the one of the underlying untimed PN due to
the unlimited support of the firing delay pdf. Indeed, the fact that the firing delay instances are
sampled from the set of nonnegative real numbers guarantees that in any reachable marking all
enabled transitions have a nonzero probability of firing.
The identity of the reachability sets implies that the structural properties obtained for the PN
are still valid also for the SPN. .
The state transition rate diagram of the CTMC corresponding to the SPN is obtained by
constructing the reachability graph, and by labelling arcs with the firing rate of the transition
whose firing produces the marking change.
Hence, obtaining the infinitesimal generator of the CTMC has the same complexity as gener-
ating the PN reachability set. The steady-state solution of the model is then obtained by solving
the system of linear equations
7rQ =o
z;7ri=1 .
Note that .~ridenotes the steady-state probability of marking Mi (and of state i as well, since
there is a one-to-one correspondence between markings and states), and r is the equilibrium pmf
over the reachable markings.
We may now go back to the lamp example discussed in Section 2.2. The SPN model describing
the system considered in the example is depicted in Figure 7. The reader is adviced to compare the
SPN model and the CTMC state transition rate diagrams, noting the similarity in the topology.
This is due to the fact that the PN underlying our SPN model is a marked graph [2].
In many cases this similarity in the topology does not exist.
Consider as a second example the SPN depicted in Figure 8. This is the SPN representation of
the M/M/1 queue described in Section 2.3. Hence, the state transition rate diagram it generates
is the one depicted in Figure 5, which comprises a denumerable infinity of states, jn spite of the
extremely simple SPN topology.
Figure 8: SPN representation of the M/M/1 queue.
r The probability of an event defined through place markings (e.g., no token in a subset of
places, or at least one token in a place while another one is empty, etc.), can be computed
by adding the probabilities of all markings in which the condition corresponding to the event
definition holds true. Thus, for example, the steady-state probability of the event A defined
through a condition that holds true for the markings Mi E M is obtained as:
r The pmf of the number of tokens in a place, say pi, can be obtained by computing the
individual probabilities in the pmf as probabilities of the event uplace pi contains k tokensn.
r The avemge number of tokens in a place can be computed from the pmf of tokens in that
place.
The frequency of firing of a tramition, i.e., the average number of times the transition fires
in unit time, can be computed as the weighted sum of the transition firing rate:
where f j is the frequency of firing of tj, E(M;) is the set of transitions enabled in Mi, and
Xj(Mi) is the firing rate of t j in Mi.
. .
The avemge delay of a token in traversing a subnet in steady-state conditions can be com-
puted using Little's formula [7,19]
E[Nl
W"l = E[.I1
where E[T]is the average delay, E[N] is the average number of tokens in the process of
traversing the subnet, and E[7]is the average input (or output) rate of tokens into (or out of)
the subnet. This procedure can be applied whenever the interesting tokens can be identified
inside the subnet (which can also comprise other tokens defining its internal condition, but
these must be distinguishable from those whose delay is studied) so that their average number
can be computed, and a relation can be established between input and output tokens (e-g.,
one output token for each input token).
As an example of a performance parameter which in the general case is difficult to compute, we1
may quote the distribution of the delay incurred by a token in traversing a subnet, or in completing
a cycle through a net. . . ,
I
.
3.3 Generalized SPN
The key factor that limits the applicability of SPN models is the complexity of their analysis. This
is due to many elements. The possibly very large number of reachable markings is by far the most
critical one. Other aspects may however add to the model solution complexity. One of these is due
to the presence in one model of activities that take place on a much faster (or slower) time scale
than the one relating to the events that play a critical role on the overall performance. This results
in systems of linear equations which are stiff, i.e., difficult to solve with an acceptable degree of
accuracy by means of the usual numerical techniques. On the other hand, neglecting the 'fast" (or
"slow") activities may result in models which are logically incorrect. It may also happen that in
the construction of the topology of an SPN model, the analyst inserts transitions that correspond
to purely logical aspects of the system behaviour, so that no timing can be reasonably associated
with them.
Generalized SPN (GSPN) were originally proposed by G. Balbo and G. Conte, together with
the author, in order to tackle these problems (201. The definition was later improved by the same
authors together with G. Chiola, in order to better exploit the structural properties of the modeling
tool (211.
GSPN models comprise two types of transitions:
timed transitions , which are associated with random, exponentially distributed firing delays,
as in SPN, and
immediate t r a n s i t i o n s ,which fire in zero time with priority over timed transitions.
Furthermore, inhibitor arcs are permitted, different priority levels of immediate transitions can
be used, and weights are associated with immediate transitions.
A GSPN is thus an eight-tuple
G S P N =(P,T,T,I,O,H,Mo,W)
In the graphical representation of GSPN, immediate transitions are drawn as segments, and
timed transitions as (white or black) rectangular boxes.
The interpretation of a GSPN model is very similar to that of an SPN model, with the changes
necessary to account for immediate transitions.
When a marking is entered, it is first necessary to ascertain whether it enables timed transitions
only, or at least one immediate transition. Markings of the former type are called tangible, whereas
markings of the latter type are called vani~hing(or intangible).
WAITING
h ROOM SERVICE
IDLE
SERVER
In the case of a tangible marking, the timers of the enabled timed transitions either resume
their decrement, or are reset and then decremented, until one timed transition fires, exactly as in
the case of SPN.
In the case of a vanishing marking, the selection of which transition to fire cannot be based
on the temporal description, since all immediate transitions fire exactly in zero time. The choice
is thus based on priorities and weights. The set of transitions with concession at the highest
priority level is first found, and if it comprises more than one transition, the further selection, of
probabilistic nature, is based on the transition weights according to the expression
where E ( M ) is the set of enabled immediate transitions in marking M, i.e., of the transitions with
concession at the highest priority level.
Note that the semantics of a GSPN model always assumes that transitions are fired one by
one, even in a vanishing marking comprising nonconflicting enabled immediate transitions. The
equivalence of this behaviour with the one resulting from the simultaneous firing of some immediate
transitions in the model can be exploited to reduce the complexity of the solution algorithms [22].
The presence of inhibitor arcs and priorities reduces the number of reachable markings with
respect to the basic underlying PN. The GSPN reachability set is equal to the one of the underlying
PN which includes priorities and inhibitor arcs.
The analysis of a GSPN model requires the solution of a system of linear equations comprising
as many equations as the number of reachable tangible markings. The infinitesimal generator of
the CTMC associated with a GSPN model is derived with a contraction of the reachability graph
labeled with the rates or weights of the transitions causing the change of marking.
A different approach to the analysis of GSPN models, which also implies a different semantics,
is presented in [23].
As a first example of a GSPN model, in Figure 9 we show the GSPN representation of the
M/M/1 queue described in Section 2.3. The possibility of using an immediate transition allows
the explicit representation of the waiting room, of the service station, and of the idle server.
A somewhat more complex model is the GSPN representation of the M/M/2 queue with finite
waiting room (5 positions) and finite user population (10 customers), shown in Figure 10. This
queuing system is normally called M/M/2/5/10. The waiting room is represented by place pl;
idle servers are re~resentedby tokens in place p3; busy servers are represented by tokens in place
pz. Place p4 contdns the customers that may arrive to the queue. Place p5 contains tokens that
represent free positions in the waiting room, and that constitute the credits for the admission to the
queue. The marking of p4 determines the firing rate of the transition modeling customer arrivals,
and the marking of p2 determines the firing rate of the transition modeling customer departures.
Figure 10: GSPN representation of the M/M/2/5/10 queue.
Indeed, finite population queuing systems are normally modeled using an arrival process with
exponentially distributed interarrival times whose rate is proportional to the number of customers
out of the queue.
As a third example of a GSPN model, we analyze the performance of the two-processor system
depicted in Figure 11 [18]. Two processing units comprising a processor (PI and P2) and a private
memory (PMl and PM2) connected by a local bus (LBl and LB2), access two common memory
modules (CMl and CM2) through a global bus (GB). Processors can either be active, i.e., working
in their private memory, or try and access a common memory module. Requests can be satisfied
only if the global bus and the requested common memory are available (note that in this case the
availability of the global bus implies the availability of both common memories, so that the model
could be simplified). Processor active times and memory access times are assumed to be random
variables with negative exponential pdf.
The resulting GSPN model of this two-processor system is shown in Figure 12. Tokens in
place pl represent active processors. Transition tl represents the issue of a common memory access
9
request. Transitions t2 and t3 mod the choice of one of the two common memory modules. Tokens
in places p5 and pe represent the availability of the two common memory modules, respectively.
A token in place p, indicates the availability of the global bus. Transitions t, and t6 model the
beginning of a common memo+ adcess, whose duration is represented by the delay associated with
transitions t6 and t7, respectively. The firing rates of tl, t6, and t7 are A, p, and p, respectively.
Figure 12: GSPN representation of the two-processor system in Figure 11.
Incorporating in the model the possibility of failure of the system components leads to the
GSPN in Figure 13. Heavy solid lines constitute the basic model, depicted in Figure 12. Light
solid lines represent the portion of the model corresponding to faults. Dashed lines represent
the portion of the model corresponding to .repairs. Place plo contains tokens representing failed
processing units. Places pll and pl2 contain tokens representing the two failed co&on memory
modules, respectively. Place m3 may contain a token corresponding to the bus failure condition.
Since it would be unreasonable for a processor to request access to a failed common memory
module, the two inhibitor arcs from pll to t f , and from pl2 to t3 may be introduced.
Assuming that the goal of the analysis is the evaluation of the two-processor system processing
power, P, defined as the steady-state average number of processors which are active, working in
their private memory, it can be obtained by adding the probabilities of all markings containing
tokens in place n,weighted with the number of tokens in that place.
The numerical results are plotted in Figure 14 as a function of the parameter p = Alp, cor-
responding to the product of the common m?mory request rate by the average common memory
access time.
The five curves correspond to various assumptions. Curve 1 refers to the absence of faults.
Curve 2 refers'to a system where the bus cannot fail, and failed common memories cannot be
requested. Curve 3 refers to a system where the bus can fail, and failed common memories cannot
be requested. Curve 4 refers to a system where the bus cannot fail, and failed common memories
can be requested. Curve 5 refers to a system where the bus can fail, and failed common memories
can be requested.
In this case it is also possible to use Little's result to compute the average delay from the instant
a common memory request is issued until the common memory access terminates. The subnet
describing the common memory access comprises the whole GSPN model, with the exception of
place pl. Disregarding faults, for the sake of simplicity, the average number of tokens representing
processors with pending and served memory refquestsin the subnet equals 2- P. The average input
rate of tokens in the subnet equals PA. Thus:
P13
Figure 13: GSPN representation of the two-processor system in Figure 11, including failures and
repairs.
3. an end firing phase, in which tokens are deposited into output places.
The translation of a timed P N with transitions firing in three phases into the GSPN formalism
is easily performed by substituting for each three-phase transition an immediate transition, a place,
and a timed transition. The input arcs of the three-phase transition are connected to the immediate
transition, and the output arcs of the three-phase transition depart from ed transition, as
shown in Figure 16.
Normally, three-phase timed transitions can initiate a new firing while another one is in progress.
The timed transition in Figure 16 is thus again of infinite server type. When the three-phase timed
transition can start a new firing only when the previous one is completed, the firing rate of the
timed transition in Figure 16 is constant (the transition is said to be of single aerver type). An
inhibitor arc can be added from the place to the immediate transition if the tokens )nust be kept
in the input places of the three-phase timed transition during the transition delay.
It should be noted that in the case of timed transitions firing in three ,phases; conflicts are
restricted to those transitions that become enabled at the same time instant. Indeed, it is not
Figure 16: Representation of a three-phase timed transition with the GSPN formalism.
possible that a transition that becomes enabled at a later time disables by firing a previously
enabled transitions. In order to incorporate this feature, which may in some cases be useful for the
modeling of systems, into timed PN models in which transition fire in three phases, special arcs
/
that "unfire" a transition were proposed [37].
distributed software,
communication protocols,
manufacturing systems,
VLSI,
data base,
object-oriented systems,
real-time systems.
In some of these application studies the performance analysis aspect is integrated with the for-
mal proof of correctness of the system under investigation, exploiting the formal system description
obtained with the PN formalism (see for example [40]).
As we already mentioned, the main problem in the use of SPN techniques for the analysis of
real-life systems originates from the complexity in the model solution. It is often the case that
models comprise such monstruously large state spaces that the generation of the reachability set is
too costly (both in time and in space) to be performed. Several research efforts are thus devoted
to attempts to reduce the solution cost.
A possible approach is ,to resort to simulation techniques, rather than trying to numerically
solve the model. By so doing, the problems originating from the space complexity are removed,
since the generation of the reachability set is not necessary any more, but the burdens inherent
to the time complexity remain, as always in the case of simulation. On the other hand, Haas and
Shedler have shown [41,42,43] that the modeling power of SPN in the simulation framework is
remarkable, since they are equivalent to generalized semi-Markov processes.
Other approaches that can be followed for the reduction of the model solution complexity
concern the utilization of the structural properties of the underlying PN models to devise efficient
solution algorithms. Place invariants can be very useful to improve the space efficiency of the
generation of. the reachability set [44]. Causal connection and mutual exclusion, together with
invariants, can be exploited for the identification of submodels that in some special cases can
be separately studied, providing results whose subsequent combination yields the desired global
solution [29].
The effort to use structural properties of the underlying PN models in the various phases of a
performance study is demonstrated by the use of place and transition invariants for the study of
the model ergodicity, as well as for the model debugging process; by the use of place invariants,
causal connection, mutual exclusion, and confusion to verify that a model can be classified in a
special class; by the use of transition invariants to identify bottlenecks; by the use of conflicts to
ease the definition of a GSPN model.
The graphical complexity of SPN models can often be reduced if a high level description is used.
The definition of high-level and colored SPN has already appeared in the literature [45,46,47], but
works are still in progress in order to obtain the most adequate balance between modeling power
and simplicity of use.
Finally, some researchers are studying the possibility of combining SPN with queues in order to
obtain an integrated performance evaluation methodology that enjoys the nice properties of both
approaches [48,49].
1. how can a n SPN model be decomposed into submodels which can be studied in isolation, and
whose results can later be combined to obtain (either exactly or approximately) the solution
of the global model?
2. how can the structural characteristics of the underlying PN be exploited in the model solution
phase?
5 ACKNOWLEDGMENTS
This work was financially supported in part by the Italian Ministry for Education, and by the
NATO Research Grant n. 012.81.
The author is grateful to G. Balbo, G. Chiola, G. Conte, F. De Cindio, A. Fumagalli, C. Simone,
and the three anonymous reviewers who carefully read the early versions of this paper and provided
useful comments for their improvement.
References
[I] C.A. P e t r i , UCommunication with Automatan, Tech. Rep. RADC-TR-65-377, Rome Air
Dev; Center, New York, NY, 1966.
[2] W.Reisig, Petri Nets: an Introduction, Springer Verlag, 1985.
[3] J.L. Peterson, Petri Net Theory and the Modeling of Systems, Prentice-Hall, Englewood
Cliffs, NJ, 1981.
[4] E. Cinlar, Introduction to Stochastic Processes, Prentice-Hall, Englewood Cliffs, NJ, 1975.
[5] W..Feller, An Introduction to Probability Theory and Ita Applications, John Wiley, New
York, NY, 1966.
[8] J.W. Cohen, The Single Server Queue, American Elsevier, New York, NY, 1969.
[9] D.R. C o x a n d W.L. Smith Queues, John Wiley, New York, NY, 1961.
[lo] R.B. C o o p e r , Introduction to Queueing Theory, Mac MiUan New York, NY, 1972.
[11] S.S. Lavenberg, Computer Performance Modeling Handbook, Academic Press, New York,
NY, 1983.
[12] E. G lenbe a n d I. Mitrani, Analysis and Synthesis of Computer Systems, Academic Press,
1
New ork, NY, 1980.
[13] hrZ. Ajrnone M a r s a n , G. Balbo a n d G. Conte, Performance Models of Multiprocessor
Systems, The MIT Press, Cambridge, Massachusetts, 1986.
[14] S. Natkin, "Les Reseaux de Petri Stochastiques et leur Application a 1'Evaluation des
Systkmes Informatiques", Thkse de Docteur Ingegneur, CNAM, Paris, France, 1980.
(151 M.K. Molloy, "On the Integration of Delay and Throughput Measures in Distributed Pro-
cessing Modelsn,.Ph.D. Thesis, UCLA, Los Angeles, CA, 1981.
[16] F.J.W. Symons, 'Introduction to Numerical Petri Nets, a General Graphical Model of
Concurrent Processing 'Systemsn, Austnrlian Telecommunications Research, Vol. 14, n. 1, pp.
28-33, January 1980.
[17] F.J.W. Symons, 'The Description and Definition of Queueing Systems by Numerical Petri
Netsn, Australian Telecommunications Research, Vol. 13, pp. 20-31, 1980.
[18] M. Ajmone Marsan, A. Bobbio, G. Conte, A. Cumani 'Performance Analysis of
Degradable Multiprocessor Systems using Generalized Stochastic Petri Netsn, Distributed Pro-
cessing T-C Newsletters, IEEE Computer Society, n. 6, SI-1, 1984, pp. 47-54.
[19] J. D. C. Little, "A Proof of the Queueing Formula L = Awn, Operations Research, Vol. 9,
1961, pp. 383-387.
[20] M. Ajmone Marsan, G. Balbo, G. Conte, "A Class of Generalized Stochastic Petri Nets
for the Performance Analysis of Multiprocessor Systemsn, A CM Transactions on Computer
Systems, Vol. 2, n. 1, May 1984, pp. 93-122.
[21] M. Ajmone Marsan, G. Balbo, G. Chiola, G. Conte, "Generalized Stochastic Petri
Nets Revisited: Random Switches and Prioritiesn, Proceedings of the International Workshop
on Petri Nets and Performance Models, Madison, WI, USA, August 1987.
[22] G. Balbo, G. Chiola, G. Franceschinis, G. Molinar Roet, 'On the Efficient Construc-
tion of the Tangible Reachability Graph of Generalized Stochastic Petri Netsn, Proceedings
of the International Workshop on Petri Nets and Performance Models, Madison, WI, USA,
August 1987.
[23] H. H. A m m a r , R. W. Liu, "Analysis of the Generalized Stochastic Petri Nets by State
Aggregationn, Proceedings of the International Workshop on Timed Petri Nets, Torino,Italy,
July 1985.
[24] J.B. Dugan, K.S. ~ r i v e d i ,R.M. Geist, V.F. Nicola, 'Extended Stochastic Petri Nets:
Applications and Analysis?', Proceedings of PERFORMANCE '84, Paris, France, December
1984.
[25] M. Ajmone Marsan, G. Chiola, 'On Petri Nets with Deterministic and Exponential
Transition Firing Times", Proceedings of the 7-th European Workshop on Application and
Theory of Petri Nets, Oxford, England, June 1986.
[26] M. Ajmone Marsan, G. Chiola, "On Petri Nets with Deterministic and Exponentially
Distributed Firing Timesn, in: G.Rozenberg (editor), Advances in Petri Nets 1987, Lecture
Notes on Computer Science, n. 266, Springer Verlag, 1987.
[27] M. Ajmone Marsan, G. Balbo, A. Bobbio, G. Chiola, G. Conte, A. Cumani, 'On
Petri Nets with Stochastic Timingn, Proceedings of the International Workshop on Timed
Petri Nets, Torino,Italy, J a y 1985.
[28] M. Ajmone Marsan, G. Balbo, A. Bobbio, G. Chiola, G. Conte, A. Cumani, "The
Effect of Execution ~bliukon the Semantics and Analysis of Stochastic Petri Netsn, IEEE
Transactions on Software Engineering, Vol. SE-15, n. 7, July 1989.
[29]M. A j m o n e M a r s a n , G . Chiola, A. Fumagalli, "Improving the Efficiency of the Analysis
of DSPN Modelsn, Proceedings of the 9-th European Workshop on Application and Theory 01
Petri Nets, Venezia, Italy, June 1988.
[31]J. Sifakis, "Perfomance Evaluation of Systems Using Petri Netsn, in Net Theory and Appli-
cations, edited by G. Goos and J. Hartmanis, Springer Verlag, New York, NY, 1979.
[32]C.Y. W o n g , T.S. Dillon, K.E. Forward, "Timed Places Petri Nets with Stochastic Rep-
resentation of Place Time", Proceedings of the r'ternational Workshop on Timed Petri Nets,
Torino, Italy, July 1985.
[34]M.A. Holliday, M.K. V e r n o n , "A Generalized Timed Petri Net Model for Performance
Analysisn, Proceedings of the International Workshop on Timed Petri Nets, Torino, Italy, July
1985.
[35]W.M. Zuberek, "Timed Petri Nets and Preliminary Performance Evaluation", Proceedings
of the 7-th Annual Symposium on Computer drchitectun, La Bade, France, May 1980.
[36]W.M. Z u b e r e k , "Performance Evaluation using Timed Petri Nets", Proceedings of the In-
ternational Workshop on Timed Petri Nets, Torino, Italy, July 1985.
[38]M.K. Molloy, "Fast Bounds for Stochastic Petri Nets", Proceedings of the International
Workshop on Timed Petri Nets, Torino, Italy, July 1985.
[39]M.K. Molloy, "Structurally Bounded Stochastic Petri Netsn, Proceedings of the International
Workshop on Petri Net8 and Performance ~ 6 1 8 Madison,
, WI, USA, August 1987.
[41]P.J. Haas, G.S. Shedler, "Regenerative Simulation of Stochastic Petri Nets", Proceedings
of the International Workshop on Timed Petri Nets, Torino, Italy, July 1985.
[42]P.J. Haas, G.S. Shedler, "Regenerative Stochastic Petri Netsn, Performance Evaluation,
Vol. 6, n. 3, September 1986, pp. 189-204.
[43]P.J. Haas, G.S. Shedler, "Stochastic Petri Nets with Timed and Immediate Transitions",
Stochastic Models, to appear.
[44]G. Chiola, "Compiling Techniques for the Analysis of Stochastic Petri Nets", Proceedings
of the 4-th International Conference on Modeling Techniques and Tools for Computer Perfor-
mance Evaluation, Palma de M d o r c a , Spain;September 1988.
.... .
[45] A. Zenie, "Colored Stochastic Petri Nets", Proceedings of the International Workshop on
Timed Petri Nets, Torino, Italy, July 1985.
[46] C. Marinescu, C h u a n g Lin, Stochastic High Level Petri Nets", Proceedings of the
International Workshop on Petri Nets and P e r f o r m ~ c e~ o d e bMadison,
, WI, USA, August
1987.
(471 G. Chiola, G. B r u n o , T. Demaria, "Introducing a Color Formalism into Generalized
Stochastic Petri Nets", Proceedings of the 9-th European Workshop on Application and Theory
of Petri Nets, Venezia, Italy, June 1988.
(481 G. Balbo, S. C. Bruell, S. Ghanta, "Combining Queueing Network and Generalized
Stochastic Petri Net Models for the Analysis of a Software Blocking Phenomenon", Proceedings
of the International Workshop on Timed Petri Nets, Torino, Italy, July 1985.
[49] G. Balbo, S. C. Bruell, S. Ghanta, "Combining Queueing Network and Generalized
Stochastic Petri Net Models for the Analysis of Some S o f t ~ Blocking
e Phenomena", IEEE
Transactiow on Software Engineering, Vol. SE-12, n. 4, April 1986, pp. 561-576.
[50] G. Florin, S. N a t k i n , "On Open Synchronized QueuingNetworksn, Proceedings of the
International Workshop on Timed Petri Nets, Torino, Italy, July 1985.
[51] G. Florin, S. N a t k i n , "Les Reseaux de Petri Stochastiquesn, Technique et Science Infor-
matiques, Vol. 4, n. 1, February 1985, pp. 143-160.
[52] G. Florin, S. N a t k i n , "A Necessary and Sufficient Saturation Condition for Open Syn-
chronized Queueing Networksn, Proceedings of the International Workshop on Petri Nets and
Performance Models, Madison, WI,USA, August 1987.
[53] A. A. Lazar, T. G. Robertazzi, "Markovian Petri Net Protocol Models with Product Form
Solution", Proceedings of INFOCOM 87, San Francisco, CA, USA, March 1987.
[55] I. Y. Wang, T. G. Robertazzi, "Service Stage Petri Net ~ r o t o c o l swith Product Form",
submitted for publication.