132
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 2, NO. 2, APRIL 2005
Modeling and Performance Evaluation of Supply Chains Using Batch Deterministic and Stochastic Petri Nets Haoxun Chen, Lionel Amodeo, Feng Chu, and Karim Labadi
Abstract—Batch deterministic and stochastic Petri nets are introduced as a tool for modeling and performance evaluation of supply chains. The new model is developed by enhancing deterministic and stochastic Petri nets (DSPNs) with batch places and batch tokens. By incorporating stochastic Petri nets (SPNs) with the batch features, inhibitor arcs, and marking-dependent weights, operational policies of supply chains such as inventory policies can be easily described in the model. Methods for structural and performance analysis of the model are developed by extending existing ones for DSPNs. As applications, an inventory system and an industrial supply chain are modeled and their performances are evaluated analytically and by simulation, respectively, using this BSPN model. The applications demonstrate that our model and associated methods can solve some important supply chain modeling and analysis issues. Note to Practitioners—This paper was motivated by the problem of performance analysis and optimization of supply chains but it also applies to other discrete event systems where materials are processed in finite discrete quantities (batches) and operations are performed in a batch way because of batch inputs and/or in order to take advantages of the economies of scale. Existing Petri net modeling and analysis tools for such systems ignore their batch features, making their modeling complicated. This paper suggests a new model called batch deterministic and stochastic Petri nets (BDSPNs) by enhancing deterministic and stochastic Petri nets with batch places and batch tokens. Methods for structural and performance analysis of the model are developed. We then show how an inventory system and a real-life supply chain can be modeled and their performances can be evaluated analytically and by simulation respectively based on the model. The model and associated analysis methods therefore provide a promising tool for modeling and performance evaluation of supply chains. Index Terms—Modeling, performance evaluation, Petri nets, supply chain management.
I. INTRODUCTION
D
RIVEN by fierce global competition, many manufacturers have recognized that operational coordination across their supply chains is critical for them to further reduce costs while improving services to customers [14]. The coordination, however, is quite difficult because of the inherent complexity and uncertainty of the supply chains. The goal of this study is to Manuscript received January 29, 2004; revised July 28, 2004. This paper was recommended for publication by Associate Editor M. Zhou and Editor N. Viswanadham upon evaluation of the reviewers’ comments. The authors are with the Technology University of Troyes, 10010 Troyes Cedex, France (e-mail:
[email protected];
[email protected];
[email protected];
[email protected]). Digital Object Identifier 10.1109/TASE.2005.844537
develop a tool which can help industrial practitioners to model, evaluate performances, and optimize operational policies of their supply chains. In the literature, supply chains are usually described as multiechelon inventory systems [10]–[14]. However, most existing models can only describe a restricted class of supply chains with simplifications. For instance, most multi-echelon inventory models do not explicitly take account of transportation operations and capacity constraints in supply chains by simply assuming a constant lead time between any two adjacent stocking locations [10]–[14]. These models lack flexibility and generality in describing real-life supply chains. Furthermore, no mathematical model exists that can describe material, information, and financial flows of a supply chain in an integrated way. Petri nets are a powerful tool for modeling and analysis of discrete event systems [1]–[17] such as manufacturing systems. Since supply chains are also discrete event systems from a high level of abstraction, it is possible to develop a Petri net tool for modeling and analysis of supply chains. Although the literature of Petri nets is very plentiful, very little work applied Petri nets to the modeling of supply chains. Supply chains are modeled by using colored Petri nets, where each supply chain entity is modeled as a block with action, resource, and control, which is a subnet of the colored Petri net model [15]. Supply chains are also modeled by using generalized stochastic Petri nets (GSPNs) [16]. For inventory systems with independent demand, a basic supply chain entity, they are modeled by using first-order hybrid Petri nets that combine fluid and discrete event dynamics [2]–[8]. These Petri net models, however, ignore an important feature of supply chain, that is, many operations such as inventory replenishment and distribution are usually performed in a batch way because of the batch nature of customer orders and the requirement for taking advantages of the economies of scale. In this paper, batch deterministic and stochastic petri nets (BDSPNs) are introduced as a tool for modeling and performance evaluation of supply chains. The new model is developed by enhancing deterministic and stochastic Petri nets (DSPNs) [13] with batch places and batch tokens. Batch tokens, which have sizes and reside in batch places, are viewed as different individuals. They are used to describe the batch behavior of a supply chain. By incorporating stochastic Petri nets (SPNs) with the batch features, inhibitor arcs, and marking-dependent weights, operational policies of supply chains such as inventory policies can be easily described in the model.
1545-5955/$20.00 © 2005 IEEE
CHEN et al.: MODELING AND PERFORMANCE EVALUATION OF SUPPLY CHAINS
Our model is different from batch Petri nets [6] in the literature. The introduction of batch places and batch transitions in that model is for describing the system behavior that a batch of materials with a given size is transferred into a material flow and vice versa. The model is a hybrid Petri net with discrete and continuous transitions, and complex transition enabling and firing conditions. Our model, however, is a discrete Petri net model, which keeps most simplicity of classical discrete Petri nets. Structural analysis methods of the model are developed along with state equation and reachability analysis. Performance evaluation methods are developed by exploring the marking process of the model and by extending existing methods for DSPNs. The new model and analysis methods developed in this paper are applied to an inventory system with independent demand and an industrial supply chain which produces and distributes electrical connectors for high voltage lines. The performance of the invenpolicy is evaluated analytically, whereas tory system with that of the real-life supply chain is evaluated by simulation based on its BDSPN model. The applications demonstrate advantages and potentials of BDSPNs as a modeling and analysis tool of supply chains. The remainder of this paper is organized as follows. BDSPNs are introduced and defined formally in Section II. Structural and performance analysis methods of the model are developed in Sections III and IV, respectively. An inventory system is modeled using BDSPNs and its performance is evaluated analytically in Section V. In Section VI, an industrial supply chain is modeled and its performance is evaluated by simulation. Concluding remarks are given in Section VII.
133
production activity can be described by a deterministic or stochastic transition [1]–[13]. However, for operations such as inventory replenishment and distribution, their lead times usually don’t depend on the size (quantity) of the customer order involved, and orders with different sizes usually have the same lead time for replenishment or delivery. For this case, batch tokens and batch firing of transitions are necessary for modeling these batch operations in the framework of Petri nets. As DSPNs, BDSPNs have three types of transitions: immediate transitions, deterministic transitions, and exponential transitions. They may also have inhibitor arcs and marking-dependent arc weights. The transition enabling conditions and the state evolution of BDSPNs are similar to those of DSPNs except in BDSPNs transitions may be fired in a “batch” way when batch tokens are involved. To formally define BDSPNs, two types of markings are introduced, called -marking and -marking, respectively. The -marking, which represents the state of a BDSPN, is denoted is a nonnegative inby a vector (or mapping) , where teger for a discrete place or a set of nonnegative integers for a batch place . The set may contain identical elements and each element in it represents a batch token with a given size. The -marking, used for defining marking-dependent arc weights, is denoted by a vector (or mapping) , where is the same for a discrete place and is the total size of batch tokens as for a batch place . A. Model Definition 1: A BDSPN is specified as a nine-tuple (1)
II. BATCH DETERMINISTIC AND STOCHASTIC PETRI NETS Several SPN models have been proposed in the literature. Among them are SPNs, GSPNs [1], and DSPNs [1]–[13]. SPNs are Petri nets with exponential transitions whose firing time is subject to an exponential distribution. GSPNs extend SPNs by allowing immediate transitions with zero firing time, whereas DSPNs extend GSPNs by allowing deterministic transitions with a constant firing time. In this section, we introduce a new class of stochastic Petri nets called BDSPNs, which extend DSPNs by introducing batch places and batch tokens. A BDSPN has two types of places: discrete places and batch places. Tokens in a discrete place are viewed indifferently as in classical Petri nets, whereas tokens in a batch place, called batch tokens, may have different sizes and are viewed as different individuals. Batch features of supply chain operations motivate this extension. In a supply chain, many operations such as inventory replenishment and distribution are usually performed in a batch way, where a given number of products involved in the operations are viewed and treated as an inseparable entity [10]–[14]. In the past, when we used Petri nets to model manufacturing systems, it is usually assumed that each product is produced at a given production rate or at a rate subject to a given probability distribution. The time for producing a batch (a given number) of the product thus depends on the size of the batch. In this case, each unit of the product can be represented by a token and the
where the following are true. • is a finite set of places consisting of the and the batch places in . discrete places in • is a finite set of transitions consisting of the immediate transitions in , deterministic transitions in , and exponential transitions in . , , and define • the input arcs, the output arcs and the inhibitor arcs of the transitions, respectively. It is assumed that only immediate transitions are associated with inhibitor arcs, i.e., , and the inhibitor arcs and the input arcs are two disjoint sets, i.e., . : defines the weights of the • input, output and inhibitor arcs that may depend on the -marking of the net, where is the set of nonnegative integers and is the cardinality of set . It is assumed that the weights of all arcs associated with the deterministic and exponential transitions are constant. : is a firing priority function for the transitions, • which assigns a priority level to each transition. It is assumed that timed transitions have the lowest priority level, if . For immediate transitions, i.e., . • : defines the firing delay for timed transitions which may be a function of the -marking at which a transition is enabled. It specifies a
134
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 2, NO. 2, APRIL 2005
: , i.e., a transition has no batch Case 1: input place. In this case, the enabling conditions of the transition are the same as those for a transition in a DSPN. That is, transition is enabled if and only if (2a) (2b) The firing of the transition results in a new marking (3a) (3b) (3c)
Fig. 1. Transition enabling and firing of BDSPNs.
constant firing delay for each deterministic transition and a mean firing delay for each exponential transition. : is the initial -marking, where de• notes the superset consisting of all subsets of . if , and if . Note that the above definition is similar to that of DSPNs if we don’t distinguish between batch places and discrete places and if each batch token is regarded as a number of discrete tokens with the number given by its size [13]. For simplicity, the firing weight function for immediate transitions in DSPNs is not introduced in our model. Instead, all immediate transitions are assumed to have the same firing weight 1. In graphical representation, discrete places and batch places are represented by single circles and squares with an embedded circle, respectively. Immediate, deterministic, and exponential transitions are represented by thin bars, filled rectangles, and empty rectangles, respectively. Inhibitor arcs are represented by arrows ending with a small circle. Discrete tokens (tokens in a discrete place) are represented by dots, whereas each batch token is represented by an Arabic number that indicates its size (see Fig. 1). The state of the net is represented by its -marking : . Its corresponding -marking is denoted by : , or simply by . if is a discrete place, if is a batch place. In the following, and a place connected with a transition by an arc is referred to as input, output, and inhibitor place, depending on the type of the arc. The set of input places, the set of output places, and the set of inhibitor places of transition are denoted by , , and , , respectively, where , and . B. Transition Enabling and Firing We first consider the transition enabling and firing conditions for untimed batch Petri nets without priority, i.e., BDSPNs without taking account of time and transition priorities. The conditions depend on whether a transition has batch input places. For simplicity, they are formalized by assuming constant arc weights.
The operator in (3c) is a “batch” addition. Given any two sets, the batch addition of the two sets will keep all their identical elements in the resulted set. For any batch output place, the firing of transition generates a batch token with the size given by the weight of the arc connecting the transition to the batch place. : , i.e., a transition has one or more Case 2: than one batch input places. In this case, transition is enabled , such that if and only if there is (4a) (4b) (4c) The firing of the transition results in a new marking (5a) (5b) (5c) (5d) The operator in (5d) is the batch addition as explained before. For a transition with one or more than one batch input places, it is enabled if and only if the following are true. 1) Each batch input place of the transition has a batch token with size such that all these batch tokens have the same for the trandiscrete firing index defined as sition. 2) Each discrete input place of the transition has enough tokens to simultaneously fire the transition for a number of times given by the index. 3) The number of tokens in each inhibitor place of the transition is less than the weight of its associated inhibitor arc. Note that several discrete firing indexes satisfying the transition enabling conditions (4a)–(4c) may exist for some -marking and some transition . For any batch output place, the firing of transition generates a batch token with the size given by the product of the discrete firing index and the weight of the arc connecting the transition to the batch place. For any discrete output place, the firing of the transition generates a number of discrete tokens with the number given by the product of the discrete firing index and the weight of the arc connecting the transition to the discrete place. Three examples are given in Fig. 1 to illustrate the transition enabling and firing of BDSPNs. Fig. 1(a) illustrates the enabling
CHEN et al.: MODELING AND PERFORMANCE EVALUATION OF SUPPLY CHAINS
and the firing of a transition without input batch place but with and one output batch place . Fig. 1(b) one inhibitor place illustrates the enabling and the firing of a transition with one input batch place . Fig. 1(c) illustrates the enabling and the firing of a transition with two batch places and . The above transition enabling and firing conditions don’t take account of transition priorities. When the priorities are considered, only the transitions with the highest priority are enabled and may be fired at any marking. When time is involved in BDSPNs, we need additional rules or policies to resolve conflicts when some conflicting transitions are enabled at the same time. When both timed and immediate transitions are enabled at any marking, it is assumed that only immediate transitions can fire because timed transitions have the lowest priority level 0 according to the definition of BDSPNs. When immediate transitions with different priorities are enabled, only those with the highest priority may be fired. When some conflicting transitions with the same highest priority are enabled, they have the same probability to be fired. The probability is obtained by dividing 1 by the number of the conflicting transitions. Immediate transitions are fired in zero time whereas timed transitions are fired after either an exponentially distributed or a deterministic delay. When several timed transitions are enabled in any marking, the transition with the minimum firing delay will cause the marking change. This is called the race condition [1]–[13]. Furthermore, as in DSPN, it is assumed that after a marking change each timed transition newly enabled samples a remaining firing delay from its firing delay distribution. Each timed transition which has already been enabled in the previous marking and is still enabled in the current marking keeps its remaining firing delay. This execution policy corresponds to the race with enabling memory policy of stochastic Petri nets [1]–[13]. The policy for the choice of a batch token in each batch place to fire its output transition should also be specified when there are several batch tokens in the place. We assume the choice follows the first-in first-out (FIFO) rule with random breakdown of ties. That is, a batch token which arrived in each batch place first will be selected to fire its output transition if it can. In the case when several batch tokens arrived in the place at the same earliest time, they are assumed to have the same probability to fire the transition. III. STRUCTURAL ANALYSIS OF BDSPNs In this section, linear algebraic techniques based on state equation and reachability analysis are developed for BDSPNs, which provide a basis for structural analysis of the model. Some important structural properties of the model are defined and their verifications using the two methods are discussed. A. Structural Properties Several important properties can be defined for BDSPNs by analogy to classical Petri nets and with consideration of their batch features. When studying structural properties, the time specification of BDSPNs is ignored. In this case, a BDSPN becomes an untimed batch Petri net (an untimed Petri net with
135
batch places and batch tokens), in which transitions are associated with priorities. We called the untimed net a batch Petri net for simplicity. Definition 2: For a batch Petri net, if there is a transition whose firing causes a change from a -marking to a -marking , we say that is directly reachable from , or . More generally, if there is a written as sequence of transitions and a sequence of such that , markings , we say is reachable from , written as or . Similarly, we can define and for -markings. Definition 3: A batch Petri net is called bounded if the -marking of its any place does not exceed a finite number for any -marking reachable from the initial marking. That is, , if , and , if , for any with . Definition 4: a) A batch place of a batch Petri net is called batch-dead if, for at least one reachable -marking, the place has a batch token that cannot be used for firing any of its output transitions. In other words, the discrete firing index of each output transition with respect to the batch token is not an integer. b) A batch Petri net is called batch-dead if it has at least one batch-dead batch place. c) A transition of a batch Petri net is live for the initial -marking , if for any : , there is : such that is enabled at . d) A batch Petri net is said to be live for the initial -marking , if all its transitions are live for . e) A batch Petri net is said to be batch-live if it is live and has no batch-dead place. If the enabling condition of a transition is not verified because there is no token whose size is a multiple of the weight of the corresponding arc, a batch-deadlock will occur. This deadlock may be caused by a system design and operational problem or a modeling problem. For the latter, we can change the corresponding batch place to a discrete place to avoid the deadlock. B. Linear Algebraic Techniques Let and . For a batch Petri net, when all its arc weights are constant, we can also define its incidence matrix: (6) is an matrix whose rows correspond to the where places and whose columns correspond to the transitions of to reprethe net. In (6) and hereafter, we abuse the symbol sent both the incidence matrix and the arc weight function of BDSPNs in case of no confusion. and tranSuppose that the current -marking of the net is sition is enabled at the marking. The firing of the transition will result in a new marking written as (7a)
136
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 2, NO. 2, APRIL 2005
(7b) (7c) where is a discrete firing index of transition defined as
at marking
if if (8) The operator in (7b) is the batch addition when it involves the -marking of a batch place. be an 1 characteristic vector repreLet senting the firing of transition defined as if if
(9)
We have (10) Equation (10) is called the state equation of the net. This equation can be extended to the sequential firing of multiple transitions when is a constant matrix. For example, the net in Fig. 1(b) has its incidence matrix . In the net, transition is enabled at -marking since we have a discrete firing index such that
After the firing of transition , the -marking of the net is changed to one shown in Fig. 1(b). That is,
One important linear algebraic technique for classical Petri nets is -invariants and -invariants. Similarly, we have: Definition 5: For a batch Petri net with constant incidence -dimensional column vector , whose entries are matrix , a . natural numbers, is called a -invariant of the net if If is a -invariant of a batch Petri net, then we have (11) If in a batch Petri net all places are covered by a -invariant in the sense that each entry of the invariant is positive, then the maximum number of tokens (the maximum total size of batch tokens) in any place is finite and the net is structurally bounded. Similarly, we can define -invariants for the batch Petri net. This part is skipped because of space limitation.
by firing a sequence of transitions and the initial marking initial marking itself constitute the reachability set of the net, . which is denoted by Definition 7: ( -Reachability Graph): Let be a batch Petri net defined by (1). The reachability graph of the net is a directed , where the set of vertices is given by the graph , whereas the set of directed arcs reachability set is given by all feasible marking changes of the net due to transition firing in all reachable -markings. The -reachability graph can be constructed by using an implicit approach when the underlying net is bounded. and Similarly, we can define -reachability set -reachability graph . Set and graph can be obtained from and re(in spectively by transforming each -marking in ) into its corresponding -marking and by merging duplicated -markings (and duplicated arcs). The absence of batch-dead places and the liveness (batchliveness) of a batch Petri net can be checked in the -reachability graph by looking for a dead batch token in a batch place in all reachable -markings and a dead transition. The above definition of -reachability graph does not consider transition priorities. However, the construction of the reachability graph in the case of batch Petri nets with priority is similar to that for Petri nets without priority. The only difference is in the enabling rule that in the case of a net with priority may produce a smaller reachability graph (only the transitions with the highest priority are enabled and may be fired at any marking). Furthermore, when performing the performance analysis of a BDSPN, we are interested only in the markings (states) that can stay for a positive time. For this reason, the reduced reachability graph is introduced, which is obtained by deleting all “vanishing” markings (nodes) in the reachability graph and their associated transitions (arcs) while keeping all “tangible” markings. A marking is called vanishing if at least one immediate transition is enabled at the marking. Otherwise, the marking is tangible. IV. PERFORMANCE ANALYSIS OF BDSPNS One ultimate goal for the introduction of the BDSPN model is to evaluate the performances of its modeled systems. For this purpose, the marking process of the model which describes its stochastic behavior is studied by exploring the similarity between BDSPNs and DSPNs. Performance analysis methods for BDSPNs are then developed by extending existing methods for DSPNs. It is shown that BDSPNs have marking processes similar to those of DSPNs and most performance analysis methods of DSPNs can be extended to BDSPNs after a proper modification.
C. Reachability Analysis The reachability analysis plays an important role for structural analysis of untimed Petri nets. This approach can also be applied to the study of structural properties of batch Petri nets. be a batch Petri Definition 6: ( -Reachability Set): Let net defined by (1). The set of all -markings reachable from the
A. Marking Process of BDSPNs For a stochastic Petri net with exponential transitions, immediate transitions, and deterministic transitions, the characteristics of its (stochastic) marking process only depends on the probabilistic choice of the transition(s) to be fired next and the
CHEN et al.: MODELING AND PERFORMANCE EVALUATION OF SUPPLY CHAINS
joint probability distributions of the firing times of all possible combinations of transitions that can be fired concurrently at any reachable marking. The simplest stochastic process that can represent the marking process of such a net is only determined by the probability distributions associated with the transitions. To characterize the marking process of a BDSPN, one question we should answer is whether the batch places, the batch tokens and the policy for choosing batch tokens to fire the next transition defined in Section II have an effect on the characteristics of the stochastic process. To answer this question, we observe that for a BDSPN with FIFO batch token choice policy and random breakdown of ties of arrival times of batch tokens: 1) At any -marking, if the net does not have any two batch tokens in a tie of arrival times that can fire an enabled transition, the transition to be fired next can only be fired with a unique discrete firing index determined by the -marking. In this case, the probabilistic choice of the transition to be fired next when several transitions are enabled at the same marking only depends on the probability distributions associated with these transitions. 2) At any -marking, when the transition to be fired next can be fired with several discrete firing indexes because of an arrival time tie of multiple batch tokens with different sizes in an input batch place of the transition, the choice of the discrete firing index to fire the transition is made randomly with an equal probability for all possible indexes. The probability is determined by the -marking. In this case, if we view the firing of a transition with different discrete firing indexes as the firing of different transitions and the choice of the discrete firing index is made by introducing auxiliary immediate transitions preceding the transitions as shown in Fig. 2, the probabilistic choice of the transition to be fired next also depends only on the probability distributions associated with all enabled transitions at the -marking. In the figure, timed transitions and in (b) correspond to the timed transition with discrete firing indexes 1 and 2, respectively in (a). Immeand are introduced to model the diate transitions choice between the two possible firing indexes. 3) The probability distribution of the sojourn time in any -marking only depends on the probability distributions associated with all enabled transitions at the -marking. The former distribution can be expressed as a composition of the later probability distributions. With the above observations and the results about the stochastic process of DSPNs, we have the following classification of the marking processes underlying BDSPNs. a) If a BDSPN does not contain any deterministic transition, its marking process is a continuous-time Markov chain. b) If a BDSPN has no deterministic transition concurrently enabled with other deterministic transitions or exponential transitions at any marking, its marking process is a semi-Markov chain. c) If a BDSPN has a deterministic transition concurrently enabled with other deterministic transitions or exponential transitions at some marking with restrictions on the usage
137
Fig. 2.
Representation of batch token choice by immediate transitions.
of deterministic transitions ([13]), its marking process is a Markov regenerative process. d) The marking process of a BDSPN without any restriction on the usage of deterministic transitions is a generalized semi-Markov process. B. Performance Evaluation The characterization of the marking process of BDSPNs in last subsection allows us to analytically and efficiently evaluate the performance of a subclass of BDSPNs—BDSPNs without deterministic transitions called BSPNs. For a BSPN, its steadystate distribution is the basis for analysis of its behavior expressed in terms of performance indexes. These indexes can be computed using a unified approach in which proper index functions are defined over the -marking of the net and an average index is derived using the steady-state distribution. Assuming is such an index function and that is the steady-state that probability for state , the average index can be computed using the following weighted sum: (12) Some important performance indexes of BDSPNs are formalized in the following. 1) The mean number of tokens in a given place for discrete place
(13a)
for batch place
(13b)
is the cardinality of set . where 2) The mean total size of tokens in a given place for discrete place
(14a) for batch place (14b)
be the set of -markings at which transition 3) Let is fired, the firing frequency of the transition can be computed by (15)
138
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 2, NO. 2, APRIL 2005
where is the firing rate of transition . be the set of -markings at which transition 4) Let is fired with discrete firing index , the firing frequency of the transition with this index can be computed by (16) is the firing rate of transition with index . where The general procedure for performance evaluation of BSPNs is summarized in the following. 1) Construct the -reachability graph. The nodes of the graph represent all -markings reachable from the initial marking. Each arc is labeled by its corresponding fired transition. The transition is marked by its discrete firing index for batch firing. 2) Eliminate all vanishing markings (nodes) and its associated immediate transitions (arcs) to generate the reduced -reachability graph. 3) The stochastic marking process is obtained from the reduced -reachability graph by labeling each arc with the firing rate of its corresponding fired transition. The state space of the process is composed of all nodes of the graph. The state transition process from one state to another is specified by the distribution of its corresponding exponential transition with a given firing rate. 4) Determine the steady-state distribution of the stochastic process. 5) Evaluate the performance indexes under consideration using the steady-state distribution obtained in Step 4. The performance evaluation of general BDSPNs becomes more complicated analytically or has to rely on simulation. This is a topic for further research. V. MODELING AND PERFORMANCE EVALUATION OF INVENTORY SYSTEMS USING BDSPNS In this section, we discuss how BDSPNs can be used to model and evaluate the performance of inventory systems with independent demand, whereas the capability of BDSPNs for modeling and performance evaluation of multi-echelon inventory systems (supply chains) will be demonstrated using an industrial case in the next section. Inventory systems are an important component of supply chains and inventory management plays a very important role in supply chain management. Inventory management addresses two fundamental issues: when should a stock replenish its inventory and how much should it order from its supplier(s) for each replenishment [10]. Inventory systems with independent demand may use fixed or variable order quantity policies based on either continuous or periodic review of inventory position. The inventory position is defined as on-hand inventory plus outstanding orders minus backorders. Fixed order quantity policies place an order of fixed size whenever the inventory position of a stock falls to a pre-specified level, whereas variable order quantity policies place an order of variable size at regular intervals to raise the inventory position to a pre-specified value. The most frequently used inventory policies include order-up-to-level policy,
Fig. 3.
BDSPN models of an inventory system.
batch ordering policy , and policy. Inventory policies also differ in their treatment of unmet customer demands. Some policies record unfilled customer demands as backorders and fill the demands later when stock is available, whereas unfilled demands are lost with the other policies. A. Modeling As an example, we consider an inventory system with conpolicy. For this system, when the inventinuous review tory position IP drops below a given reorder point , an order with quantity – IP will be placed to raise the inventory position to a given order-up-to-level . Fig. 3(a) and (b) show the BDSPN models of the inventory system with backorders and without backorder, respectively. In the model (a), place represents on-hand (physical) inventory of the stock considered. represents outstanding orders – the orders that Batch place are placed by the stock but not received from its supplier yet. Discrete place represents backorders – unfilled customer demands. Place represents on-hand inventory of the stock plus its outstanding orders, that is, . The inventory position IP equals . Inventory replenishment decisions are based on the position. Customer demand is assumed to be a Poisson process, which is specified by transition whose firing time is subject to an exponential distribution. Customer demand will be filled if there is sufficient on-hand inventory. Otherwise, the demand will be backordered. The fulfillment of customer demand will decrease on-hand inventory as well as the size of backorders. This is and to transition described by the arcs from places , . When the inventory position drops below the reorder point , i.e., or equivalently , an order with quantity will be placed to the supplier(s). The placement of the order will increase the outstanding orders by this quantity. This is described by immediate transition , its associated arcs to places and , and the weights of the arcs. When is less than , tranthe -marking of place , sition will be fired, which generates a batch token with size in place and discrete tokens in place . If there is a batch token in place , a replenishment event represented by the firing of transition will occur, which delivers a corresponding order to the stock.
CHEN et al.: MODELING AND PERFORMANCE EVALUATION OF SUPPLY CHAINS
Fig. 4.
139
Reduced -reachability graph and its underlying CTMC.
For modeling the system without backorder, the place used for representing backorders is removed, exponential transition and immediate transition are merged to a new exponential in the weights of the arcs associtransition , the term ated with transition is removed accordingly. BDSPNs can also model an inventory system with periodic policy. For this purpose, an additional subnet used review for describing the periodic review feature of the policy has to be introduced. The subnet is coupled with the existing net in Fig. 3 through a common transition ([4]). Our model can also describe inventory systems with order-up-to level policy and batch ordering policy. B. Performance Evaluation To illustrate the performance evaluation approach of BDSPNs proposed in last section, we consider the BDSPN model of the inventory system without backorder in Fig. 3(b). For simplicity, we assume that the inventory replenishment time is subject to an exponential distribution and that the inventory policy parameters of the system are taken as and , respectively. The reduced -reachability graph of the BDSPN model and the state transition graph of its corresponding continuous-time Markov chain (CTMC) are shown in Fig. 4(a) and (b), respecand are the parameters of the exponential tively, where firing time distributions of transitions and , respectively. The infinitesimal generator (transition rate matrix) of the CTMC is
Fig. 5.
where and The
Performance curves of an inventory system.
is the transition rate from state (marking) to state so that . steady-state probability vector is the solution of the linear equation system: and , where denotes the steady-state probability that the stochastic process is in state . For this linear system, the steady-state can be explicitly obtained as functions of probabilities and as parameters
140
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 2, NO. 2, APRIL 2005
Fig. 6.
Structure of the supply chain.
Fig. 7.
Manufacturing process.
With the steady-state probability, the average inventory level of the system (the mean number of tokens in discrete place can be obtained by
The stockout rate of the system (the probability that place is empty) is given by
Given the demand parameter , the average inventory level and the stockout rate as functions of inventory replenishment parameter are depicted in Fig. 5(a) and (b), respectively. VI. MODELING AND PERFORMANCE EVALUATION OF AN INDUSTRIAL SUPPLY CHAIN In this section, we model and evaluate the performance of an industrial supply chain by using BDSPN. This supply chain is composed of three suppliers, three transporters for the suppliers, a manufacturer, a transporter for the manufacturer and several customers (see Fig. 6). The manufacturer produces an electrical connector for high voltage lines. There are three types of flows in the supply chain: material flow, information flow and financial flow. For material flow (see Fig. 7), the manufacturer needs three raw materials to produce the connector: flat, rod, and screw. They are purchased from supplier 1, 2 and 3, respectively. These
materials are delivered to the manufacturer by the corresponding transporters. At the manufacturer site, rods of aluminum are cut into shafts with a given length, flats are bored and ground. Each finished product is then produced by assembling a shaft, a flat, and two screws. The products will be packaged and delivered to customers by a transporter. For information flow, the manufacturer receives customer demands in orders. When the inventory position of the finished product (Stock 4) is below a pre-specified reorder point, an assembly order with a given batch size will be released to the assembly line of the manufacturer. For each of the raw material stocks S1, S2 and S3, when its inventory position is below its reorder point, a purchase order with a given batch size will be placed to its corresponding supplier. Each purchase or assembly order contains the information such as ordering time and order quantity, which are determined by an inventory policy involved. The inventory policies of all four stocks are periodic review batch ordering policy. For financial flow, customers pay the manufacturer within a given time period after receiving finished products. The manufacturer pays its suppliers similarly. The suppliers and the manufacturer pay their transporters within a given time period after the completion of a delivery. A. Modeling Fig. 8 shows a BDSPN model of the industrial supply chain. The interpretations of the places and the transitions in the model are given by Tables I and II, respectively, where in Table I denotes the mean firing delay (in days) of transition . In the model, the material flow is represented by timed transitions t1, t2 and t3 (inventory replenishments of the suppliers), t7, t8 and t9 (transportation from the suppliers to the manufacturer), t11 (assembly), t13 (delivery preparation), t14 (transportation
CHEN et al.: MODELING AND PERFORMANCE EVALUATION OF SUPPLY CHAINS
141
Fig. 8. BDSPN model of the supply chain.
TABLE I INTERPRETATION OF THE TRANSITIONS IN FIG. 8
from the manufacturer to customers), and their associated places and arcs. The information flow is represented by immediate transitions t23 to t26, their associated places and arcs, and the weights of the arcs. The parameters of the inventory policies are represented by the weights of the arcs as we model inventory systems in Section III. The financial flow is represented by transitions t15 to t22, discrete places p16 to p19, and their associated arcs. These transitions represent payment operations from one company to another whereas the markings of the discrete places represent the money available in the companies. After establishing the BDSPN model, we can use structural analysis methods developed in Section IV to verify whether the model is structurally bounded and/or batch-live. If not, it may be caused by modeling itself or caused by a design problem of the industry supply chain. Our analysis shows that the BDSPN model has no structural problem. Because of page limitation, we will not present the analysis. B. Performance Evaluation The performance of the industrial supply chain may be evaluated analytically if its BDSPN model is bounded in the case of
142
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 2, NO. 2, APRIL 2005
TABLE II INTERPRETATION OF THE PLACES IN FIG. 8
TABLE III PERFORMANCE EVALUATION OF A SUPPLY CHAIN
no backorder of final customers. However, in this study, the performance is evaluated by the simulation using a BDSPN simulator (a C++ program) developed by us, because currently computerized BDSPN analytic performance evaluation tool is not available. For the supply chain, the mean replenishment lead times for stocks S1, S2, S3, S4 are 40, 20, 70, and 20 days, respectively. The mean delivery lead times for all transporters are 2 days. Because the deviations of these lead times are not known and negligible, we treat the firing delays of their corresponding transitions as constant numbers. Customer orders arrive randomly with the inter-arrival times subject to an exponential distribution with mean value 0.0355. The reorder points of stocks S1, S2, S3, S4 are 2300, 590, 2000, 400, respectively, whereas the order quantities of these stocks are 5000, 3000, 9300, 2000, respectively. The annual holding costs of the raw materials and final product in stocks S1, S2, S3, S4 are 12% of their prices which are 0.3 Euro, 0.6 Euro, 0.16 Euro, and 3 Euro, respectively. The performance criteria of the supply chain we want to obtain include average inventory level and service level for each stock, where the service level is defined as the probability that customer orders are filled on time. The first criterion is easy to obtain since it corresponds to the average number of tokens in the discrete place representing the stock. For the evaluation of the service level, we need to know the total time that the discrete place has no token while the batch place representing customer orders is not empty in each simulation. This can be done by observing the markings of the two places during the simulation.
Our BDSPN simulator provides functions for calculating average number of tokens (respectively, average total size of batch tokens) for discrete places (respectively, batch places) and the total time that a BDSPN is at a specified state (or in a specified state set) in a simulation. Because of stochastic nature of the model, multiple replications of simulation over a long time horizon should be performed to obtain a reliable estimation of the performance indexes. For the industrial case, the number of replications is taken and the simulation horizon is taken as as time units (days) with (i.e., ). The reason for taking 25 replications is because Kelton [12] has demonstrated that there is little value in dividing the available computation time into more than 25 replications. The formula is suggested by Banks, Carson, Nelson and Nicol in their simuobservations are deleted lation textbook [3], where the first in each replication to reduce the point-estimation bias caused by initial conditions in a steady-state simulation. The time horizon of each replication, beyond the deletion point, is taken as ten times of the amount of observations deleted. Since corresponds to more than half a year and the observed period corresponds to more than five years, we believe that these two durations are long enough to reduce the initialization bias to a negligible level and to obtain a reliable estimation of steady-state performance. All performance indexes are evaluated (estimated) as their mean values over the 25 replications. The point estimation of each performance index and the standard error of the estimation obtained by the simulation are shown in Table III, where each entry no bracketed is the point estimation value of a performance index, whereas the bracketed entry just below the value is the standard error of the estimation. The standard error is quite small, usually within 1% of its corresponding point estimation value. This implies that the obtained results are trustful. Given the point estimation and the standard error, a confidence interval for each performance index can be calculated for any given level of significance under the condition of the independence of confidence interval for perreplications. A formance index , based on the -distribution, is given by , where and are the point estimation and the standard error of the is the number of independent estimation of , respectively, is the percentage replications, and
CHEN et al.: MODELING AND PERFORMANCE EVALUATION OF SUPPLY CHAINS
TABLE IV CONFIDENCE INTERVALS OF PERFORMANCE EVALUATION
point of a -distribution with degrees of freedom ([3]). Using this formula, the 99% confidence interval for each performance index of the supply chain is given in Table IV, where the bracketed entry just below the point estimation of the index indicates the half length of the confidence interval, i.e., . We have also verified our results by the value comparing them with their industrial values. It is shown that our results well approximate the values. From the above modeling and performance evaluation of an industrial supply chain, we can see our proposed model well meet the modeling needs of supply chains by providing a good visibility of orders and batch operations in the supply chain.
VII. CONCLUSION In this paper, BDSPs are introduced as a tool for modeling and performance evaluation of supply chains. The new Petri net model is developed by enhancing deterministic and stochastic Petri nets with batch places and batch tokens. Structural analysis and performance evaluation methods of the model are developed by extending existing ones for deterministic and stochastic Petri nets. Applications to inventory systems and a real-life supply chain demonstrate that our model well meets the modeling needs of supply chains where inventory replenishment and distribution are usually performed in a batch way. The applications also show that our model and associated methods can solve important supply chain issues such as evaluation of inventory policies. Compared with batch Petri nets and DSPNs in the literature, our model keeps most simplicity of classical discrete Petri nets and all good features of DSPNs, allowing us to develop its analysis methods. The model and associated approaches therefore provide a promising tool for modeling and performance evaluation of supply chains. Further work includes the development of performance analysis methods for more general BDSPNs and the theoretical study of the proposed simulation-based approach.
REFERENCES [1] M. A. Marsan et al., “Modeling with generalized stochastic Petri nets,” in Wiley Series in Parallel Computing. New York: Wiley, 1995.
143
[2] F. Balduzzi et al., “First-order hybrid Petri nets: A model for optimization and control,” IEEE Trans. Robot. Autom., vol. 16, no. 4, pp. 382–399, Aug. 2000. [3] J. Banks, J. S. Carson, B. L. Nelson, and D. M. Nicol, Discrete-Event System Simulation. Upper Saddle River, NJ: Prentice-Hall, 2001. [4] H. Chen, L. Amodeo, and F. Chu, “Batch deterministic and stochastic Petri nets: A tool for modeling and performance evaluation of supply chain,” in Proc. 2002 IEEE Int. Conf. Robotics and Automation, Washington, DC, May 2002, pp. 78–83. [5] H. Chen, L. Amodeo, and L. Boudjeloud, “Supply chain optimization with Petri nets and genetic algorithms,” in Proc. Int. Conf. Industrial Engineering and Production Management, Porto, Portugal, Jun. 2003. [6] I. Demongodin, “Generalized batches Petri net: Hybrid model for high speed systems with variable delays,” Discr. Event Dyn. Syst., vol. 11, no. 1, pp. 137–162, 2001. [7] C. Fleurent and G. A. Ferland, “Algorithmes génétiques hybrides pour l’optimization combinatoire,” Rech. Operat., vol. 30, no. 4, pp. 373–398, 1996. [8] R. Furcas et al., “Hybrid Petri net modeling of inventory management systems,” J. Eur. Syst. Autom., vol. 35, pp. 417–434, 2001. [9] D. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning. Reading, MA: Addisson-Wesley, 1989. [10] S. C. Graves et al., Logistics of Production and Inventory. New York: Elsevier, 1993. [11] P. J. Haas, Stochastic Petri Nets: Modeling, Stability, Simulation. New York: Springer-Verlag, 2002. [12] W. D. Kelton, “Replication splitting and variance for simulating discrete parameter stochastic processes,” Oper. Res. Lett., vol. 4, pp. 275–279, 1986. [13] C. Lindemann, Performance Modeling with Deterministic and Stochastic Petri Nets. New York: Wiley, 1998. [14] S. Tayur et al., Quantitative Models for Supply Chain Management. Norwell, MA: Kluwer, 1998. [15] W. M. P. Van der Aalst, “Timed colored Petri nets and their application to logistics,” Ph.D. dissertation, Syst. Dept., Faculty Technol. Manag., Technical Univ. of Eindhoven, Eindhoven, The Netherlands, 1992. [16] N. Viswanadham and N. R. S. Raghavan, “Performance analysis and design of supply chains: A Petri net approach,” J. Oper. Res. Soc., vol. 51, no. 10, pp. 1158–1169, 2000. [17] J. Wang, Timed Petri Nets: Theory and Application. Norwell, MA: Kluwer, 1998. [18] C. Yolanda and M. Anu, “Simulation optimization: Methods and applications,” in Proc. 1997 Winter Simulation Conf., Atlanta, GA, pp. 118–126.
Haoxun Chen received the B. S. degree in applied mathematics from Fudan University, Shanghai, China, the Master’s degree in systems engineering from Shanghai Jiaotong University, Shanghai, China, and the Ph.D. degree in systems engineering from Xi’an Jiaotong University, Xi’an, China, in 1984, 1987, and 1990, respectively. He was a Lecturer with Xi’an Jiaotong University from 1990 to 1992 and an Associate Professor from 1993 to 1996. He visited the National Research Institute in Computer Science and Automation (INRIA), Lorraine, France, as a Visiting Professor, in 1994, the University of Magdeburg, Magdeburg, Germany, as a Research Fellow of the Alexander von Humboldt Foundation, in 1997 and 1998, and the University of Connecticut, Storrs, as a Research Assistant Professor in 1999 and 2000. Since 2004, he has been a Professor at the Technology University of Troyes, Troyes, France. His research interests include supply chain management, production planning and scheduling, and discrete event systems. He has published more than 70 papers in technical journals and Conference proceedings. Prof. Chen received the King-Sun Fu Memorial Best Transactions Paper Award from IEEE Robotics and Control Society in 1998.
144
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 2, NO. 2, APRIL 2005
Lionel Amodeo received the Ph.D. degree in automatic and production management from the Technology University of Belfort-Montbéliard, Belfort, France, in 1999. Since 2000, he has been with the Technology University of Troyes, Troyes, France, where he is currently an Associate Professor in the Department of Industrial Engineering. His research interests include Petri nets, discrete event systems, modeling, analysis and optimization of production systems, and supply chains. He has published over 30 papers and one book. Dr. Amodeo was a finalist of the Kayamori Best Paper Award of the IEEE International Conference on Robotics and Automation in 2002.
Feng Chu received the B.S. degree in electrical engineering from Hefei University of Technology, Hefei, China, the Master’s degree in electrical engineering from Institut National Polytechnique de Lorraine, Lorraine, France, and the Ph.D. degree in computer science from University of Metz, Metz, France, in 1986, 1991, and 1995, respectively. She worked at the Technology University of Jiangsu, Jiangsu, China, for two years and at the National Research Institute in Computer Science and Automation (INRIA), Lorraine, France, for four years. She is currently an Associate Professor at the Technology University of Troyes, Troyes, France. She is mainly interested in modeling, analysis and optimization of supply chains or production systems, transportation planning, production planning, and scheduling.
Karim Labadi received the Bachelor’s degree in electronic and control engineering from the Institut d’Electronique, Université de Tizi, Ouzou, Algeria, and the Master’s degree in automation and applied computer science from the Ecole Centrale de Nantes (ECN), Nantes, France, in 1998 and 2001, respectively. He is currently working toward the Ph.D degree in industrial engineering at the Technology University of Troyes, Troyes, France. His research interests include Petri nets theory, modeling, analysis, performance evaluation, and optimization of industrial systems.