9
* Corresponding author. Tel.: #1-540-231-8959; Fax: #1-540-231- 3322. E-mail address: !chen@vt.edu (F.F. Chen). Robotics and Computer Integrated Manufacturing 17 (2001) 121}129 Process modeling and analysis of manufacturing supply chain networks using object-oriented Petri nets Ming Dong, F.Frank Chen* The Grado Department of Industrial and Systems Engineering, Virginia Polytechnic Institute and State University, Blacksburg, VA 24061, USA Abstract This paper presents a systematic methodology for modeling and analysis of manufacturing supply chain business processes. The proposed approach "rst employs Computer Integrated Manufacturing Open System Architecture (CIMOSA) behavior rules to model the business process routing structures of manufacturing supply chain networks. Object-oriented predicate/transition nets (OPTNs) are then developed for the modular modeling and analysis of process models. Based on the structure of OPTNs, a procedure to obtain the system's P-invariants through objects' P-invariants is suggested. From the P-invariants obtained, system structural properties such as deadlock and over#ow can be analyzed. By using Petri net unfolding techniques and by extracting the process model of each object from the entire process model, the sequencing analysis for operations in supply chain processes becomes possible. Several manufacturing supply chain examples are used to illustrate the e!ectiveness of the proposed method. 2001 Elsevier Science Ltd. All rights reserved. Keywords: Manufacturing supply chain network; Business process modeling; Veri"cation analysis; Sequencing analysis; Petri nets 1. Introduction The manufacturing enterprise has been traditionally viewed as a sequential arrangement of functions such as design, manufacture, R&D, marketing, and "nance. The recent trend has been to view manufacturing as a collec- tion of value-delivering business processes. A manufactur- ing supply chain is an integrated set of business functions, encompassing all the activities from raw material acquisi- tion to "nal customer delivery. Today's changing indus- try dynamics have in#uenced the design, operation and objectives of supply chain systems by increasing empha- sis on: improved customer service levels, reduced cycle time, improved quality of products and services, reduced costs, integrated information technology and process #ows, planned and managed movement, and #exibility of product customization to meet customer needs. The sup- ply chain management can be de"ned as the coordina- tion or integration of all activities involved in procuring, producing, delivering and maintaining products/services to customers in various geographical locations. The coordination of logistics functions into integrated supply chain systems has increased the need for improved pro- cess quality. Improving the quality of all supply chain processes results in reduced costs, improved resource utilization, and improved process e$ciency. Therefore, supply chain process is a process-oriented approach to coordinate all functional units involved in the order- to-delivery process. In response to frequent operational and organizational changes in supply chain business processes, an enterprise has to impose adaptations in the relevant areas. For this issue, business process models should be built and em- ployed to verify and correct potential problems. Through the veri"cation analysis, some anomalies such as dead- lock and over#ow can be avoided. To e$ciently and optimally implement the process, a sequencing analysis for activities is necessary. The principal idea of process- oriented design, modeling and analysis is to explicitly grasp all process-related information including activities, resources and organizational units as well as their inter- dependencies, and to describe them in a model. For most current process modeling tools such as #ow- chart and state transition diagram, the veri"cation and sequencing analysis of process models is very di$cult, if not impossible. Petri net modeling, on the other hand, is a very popular and powerful method for modeling and 0736-5845/01/$ - see front matter 2001 Elsevier Science Ltd. All rights reserved. PII: S 0 7 3 6 - 5 8 4 5 ( 0 0 ) 0 0 0 4 5 - 4

Process modeling and analysis of manufacturing supply chain networks using object-oriented Petri nets

Embed Size (px)

Citation preview

*Corresponding author. Tel.: #1-540-231-8959; Fax: #1-540-231-3322.

E-mail address: [email protected] (F.F. Chen).

Robotics and Computer Integrated Manufacturing 17 (2001) 121}129

Process modeling and analysis of manufacturing supply chainnetworks using object-oriented Petri nets

Ming Dong, F.Frank Chen*The Grado Department of Industrial and Systems Engineering, Virginia Polytechnic Institute and State University, Blacksburg, VA 24061, USA

Abstract

This paper presents a systematic methodology for modeling and analysis of manufacturing supply chain business processes. Theproposed approach "rst employs Computer IntegratedManufacturingOpen SystemArchitecture (CIMOSA) behavior rules to modelthe business process routing structures of manufacturing supply chain networks. Object-oriented predicate/transition nets (OPTNs)are then developed for the modular modeling and analysis of process models. Based on the structure of OPTNs, a procedure to obtainthe system's P-invariants through objects' P-invariants is suggested. From the P-invariants obtained, system structural propertiessuch as deadlock and over#ow can be analyzed. By using Petri net unfolding techniques and by extracting the process model of eachobject from the entire process model, the sequencing analysis for operations in supply chain processes becomes possible. Severalmanufacturing supply chain examples are used to illustrate the e!ectiveness of the proposed method. � 2001 Elsevier Science Ltd.All rights reserved.

Keywords: Manufacturing supply chain network; Business process modeling; Veri"cation analysis; Sequencing analysis; Petri nets

1. Introduction

The manufacturing enterprise has been traditionallyviewed as a sequential arrangement of functions such asdesign, manufacture, R&D, marketing, and "nance. Therecent trend has been to view manufacturing as a collec-tion of value-delivering business processes. A manufactur-ing supply chain is an integrated set of business functions,encompassing all the activities from rawmaterial acquisi-tion to "nal customer delivery. Today's changing indus-try dynamics have in#uenced the design, operation andobjectives of supply chain systems by increasing empha-sis on: improved customer service levels, reduced cycletime, improved quality of products and services, reducedcosts, integrated information technology and process#ows, planned and managed movement, and #exibility ofproduct customization to meet customer needs. The sup-ply chain management can be de"ned as the coordina-tion or integration of all activities involved in procuring,producing, delivering and maintaining products/servicesto customers in various geographical locations. The

coordination of logistics functions into integrated supplychain systems has increased the need for improved pro-cess quality. Improving the quality of all supply chainprocesses results in reduced costs, improved resourceutilization, and improved process e$ciency. Therefore,supply chain process is a process-oriented approach tocoordinate all functional units involved in the order-to-delivery process.In response to frequent operational and organizational

changes in supply chain business processes, an enterprisehas to impose adaptations in the relevant areas. For thisissue, business process models should be built and em-ployed to verify and correct potential problems. Throughthe veri"cation analysis, some anomalies such as dead-lock and over#ow can be avoided. To e$ciently andoptimally implement the process, a sequencing analysisfor activities is necessary. The principal idea of process-oriented design, modeling and analysis is to explicitlygrasp all process-related information including activities,resources and organizational units as well as their inter-dependencies, and to describe them in a model.For most current process modeling tools such as #ow-

chart and state transition diagram, the veri"cation andsequencing analysis of process models is very di$cult, ifnot impossible. Petri net modeling, on the other hand, isa very popular and powerful method for modeling and

0736-5845/01/$ - see front matter � 2001 Elsevier Science Ltd. All rights reserved.PII: S 0 7 3 6 - 5 8 4 5 ( 0 0 ) 0 0 0 4 5 - 4

Fig. 1. A manufacturing supply chain case.

Fig. 2. Top-level object model for product line 1 under mode 1.

analysis of systems that exhibit parallelism, synchroniza-tion, non-determinism and resource sharing features[1}5]. Most studies on the Petri net application in pro-cess modeling, focus on either information aspect orfunction aspect, but modeling #exibility and modularanalysis are always not considered in their approaches.Thus, a modular design, modeling and analysis approachthat integrates function, information, resource and or-ganization is critical to support complex, dynamic anddistributed processes. In this paper, Computer IntegratedManufacturing Open System Architecture (CIMOSA)building blocks are used to design processes as a processmodeling language [6]. CIMOSA e!orts are directed atprocess-oriented modeling of a manufacturing enterprisewith a view to enactment. CIMOSA provides some pro-cess routings such as sequential, concurrent and alternativeto represent the relationships between activities. For moreinformation on CIMOSA, the reader is referred to [6].The remainder of this paper is organized as follows.

Section 2 gives a description of an example of manufac-turing supply chain network. Section 3 includes thede"nition of Object-oriented predicate/transition nets(OPTNs), the top-level and object-level processmodeling, the approaches for calculating the systemP-invariants from object models, and structural analysisby P-invariants. Sequencing analysis of supply chainprocess models by net unfolding is presented in Section 4.Conclusions are given in Section 5.

2. A manufacturing supply chain case

In this paper, a manufacturing supply chain network(shown in Fig. 1) is used as a case to illustrate thee!ectiveness of a new (OPTN)-based modeling and anal-ysis approach. As shown in Fig. 1, the system consists oftwo raw material suppliers (S1 and S2), four plants (P1,P2, P3 and P4), two work-in-inventories (W1 and W2),and two distribution centers (D1 and D2). According tothe production capacity, locations and facility features ofplants, the manufacturing supply chain can operate un-der two modes: modes 1 and 2. For this supply chain,a #eet consisting of two vehicles is responsible for trans-portation of material #ows between sites in the manufac-turing supply chain. This manufacturing supply chaincan deliver two types of products (product line 1 andproduct line 2) produced from raw materials supplied byS1 and S2, respectively. Under operating mode 1, sinceplant 1 is close to plant 3, we keep zero inventory be-tween them (therefore, it follows JIT production strat-egy). The processing of product 2 needs the facilities inplant 3 or plant 4. Because supplier 2 is close to the plant4 and distribution center 2, we choose plant 4 and distri-bution center 2 as the supply chain nodes of productline 2. Operating mode 2 has a similar interpretation asoperating mode 1.

3. The object predicate/transition net (OPTN) model

3.1. Top-level model and object-level model

From an object-oriented perspective, a system is com-posed of a number of related objects and each object hasits own behavior and attributes. The communicationamong objects is achieved by message passing. In termsof process routing, the top-level object models forsupplying products 1 and 2 are given in Figs. 2 and 3,respectively.

122 M. Dong, F.F. Chen / Robotics and Computer Integrated Manufacturing 17 (2001) 121}129

Fig. 3. Top-level object model for product line 2 under mode 1.

Fig. 4. Input ports and output ports of OPTN A.

Fig. 5. Relations of input and output ports of OPTN A.

1. Structure of OPTNs: Each OPTN consists of twoparts: internal structure and external structure. The inter-nal structure is composed of state places and activitytransitions. The functionality of the OPTN is archived bythe sequences of activity transitions. Treating each objectas a single server queue, each object can only perform onefunction at a time. So no concurrency can be included ineach object. In other words, the transitions in an objectare sequential. However, an object may have alternativesequences of transitions (e.g., multi-functional facilities).So alternative routings of transition sequences inside theobject are possible. The external structure comprises a setof ports (places used to receive and send messages), whichform the interface of the OPTN.

3.1.1. Relationship of input ports and output portsinside OPTNsIn each object, input ports are used to enter input

parameters and output ports are used to show results.Relations of input ports and output ports can be used tosynchronize objects when they are synthesized. Let thesequence of transitions of object A be S"�t

�, t

�,2, t

��.

For single-function objects, an approach to establishfunctional relations between input ports and outputports can be described as follows:

Step 1. Find the "rst transition t in the S;Step 2. For t, "nd IO

�"

zt I IP and OP�"tz IOP (IP

�and OP

�denote the input ports and output ports of t,

respectively);Step 3. Remove t from S;Step 4. Repeat Steps 1}3 until all transitions are

removed from S;Step 5. For the construction of relations of t

�,2, t

�, the

input ports, transitions and places that proceed them areadded.

For example, in Fig. 4, IP��

"�I��, OP

��"�O

��,

IP��

"�I��, OP

��"�O

��, IP

��"�I

��, OP

��"�O

��,

IP��

"�, OP��

"�O��. The corresponding input ports

and output ports relationships are shown in Fig. 5. Formulti-function objects, alternative transition sequencesare used to describe di!erent functions. Predicate modelswill be established to decide which routing to choose.Then the same algorithm is employed to establish func-tional relations between input ports and output ports.

3.1.2. Interactions among object-level models andstructural analysis by P-invariantsObjects interact with each other through message pas-

sing. The connections among objects are based on thespeci"cation of scheduling and control. Consider themanufacturing supply chain described in Fig. 2, the pro-cess routing for product 1 speci"es the connection ofobjects as follows: if the materials for product 1 areordered from supplier 1, vehicle V1 transports them toplant P1 for the "rst operation of product 1. After the "rstoperation is completed, if the facility in plant P3 is idle,the in-progress products will be transported from P1 toP3 by V1. If the facility P3 is busy (or the capacity is full),the in-progress products will be transported from P1 toWIP inventory W1. For components in W1, if P4 hassome available capacity, the components may be pickedup and transported to P4 by V2 to "nish their secondoperation. After all the operations on product 1 arecompleted, it can be transported to either distributioncenter D1 by V1 or distribution center D2 by V2. Thisprocess routing can be used to guide the connection ofobjects.

M. Dong, F.F. Chen / Robotics and Computer Integrated Manufacturing 17 (2001) 121}129 123

Fig. 6. `1 :manya object interaction.

Table 1Routing structure for product line 1

Stage Product Type 1sequence Mode 1 Mode 2

1 Supplier 1 Supplier 22 Plant 1 (by V1) Plant 2 (by V2)3 Plant 3 (by V1) or

(Inventory 1 by V1,Plant 4 by V2)

Plant 4 (by V2) or(Inventory 2 by V2,Plant 3 by V1)

4 Distribution 1 (by V1) orDistribution 2 (by V2)

Distribution 2 (by V2) orDistribution 1 (by V1)

3.2. Verixcation analysis of entire supply chain process

For large and complex Petri net models, analysis ofthese becomes very di$cult, if not impossible. However,for each object, its analysis is much easier because it hasmuch smaller number of places and transitions, andmuch simple structures (no concurrency inside objects).The di$cult point of modular analysis is to obtain thesystem properties from objects' properties. Lee and Park[7] used reachability tree to analyze the precedence rela-tion of gates (transitions for message passing) and con-structed an Interface Equivalent (IE) net, then analysiswas made by synchronizing the gates of combined ob-jects. This approach can only detect the deadlock amonggates. In Wang [8,9], a deadlock analysis by P-invariantswas presented. The object communication net (OCNet)was constructed in which, except the object beingstudied, other related objects were represented by hidingthe internal actions. Although the calculation e!ort ofP-invariants is reduced since only interfaces are includedfor other objects, the computation burden is still largebecause the OCNet becomes large when the number ofobjects increases. Another shortcoming of this method is:once system con"guration changes, these calculationsbecome useless. In this paper, the P-invariants for eachobject are calculated. As long as the structure of an objectdoes not change, the corresponding P-invariants can bereused. To obtain the P-invariants of the entire systemthat consists of interacted objects, a Petri net synthesistechnique presented by Narahari and Viswanadham [3]is adopted, see the appendix. Unlike the gates used toconnect the ports of communicating objects [7}9], theplace fusion approach is used. The message sending portsof an object will be merged with the message receivingports of the corresponding objects. Since the internalstructure is used to describe the local actions of objects, itis possible to de"ne objects' internal behaviors such thatthey do not have common actions. In Petri net language,if T

�3OPTN

�and T

�3OPTN

�, then T

��T

���. To

obtain the system's P-invariants, the interaction mecha-nisms among objects are classi"ed. For two objects inter-action, the above theorem can be applied directly. Forthe communications of more than two objects, threesituations are categorized: (1) sequential interaction, (2)one-to-many interaction, and (3) many-to-one interaction(see Fig. 6).The procedure of performing the structural analysis for

the entire process model from OPTN modules may besummarized as follows:

Step 1. Identify the activities involved in the processmodel;

Step 2. For each activity, identify the objects that canperform it (e.g., according to `functional operations�functional entitiesa matrix);

Step 3. Build the top-level Petri net models;

Step 4. For each function entity, construct its OPTNmodel;

Step 5. For each OPTN sub-model, calculate itsP-invariants;

Step 6. According to the top-level Petri net model andobject interaction mechanisms, re"ne the connectionsamong OPTN modules by merging the correspondingoutput ports and input ports.

Step 7. Apply synthesis theorem to obtain the P-invari-ants of the whole process model;

Step 8. Make deadlock and boundedness analysis byP-invariants.

In the following, the supply chain process for productline 1 is used to illustrate the veri"cation analysis proced-ure of process models. Table 1 gives the process operat-ing modes for product line 1 (mode 2 will be considered).Table 2 shows the `functional operations�functional enti-tiesa matrix. Figs. 7}9 give the OPTN models for V1, P1and P3. The P-invariants of vehicle V1, P1 and P3 arecalculated and given in Fig. 10. In terms of processrouting for product 1, output port P1}mvd of V1 andinput port Pro1}S1 of P1 are fused together. Similarly,Pro1}P3}IN and P1}mvd are merged, P3}mvd andPro1}P1 are merged, and so on. By applying Theorem 1,the P-invariants of this process model (combined by S1,P1, V1, P3 and D1) can be obtained.

124 M. Dong, F.F. Chen / Robotics and Computer Integrated Manufacturing 17 (2001) 121}129

Table 2(functional operations�functional entities) matrix

Operations (days needed for a batch of products)

Objects O11 O21 O22 T (S1, P1) T (P1, P3) T (P1, W1) T (P3, D1) T (W1, P4) T (P4, D2) S (Pro1, Pro2)

Plant 1 [15,17]Plant 2 [19,20]Plant 3 [23,26] [30,32]Plant 4 [20,24] [29,31]Vehicle 1 [2,3] [3,4] [1.5,2.5] [2,3]Vehicle 2 [2,4] [2,3]Inventory 1 8Inventory 2 8

Fig. 7. OPTN for vehicle V1.

Fig. 8. OPTN for P1.

By the theory of invariants, we have x�m"x�m�(x is

a (n�1) vector and m�

is the initial marking) for allmarking m that is reachable from m

�. From the resulted

P-invariants, the following equations can be obtained.

P�: m(V1)#m (V1}p1)#m (V1}p2)#m(V1}p4)#m(V1}p3)"1,

P�: m(P1}p1)#m(P1)"1,

P�: m(S1}mv)#m(P1}mv}P3)#m(P3}mvd)#m(W1}mvd)

#m(P3}mv)#m(D1}mvd)#m(P1}mv}Pro1}S1)#m(P1}p1)#m(S1}IN)#m(Pro1}W2}Out)#m(P3}p2)

# m ( W 1 } p 1 ) # m ( W 1 } P 4 ) # m ( D 1 ) #

m(V1}p1)#m(V1}p2)#m(V1}p4)#m(P1}p2)#m(P1}mv}W1)#m(V1}p3)"0,

P�: m(P1}mv}P3)#m(P3}mvd)#m(P3}p2)#m(P3)#m(P3}p1)#m(V1}p2)"1,

P�: m(W1}mvd)#m(W1}p1)#m(W1)#m(P1}mv}W1)

#m(V1}p3)"800.

The deadlock analysis is given as follows:

t1}V: If the pool of product 1 rawmaterials (S1}IN) isnot empty, then m(S1}mv) is not empty, and ifm(V1)"1 (P

�), then t1}V1 is enabled.

t2}V: If m(S1}IN)O0, and if m(P1)"1 (P�), and if

m(V1)"1 (P�), and if m(P3)"1 (P

�), then

t2}V1 is enabled.

M. Dong, F.F. Chen / Robotics and Computer Integrated Manufacturing 17 (2001) 121}129 125

Fig. 9. OPTN for P3.

Fig. 10. P-invariants for V1, P1 and P3.

t3}V: If m(S1}IN)O0, and if m(P1)"1 (P�), and if

m(V1)"1 (P�), and if m(W1)'1 (P

�), then

t3}V1 is enabled.t4}V: If m(S1}IN)O0, and if m(P1)"1 (P

�), and if

m(V1)"1 (P�), and if m(P3)"1 (P

�), then t4}V

is enabled.t3}P1 ort4}P1:

If the pool of product 1 rawmaterials (S1}IN) isnot empty, then m(S1}mv) is not empty, and ifm(V1)"1 (P

�), then t3}P1 or t4}P1 is enabled.

t1}P3: If the pool of product 2 raw materials is notempty, i.e., m(Pro2}S1)O0, and if m(P3)"1(P

�), then t1}P3 is enabled.

t3}P3: If m(S1}IN)O0, and if m(P1)"1 (P�), and if

m(V1)"1 (P�), and if m(P3)"1 (P

�), then

t3}P3 is enabled.t4}P3: If the WIP inventory 2 is not empty, i.e.,

m(Pro1}W2}Out)O0, and if m(P3)"1 (P�),

then t4}P3 is enabled.

From the above analysis, all transitions in this processmodel are enabled, so no deadlock is found in the Petrinet model. Boundedness is another important propertyfor supply chain process models, it guarantees that noover#ow occurs in the system. A Petri net is structurallybounded if and only if there exists an n�1 vector x ofpositive integers such that x�A)0 (A is incidencematrix). Such a positive vector can be easily found fromthe minimal P-invariants. For example, by addingminimal P-invariants together, the positive P-invariant[1 2 2 2 1 1 1 2 1 1 1 2 1 1 1 2 1 1 1 2 3 2 1 2 3] can beobtained for this process model. Therefore, the processmodel is bounded.

3.3. System P-Invariants with changeable object structures

Some objects may change their internal behaviorsand/or their external interfaces. Here, the changingof interfaces means that some input ports and/oroutput ports will be removed or added to the changedobject. Let OPTN G

�be the changed object,

and P�"�IP

�, OP

�, SP

�� (P

�-place set of G

�, IP

�- input

port set, OP�-output port set, SP

�- state place set).

Similarly, let G�be the object that sends messages to G

�,

and P�"�IP

�, OP

�, SP

��. Suppose that the following

message passing relations are held (without loss ofgenerality):

OP�"�OP

��, OP

��,OP

���,

IP�"�IP

��, IP

���,

OP��

PIP��,OP

��PIP

��, and OP

��PIP

��.

When input port IP��

is removed from G�(the corre-

sponding message passing paths are also removed), theminimalP-invariants ofG

�are recalculated. Because IP

��still has a message passing relation with G

�through

OP��

PIP��, from recalculated minimal P-invariants, we

choose the one in which the P-invariant of IP��

is equalto the P-invariant of OP

��. Then the chosen P-invariant

is used to replace the corresponding part in the system'sP-invariants. Similarly, the system's P-invariants canbe obtained for other cases: (1) adding new input ports,(2) adding/removing output ports, and (3) changes withinternal state places. In this way, the system's P-invari-ants with changeable object structures can be readilyobtained.

126 M. Dong, F.F. Chen / Robotics and Computer Integrated Manufacturing 17 (2001) 121}129

Table 3(functional operations�functional entities) matrix

Product 1 Product 2 Product 3

Objects O11 (t1) O1t (tt) O12 (t2) O13 (t3) O21 (t4) O22 (t5) O23 (t6) O24 (t7) O31 (t8) O32 (t9)

Plant 1 3 2.5Plant 2 2.5 1.5Plant 3 4.5 1.5 7 2Plant 4 3.5 5

4. Sequencing analysis of operations in supply chainprocess by net unfolding

The enormous size of the reachability tree is aninherent barrier for applying it to large PNs. Usingpartial-order semantics rather than interleaving seman-tics, Petri net unfolding can be used to avoid the `stateexplosion problema. For a review of Petri net unfolding,the reader is referred to McMillan [10] and Taubin et al.[11]. The elements in Petri nets (places and transitions)have three types of relations between them (see De"ni-tion 1 in the appendix for details): preceding (representedas x

�Nx

�), con#ict (x

�� x

�) and concurrent (x

��x

�) [10].

Acyclic PNs are easier to analyze because their proper-ties can be completely speci"ed by these three relations.This suggests an e!ective way to analyze a PN: "rst thecyclic PN is unfolded into an equivalent acyclic repres-entation, and then the "nite pre"x of the acyclic net isused to analyze the properties of nets. In the following,the analysis of cyclic schedule for the determination ofthe optimal cycle time is presented.

4.1. Process-oriented modeling of objects

Some facilities are requested by several activities, re-source-sharing is a common situation in process models.Concurrency among objects is another common case inprocess models. Therefore, for a shared facility, how tosequence its activities so that the potential concurrencybetween it and other objects can be exploited is criticalfor scheduling problems.Suppose that a shared-facility R

�is involved in two

sub-processes: SP�is the process for supplying product

1 and SP�is the process for supplying product 2. To

supply product 1, three operations are needed: t��,

t��

and t��, in which t

��and t

��are performed by R

�.

Similarly, to supply product 2, four operations t��, t

��,

t��

and t��

are required, in which t��

and t��

areperformed by R

�. The relations among activities can be

described as follows.

Preference relations (by operation sequence constraints):

t��

Nt��

Nt��

and t��

Nt��

Nt��

Nt��.

Con-ict relations (by resource-sharing constraints):

t��

�t��, t

���t

��, t

���t

��and t

���t

��.

To obtain the optimal cycle time, the concurrent rela-tions among activities have to be found. Concurrencyincurs the interleaving semantics in the reachabilitygraph. To avoid this, the partial order semanticsby unfolding is adopted. For the above simple example,the following concurrent relations exist:

t��

�t��, t

���t

��, t

���t

��and t

���t

��.

Thus, for complex systems, the potential concurrent rela-tions among activities can be found by the unfoldingtechnique. To achieve this, we "rst extract the processmodel of each object from the entire process model, andthen unfold it into an equivalent acyclic net. Forthe unfolded nets, the cycle time is calculated and theone with the minimal cycle time will be selected. Thenthe optimal scheduling can be determined. In summary,the following steps will be adopted.

Step 1. Identify the shared resources.Step 2. Extract sub-process models of shared resources

from the whole process model.Step 3. Unfold the process model of each object and

calculate the cycle time, choose the unfolding net withminimal make-span. If more than one unfolding netshave the same cycle time, arbitrarily select one.

Step 4. Determine the optimal sequence.

4.2. A case study for sequencing analysis byordering relations

Consider the manufacturing supply chain network de-scribed in Fig. 1; there are product 1, product 2 andproduct 3 to be produced in this network. The corre-sponding processing time is given in Table 3.From Table 3, four activities will require the facility in

plant P3, two (t1 and tt) of them is for product 1 and two(t4 and t6) of them are for product 2. Therefore, P3 isinvolved in two processes, one is for the supply of prod-uct 1 and the other is for the supply of product 2. Byextracting these two sub-processes from the whole supplychain process model, the process models for P3 can be

M. Dong, F.F. Chen / Robotics and Computer Integrated Manufacturing 17 (2001) 121}129 127

Fig. 11. Process model of object P3.

Fig. 12. Unfolding nets of process model for object P3.

Fig. 13. Gantt chart for the schedule of supply chain process.

obtained (shown in Fig. 11). The model in Fig. 11 isa Petri net with two parallel mutual exclusions and twosequential mutual exclusions. This process model can beunfolded into three acyclic Petri nets. As shown inFig. 12, each transition t

�of the initial PN has a set

of corresponding transitions in the unfolding nett��, t��

�, t��

��,�, that are called instantiations of t

�. Similarly,

for each place p�the unfolding net contains the set of the

corresponding instantiations p��, p��

�, p��

��,�. It can be

shown that under the partition r that associates eachtransition t of PN with its instantiations t�, t��, t���,�. Forthe transition "ring sequence, the original PN is equiva-lent to its unfolding nets.Once, place p

�or place p

�has token, the operations of

P3 can be started. The desired "nal markings of P3 are,(P3, P8) or (P3, pp). For marking (P3, P8), there are two

ways to achieve it (Fig. 12a and c). For marking (P3, pp),there is one way to achieve it (Fig. 12b). From theunfolding nets (a), the basic marking of local con"gura-tion �Nt�

� is (P3, P8). From the local con"guration

�Nt��, the transitions precede t�

can be easily found;

similarly for other two unfolding nets also. From unfold-ing nets (a), (b) and (c), the following transition "ringsequences can be obtained:

(a) t�Pt

�P(t

��t

�)Pt

;

(b) t�P(t

��t

�)Pt

Pt

�;

(c) t�P((t

�Nt

�)�t

�)Pt

.

The cycle time for these two nets are calculated asfollows:(a) CT

�"4.5 (t

�)#7 (t

�)#max�1.5 (t

�), 2.5 (t

�)�#2 (t

)

"4.5#7#2.5#2"16;(b) CT

��7 (t

�)#max�4.5 (t

�), 2.5 (t

�)�#2 (t

)#1.5 (t

�)

"7#4.5#2#1.5"15;(c) CT

��7 (t

�)#max�(4.5 (t

�)#1.5 (t

�)), 2.5 (t

�)�

#2 (t)#1.5 (t

�)"7#4.5#1.5#2"15.

Therefore, unfolding nets (b) and (c) provides shortercycle time than that of (a). By comparing the waiting timeof place p

, we have

(b) WT�"4.5 (t

�)!2.5 (t

�)"2;

(c) WT�"4.5 (t

�)#1.5 (t

�)!2.5 (t

�)"3.5.

Thus, unfolding net (b) provides shorter waiting timethan that of (c). In the same fashion, other objects P1, P2and P3 can also be analyzed. Finally, the Gantt chart forthis manufacturing supply chain process can be obtained(as shown in Fig. 13). The minimal cycle time for thissupply chain process is 26.5 time units.

5. Conclusions

Current BPR and Work#ow tools do not provide ane!ective approach to design, modeling and analysisof supply chain business processes. In this paper,CIMOSA-based process behavior rules are used to

128 M. Dong, F.F. Chen / Robotics and Computer Integrated Manufacturing 17 (2001) 121}129

model the routing structures of a typical supply chainprocess. To facilitate the veri"cation analysis of Petrinet-based process models, a modular modeling and anal-ysis approach based on object-oriented predicate/transition nets is proposed. First, the top-level objectmodels for the example supply chain process are built.Then, in terms of the structure of object predicate/transition nets, object-level modeling and an approach to"nd the relations between input and output ports ofobjects are given. A procedure to obtain the system'sP-invariants through objects' P-invariants is suggested.From the P-invariants obtained, system structural prop-erties such as deadlock and over#ow can be analyzed.Finally, by using Petri net unfolding techniques andextracting, the process model of each object from theentire supply chain process model, the sequencing analy-sis for operations in the supply chain process model canbe made. The proposed approach has the advantages ofmodularity and maintainability. It is suitable for quick-change supply chain process models. The veri"cation andsequencing analysis can be easily implemented. Severalcase studies are used to illustrate the proposed method.

Appendix

Theorem 1 [Narahari & Viswanadham]. Let G�"(P

�,

T�, IN

�, OUT

�) (P-Places, T-Transitions, IN-Input yow,

OUT-Output yow) and G�"(P

�, T

�, IN

�, OUT

�) be two

pure Petri nets (i.e., without self-loop) such that their unionG"(P, T, IN, OUT) is also pure. Let r, s, and n be positiveintegers such that r)s(n. Also, let T

�T�"� and

P�"�p

�, p

�,2, p

�, p

���,2, p

��, P

�"�p

�, p

���,2,

p���

, 2, p��, so that P"�p

�, p2 ,2, p

���,2, p

�,

p���

,2, p��. Then the (n�1)-vector X"�x

�, x

�,2, x

�,

x���

,2, x�, x

���,2, x

�� will be a P-invariant of G iw the

s-vector X�"�x

�, x

�,2, x

�, x

���,2, x

�� is a P-invariant

of G�and the ((n!r#1)�1)-vector X

�"�x

�, x

���,2,

x�, x

���,2, x

�� is a P-invariant of G

�.

De5nition 1 [Taubin et al.]. Let N"�P, T, F� be anacyclic PN and x

�,x

�3P>¹.

(1) x�precedes x

�if (x

�, x

�) belongs to the re#ective

transitive closure of F, i.e. there is a path in the graphof a PN between x

�and x

�.

(2) x�

and x�

are in con#ict if there exist distincttransitions t

�, t

�3¹ such that zt

�Izt

�O� and

t�Nx

�, and t

�Nx

�.

(3) x�and x

�are in concurrence if they are neither in

precedence, nor in con#ict.

De5nition 2 (Con"gurations, [10]). (a) A set oftransitionsC�LT� is a con"guration in an occurrence netif: (1) for each t�3C�, the con"guration C� contains t�together with all its predecessors; (2) C� contains nomutually con#ict transitions.(b) The minimal con"guration that contains t� and all

the transitions preceding t� is called a local con"gurationof the transition t� (denoted �Nt��).

De5nition 3 (Final and basic markings, [10])). Let C� bea con"guration of an occurrence net. A "nal marking ofC�, denoted FM(C�)�, is a marking reachable from theinitial marking after all transitions from C� and onlythose transitions are "red. A "nal marking of a localcon"guration t� is called a basic marking of t� anddenoted BM(t�)�.

References

[1] Descrochers AA, AI-Jaar Y. Application of Petri nets in manufac-turing systems: modeling, control, and performance analysis.New York: IEEE Press, 1995.

[2] Murata T. Petri nets: properties, analysis, and applications. ProcIEEE 1989;77(4):541}80.

[3] Narahari Y, Viswanadham N. A Petri net approach to themodeling and analysis of #exible manufacturing systems. AnnOper Res 1985;3:449}72.

[4] Zhou M, DiCesare F, Desrocners AA. A top-down approachto systematic synthesis of Petri net models for manufactur-ing systems. Proceeding of 1989 IEEE International Con-ference on Robotics and Automation, 1989. p. 534}9.

[5] Molly MK. Performance analysis using stochastic Petri nets.IEEE Trans Comput 1982;C-31:913}7.

[6] ESPRIT Consortium AMICE. CIMOSA: open system architec-ture for CIM. 2nd ed. Berlin: Springer, 1993.

[7] Lee YK, Park SJ. OPNets: An object-oriented high-level Petri netmodel for real-time system modeling. J Systems Software1993;20:69}86.

[8] Wang L. Object-oriented Petri nets for modeling and analysis ofautomated manufacturing systems. Comput Integrated ManufSystems 1996;26:111}25.

[9] Wang L. The development of an object-oriented Petri net cellcontrol model. Int J Adv Manuf Technol 1996;11:59}69.

[10] McMillan KL. A technique of state space search based on unfold-ing. Formal Methods System Des 1995;6(1):45}65.

[11] Taubin A, Kondratyev A, Kishinevsky M. Deadlock preventionusing Petri nets and their unfolding. Int J Adv Manuf Technol1998;14:750}9.

M. Dong, F.F. Chen / Robotics and Computer Integrated Manufacturing 17 (2001) 121}129 129