Timed Petri net: An expeditious tool for modelling and analysis of manufacturing systems

Timed Petri net: An expeditious tool for modelling and analysis of manufacturing systems

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 Perg...

1010KB Sizes 0 Downloads 26 Views

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).