Mathl. Comput. Modelling Vol. 18, No. 9, pp. 17-30, 1993 Printed in Great Britain. All rights reserved
0895-7177/93 $6.00 + 0.00 Copyright@ 1993 Pergamon Press Ltd
Timed Petri Net: An Expeditious Tool for Modelling and Analysis of Manufacturing Systems G.
B.
REDDY
Industrial Engineering Department, Ecole Polytechnique Montreal, Quebec, H3C 3A7, Canada S. S. N. MURTY Mechanical Engineering Department I.I.T, Kharagpur, India 721302 K. GHOSH Industrial Engineering Department, Ecole Polytechnique Montreal, Quebec, H3C 3A7, Canada
(Received and accepted May 1993) Abstract-The manufacturing systems used in the modern industry are usually composed of complex and sophisticated processing equipment which are integrated by automated material handling means and by advanced networks for information transfer. To understand many asynchronous and concurrent transactions in such manufacturing systems, appropriate mathematical models are needed. In this paper, timed Petri nets have been applied to model the production systems, and their usefulness to describe and analyze such systems has been presented. Furthermore, the modelling capabilities of timed Petri nets have been extended. To demonstrate the potential use of Petri nets, they are applied to model a simple fixed route FMS and a flow shop manufacturing system. An algorithm for the qualitative and quantitative analysis of timed Petri net models of manufacturing systems is presented. The criteria used for performance evaluation of the modelled system are the cycle time and the production rate. Methods to improve the performance of the system are suggested. The proposed algorithm is also able to identify the critical resources in the system, so that greater control and supervision can be provided over these critical resources and tasks. The dynamic behavior of the system can be viewed in terms of reachable states and from the firing diagram of the timed Petri net model. Keywords-Petri uation, FMS.
nets, Modelling,
Qualitative analysis, Quantitative
analysis, Performance eval-
1. INTRODUCTION Recent developments in information technology have resulted in fully automated, highly efficient but complex manufacturing systems such as flexible manufacturing systems (FMS). Such a modern manufacturing environment comprises a number of programmable machines and robots interconnected by an automated material handling system. The behavior of these manufacturing systems is extremely complex and difficult to analyze. The various interactions in a FMS are highly concurrent and their understanding is further complicated by nondeterministic machine failures, limited buffer capacities, and a high degree resource sharing. Many mathematical models have been developed to solve some of these problems. The most prominent among them are queuing networks [l], Markov chain models [2], perturbation analysis [3], etc. However, these models have a limited capability in real situations because of their
17
G. B. REDDY et al.
18
strong unrealistic mathematical assumptions. Most often, systems of practical interest are analyzed using simulation, which could be time consuming and expensive. One of the more promising recent proposals for system analysis is the Petri net model (PNM). A Petri net (PN) is a formal graph model for modelling the flow of information and control of systems, especially those which exhibit asynchronous and concurrent properties. Initially, it was developed for modelling and analysis of computer hardware and software, but during the last few years, PN is being increasingly used in the area of manufacturing systems. Silva and Valette [4] have made an extensive survey of Petri net applications. Recent applications of PNMs in FMS are found in design [5,6], on line scheduling [7], performance analysis [8,9], tool management issues [lo], storage and retrieval systems [ll], assembly processes [12], flexible manufacturing cells [13,14], decision support systems [15] and knowledge representation [12]. However, Petri nets have not been exploited to solve real time control problems. In literature, Petri net models fall into one of two classes: timed Petri net models [8-10,15-191 and untimed Petri net models [6,20,21]. The timed Petri net model (TPNM) captures actual physical behavior of the system by assuming specific durations for various activities in the system. An untimed Petri net model does not associate any times with the activities and so models the physical behavior under all possible time dependencies. Untimed Petri net models are mainly used for understanding qualitative aspects of the modelled system, such as existence or absence of dead locks, buffer overflows, mutual exclusion, etc. TPNMs are useful in computing quantitative performance measures such as throughput rate, cycle time, machine utilisation, etc. It is emphasized herein that the PNMs have to be analyzed both qualitatively and quantitatively for their effective use. The main objective of this paper is to gain insight into the qualitative behavior of a given production system, and to demonstrate the usefulness of TPNMs to efficiently analyze the problems of real time control as well as the performance evaluation of production systems. The production rate and cycle time are considered as the measure of the performance of the system.
2. NOTATION
AND DEFINITIONS
In this section, we will present some basic definitions that will be pertinent to the topics discussed in this paper. A Petri net is a four tuple G = (P, T, IN, OUT), where P = {pl,p2,. of places; T = {tl, t2,. . . , tm} is a set of transitions, such that
PETRINET.
PnT=Q)
and
. . , p,}
is a set
PUT#@;
IN : (P x T) + N is an input function that defines directed arcs from places to transitions (N is the set of all nonnegative integers); and OUT : (I’ x T) --+ N is an output function that defines directed arcs from transitions to places. In a Petri net model of a given system, places represent conditions or resources, while transitions represent events (activities). Input and output functions indicate various types of dependencies between places and transitions. Pictorially, places are represented by circles and transitions by bars. MARKING. A marking M of a Petri net is a function M : P + N, where N is the set of ail nonnegative integers. A marked Petri net W is a pair W = (G, M). The initial marking MO represents the initial state of the system. A marking M of a Petri net with n places is a (1 x n) vector and associates with each place a certain number of tokens which are represented by means of dots inside the circles. A token inside the place indicates holding of the condition or availability of resource.
Timed Petri Net INPUT PLACES AND OUTPUT
19
PLACES. Let 2P be the power-set of P.
Then the functions IP :
T + 2P and OP : T --+ 2P can be defined as:
IP(tj) =
{Pi E
OP(tj) = {Pi
E
P : IN(pi, tj) #
O},
P : OUT&, tj) #
IP(tj) is called the set of input places of tj, and OP(tj)
Vtj E T,
0},
Vtj E T,
the set of output places of tj.
ENABLING AND FIRING OF TRANSITIONS. A transition tj of a Petri net is said to be enabled in a marking M if M(Pi) L IN(pi,tj),
VP~ E IP(tj).
An enabled transition tj can fire any time. When tj fires, the marking of the Petri net changes to M’, where M’ is given by M’(Pi) = M(pi) + OUT(pi, tj) - IN(pi, tj),
Vpi E p.
One can then say that M’ is immediately reachable from M and it can be written as M -% M’. REACHABILITY SET. A marking M’ is said to be reachable from M if there exists a sequence of transitions by firing which M’ is obtained from M. Reachability of markings is a reflexive and transitive relation and the transitive closure of this relation is called reachability set of the Petri net. The set of aJJmarkings reachable from initial marking MO is denoted by R[Mo]. PURE NET. A Petri net PN = (P, T, IN, OUT) is said to be pure or self-loop free, if there exists no pair (pi, tj) E (P x T) for which IN(pi, tj) and OUT(pi, tj) # 0. If a given Petri net is not pure, it is always possible to get an equivalent pure Petri net by introducing dummy places and transitions. INCIDENCE MATRIX. The incidence
C(ilj)
=
matrix C of a pure net is an (n x m) matrix defined by
-IN(Piltj),
jfIN(pi,tj) # 0,
OUT(pi, tj),
if OUT(pi, tj) # 0,
0,
otherwise.
3. TIMED
PETRI
NETS
Basic Petri nets are not complete enough for the study of system performance, since assumption is not made on the duration of the system activities. A timed Petri net model assumes specific durations for various activities of the system. Ramachandani [16] first introduced timed Petri nets and provided methods to calculate throughput for certain classes of Petri nets. Ramamoorthy and Ho [17] suggested a procedure that finds the minimum cycle time by totally enumerating all circuits. Sifakis [18] generalized the results derived by Ramachandani [16]. Dubois and Stecke [8] used timed Petri nets to model FMSs under certain modelling conventions. A timed Petri net (TPN) is a Petri net which has been augmented to include a set of firing durations D. The timed Petri net is formally defined as TPN = (P, T, IN, OUT, M, II),
where D : T 4
(0, R+};
lR+} is a set of all nonnegative real numbers. The state of TPN is defined differently than in untimed Petri nets, because firing a transition is not an automatic operation. A transition has an associated deterministic firing duration. There (0,
G. B. REDDY
20
et al.
is a “start firing” event and an “end firing” event. Between these events, the firing is in progress. The removal of tokens from a transition’s input places occurs at start firing. The placement of tokens on a transition’s output places occurs at the end firing. While the firing of a transition is in progress, the time to end firing, called the remaining firing time R decreases from the firing duration to zero (without causing a change in the net). Because firings can be in progress when a marking change occurs, a state is only partially defined by the distribution of tokens. A state is thus a marking vector and a set of R’s (called R-vector). Operation of a TPN can thus be considered as taking place in real time and it is assumed that it starts at the time T = 0. At this moment, the firing of the transitions enabled by the marking Mc are initiated and the tokens are removed from their input places. Then, after the time determined by the smallest firing time of the transitions which initiated firings, the tokens are deposited in appropriate 3.1.
Firing
output
places creating
a new marking,
a new set of enabled
transitions
and so on.
Diagram
The behaviour of a certain class of TPNs can be visualized by a firing diagram represented by a set of time semi-axes, each semi-axis corresponding to a particular transition. It can be observed that the sequence of firings is cyclic. It can also be seen that the states of the net are subject to changes at those moments only in which firings initiate or terminate. The state of a TPN is formally defined in the following, as the instantaneous description [19] of the net. 3.2.
Instantaneous.
Description
An instantaneous description ID of a safe TPN is a four tuple ID = (M, F, R, T), where M is a marking function, M : P + N; F is a selector function, F : T + (0,1); R is a remaining firing time function R : T --f (0, a+}; and -r is a cumulative time function. It can easily be shown that the reachability set of any safe TPN is finite. In the selector function, 1 indicates the enabled transition, and 0 indicates the transition that is not enabled in that marking. Thus, the selector function is nothing but the firing vector (F-vector). From the cumulative time function, it is possible to know the state of the system at any particular moment of time. Thus, this time counter r will help to inform us about the future condition of the system.
4. MODELLING
WITH
The modelling conventions to be followed in modelling can be summarized as follows.
PETRI
NETS
manufacturing
systems
using Petri nets
(1) The
set of activities (tasks, operations) to be performed in the production system, such as carrying the part to the machine, loading the part on to the machine, inspection of Each transition is assigned the by a set of transitions. the part, etc., are represented corresponding activity duration. (2) The elements of the system such as machine tools, AGVs, robots, parts, etc., and the conditions to be satisfied are represented by a set of places. Specifically, the number of input places of a particular transition indicates the number of resources which the activity simultaneously requires. Output places denote the activities that are required next and the release of certain resources. of a resource or holding of a condition is represented by the presence (3) The availability For example, a token present in the place that of a token in the corresponding place. represents a robot, indicates that the robot is ready to do its assign task. Tokens flow through activities according to the system control role.
The resulting Petri net models are superior to many of the existing models in that (1) circuits of activities or repeated performance of the same activities are possible, and (2) explicit representation of required resources is made.
Timed Petri Net
5. QUALITATIVE
21
ANALYSIS
One outstanding aspect of Petri nets is their capacity for being analyzed, to verify if the constructed model is valid. For this, the net must satisfy a set of properties. properties and their significance [6] are discussed below.
Some of these
5.1. Safeness and Boundedness A place pi of a Petri net is said to be bounded in marking Mc if there exists a positive integer B such that M(pi) 5 B, VM E R[Mo]. If B = 1, then the place is safe. If all places of a Petri net are bounded (safe) in a marking MO, the Petri net itself is said to be bounded (safe) in that marking. Boundedness of a Petri net model refers to absence of overflows in the modelled system. Boundedness implies that the number of states of the model is finite. 5.2. Conservativeness A marked Petri net W = (G, Mc) is said to be conservative if: 2
VM E [MO].
M(pi) = constant,
i=l
If a marked Petri net is conservative, then the sum of all tokens will remain constant in all reachable markings. Such a Petri net model will represent a system with constant number of resources, jobs, for example, a closed queuing system. 5.3. Liveness A transition tj in a marked Petri net W = (G, MO) is potentially firable if there exists an M’ E R[Me). A Petri net having only live transitions is live. Petri nets which are not live have deadlocks. 5.4. Properness A marked Petri net W = (G, Me) is said to be proper if, MO E R[Ml,
VM E R[Mc].
In a proper net, the initial marking is reachable from all reachable markings. Thus, properness implies re-initializability. This has considerable significance in case of fully automated manufacturing systems. The properness in such systems will ensure that the system will eventually re-initialize itself from any current state (which could be an illegal state or failure state). The quantitative analysis is carried out by associating times with some or all transitions in the PNM. The criteria of performance used in this paper are cycle time and production rate.
6. ALGORITHM
FOR THE ANALYSIS
OF TIMED
PETRI
NETS
The Petri net models constructed along the lines proposed here belong to the class of decisionfree graphs. Such Petri nets can easily be translated into algebraic equations [15]. Based on the method proposed by Ramamoorthy and Ho [17], the procedure for the both qualitative and quantitative analysis of TPNMs is summarized as follows: (1) Formation of input relation matrix IN,,, is the number of places: IN(j,i)
=
where, m is the number of transitions and n
1,
if place pi is input place of transition
0,
otherwise.
tj,
G. B. REDDY
22
(2) Formation
of output
relation
OUT(j,i)
(3) Checking
=
matrix
etal.
OUTmx,:
1,
if place pi is output
0,
otherwise.
place of transition
tj,
for pureness, if IN(j, i) > 0 and OUT(j,
(4) Calculation
of incidence
matrix
i) > 0, then net is impure.
C&x,, C=IN-OUT.
(5) Checking
for enabled
transitions, Vpi E IP(tj),
if M(P~) 2 IN(pi, tj), (6) Formation
of firing vector 1, Z(j)
(7) Calculation
=
Zi xm tj is enabled
if transition
{ 0,
then tj is enabled.
in the given marking
M,
otherwise.
of new marking
M’, M’=M+ZxC.
(8) Computation
of reachability repeat
set R(Mc), steps 5-7 with each new marking.
(9) Qualitative analysis. (4 Conservativeness: if kM(pi)
= constant,
VM E R(Me),
then net is conservative.
i=l
(b) Safeness
and Boundedness: M(pi)
(cl
5 B, VM E R(Ms),
Properness: if Me E R(M),
(4
then place pi is bounded.
VM E (MO), then the net is proper.
Liveness: if Z(j)
= 0, Vtj E T, then the net is live.
(10) Quantitative analysis. (a) Formation of token loading
matrix
P,,,,
2,
if place pi is directly connected transition and if M(pi) = 2,
0,
otherwise.
P(i, j) =
to place pj, by a
Timed Petri Net
(b) Formation
of time loading
place and pj is output
place of
rk (dk: firing time of transition
transition
tk),
otherwise.
{ 0,
(cl
Qnxn,
if pi is input
dk,
&t&j) =
matrix
23
c = Max (D), where c = cycle time, Max (II) = Maximum
(4
Calculation
of the delay matrix
A,,,,
A = [c x P] - Q,
(4 (f)
Calculation Performance
of matrix
with (n - W) = 00 for n E N.
S (by applying
evaluation
of all firing times.
Floyd’s
algorithm
[22].
(at cycle time = c),
For i = 1,2,...,n (i) if S(i, j] < 0, th en repeat
the steps (d) through
(f) with c = c + 0.01;
(ii) if S[i, j] = 0, then c is the cycle time at optimum
performance
of the
system; (iii) if S[i, j] 2 0, then system Finding
bottleneck
performance
will meet the given requirement.
resources:
for i = 1,2,...,n if S[i, j] = 0, then place pi is in critical Production rate = npart/c, system in time c.
where
‘npart’
circuit.
is the number
of parts
produced
by the
Based on the above algorithm, a computer program (in TURBO PASCAL) has been developed by us to verify the various properties of the system and to evaluate the overall performance of the system. The performance can be improved either by reducing the execution times of some transitions in the critical circuit (by using faster facilities) or by introducing more concurrency in the circuit (by introducing more tokens in the circuit).
7. APPLICATIONS To illustrate sidered:
the applicability
of timed
(1) A fixed route FMS. (2) A flow shop manufacturing
Petri net models,
the following
system. PM
1
Figure 1. Three machine fixed route FMS. Table 1. Processing times of the FMS of Figure 1.
two examples
are con-
G. B. REDDY et al.
24
Figure 2. Timed Petri net model of FMS shown in Figure 1. Table 2. Legend for the TPNM
PiaCeS
in Figure 2.
Transitions
Pl
MC1 available for processing Part 2.
processing of Part 2 on MCI.
P2
Part 2 waiting at MCI.
processing of Part 1 on MC2.
P3
MC2 available for processing Part 1.
processing of Part 3 on MCI.
P4
Part 1 waiting at MC2.
processing of Part 2 on MC2.
P5
Part 3 waiting at MCI.
processing of Part 1 on MCs.
Ps
MC1 ready for processing Part 3.
processing of Part 3 on MC2.
P7
Part 2 waiting at MC2.
processing of Part 2 on MCs.
P8
MC2 ready for processing Part 1.
P9
Part 1 waiting at MCs.
PlO
MC3 ready for processing Part 1.
Pll
Part 3 waiting at MC2.
P12
MC2 ready for processing Part 3.
P13
Part 2 waiting at MCs.
PI4
MC3 ready for processing Part 2.
7.1. Fixed-Route
FMS
Consider the model of simple fixed route FMS [8] of Figure 1, consisting of three different part types according to a specific part mix and specified part routes. Processing times of each operation for each part type on each of the machine tools are shown in Table 1. The characteristics of the system are as follows:
(1) The sequence of (2) Set up times on
parts on the machine tools is given in Figure 1. a machine tool for part changeover are negligible (the system is flexible, having automated tool change). (3) Transportation times are neglected. (4) For each part type, there is one pallet and one fixture. (5) The product mix is balanced, and can be obtained through a periodic input of parts. Here, the sequence l-2-3 is used.
Timed Petri Net 0
1
2
3
4
6
6
7
6
9
10
11
25
12
13
14
16
16
17
16
19
20
1% h b t k r, 17
Figure 3. Firing diagram for the TPNM shown in Figure 2.
Table 3. Reachable states of TPNM of Figure 2. State
Marking
Time 7
Pl
P2
P3
P4
PS
PS
P?
PS
P9
PlO
Pll
P12
PI3
P14
1
0
1
1
1
1
1
0
0
0
0
1
0
0
0
0
2
1
0
0
0
0
1
1
1
0
0
1
0
0
0
0
3
3
0
0
0
0
0
0
1
1
1
1
0
0
0
0
4
5
0
0
0
0
0
0
0
0
0
0
0
1
1
0
5
6
1
0
0
0
0
0
0
0
0
0
1
1
1
0
6
7
1
0
0
1
0
0
0
0
0
0
0
0
1
1
7
9
1
0
1
1
1
0
0
0
0
0
0
0
0
0
8
10
1
1
0
0
1
0
0
0
0
1
0
0
0
0
9
11
0
0
0
0
1
1
1
0
0
1
0
0
0
0
10
12
0
0
0
0
0
0
1
1
1
1
0
0
0
0
11
14
0
0
0
0
0
0
0
0
0
0
0
1
1
0
12
16
1
0
0
1
0
0
0
0
0
0
1
1
1
1
13
19
1
1
1
1
1
0
0
0
0
1
0
0
0
0
State
F-Vector
Time 7
$1
R-Vector
t2
t3
t4
t5
ts
t7
t1
t2
t3
t4
t5
ts
t7
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
1
0
0
0
0
0
2
0
0
0
0
0
3
3
0
0
0
1
1
0
0
0
0
3
0
0
0
0
4
5
0
0
0
0
0
0
0
0
0
1
0
2
0
0
5
6
0
0
0
0
0
1
0
0
0
0
0
1
0
0
6
7
0
0
0
0
0
0
1
0
0
0
0
0
2
0
7
9
0
1
0
0
0
0
0
0
0
0
0
0
0
1
8
10
1
0
0
0
0
0
0
0
2
0
0
0
0
0
9
11
0
0
1
0
0
0
0
0
1
0
0
0
0
0
10
12
0
0
0
1
1
0
0
0
0
4
0
0
0
0
11
14
0
0
0
0
0
0
0
0
0
2
0
2
0
0
12
16
0
0
0
0
0
1
1
0
0
0
0
0
0
0
13
19
1
1
0
0
0
0
0
0
0
0
0
0
0
0
The pallets ensure a proper positioning of parts on machines. When a pallet leaves the last machine on its processing sequence, it returns to the first machine to carry a new part. The timed Petri net model and the corresponding firing diagram are shown in Figures 2 and 3, respectively. The physical representation of transitions and places are described in Table 2. In this model, the initial marking MO is (1, 1, 1, 1, l,O, O,O, 0, l,O,O,O,O). This marking sets the transitions tr and ts ready to be fired. These enabled transitions in the net are then fired concurrently. But firing
G. B. REDDY et al.
26
durations of these two transitions are different. After one time unit from the starting of firing, transition tl deposits tokens into its output places ps and p7 making the transition t3 enabled. At this moment, ts starts firing and 2 time units are needed for transition tz to complete firing. This remaining time is represented in the R vector. The reachable states (instantaneous descriptions) of TPNM are shown in Table 3. The TPNM in Figure 2 is decision free, safe, conservative, proper, and live for any feasible initial marking, for example, for a marking consisting of three “machine” tokens and three “pallet” tokens. A similar Petri net can be constructed for more general job shop type of FMS. In addition, inclusion of another pallet for one of the part types can easily be represented by adding a token to the appropriate processing sequence circuit. Both set up and transportation times can easily be introduced as one place out, one place in transitions that separate processing transitions. From the firing diagram (Figure 3) and reachable states (Table 3) of the TPNM, it can be seen that the state of the system at time r is the same as 713. It is also observed that the sequence of firings is cyclic. For the above system, the average cycle time at optimum performance of the system is calculated as 9.5 units. The places pz, ps, ps, pg, pll, and Pi4 represent the critical resources. The transitions connecting these places indicate the critical activities. Greater control and supervision is needed over these critical resources and tasks. The performance of the system can be improved by one of the following ways. In the Petri net model of Figure 2, the transition tl, t2, t3, and t5 are in the critical circuit. By reducing the firing durations of transitions tl, t3, and t5 from 3, 5 and 4 to 2,4, and 3, respectively, the minimum cycle time can be reduced to 8 units. Thus, by providing faster facilities for the tasks represented by critical transitions, the performance of the system can be improved. (b) Addition of pallets for each of the part types introduces more concurrency in the system. These additional resources can be represented by adding tokens to the appropriate processing sequence circuit. Thus, the addition of resources improve the performance of the system and machine utilization.
(4
7.2.
A Flow Shop Manufacturing
System
Consider the manufacturing system shown in Figure 4 that can produce two types of parts, Part 1 and Part 2, with two machines, MC1 and MC2. All the parts pass in the same order through the two machines (flow shop). There is a buffer stock at the entry of each machine and one buffer stock at the exit from the system. The scheduling of the system consists of alternately making the two parts. When a machine is set up for one part, the other parts designated for this machine must wait until the machine has finished its current operation. The durations of the various activities are shown in Table 4. STOCK 1
STOCK 2
STOCK 3
Figure 4. Scheme of a flow-shop manufacturing
system.
Table 4. Timings of activities of system in Figure 4. Part Machine
Part 1 Loading
Processing
Part 2 Unloading
Loading
Processing
Unloading
MCI
1.5
5.0
1.0
2.0
4.5
1.0
MC2
1.0
4.0
0.5
1.5
5.5
0.5
Table 6 presents all possible reachable states of the TPNM in Figure 5, and Figure 6 represents the corresponding firing diagram. It can be shown that the net evolution correctly realizes the
Timed Petri Net flow
shop policy.
Part
2, etc.
and bounded,
The flow order through
Furthermore, proper,
the model
live, and decision
the machines clearly
27
is always the same:
shows the possible
free. It is also observed
Part 1, Part 2, Part
parallelism. that
This
the state
1,
net is safe
of the system
at
time 74 is same as the state at time ~14. Therefore, the same sequence of transition firings occur in a cyclic manner after 714. It is observed that on an average, after every 7.95 time units, one finished part will come out from the system. Average cycle time at optimum performance of the system
is 15.9 units.
Figure 5. TPNM
of the flow-shop manufacturing
Table 5. Legend for the TPNM
system shown in Figure 4.
in Figure 5.
Places
ml
Transitions t1
loading of Part
t2
processing
of Part
1 into MCI.
Part 1 loaded into MC1 and ready for processing.
t3
unloading of Part
1 from MCI.
t4
loading of Part 2 into MC,.
t5
processing
PI
MC1 free, waiting for Part 1.
PZ
Part
P3
1 in MCI’S entry stock (Stock
1).
1 waiting for unloading from MCI.
1 into MCI.
P4
Part
P5
Part 2 in MCI’S entry stock (Stock
P6
MC1 free, waiting for Part 2.
t6
unloading of Part 2 from MCI.
1).
of Part 2 at MCI.
P7
Part 2 loaded into MC1 and ready for processing.
t7
loading of Part
PS
Part 2 waiting for unloading from MCI.
ta
processing
1 into MCs.
P9
Part 1 in MC2’s entry stock (Stock 2).
t9
unloading of Part
of Part
1 at MC9. 1 from MC2.
PI0
MC2 free, waiting for Part 1.
ho
loading of Part 2 into MC2.
Pll
Part
1 loaded into MC2 and ready for processing.
hl
processing
PI2
Part
1 waiting for unloading from MCs.
t12
unloading of Part 2 from MCs.
P13
Part 2 in MCz’s entry (Stock 2).
P14
MC2 free, waiting for Part 2.
P15
Part 2 loaded into MC2 and ready for processing.
Pl6
Part 2 waiting for unloading from MCs.
18:9-C
of Part 2 at MCs.
G. B. REDDY et al.
28
Table 6. Reachable states of TPNM State
f
Marking
Time 7
of Figure 5.
Pi
P2
P3
P4
P5
P6
P7
Pa
P9
PlO
Pll
P12
P13
P14
P15
P16
0
1
0.0
1
1
0
0
1
0
0
0
0
1
0
0
0
0
0
2
1.5
0
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
3
6.5
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
4
7.5
0
0
0
0
1
1
0
0
1
1
0
0
0
0
0
0
5
8.5
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
6
9.5
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
7
12.5
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
8
13.0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
9
14.0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
10
15.0
1
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
11
16.5
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
12
21.5
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
1
1
0
0
0
0
0
0
F-Vector
Time
State
T 1
I
ti
t2
t3
t4
t5
ts
t7
ta
ts
t10
t11
t12
0
0.0
1
0
0
0
0
0
0
0
0
0
0
2
1.5
0
1
0
0
0
0
0
0
0
0
0
0
3
6.5
0
0
1
0
0
0
0
0
0
0
0
0
4
7.5
0
0
0
1
0
0
1
0
0
0
0
0
5
8.5
0
0
0
0
0
0
0
1
0
0
0
0
6
9.5
0
0
0
0
1
0
0
0
0
0
0
0
7
12.5
0
0
0
0
0
0
0
0
1
0
0
0
8
13.0
0
0
0
0
0
0
0
0
0
0
0
0
9
14.0
0
0
0
0
0
1
0
0
0
0
0
0
10
15.0
1
0
0
0
0
0
0
0
0
1
0
0
11
16.5
0
1
0
0
0
0
0
0
0
0
1
0
12
21.5
0
0
1
0
0
0
0
0
0
0
0
0
13
22.0
0
0
0
0
0
0
0
0
0
0
0
1
14
22.5
0
0
1
0
0
1
0
0
0
0
0
0
State
R-Vector
Time 7
t1
t2
ts
t4
ta
t6
t7
ta
t9
t10
t11
t12
1
0.0
0
0
0
0
0
0
0
0
0
0
0
0
2
1.5
0
0
0
0
0
0
0
0
0
0
0
0
3
6.5
0
0
0
0
0
0
0
0
0
0
0
0
4
7.5
0
0
0
0
0
0
0
0
0
0
0
0
5
8.5
0
0
0
1.0
0
0
0
0
0
0
0
0
6
9.5
0
0
0
0
0
0
0
3.0
0
0
0
0
7
12.5
0
0
0
0
1.5
0
0
0
0
0
0
0
a
13.0
0
0
0
0
1.0
0
0
0
0
0
0
0
9
14.0
0
0
0
0
0
0
0
0
0
0
0
0 0
10
15.0
0
0
0
0
0
0
0
0
0
0
0
11
16.5
0
0
0
0
0
0
0
0
0
0
0
0
12
21.5
0
0
0
0
0
0
0
0
0
0
0.5
0
13
22.0
0
0
0.5
0
0
0
0
0
0
0
0
0
14
22.5
0
0
0
0
0
0
0
0
0
0
0
0
Timed Petri Net 0
1
2345678
g
f3
u
3
10
9
11
12
13
z7.3
29 14
ro
15
110
16
17
18
19
20
21
22
23
Figure 6. Firing diagram for the TPNM shown in Figure 5.
8. CONCLUSION Petri nets, a tool widely used to analyze asynchronous and concurrent systems, have been shown to be useful in modelling and performance evaluation of manufacturing systems. The method that is presented and illustrated can be used for other production systems, and it is feasible to work on a software package for verifying different properties of a given production system. It is concluded that the timed Petri net model is an efficient tool to help the investigation of dynamic and real time control problems of production systems. Future research includes extending the modelling capabilities of Petri nets to efficiently solve the uncertainty problems in production systems. One line of research that we are presently pursuing is aimed at the development of fuzzy Petri nets [12] in the knowledge representation. This opens up new possibilities for the integration of Petri nets and expert systems.
REFERENCES 1. 2. 3. 4. 5.
6. 7. 8. 9.
10. 11. 12.
D.D. Yao and J.A. Buzacott, Modelling the performance of FMS, International Journal of Production Research 23 (5), 945-959 (1985). R.A. Howard, Dynamic Probabilistic Systems, Volume 1: Markov Models, Wiley, New York, (1971). Y.C. Ho, A survey of the perturbation analysis of discrete dynamic dystems, Annals of Operations Research 3, 393-403 (1985). M. Silva and R. Valette, Petri nets and flexible manufacturing systems, In Advances in Petri Nets, Lecture Notes, Springer Verlag, Berlin pp. 374-417, (1990). J. Martinez, H. Alla and M. Silva, Petri nets for the specification of FMS, In Modelling and Design of Flexible Manufacturing Systems (Edited by A.K. Kusiak), Elsevier Science Publ., Amsterdam, 389-406, (1986). Y. Narahari and N. Viswanadham, A Petri net approach to the modelling and analysis of flexible manufacturing systems, Annals of Operations Research 3, 449-472 (1986). I. Hatono, K. Yamagata and H. Tamura, Modelling and On line scheduling of flexible manufacturing systems using stochastic Petri nets, IEEE Transactions on Software Engineering 17 (2), 126-132 (1991). D. Dubois and K.E. Stecke, Using Petri nets to represent production processes, In Proceedings of the 2!?‘d IEEE Conference on Decision and Control, San Antonio, Texas, December 1983, pp. 1062-1067. G.B. Reddy and S.S.N. Murty, Timed Petri net model for performance analysis of FMS, In Proceedings of 4th Int. Conf. on CAD/CAM, Robotics and Factories of the fiture, New Delhi, Tata McGraw-Hill, New Delhi, 249-270, (1989). C.E. Reddy et al., A Petri net based approach for analysing tool management issues in FMS, International Journal of Production Research 30 (6), 1427-1446 (1992). G.M. Knapp and H. Wang, Modelling of automated storage/retrieval systems using Petri nets, Journal of Manufacturing Systems 11 (l), 20-28 (1992). G.B. Reddy and K. Ghosh, Applications of fuzzy Petri nets in knowledge base systems for assembly lines, In Proceedings of ph Intl. Conf. on CAD/CAM, Robotics and Factories of the Future, (Edited by H.S. Schaal and V.M. Ponomaryov) St. Petersburg, Russia, ( May 1993), pp. 404-411.
30 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
G. B. REDDY et al. A.A. Merabet, Synchronization of operations in a flexible manufacturing cell: The Petri net approach, Journal Of Manufacturing Systems 5 (3), 161-169 (1986). S. Teng and J.T. Black, Manufacturing systems control with Petri nets in cellular manufacturing system, Computers and Industrial Engineering 19 (l-4), 15&154 (1990). R. Ravichandran and A.K. Chakravarthi, Decision support system in flexible manufacturing systems using timed Petri nets, Journal of Manufacturing Systems 5 (2), 89-101 (1987). C. Ramachandani, Analysis of asynchronous concurrent systems by timed petri nets, Technical Report MAC TR 120, MIT, Cambridge, (1974). C.V. Ramamoorthy and G. S. Ho, Performance evaluation of asynchronous concurrent systems using Petri nets, IEEE ZYansactions on Sojtvrare Engineering SE-6 (5), 440-449 (1980). J. Sifakis, Petri nets for performance analysis, In Measuring, Modelling and Evaluating Computer Systems (Edited by H. Beilner and E. Gelenbe), North Holland, Amsterdam, 75-93, (1977). W.M. Zuberek, Timed Petri nets and preliminary performance evaluation, In Proceedings ph Annual Symposium on Computer Architecture (La Bank, France, May 1980), pp. 88-96. T. Agarwala, Putting Petri nets to work, IEEE Computer 12 (12), 85-94 (1987). J.L. Peterson, Petri Net Theory and Modelling of Systems, Prentice Hall, Englewood, Cliffs, (1981). R.W. Floyd, Algorithm 97, Shortest path, Communications of ACM 5 (6), 345 (1962).